.ying-main { padding: 0 0 80px; }

.ying-hero-meta { grid-template-columns: repeat(3, minmax(128px, auto)); }
.ying-hero .identity-status.state-bullish { border-left-color: var(--profit); }
.ying-hero .identity-status.state-bearish { border-left-color: var(--risk); }
.ying-hero .identity-status.state-cautious { border-left-color: var(--caution); }
.ying-hero .identity-status.state-fresh > small { color: var(--profit); }
.ying-hero .identity-status.state-stale > small { color: var(--caution); }

.ying-warning,
.ying-scope-note {
  display: flex;
  align-items: baseline;
  gap: 12px;
  border-left: 2px solid var(--caution);
  background: var(--tape-inset);
  padding: 12px 16px;
}
.ying-warning { margin-top: 20px; }
.ying-scope-note { margin-top: 20px; border-left-color: var(--tape-blue); }
.ying-warning strong,
.ying-scope-note strong { flex: 0 0 auto; color: var(--signal-ink); font-size: var(--type-meta); }
.ying-warning span,
.ying-scope-note p { margin: 0; color: var(--signal-secondary); font-size: var(--type-meta); line-height: 1.5; }

.ying-stance {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(320px, 0.8fr);
  gap: 36px;
  border: 1px solid var(--wire);
  border-left: 2px solid var(--signal-muted);
  border-radius: var(--radius-panel);
  background: var(--terminal-raised);
  margin-top: 32px;
  padding: 24px;
}
.ying-stance.state-bullish { border-left-color: var(--profit); }
.ying-stance.state-bearish { border-left-color: var(--risk); }
.ying-stance.state-cautious { border-left-color: var(--caution); }
.ying-stance-lead > p,
.ying-section-heading > div > p {
  margin: 0 0 6px;
  color: var(--signal-muted);
  font: 700 var(--type-meta)/1.3 "Ubuntu Mono", "Nimbus Mono PS", monospace;
  letter-spacing: 0.05em;
}
.ying-stance-lead h2 {
  max-width: 760px;
  margin: 0;
  color: var(--signal-ink);
  font-size: var(--type-display);
  font-weight: 650;
  line-height: 1.16;
  letter-spacing: -0.03em;
  text-wrap: balance;
}
.ying-stance a,
.ying-section a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  color: var(--tape-blue);
  text-decoration: none;
  transition: color 150ms ease-out;
}
.ying-stance a:hover,
.ying-section a:hover { color: var(--profit); }
.ying-stance a:active,
.ying-section a:active { transform: scale(0.97); }
.ying-stance a:focus-visible,
.ying-section a:focus-visible { outline: 2px solid var(--wire-focus); outline-offset: 2px; }
.ying-stance-conditions { display: grid; gap: 12px; margin: 0; }
.ying-stance-conditions div { border-left: 1px solid var(--wire); padding-left: 16px; }
.ying-stance-conditions dt { color: var(--signal-muted); font: 700 var(--type-meta)/1.3 "Ubuntu Mono", monospace; }
.ying-stance-conditions dd { margin: 4px 0 0; color: var(--signal-secondary); font-size: var(--type-body); line-height: 1.45; }

.ying-section { margin-top: 64px; }
.ying-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 28px; margin-bottom: 18px; }
.ying-section-heading h2 { margin: 0; color: var(--signal-ink); font-size: var(--type-key); line-height: 1.2; }
.ying-section-heading > p { max-width: 520px; margin: 0; color: var(--signal-muted); font-size: var(--type-meta); line-height: 1.5; text-align: right; }

