/* Mobile market/research pages. Loaded after the legacy mobile layers.
   Keep quote colors and desktop geometry intact; wide facts remain scrollable. */
@media (max-width: 880px) {
  /* Auction: complete metrics in a locally scrolling table, compact charts. */
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.auction-page .auction-toolbar { gap:8px !important; padding:8px 0 !important; flex-wrap:wrap; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.auction-page .auction-mode-tabs { display:flex; flex-wrap:wrap; gap:4px 8px !important; width:100%; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.auction-page .auction-mode-tabs button { min-height:36px !important; padding:6px 8px !important; font-size:13px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.auction-page .auction-chart-grid { padding:8px 0 !important; gap:8px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.auction-page .auction-chart-panel h2 { font-size:14px !important; padding:8px 10px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.auction-page :is(.auction-table-shell,.auction-detail-body) { max-width:100%; overflow:auto !important; overscroll-behavior-x:contain; -webkit-overflow-scrolling:touch; scrollbar-width:thin; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.auction-page .auction-table :is(th,td) { padding:7px 8px !important; font-size:13px !important; line-height:1.4 !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.auction-page .auction-table :is(th,td):first-child { min-width:120px; max-width:160px; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.auction-page :is(.auction-stock b,.auction-board-name b) { font-size:14px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.auction-page :is(.auction-stock small,.auction-unit,.auction-mapping-state,.auction-tail-summary,.auction-status,.auction-category-tabs em,.auction-board-tabs em,.auction-detail-row small) { font-size:11px !important; line-height:1.4; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.auction-page :is(.auction-board-filters,.auction-tail-filters) { width:100%; gap:6px; padding:8px 0 !important; overflow-x:auto; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.auction-page .auction-tail-bar { flex-wrap:wrap; gap:6px; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.auction-page .auction-detail-drawer { width:min(100%,640px) !important; max-height:calc(100dvh - 56px); overflow:auto; padding:12px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.auction-page .auction-detail-close { width:40px !important; height:40px !important; min-height:40px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.auction-page .wa-dashboard { padding:8px 0 !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.auction-page :is(.wa-kpis span,.wa-kpis small,.wa-filter,.wa-count,.wa-stock-head,.wa-stocks small) { font-size:12px !important; line-height:1.4; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.auction-page :is(.wa-stocks button,.wa-stocks b) { font-size:13px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.auction-page .wa-kpis strong { font-size:20px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.auction-page #auctionPanel :is(.wa-date,.wa-reset) { height:36px !important; min-height:36px !important; font-size:12px !important; }

  /* Ladder and trend cards: two readable columns, rather than miniature text. */
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.ladder-page .lad-controls { display:flex !important; flex-wrap:wrap !important; overflow:visible !important; gap:6px 8px !important; padding:6px 0 !important; width:100%; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.ladder-page :is(.lad-sort-label,.failed-toggle) { font-size:12px !important; min-height:36px !important; flex:0 1 auto; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.ladder-page .lad-sort-label { gap:5px; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.ladder-page .lad-controls select { width:auto !important; min-width:0 !important; height:36px !important; min-height:36px !important; font-size:13px !important; padding:5px 26px 5px 8px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.ladder-page .ladder-row { grid-template-columns:44px minmax(0,1fr) !important; gap:6px !important; padding:8px 0 !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.ladder-page .ladder-badge { width:44px !important; min-width:44px !important; min-height:54px !important; padding:6px 2px !important; flex-direction:column !important; justify-content:center !important; align-self:start; gap:4px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.ladder-page .ladder-badge .n { font-size:20px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.ladder-page .ladder-cards { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:6px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.ladder-page .zt-card { min-width:0; min-height:88px !important; aspect-ratio:auto; padding:7px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.ladder-page .zt-card .nm { font-size:14px !important; line-height:1.4 !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.ladder-page :is(.zt-card .ind,.zt-card .tg,.card-metrics,.sort-value,.ladder-badge .c,.ladder-badge .failed-count,.ladder-badge .n small) { font-size:11px !important; line-height:1.45 !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.ladder-page .zt-card .tags { flex-wrap:wrap; gap:3px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.ladder-page .zt-card .ind { flex-wrap:wrap !important; white-space:normal; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.ladder-page :is(.ov-drawer,.share-box) { max-width:calc(100vw - 16px); max-height:calc(100dvh - 72px); overflow:auto; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.ladder-page :is(.ov-body,.rs-para,.ov-reason,.share-body) { font-size:13px !important; line-height:1.65 !important; overflow-wrap:anywhere; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.trend-cycle-page .trend-controls { grid-template-columns:repeat(6,minmax(0,1fr)) !important; gap:4px !important; padding:6px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.trend-cycle-page .trend-controls-label { grid-column:1 / -1; text-align:left; font-size:12px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.trend-cycle-page .period-chip { font-size:12px !important; min-height:36px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.trend-cycle-page .trend-summary { flex-wrap:wrap; gap:5px; padding:8px !important; margin-bottom:8px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.trend-cycle-page :is(.trend-summary,.trend-summary strong,.trend-summary .legend span,.trend-panel-title span,.trend-panel-total,.bucket-label,.bucket-label b,.bucket-more,.bucket-empty) { font-size:12px !important; line-height:1.5 !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.trend-cycle-page .trend-summary strong { white-space:normal; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.trend-cycle-page .trend-panel-head { padding:8px !important; flex-wrap:wrap; gap:6px; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.trend-cycle-page .trend-panel-title strong { font-size:14px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.trend-cycle-page .trend-bucket { grid-template-columns:54px minmax(0,1fr) !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.trend-cycle-page .bucket-label span { max-width:100%; white-space:normal; overflow-wrap:anywhere; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.trend-cycle-page .trend-panel-title span { display:block !important; color:#737b87 !important; white-space:normal; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.trend-cycle-page .bucket-content { padding:6px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.trend-cycle-page .stock-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:6px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.trend-cycle-page .trend-stock { grid-template-columns:minmax(0,1fr) !important; min-height:86px !important; gap:2px !important; padding:6px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.trend-cycle-page .trend-stock .stock-name { grid-column:1 !important; min-height:32px !important; padding:0 !important; font-size:14px !important; line-height:20px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.trend-cycle-page .trend-stock .today-pct { grid-column:1 !important; font-size:13px !important; text-align:left; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.trend-cycle-page .trend-stock .stock-meta { grid-column:1 !important; grid-row:auto !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.trend-cycle-page :is(.interval-gain,.board-tag,.industry-name) { font-size:11px !important; line-height:16px; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.trend-cycle-page .interval-gain { grid-column:1 !important; font-size:12px !important; text-align:left; }

  /* Theme library, flows and rankings keep their own scrolling surfaces. */
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.theme-library-page :is(.tl-module-switch,.tl-tabs,.bf-metric-tabs,.br-periods,.bs-category-switch) { max-width:100%; overflow-x:auto; white-space:nowrap; gap:4px !important; scrollbar-width:thin; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.theme-library-page :is(.tl-module-switch,.tl-tabs,.bf-metric-tabs,.br-periods,.bs-category-switch) button { flex:0 0 auto; min-height:36px !important; font-size:13px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.theme-library-page .tl-shell { min-width:0; height:auto !important; min-height:0 !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.theme-library-page .tl-main { min-height:300px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.theme-library-page :is(.tl-list,.tl-content,.bs-table-wrap,.br-table-wrap,.wtm-scroll) { max-width:100%; overflow:auto !important; overscroll-behavior-x:contain; scrollbar-width:thin; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.theme-library-page :is(.tl-item-name,.tl-stock b,.tl-stock-name,.bf-rank-name b,.bs-stock-open,.br-stock-name) { font-size:14px !important; line-height:1.45; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.theme-library-page :is(.tl-pct,.bf-rank-row strong) { font-size:14px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.theme-library-page :is(.tl-item-sub,.tl-stock small,.tl-update,.bf-status,.bf-chart-meta,.bf-rank-name small,.bf-date-label,.bs-empty,.br-guide,.br-guide-body,.br-guide-legend) { font-size:12px !important; line-height:1.5; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.theme-library-page :is(.tl-intro,.tl-flat-row,.br-guide-quadrants) { font-size:13px !important; line-height:1.6; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.theme-library-page :is(.bf-toolbar,.br-toolbar) { flex-wrap:wrap; gap:6px; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.theme-library-page :is(.bf-chart-meta>span,.bf-chart-meta small,.bf-chart-meta label,.bf-selected-empty,.bf-ranking>header span,.br-guide-tag,.br-guide-action-open,.br-guide-action-close,.br-quadrant>header span) { font-size:12px !important; line-height:1.5; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.theme-library-page .bf-chart { height:340px !important; min-height:340px !important; flex:none; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.theme-library-page .br-chart { height:340px !important; min-height:340px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.theme-library-page .br-periods>div { min-width:0; max-width:100%; overflow-x:auto !important; scrollbar-width:thin; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.theme-library-page .br-periods button { flex:0 0 auto !important; min-width:48px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.theme-library-page .br-quadrant>header :is(b,em) { flex:none; white-space:nowrap; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.theme-library-page .br-quadrant>header span { min-width:0; white-space:normal; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.theme-library-page .br-quadrant thead button span { font-size:11px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.theme-library-page .br-quadrant tbody th small { font-size:11px !important; line-height:1.45; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.theme-library-page :is(.nh-controls,.nh-toolbar,.lt-toolbar) { flex-wrap:wrap; gap:8px; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.theme-library-page :is(.nh-title span,.nh-chart-card header span,.nh-chart-card header em,.nh-board-head small,.nh-stock small,.lt-toolbar span,.lt-toolbar p,.lt-title-line time,.lt-title-line span,.lt-theme-copy>small,.lt-stock small,.lt-catalysts,.lt-catalysts li,.lt-catalysts>strong,.lt-table-note) { font-size:12px !important; line-height:1.5; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.theme-library-page :is(.lt-theme-copy p,.lt-table td,.br-guide dd) { font-size:13px !important; line-height:1.6; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.theme-library-page :is(.nh-stock b,.lt-stock b,.bs-name b) { font-size:14px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.theme-library-page :is(.nh-table-wrap,.lt-table-wrap,.bs-stock-table-scroll) { overflow:auto !important; max-width:100%; scrollbar-width:thin; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.theme-library-page .bs-detail-drawer { width:min(100%,640px) !important; max-height:calc(100dvh - 56px); overflow:auto; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.theme-library-page .bs-detail-body { padding:10px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.theme-library-page :is(.bs-detail-meta,.bs-stock-flow>p,.bs-stock-name small) { font-size:12px !important; line-height:1.5; }

  /* News/research: readable paragraphs and bounded report overlays. */
  html:has(#yp-mobile-tabs) body.yp-mobile-shell[data-desktop-page="hotspot"] :is(.hs-tabs,.feed-filters) { max-width:100% !important; width:auto !important; margin-left:0 !important; margin-right:0 !important; overflow-x:auto; flex-wrap:nowrap; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell[data-desktop-page="hotspot"] :is(.hs-tab,.feed-filter,.cmd-chart-range) { min-height:36px !important; font-size:13px !important; flex-shrink:0; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell[data-desktop-page="hotspot"] :is(.feed-src-title,.feed-ai-text,.feed-src-body,.research-body,.research-modal-body,.gd-body) { font-size:14px !important; line-height:1.65 !important; overflow-wrap:anywhere; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell[data-desktop-page="hotspot"] :is(.feed-time,.feed-kind,.feed-meta,.feed-link,.feed-tag-sec,.feed-tag-stk,.cmd-category,.cmd-chart-hint,.cmd-meta,.research-meta) { font-size:12px !important; line-height:1.5; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell[data-desktop-page="hotspot"] :is(.cmd-toolbar,.cmd-tools,.cmd-pagination) { flex-wrap:wrap; gap:6px; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell[data-desktop-page="hotspot"] .research-select-control { height:36px !important; min-height:36px !important; font-size:13px !important; font-weight:400 !important; background:#fff !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell[data-desktop-page="hotspot"] .research-filters { gap:6px !important; padding:8px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell[data-desktop-page="hotspot"] :is(.research-filter-head,.research-pagination,.research-author,.research-code,.research-inst,.research-type,.research-rating,.research-date-cell,.research-date-cell small,.research-count small,.research-forecast-card,.research-forecast-card small) { font-size:12px !important; line-height:1.5; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell[data-desktop-page="hotspot"] :is(.research-stock-name,.research-title-btn,.research-count,.research-forecast-card b) { font-size:14px !important; line-height:1.5; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell[data-desktop-page="hotspot"] :is(.research-target,.research-detail-card h4,.research-detail-content) { font-size:13px !important; line-height:1.6; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell[data-desktop-page="hotspot"] :is(.research-detail-btn,.research-ai-btn,.research-pdf-btn,.research-page-btn) { min-height:36px !important; min-width:36px; padding:5px 7px !important; font-size:12px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell[data-desktop-page="hotspot"] .research-table-wrap { width:100%; max-width:100%; overflow:auto !important; scrollbar-width:thin; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell[data-desktop-page="hotspot"] .research-table { min-width:960px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell[data-desktop-page="hotspot"] .research-table :is(th,td) { font-size:13px !important; padding:8px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell[data-desktop-page="hotspot"] .research-page-controls { min-width:0; max-width:100%; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell[data-desktop-page="hotspot"] .research-page-numbers { min-width:0; overflow:auto; scrollbar-width:thin; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell[data-desktop-page="hotspot"] .research-page-btn { flex:none; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell[data-desktop-page="hotspot"] :is(.research-modal,.gd-dialog) { max-width:calc(100vw - 16px); max-height:calc(100dvh - 72px); overflow:auto; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell[data-desktop-page="hotspot"] .research-modal-body { padding:10px 12px 18px !important; }

  /* Cycle, dragon/tiger and gene evidence. */
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.cycle-page .control-row { flex-wrap:wrap; gap:8px !important; padding:8px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.cycle-page .field:has(input[type="date"]) { display:flex; flex-direction:column; align-items:stretch; justify-content:flex-start !important; gap:4px !important; white-space:normal; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.cycle-page .field .yp-date-picker { width:100% !important; min-width:0 !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.cycle-page .field .yp-date-trigger { width:100% !important; min-width:0 !important; grid-template-columns:minmax(0,1fr); }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.cycle-page .field .yp-date-trigger-label { display:none; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.cycle-page :is(.field,.data-note,.legend-line,.module-sub,.relay-meta,.rank-item) { font-size:12px !important; line-height:1.5 !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.cycle-page .quick-range { display:flex; gap:4px; flex-wrap:wrap; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.cycle-page .quick-range button { min-height:36px !important; font-size:12px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.dragon-page :is(.dragon-toolbar-main,.dragon-toolbar-tools,.dragon-broker-tools) { min-width:0; flex-wrap:wrap; gap:6px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.dragon-page .dragon-filter { min-height:36px !important; font-size:12px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.dragon-page #dragonTrendChart { height:340px !important; min-height:340px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.dragon-page :is(.dragon-note,.dragon-trend-head small,.dragon-stock-code,.dragon-reason,.seat-side-head,.seat-line,.institution-tag,.trader-tag,.hot-money-stock-tags b,.dragon-source-note) { font-size:12px !important; line-height:1.5 !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.dragon-page :is(.dragon-pct,.money.net,.dragon-broker-name,.seat-name) { font-size:13px !important; line-height:1.5 !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.dragon-page .dragon-row.stock { position:relative; grid-template-columns:repeat(3,minmax(0,1fr)) !important; padding:9px 8px !important; gap:4px 6px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.dragon-page .dragon-row.stock > :first-child { grid-column:1 / -1 !important; grid-row:auto !important; grid-template-columns:minmax(0,1fr) max-content !important; grid-template-rows:auto auto; padding-right:24px; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.dragon-page .dragon-row.stock .dragon-reason { grid-column:1 / -1 !important; grid-row:auto !important; white-space:normal !important; overflow:visible !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.dragon-page .dragon-row.stock .money { display:block !important; grid-column:auto !important; grid-row:auto !important; font-size:12px !important; text-align:left; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.dragon-page .dragon-row.stock .money br { display:none; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.dragon-page .dragon-row.stock .row-arrow { position:absolute; right:8px; top:9px; grid-column:auto !important; grid-row:auto !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.dragon-page .dragon-row.stock .seat-detail { grid-column:1 / -1 !important; grid-row:auto !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.dragon-page .seat-columns { grid-template-columns:minmax(0,1fr) !important; gap:8px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.dragon-page .seat-line { grid-template-columns:24px repeat(3,minmax(0,1fr)) !important; padding:7px 5px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.dragon-page .seat-line .seat-rank { grid-column:1; grid-row:1 / 3; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.dragon-page .seat-line .seat-name { grid-column:2 / -1; grid-row:1; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.dragon-page .seat-line .seat-name-text { white-space:normal; overflow-wrap:anywhere; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.dragon-page .seat-line > b:nth-child(n+3) { display:block !important; grid-row:2; font-size:12px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.dragon-page :is(.dragon-broker-scroll,.dragon-history-scroll) { overflow:auto; max-width:100%; scrollbar-width:thin; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.gene-page :is(.gene-discovery-meta,.gene-component-grid) { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.gene-page :is(.gene-discovery-meta span,.gene-discovery-meta small,.gene-discovery-method p,.gene-discovery-type,.gene-discovery-table small,.gene-detail-note,.gene-detail-tags,.gene-discovery-dialog header small) { font-size:12px !important; line-height:1.5; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.gene-page .gene-discovery-meta b { font-size:20px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.gene-page :is(.gene-discovery-table td:nth-child(2) strong,.gene-score-number) { font-size:14px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.gene-page .gene-discovery-search input { flex:1; min-width:0; width:auto; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.gene-page .gene-table-wrap { max-width:100%; overflow:auto !important; scrollbar-width:thin; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.gene-page .gene-discovery-dialog { width:calc(100vw - 16px) !important; max-height:calc(100dvh - 72px); padding:12px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.gene-page .gene-discovery-evidence { font-size:13px !important; line-height:1.6; padding:9px; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.gene-page .gene-component-grid { grid-template-columns:minmax(0,1fr); }

  /* Anomaly and rankings retain all table facts and clear stock names. */
  html:has(#yp-mobile-tabs) body.yp-mobile-shell:is(.workspace-feature-anomaly,.workspace-feature-stock-hotlist) :is(.anomaly-actions,.anomaly-note,.hotlist-card>header p,.hot-tags span,.hot-platform-ranks span) { font-size:12px !important; line-height:1.5 !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.workspace-feature-anomaly .anomaly-summary-two { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:8px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.workspace-feature-anomaly .anomaly-summary article { padding:9px !important; gap:4px; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.workspace-feature-anomaly .anomaly-summary strong { font-size:22px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.workspace-feature-anomaly .anomaly-panel { overflow-x:auto !important; scrollbar-width:thin; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.workspace-feature-anomaly .anomaly-table td:first-child { position:sticky; left:0; z-index:1; background:#fff; min-width:112px; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.workspace-feature-stock-hotlist .hot-stock-row { padding:9px 8px !important; grid-template-columns:28px minmax(0,1fr) auto !important; gap:7px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.workspace-feature-stock-hotlist :is(.hot-stock-title b,.hot-quote b) { font-size:14px !important; line-height:1.45; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.workspace-feature-stock-hotlist .hot-stock-title { flex-wrap:wrap; gap:3px 6px; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.workspace-feature-stock-hotlist .hotlist-rows { max-height:none !important; }

  /* Clouds need a real chart height and reachable legends below it. */
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.cloud-page .main-area > .cloud-content { height:auto !important; min-height:0 !important; padding:8px 8px 100px !important; overflow:visible !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.cloud-page .cloud-surface { height:auto !important; min-height:0 !important; flex:none !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.cloud-page :is(.tc-chart-wrap,.ec-chart) { flex:none !important; height:clamp(300px,48dvh,480px) !important; min-height:300px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.cloud-page :is(.tc-top,.tc-mode,.tc-summary,.ec-toolbar,.ec-filters) { gap:6px 8px !important; padding:8px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.cloud-page :is(.tc-status,.tc-mode-note,.tc-date,.tc-summary-numbers,.tc-footer-note,.tc-source,.tc-leaders,.theme-cloud label,.ec-controls label,.ec-method,.ec-date,.ec-total,.ec-note,.ec-missing) { font-size:12px !important; line-height:1.45 !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.cloud-page :is(.theme-cloud,.emotion-cloud) :is(select,button:not(.tc-band),input:not([type=checkbox])) { height:36px !important; min-height:36px !important; font-size:13px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.cloud-page :is(.theme-cloud,.emotion-cloud) input:not([type=checkbox]) { font-size:16px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.cloud-page :is(.tc-footer,.ec-footer) { padding:8px !important; gap:8px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.cloud-page :is(.tc-legend,.ec-legend) { min-width:0 !important; width:100%; flex-basis:100%; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.cloud-page :is(.tc-band,.tc-band span,.ec-band span) { font-size:11px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.cloud-page :is(.tc-band span,.ec-band span) { white-space:normal; overflow-wrap:anywhere; line-height:1.35; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.cloud-page .tc-filter { max-width:calc(100% - 16px); right:8px; top:8px; padding:12px; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.cloud-page :is(.tc-search,.ec-search) { min-width:115px; flex:1 1 140px; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.cloud-page :is(.tc-search input,.ec-search input) { width:100%; min-width:115px; }

  /* Sector history keeps the date matrix scrollable with its name column. */
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.sector-cycle-page :is(.sc-overview,.sc-changes,.sc-board,.sc-method) { margin:8px 0 !important; box-shadow:none; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.sector-cycle-page :is(.sc-market>span,.sc-market>em,.sc-confidence,.sc-control-group,.sc-toggle,.sc-freshness,.sc-changes,.sc-changes span,.sc-changes b,.sc-method,.sc-sort button,.sc-date small,.sc-date em,.sc-theme-current,.sc-estimate,.sc-leader,.sc-leader span,.sc-breadth) { font-size:12px !important; line-height:1.45; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.sector-cycle-page .sc-market { padding:10px !important; gap:8px; min-height:70px; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.sector-cycle-page .sc-market>p { margin:0; font-size:13px; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.sector-cycle-page .sc-board-head { height:auto; min-height:54px; flex-wrap:wrap; padding:8px; gap:8px; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.sector-cycle-page .sc-table-wrap { min-height:280px; max-height:70dvh; overflow:auto !important; scrollbar-width:thin; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.sector-cycle-page .sc-matrix :is(th,td) { padding:9px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.sector-cycle-page :is(.sc-matrix thead th:first-child,.sc-theme-head) { width:124px; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.sector-cycle-page .sc-cell { height:160px; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.sector-cycle-page .sc-structure { font-size:13px; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.sector-cycle-page .sc-score { font-size:23px; }

  /* Watchlist and search: names match quote sizes, dense rows still have targets. */
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.wl-v2 .wl-mobile-groups { width:100% !important; max-width:100%; margin-left:0 !important; margin-right:0 !important; overflow-x:auto; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.wl-v2 :is(.wl-table-scroll,.wlp-scroll,.wl-grid-view) { max-width:100%; overflow:auto !important; scrollbar-width:thin; overscroll-behavior-x:contain; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.wl-v2 .wl-market-table :is(th,td) { font-size:13px !important; padding:8px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.wl-v2 :is(.wl-stock-cell b,.wl-grid-card .stock-board-link b,.wlp-name b) { font-size:14px !important; line-height:1.45; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.wl-v2 :is(.wl-stock-code,.wl-concept-badge,.wl-row-note,.wl-chart-date,.wl-quote-status,.wl-field-range small,.wl-grid-card footer,.wlp-name small,.wlp-status) { font-size:11px !important; line-height:1.45; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.wl-v2 .wl-grid-quote { font-size:13px !important; gap:5px; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.wl-v2 .wl-stock-grid.grid2 { grid-template-columns:repeat(2,minmax(146px,1fr)); }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.wl-v2 .wl-stock-grid.grid3 { grid-template-columns:repeat(3,minmax(146px,1fr)); }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.wl-v2 .wl-stock-grid.grid4 { grid-template-columns:repeat(4,minmax(146px,1fr)); }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.wl-v2 .wl-grid-card { padding:8px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.wl-v2 .wl-grid-toolbar { flex-wrap:wrap; gap:8px; padding:8px; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.wl-v2 :is(.wl-sub-dialog,.wlp-dialog) { width:calc(100vw - 20px); max-height:calc(100dvh - 80px); padding:12px !important; overflow:auto; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.wl-v2 .wl-sub-dialog header button { width:40px; height:40px; min-height:40px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.stock-search-page :is(.stock-search-hot-list,.stock-history-list) { font-size:13px; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.stock-search-page :is(.stock-search-stock b,.stock-search-quote b) { font-size:14px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.stock-search-page .stock-search-rank { font-size:12px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.stock-search-page :is(.stock-search-stock small,.stock-search-quote small,.stock-search-platform-ranks>span,.stock-search-platform-ranks b,.stock-search-platform-ranks em,.stock-search-hot-sentinel) { font-size:11px !important; line-height:1.45; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.stock-search-page .stock-search-stock>span { flex-wrap:wrap; gap:2px 5px; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.stock-search-page :is(.stock-search-watch,.stock-search-ai) { width:36px !important; min-height:36px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.stock-search-page .stock-search-platform-tabs { max-width:100%; gap:6px; overflow:auto; scrollbar-width:thin; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.stock-search-page .stock-search-platform-tabs button { min-height:36px !important; font-size:13px !important; white-space:nowrap; }

  /* Interval statistics: dates wrap above an independently scrolling results list. */
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.interval-page #intervalStatisticsPanel { height:auto !important; min-height:0 !important; overflow:visible; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.interval-page :is(.wis-top,.wis-asof,.wis-chart-tools,.wis-status,.wis-page,.wis-period,.wis-ma) { font-size:12px !important; line-height:1.5; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.interval-page .wis-dates { flex-wrap:wrap; gap:6px; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.interval-page .wis-chart-wrap { height:240px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.interval-page .wis-table-scroll { max-height:60dvh; min-height:200px; overflow:auto; scrollbar-width:thin; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.interval-page :is(.wis-chart-tools button,.wis-status button) { width:36px; height:36px; min-height:36px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.interval-page .wis-status { flex-wrap:wrap; padding:6px 8px; }

  /* Value and swing research use two KPI columns and full-width evidence tables. */
  html:has(#yp-mobile-tabs) body.yp-mobile-shell:is(.value-page,.swing-page) :is(.value-wrap,.swing-wrap,.value-grid,.swing-grid) { min-width:0; gap:8px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell:is(.value-page,.swing-page) :is(.value-card,.swing-card) { min-width:0; padding:10px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell:is(.value-page,.swing-page) :is(.value-kpis,.swing-kpis,.evidence-grid) { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:6px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell:is(.value-page,.swing-page) :is(.value-kpi,.swing-kpi,.evidence-box) { min-width:0; padding:8px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell:is(.value-page,.swing-page) :is(.value-kpi span,.value-kpi small,.swing-kpi span,.evidence-box span) { font-size:12px !important; line-height:1.45; white-space:normal !important; overflow:visible !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell:is(.value-page,.swing-page) :is(.value-kpi b,.swing-kpi b,.evidence-box b) { font-size:20px !important; line-height:1.3; white-space:normal !important; overflow:visible !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.value-page .value-kpi b[style] { font-size:14px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell:is(.value-page,.swing-page) :is(.value-demo,.value-demo b,.value-muted,.value-code,.value-range-labels,.value-pill,.value-event time,.swing-code,.swing-meta,.swing-note,.swing-dist label,.swing-dist b,.swing-regime span,.swing-regime .badge,.stage,.quadrant,.severity) { font-size:12px !important; line-height:1.55 !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell:is(.value-page,.swing-page) :is(.value-empty,.value-loading,.swing-empty,.swing-loading,.value-checklist label,.value-check,.swing-card p,.value-card p) { font-size:13px !important; line-height:1.65 !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell:is(.value-page,.swing-page) :is(.value-link,.swing-stock) { font-size:14px !important; line-height:1.45; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell:is(.value-page,.swing-page) :is(.value-select,.value-btn,.swing-btn,.swing-chip) { min-height:36px !important; font-size:13px !important; padding:6px 9px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell:is(.value-page,.swing-page) :is(.value-field label,.swing-field label) { font-size:12px !important; line-height:1.4; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell:is(.value-page,.swing-page) :is(.value-table-wrap,.swing-table-wrap) { display:block !important; width:100%; max-width:100%; overflow:auto !important; scrollbar-width:thin; overscroll-behavior-x:contain; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell:is(.value-page,.swing-page) :is(.value-table,.swing-table) { min-width:680px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell:is(.value-page,.swing-page) :is(.value-table,.swing-table) :is(th,td) { padding:8px !important; font-size:13px !important; line-height:1.45 !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell:is(.value-page,.swing-page) :is(.value-table,.swing-table) td:first-child { position:sticky; left:0; z-index:1; min-width:112px; max-width:180px; background:#fff; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell:is(.value-page,.swing-page) :is(.value-table,.swing-table) th:first-child { position:sticky; left:0; z-index:2; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.value-page .value-check { grid-template-columns:minmax(0,1fr) auto !important; gap:5px 8px !important; padding:9px 0 !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.value-page .value-check > :last-child { grid-column:1 / -1; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.value-page .value-demo { flex-wrap:wrap; gap:4px; padding:8px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.swing-page .swing-regime { align-items:flex-start; flex-wrap:wrap; padding:9px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.swing-page .swing-regime strong { font-size:15px !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.swing-page .swing-form { gap:8px !important; }
}

@media (min-width: 600px) and (max-width: 880px) {
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.ladder-page .ladder-cards { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell.trend-cycle-page .stock-grid { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
  html:has(#yp-mobile-tabs) body.yp-mobile-shell:is(.value-page,.swing-page) :is(.value-kpis,.swing-kpis,.evidence-grid) { grid-template-columns:repeat(4,minmax(0,1fr)) !important; }
}
