/* Trading family display owner: K.PUBLIC.TRADING. Preserve the existing KAP scroll
   surface and read-only feed modules; this file owns only their composition. */
html body[data-template][data-page="trading"] {
  --home-text: var(--text); --home-muted: var(--muted); --home-line: var(--line);
  --home-card: var(--panel); --home-link: var(--system); --home-action: var(--action); --home-guard: var(--guard);
  grid-template-rows: auto minmax(0, 1fr) !important;
}
/* B01/B02: natural-height rows; no absolutely positioned legacy nav badge. */
html body[data-template][data-page="trading"] > .wrap > .context-bar {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: auto auto !important;
  height: auto !important;
  min-height: 0 !important;
  flex: 0 0 auto !important;
  gap: 8px;
  padding-block: 8px;
  overflow: visible !important;
}
html body[data-template][data-page="trading"] .context-bar > .route-context {
  position: static !important;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 16px;
  height: auto !important;
  min-height: 0;
  padding: 8px 12px;
  overflow: visible !important;
}
html body[data-template][data-page="trading"] .route-context :is(.breadcrumb,.route-context-meta) { min-width: 0; height: auto; flex-wrap: wrap; white-space: normal; overflow: visible; }
html body[data-template][data-page="trading"] .context-bar > .context-local-nav {
  position: static !important;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  height: auto !important;
  min-height: 0;
  padding: 0;
  overflow: visible !important;
}
html body[data-template][data-page="trading"] .context-local-nav::before { content: none !important; display: none !important; }
html body[data-template][data-page="trading"] .context-local-nav .local-nav-link { min-width: 0; min-height: 44px; height: auto; padding: 10px 14px; box-sizing: border-box; white-space: normal; overflow-wrap: anywhere; }
@media (max-width: 600px) {
  html body[data-template][data-page="trading"] .context-bar > .context-local-nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
html body[data-template][data-page="trading"] main.content-field {
  display: block !important;
  padding: 24px clamp(16px, 2.5vw, 36px) 32px !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  scrollbar-width: auto;
}
html body[data-template][data-page="trading"] main.content-field > * { min-width: 0; max-width: 100%; margin-bottom: 20px; }
html body[data-template][data-page="trading"] .trading-console-head {
  display: grid !important;
  grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr) !important;
  gap: 28px !important;
  align-items: center;
  padding: clamp(20px, 3vw, 36px) !important;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: var(--panel);
}
html body[data-template][data-page="trading"] .trading-console-identity { grid-column: auto !important; }
html body[data-template][data-page="trading"] .trading-console-head h1 { font-size: clamp(28px, 3vw, 42px); line-height: 1.35; }
html body[data-template][data-page="trading"] .trading-console-head .lede { display: block !important; font-size: 16px; line-height: 1.8; }
html body[data-template][data-page="trading"] .trading-console-status { grid-column: auto !important; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; width: 100%; }
html body[data-template][data-page="trading"] .trading-status-chip { padding: 14px; border-radius: 10px; }
html body[data-template][data-page="trading"] .trading-status-chip :is(b,small) { white-space: normal !important; overflow: visible !important; overflow-wrap: anywhere; font-size: 12px; line-height: 1.6; }
html body[data-template][data-page="trading"] .trading-safety-bar { display: grid; grid-template-columns: minmax(0, .4fr) minmax(0, 1fr); gap: 20px; padding: 18px; border-radius: 12px; font-size: 14px; line-height: 1.8; }
html body[data-template][data-page="trading"] .trading-safety-bar strong { font: 600 14px/1.6 var(--f-font-sans, system-ui); }
html body[data-template][data-page="trading"] .trading-dashboard-grid { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 20px !important; }
html body[data-template][data-page="trading"] .trading-dashboard-grid > .trading-card { grid-column: auto !important; grid-row: auto !important; padding: clamp(20px, 2.5vw, 28px); border-radius: 14px; min-height: 0; height: auto; overflow: visible; }
html body[data-template][data-page="trading"] .trading-dashboard-grid > :is(.trading-market-card,.trading-evidence-card) { grid-column: 1 / -1 !important; }
html body[data-template][data-page="trading"] .trading-card h2 { font: 600 21px/1.5 var(--f-font-sans, system-ui); }
html body[data-template][data-page="trading"] .trading-card :is(p,li) { font-size: 15px; line-height: 1.8; display: block; max-height: none; overflow: visible; -webkit-line-clamp: unset; }
html body[data-template][data-page="trading"] .trading-symbol-line { flex-wrap: wrap; gap: 16px; }
html body[data-template][data-page="trading"] .trading-symbol-line select { min-width: 0; max-width: 100%; border: 1px solid var(--line); border-radius: 8px; padding: 10px 14px; }
html body[data-template][data-page="trading"] .trading-symbol-line span { font-size: 13px; line-height: 1.6; overflow-wrap: anywhere; }
html body[data-template][data-page="trading"] .trading-quote-grid { gap: 12px; margin-block: 12px 20px; }
html body[data-template][data-page="trading"] .trading-quote-grid > div { min-width: 0; padding: 20px; border-radius: 10px; background: var(--panel); }
html body[data-template][data-page="trading"] .trading-quote-grid strong { font-size: clamp(18px, 2.5vw, 28px); line-height: 1.4; overflow-wrap: anywhere; }
html body[data-template][data-page="trading"] .trading-quote-grid small { font-size: 12px; }
html body[data-template][data-page="trading"] .trading-evidence-layout { display: flex; flex-wrap: wrap; gap: 12px 24px; }
html body[data-template][data-page="trading"] .trading-evidence-layout :is(p,.trading-disclaimer) { flex-basis: 100%; margin-block: 12px 0; }
html body[data-template][data-page="trading"] .trading-card-link, html body[data-template][data-page="trading"] .trading-journey a { min-height: 44px; display: inline-flex; align-items: center; gap: 10px; font-size: 14px; }
html body[data-template][data-page="trading"] details.trading-local-console { display: block; padding: 0; border: 1px solid var(--line); border-radius: 12px; background: var(--panel); }
html body[data-template][data-page="trading"] details.trading-local-console > summary { padding: 18px 20px; cursor: pointer; font-size: 14px; line-height: 1.6; }
html body[data-template][data-page="trading"] details.trading-local-console > p { display: block; padding-inline: 20px; font-size: 14px; line-height: 1.7; }
html body[data-template][data-page="trading"] details.trading-local-console:not([open]) > :not(summary) { display: none !important; }
html body[data-template][data-page="trading"] .trading-local-menu { display: flex; flex-wrap: wrap; gap: 10px; padding: 0 20px 20px; overflow: visible; }
html body[data-template][data-page="trading"] .trading-journey { display: flex; flex-wrap: wrap; gap: 20px; padding: 24px; border: 1px solid var(--line); border-radius: 12px; background: var(--panel); }
html body[data-template][data-page="trading"] .trading-journey-actions { display: flex; flex-wrap: wrap; gap: 12px; }
html body[data-template][data-page="trading"] main.content-field > footer.product-footer { display: block !important; position: relative !important; inset: auto !important; width: 100%; height: auto !important; max-height: none !important; min-height: 0; margin: 28px 0 0; padding: 24px; overflow: visible !important; border: 1px solid var(--line); border-radius: 14px; background: var(--panel); box-sizing: border-box; }
html body[data-template][data-page="trading"] footer.product-footer > .wrap { width: 100% !important; max-width: none; margin: 0; padding: 0; box-sizing: border-box; }
html body[data-template][data-page="trading"] :is(h1,h2,p,a,summary) { overflow-wrap: anywhere; }
html body[data-template][data-page="trading"] [hidden] { display: none !important; }
@media (max-width: 900px) {
  html body[data-template][data-page="trading"] :is(.trading-console-head,.trading-safety-bar,.trading-dashboard-grid) { grid-template-columns: minmax(0, 1fr) !important; }
}
@media (max-width: 600px) {
  html body[data-template][data-page="trading"] .trading-quote-grid { grid-template-columns: minmax(0, 1fr); }
  html body[data-template][data-page="trading"] main.content-field { padding-inline: 0 !important; }
  html body[data-template][data-page="trading"] :is(.trading-console-head,.trading-dashboard-grid > .trading-card,main.content-field > footer.product-footer) { padding: 18px !important; }
}
/* Route-owned detail bodies share the shell, not each other's read model. */
html body[data-template][data-page="trading"] .trading-detail-panel { padding: clamp(20px, 2.5vw, 28px); border: 1px solid var(--line); border-radius: 14px; background: var(--panel); height: auto; min-height: 0; max-height: none; overflow: visible; }
html body[data-template][data-page="trading"] .trading-detail-panel :is(p,li) { font-size: 15px; line-height: 1.8; overflow-wrap: anywhere; -webkit-line-clamp: unset; }
html body[data-template][data-page="trading"] .trading-module-head h2 { font-size: 24px; line-height: 1.5; }
html body[data-template][data-page="trading"] .trading-flow { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
html body[data-template][data-page="trading"] .trading-flow li { padding: 20px; border-radius: 10px; }
html body[data-template][data-page="trading"] .trading-flow li::after { content: none; }
html body[data-template][data-page="trading"] .trading-flow li > :is(span,strong) { font-size: 14px; line-height: 1.6; }
html body[data-template][data-page="trading"] .trading-flow li > span { margin-bottom: 12px; }
html body[data-template][data-page="trading"] :is(.trading-boundary-explainer,.trading-backup-evidence) { grid-template-columns: minmax(0, 1fr); padding: 20px; border-radius: 10px; gap: 12px; }
html body[data-template][data-page="trading"] :is(.trading-boundary-explainer,.trading-backup-evidence) strong { font-size: 14px; line-height: 1.6; }
html body[data-template][data-page="trading"] .trading-evidence-summary > div { border-radius: 10px; padding: 20px; }
html body[data-template][data-page="trading"] .trading-evidence-summary :is(small,strong) { font-size: 14px; line-height: 1.7; overflow-wrap: anywhere; }
html body[data-template][data-page="trading"] [data-trading-evidence] :is(details,code) { white-space: normal; overflow-wrap: anywhere; }
html body[data-template][data-page="trading"] .trading-market-workspace { display: grid; grid-template-columns: minmax(0, 2.2fr) minmax(0, 1fr); gap: 20px; }
html body[data-template][data-page="trading"] .trading-market-workspace > :is(.trading-market-head,.trading-market-controls,.market-observation-summary,.trading-market-guide,.trading-market-disclaimer) { grid-column: 1 / -1; }
html body[data-template][data-page="trading"] .trading-market-chart-shell { grid-column: 1; min-width: 0; border-radius: 10px; }
html body[data-template][data-page="trading"] .trading-market-inspector { grid-column: 2; min-width: 0; border-radius: 10px; }
html body[data-template][data-page="trading"] .trading-market-controls { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; border-radius: 10px; }
html body[data-template][data-page="trading"] .trading-market-controls > * { grid-column: auto; }
html body[data-template][data-page="trading"] .trading-market-source { white-space: normal; overflow: visible; overflow-wrap: anywhere; font-size: 12px; line-height: 1.6; }
html body[data-template][data-page="trading"] .trading-market-head h2 { font-size: 22px; line-height: 1.5; }
html body[data-template][data-page="trading"] details.trading-market-guide { display: block; padding: 18px; border-radius: 10px; }
html body[data-template][data-page="trading"] details.trading-market-guide summary { cursor: pointer; }
html body[data-template][data-page="trading"] .market-observation-summary { grid-template-columns: repeat(4, minmax(0, 1fr)); }
html body[data-template][data-page="trading"] .market-observation-summary > * { min-width: 0; }
html body[data-template][data-page="trading"] .market-candle-fields dd { min-width: 0; white-space: normal; overflow-wrap: anywhere; }
@media (max-width: 900px) {
  html body[data-template][data-page="trading"] .trading-market-workspace { grid-template-columns: minmax(0, 1fr); }
  html body[data-template][data-page="trading"] :is(.trading-market-chart-shell,.trading-market-inspector) { grid-column: 1 / -1; }
  html body[data-template][data-page="trading"] .trading-flow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  html body[data-template][data-page="trading"] .market-observation-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
  html body[data-template][data-page="trading"] :is(.trading-flow,.trading-evidence-summary,.trading-market-controls) { grid-template-columns: minmax(0, 1fr); }
}