.ying-stance-path { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid var(--wire); border-radius: var(--radius-panel); background: var(--terminal-raised); overflow: hidden; }
.ying-stance-node { min-width: 0; border-right: 1px solid var(--wire-soft); padding: 16px; }
.ying-stance-node:last-child { border-right: 0; }
.ying-stance-node > div { display: flex; justify-content: space-between; gap: 8px; }
.ying-stance-node span { color: var(--caution); font: 700 var(--type-meta)/1.3 "Ubuntu Mono", monospace; }
.ying-stance-node.state-bullish span { color: var(--profit); }
.ying-stance-node.state-bearish span { color: var(--risk); }
.ying-stance-node time,
.ying-section footer time,
.ying-source-cell time,
.ying-evidence-group time { color: var(--signal-muted); font: 500 var(--type-meta)/1.3 "Ubuntu Mono", monospace; font-variant-numeric: tabular-nums; }
.ying-stance-node p { min-height: 72px; margin: 12px 0 0; color: var(--signal-secondary); font-size: var(--type-body); line-height: 1.5; text-wrap: pretty; }

.ying-operation-book { overflow: hidden; border: 1px solid var(--wire); border-radius: var(--radius-panel); background: var(--terminal-raised); }
.ying-operation-book table { width: 100%; border-collapse: collapse; }
.ying-operation-book th { background: var(--tape-inset); color: var(--signal-muted); font: 700 var(--type-meta)/1.3 "Ubuntu Mono", monospace; text-align: left; padding: 12px; }
.ying-operation-book td { border-top: 1px solid var(--wire-soft); color: var(--signal-secondary); font-size: var(--type-body); line-height: 1.4; padding: 12px; vertical-align: middle; }
.ying-operation-book td:first-child { box-shadow: inset 2px 0 0 transparent; }
.ying-operation-book tr.state-unconfirmed td:first-child { box-shadow: inset 2px 0 0 var(--profit); }
.ying-operation-book tr.state-uncertain td:first-child { box-shadow: inset 2px 0 0 var(--caution); }
.ying-operation-book tr.state-closed td:first-child { box-shadow: inset 2px 0 0 var(--signal-muted); }
.ying-operation-book td > a { color: var(--signal-ink); font-family: "Ubuntu Mono", monospace; font-weight: 700; }
.ying-operation-book td small { display: block; margin-top: 4px; color: var(--signal-muted); font-size: var(--type-meta); }
.ying-direction,
.ying-status,
.ying-ticker-row header > span,
.ying-sector-row header > span { display: inline-flex; min-height: 22px; align-items: center; border-radius: var(--radius-control); padding: 2px 6px; font: 700 var(--type-meta)/1.3 "Ubuntu Mono", monospace; }
.ying-direction.side-long,
.ying-ticker-row.state-bullish header > span,
.ying-sector-row.state-bullish header > span { color: var(--profit); }
.ying-direction.side-short,
.ying-ticker-row.state-bearish header > span,
.ying-sector-row.state-bearish header > span { color: var(--risk); }
.ying-ticker-row.state-waiting header > span,
.ying-sector-row.state-waiting header > span,
.ying-status.state-uncertain { color: var(--caution); }
.ying-status.state-unconfirmed { color: var(--signal-secondary); }
.ying-status.state-closed { color: var(--signal-muted); }
.ying-number { font-family: "Ubuntu Mono", monospace; font-variant-numeric: tabular-nums; }
.ying-source-cell { min-width: 132px; }
.ying-source-cell a { min-height: 32px; display: flex; width: max-content; font-size: var(--type-meta); }

