/* The account font of the sign-up pages, for the account Change dialog (D-198). */
@font-face {
  font-family: "Inter Account";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("fonts/inter/inter-variable-latin-ext-20261014.woff2") format("woff2");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: "Inter Account";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("fonts/inter/inter-variable-latin-20261014.woff2") format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@layer psv-page {
  body[data-page="dashboard"] {
    width: 100%;
    height: 100vh;
    height: 100dvh;
    min-width: calc(320 * var(--psv-u));
    overflow: hidden;
    background:
      radial-gradient(circle at 70% 8%, rgb(var(--psv-accent-rgb) / .045), transparent 32rem),
      var(--psv-bg);
    color: var(--psv-text);
  }

  body[data-page="dashboard"] :where(a, button):focus-visible {
    outline: 2px solid var(--psv-accent);
    outline-offset: 3px;
  }

  body[data-page="dashboard"] .site-footer {
    display: none;
  }

  /* The product header carries the app's own contents -- no marketing nav, a
     Dashboard title -- but it is the same header. It was 64px against the
     site's 76, relative where the site's is sticky, and ruled where the site's
     is not, so arriving here from payment moved the logo and then scrolled it
     off the screen. Geometry and behaviour come from the same token now; only
     what sits inside differs. */
  .product-header {
    position: sticky;
    z-index: 100;
    top: 0;
    height: var(--psv-header-height);
    border-bottom: 0;
    background: var(--psv-header-bg);
  }

  .product-header__inner {
    display: flex;
    height: var(--psv-header-height);
    align-items: center;
    gap: calc(17 * var(--psv-u));
    /* Width and inset come from the shell it already carries, the same one the
       site header uses. Its own 24px put the logo at x=24 against the site's
       60, so the mark stepped sideways on arrival. */
  }

  .product-brand {
    display: inline-flex;
    align-items: center;
  }

  .product-brand__logo {
    display: block;
    /* The same mark at the same size as every other header: the site's tokens
       step it down on a phone, a fixed 28px did not. */
    width: var(--psv-logo-width);
    height: var(--psv-logo-height);
  }

  .product-header__title {
    padding-left: calc(17 * var(--psv-u));
    border-left: 1px solid var(--psv-line);
    color: var(--psv-copy);
    font-family: var(--psv-font-sans);
    font-size: max(var(--psv-text-floor), calc(14 * var(--psv-u)));
    font-weight: var(--psv-weight-semibold);
  }

  .product-header__actions {
    margin-left: auto;
  }

  .product-header .lang-toggle {
    display: grid;
    width: calc(40 * var(--psv-u));
    height: calc(40 * var(--psv-u));
    place-items: center;
    border: 1px solid var(--psv-line-strong);
    border-radius: 0;
    background: transparent;
    color: var(--psv-copy);
    font-family: var(--psv-font-mono);
    font-size: max(var(--psv-text-floor), calc(10 * max(var(--psv-u), var(--psv-label-floor))));
    font-weight: var(--psv-weight-semibold);
    letter-spacing: .08em;
    cursor: pointer;
  }

  .product-header .lang-toggle:hover {
    border-color: rgb(var(--psv-accent-rgb) / .62);
    color: var(--psv-text);
  }

  .dashboard-main {
    height: calc(100vh - var(--psv-header-height));
    height: calc(100dvh - var(--psv-header-height));
  }

  .dashboard-app {
    display: grid;
    height: 100%;
    grid-template-columns: calc(72 * var(--psv-u)) minmax(0, 1fr);
  }

  .dashboard-nav {
    display: flex;
    min-height: 0;
    flex-direction: column;
    align-items: center;
    gap: calc(10 * var(--psv-u));
    padding: calc(22 * var(--psv-u)) 0;
    border-right: 1px solid var(--psv-line);
    background: var(--psv-header-bg);
  }

  .dashboard-nav button {
    position: relative;
    display: grid;
    width: max(44px, calc(44 * var(--psv-u)));
    height: max(44px, calc(44 * var(--psv-u)));
    flex: 0 0 calc(44 * var(--psv-u));
    place-items: center;
    border: 1px solid transparent;
    border-radius: calc(2 * var(--psv-u));
    background: transparent;
    color: var(--psv-muted);
    cursor: pointer;
    transition: border-color 150ms ease, background 150ms ease, color 150ms ease;
  }

  .dashboard-nav button:last-child {
    margin-top: auto;
  }

  .dashboard-nav button:hover {
    border-color: var(--psv-line-strong);
    color: var(--psv-copy);
  }

  .dashboard-nav button[aria-pressed="true"] {
    border-color: rgb(var(--psv-accent-rgb) / .5);
    background: rgb(var(--psv-accent-rgb) / .10);
    color: var(--psv-accent-pale);
  }

  .dashboard-nav button[aria-pressed="true"]::before {
    position: absolute;
    inset: calc(7 * var(--psv-u)) auto calc(7 * var(--psv-u)) calc(-15 * var(--psv-u));
    width: 2px;
    background: var(--psv-accent);
    content: "";
  }

  .dashboard-nav svg {
    width: calc(20 * var(--psv-u));
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.55;
  }

  .dashboard-nav-label {
    position: absolute;
    z-index: 80;
    left: calc(55 * var(--psv-u));
    top: 50%;
    width: max-content;
    padding: calc(7 * var(--psv-u)) calc(9 * var(--psv-u));
    border: 1px solid var(--psv-line-strong);
    background: var(--psv-bg-raised);
    color: var(--psv-text);
    font-family: var(--psv-font-sans);
    font-size: max(var(--psv-text-floor), calc(12 * max(var(--psv-u), var(--psv-label-floor))));
    opacity: 0;
    pointer-events: none;
    transform: translate(calc(-4 * var(--psv-u)), -50%);
    transition: opacity 120ms ease, transform 120ms ease;
  }

  .dashboard-nav button:hover .dashboard-nav-label,
  .dashboard-nav button:focus-visible .dashboard-nav-label {
    opacity: 1;
    transform: translate(0, -50%);
  }

  .dashboard-nav-badge {
    position: absolute;
    top: calc(7 * var(--psv-u));
    right: calc(7 * var(--psv-u));
    width: calc(6 * var(--psv-u));
    height: calc(6 * var(--psv-u));
    border: 1px solid var(--psv-bg);
    border-radius: 50%;
    background: var(--psv-accent);
  }

  .dashboard-stage {
    min-width: 0;
    min-height: 0;
    padding: clamp(10px, 1.8vw, 20px) clamp(22px, 3.5vw, 48px);
  }
  /* desktop-scale:generated */
  @media (min-width: 1051px) {
    .dashboard-stage {
      padding: clamp((10 * var(--psv-u)), (27.648 * var(--psv-u)), (20 * var(--psv-u))) clamp((22 * var(--psv-u)), (53.76 * var(--psv-u)), (48 * var(--psv-u)));
    }
  }
  /* desktop-scale:end */

  .dashboard-view {
    width: min((1160 * var(--psv-u)), 100%);
    height: 100%;
    margin-inline: auto;
  }

  .dashboard-view--signals {
    display: flex;
    width: min((928 * var(--psv-u)), 100%);
    min-height: 0;
    flex-direction: column;
  }

  .dashboard-market-column h2 {
    margin: calc(3 * var(--psv-u)) 0 calc(16 * var(--psv-u));
    color: var(--psv-text);
    font-family: var(--psv-font-sans);
    font-size: calc(19 * var(--psv-u));
    font-weight: var(--psv-weight-semibold);
    line-height: 1;
    letter-spacing: -.035em;
  }

  .dashboard-access-column {
    align-self: start;
    min-width: 0;
    padding-top: calc(4 * var(--psv-u));
  }

  .dashboard-access-column .dashboard-access {
    flex-wrap: wrap;
    align-items: center;
    gap: calc(6 * var(--psv-u));
    margin: 0;
    font-size: max(var(--psv-text-floor), calc(10 * max(var(--psv-u), var(--psv-label-floor))));
    white-space: normal;
  }

  .dashboard-access-column .dashboard-access i {
    width: calc(6 * var(--psv-u));
    height: calc(6 * var(--psv-u));
  }

  .dashboard-access-column .dashboard-access strong,
  .dashboard-access-column .dashboard-access span {
    font-size: max(var(--psv-text-floor), calc(10 * max(var(--psv-u), var(--psv-label-floor))));
  }

  .dashboard-access-column .dashboard-access span {
    flex: 0 0 100%;
    padding-left: calc(12 * var(--psv-u));
    line-height: 1.35;
  }

  .dashboard-access-column .dashboard-access strong::after {
    display: none;
  }

  .dashboard-view[hidden] {
    display: none;
  }

  .dashboard-view-head {
    display: flex;
    flex: 0 0 auto;
    align-items: flex-start;
    justify-content: space-between;
    gap: calc(28 * var(--psv-u));
    min-height: calc(48 * var(--psv-u));
    margin-bottom: calc(10 * var(--psv-u));
    padding-bottom: calc(10 * var(--psv-u));
    border-bottom: 1px solid var(--psv-line-strong);
  }

  .dashboard-view-head :is(h1, h2) {
    margin: 0;
    color: var(--psv-text);
    font-family: var(--psv-font-sans);
    font-size: calc(28 * var(--psv-u));
    font-weight: var(--psv-weight-semibold);
    line-height: 1;
    letter-spacing: -.045em;
  }

  .dashboard-view-head > div > p {
    margin: calc(7 * var(--psv-u)) 0 0;
    color: var(--psv-copy);
    font-family: var(--psv-font-sans);
    font-size: max(var(--psv-text-floor), calc(14 * var(--psv-u)));
    line-height: 1.4;
  }

  .dashboard-access {
    display: flex;
    align-items: center;
    gap: calc(8 * var(--psv-u));
    margin: calc(7 * var(--psv-u)) 0 0;
    color: var(--psv-copy);
    font-family: var(--psv-font-sans);
    font-size: max(var(--psv-text-floor), calc(12 * max(var(--psv-u), var(--psv-label-floor))));
    white-space: nowrap;
  }

  .dashboard-access i {
    width: calc(7 * var(--psv-u));
    height: calc(7 * var(--psv-u));
    border-radius: 50%;
    background: var(--psv-success);
    box-shadow: 0 0 calc(10 * var(--psv-u)) rgb(31 122 77 / .35);
  }

  .dashboard-access strong {
    color: var(--psv-text);
    font-size: max(var(--psv-text-floor), calc(12 * max(var(--psv-u), var(--psv-label-floor))));
  }

  .dashboard-access strong::after {
    margin-left: calc(8 * var(--psv-u));
    color: var(--psv-muted);
    content: "·";
  }

  .dashboard-signal-layout {
    display: grid;
    min-height: 0;
    flex: 1;
    grid-template-columns: calc(210 * var(--psv-u)) calc(440 * var(--psv-u)) minmax(calc(190 * var(--psv-u)), calc(230 * var(--psv-u)));
    justify-content: center;
    align-items: stretch;
    gap: calc(24 * var(--psv-u));
  }

  .dashboard-market-column {
    min-width: 0;
    align-self: start;
  }

  .dashboard-market-panel {
    align-self: start;
    width: 100%;
    border: 1px solid var(--psv-line-strong);
    background: var(--psv-panel-quiet);
  }

  .dashboard-market-panel__head {
    display: flex;
    min-height: calc(47 * var(--psv-u));
    align-items: center;
    justify-content: space-between;
    padding: 0 calc(14 * var(--psv-u));
    border-bottom: 1px solid var(--psv-line);
  }

  .dashboard-market-panel__head h2 {
    margin: 0;
    color: var(--psv-text);
    font-family: var(--psv-font-sans);
    font-size: calc(17 * var(--psv-u));
    font-weight: var(--psv-weight-semibold);
  }

  .dashboard-market-panel__head > span {
    display: grid;
    width: calc(25 * var(--psv-u));
    height: calc(25 * var(--psv-u));
    place-items: center;
    border: 1px solid var(--psv-line);
    color: var(--psv-muted);
    font-family: var(--psv-font-mono);
    font-size: max(var(--psv-text-floor), calc(9 * max(var(--psv-u), var(--psv-label-floor))));
  }

  .dashboard-market-list {
    display: grid;
    grid-template-columns: 1fr;
  }

  .dashboard-market-list button {
    position: relative;
    display: flex;
    width: 100%;
    min-height: calc(70 * var(--psv-u));
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: calc(6 * var(--psv-u));
    padding: calc(11 * var(--psv-u)) calc(14 * var(--psv-u));
    border: 0;
    border-bottom: 1px solid var(--psv-line);
    background: transparent;
    color: var(--psv-copy);
    text-align: left;
    cursor: pointer;
  }

  .dashboard-market-list button::before {
    position: absolute;
    inset: 0 auto 0 0;
    width: 2px;
    background: transparent;
    content: "";
  }

  .dashboard-market-list button:last-child {
    border-bottom: 0;
  }

  .dashboard-market-list button:hover,
  .dashboard-market-list button[aria-pressed="true"] {
    background: linear-gradient(90deg, rgb(var(--psv-accent-rgb) / .10), transparent);
    color: var(--psv-text);
  }

  .dashboard-market-list button[aria-pressed="true"]::before {
    background: var(--psv-accent);
  }

  .dashboard-market-list button > span {
    display: flex;
    align-items: baseline;
    gap: calc(5 * var(--psv-u));
  }

  .dashboard-market-list strong {
    font-family: var(--psv-font-sans);
    font-size: calc(16 * var(--psv-u));
    font-weight: var(--psv-weight-semibold);
  }

  .dashboard-market-list small,
  .dashboard-market-list em {
    color: var(--psv-muted);
    font-family: var(--psv-font-sans);
    font-size: max(var(--psv-text-floor), calc(11 * max(var(--psv-u), var(--psv-label-floor))));
    font-style: normal;
  }

  .dashboard-market-list em {
    display: flex;
    align-items: center;
    gap: calc(7 * var(--psv-u));
  }

  .dashboard-market-list em::before {
    width: calc(5 * var(--psv-u));
    height: calc(5 * var(--psv-u));
    flex: 0 0 calc(5 * var(--psv-u));
    border-radius: 50%;
    background: var(--psv-muted);
    content: "";
  }

  .dashboard-market-list button[aria-pressed="true"] em {
    color: var(--psv-accent-pale);
  }

  .dashboard-market-list button[aria-pressed="true"] em::before {
    background: var(--psv-accent);
    box-shadow: 0 0 calc(8 * var(--psv-u)) rgb(var(--psv-accent-rgb) / .45);
  }

  .dashboard-signal-focus {
    display: flex;
    min-width: 0;
    min-height: 0;
    width: 100%;
    height: 100%;
    max-height: calc(540 * var(--psv-u));
    flex-direction: column;
  }

  .dashboard-signal-card__head {
    display: flex;
    min-height: calc(59 * var(--psv-u));
    flex: 0 0 auto;
    align-items: center;
    justify-content: space-between;
    gap: calc(16 * var(--psv-u));
    padding-bottom: calc(13 * var(--psv-u));
    border-bottom: 1px solid var(--psv-line-strong);
  }

  .dashboard-signal-instrument {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: calc(11 * var(--psv-u));
  }

  .dashboard-signal-instrument > span {
    display: grid;
    width: calc(32 * var(--psv-u));
    height: calc(32 * var(--psv-u));
    flex: 0 0 calc(32 * var(--psv-u));
    place-items: center;
    border: 1px solid rgb(var(--psv-accent-rgb) / .38);
    border-radius: 50%;
    background: rgb(var(--psv-accent-rgb) / .08);
    color: var(--psv-accent-pale);
    font-family: var(--psv-font-sans);
    font-size: calc(16 * var(--psv-u));
    font-weight: var(--psv-weight-semibold);
  }

  .dashboard-signal-instrument h2 {
    margin: 0;
    color: var(--psv-text);
    font-family: var(--psv-font-sans);
    font-size: calc(20 * var(--psv-u));
    font-weight: var(--psv-weight-semibold);
    line-height: 1;
    letter-spacing: -.035em;
  }

  .dashboard-signal-instrument p {
    margin: calc(4 * var(--psv-u)) 0 0;
    color: var(--psv-muted);
    font-family: var(--psv-font-sans);
    font-size: max(var(--psv-text-floor), calc(11 * max(var(--psv-u), var(--psv-label-floor))));
  }

  .dashboard-live-state {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: calc(7 * var(--psv-u));
    margin: 0;
    font-family: var(--psv-font-mono);
  }

  .dashboard-live-state i {
    width: calc(7 * var(--psv-u));
    height: calc(7 * var(--psv-u));
    border-radius: 50%;
    background: var(--psv-accent);
    box-shadow: 0 0 calc(9 * var(--psv-u)) rgb(var(--psv-accent-rgb) / .5);
  }

  .dashboard-live-state strong {
    color: var(--psv-accent-pale);
    font-size: max(var(--psv-text-floor), calc(8.5 * max(var(--psv-u), var(--psv-label-floor))));
    letter-spacing: .11em;
  }

  .dashboard-live-state span {
    color: var(--psv-muted);
    font-size: max(var(--psv-text-floor), calc(8 * max(var(--psv-u), var(--psv-label-floor))));
  }

  .dashboard-signal-card {
    width: 100%;
    height: 100%;
    min-height: calc(480 * var(--psv-u));
    flex: 1;
    display: flex;
    flex-direction: column;
    padding: calc(15 * var(--psv-u)) calc(22 * var(--psv-u)) calc(12 * var(--psv-u));
    border: 1px solid var(--psv-line-strong);
    border-radius: calc(3 * var(--psv-u));
    background:
      linear-gradient(180deg, rgb(var(--psv-accent-rgb) / .035), transparent 28%),
      linear-gradient(135deg, var(--psv-panel), var(--psv-panel-quiet));
    box-shadow: 0 calc(22 * var(--psv-u)) calc(65 * var(--psv-u)) rgb(0 8 20 / .18);
  }

  .dashboard-signal-meta {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: calc(6 * var(--psv-u)) calc(16 * var(--psv-u));
    padding: calc(11 * var(--psv-u)) 0 calc(10 * var(--psv-u));
    border-bottom: 1px solid var(--psv-line);
  }

  .dashboard-signal-meta > div {
    min-width: 0;
  }

  .dashboard-signal-meta > div:first-child {
    grid-column: 1 / -1;
  }

  .dashboard-signal-meta span,
  .dashboard-signal-values dt {
    display: block;
    color: var(--psv-muted);
    font-family: var(--psv-font-mono);
    font-size: max(var(--psv-text-floor), calc(9 * max(var(--psv-u), var(--psv-label-floor))));
    font-weight: var(--psv-weight-medium);
    line-height: 1.35;
    letter-spacing: var(--psv-track-meta);
  }

  .dashboard-signal-meta strong {
    display: block;
    margin-top: calc(3 * var(--psv-u));
    overflow-wrap: anywhere;
    color: var(--psv-copy);
    font-family: var(--psv-font-mono);
    font-size: max(var(--psv-text-floor), calc(10 * max(var(--psv-u), var(--psv-label-floor))));
    font-weight: var(--psv-weight-medium);
    line-height: 1.4;
  }

  .dashboard-signal-values {
    display: flex;
    flex: 1;
    flex-direction: column;
    margin: 0;
  }

  .dashboard-signal-values > div {
    display: grid;
    min-height: calc(36 * var(--psv-u));
    flex: 1;
    grid-template-columns: minmax(calc(125 * var(--psv-u)), 1.1fr) minmax(0, 1fr);
    align-items: center;
    gap: calc(20 * var(--psv-u));
    border-bottom: 1px solid var(--psv-line);
  }

  .dashboard-signal-values > div:last-child {
    border-bottom: 0;
  }

  .dashboard-signal-values dt,
  .dashboard-signal-values dd {
    margin: 0;
  }

  .dashboard-signal-values dd {
    justify-self: end;
    color: var(--psv-text);
    font-family: var(--psv-font-mono);
    font-size: max(var(--psv-text-floor), calc(11.5 * max(var(--psv-u), var(--psv-label-floor))));
    font-weight: var(--psv-weight-semibold);
    line-height: 1.35;
    text-align: right;
  }

  .dashboard-signal-values .dashboard-value-accent {
    color: var(--psv-accent);
  }

  .dashboard-signal-values .dashboard-value-regime {
    color: var(--psv-accent-tint);
    font-size: max(var(--psv-text-floor), calc(11.5 * max(var(--psv-u), var(--psv-label-floor))));
    letter-spacing: .02em;
  }

  .dashboard-signal-values .dashboard-value-emphasis dd {
    color: var(--psv-accent-pale);
    font-size: max(var(--psv-text-floor), calc(12.5 * var(--psv-u)));
    letter-spacing: -.025em;
  }

  .dashboard-empty-signal {
    display: flex;
    flex: 1;
    min-height: 0;
    flex-direction: column;
    justify-content: center;
    padding: clamp(28px, 5vw, 58px);
    border: 1px solid var(--psv-line-strong);
    border-radius: calc(3 * var(--psv-u));
    background: linear-gradient(135deg, var(--psv-panel), var(--psv-panel-quiet));
  }
  /* desktop-scale:generated */
  @media (min-width: 1051px) {
    .dashboard-empty-signal {
      padding: clamp((28 * var(--psv-u)), (76.8 * var(--psv-u)), (58 * var(--psv-u)));
    }
  }
  /* desktop-scale:end */

  .dashboard-empty-signal > span {
    display: flex;
    align-items: center;
    gap: calc(8 * var(--psv-u));
    color: var(--psv-accent-pale);
    font-family: var(--psv-font-mono);
    font-size: max(var(--psv-text-floor), calc(9 * max(var(--psv-u), var(--psv-label-floor))));
    letter-spacing: .11em;
  }

  .dashboard-empty-signal > span i {
    width: calc(7 * var(--psv-u));
    height: calc(7 * var(--psv-u));
    border: 1px solid var(--psv-accent);
    border-radius: 50%;
  }

  .dashboard-empty-signal h2 {
    margin: calc(28 * var(--psv-u)) 0 calc(12 * var(--psv-u));
    color: var(--psv-text);
    font-family: var(--psv-font-sans);
    font-size: clamp(30px, 4vw, 48px);
    font-weight: var(--psv-weight-semibold);
    letter-spacing: -.05em;
  }
  /* desktop-scale:generated */
  @media (min-width: 1051px) {
    .dashboard-empty-signal h2 {
      font-size: clamp((30 * var(--psv-u)), (61.44 * var(--psv-u)), (48 * var(--psv-u)));
    }
  }
  /* desktop-scale:end */

  .dashboard-empty-signal p {
    max-width: calc(590 * var(--psv-u));
    margin: 0;
    color: var(--psv-copy);
    font-family: var(--psv-font-sans);
    font-size: max(var(--psv-text-floor), calc(15 * var(--psv-u)));
    line-height: 1.6;
  }

  .dashboard-ledger,
  .dashboard-notification-list,
  .dashboard-account-panel {
    border: 1px solid var(--psv-line-strong);
    background: linear-gradient(135deg, var(--psv-panel-soft), var(--psv-panel-quiet));
  }

  .dashboard-ledger > div {
    display: grid;
    min-height: calc(72 * var(--psv-u));
    grid-template-columns: 1.1fr .8fr 1.15fr 1.15fr .7fr;
    align-items: center;
    gap: calc(20 * var(--psv-u));
    padding: 0 calc(24 * var(--psv-u));
    border-bottom: 1px solid var(--psv-line);
    color: var(--psv-copy);
    font-family: var(--psv-font-mono);
    font-size: max(var(--psv-text-floor), calc(11 * max(var(--psv-u), var(--psv-label-floor))));
  }

  .dashboard-ledger > div:last-child {
    border-bottom: 0;
  }

  .dashboard-ledger .dashboard-ledger__head {
    min-height: calc(42 * var(--psv-u));
    color: var(--psv-muted);
    font-size: max(var(--psv-text-floor), calc(9 * max(var(--psv-u), var(--psv-label-floor))));
    letter-spacing: .08em;
    text-transform: uppercase;
  }

  .dashboard-ledger strong {
    color: var(--psv-text);
    font-size: max(var(--psv-text-floor), calc(13 * var(--psv-u)));
  }

  .dashboard-ledger b {
    justify-self: end;
  }

  .dashboard-ledger__note {
    margin: calc(10 * var(--psv-u)) 0 0;
    color: var(--psv-muted);
    font-family: var(--psv-font-mono);
    font-size: max(var(--psv-text-floor), calc(10 * max(var(--psv-u), var(--psv-label-floor))));
    line-height: 1.5;
    letter-spacing: .04em;
  }

  .is-positive {
    color: var(--psv-success);
  }

  .is-negative {
    color: var(--psv-danger);
  }

  .dashboard-notification-list article {
    display: grid;
    min-height: calc(104 * var(--psv-u));
    grid-template-columns: calc(10 * var(--psv-u)) minmax(0, 1fr) auto;
    align-items: center;
    gap: calc(18 * var(--psv-u));
    padding: calc(18 * var(--psv-u)) calc(24 * var(--psv-u));
    border-bottom: 1px solid var(--psv-line);
  }

  .dashboard-notification-list article:last-child {
    border-bottom: 0;
  }

  .dashboard-notification-list article > i {
    width: calc(8 * var(--psv-u));
    height: calc(8 * var(--psv-u));
    border-radius: 50%;
    background: var(--psv-accent);
  }

  .dashboard-notification-list strong {
    color: var(--psv-text);
    font-family: var(--psv-font-sans);
    font-size: max(var(--psv-text-floor), calc(15 * var(--psv-u)));
  }

  .dashboard-notification-list p {
    margin: calc(5 * var(--psv-u)) 0 0;
    color: var(--psv-copy);
    font-family: var(--psv-font-sans);
    font-size: max(var(--psv-text-floor), calc(13 * var(--psv-u)));
  }

  .dashboard-notification-list time {
    color: var(--psv-muted);
    font-family: var(--psv-font-mono);
    font-size: max(var(--psv-text-floor), calc(10 * max(var(--psv-u), var(--psv-label-floor))));
  }

  .dashboard-account-panel {
    display: grid;
    grid-template-columns: minmax(calc(260 * var(--psv-u)), .8fr) minmax(0, 1.2fr);
    gap: 0;
  }

  .dashboard-account-primary {
    padding: calc(32 * var(--psv-u));
    border-right: 1px solid var(--psv-line);
  }

  .dashboard-account-primary > span {
    color: var(--psv-muted);
    font-family: var(--psv-font-mono);
    font-size: max(var(--psv-text-floor), calc(9 * max(var(--psv-u), var(--psv-label-floor))));
    letter-spacing: .1em;
    text-transform: uppercase;
  }

  .dashboard-account-primary strong {
    display: block;
    margin-top: calc(12 * var(--psv-u));
    color: var(--psv-text);
    font-family: var(--psv-font-mono);
    font-size: calc(24 * var(--psv-u));
  }

  .dashboard-account-primary p {
    margin: calc(18 * var(--psv-u)) 0 0;
    color: var(--psv-copy);
    font-family: var(--psv-font-sans);
    font-size: max(var(--psv-text-floor), calc(13 * var(--psv-u)));
    line-height: 1.55;
  }

  .dashboard-account-panel dl {
    margin: 0;
    padding: calc(20 * var(--psv-u)) calc(28 * var(--psv-u));
  }

  .dashboard-account-panel dl > div {
    display: grid;
    min-height: calc(48 * var(--psv-u));
    grid-template-columns: calc(130 * var(--psv-u)) minmax(0, 1fr);
    align-items: center;
    gap: calc(20 * var(--psv-u));
    border-bottom: 1px solid var(--psv-line);
    font-family: var(--psv-font-sans);
    font-size: max(var(--psv-text-floor), calc(13 * var(--psv-u)));
  }

  .dashboard-account-panel dt,
  .dashboard-account-panel dd {
    margin: 0;
  }

  .dashboard-account-panel dt {
    color: var(--psv-muted);
  }

  .dashboard-account-panel dd {
    color: var(--psv-text);
    text-align: right;
  }

  .dashboard-account-panel dd b {
    margin-left: calc(8 * var(--psv-u));
    color: var(--psv-success);
    font-size: max(var(--psv-text-floor), calc(10 * max(var(--psv-u), var(--psv-label-floor))));
  }

  .dashboard-account-actions {
    grid-column: 1 / -1;
    display: flex;
    justify-content: flex-end;
    gap: calc(26 * var(--psv-u));
    padding: calc(16 * var(--psv-u)) calc(28 * var(--psv-u));
    border-top: 1px solid var(--psv-line);
  }

  .dashboard-account-actions a {
    color: var(--psv-accent-pale);
    font-family: var(--psv-font-mono);
    font-size: max(var(--psv-text-floor), calc(10 * max(var(--psv-u), var(--psv-label-floor))));
    letter-spacing: .08em;
    text-decoration: none;
  }

  /* Changing an address, a number or the password: a quiet "Change" beside the
     value, in the actions' own mono register; the dialog it opens is the
     sign-up's own design (owner, 17 Oct 2026, D-198): white, the account font,
     the sign-up's fields and measures, one action across it and "Cancel" under it. */
  .dashboard-account-change {
    min-block-size: calc(28 * var(--psv-u));
    margin-left: calc(14 * var(--psv-u));
    padding: calc(4 * var(--psv-u)) 0;
    color: var(--psv-accent-pale);
    font-family: var(--psv-font-mono);
    font-size: max(var(--psv-text-floor), calc(10 * max(var(--psv-u), var(--psv-label-floor))));
    letter-spacing: .08em;
    text-transform: uppercase;
    background: none;
    border: 0;
    cursor: pointer;
  }

  .dashboard-account-change:hover,
  .dashboard-account-change:focus-visible {
    text-decoration: underline;
  }

  /* The dialog is drawn in the sign-up's native measures, like the account pages
     (auth-focused.css), not on the desktop canvas. */
  /* desktop-scale:native-start */
  .dashboard-account-dialog {
    /* The sign-up's measures: a phone has the larger field, action and gap,
       a desktop the tighter ones of D-196. */
    --account-gap: 19px;
    --account-field: 50px;
    --account-action: 49px;
    --account-action-pad: 13px 16px;
    --account-title: 27px;
    --account-title-line: 35px;
    --account-title-gap: 10px;
    --account-lead-gap: 25px;
    box-sizing: border-box;
    inline-size: min(520px, calc(100vw - 32px));
    max-block-size: calc(100dvh - 32px);
    padding: 0;
    overflow: auto;
    color: #182230;
    background: #fff;
    border: 1px solid #e5eaf0;
    border-radius: 8px;
    box-shadow: 0 24px 60px rgb(6 20 38 / .18);
    font-family: "Inter Account", sans-serif;
  }

  @media (min-width: 601px) {
    .dashboard-account-dialog {
      --account-title: 30px;
      --account-title-line: 38px;
    }
  }

  @media (min-width: 1024px) {
    .dashboard-account-dialog {
      --account-gap: 13px;
      --account-field: 44px;
      --account-action: 44px;
      --account-action-pad: 11px 16px;
      --account-title: 26px;
      --account-title-line: 32px;
      --account-title-gap: 6px;
      --account-lead-gap: 16px;
    }
  }

  .dashboard-account-dialog::backdrop {
    background: rgb(6 20 38 / .45);
  }

  .dashboard-account-dialog form {
    display: grid;
    gap: var(--account-gap);
    padding: 24px;
  }

  @media (min-width: 601px) {
    .dashboard-account-dialog form {
      padding: 40px;
    }
  }

  .dashboard-account-dialog h3 {
    margin: 0 0 calc(var(--account-title-gap) - var(--account-gap));
    color: #182230;
    font-family: "Inter Account", sans-serif;
    font-size: var(--account-title);
    font-weight: 600;
    line-height: var(--account-title-line);
    letter-spacing: -.035em;
    text-transform: none;
  }

  .dashboard-account-dialog-lead {
    margin: 0 0 calc(var(--account-lead-gap) - var(--account-gap));
    color: #5e6a7b;
    font-family: "Inter Account", sans-serif;
    font-size: 14px;
    line-height: 22px;
  }

  .dashboard-account-dialog-fields {
    display: grid;
    gap: var(--account-gap);
  }

  .dashboard-account-field {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px 12px;
    margin: 0;
    color: #182230;
    font-family: "Inter Account", sans-serif;
  }

  .dashboard-account-field > label {
    grid-column: 1;
    color: #182230;
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
  }

  .dashboard-account-field > :not(label) {
    grid-column: 1 / -1;
  }

  .dashboard-account-field :is(input, select) {
    box-sizing: border-box;
    inline-size: 100%;
    block-size: var(--account-field);
    min-block-size: var(--account-field);
    margin: 0;
    padding: 0 13px;
    color: #182230;
    font-family: "Inter Account", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    letter-spacing: 0;
    background: #fff;
    border: 1px solid #d8dfe8;
    border-radius: 7px;
    box-shadow: 0 1px 2px #18223004;
  }

  .dashboard-account-field input::placeholder {
    color: #99a3af;
    font-size: 14px;
    opacity: 1;
  }

  .dashboard-account-field select {
    appearance: none;
    padding-right: 40px;
    background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23697586' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E") right 13px center / 16px no-repeat;
  }

  .dashboard-account-field :is(input, select):focus-visible {
    border-color: #5279aa;
    outline: none;
    box-shadow: 0 0 0 3px #173f7b12;
  }

  .dashboard-account-field input[aria-invalid="true"] {
    border-color: #b54748;
  }

  /* A password and its show button. */
  .dashboard-account-control {
    position: relative;
    display: block;
  }

  .dashboard-account-control > input {
    padding-right: 52px;
  }

  .dashboard-account-toggle {
    position: absolute;
    top: 50%;
    right: 3px;
    display: grid;
    place-items: center;
    inline-size: 44px;
    block-size: 44px;
    margin-top: -22px;
    padding: 0;
    color: #748193;
    background: transparent;
    border: 0;
    border-radius: 5px;
    cursor: pointer;
  }

  .dashboard-account-toggle:hover {
    color: #173f7b;
    background: #f4f6f9;
  }

  .dashboard-account-toggle svg {
    inline-size: 18px;
    block-size: 18px;
  }

  .dashboard-account-toggle .eye-slash {
    opacity: 0;
  }

  .dashboard-account-toggle[aria-pressed="true"] .eye-slash {
    opacity: 1;
  }

  /* The number in two parts, the calling code and the number itself. */
  .dashboard-account-phone {
    display: flex;
    align-items: stretch;
    box-sizing: border-box;
    block-size: var(--account-field);
    background: #fff;
    border: 1px solid #d8dfe8;
    border-radius: 7px;
  }

  .dashboard-account-phone:focus-within {
    border-color: #5279aa;
    box-shadow: 0 0 0 3px #173f7b12;
  }

  .dashboard-account-dial {
    position: relative;
    display: block;
    flex: 0 0 112px;
    inline-size: 112px;
  }

  .dashboard-account-dial::after {
    content: "";
    position: absolute;
    inset: 12px 0 12px auto;
    inline-size: 1px;
    background: #e5eaf0;
    pointer-events: none;
  }

  .dashboard-account-dial-face {
    display: flex;
    align-items: center;
    box-sizing: border-box;
    inline-size: 100%;
    block-size: 100%;
    padding: 0 30px 0 13px;
    color: #182230;
    font-family: "Inter Account", sans-serif;
    font-size: 14px;
    font-weight: 500;
    line-height: 24px;
    font-variant-numeric: tabular-nums;
    background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%23697586' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 10px center / 14px 14px;
  }

  .dashboard-account-field .dashboard-account-dial > select {
    position: absolute;
    inset: 0;
    block-size: 100%;
    min-block-size: 0;
    padding: 0;
    border: 0;
    opacity: 0;
    cursor: pointer;
  }

  .dashboard-account-field .dashboard-account-phone > input {
    flex: 1 1 auto;
    min-inline-size: 0;
    block-size: 100%;
    min-block-size: 0;
    border: 0;
    border-radius: 0 6px 6px 0;
    box-shadow: none;
    font-variant-numeric: tabular-nums;
  }

  .dashboard-account-field .dashboard-account-phone > input::placeholder {
    color: #697586;
    font-size: 16px;
  }

  .dashboard-account-field .dashboard-account-phone > input:focus-visible {
    box-shadow: none;
  }

  /* The code: one field on a phone, six cells over the real input on a desktop. */
  .dashboard-account-cells {
    display: none;
  }

  @media (min-width: 1051px) {
    .dashboard-account-field > input[name="code"] {
      position: relative;
      z-index: 1;
      grid-row: 2;
      opacity: 0;
      cursor: text;
    }

    .dashboard-account-cells {
      display: grid;
      grid-row: 2;
      grid-template-columns: repeat(6, minmax(0, 1fr));
      gap: 8px;
    }

    .dashboard-account-cells > span {
      display: grid;
      place-items: center;
      block-size: var(--account-field);
      color: #182230;
      font-size: 20px;
      font-weight: 500;
      background: #fff;
      border: 1px solid #d8dfe8;
      border-radius: 7px;
      transition: border-color .15s ease, box-shadow .15s ease;
    }

    .dashboard-account-cells > .is-filled {
      border-color: #9fb1c8;
    }

    .dashboard-account-cells > .is-active {
      border-color: #338cff;
      box-shadow: 0 0 0 3px rgba(51, 140, 255, .16);
    }

    .dashboard-account-cells > .is-active:empty::after {
      content: "";
      inline-size: 1.5px;
      block-size: 22px;
      background: #338cff;
      animation: dashboard-account-caret 1s steps(1) infinite;
    }

    .dashboard-account-field > input[aria-invalid="true"] + .dashboard-account-cells > span {
      border-color: #b54748;
    }
  }

  @keyframes dashboard-account-caret {
    50% { opacity: 0; }
  }

  /* Where the code went, with a way back to change it. */
  .dashboard-account-target {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 3px 12px;
    margin: 0;
    padding: 12px 14px;
    color: #5e6a7b;
    font-family: "Inter Account", sans-serif;
    font-size: 13px;
    line-height: 20px;
    background: #f7f9fc;
    border: 1px solid #e5eaf0;
    border-radius: 7px;
  }

  .dashboard-account-target > span,
  .dashboard-account-target > strong {
    grid-column: 1;
  }

  .dashboard-account-target > strong {
    color: #182230;
    font-size: 14px;
    font-weight: 500;
    overflow-wrap: break-word;
  }

  .dashboard-account-target > .dashboard-account-link {
    grid-column: 2;
    grid-row: 1 / span 2;
  }

  /* The new password's two rules, ticked when met and red when sent unmet. */
  .dashboard-account-rules {
    display: grid;
    gap: 6px;
    margin: 2px 0 0;
  }

  .dashboard-account-rules > span {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #5e6a7b;
    font-size: 13px;
    line-height: 20px;
  }

  .dashboard-account-rules > span::before {
    content: "";
    flex: 0 0 auto;
    box-sizing: border-box;
    inline-size: 16px;
    block-size: 16px;
    border: 1.5px solid #c3cdda;
    border-radius: 50%;
  }

  .dashboard-account-rules > span.is-met {
    color: #182230;
  }

  .dashboard-account-rules > span.is-met::before {
    border: 0;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23287761' stroke-width='2'%3E%3Cpath d='M3.5 8.3l3 3 6-6.6'/%3E%3C/svg%3E") center / 16px no-repeat;
  }

  .dashboard-account-rules > span.is-missing {
    color: #b54748;
  }

  .dashboard-account-rules > span.is-missing::before {
    border-color: #b54748;
  }

  .dashboard-account-hint {
    color: #697586;
    font-size: 12px;
    line-height: 18px;
  }

  .dashboard-account-hint[data-match="mismatch"] {
    color: #b54748;
  }

  .dashboard-account-hint[data-match="match"] {
    color: #287761;
  }

  .dashboard-account-dialog-message {
    margin: 0;
    color: #5e6a7b;
    font-family: "Inter Account", sans-serif;
    font-size: 13px;
    line-height: 20px;
  }

  .dashboard-account-dialog-message:empty {
    display: none;
  }

  .dashboard-account-dialog-message.is-error {
    color: #b54748;
  }

  .dashboard-account-dialog-message.is-quiet {
    position: absolute;
    inline-size: 1px;
    block-size: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
    border: 0;
  }

  /* One action across the dialog; "Resend code" and "Cancel" under it. */
  .dashboard-account-dialog-submit {
    display: flex;
    justify-content: center;
    align-items: center;
    inline-size: 100%;
    min-block-size: var(--account-action);
    margin: 2px 0 0;
    padding: var(--account-action-pad);
    color: #fff;
    font-family: "Inter Account", sans-serif;
    font-size: 14px;
    font-weight: 500;
    line-height: 21px;
    background: #173f7b;
    border: 1px solid #173f7b;
    border-radius: 7px;
    box-shadow: 0 1px 2px #18223014;
    cursor: pointer;
  }

  .dashboard-account-dialog-submit:hover {
    background: #12356a;
  }

  .dashboard-account-dialog-submit:disabled {
    opacity: .6;
    cursor: default;
  }

  .dashboard-account-dialog-links {
    display: grid;
    justify-items: center;
    margin-top: -8px;
  }

  .dashboard-account-link {
    justify-self: center;
    min-block-size: 44px;
    padding: 0;
    color: #173f7b;
    font-family: "Inter Account", sans-serif;
    font-size: 13px;
    font-weight: 500;
    line-height: 20px;
    text-decoration: underline;
    text-underline-offset: 3px;
    background: none;
    border: 0;
    cursor: pointer;
  }

  .dashboard-account-link:disabled {
    cursor: default;
  }

  /* Done: the step's outcome in the green of an active access. */
  .dashboard-account-done {
    display: grid;
    grid-template-columns: 16px minmax(0, 1fr);
    gap: 10px;
    margin: 0;
    padding: 16px;
    color: #182230;
    font-family: "Inter Account", sans-serif;
    font-size: 14px;
    line-height: 22px;
    background: #f3faf7;
    border: 1px solid #cfe5dc;
    border-radius: 7px;
  }

  .dashboard-account-done::before {
    content: "";
    inline-size: 16px;
    block-size: 16px;
    margin-top: 3px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23287761' stroke-width='2'%3E%3Cpath d='M3.5 8.3l3 3 6-6.6'/%3E%3C/svg%3E") center / 16px no-repeat;
  }
  /* desktop-scale:native-end */

  [hidden] {
    display: none !important;
  }

  @media (max-width: 900px) {
    .dashboard-stage {
      padding-inline: 24px;
    }

    /* A finger, not a pointer: the change controls grow to a touch target. */
    .dashboard-account-change {
      min-block-size: 44px;
    }

    .dashboard-account-panel {
      grid-template-columns: 1fr;
    }

    .dashboard-account-primary {
      padding: 24px 28px;
      border-right: 0;
      border-bottom: 1px solid var(--psv-line);
    }

    .dashboard-view--signals {
      width: min(640px, 100%);
    }

    .dashboard-signal-layout {
      position: relative;
      grid-template-columns: minmax(176px, 190px) minmax(340px, 1fr);
      gap: 18px;
    }

    .dashboard-access-column {
      position: absolute;
      z-index: 2;
      top: 34px;
      left: 0;
      width: 190px;
      padding-top: 0;
    }

    .dashboard-market-panel {
      margin-top: 62px;
    }
  }

  @media (max-width: 760px) {
    /* The token already steps to 68px here; the logo keeps the site's 28px, and
       the shell keeps the site's inset. */

    .product-header__title {
      padding-left: 12px;
      font-size: 13px;
    }

    .product-header .lang-toggle {
      width: 36px;
      height: 36px;
    }

    .dashboard-main {
      height: calc(100vh - var(--psv-header-height));
      height: calc(100dvh - var(--psv-header-height));
    }

    .dashboard-app {
      display: block;
    }

    .dashboard-nav {
      position: fixed;
      z-index: 50;
      inset: auto 0 0;
      height: 60px;
      flex-direction: row;
      justify-content: space-around;
      gap: 0;
      padding: 7px 18px;
      border-top: 1px solid var(--psv-line-strong);
      border-right: 0;
      background: var(--psv-bg-raised);
    }

    .dashboard-nav button,
    .dashboard-nav button:last-child {
      width: 46px;
      height: 44px;
      flex: 0 0 46px;
      margin: 0;
    }

    .dashboard-nav button[aria-pressed="true"]::before {
      inset: auto 8px -8px;
      width: auto;
      height: 2px;
    }

    .dashboard-nav-label {
      display: none;
    }

    .dashboard-stage {
      height: 100%;
      padding: 13px 14px 72px;
    }

    .dashboard-view-head {
      min-height: 50px;
      margin-bottom: 9px;
      padding-bottom: 9px;
    }

    .dashboard-view-head :is(h1, h2) {
      font-size: 22px;
    }

    .dashboard-view-head > div > p {
      margin-top: 4px;
      font-size: 12px;
    }

    .dashboard-access {
      margin-top: 4px;
    }

    .dashboard-access span {
      display: none;
    }

    .dashboard-access strong::after {
      display: none;
    }

    .dashboard-signal-layout {
      position: relative;
      display: flex;
      min-height: 0;
      flex-direction: column;
      gap: 8px;
    }

    .dashboard-market-column {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      align-items: start;
    }

    .dashboard-market-column h2 {
      margin: 3px 0 9px;
      font-size: 18px;
    }

    .dashboard-access-column {
      position: absolute;
      top: 0;
      right: 0;
      left: auto;
      width: 158px;
      padding-top: 0;
    }

    .dashboard-access-column .dashboard-access {
      display: grid;
      grid-template-columns: 6px auto;
      gap: 2px 6px;
      justify-items: end;
      margin: 0;
    }

    .dashboard-access-column .dashboard-access span {
      display: block;
      grid-column: 1 / -1;
      padding-left: 0;
      font-size: 8px;
      line-height: 1.15;
      text-align: right;
      white-space: nowrap;
    }

    .dashboard-access-column .dashboard-access strong {
      font-size: 9px;
    }

    .dashboard-market-panel {
      display: block;
      grid-column: 1 / -1;
      width: 100%;
      flex: 0 0 51px;
      margin-top: 0;
      padding: 0;
      border: 0;
      background: transparent;
    }

    .dashboard-market-panel__head {
      display: none;
    }

    .dashboard-market-list {
      display: grid;
      grid-auto-columns: minmax(145px, 1fr);
      grid-auto-flow: column;
      grid-template-columns: none;
      overflow-x: auto;
      border-left: 1px solid var(--psv-line);
      scrollbar-width: thin;
    }

    .dashboard-market-list button {
      min-height: 51px;
      flex-direction: row;
      align-items: center;
      justify-content: space-between;
      gap: 8px;
      padding: 8px 11px;
      border-top: 1px solid var(--psv-line);
      border-right: 1px solid var(--psv-line);
      border-bottom: 1px solid var(--psv-line);
    }

    .dashboard-market-list strong {
      font-size: 14px;
    }

    .dashboard-market-list small,
    .dashboard-market-list em {
      font-size: 9px;
    }

    .dashboard-market-list button:last-child {
      border-bottom: 1px solid var(--psv-line);
    }

    .dashboard-signal-focus {
      height: auto;
      max-height: none;
      flex: 1;
    }

    .dashboard-signal-card__head {
      min-height: 53px;
      padding-bottom: 8px;
    }

    .dashboard-signal-instrument {
      gap: 8px;
    }

    .dashboard-signal-instrument > span {
      width: 30px;
      height: 30px;
      flex-basis: 30px;
      font-size: 14px;
    }

    .dashboard-signal-instrument h2 {
      font-size: 18px;
    }

    .dashboard-signal-instrument p,
    .dashboard-live-state span {
      display: none;
    }

    .dashboard-signal-card {
      height: 100%;
      min-height: 0;
      padding: 9px 13px 7px;
    }

    .dashboard-signal-meta {
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 5px 12px;
      padding-bottom: 6px;
    }

    .dashboard-signal-meta > div:first-child {
      grid-column: 1 / -1;
    }

    .dashboard-signal-meta span,
    .dashboard-signal-values dt {
      font-size: 8px;
    }

    .dashboard-signal-meta strong {
      margin-top: 1px;
      font-size: 9px;
    }

    .dashboard-signal-values > div {
      min-height: 29px;
      grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);
      gap: 8px;
    }

    .dashboard-signal-values dd {
      font-size: 10px;
    }

    .dashboard-signal-values .dashboard-value-emphasis dd {
      font-size: 10.5px;
    }

    .dashboard-signal-values .dashboard-value-regime {
      font-size: 10px;
    }

    .dashboard-empty-signal {
      padding: 24px;
    }

    .dashboard-empty-signal h2 {
      margin-top: 20px;
      font-size: 30px;
    }

    .dashboard-empty-signal p {
      font-size: 13px;
    }

    .dashboard-ledger .dashboard-ledger__head {
      display: none;
    }

    .dashboard-ledger > div {
      min-height: 88px;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 7px 16px;
      padding: 12px 16px;
    }

    .dashboard-ledger b {
      justify-self: start;
    }

    .dashboard-notification-list article {
      min-height: 92px;
      padding: 14px;
    }

    .dashboard-notification-list time {
      display: none;
    }

    .dashboard-account-primary {
      padding: 18px;
    }

    .dashboard-account-panel dl {
      padding: 10px 18px;
    }

    .dashboard-account-panel dl > div {
      min-height: 42px;
      grid-template-columns: 90px minmax(0, 1fr);
      gap: 10px;
      font-size: 11px;
    }

    .dashboard-account-actions {
      padding: 14px 18px;
    }
  }

  @media (max-width: 1050px) and (max-height: 700px) and (min-width: 761px) {
    .dashboard-stage {
      padding-block: calc(15 * var(--psv-u));
    }

    .dashboard-view-head {
      min-height: calc(54 * var(--psv-u));
      margin-bottom: calc(10 * var(--psv-u));
      padding-bottom: calc(10 * var(--psv-u));
    }

    .dashboard-signal-card {
      min-height: 0;
      padding: calc(10 * var(--psv-u)) calc(18 * var(--psv-u)) calc(8 * var(--psv-u));
    }

    .dashboard-signal-card__head {
      min-height: calc(52 * var(--psv-u));
      padding-bottom: calc(8 * var(--psv-u));
    }

    .dashboard-signal-instrument > span {
      width: calc(30 * var(--psv-u));
      height: calc(30 * var(--psv-u));
      flex-basis: calc(30 * var(--psv-u));
      font-size: max(var(--psv-text-floor), calc(15 * var(--psv-u)));
    }

    .dashboard-signal-instrument h2 {
      font-size: calc(20 * var(--psv-u));
    }

    .dashboard-signal-values > div {
      min-height: calc(29 * var(--psv-u));
    }

    .dashboard-signal-meta {
      gap: calc(4 * var(--psv-u)) calc(14 * var(--psv-u));
      padding: calc(7 * var(--psv-u)) 0;
    }

    .dashboard-signal-meta span,
    .dashboard-signal-values dt {
      font-size: max(var(--psv-text-floor), calc(8.5 * max(var(--psv-u), var(--psv-label-floor))));
    }

    .dashboard-signal-meta strong {
      margin-top: calc(1 * var(--psv-u));
      font-size: max(var(--psv-text-floor), calc(9.5 * max(var(--psv-u), var(--psv-label-floor))));
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .dashboard-nav button,
    .dashboard-nav-label {
      transition: none;
    }
  }

  @media (forced-colors: active) {
    .dashboard-access i,
    .dashboard-live-state i,
    .dashboard-nav-badge {
      border: 1px solid CanvasText;
      background: CanvasText;
      box-shadow: none;
    }
  }
}

/* Module views inside the signed-in Terminal: the same panels the Terminal
   page shows, given the stage's height and their own scroll. */
@layer psv-page {
  .dashboard-view--module {
    display: flex;
    width: min((1400 * var(--psv-u)), 100%);
    min-height: 0;
    flex-direction: column;
  }

  /* The module views carry no visible title: the name lives in the rail
     button and in a hidden heading for assistive technology, so the panel
     starts at the top edge of the stage. */
  .dashboard-view--module .tm-panel {
    max-width: none;
    min-height: 0;
    overflow: auto;
  }

  /* The verdict card and its market list are Terminal surfaces: like the
     panels they keep their night on the light page, flat on the brand navy,
     with the panels' own text and line values. */
  .dashboard-signal-card,
  .dashboard-market-panel {
    --psv-text: #e6edf5;
    --psv-copy: #a9b8c8;
    --psv-muted: #7f93a8;
    --psv-accent-rgb: 104 194 238;
    --psv-accent: rgb(104 194 238);
    --psv-accent-tint: rgb(191 231 250);
    --psv-accent-pale: rgb(205 238 255);
    --psv-line-rgb: 145 184 216;
    --psv-line-strong-rgb: 151 196 230;
    --psv-line: rgb(145 184 216 / .18);
    --psv-line-strong: rgb(151 196 230 / .34);
    color: var(--psv-text);
    background: var(--psv-brand);
  }

  .dashboard-signal-card {
    box-shadow: none;
  }
}

/* Account access states remain useful when a paid term has not started or ended. */
[data-dashboard-access]:not([data-dashboard-access="active"]) [data-dashboard-view]:not([data-dashboard-view="access"]):not([data-dashboard-view="account"]),
[data-dashboard-access]:not([data-dashboard-access="active"]) [data-dashboard-view-button]:not([data-dashboard-view-button="access"]):not([data-dashboard-view-button="account"]) { display: none; }
.dashboard-nav [hidden], .access-actions [hidden], .access-detail[hidden] { display: none; }
.dashboard-view--access { display: grid; align-items: center; padding: calc(40 * var(--psv-u)); }
.dashboard-view--access[hidden] { display: none; }
.access-card { width: 100%; max-width: calc(640 * var(--psv-u)); margin: auto; }
.access-card h2 { font-size: calc(34 * var(--psv-u)); line-height: 1.2; margin: calc(18 * var(--psv-u)) 0; }
.access-copy { color: var(--psv-copy); font-size: calc(17 * var(--psv-u)); line-height: 1.65; }
.access-detail { margin-top: calc(24 * var(--psv-u)); font-size: calc(14 * var(--psv-u)); }
.access-actions { display: flex; align-items: center; flex-wrap: wrap; gap: calc(18 * var(--psv-u)); margin-top: calc(28 * var(--psv-u)); }
@media (max-width: 600px) {
  .dashboard-view--access { padding: 24px; }
  .access-card h2 { font-size: 28px; }
}

/* Account page without access, desktop (8 Oct 2026, owner-approved candidate
   design/candidates/account-welcome). Left: the welcome card in the account
   card language, the plans, the assurances. Right: the Terminal Monitor with
   its values locked. Above: the purchase rail. Tablet and phone keep their
   own page; the added parts stay off there. */
.access-welcome__rail,
.access-welcome__terminal,
.access-welcome__plans,
.access-welcome__trust {
  display: none;
}

@media (min-width: 1051px) {
  [data-access-welcome] {
    align-items: start;
    align-content: center;
    padding: calc(12 * var(--psv-u)) calc(40 * var(--psv-u)) calc(14 * var(--psv-u));
  }

  [data-access-welcome] .access-welcome {
    display: grid;
    gap: calc(16 * var(--psv-u));
    inline-size: min(100%, calc(1340 * var(--psv-u)));
    margin-inline: auto;
  }

  [data-access-welcome] .access-welcome__rail:not([hidden]) {
    display: block;
  }

  .access-welcome__rail ol {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    margin: 0;
    padding: 0;
    list-style: none;
    border-bottom: 1px solid #dfe6ef;
  }

  .access-welcome__rail li {
    display: flex;
    align-items: center;
    gap: calc(10 * var(--psv-u));
    margin-bottom: calc(-1 * var(--psv-u));
    padding: calc(8 * var(--psv-u)) calc(12 * var(--psv-u)) calc(9 * var(--psv-u));
    color: #6b7c93;
    font-family: var(--psv-font-mono);
    font-size: max(var(--psv-text-floor), calc(11 * max(var(--psv-u), var(--psv-label-floor))));
    letter-spacing: .08em;
    text-transform: uppercase;
    border-bottom: 2px solid transparent;
  }

  .access-welcome__rail li span {
    color: #8a9ab0;
  }

  .access-welcome__rail li.is-done {
    color: #132d58;
  }

  .access-welcome__rail li.is-current {
    color: #132d58;
    border-bottom-color: #338cff;
  }

  .access-welcome__rail li.is-current span {
    color: #338cff;
  }

  .access-welcome__check {
    flex: none;
    inline-size: calc(14 * var(--psv-u));
    block-size: calc(14 * var(--psv-u));
    fill: none;
    stroke: #1f8a5b;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  [data-access-welcome] .access-welcome__main {
    display: grid;
    grid-template-columns: calc(560 * var(--psv-u)) minmax(0, 1fr);
    gap: calc(28 * var(--psv-u));
    align-items: start;
  }

  [data-access-welcome] .access-welcome__left {
    display: grid;
    gap: calc(12 * var(--psv-u));
  }

  [data-access-welcome] .access-card {
    box-sizing: border-box;
    inline-size: 100%;
    max-inline-size: none;
    margin: 0;
    padding: calc(24 * var(--psv-u)) calc(30 * var(--psv-u)) calc(22 * var(--psv-u));
    background: #ffffff;
    border: 1px solid #e1e8f1;
    border-radius: calc(14 * var(--psv-u));
    box-shadow: 0 calc(1 * var(--psv-u)) calc(2 * var(--psv-u)) rgba(19, 45, 88, .06),
                0 calc(18 * var(--psv-u)) calc(44 * var(--psv-u)) calc(-20 * var(--psv-u)) rgba(19, 45, 88, .22);
  }

  [data-access-welcome] .access-card > .eyebrow {
    margin: 0 0 calc(12 * var(--psv-u));
  }

  [data-access-welcome] .access-card h2 {
    margin: 0;
    color: #132d58;
    font-size: calc(30 * var(--psv-u));
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: -.012em;
  }

  [data-access-welcome] .access-copy {
    margin: calc(10 * var(--psv-u)) 0 0;
    color: #3f5266;
    font-size: calc(15.5 * var(--psv-u));
    line-height: 1.55;
  }

  [data-access-welcome] .access-detail {
    margin: calc(14 * var(--psv-u)) 0 0;
    padding: calc(9 * var(--psv-u)) calc(13 * var(--psv-u));
    color: #132d58;
    background: #f4f7fb;
    border: 1px solid #e6ecf3;
    border-radius: calc(8 * var(--psv-u));
    font-family: var(--psv-font-mono);
    font-size: max(var(--psv-text-floor), calc(13 * var(--psv-u)));
  }

  [data-access-welcome] .access-actions {
    gap: calc(12 * var(--psv-u));
    margin: calc(18 * var(--psv-u)) 0 0;
  }

  [data-access-welcome] .access-actions .btn {
    min-block-size: calc(46 * var(--psv-u));
    padding: 0 calc(24 * var(--psv-u));
    border-radius: calc(8 * var(--psv-u));
    font-family: var(--psv-font-sans);
    font-size: calc(15 * var(--psv-u));
    font-weight: 500;
    letter-spacing: 0;
    text-transform: none;
    box-shadow: none;
  }

  [data-access-welcome] .access-actions .btn--primary {
    color: #ecf1f6;
    background: #0c4a80;
    border: 1px solid #0c4a80;
  }

  [data-access-welcome] .access-actions .btn--secondary {
    color: #132d58;
    background: #ffffff;
    border: 1px solid #cdd7e4;
  }

  [data-access-welcome] .access-welcome__plans:not([hidden]) {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: calc(10 * var(--psv-u));
  }

  .access-welcome__plan {
    display: flex;
    flex-direction: column;
    gap: calc(3 * var(--psv-u));
    padding: calc(12 * var(--psv-u)) calc(14 * var(--psv-u));
    color: #132d58;
    text-decoration: none;
    background: #ffffff;
    border: 1px solid #e1e8f1;
    border-radius: calc(10 * var(--psv-u));
    transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
  }

  .access-welcome__plan:hover,
  .access-welcome__plan:focus-visible {
    border-color: #338cff;
    box-shadow: 0 calc(10 * var(--psv-u)) calc(26 * var(--psv-u)) calc(-14 * var(--psv-u)) rgba(19, 45, 88, .35);
    transform: translateY(calc(-1 * var(--psv-u)));
  }

  .access-welcome__plan-head {
    display: flex;
    align-items: baseline;
    gap: calc(8 * var(--psv-u));
    font-family: var(--psv-font-mono);
  }

  .access-welcome__plan-head span {
    color: #8a9ab0;
    font-size: max(var(--psv-text-floor), calc(11 * max(var(--psv-u), var(--psv-label-floor))));
  }

  .access-welcome__plan-head strong {
    font-size: max(var(--psv-text-floor), calc(12 * max(var(--psv-u), var(--psv-label-floor))));
    font-weight: 500;
    letter-spacing: .08em;
  }

  .access-welcome__price {
    margin-top: calc(4 * var(--psv-u));
    font-size: calc(24 * var(--psv-u));
    font-weight: 600;
    line-height: 1.1;
    letter-spacing: -.01em;
  }

  .access-welcome__price small {
    color: #6b7c93;
    font-size: max(var(--psv-text-floor), calc(12 * max(var(--psv-u), var(--psv-label-floor))));
    font-weight: 500;
    letter-spacing: .04em;
  }

  .access-welcome__term {
    color: #3f5266;
    font-size: max(var(--psv-text-floor), calc(13 * var(--psv-u)));
  }

  .access-welcome__cover {
    display: flex;
    gap: calc(3 * var(--psv-u));
    margin-top: calc(6 * var(--psv-u));
  }

  .access-welcome__cover b {
    padding: 0 calc(4 * var(--psv-u));
    color: #132d58;
    background: #f1f5fa;
    border: 1px solid #e3e9f1;
    border-radius: calc(4 * var(--psv-u));
    font-family: var(--psv-font-mono);
    font-size: max(var(--psv-text-floor), calc(10 * max(var(--psv-u), var(--psv-label-floor))));
    font-weight: 500;
  }

  .access-welcome__cta {
    margin-top: calc(10 * var(--psv-u));
    padding-top: calc(8 * var(--psv-u));
    color: #0c4a80;
    font-family: var(--psv-font-mono);
    font-size: max(var(--psv-text-floor), calc(11 * max(var(--psv-u), var(--psv-label-floor))));
    font-weight: 500;
    letter-spacing: .06em;
    border-top: 1px solid #edf1f6;
  }

  [data-access-welcome] .access-welcome__trust:not([hidden]) {
    display: grid;
    gap: calc(3 * var(--psv-u));
    margin: calc(2 * var(--psv-u)) 0 0;
    padding: 0 calc(4 * var(--psv-u));
    list-style: none;
  }

  .access-welcome__trust li {
    display: flex;
    align-items: center;
    gap: calc(8 * var(--psv-u));
    color: #3f5266;
    font-size: max(var(--psv-text-floor), calc(12.5 * var(--psv-u)));
    line-height: 1.45;
  }

  [data-access-welcome] .access-welcome__terminal:not([hidden]) {
    position: relative;
    display: block;
    margin: 0;
  }

  .access-welcome__terminal .tm-panel {
    max-width: none;
    overflow: hidden;
    border-radius: calc(12 * var(--psv-u));
    box-shadow: 0 calc(22 * var(--psv-u)) calc(56 * var(--psv-u)) calc(-24 * var(--psv-u)) rgba(6, 20, 38, .55);
    pointer-events: none;
    user-select: none;
  }

  .access-welcome__terminal .tm-table--monitor.is-fixed {
    inline-size: 100%;
    min-inline-size: 0;
    table-layout: fixed;
  }

  .access-welcome__terminal .tm-table--monitor col:first-child {
    inline-size: 46%;
  }

  .access-welcome__terminal .tm-table--monitor col.tm-col-hz {
    inline-size: 13.5%;
  }

  .access-welcome__terminal .tm-table--monitor thead th.r {
    padding-inline: calc(4 * var(--psv-u));
    letter-spacing: .02em;
    text-overflow: clip;
  }

  .access-welcome__terminal .tm-namebtn {
    display: flex;
    align-items: baseline;
    gap: calc(10 * var(--psv-u));
    min-inline-size: 0;
  }

  .access-welcome__terminal .tm-namebtn strong {
    flex: none;
    white-space: nowrap;
  }

  .access-welcome__terminal .tm-namebtn small {
    flex: 1 1 auto;
    min-inline-size: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .access-welcome__mask {
    display: inline-block;
    inline-size: calc(36 * var(--psv-u));
    block-size: calc(6 * var(--psv-u));
    vertical-align: middle;
    background: rgb(145 184 216 / .2);
    border-radius: calc(3 * var(--psv-u));
  }

  .access-welcome__terminal td.is-sel .access-welcome__mask {
    background: rgb(104 194 238 / .32);
  }

  .access-welcome__seal {
    position: absolute;
    top: 56%;
    left: 76%;
    display: grid;
    place-items: center;
    inline-size: calc(58 * var(--psv-u));
    block-size: calc(58 * var(--psv-u));
    background: rgb(19 45 88 / .92);
    border: 1px solid rgb(151 196 230 / .4);
    border-radius: 50%;
    box-shadow: 0 0 0 calc(10 * var(--psv-u)) rgb(19 45 88 / .25), 0 calc(14 * var(--psv-u)) calc(30 * var(--psv-u)) rgba(6, 20, 38, .5);
    transform: translate(-50%, -50%);
  }

  .access-welcome__seal svg {
    inline-size: calc(24 * var(--psv-u));
    block-size: calc(24 * var(--psv-u));
    fill: none;
    stroke: #cfe3f7;
    stroke-width: 1.6;
    stroke-linecap: round;
  }
}

/* Terminal v194: the dashboard is the only application shell. Content occupies
   the remaining viewport; account and other modules keep their existing layout. */
body[data-page="dashboard"].terminal-active{--psv-header-height:calc(56 * var(--psv-u));--terminal-bg:#0c121c;--terminal-surface:#121c2a;--terminal-text:#e5edf8;--terminal-muted:#a0b0c6;--terminal-border:#2c3c51;--terminal-accent:#91b9ff;background:var(--terminal-bg)}
body.terminal-active[data-terminal-theme="light"]{--terminal-bg:#edf1f6;--terminal-surface:#fff;--terminal-text:#182b45;--terminal-muted:#52657f;--terminal-border:#cbd6e5;--terminal-accent:#2554ba}
.terminal-active .product-header{height:calc(56 * var(--psv-u));min-height:calc(56 * var(--psv-u));background:var(--terminal-surface);border-color:var(--terminal-border);color:var(--terminal-text)}
.terminal-active .product-header__inner{height:100%;max-width:none;padding:0 calc(22 * var(--psv-u));gap:calc(18 * var(--psv-u))}
.terminal-active .product-header__title{color:var(--terminal-muted);font-size:max(var(--psv-text-floor), calc(11 * max(var(--psv-u), var(--psv-label-floor))));letter-spacing:calc(1.8 * var(--psv-u));border-color:var(--terminal-border)}
.terminal-active .product-brand__logo{height:calc(27 * var(--psv-u));width:auto}
.terminal-active[data-terminal-theme="dark"] .product-brand__logo{filter:invert(1) hue-rotate(180deg)}
.terminal-active .product-header__actions{gap:calc(8 * var(--psv-u));color:var(--terminal-text)}
.terminal-active .product-header :is(.lang-toggle,.account-toggle){height:calc(32 * var(--psv-u));min-height:calc(32 * var(--psv-u));width:calc(36 * var(--psv-u));padding:calc(6 * var(--psv-u));background:transparent;border-color:var(--terminal-border);color:var(--terminal-text)}
.terminal-active .product-header :is(.language-menu,.account-menu){background:var(--terminal-surface);border-color:var(--terminal-border);color:var(--terminal-text)}
.terminal-active .product-header :is(.language-option,.account-login,.account-status){color:var(--terminal-text)}
.terminal-header-controls{display:flex;align-items:center;gap:calc(8 * var(--psv-u))}
.terminal-header-controls button{display:grid;place-items:center;width:calc(32 * var(--psv-u));height:calc(32 * var(--psv-u));padding:0;border:1px solid var(--terminal-border);border-radius:calc(5 * var(--psv-u));color:var(--terminal-text);background:transparent;font:calc(18 * var(--psv-u)) 'Segoe UI',sans-serif;cursor:pointer}
.terminal-header-controls button:hover{background:var(--terminal-bg)}
.terminal-connection{color:var(--terminal-accent);border:1px solid var(--terminal-border);border-radius:calc(4 * var(--psv-u));font:600 calc(10 * var(--psv-u)) 'Segoe UI',sans-serif;letter-spacing:calc(0.8 * var(--psv-u));padding:calc(5 * var(--psv-u)) calc(8 * var(--psv-u));margin-right:calc(4 * var(--psv-u))}
.terminal-active .dashboard-main{height:calc(100dvh - (56 * var(--psv-u)))}
.terminal-active .dashboard-app{display:grid;grid-template-columns:calc(56 * var(--psv-u)) minmax(0,1fr)}
.terminal-active .dashboard-stage{padding:0;height:100%;overflow:hidden}
.terminal-active .dashboard-nav{position:static;flex-direction:column;width:calc(56 * var(--psv-u));height:100%;padding:calc(13 * var(--psv-u)) 0;gap:calc(8 * var(--psv-u));border-right:1px solid var(--terminal-border);background:var(--terminal-surface)}
.terminal-active .dashboard-nav button{width:calc(40 * var(--psv-u));height:calc(40 * var(--psv-u));flex:0 0 calc(40 * var(--psv-u));color:var(--terminal-muted)}
.terminal-active .dashboard-nav button[aria-pressed="true"]{color:var(--terminal-accent);border-color:var(--terminal-border);background:var(--terminal-bg)}
.terminal-active .dashboard-nav button[aria-pressed="true"]::before{left:calc(-9 * var(--psv-u));background:var(--terminal-accent)}
.terminal-active .dashboard-nav-label{background:var(--terminal-surface);border-color:var(--terminal-border);color:var(--terminal-text);left:calc(46 * var(--psv-u))}
.terminal-hybrid-host{position:relative;height:100%;width:100%;min-height:0;isolation:isolate}
.terminal-workspace-frame{position:absolute;inset:0;display:block;width:100%;height:100%;border:0;background:var(--terminal-bg);color-scheme:inherit}
.terminal-active [data-dashboard-view="monitor"],.terminal-active [data-dashboard-view="analyze"]{height:0;overflow:hidden}
@media(max-width:760px){
 .terminal-active .product-header__inner{padding:0 12px;gap:8px}.terminal-active .product-brand__logo{height:23px}.terminal-active .product-header__title{display:none}
 .terminal-active .product-header__actions,.terminal-header-controls{gap:4px}.terminal-connection{font-size:8px;padding:4px;margin:0;max-width:82px;text-align:center;letter-spacing:0}.terminal-header-controls button{width:28px;height:28px;font-size:16px}.terminal-header-controls [data-terminal-action="help"]{display:none}
 .terminal-active .product-header :is(.lang-toggle,.account-toggle){width:30px;height:30px;padding:5px}.terminal-active .dashboard-main{height:calc(100dvh - 112px)}.terminal-active .dashboard-app{display:block}
 .terminal-active .dashboard-nav{position:fixed;inset:auto 0 0;z-index:50;flex-direction:row;justify-content:space-around;width:100%;height:56px;padding:5px 10px;gap:0;border:0;border-top:1px solid var(--terminal-border)}
 .terminal-active .dashboard-nav button,.terminal-active .dashboard-nav button:last-child{width:38px;height:42px;flex:0 0 38px;margin:0}.terminal-active .dashboard-nav button[aria-pressed="true"]::before{inset:auto 6px -5px;width:auto;height:2px}.terminal-active .dashboard-stage{padding:0}
}

html:has(body.terminal-active){scrollbar-gutter:auto}
.terminal-mode-nav{display:flex;align-self:stretch;align-items:stretch;gap:calc(8 * var(--psv-u));margin-left:calc(20 * var(--psv-u))}
.terminal-mode-nav button{position:relative;display:flex;align-items:center;gap:calc(8 * var(--psv-u));padding:0 calc(15 * var(--psv-u));color:var(--terminal-muted);background:none;border:0;cursor:pointer;font:600 calc(13 * var(--psv-u)) 'Segoe UI',sans-serif;white-space:nowrap}
.terminal-mode-nav button[aria-pressed="true"]{color:var(--terminal-text)}.terminal-mode-nav button[aria-pressed="true"]::after{position:absolute;content:'';bottom:0;height:calc(3 * var(--psv-u));left:calc(15 * var(--psv-u));right:calc(15 * var(--psv-u));background:var(--terminal-accent);border-radius:calc(2 * var(--psv-u)) calc(2 * var(--psv-u)) 0 0}
.terminal-mode-nav .dashboard-nav-label{position:static;transform:none;opacity:1;padding:0;border:0;pointer-events:none;color:inherit;background:none;font:inherit;width:auto}
.terminal-mode-nav svg{width:calc(17 * var(--psv-u));height:calc(17 * var(--psv-u));fill:none;stroke:currentColor;stroke-width:1.5}
@media(max-width:1050px){.terminal-mode-nav{margin-left:0;gap:0}.terminal-mode-nav button{padding:0 10px;font-size:12px}.terminal-active .product-header__title{display:none}}

@media(min-width:761px){.terminal-connection{white-space:nowrap;flex-shrink:0}.terminal-header-controls{flex-shrink:0}}

/* desktop-scale:native-start */
/* Approved terminal shell: compact header; all modules in the workspace menu. */
.terminal-workspace-menu{position:relative;align-self:center;font:12px 'Segoe UI',sans-serif;color:var(--terminal-muted)}
.terminal-workspace-menu>summary{cursor:pointer;padding:7px 9px;border:1px solid var(--terminal-border);border-radius:4px;white-space:nowrap;list-style:none}
.terminal-workspace-menu>summary::after{content:' ▾'}
.terminal-workspace-menu>div{position:absolute;z-index:100;left:0;top:calc(100% + 7px);min-width:210px;max-height:70dvh;overflow:auto;padding:6px;background:var(--terminal-surface);border:1px solid var(--terminal-border);border-radius:6px;box-shadow:0 10px 24px #0005}
.terminal-workspace-menu:not([open])>div{display:none}
.terminal-mode-nav .terminal-workspace-menu button{width:100%;height:36px;padding:6px 10px;justify-content:flex-start;font-size:12px}
.terminal-workspace-menu button:hover{background:var(--terminal-bg)}
.terminal-workspace-menu .dashboard-nav-label{position:static;transform:none;opacity:1;visibility:visible;width:auto;white-space:nowrap}
.terminal-workspace-menu .dashboard-nav-badge{position:static}
@media(min-width:761px){
 body[data-page="dashboard"].terminal-active{--psv-header-height:44px}
 .terminal-active .product-header{height:44px;min-height:44px}
 .terminal-active .product-header__inner{padding:0 14px;gap:16px;width:100%;inline-size:100%;margin-inline:0}
 .terminal-active .product-header__title{display:none}
 .terminal-active .product-brand__logo{height:27px}
 .terminal-mode-nav{margin-left:6px;gap:5px}
 .terminal-mode-nav>button{padding:0 13px;font-size:13px}
 .terminal-mode-nav svg{width:16px;height:16px}
 .terminal-active .product-header__actions{gap:6px}
 .terminal-header-controls{gap:6px}
 .terminal-header-controls button{width:28px;height:28px;font-size:16px}
 .terminal-connection{font-size:10px;letter-spacing:.4px;padding:4px 6px}
 .terminal-active .dashboard-main{height:calc(100dvh - 44px)}
 .terminal-active .dashboard-app{grid-template-columns:minmax(0,1fr)}
 .terminal-active .dashboard-nav{display:none}
 .terminal-active .dashboard-stage{grid-column:1}
}
@media(min-width:761px) and (max-width:1050px){
 .terminal-active .product-header__inner{gap:8px;padding-inline:10px}
 .terminal-mode-nav{margin:0;gap:2px}
 .terminal-mode-nav>button{font-size:12px;padding-inline:8px}
 .terminal-workspace-menu{font-size:11px}
 .terminal-workspace-menu>summary{padding-inline:6px}
}

/* One terminal action family: identical buttons, vector sizes and centerline. */
.product-header .account-toggle>.terminal-action-icon{display:none}
.terminal-active .product-header :is([data-terminal-action],.lang-toggle,.account-toggle){display:inline-flex;align-items:center;justify-content:center;align-self:center;box-sizing:border-box;flex:0 0 32px;width:32px;min-width:32px;max-width:32px;height:32px;min-height:32px;max-height:32px;padding:0;margin:0;gap:0;border:1px solid var(--terminal-border);border-radius:5px;color:var(--terminal-text);background:transparent;line-height:1;vertical-align:middle;transition:background-color .15s ease,border-color .15s ease}
.terminal-active .product-header :is([data-terminal-action],.lang-toggle,.account-toggle):hover{background:var(--terminal-bg);border-color:var(--terminal-accent)}
.terminal-active .product-header :is([data-terminal-action],.lang-toggle,.account-toggle):focus-visible{outline:2px solid var(--terminal-accent);outline-offset:2px}
.terminal-active .product-header :is(.terminal-action-icon,.language-globe){display:block;flex:none;box-sizing:content-box;width:20px;min-width:20px;max-width:20px;height:20px;min-height:20px;max-height:20px;margin:0;padding:0;transform:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.terminal-active .product-header .account-icon,.terminal-active .product-header .language-code{display:none}
.terminal-active .product-header :is(.language-picker,.account-picker){display:inline-flex;align-items:center;align-self:center;margin:0}
.terminal-active .product-header .language-picker+.account-picker{margin-inline-start:0}
.terminal-active .product-header__actions,.terminal-active .terminal-header-controls{gap:8px;align-items:center}
.terminal-active .terminal-connection{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;height:32px;margin:0;padding:0 8px;line-height:1}
@media(max-width:760px){.terminal-active .product-header__actions,.terminal-active .terminal-header-controls{gap:5px}.terminal-active .product-header [data-terminal-action=help]{display:none}.terminal-active .terminal-connection{padding-inline:4px}}

/* Saved appearance is resolved in the head, before the terminal can paint. */
html[data-terminal-boot]{background:#0b131d;color-scheme:dark}
html[data-terminal-boot][data-terminal-theme=light]{background:#edf1f6;color-scheme:light}
/* 19 Oct 2026: views without the startup overlay (FLOW, account) paint the saved dark
   theme from the first frame; the theme attribute is set in the head by initial-view.js. */
html[data-terminal-theme=dark] body[data-page=dashboard]{background:#07121c;color:#e4eaf3;color-scheme:dark}
html[data-terminal-theme=dark] body[data-page=dashboard] .product-header{background:#0b1824;border-color:#15283a}
.terminal-startup{display:none}
html[data-terminal-boot] .terminal-startup{position:fixed;inset:0;z-index:900;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#0b131d;color:#e4eaf3;opacity:1;transition:opacity .16s ease;pointer-events:auto}
html[data-terminal-theme=light] .terminal-startup{background:#edf1f6;color:#182b45}
.terminal-startup strong{font:600 22px 'Segoe UI',sans-serif;letter-spacing:.2px}
.terminal-startup span{font:13px 'Segoe UI',sans-serif;opacity:.72}
.terminal-startup i{position:relative;display:block;width:112px;height:2px;margin-top:7px;background:#52657f30;overflow:hidden}
.terminal-startup i::after{content:'';position:absolute;inset:0;width:45%;background:currentColor;opacity:.6;animation:terminal-startup-progress 1.2s ease-in-out infinite}
html[data-terminal-boot=ready] .terminal-startup{opacity:0;pointer-events:none}
.terminal-workspace-frame{visibility:hidden;pointer-events:none;opacity:0}
.terminal-workspace-frame[data-active=true][data-ready=true]{visibility:visible;pointer-events:auto;opacity:1}
.terminal-view-loading{display:none}
.terminal-hybrid-host[data-loading] .terminal-view-loading{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;gap:12px;background:var(--terminal-bg);color:var(--terminal-muted);font:13px 'Segoe UI',sans-serif}
.terminal-view-loading button{padding:7px 12px;border:1px solid var(--terminal-border);border-radius:4px;background:var(--terminal-surface);color:var(--terminal-text);cursor:pointer}
@keyframes terminal-startup-progress{from{transform:translateX(-100%)}to{transform:translateX(325%)}}
@media(prefers-reduced-motion:reduce){html[data-terminal-boot] .terminal-startup,.terminal-workspace-frame{transition:none}.terminal-startup i::after{animation:none;left:28%}}

.terminal-startup button{font:13px Segoe UI,sans-serif;padding:8px 16px;border:1px solid currentColor;border-radius:5px;color:inherit;background:transparent;cursor:pointer}.terminal-startup[data-failed] i{display:none}
/* desktop-scale:native-end */

/* desktop-scale:native-start */
/* One stationary header for MONITOR, ANALYZE and FLOW. */
body[data-page="dashboard"].terminal-active[data-terminal-theme="dark"]{--terminal-bg:#06131c;--terminal-surface:#091924;--terminal-border:#203a4b;--terminal-accent:#37b3ed;--terminal-text:#e4edf4;--terminal-muted:#8ba7ba}
body.terminal-active .terminal-mode-nav>button[aria-pressed="true"]{background:#14374b}
body.terminal-active[data-terminal-theme="light"] .terminal-mode-nav>button[aria-pressed="true"]{background:#dceef8}
body.terminal-active .terminal-mode-nav>button[aria-pressed="true"]::after{left:0;right:0;border-radius:0;height:2px}

/* FLOW v1.8 header: native dimensions and palette, isolated from other routes. */
.flow-reference-brand,.flow-reference-search,.flow-reference-bell,.flow-reference-clock,.flow-reference-label{display:none}
body[data-page=dashboard].terminal-active{--psv-header-height:62px}
body[data-page=dashboard].terminal-active[data-terminal-theme=dark]{--terminal-bg:#07121c;--terminal-surface:#0b1824;--terminal-border:#253b4c;--terminal-accent:#43b5f5;--terminal-text:#ecf2f7;--terminal-muted:#8da9bc}
body.terminal-active .product-header{height:62px;min-height:62px}
body.terminal-active .product-header__inner{display:grid;grid-template-columns:28% 29% minmax(0,1fr);padding:0 18px;gap:0}
body.terminal-active .product-brand,body.terminal-active .product-header__title{display:none}
body.terminal-active .flow-reference-brand{display:flex;align-items:center;gap:8px;width:max-content;max-width:100%;padding:0;border:0;background:none;color:var(--terminal-text);text-decoration:none;font:22px 'IBM Plex Sans','Segoe UI',sans-serif;cursor:pointer;white-space:nowrap}
.flow-reference-brand svg{width:33px;height:33px;margin-right:7px;flex-shrink:0}.flow-reference-brand strong{font-weight:700}.flow-reference-brand>span{font-weight:300;color:var(--terminal-muted)}
body.terminal-active .terminal-mode-nav{margin:0;gap:0;justify-content:center}
body.terminal-active .terminal-mode-nav>button{padding:0 32px;gap:16px;font:500 14px 'IBM Plex Sans','Segoe UI',sans-serif;color:var(--terminal-text)}
body.terminal-active .terminal-mode-nav>button[aria-pressed=true]{color:var(--terminal-text);background:#12344d}
body.terminal-active[data-terminal-theme=light] .terminal-mode-nav>button[aria-pressed=true]{background:#dceef8}
body.terminal-active .terminal-mode-nav>button>.dashboard-nav-label{display:none}
body.terminal-active .flow-reference-label{display:inline}
body.terminal-active .terminal-mode-nav>button svg{width:19px;height:19px}
body.terminal-active .terminal-mode-nav>button[aria-pressed=true] svg{color:var(--terminal-accent)}
body.terminal-active .terminal-workspace-menu{position:absolute;left:18px;top:55px;z-index:100}
body.terminal-active .terminal-workspace-menu>summary{display:none}
body.terminal-active .product-header__actions{justify-content:flex-end;gap:10px;min-width:0}
body.terminal-active .flow-reference-search{display:flex;align-items:center;gap:10px;min-width:100px;width:306px;height:36px;padding:0 12px;border:1px solid var(--terminal-border);border-radius:5px;background:var(--terminal-bg);color:var(--terminal-muted);font:13px 'Segoe UI',sans-serif;text-align:left;cursor:pointer}
body.terminal-active .flow-reference-search .terminal-action-icon{width:16px;height:16px;min-width:16px}
body.terminal-active .terminal-header-controls{gap:12px}
body.terminal-active .terminal-header-controls>.terminal-connection{order:4;border:0;border-left:1px solid var(--terminal-border);border-radius:0;padding:0 0 0 16px;font:500 10px 'Segoe UI',sans-serif;color:var(--terminal-muted);height:26px;gap:8px}
body.terminal-active .terminal-connection:before{content:'';width:7px;height:7px;border-radius:50%;background:var(--terminal-accent)}
body.terminal-active .terminal-header-controls>[data-terminal-action=theme]{order:1;border:0;color:var(--terminal-muted)}
body.terminal-active .terminal-header-controls>[data-terminal-action=help]{display:none}
body.terminal-active .terminal-header-controls>.flow-reference-bell{display:grid;order:2;border:0;color:var(--terminal-muted)}
body.terminal-active .flow-reference-clock{display:block;order:5;font:11px monospace;color:var(--terminal-muted);padding-left:10px;white-space:nowrap}
body.terminal-active .product-header :is(.lang-toggle,.account-toggle){border:0;color:var(--terminal-muted);width:26px;min-width:26px;max-width:26px;flex-basis:26px}
body.terminal-active .dashboard-main{height:calc(100dvh - 62px)}
@media(max-width:1699px){body.terminal-active .product-header__inner{grid-template-columns:25% 31% minmax(0,1fr)}body.terminal-active .flow-reference-brand{font-size:18px}body.terminal-active .terminal-mode-nav>button{padding-inline:20px;font-size:13px}body.terminal-active .flow-reference-search{width:180px}body.terminal-active .flow-reference-clock{display:none}body.terminal-active .terminal-header-controls{gap:7px}}
@media(max-width:1200px){body.terminal-active .flow-reference-brand{font-size:16px}body.terminal-active .flow-reference-brand>span{display:none}body.terminal-active .product-header__inner{grid-template-columns:20% 37% minmax(0,1fr)}body.terminal-active .terminal-mode-nav>button{padding-inline:12px;gap:8px;font-size:12px}body.terminal-active .flow-reference-search{width:135px;font-size:10px;padding:0 7px;gap:5px}body.terminal-active .product-header__actions{gap:5px}body.terminal-active .terminal-header-controls{gap:5px}body.terminal-active .terminal-header-controls>.terminal-connection{font-size:8px;padding-left:8px}}
@media(max-width:900px){body.terminal-active .flow-reference-search{display:none}}
@media(max-width:760px){body.terminal-active .product-header__inner{display:flex;justify-content:space-between;padding-inline:12px}body.terminal-active .flow-reference-brand{font-size:15px;gap:5px}.flow-reference-brand svg{width:25px;height:25px;margin-right:0}body.terminal-active .flow-reference-bell{display:none!important}body.terminal-active .dashboard-main{height:calc(100dvh - 118px)}body.terminal-active .flow-reference-label{display:none}body.terminal-active .flow-reference-brand{pointer-events:auto}body.terminal-active .terminal-header-controls>.terminal-connection{padding-left:4px;font-size:8px}body.terminal-active .terminal-header-controls{gap:3px}}

/* desktop-scale:native-end */

/* desktop-scale:native-start */
/* The mobile Terminal's language, account and drawing menus share one surface.
   Logo, header actions and chart controls retain their original artwork. */
@media (max-width:760px), (max-width:1100px) and (hover:none) and (pointer:coarse){
 body[data-page=dashboard] :is([data-terminal-menu-sheet],[data-terminal-header-menu]){--terminal-surface:#0b1824;--terminal-text:#ecf2f7;--terminal-muted:#8da9bc;--terminal-border:#253b4c;--terminal-accent:#43b5f5;--terminal-menu-selected:#12344d;--terminal-menu-scrim:#0009}
 body[data-page=dashboard][data-terminal-theme=light] :is([data-terminal-menu-sheet],[data-terminal-header-menu]){--terminal-surface:#fff;--terminal-text:#182b45;--terminal-muted:#52657f;--terminal-border:#cbd6e5;--terminal-accent:#2554ba;--terminal-menu-selected:#dceef8;--terminal-menu-scrim:#07121c66}
 body[data-page=dashboard] [data-terminal-menu-sheet]{position:fixed;inset:auto 0 0;box-sizing:border-box;margin:0;width:100%;max-width:none;max-height:calc(100dvh - 24px);padding:8px 12px max(16px,env(safe-area-inset-bottom));overflow:hidden;border:1px solid var(--terminal-border);border-inline:0;border-bottom:0;border-radius:14px 14px 0 0;background:var(--terminal-surface);color:var(--terminal-text);font:400 14px/1.45 'IBM Plex Sans','Segoe UI',sans-serif;box-shadow:0 -8px 30px #0003}
 body[data-page=dashboard] [data-terminal-menu-sheet]:not([open]){display:none}
 body[data-page=dashboard] [data-terminal-menu-sheet][open]{display:flex;flex-direction:column}
 body[data-page=dashboard] [data-terminal-menu-sheet]::backdrop{background:var(--terminal-menu-scrim)}
 body[data-page=dashboard] [data-terminal-header-menu]{position:fixed;inset:auto;box-sizing:border-box;margin:0;width:min(300px,calc(100vw - 16px));max-height:calc(100dvh - 80px);padding:4px 8px 8px;overflow:hidden;border:1px solid var(--terminal-border);border-radius:8px;background:var(--terminal-surface);color:var(--terminal-text);font:400 14px/1.45 'IBM Plex Sans','Segoe UI',sans-serif;box-shadow:0 8px 24px #0003}
 body[data-page=dashboard] [data-terminal-header-menu]:popover-open{display:flex;flex-direction:column}
 body[data-page=dashboard] [data-terminal-header-menu] .terminal-sheet-heading{margin-bottom:4px;padding-left:10px}
 body[data-page=dashboard] [data-terminal-header-menu] :is(button,a):focus-visible{outline:2px solid var(--terminal-accent);outline-offset:-2px}
 body[data-page=dashboard] [data-terminal-header-menu][data-input=pointer] :is(button,a):focus-visible{outline:none}
 .terminal-sheet-handle{width:32px;height:3px;flex:none;margin:0 auto 3px;border-radius:2px;background:var(--terminal-muted)}
 .terminal-sheet-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;flex:none;margin-bottom:6px;padding-left:10px;border-bottom:1px solid var(--terminal-border)}
 .terminal-sheet-heading h2{margin:0;font:500 15px/1.4 'IBM Plex Sans','Segoe UI',sans-serif;color:var(--terminal-text)}
 .terminal-sheet-close{display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-height:44px;flex:none;margin:0;padding:0;border:0;border-radius:4px;background:transparent;color:var(--terminal-muted);font:400 16px/1 'Segoe UI',sans-serif;cursor:pointer}
 .terminal-sheet-content{min-height:0;overflow-y:auto;overscroll-behavior:contain}
 .terminal-sheet-content [hidden]{display:none!important}
 body[data-page=dashboard] :is([data-terminal-menu-sheet],[data-terminal-header-menu]) :is(.language-menu,.account-menu){position:static!important;inset:auto!important;transform:none!important;width:100%;min-width:0;max-width:none;max-height:none;overflow:visible;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:var(--terminal-text)}
 body[data-page=dashboard] :is([data-terminal-menu-sheet],[data-terminal-header-menu]) :is(.language-option,.account-login){display:flex;align-items:center;box-sizing:border-box;width:100%;min-height:48px;margin:2px 0 0;padding:10px 12px;border:0;border-left:3px solid transparent;border-radius:5px;background:transparent;color:var(--terminal-text);font:400 15px/1.4 'IBM Plex Sans','Segoe UI',sans-serif;font-kerning:normal;text-rendering:optimizeLegibility;letter-spacing:normal;word-spacing:0;text-align:left;text-decoration:none;white-space:normal}
 body[data-page=dashboard] :is([data-terminal-menu-sheet],[data-terminal-header-menu]) :is(.language-option[aria-checked=true],.account-login[aria-current=page]){border-left-color:var(--terminal-accent);background:var(--terminal-menu-selected);color:var(--terminal-text);font-weight:500}
 body[data-page=dashboard] :is([data-terminal-menu-sheet],[data-terminal-header-menu]) .account-status{margin:0;padding:10px 12px;color:var(--terminal-muted);font-size:13px}
 body[data-page=dashboard] [data-terminal-menu-sheet] :is(button,a,input):focus-visible{outline:2px solid var(--terminal-accent);outline-offset:-2px}
 .terminal-sheet-drawings{display:grid;gap:2px}
 .terminal-sheet-drawings label{display:flex;align-items:center;gap:12px;box-sizing:border-box;min-height:48px;padding:10px 12px;border-left:3px solid transparent;border-radius:5px;color:var(--terminal-text);font-size:15px;line-height:1.4;cursor:pointer}
 .terminal-sheet-drawings label:has(input:checked){border-left-color:var(--terminal-accent);background:var(--terminal-menu-selected)}
 .terminal-sheet-drawings input[type=checkbox]{width:16px;height:16px;min-width:16px;min-height:0;flex:none;margin:0;padding:0;accent-color:var(--terminal-accent)}
}
/* desktop-scale:native-end */

/* desktop-scale:native-start */
/* Desktop menus stay anchored to their existing controls. */
@media (min-width:761px) and (hover:hover), (min-width:761px) and (pointer:fine), (min-width:1101px){
 body.terminal-active{--terminal-menu-hover:#173149;--terminal-menu-selected:#12344d;--terminal-menu-accent:#43b5f5}
 body.terminal-active[data-terminal-theme=light]{--terminal-menu-hover:#eaf2f7;--terminal-menu-selected:#dceef8;--terminal-menu-accent:#2554ba}
 body.terminal-active .product-header :is(.language-menu,.account-menu){padding:4px;border-radius:6px}
 body.terminal-active .product-header .language-menu{width:160px;min-width:0}
 body.terminal-active .product-header .account-menu{width:180px;min-width:0}
 body.terminal-active .product-header :is(.language-option,.account-login){box-sizing:border-box;min-height:36px;padding:6px 10px;border-left:3px solid transparent;border-radius:4px;font-size:13px;line-height:20px;color:var(--terminal-text)}
 body.terminal-active .product-header :is(.language-option,.account-login):hover{background:var(--terminal-menu-hover)}
 body.terminal-active .product-header :is(.language-option[aria-checked=true],.account-login[aria-current=page]){border-left-color:var(--terminal-menu-accent);background:var(--terminal-menu-selected);color:var(--terminal-text);font-weight:600}
 body.terminal-active .product-header :is(.language-option,.account-login):focus-visible{outline:2px solid var(--terminal-menu-accent);outline-offset:-2px}
}
/* desktop-scale:native-end */
