/* Compact layouts are isolated here; desktop geometry remains in the original sheets. */
:root{--mobile-header:68px;--mobile-gap:16px;--mobile-pad:16px}
.mobile-header,.mobile-menu-trigger,.contents-toggle{display:none}
.mobile-menu{color:var(--text,#f4f7fb);background:#0b1220;border:1px solid rgba(217,184,119,.24);border-radius:24px;padding:20px;width:min(440px,calc(100% - 24px));max-height:calc(100dvh - 32px);overflow:auto;box-sizing:border-box}
.mobile-menu::backdrop{background:rgba(2,6,14,.78);backdrop-filter:blur(6px)}
.mobile-menu__head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}
.mobile-menu__head h2{margin:0;font-size:20px}
.mobile-menu nav{display:grid;gap:8px}
.mobile-menu a{display:flex;align-items:center;gap:14px;min-height:54px;padding:10px 16px;border:1px solid rgba(255,255,255,.07);border-radius:13px;color:#b9c6d8;text-decoration:none}
.mobile-menu a[aria-current]{color:#f4f7fb;border-color:rgba(217,184,119,.45);background:rgba(217,184,119,.09)}
.mobile-menu a i{width:22px;color:#d9b877;text-align:center}
.mobile-icon,.site-language{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:44px;min-height:44px;border:1px solid rgba(255,255,255,.14);border-radius:12px;background:#101a2d;color:#f4f7fb;cursor:pointer;font:inherit;font-size:14px;font-weight:600}
.site-language{padding-inline:10px}
.mobile-overlay-open{overflow:hidden}
:where(button,a,input,select,textarea,[tabindex]):focus-visible{outline:2px solid #d9b877;outline-offset:3px}
html[lang="ar"] body{font-family:'IBM Plex Sans Arabic',Tahoma,Arial,sans-serif}
html[lang="ar"] :where(button,input,select,textarea){font-family:inherit}
html[dir="rtl"] :where(.compare-label,.section-kicker,.label,.control-group>label){letter-spacing:0}
:where(.eq,.katex-display,canvas,.compare-main,.compare-return,.metric-card strong,.summary-box strong,.summary-item strong,.chart-pills>span,.rank-value,.num,.mono,#currentDate,#daysElapsed,#marketClock){direction:ltr;unicode-bidi:isolate}
.eq{position:relative;max-width:100%;min-width:0}
.table-wrap:focus-visible,.eq:focus-visible{outline-offset:-3px}
.pex-data-notice{margin:0 0 14px;padding:10px 14px;border:1px solid rgba(127,212,216,.2);border-radius:12px;background:rgba(127,212,216,.04);color:#b9c6d8;font-size:13px;line-height:1.6}
.pex-feedback{color:#f4c4b8;padding:12px;border:1px solid #7f3935;border-radius:12px;margin:12px 0}
@media(min-width:1181px){.market-state{position:relative}.market-state>.desktop-language{position:absolute;inset-inline-start:-54px;top:50%;transform:translateY(-50%)}}

@media(max-width:1000px){
  .docs-nav{padding:0;position:sticky;top:calc(var(--mobile-header) + 8px);z-index:20;background:#0b1220;border:1px solid rgba(217,184,119,.22);border-radius:14px}
  .contents-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:48px;border:0;background:transparent;color:#d9b877;padding:12px 16px;font:inherit;font-size:15px;font-weight:600;text-align:start}
  .docs-nav .docs-nav__title{display:none}
  .docs-nav:not(.contents-open) #docsNav{display:none}
  .docs-nav.contents-open #docsNav{max-height:55dvh;overflow:auto;padding:8px 12px 16px}
  .docs-nav a{min-height:44px;font-size:14px}
  .docs-layout,.docs-content,.doc-section,.realistic-layout>*{min-width:0}
  .realistic-layout{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:1180px){
  .method-compare__motif{inset:58px 0 0;width:100%}
  .compare-page .xp{grid-template-columns:minmax(0,1fr)}
  .compare-page .xp>*{min-width:0}
}

@media(max-width:800px){
  html{scroll-padding-top:calc(var(--mobile-header) + 70px)}
  html[data-docs-view="equations"],html[data-docs-view="constraints"]{scroll-padding-top:calc(var(--mobile-header) + 12px)}
  body{font-size:15px}
  html{background-color:#050914}
  body.doc-page{background-attachment:scroll;background-color:#050914}
  body:not(.journey-page){overflow-x:visible}
  .app-shell,.doc-page .app-shell{padding:0 var(--mobile-pad) 28px;max-width:100%;min-width:0}
  .topbar,.project-tabs--pex{display:none!important}
  .desktop-language{display:none}
  .mobile-header{display:flex;position:sticky;top:0;z-index:80;align-items:center;justify-content:space-between;gap:10px;min-height:var(--mobile-header);padding:8px max(12px,env(safe-area-inset-right)) 8px max(12px,env(safe-area-inset-left));background:rgba(5,9,20,.96);border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(14px);box-sizing:border-box;margin-bottom:16px}
  .mobile-header__brand{display:flex;align-items:center;gap:10px;min-width:0;text-decoration:none;color:#f4f7fb}
  .mobile-header__brand strong{display:block;font:800 18px Inter,sans-serif;letter-spacing:-.5px}
  .mobile-header__brand small{display:block;color:#a6b5c9;font-size:12px;line-height:1.5}
  .mobile-header__mark{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:rgba(34,197,94,.1);color:#70e4a1;border:1px solid rgba(34,197,94,.2)}
  .mobile-header__actions{display:flex;gap:7px;flex-shrink:0}
  .page{gap:var(--mobile-gap);min-width:0}
  :where(.card,.panel-block,.exchange-card,.doc-section){min-width:0}
  :where(button,.btn,.mini-btn,.icon-btn,.toggle-pill,.speed-btn,.chart-tab,.input-dark,.pex-input,.small-action,.sort-btn,.refresh-btn){min-height:44px}
  input,select,textarea{max-width:100%;min-width:0;font-size:16px!important}
  input[type="range"]{min-height:44px;touch-action:pan-y;direction:ltr}
  :where(.section-head,.card-titlebar){gap:12px;flex-wrap:wrap}
  :where(.section-head,.card-titlebar)>*{min-width:0}
  :where(.section-subtext,.control-hint){font-size:14px;line-height:1.65}
  :where(.chart-stage,.chart-box,.doc-plot,.xp__plot){min-width:0;max-width:100%}
  :where(canvas){max-width:100%}
  :where(.table-wrap,.holdings-table-wrap,.dataset-quality-wrap,.events-table-wrap,.trade-tape-table-wrap){max-width:100%;overflow:auto;overscroll-behavior-inline:contain}

  /* Dashboard: a lead portfolio readout, paired benchmarks, then the chart. */
  .home-page .comparison-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .home-page .compare-card{padding:14px;border-radius:18px;min-width:0}
  .home-page .compare-card--model{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;align-items:center;gap:6px 14px;background:linear-gradient(115deg,rgba(34,197,94,.09),#0b1220)}
  .home-page .compare-card--model .compare-card__head{grid-column:1/-1}
  .home-page .compare-main{font-size:clamp(26px,7vw,36px);margin:10px 0 0;line-height:1.2;overflow-wrap:anywhere}
  .home-page .compare-card--model .compare-main{font-size:40px}
  .home-page .compare-card--model .compare-return{margin:8px 0 0;font-size:19px}
  .home-page .compare-card__head{align-items:start;gap:6px;flex-wrap:wrap}
  .home-page .compare-card h2{font-size:17px}
  .home-page .compare-label{font-size:12px;margin-bottom:4px}
  .home-page .compare-badge{font-size:11px;padding:4px 7px;white-space:normal}
  .home-page .compare-return{font-size:16px;margin-top:6px}
  .home-page .main-chart-card{padding:16px 12px;border-radius:20px;display:flex;flex-direction:column}
  .home-page .section-head--chart{order:0;margin-bottom:12px;display:block}
  .home-page .section-head h3{font-size:21px}
  .home-page .chart-head-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin-top:14px}
  .home-page .chart-head-box{min-width:0;padding:8px 4px;text-align:center;border-radius:10px}
  .home-page .chart-head-box span{font-size:11px}
  .home-page .chart-head-box strong{font-size:11px;white-space:nowrap}
  .home-page .large-chart{order:1;height:310px;min-height:310px;margin:0 -2px 16px}
  .home-page .chart-toolbar--mode{order:2;display:grid;grid-template-columns:1fr;gap:10px;margin:0 0 14px}
  .home-page .chart-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
  .home-page .chart-tab{white-space:normal;line-height:1.5;padding:9px;font-size:13px}
  .home-page .benchmark-toggles{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .home-page #timeRange{width:100%}
  .home-page .risk-compare-panel{order:3}
  .home-page .risk-compare-head{flex-wrap:wrap}
  .home-page .risk-compare-toggles{display:flex;flex-wrap:wrap}
  .home-page .playback-metrics-grid{order:4;grid-template-columns:minmax(0,1fr);gap:16px}
  .home-page .panel-block--playback{display:flex;flex-direction:column;padding:14px}
  .home-page .panel-block--playback .control-stack{display:contents}
  .home-page .panel-block--playback .panel-head{display:flex;align-items:center}
  .home-page .chart-head-box--small{width:auto;min-width:70px}
  .home-page .risk-control-group{order:-2;padding-bottom:14px;border-bottom:1px solid var(--border);margin-bottom:16px}
  .home-page .control-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px}
  .home-page #secondaryPlayBtn{grid-column:1/-1}
  .home-page .control-group{margin-bottom:12px}
  .home-page .speed-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}
  .home-page .metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .home-page .metric-card{padding:12px}
  .home-page .metric-card strong{font-size:23px}
  .home-page .metric-card span{font-size:12px}
  .home-page .lower-grid,.home-page .allocation-grid{grid-template-columns:minmax(0,1fr)}
  .home-page .donut-chart{height:240px}
  .modal{padding:12px}
  .modal-panel{width:100%;max-height:calc(100dvh - 24px);overflow:auto;padding:18px;border-radius:20px}
  .modal-head{position:sticky;top:-18px;background:#0b1220;z-index:2;padding-block:10px}
  .summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}

  /* Research reader: compact contents, readable prose and independent math scrolling. */
  .docs-hero{padding:20px 18px;margin-bottom:0}
  .docs-hero .doc-display{font-size:clamp(30px,8.6vw,44px);line-height:1.35}
  .doc-lede,.doc-section p,.doc-section li{font-size:15px;line-height:1.85}
  .docs-views{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;max-width:100%}
  .docs-view{padding:9px 5px;font-size:12px;white-space:normal;min-height:50px;justify-content:center;line-height:1.5}
  .docs-view i{display:none}
  .docs-layout{gap:16px}
  .doc-section{padding:20px 16px;border-radius:18px;scroll-margin-top:0}
  .doc-section h2{font-size:27px;line-height:1.45}
  .doc-section h3{line-height:1.55}
  .doc-section :where(code,.doc-source){overflow-wrap:anywhere}
  .solver-card__top>*{min-width:0}
  .solver-card__sub{overflow-wrap:anywhere}
  .solver-card dl{grid-template-columns:minmax(0,.4fr) minmax(0,1fr)}
  .solver-card dd{min-width:0;overflow-wrap:anywhere}
  .eq,.math-core .eq,.realistic-objective.eq{overflow-x:auto;overflow-y:hidden;direction:ltr;unicode-bidi:isolate;font-size:15px;overscroll-behavior-inline:contain}
  .eq .katex-display{width:max-content;min-width:100%;text-align:start;padding-block:4px}
  .eq .katex-display>.katex{font-size:1.3em}
  .math-core{direction:inherit}
  .math-core__nav{grid-template-columns:repeat(2,minmax(0,1fr))}
  .math-chapter{scroll-margin-top:0;min-width:0}
  .math-flow{flex-wrap:wrap}
  .fig__canvas{height:300px!important}
  .doc-foot{flex-wrap:wrap;gap:12px}

  /* PEX: quote cards retain every table field with a compact two-column detail grid. */
  body.pex-page{padding-bottom:calc(68px + env(safe-area-inset-bottom))!important}
  .exchange-shell{width:100%;padding:0 var(--mobile-pad);min-width:0}
  .exchange-header{display:flex;flex-wrap:wrap;gap:12px;padding:12px 0;margin:0 0 14px}
  .exchange-header .backtest-link{display:none}
  .exchange-brand{justify-content:start;gap:8px}
  .exchange-brand .brand-mark-mini,.exchange-brand .brand-word,.exchange-brand .brand-cross{display:none}
  .exchange-brand .pex-brand-logo{width:120px;height:46px;object-fit:contain}
  .market-state{margin:0;min-width:0;gap:5px;font-size:12px}
  .market-state small{font-size:10px}
  .view-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:16px}
  .view-tab{width:100%;justify-content:center;padding:12px 6px;font-size:14px}
  .panel-grid,.historical-grid-clean,.secondary-grid,.live-grid-clean{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
  .exchange-card{padding:16px!important;border-radius:18px;min-width:0}
  .card-titlebar h2{font-size:19px;line-height:1.5}
  .market-history-box{height:300px!important}
  .ranking-panel{height:auto!important;min-height:0!important;max-height:none!important}
  .rank-row{min-height:64px;padding:12px 4px;grid-template-columns:24px minmax(0,1fr) auto;gap:8px}
  .rank-main span{font-size:12px;white-space:normal}
  .ranking-panel .ranking-list{max-height:350px!important;overscroll-behavior:contain}
  .live-tools{display:grid;grid-template-columns:minmax(0,1fr) 44px 44px;width:100%;gap:8px}
  #liveFilter{grid-column:1/-1;width:100%}
  #symbolSearch,.rank-controls,.pex-input{width:100%;min-width:0}
  .symbols-table-wrap,.marketwatch-wrap{overflow:visible;max-height:none!important;min-width:0}
  .symbols-table,.market-table{display:block;width:100%;min-width:0!important}
  .symbols-table thead,.market-table thead{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}
  .symbols-table tbody,.market-table tbody{display:grid;gap:12px}
  .symbols-table tr,.market-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid rgba(127,212,216,.16);border-radius:14px;background:rgba(127,212,216,.025);padding:12px;gap:10px;cursor:pointer}
  .symbols-table td,.market-table td{display:block;min-width:0;padding:0!important;border:0!important;font-size:13px;white-space:normal!important;overflow-wrap:anywhere;text-align:start}
  .symbols-table td:first-child,.market-table td:first-child{grid-column:1/-1;border-bottom:1px solid var(--border)!important;padding-bottom:10px!important}
  .symbols-table td::before,.market-table td::before{content:attr(data-label);display:block;color:#97a6ba;font-size:11px;margin-bottom:4px}
  .symbols-table td:first-child::before,.market-table td:first-child::before{display:none}
  .symbol-cell,.symbol-mini{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
  .symbol-cell strong,.symbol-mini strong{font-size:17px;direction:ltr}
  .symbol-cell span,.symbol-mini span{white-space:normal!important;font-size:12px}
  .live-rank-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .bottom-ticker{height:48px!important;min-height:48px!important;padding-bottom:env(safe-area-inset-bottom)}
  .symbol-modal,.pex-intro-modal{padding:10px!important}
  .symbol-modal-card,.pex-intro-card{width:100%!important;max-width:100%!important;max-height:calc(100dvh - 20px)!important;overflow:auto!important;border-radius:20px!important;margin:auto!important}
  .pex-intro-card{padding:48px 18px 22px!important}
  .intro-brand-row img{max-width:120px!important}
  .intro-brand-row strong{font-size:22px!important}
  .intro-subtitle{padding:0!important;font-size:15px!important;line-height:1.9!important}
  .intro-focus-grid{grid-template-columns:1fr!important;margin-top:18px!important;gap:10px!important}
  .intro-continue{margin-top:18px!important;width:100%}
  .modal-header{position:sticky;top:0;z-index:5;background:#0b1220;padding:16px!important;gap:10px}
  .symbol-modal-card{height:auto!important}
  .modal-header{height:auto;min-height:86px}
  .modal-body{height:auto;overflow:visible}
  .modal-header h1{font-size:20px;overflow-wrap:anywhere}
  .modal-header p{font-size:12px;overflow-wrap:anywhere}
  .modal-close,.pex-intro-close{min-width:44px;min-height:44px;flex-shrink:0}
  .modal-body{grid-template-columns:minmax(0,1fr);padding:14px!important;gap:16px}
  .modal-chart-area,.modal-summary{min-width:0}
  .modal-chart-area{padding:0;min-height:0;grid-template-rows:auto 270px 170px;gap:14px;border:0}
  .modal-line-chart{height:270px}
  .modal-volume-chart{height:170px}
  .chart-topline,.chart-pills{flex-wrap:wrap;gap:8px}

  /* Secondary tools retain their own structure rather than sharing a generic stack. */
  .xp__metric{min-height:44px;white-space:normal}
  .xp__metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
  .xp__chip{min-height:44px;white-space:normal}
  .xp__controls,.xp__stage{padding:16px;min-width:0}
  .compare-page .page{max-width:100%}
  .compare-page .xp{order:-1}
  .method-compare__motif{inset:0;width:100%}
  .method-compare__row dt,.method-compare__row dd,.method-compare__definitions{font-size:14px;line-height:1.7}
  .method-compare__equation.eq .katex-display>.katex{font-size:1.2em}
  .xp__canvas{height:340px;min-width:0}
  .stat-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .xp__prov{overflow-wrap:anywhere}
  .dataset-page .dataset-card{padding:18px 14px}
  .dataset-grid{grid-template-columns:minmax(0,1fr)}
  .dataset-page .dataset-options{grid-template-columns:minmax(0,1fr);gap:8px}
  .dataset-page .dataset-option{display:grid;grid-template-columns:36px minmax(0,1fr);text-align:start;padding:14px;gap:5px 12px}
  .dataset-option__icon{grid-row:1/3}
  .dataset-page .dataset-option strong{padding-inline:0 24px;font-size:15px}
  .dataset-page .dataset-option small{grid-column:2;font-size:13px;line-height:1.65}
  .dataset-page .dataset-option::after{right:auto;inset-inline-end:12px}
  .dataset-date-row{grid-template-columns:minmax(0,1fr)}
  .dataset-chip{min-height:44px;min-width:56px}
  .dataset-page .dataset-chips{max-height:190px}
  .dataset-actions{flex-direction:column}
  .dataset-actions .btn{width:100%}
  .dataset-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dataset-file span{overflow-wrap:anywhere;min-width:0}
  .realistic-hero__motif{inset:0;width:100%}
  .realistic-hero__head h1{font-size:clamp(30px,9vw,44px);line-height:1.35}
  .realistic-objective.eq .katex-display>.katex{font-size:1.2em}
  .realistic-additions__list dd,.realistic-improvements ul,.realistic-solver-card strong,.realistic-solver-lane>p{font-size:15px;line-height:1.8}
  .realistic-additions__list dt,.realistic-solver-card span{font-size:14px}
  .realistic-core{text-align:start}
  .realistic-improvements ul{text-align:start!important}
  .jr-deck{top:var(--mobile-header);bottom:0;scroll-snap-type:y proximity;scroll-padding-bottom:80px}
  .jr-slide{min-height:calc(100dvh - var(--mobile-header));padding:28px 18px 100px;overflow:visible}
  .jr-slide--title,.jr-slide--close{min-height:calc(100dvh - var(--mobile-header));overflow:visible}
  .jr-slide__grid{min-width:0}
  .jr-lede,.jr-slide[data-density="compact"] .jr-lede{font-size:16px;line-height:1.85}
  .jr-slide__copy h2,.jr-slide[data-density="compact"] .jr-slide__copy h2{font-size:30px;line-height:1.4}
  .jr-controls,[dir="rtl"] .jr-controls{left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));justify-content:center}
  .jr-controls button{height:44px;width:44px}
  .jr-rail{display:none}
  .jr-presenting .mobile-header{display:none}
}
@media(min-width:801px) and (max-width:1000px){:root{--mobile-header:0px}}
@media(max-width:360px){:root{--mobile-pad:12px}.mobile-header__brand small{font-size:11px}.mobile-header__mark{display:none}.home-page .chart-head-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.home-page .compare-card h2{font-size:15px}.home-page .compare-card{padding:12px}.home-page .large-chart{height:290px;min-height:290px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.ticker-track{animation:none!important;transform:none!important}.bottom-ticker{overflow:auto!important}.entry-transition{display:none!important}}
