﻿/* Secondary pages: product layout, clear surfaces and consistent reading rhythm.
   All selectors are page-scoped; homepage/shared list renderers remain independent. */
.pb-page, .ls-page, .pp, .fw, .rl { --r-3: 16px; }
.pb-page .page-h, .ls-page .page-h, .fw .page-h { margin-bottom: 32px; }
.pb-page .page-h h1, .ls-page .page-h h1, .fw .page-h h1, .rl .rl-head h1 {
  font-size: 32px; line-height: 42px; font-weight: 600; letter-spacing: -.025em;
}
.pb-page .page-h p, .ls-page .page-h p, .fw .page-h p {
  margin-top: 10px; max-width: 680px; font-size: 14px; line-height: 24px; color: var(--fg-2);
}
.pb-page .panel, .ls-page .panel, .pp .panel, .fw .panel { box-shadow: none; }
.fw .panel-h, .pp .panel-h { min-height: 56px; }
.fw .panel-t, .pp .panel-t { font-size: 14px; font-weight: 600; }

/* Directory: filters form one clear toolbar, followed by an evenly spaced list. */
.pb-page .pb { border-color: var(--line-2); background: var(--bg-1); }
.pb-page .pb-bar1 { padding-inline: 24px; }
.pb-page .pb-bar1 .tabs { height: 56px; gap: 28px; }
.pb-page .pb-bar1 .tabs [aria-selected="true"] { color: var(--accent); }
.pb-page .pb-bar2 { min-height: 72px; gap: 12px; padding: 16px 24px; }
.pb-page .pb-search { --h: 40px; background: var(--bg-0); }
.pb-page .pb-sort { --h: 36px; }
.pb-page .pl-tbl .tbl td { height: 72px; }
.pb-page .pl-tbl .tbl th { height: 44px; background: var(--bg-0); color: var(--fg-2); }
.pb-page .pl-tbl .tbl td:first-child, .pb-page .pl-tbl .tbl th:first-child { padding-left: 24px; }
.pb-page .pl-tbl .tbl td:last-child, .pb-page .pl-tbl .tbl th:last-child { padding-right: 24px; }
.pb-page .pl-tbl .tbl tbody tr:hover { background: var(--bg-2); }
.pb-page .pb-cards { padding: 20px; gap: 16px; }
.pb-page .pl-card { padding: 20px; border-color: var(--line-2); box-shadow: none; }
.pb-page .pl-card .pcard-x { line-height: 24px; }
.pb-page .pl-card:hover { border-color: var(--accent-a32); }
.pb-page .pb-foot { min-height: 56px; padding: 12px 24px; }
.pb-page .pb-more { margin-top: 24px; }

/* Launch: a focused current step and a quiet, persistent cost summary. */
.ls-page .ls-grid { gap: 24px; }
.ls-page .ls-main { gap: 12px; }
.ls-page .ls-railbox { margin-bottom: 8px; }
.ls-page .ls-rail { gap: 8px; }
.ls-page .ls-rail button { padding-top: 12px; min-height: 36px; }
.ls-page .ls-step { background: var(--bg-1); border-color: var(--line-2); box-shadow: none; }
.ls-page .ls-step[data-state="cur"] { border-color: var(--accent-a32); background: var(--bg-1); }
.ls-page .ls-step[data-state="cur"] .ls-h { border-bottom-color: var(--line-1); }
.ls-page .ls-step[data-state="todo"] { border-style: solid; }
.ls-page .ls-step[data-state="todo"] .ls-h { opacity: .65; }
.ls-page .ls-h { min-height: 64px; padding-inline: 24px; gap: 12px; }
.ls-page .ls-n { width: 30px; height: 30px; border-radius: 9px; background: var(--bg-0); }
.ls-page .ls-step[data-state="cur"] .ls-n { background: var(--accent-a16); border-color: var(--accent-a32); color: var(--accent); }
.ls-page .ls-t { font-size: 15px; line-height: 22px; }
.ls-page .ls-b { padding: 28px 24px; }
.ls-page .ls-f { padding: 16px 24px; background: var(--bg-0); border-radius: 0 0 16px 16px; }
.ls-page .ls-next { min-width: 128px; --h: 42px; }
.ls-page .ls-b .field { --h: 48px; background: var(--bg-0); }
.ls-page .ls-b .ls-subfield { --h: auto; }
.ls-page .ls-fld .field-label { font-size: 13px; margin-bottom: 8px; }
.ls-page .ls-hint, .ls-page .ls-snotes li { line-height: 21px; }
.ls-page .ls-sum { border-color: var(--line-2); }
.ls-page .ls-sum .panel-h { min-height: 64px; padding-inline: 24px; }
.ls-page .ls-sum .panel-t { font-size: 14px; font-weight: 600; }
.ls-page .ls-sum .panel-b { padding: 24px; gap: 20px; }
.ls-page .ls-skv .kv { min-height: 42px; gap: 12px; }
.ls-page .ls-skv .ls-tot { padding-block: 10px; }
.ls-page .ls-stw { padding-block: 12px; border-left-color: var(--line-3); line-height: 22px; }
.ls-page .ls-sver { padding: 14px; }
.ls-page .ls-snotes { gap: 10px; padding-top: 20px; }

