/* AI StockScanner v6.2.1.32 — Responsive Auto-Fit Layer
   Uses the available browser viewport (not a fixed monitor width) so the UI
   reflows cleanly on 4K, 1920, 1600, 1440, 1366, 1280, tablet and mobile widths.
   Wide data tables remain horizontally scrollable inside their own wrappers;
   the application shell itself must never be wider than the viewport. */

html,body{
  width:100%;
  max-width:100%;
  min-width:0;
  overflow-x:hidden;
}
body{--ais-gap:clamp(7px,.72vw,14px);--ais-pad:clamp(7px,1vw,18px)}
nav.app-nav,main,main.main-wide{
  width:100%;
  max-width:100%;
  min-width:0;
  box-sizing:border-box;
}
main,main.main-wide{overflow-x:clip}
main > *,
.module-page,.scanner-workspace,.scanner2-workspace,.acc-page,
.live-panel,.card,.wide-card,.results-panel,.scanner2-results-panel,
.scanner2-chart-card,.scanner2-side-card{
  max-width:100%;
  min-width:0;
  box-sizing:border-box;
}
main [class*="-grid"] > *,main [class*="-row"] > *{min-width:0}
main img,main video{max-width:100%;height:auto}
main canvas{max-width:100%}
.table-wrap,.live-table-wrap,.paper-table-wrap,.closed-wrap,
.scroll-shadow,[class*="table-wrap"]{
  max-width:100%;
  min-width:0;
  overflow-x:auto;
  overscroll-behavior-x:contain;
  -webkit-overflow-scrolling:touch;
}

/* Primary navigation: fit first, wrap second, never extend the page width. */
.module-tabs{
  width:100%;
  max-width:100%;
  min-width:0;
  padding-left:clamp(5px,.75vw,14px)!important;
  padding-right:clamp(5px,.75vw,14px)!important;
  gap:clamp(3px,.3vw,5px)!important;
}
.module-tabs > a,.module-tabs > .module-nav-menu{min-width:0}
.module-tabs > a,.module-nav-menu>summary{
  padding:clamp(6px,.48vw,8px) clamp(7px,.62vw,12px)!important;
  font-size:clamp(.66rem,.69vw,.77rem)!important;
}
.module-nav-dropdown{max-width:min(92vw,820px)}
.stock-selector-dropdown{max-width:calc(100vw - 20px)!important}

/* Secondary toolbar always consumes rows instead of creating an invisible wide strip. */
.ui-toolbar.ui-toolbar-fixed-dark{
  width:100%;
  max-width:100%;
  min-width:0;
  flex-wrap:wrap!important;
  gap:6px!important;
}
.ui-toolbar.ui-toolbar-fixed-dark .v35-context{max-width:100%;min-width:0}
.v35-context input{min-width:0!important;max-width:100%}

/* KPI / dashboard-style grids adapt continuously rather than at one monitor size. */
.stats,.scanner-stats,.chart-metrics,.portfolio-stats,.ops-metrics,.broker-metrics,.news-metrics,
.scanner2-overview{
  grid-template-columns:repeat(auto-fit,minmax(min(165px,100%),1fr))!important;
  gap:var(--ais-gap)!important;
}
.trade-metrics,.levels,.timeframe-grid,.scanner2-selected-grid,.v32-life-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(135px,100%),1fr))!important;
}
.market-grid,.watchlist-grid,.release-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(255px,100%),1fr))!important;
}
.settings-grid,.broker-form,.provider-grid,.alerts-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(190px,100%),1fr))!important;
}

/* Live intelligence ribbon: all tiles remain visible and readable. */
.v32-pulse-ribbon{
  grid-template-columns:repeat(auto-fit,minmax(min(118px,100%),1fr))!important;
  width:100%;
  max-width:100%;
  min-width:0;
}
.v32-pulse-ribbon>span{min-width:0!important;padding:6px clamp(7px,.7vw,11px)!important}

/* Scanner: responsive workspace for the exact screen shown by the user. */
.scanner2-main-grid{
  grid-template-columns:minmax(0,2fr) minmax(min(300px,32vw),.85fr);
  gap:var(--ais-gap)!important;
}
.scanner2-stock-selector{
  grid-template-columns:minmax(210px,.8fr) minmax(230px,1.1fr) max-content!important;
  gap:var(--ais-gap)!important;
}
.scanner2-stock-selector select{min-width:0!important;max-width:100%}
.scanner2-control-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr))!important;
  gap:var(--ais-gap)!important;
}
.scanner2-research-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(175px,100%),1fr))!important;
  gap:var(--ais-gap)!important;
}
.scanner2-card-head,.scanner2-section-title,.page-head,.module-title,.paper-page-header{
  max-width:100%;min-width:0;flex-wrap:wrap
}
.scanner-live-meta{max-width:100%;flex-wrap:wrap!important;gap:6px 10px!important}
.scanner2-results-panel .live-table-wrap{max-width:100%!important}