.ying-ticker-board { display: grid; gap: 12px; }
.ying-ticker-row { display: grid; grid-template-columns: minmax(168px, 0.55fr) minmax(240px, 1.15fr) minmax(320px, 1.3fr) minmax(132px, auto); align-items: start; gap: 20px; border: 1px solid var(--wire); border-left: 2px solid var(--signal-muted); border-radius: var(--radius-panel); background: var(--terminal-raised); padding: 16px; }
.ying-ticker-row.state-bullish { border-left-color: var(--profit); }
.ying-ticker-row.state-bearish { border-left-color: var(--risk); }
.ying-ticker-row.state-waiting { border-left-color: var(--caution); }
.ying-ticker-row header { display: grid; grid-template-columns: auto auto; align-items: center; justify-content: start; gap: 4px 8px; }
.ying-ticker-row header > a { min-height: 28px; color: var(--signal-ink); font: 700 var(--type-key)/1 "Ubuntu Mono", monospace; }
.ying-ticker-row header > small { grid-column: 1 / -1; color: var(--signal-muted); font-size: var(--type-meta); }
.ying-ticker-row > p { margin: 0; color: var(--signal-secondary); font-size: var(--type-body); line-height: 1.5; }
.ying-ticker-row dl { display: grid; grid-template-columns: max-content minmax(0, 1fr); gap: 6px 12px; margin: 0; }
.ying-ticker-row dl div { display: contents; }
.ying-ticker-row dt { color: var(--signal-muted); font-size: var(--type-meta); font-weight: 700; }
.ying-ticker-row dd { margin: 0; color: var(--signal-tertiary); font-size: var(--type-meta); line-height: 1.45; }
.ying-ticker-row footer,
.ying-sector-row footer,
.ying-risk-list footer { display: grid; justify-items: end; gap: 4px; }
.ying-ticker-row footer a,
.ying-sector-row footer a,
.ying-risk-list footer a { min-height: 28px; font-size: var(--type-meta); }

