.stock-detail-page { min-width:0; }.stock-header-card,.stock-chart-card,.stock-side-card { border:1px solid var(--color-border); border-radius:var(--radius-md); background:var(--color-surface-1); box-shadow:var(--shadow-card); }
.stock-header-card { min-height:8.25rem; display:grid; grid-template-columns:minmax(20rem,1.1fr) minmax(34rem,1fr); align-items:center; gap:1.5rem; padding:1.25rem 1.5rem; margin-block-end:.875rem; }
.stock-identity { display:flex; align-items:center; gap:2rem; }.stock-identity h1 { display:inline; margin:0; font:700 var(--text-xl)/1.2 var(--font-display); }.stock-identity span { margin-inline-start:.45rem; color:var(--color-text-secondary); font-size:var(--text-sm); }.stock-identity b { display:inline-flex; margin-inline-start:.6rem; padding:.15rem .45rem; border-radius:.4rem; background:var(--color-accent-soft); color:var(--color-accent-strong); font-size:var(--text-xs); }
.stock-live-price { margin-block-start:.6rem; display:flex; align-items:baseline; gap:.85rem; }.stock-live-price strong { font:700 clamp(2rem,3.4vw,2.65rem)/1 var(--font-display); }.stock-live-price span { font-weight:650; }
.stock-quote-panel { min-width:0; display:grid; gap:.9rem; }.stock-quote-panel .product-time-context { justify-content:flex-start; }
.stock-quote-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem 1.5rem; }.stock-quote-facts span,.stock-quote-facts strong { display:block; }.stock-quote-facts span { color:var(--color-text-muted); font-size:var(--text-xs); }.stock-quote-facts strong { margin-block-start:.2rem; font:650 var(--text-md)/1.3 var(--font-display); font-variant-numeric:tabular-nums; }
.stock-detail-layout { display:grid; grid-template-columns:minmax(0,2.65fr) minmax(18rem,.9fr); gap:.875rem; align-items:start; }.stock-detail-layout aside { display:grid; gap:.875rem; }
.stock-chart-card { overflow:hidden; }.stock-chart-toolbar { min-height:3.7rem; display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.55rem 1.1rem; border-block-end:1px solid var(--color-separator); }
.stock-periods,.stock-layers { display:flex; align-items:center; gap:.35rem; flex-wrap:wrap; }.stock-periods button,.stock-layers button { min-height:var(--touch-min); padding:.4rem .8rem; border:0; border-radius:.5rem; background:transparent; color:var(--color-text-secondary); cursor:pointer; }.stock-periods button[aria-pressed="true"] { color:var(--color-accent-strong); background:var(--color-accent-soft); font-weight:650; }.stock-layers button { display:inline-flex; align-items:center; gap:.4rem; border:1px solid var(--color-border); }.stock-layers button i { width:1.65rem; height:.9rem; position:relative; border-radius:1rem; background:var(--color-border-strong); }.stock-layers button i::after { content:""; position:absolute; width:.7rem; height:.7rem; inset:.1rem auto .1rem .1rem; border-radius:50%; background:#fff; box-shadow:0 1px 3px rgba(0,0,0,.18); }.stock-layers button[aria-pressed="true"] i { background:var(--color-accent); }.stock-layers button[aria-pressed="true"] i::after { inset-inline-start:.85rem; }.stock-layer-state { color:var(--color-text-muted); font-size:var(--text-xs); }
.stock-financial-chart { width:100%; min-height:39rem; }.stock-financial-chart.is-intraday { min-height:42rem; }.stock-chart-empty { min-height:24rem; display:grid; place-content:center; justify-items:center; gap:.5rem; padding:2rem; text-align:center; color:var(--color-text-secondary); }.stock-chart-empty strong { color:var(--color-text-primary); font-size:var(--text-lg); }.stock-chart-empty p { max-width:34rem; margin:0; line-height:1.65; }.stock-availability-note { margin:0; padding:.55rem 1rem; border-block-end:1px solid var(--color-separator); background:var(--color-state-warning-soft); color:var(--color-state-warning); font-size:var(--text-xs); }.stock-indicator-summary { display:grid; grid-template-columns:repeat(3,1fr); border-block-start:1px solid var(--color-separator); }.stock-indicator-summary article { min-height:5.7rem; padding:.9rem 1rem; border-inline-start:1px solid var(--color-separator); }.stock-indicator-summary article:first-child { border:0; }.stock-indicator-summary strong { font-size:var(--text-sm); }.stock-indicator-summary p { margin:.3rem 0 0; color:var(--color-text-secondary); font-size:var(--text-xs); line-height:1.55; }
.stock-chart-tooltip { min-width:12rem; color:var(--color-text-primary); font:500 var(--text-xs)/1.35 var(--font-body); }.stock-chart-tooltip time { display:block; padding-block-end:.45rem; border-block-end:1px solid var(--color-separator); color:var(--color-text-secondary); font-variant-numeric:tabular-nums; }.stock-chart-tooltip-grid { display:grid; gap:.22rem; padding-block-start:.4rem; }.stock-chart-tooltip-row { display:grid; grid-template-columns:minmax(3.5rem,auto) minmax(4.8rem,1fr); align-items:baseline; column-gap:1rem; }.stock-chart-tooltip-row span { color:var(--color-text-secondary); }.stock-chart-tooltip-row strong { color:var(--color-text-primary); font-family:var(--font-display); font-variant-numeric:tabular-nums; text-align:end; }
.stock-lineage { margin:0; padding:.75rem 1rem; border-block-start:1px solid var(--color-separator); color:var(--color-text-muted); font-size:var(--text-xs); }
.stock-side-card { padding:1.15rem 1.2rem; }.stock-side-head { display:flex; align-items:center; justify-content:space-between; gap:.75rem; }.stock-side-head h2 { margin:0; font:650 var(--text-md)/1.3 var(--font-display); }.stock-side-card h3 { margin:.8rem 0 .35rem; font:700 var(--text-xl)/1.25 var(--font-display); }.stock-side-card > p { margin:.35rem 0; color:var(--color-text-secondary); font-size:var(--text-sm); line-height:1.6; }
.stock-preview-note { margin:.8rem 0; padding:.55rem .7rem; border-radius:.5rem; background:var(--color-state-warning-soft); color:var(--color-state-warning); font-size:var(--text-xs); }.stock-factors { display:grid; grid-template-columns:repeat(2,1fr); gap:.7rem; margin-block-start:.8rem; padding-block-start:.8rem; border-block-start:1px solid var(--color-separator); }.stock-factors strong,.stock-factors span { display:block; }.stock-factors strong { margin-block-end:.35rem; font-size:var(--text-xs); }.stock-factors span { color:var(--color-text-secondary); font-size:var(--text-xs); line-height:1.55; }
.stock-side-card dl { display:grid; grid-template-columns:repeat(2,1fr); gap:.7rem 1rem; margin:1rem 0 0; }.stock-side-card dl div { padding-block-start:.65rem; border-block-start:1px solid var(--color-separator); }.stock-side-card dt { color:var(--color-text-muted); font-size:var(--text-xs); }.stock-side-card dd { margin:.2rem 0 0; font:650 var(--text-sm)/1.35 var(--font-display); }.t-research-card dl { grid-template-columns:1fr; gap:.35rem; }.t-research-card dl div { display:flex; justify-content:space-between; gap:1rem; }.t-research-card details { margin-block-start:.8rem; color:var(--color-text-secondary); font-size:var(--text-xs); }.t-research-card summary { min-height:var(--touch-min); display:flex; align-items:center; color:var(--color-accent-strong); cursor:pointer; }

@media (max-width:79.9375rem) { .stock-header-card { grid-template-columns:1fr; }.stock-detail-layout { grid-template-columns:1fr; }.stock-detail-layout aside { grid-template-columns:repeat(3,1fr); } }
@media (max-width:47.9375rem) {
  .stock-header-card { min-height:auto; gap:1rem; padding:1rem; }.stock-identity { display:block; }.stock-identity h1 { font-size:var(--text-lg); }.stock-live-price strong { font-size:2rem; }.stock-quote-panel { gap:.75rem; }.stock-quote-facts { grid-template-columns:repeat(3,1fr); gap:.8rem; }.stock-quote-facts > div:last-child { grid-column:auto; }.stock-quote-facts strong { font-size:var(--text-sm); }
  .stock-chart-toolbar { display:block; padding:.5rem .65rem; overflow-x:auto; }.stock-periods { flex-wrap:nowrap; }.stock-periods button { flex:1 0 auto; padding-inline:.7rem; }.stock-layers { margin-block-start:.4rem; flex-wrap:nowrap; }.stock-layer-state { display:none; }
  .stock-financial-chart { min-height:34rem; }.stock-financial-chart.is-intraday { min-height:38rem; }.stock-indicator-summary { display:none; }.stock-lineage { line-height:1.5; }
  .stock-chart-tooltip { min-width:11.25rem; }
  .stock-detail-layout aside { grid-template-columns:1fr; }.stock-side-card { padding:1rem; }.stock-factors { grid-template-columns:1fr; }.stock-holding-card dl { grid-template-columns:repeat(2,1fr); }
}
