.mc-dashboard { flex: 1; min-width: 0; min-height: 0; overflow: hidden; }
.mc-dashboard__grid { display: grid; width: 100%; height: 100%; grid-template-columns: minmax(0, var(--mc-left, 1fr)) 6px minmax(0, var(--mc-right, 1fr)); grid-template-rows: minmax(0, var(--mc-top, 1fr)) 6px minmax(0, var(--mc-bottom, 1fr)); background: var(--s8-line); }
.mc-divider { position: relative; z-index: 10; padding: 0; border: 0; background: var(--s8-line); touch-action: none; user-select: none; outline-offset: -2px; }
.mc-divider:hover, .mc-divider:focus-visible, .mc-divider.is-dragging { background: var(--s8-accent); }
.mc-divider:focus-visible { outline: 2px solid var(--s8-accent-fg); }
.mc-divider--columns { grid-column: 2; grid-row: 1 / 4; cursor: col-resize; }
.mc-divider--rows { grid-column: 1 / 4; grid-row: 2; cursor: row-resize; }
.mc-divider--both { grid-column: 2; grid-row: 2; z-index: 11; cursor: move; }
.mc-divider--both::after { content: ''; position: absolute; width: 18px; height: 18px; left: 50%; top: 50%; transform: translate(-50%, -50%); border: 1px solid var(--s8-line-2); border-radius: 3px; background: var(--s8-fg-3); }
.mc-divider--both:hover::after, .mc-divider--both:focus-visible::after, .mc-divider--both.is-dragging::after { background: var(--s8-accent); }
.mc-dashboard.is-resizing, .mc-dashboard.is-resizing * { cursor: var(--mc-resize-cursor) !important; user-select: none !important; }
.mc-panel { display: flex; flex-direction: column; min-width: 0; min-height: 0; background: var(--s8-panel); overflow: hidden; }
.mc-panel__body { position: relative; flex: 1; min-width: 0; min-height: 0; }
.mc-panel__chart { position: absolute; inset: 0; }
.mc-panel__message { position: absolute; inset: 100px 0 0; z-index: 2; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; padding: 12px; text-align: center; color: var(--s8-fg-2); background: var(--s8-panel); }
.mc-panel__message[hidden] { display: none; }
.mc-panel__message p { margin: 0; }
.mc-panel__retry { border: 1px solid var(--s8-line-2); border-radius: var(--s8-r); padding: 6px 12px; background: var(--s8-panel-2); color: var(--s8-fg); font: inherit; cursor: pointer; }
.mc-panel__retry[hidden] { display: none; }
.mc-dashboard .sc-chart-container { border-radius: 0; box-shadow: none; }
.mc-dashboard .sc-indicators-dropdown { width: min(680px, calc(100% - 20px)); max-height: calc(100% - 60px); overflow: auto; }
.mc-dashboard .sc-timeframe-dropdown { max-height: calc(100% - 60px); overflow-y: auto; }
.mc-dashboard .mc-symbol-picker { display: inline-flex; align-items: center; gap: 6px; padding: 1px 4px; margin: -1px -4px; border: 0; border-radius: 3px; background: transparent; color: inherit; font: inherit; font-size: 15px; font-weight: 700; cursor: pointer; pointer-events: auto; }
.mc-dashboard .mc-symbol-picker::after { content: ''; width: 6px; height: 6px; margin-top: -3px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg); opacity: .65; }
.mc-dashboard .mc-symbol-picker:hover { background: var(--s8-hover); }
.mc-dashboard .mc-symbol-picker:focus-visible { outline: 2px solid var(--s8-accent); outline-offset: 2px; }
.mc-dashboard .s8-search-layer--chart { position: absolute; z-index: 250; padding: 8px; place-items: start center; }
.mc-dashboard .s8-search-layer--chart .sm { display: flex; flex-direction: column; width: min(460px, 100%); max-height: 100%; min-height: 0; container-type: inline-size; }
.mc-dashboard .s8-search-layer--chart .sm__field { flex-shrink: 0; height: 44px; padding: 0 12px; }
.mc-dashboard .s8-search-layer--chart .sm__list { flex: 1; min-height: 0; max-height: none; }
.mc-dashboard .s8-search-layer--chart .sm__foot { flex-shrink: 0; height: 30px; padding: 0 12px; gap: 12px; }
.mc-dashboard .s8-search-layer--chart .sm__row { height: 44px; padding: 0 12px; }
.mc-dashboard .s8-search-layer--chart .sm__close { display: flex; }
.mc-dashboard .s8-search-layer--chart .sm__field > .sm-kbd { display: none; }
@container (max-width: 260px) {
    .mc-dashboard .s8-search-layer--chart .sm__foot { display: none; }
    .mc-dashboard .s8-search-layer--chart .sm__grp { padding: 0 12px; gap: 6px; white-space: nowrap; }
}
@media (max-width: 640px) {
    .mc-dashboard .sc-company-name, .mc-dashboard .sc-day-change, .mc-dashboard .sc-day-change-pct { display: none; }
}
@media (pointer: coarse) {
    .mc-dashboard__grid { grid-template-columns: minmax(0, var(--mc-left, 1fr)) 12px minmax(0, var(--mc-right, 1fr)); grid-template-rows: minmax(0, var(--mc-top, 1fr)) 12px minmax(0, var(--mc-bottom, 1fr)); }
}
/* Visually hidden page heading: screen readers and crawlers get the page's name; the grid keeps every pixel. */
.mc-sr { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.mc-dashboard { position: relative; }
/* Per-chart "Trade" link into the live simulator, sitting in the chart's ticker line. */
.mc-dashboard .mc-trade { display: inline-flex; align-self: center; align-items: center; gap: 4px; height: 20px; padding: 0 8px; border: 1px solid var(--s8-gold-line); border-radius: var(--s8-r-pill); background: var(--s8-gold-tint); color: var(--s8-gold); font-family: var(--s8-sans); font-size: 11px; font-weight: 700; letter-spacing: .04em; text-decoration: none; text-transform: uppercase; white-space: nowrap; pointer-events: auto; }
.mc-dashboard .mc-trade svg { width: 10px; height: 10px; fill: none; stroke: currentColor; stroke-width: 2.4; }
.mc-dashboard .mc-trade:hover { background: var(--s8-gold); color: #111; }
.mc-dashboard .mc-trade:focus-visible { outline: 2px solid var(--s8-gold); outline-offset: 2px; }
.mc-dashboard .mc-trade[hidden] { display: none; }
/* Pro gate (free tier): countdown chip during the daily preview, then blurred charts behind an upgrade card. */
.mc-preview { position: absolute; top: 8px; left: 50%; z-index: 30; transform: translateX(-50%); height: 24px; display: flex; align-items: center; gap: 4px; padding: 0 10px; background: rgba(12, 12, 18, .88); border: 1px solid var(--s8-gold-line); border-radius: var(--s8-r-pill); color: var(--s8-gold); font-size: var(--s8-fs-xs); font-weight: 600; pointer-events: none; }
.mc-preview b { font-variant-numeric: tabular-nums; }
.mc-preview[hidden], .mc-lock[hidden] { display: none; }
/* Locked: no charts exist; a static pre-blurred screenshot of the grid sits behind the card. */
.mc-dashboard.is-locked { background: #000 url(/prototypes/terminal-v3/assets/multicharts-locked.jpg) center / cover no-repeat; }
.mc-dashboard.is-locked .mc-dashboard__grid { visibility: hidden; }
.mc-lock { position: absolute; inset: 0; z-index: 40; display: flex; align-items: center; justify-content: center; padding: 16px; background: rgba(5, 6, 8, .35); }
.mc-lock__card { width: 100%; max-width: 320px; padding: 22px; display: flex; flex-direction: column; gap: 10px; text-align: center; background: rgba(12, 12, 18, .94); border: 1px solid var(--s8-gold-line); border-radius: var(--s8-r); box-shadow: 0 12px 40px rgba(0, 0, 0, .55); }
.mc-lock__h { margin: 0; font-size: var(--s8-fs-lg); font-weight: 700; color: var(--s8-fg); }
.mc-lock__p { margin: 0 0 4px; font-size: var(--s8-fs-sm); line-height: 1.45; color: var(--s8-fg-2); }
.mc-lock__alt { align-self: center; padding: 2px 6px; color: var(--s8-fg-3); font-size: var(--s8-fs-xs); text-decoration: none; }
.mc-lock__alt:hover, .mc-lock__alt:focus-visible { color: var(--s8-fg); text-decoration: underline; outline: none; }