.ying-sector-board { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.ying-sector-row { border: 1px solid var(--wire); border-top: 2px solid var(--signal-muted); border-radius: var(--radius-panel); background: var(--terminal-raised); padding: 16px; }
.ying-sector-row.state-bullish { border-top-color: var(--profit); }
.ying-sector-row.state-bearish { border-top-color: var(--risk); }
.ying-sector-row.state-waiting { border-top-color: var(--caution); }
.ying-sector-row header { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.ying-sector-row h3 { margin: 0; color: var(--signal-ink); font-size: var(--type-body); }
.ying-sector-row > p { min-height: 72px; margin: 16px 0 0; color: var(--signal-secondary); font-size: var(--type-body); line-height: 1.5; }
.ying-sector-row dl { display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: 6px 12px; border-top: 1px solid var(--wire-soft); margin: 16px 0 0; padding-top: 12px; }
.ying-sector-row dt { color: var(--signal-muted); font-size: var(--type-meta); font-weight: 700; }
.ying-sector-row dd { margin: 0; color: var(--signal-tertiary); font-size: var(--type-meta); line-height: 1.45; }
.ying-sector-row footer { grid-template-columns: 1fr auto; align-items: center; justify-items: start; margin-top: 12px; }
.ying-sector-row footer a { justify-self: end; }
.ying-symbols { display: flex; flex-wrap: wrap; gap: 4px 8px; margin-top: 12px; }
.ying-symbols a { min-height: 28px; color: var(--tape-blue); font: 700 var(--type-meta)/1 "Ubuntu Mono", monospace; }

.ying-risk-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.ying-risk-list article { border-left: 2px solid var(--caution); background: var(--terminal-raised); padding: 16px; }
.ying-risk-list article > span { color: var(--caution); font: 700 var(--type-meta)/1.3 "Ubuntu Mono", monospace; }
.ying-risk-list article > p { min-height: 48px; margin: 8px 0 0; color: var(--signal-secondary); font-size: var(--type-body); line-height: 1.5; }
.ying-risk-list footer { grid-template-columns: 1fr auto; align-items: center; justify-items: start; margin-top: 8px; }
.ying-risk-list footer a { justify-self: end; }

.ying-evidence-list { display: grid; gap: 8px; }
.ying-evidence-group .identity-disclosure-body { display: grid; grid-template-columns: 132px minmax(0, 1fr) 152px; align-items: start; gap: 16px; }
.ying-evidence-group .identity-disclosure-body > a { justify-self: end; }
.ying-evidence-group .identity-disclosure-body p { white-space: pre-line; }

.ying-empty { border: 1px solid var(--wire); border-radius: var(--radius-panel); background: var(--terminal-raised); padding: 20px; }
.ying-empty strong,
.ying-empty h2 { margin: 0; color: var(--signal-ink); font-size: var(--type-body); }
.ying-empty p { margin: 8px 0 0; color: var(--signal-muted); font-size: var(--type-body); line-height: 1.5; }
.ying-empty-page { margin-top: 32px; padding: 28px; }
.ying-empty-page h2 { font-size: var(--type-key); }

@media (max-width: 980px) {
  .ying-hero-meta { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ying-stance { grid-template-columns: 1fr; gap: 24px; }
  .ying-stance-path { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ying-stance-node:nth-child(2) { border-right: 0; }
  .ying-stance-node:nth-child(-n + 2) { border-bottom: 1px solid var(--wire-soft); }
  .ying-ticker-row { grid-template-columns: minmax(148px, 0.5fr) minmax(0, 1fr); }
  .ying-ticker-row dl { grid-column: 2; }
  .ying-ticker-row footer { grid-column: 1; grid-row: 2; justify-items: start; }
  .ying-sector-board { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 840px) {
  .ying-operation-book { overflow: visible; border: 0; background: transparent; }
  .ying-operation-book thead { display: none; }
  .ying-operation-book tbody { display: grid; gap: 12px; }
  .ying-operation-book tr { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border: 1px solid var(--wire); border-left: 2px solid var(--signal-muted); border-radius: var(--radius-panel); background: var(--terminal-raised); padding: 12px; }
  .ying-operation-book tr.state-unconfirmed { border-left-color: var(--profit); }
  .ying-operation-book tr.state-uncertain { border-left-color: var(--caution); }
  .ying-operation-book td { display: grid; align-content: start; gap: 4px; border: 0; padding: 8px; }
  .ying-operation-book td:first-child { box-shadow: none !important; }
  .ying-operation-book td::before { content: attr(data-label); color: var(--signal-muted); font: 700 var(--type-meta)/1.3 "Ubuntu Mono", monospace; }
  .ying-source-cell { min-width: 0; }
  .ying-evidence-group .identity-disclosure-body { grid-template-columns: 112px minmax(0, 1fr); }
  .ying-evidence-group .identity-disclosure-body > a { grid-column: 2; justify-self: start; }
}

@media (max-width: 600px) {
  .ying-main { padding-bottom: 56px; }
  .ying-hero-meta { grid-template-columns: 1fr; }
  .ying-warning,
  .ying-scope-note { align-items: flex-start; flex-direction: column; gap: 4px; }
  .ying-stance { margin-top: 24px; padding: 16px; }
  .ying-stance-lead h2 { font-size: var(--type-key); line-height: 1.25; }
  .ying-section { margin-top: 48px; }
  .ying-section-heading { align-items: start; flex-direction: column; gap: 8px; }
  .ying-section-heading > p { text-align: left; }
  .ying-stance-path,
  .ying-sector-board,
  .ying-risk-list { grid-template-columns: 1fr; }
  .ying-stance-node { border-right: 0; border-bottom: 1px solid var(--wire-soft); }
  .ying-stance-node:nth-child(2) { border-bottom: 1px solid var(--wire-soft); }
  .ying-stance-node:last-child { border-bottom: 0; }
  .ying-stance-node p,
  .ying-sector-row > p,
  .ying-risk-list article > p { min-height: 0; }
  .ying-operation-book tr { grid-template-columns: 1fr; }
  .ying-ticker-row { grid-template-columns: 1fr; gap: 12px; }
  .ying-ticker-row dl,
  .ying-ticker-row footer { grid-column: 1; grid-row: auto; }
  .ying-ticker-row footer { grid-template-columns: 1fr auto; align-items: center; justify-items: start; }
  .ying-ticker-row footer a { justify-self: end; }
  .ying-evidence-group .identity-disclosure-body { grid-template-columns: 1fr; }
  .ying-evidence-group .identity-disclosure-body > a { grid-column: 1; }
}