/* Trading detail: recognizable action area without expanding dense market rows. */
.pp .pp-top { background: var(--bg-0); }
.pp .pp-ibar { padding-block: 24px 18px; }
.pp .pp-back { border-color: var(--line-2); background: var(--bg-1); }
.pp .pp-h1 { font-size: 18px; line-height: 26px; }
.pp .pp-sub { margin-top: 4px; }
.pp .pp-body { padding-top: 24px; }
.pp .pp-chart, .pp .pp-race, .pp .pp-trade { border-color: var(--line-2); }
.pp .pp-trade .pp-trade-h { background: var(--bg-2); border-radius: 15px 15px 0 0; }
.pp .pp-trade-b { padding: 20px; gap: 20px; }
.pp .pp-trade .pp-form { gap: 18px; }
.pp .pp-trade .field-amt { --h: 56px; }
.pp .pp-trade .pp-quote { padding: 12px 14px; background: var(--bg-0); }
.pp .pp-quote .kv { min-height: 28px; }
.pp .pp-tw { padding: 20px; gap: 16px; }
.pp .pp-twtext { line-height: 1.8; }
.pp .pp-rules-l .kv { min-height: 42px; }
.pp .pp-racenote, .pp .pp-muted, .pp .pp-lead { line-height: 22px; }

/* Flywheel: separate headline figures, fund flow and operational panels. */
.fw .fw-sec { margin-top: 24px; }
.fw .fw-kpis { border-radius: 16px; }
.fw .fw-kpis .kpi { padding: 22px 20px; }
.fw .fw-kpis .kpi .l { color: var(--fg-2); }
.fw .fw-kpis .kpi .l .i { color: var(--accent); }
.fw .fw-flow { border-color: var(--line-2); }
.fw .fw-lanes { padding: 28px 24px; gap: 28px; }
.fw .fw-node { min-height: 112px; padding: 18px 20px; border-radius: 12px; }
.fw .fw-node .l { color: var(--fg-2); line-height: 20px; }
.fw .fw-node .s { margin-top: 8px; line-height: 18px; }
.fw .fw-node.is-fund { background: var(--accent-a08); }
.fw .fw-node.is-fund .l { color: var(--accent); }
.fw .fw-owner { padding-top: 20px; border-top-style: solid; }
.fw .fw-kvs .kv { min-height: 40px; gap: 16px; }
.fw .fw-kvbox .kv { padding-block: 8px; }
.fw .fw-prose { line-height: 1.8; }
.fw .fw-rule { line-height: 22px; }
.fw .fw-who li { min-height: 42px; }

