/* Mobile-device shell only. Desktop styles and desktop resizing are untouched. */
html.mobile-layout {--mobile-nav-item-height:39px;--mobile-nav-height:calc(var(--mobile-nav-item-height) + env(safe-area-inset-bottom,0px));}
html.mobile-layout body {padding-bottom:var(--mobile-nav-height);}
html.mobile-layout .primary-nav {
  position:fixed;top:auto;bottom:0;left:0;right:0;
  height:var(--mobile-nav-height);padding:0 0 env(safe-area-inset-bottom,0px);
  z-index:80;border-top:1px solid #334d74;border-bottom:0;
}
html.mobile-layout .primary-nav-inner {
  width:100%;height:var(--mobile-nav-item-height);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
  margin:0;padding:0;gap:0;overflow:visible;
}
html.mobile-layout .primary-nav-inner > a {
  display:flex;align-items:center;justify-content:center;
  min-width:0;padding:0 2px;font-size:13px;line-height:18px;height:var(--mobile-nav-item-height);
}
html.mobile-layout .primary-nav-inner > a[href='/research/brands'] {display:none;}
html.mobile-layout .app-header {position:relative;top:auto;height:29px;min-height:29px;padding:0;flex:none;}
html.mobile-layout .header-inner {height:29px;min-height:29px;width:calc(100% - 12px);padding:0;}
html.mobile-layout .app-header .brand-copy {gap:7px;line-height:18px;}
html.mobile-layout .brand-copy strong {font-size:15px;line-height:18px;}
html.mobile-layout .brand-copy small {font-size:10px;line-height:15px;}
html.mobile-layout .header-context,html.mobile-layout .header-tagline {display:none;}
html.mobile-layout .primary-nav a.active {border-top:3px solid #26bed6;}
html.mobile-layout .generate-bar {bottom:var(--mobile-nav-height);}
html.mobile-layout .plan-match-header {top:0;}
html.mobile-layout dialog {max-height:calc(100dvh - 24px);max-width:calc(100vw - 16px);}

/* Research history controls stay on one line; hide help, not result headings. */
html.mobile-layout body[data-page-mode=conclusions] .research-help,
html.mobile-layout body[data-page-mode=conclusions] #recentTenDays {display:none;}
html.mobile-layout body[data-page-mode=conclusions] .research-history-filter {
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 40px;gap:4px;align-items:center;
}
html.mobile-layout body[data-page-mode=conclusions] .research-history-filter label {
  display:flex;gap:3px;min-width:0;font-size:12px;white-space:nowrap;
}
html.mobile-layout body[data-page-mode=conclusions] .research-history-filter input {
  min-width:0;width:0;flex:1;max-width:none;min-height:30px;height:30px;padding:1px 2px;font-size:12px;
}
html.mobile-layout body[data-page-mode=conclusions] .research-history-filter button[type=submit] {
  min-width:0;min-height:30px;height:30px;padding:2px 4px;font-size:12px;white-space:nowrap;
}
html.mobile-layout body[data-page-mode=conclusions] .comparison-summary > .interval-single-line {
  display:flex;align-items:center;gap:6px;width:100%;max-width:100%;text-align:left;
}

/* Workbench: filters stay compact and the list reaches the bottom navigation. */
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) {
  height:100dvh;min-height:0;display:flex;flex-direction:column;overflow:hidden;
}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) #research-content {
  width:100%;margin:0;padding:2px 4px 0;display:flex;flex-direction:column;
  flex:1;min-height:0;
}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .page-footer,
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .secondary-context {display:none;}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) #researchFilterPanel {flex:none;}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .toolbar-card {
  margin:0;padding:2px 3px;min-height:0;
}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .date-controls {
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 40px;
  align-items:center;gap:3px;min-width:0;
}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .date-field {
  display:flex;gap:3px;min-width:0;align-items:center;
}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .date-field label {font-size:12px;font-weight:400;}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .date-field input {
  width:0;flex:1;min-width:0;height:30px;min-height:30px;padding:1px 2px;
  font-size:12px;line-height:normal;
}
html.mobile-layout body[data-page-mode=history] .history-date-controls {
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:4px 6px;
}
html.mobile-layout body[data-page-mode=history] .history-query-column {display:contents;}
html.mobile-layout body[data-page-mode=history] .history-start-column .date-field {grid-column:1;grid-row:1;}
html.mobile-layout body[data-page-mode=history] .history-end-column .date-field {grid-column:2;grid-row:1;}
html.mobile-layout body[data-page-mode=history] .history-time-filter {
  grid-column:1;grid-row:2;display:grid;gap:1px;align-items:start;
}
html.mobile-layout body[data-page-mode=history] .history-weekday-filter {
  grid-column:2;grid-row:2;display:grid;gap:1px;align-items:start;
}
html.mobile-layout body[data-page-mode=history] :is(.history-time-filter,.history-weekday-filter) > label {
  min-width:0;padding:0;font-size:10px;line-height:12px;
}
html.mobile-layout body[data-page-mode=history] :is(#historyTimeRange,.weekday-picker-trigger) {
  width:100%;height:30px;min-height:30px;padding-block:2px;font-size:11px;
}
html.mobile-layout body[data-page-mode=history] .weekday-picker-wrap {width:100%;}
html.mobile-layout body[data-page-mode=history] .weekday-picker {
  top:33px;left:auto;right:0;width:min(180px,calc(100vw - 16px));
}
html.mobile-layout body[data-page-mode=history] .history-team-filter {
  grid-column:1 / -1;grid-row:3;display:grid;grid-template-columns:48px minmax(0,1fr);gap:4px;align-items:start;
}
html.mobile-layout body[data-page-mode=history] .history-team-filter > label {
  min-width:0;padding-top:6px;font-size:11px;line-height:18px;
}
html.mobile-layout body[data-page-mode=history] .team-filter-control,
html.mobile-layout body[data-page-mode=history] .team-filter-inputs {width:100%;min-width:0;}
html.mobile-layout body[data-page-mode=history] .team-filter-row {
  width:100%;grid-template-columns:minmax(0,1fr) 30px;gap:4px;
}
html.mobile-layout body[data-page-mode=history] .team-filter-input {
  width:100%;height:30px;min-height:30px;padding:2px 6px;font-size:12px;
}
html.mobile-layout body[data-page-mode=history] :is(.team-filter-add,.team-filter-remove) {width:30px;height:30px;}
html.mobile-layout body[data-page-mode=history] .team-filter-suggestions {
  top:33px;width:calc(100% - 34px);max-height:min(190px,40dvh);
}
html.mobile-layout body[data-page-mode=history] .simultaneous-filter {min-height:20px;font-size:11px;}
html.mobile-layout body[data-page-mode=history] .history-league-actions {
  grid-column:1 / -1;grid-row:4;display:grid;grid-template-columns:minmax(0,1fr) 40px;gap:3px 6px;align-items:center;min-width:0;
}
html.mobile-layout body[data-page-mode=history] .history-inline-league {min-width:0;}
html.mobile-layout body[data-page-mode=history] .history-inline-league > span {flex:none;font-size:11px;}
html.mobile-layout body[data-page-mode=history] .history-inline-league #leaguePickerTrigger {
  flex:1;min-width:0;height:30px;min-height:30px;padding:2px 6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