/* Command Center also reflows before panels become cramped. */
.acc-page .acc-hero{grid-template-columns:repeat(auto-fit,minmax(min(190px,100%),1fr))!important}
.acc-page .asset-grid,.acc-page .play{grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr))!important}

/* 1600 / 1440 / 1366 class displays */
@media(max-width:1450px){
  main.main-wide{padding-left:10px!important;padding-right:10px!important}
  .module-tabs{justify-content:flex-start!important}
  .module-tabs > a,.module-tabs > .module-nav-menu{flex:1 1 118px!important}
  .module-nav-menu>summary{width:100%!important}
  .ui-toolbar.ui-toolbar-fixed-dark{justify-content:flex-start!important;padding:6px 10px!important}
  .ui-toolbar.ui-toolbar-fixed-dark .ui-spacer{display:none!important}
  .ui-toolbar.ui-toolbar-fixed-dark .v35-context{flex:1 1 360px!important}
  .market-ticker-label{flex-basis:88px!important;padding-left:9px!important;padding-right:9px!important}
  .market-ticker-item{flex-basis:166px!important;min-width:166px!important;padding-left:9px!important;padding-right:9px!important}
  .market-ticker-spark{flex-basis:48px!important;width:48px!important}
}

/* 1280 / smaller laptop windows: switch analytical sidebars to rows. */
@media(max-width:1220px){
  .scanner2-main-grid,.acc-page .acc-grid,.acc-page .acc-bottom,.decision-grid,.trade-grid,.portfolio-grid{
    grid-template-columns:1fr!important;
  }
  .scanner2-stock-selector{grid-template-columns:1fr 1fr!important}
  .scanner2-stock-selector>div{grid-column:1/-1}
  .scanner2-stock-selector button{width:100%}
  .acc-page .acc-story{flex-wrap:wrap}
  .module-tabs > a,.module-tabs > .module-nav-menu{flex:1 1 112px!important}
  .module-tabs > a,.module-nav-menu>summary{font-size:.68rem!important;padding:6px 8px!important}
  .stock-selector-dropdown{
    position:fixed!important;
    left:10px!important;right:10px!important;
    width:auto!important;min-width:0!important;
  }
}

/* Tablet / narrow desktop windows. */
@media(max-width:900px){
  main.main-wide{padding:8px 7px 20px!important}
  .module-tabs > a,.module-tabs > .module-nav-menu{flex:1 1 135px!important}
  .ui-toolbar.ui-toolbar-fixed-dark .v35-context{flex:1 1 100%!important;width:100%!important}
  .scanner2-stock-selector{grid-template-columns:1fr!important}
  .scanner2-stock-selector>div{grid-column:auto}
  .scanner2-control-grid,.scanner2-overview,.scanner2-research-grid{
    grid-template-columns:repeat(auto-fit,minmax(min(175px,100%),1fr))!important;
  }
  .scanner2-chart-card,.scanner2-side-card,.live-panel,.card{padding:clamp(10px,2vw,16px)!important}
  .scanner2-chart-visual{height:clamp(230px,38vw,300px)!important}
  .market-ticker-label{flex-basis:78px!important}
  .market-ticker-item{flex-basis:150px!important;min-width:150px!important}
}

@media(max-width:620px){
  .module-tabs > a,.module-tabs > .module-nav-menu{flex:1 1 calc(50% - 4px)!important}
  .module-tabs > a,.module-nav-menu>summary{font-size:.7rem!important;white-space:normal!important}
  .ui-toolbar.ui-toolbar-fixed-dark{grid-template-columns:1fr 1fr!important}
  .scanner2-control-grid,.scanner2-overview,.scanner2-selected-grid,.scanner2-research-grid,.v32-life-grid{
    grid-template-columns:1fr!important;
  }
  .scanner2-chart-card,.scanner2-side-card,.live-panel,.card{padding:10px!important}
  .scanner2-primary-actions>*,.scanner2-secondary-actions>*{width:100%!important}
  .v32-pulse-ribbon{grid-template-columns:repeat(2,minmax(0,1fr))!important;position:static!important}
}

/* Height-aware compacting for 768px / 800px high laptop screens. */
@media(max-height:820px) and (min-width:901px){
  .nav-head{min-height:44px!important;padding-top:6px!important;padding-bottom:6px!important}
  .market-ticker{height:58px!important}
  .module-tabs{padding-top:5px!important;padding-bottom:5px!important}
  .module-tabs > a,.module-nav-menu>summary{min-height:30px!important}
  .ui-toolbar.ui-toolbar-fixed-dark{padding-top:4px!important;padding-bottom:4px!important}
  main.main-wide{padding-top:9px!important}
  .scanner2-kpi{min-height:92px!important;padding:13px!important}
  .scanner2-chart-visual{height:270px!important}
}