/* Rules: readable article sections, a stable index and clear parameter tables. */
.rl .rl-lead { margin-top: 16px; line-height: 1.8; }
.rl .rl-toc { padding: 16px 12px; border: 1px solid var(--line-2); border-radius: 16px; background: var(--bg-1); }
.rl .rl-toch { margin-bottom: 10px; color: var(--fg-2); }
.rl .rl-toc ol { border-left: 0; gap: 2px; }
.rl .rl-toc a { min-height: 38px; border-radius: 8px; }
.rl .rl-toc a::before { display: none; }
.rl .rl-toc a[aria-current="true"] { color: var(--accent); background: var(--accent-a08); }
.rl .rl-toc a .n { color: var(--fg-3); }
.rl .rl-table { margin-top: 20px; }
.rl .rl-row { min-height: 56px; padding-inline: 20px; }
.rl .rl-sec { padding-top: 44px; }
.rl .rl-sec h2 { gap: 14px; padding-bottom: 14px; border-bottom: 1px solid var(--line-1); }
.rl .rl-sec h2 .n { color: var(--accent); font-size: 12px; }
.rl .rl-list { gap: 14px; }
.rl .rl-list li, .rl .rl-safe li, .rl .rl-q p, .rl .rl-risk li { line-height: 1.85; }
.rl .rl-ptable th, .rl .rl-ptable td { height: 48px; padding: 10px 20px; }
.rl .rl-q summary { min-height: 60px; }
.rl .rl-riskp { background: var(--bg-1); border-color: var(--line-2); }

@media (max-width: 1024px) {
  .ls-page .ls-grid { gap: 20px; }
  .rl .rl-toc { padding: 0; border: 0; border-radius: 0; background: transparent; }
  .rl .rl-toc ol { gap: 8px; }
  .rl .rl-toc a { min-height: 36px; }
}
@media (max-width: 760px) {
  .pb-page .page-h, .ls-page .page-h, .fw .page-h { margin-bottom: 24px; }
  .pb-page .page-h h1, .ls-page .page-h h1, .fw .page-h h1, .rl .rl-head h1 { font-size: 28px; line-height: 36px; }
  .pb-page .page-h p, .ls-page .page-h p, .fw .page-h p { font-size: 13px; line-height: 22px; }
  .pb-page .pb-bar1 { padding-inline: 16px; }
  .pb-page .pb-bar1 .tabs { height: 50px; gap: 20px; }
  .pb-page .pb-bar2 { padding: 14px 16px; gap: 10px; }
  .pb-page .pb-search { flex-basis: 100%; }
  .pb-page .pl-mrow { padding-block: 16px; }
  .pb-page .pb-cards { padding: 14px; }
  .pb-page .pl-card { padding: 16px; }
  .pb-page .pb-foot { padding-inline: 16px; }
  .ls-page .ls-rail button { padding-top: 0; min-height: 0; }
  .ls-page .ls-h { min-height: 58px; padding-inline: 16px; gap: 10px; }
  .ls-page .ls-n { width: 26px; height: 26px; border-radius: 8px; }
  .ls-page .ls-t { font-size: 14px; }
  .ls-page .ls-b { padding: 22px 16px; }
  .ls-page .ls-sum .panel-h { min-height: 56px; padding-inline: 16px; }
  .ls-page .ls-sum .panel-b { padding: 16px; gap: 16px; }
  .pp .pp-ibar { padding-block: 18px; }
  .pp .pp-h1 { font-size: 16px; line-height: 24px; }
  .pp .pp-body { padding-top: 16px; }
  .pp .pp-grid { gap: 16px; }
  .pp .pp-trade-b, .pp .pp-tw { padding: 16px; }
  .fw .fw-sec { margin-top: 16px; }
  .fw .fw-kpis .kpi { padding: 18px 14px; }
  .fw .fw-lanes { padding: 20px 16px; gap: 24px; }
  .fw .fw-node { padding: 16px; min-height: 104px; }
  .rl .rl-row { min-height: 52px; padding-inline: 16px; }
  .rl .rl-sec { padding-top: 36px; }
  .rl .rl-sec h2 { padding-bottom: 12px; }
  .rl .rl-list { gap: 12px; }
  .rl .rl-ptable th, .rl .rl-ptable td { padding-inline: 16px; }
}