html.mobile-layout body[data-page-mode=history] .history-query-action {grid-column:2;grid-row:1;}
html.mobile-layout body[data-page-mode=history] .history-toolbar-status {
  grid-column:1 / -1;grid-row:2;display:flex!important;align-items:center;gap:3px 6px;min-width:0;font-size:10px;line-height:14px;
}
html.mobile-layout body[data-page-mode=history] .history-toolbar-status :is(span,strong) {font-size:10px;line-height:14px;}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .quick-date-actions {display:flex;gap:0;}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) #queryResearch {width:40px;min-height:30px;padding:2px 4px;font-size:12px;}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) [data-date-mode=next-three],
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .toolbar-status,
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) #freshnessHelp,
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .region-filter {display:none;}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .research-filters {
  display:flex;flex-wrap:nowrap;align-items:center;gap:6px;padding:2px 3px;margin:0;
  min-width:0;min-height:32px;z-index:12;
}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .research-filters > div {gap:3px;min-width:0;white-space:nowrap;}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .research-filters > div > span {font-size:10px;font-weight:400;}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) #leaguePickerTrigger,
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .filter-choice {padding:2px 4px;min-height:28px;font-size:11px;}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) #leaguePicker {
  position:fixed;top:78px;left:6px;right:6px;width:auto;max-width:none;
  max-height:calc(100dvh - var(--mobile-nav-height) - 90px);padding:8px;z-index:90;
}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) #leaguePickerOptions {max-height:calc(100dvh - var(--mobile-nav-height) - 160px);}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .league-picker-group.league-priority .league-picker-group-options {grid-template-columns:repeat(3,minmax(0,1fr));}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) #panel-schedule {flex:1;min-height:0;display:flex;flex-direction:column;padding:0;}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .matches-card {
  display:flex;flex-direction:column;flex:1;min-height:0;margin:0;padding:0;border:0;border-radius:0;
}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .matches-card > .section-heading {margin:0;padding:3px 2px;flex:none;}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .match-title-actions {display:flex;flex-wrap:nowrap;gap:6px;min-width:0;}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) #matches-title {font-size:15px;white-space:nowrap;}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .match-title-actions button {
  min-height:30px;height:30px;padding:2px 9px;font-size:12px;white-space:nowrap;
}
html.mobile-layout body[data-page-mode=history] .match-title-actions > :is(#analyzeHistoryTeams,#exportResearchExcel,#toggleResearchFilters) {
  width:auto;min-width:48px;flex:0 1 auto;padding-inline:7px;
}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .research-filters.mobile-filter-relocated {display:none!important;}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .mobile-toolbar-league {
  position:relative;display:flex;flex:none;min-width:0;height:30px;align-items:stretch;gap:0;
}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .mobile-toolbar-league > span {display:none;}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .mobile-toolbar-league #leaguePickerTrigger {
  height:30px;min-height:30px;margin:0;padding:2px 9px;font-size:12px;white-space:nowrap;
}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .match-context-actions {flex:none;gap:0;}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .match-range-summary {display:none;}
html.mobile-layout body[data-page-mode=history] .history-team-analysis-dialog {
  width:calc(100vw - 16px);height:calc(100dvh - var(--mobile-nav-height) - 16px);max-height:calc(100dvh - var(--mobile-nav-height) - 16px);
}
html.mobile-layout body[data-page-mode=history] .history-team-analysis-dialog > .dialog-heading {padding:10px 12px;}
html.mobile-layout body[data-page-mode=history] .history-team-analysis-content {padding:10px 12px 14px;scrollbar-gutter:auto;}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) #matchList {
  flex:none;min-height:0;height:var(--match-list-height);max-height:none;
  overflow-y:auto;overflow-x:hidden;border:0;border-radius:0;overscroll-behavior:contain;
}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) #matchList > .header {display:none;}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .match-day-title {
  top:0;display:flex;align-items:center;gap:9px;padding:4px 6px;min-height:26px;font-size:12px;
}
html.mobile-layout .mobile-day-count {font-size:12px;font-weight:400;}
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .interval-section-title {padding:2px 6px;font-size:11px;min-height:20px;}

/* Time/league + two exactly equal halves: matchup/odds and trading. */
html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) #matchList .match-row-data {
  display:grid;grid-template-columns:42px repeat(2,minmax(0,1fr));grid-template-rows:auto;
  gap:0 4px;padding:4px 2px;min-height:72px;border-bottom:1px solid #ccd6e4;
}
html.mobile-layout #matchList .match-row-data > .mobile-fixture-meta {grid-column:1;grid-row:1;}
html.mobile-layout #matchList .match-row-data > .mobile-fixture-main {grid-column:2;grid-row:1;}
html.mobile-layout #matchList .match-row-data > .mobile-fixture-trading {grid-column:3;grid-row:1;}
html.mobile-layout #matchList .mobile-fixture-meta {
  display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:0;
}
html.mobile-layout #matchList .mobile-fixture-meta .match-time {font-size:11px;white-space:nowrap;}
html.mobile-layout #matchList .mobile-fixture-meta .match-league {width:100%;min-width:0;}
html.mobile-layout #matchList .mobile-fixture-meta .league-pill {font-size:10px;min-width:0;width:100%;padding:1px;}
html.mobile-layout #matchList .mobile-fixture-main {
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:center;min-width:0;gap:2px;
}
html.mobile-layout #matchList .mobile-fixture-main .matchup-group {
  display:grid;grid-column:1 / -1;grid-row:1;grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr);
  column-gap:2px;position:static;min-width:0;align-items:center;
}
html.mobile-layout #matchList .mobile-fixture-main .match-team {padding:0;min-width:0;}
html.mobile-layout #matchList .mobile-fixture-main .team-label {text-align:left;font-size:13px;}
html.mobile-layout #matchList .mobile-fixture-main .match-score {
  position:static;width:auto;transform:none;font-size:12px;text-align:center;
}
html.mobile-layout #matchList .mobile-fixture-main .match-odds {
  display:grid;position:relative;grid-template-columns:repeat(3,minmax(0,1fr));
  grid-column:2;grid-row:2;gap:1px;padding-top:12px;min-width:0;
}
html.mobile-layout #matchList .mobile-fixture-main .opening-odds {grid-column:1;}
html.mobile-layout #matchList .mobile-fixture-main .match-odds::before {
  display:block;position:absolute;top:0;left:0;content:attr(data-label);font-size:9px;line-height:12px;
}
html.mobile-layout #matchList .mobile-fixture-main .match-odds > :is(span,button) {
  min-width:0;font-size:11px;line-height:26px;min-height:26px;padding:0;
}
html.mobile-layout #matchList .mobile-fixture-trading {display:flex;align-items:center;min-width:0;}
html.mobile-layout #matchList .mobile-fixture-trading .match-market {
  display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto;width:100%;gap:2px;min-width:0;
}
html.mobile-layout #matchList .mobile-fixture-trading .market-total {
  grid-column:1;grid-row:1;min-width:0;padding:0;font-size:11px;text-align:left;line-height:18px;
}
html.mobile-layout #matchList .mobile-fixture-trading .market-triplet {
  display:grid;grid-column:1;grid-row:2;grid-template-columns:minmax(0,1fr);gap:0;
  width:100%;font-size:11px;line-height:16px;
}
html.mobile-layout #matchList .mobile-fixture-trading .market-triplet > span {min-width:0;line-height:16px;}
html.mobile-layout #matchList .mobile-fixture-trading .match-data-health {min-width:12px;min-height:16px;}
@media (max-width:350px) {
  html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .match-title-actions {gap:4px;}
  html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .match-title-actions button {padding-inline:7px;}
  html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .research-filters {gap:4px;}
  html.mobile-layout body:is([data-page-mode=workbench],[data-page-mode=history]) .filter-choice {padding-inline:3px;font-size:10px;}
}
