/* =====================================================================
   STEADY STRATEGY PAGE LAYOUTS — v4.12.0
   Pages only arrange shared components; they do not redefine components.
   ===================================================================== */
.tab-page{display:none}
.tab-page.active{display:block}

/* Dashboard */
#dashboardPage .dashboard-hero{margin:0 0 14px}
#dashboardPage .dashboard-overview{
  margin:0;
  padding:12px;
  border:1px solid var(--color-line-strong);
  border-radius:var(--radius-xl);
  background:linear-gradient(180deg,var(--color-surface) 0%,var(--color-surface-soft) 100%);
  box-shadow:var(--shadow-panel);
}
#dashboardPage .dashboard-formal-actions{display:flex;justify-content:flex-end;margin:0 0 10px}
#dashboardPage .dashboard-strategy-stack{display:grid;gap:10px}
#dashboardPage .dashboard-strategy-row.status-module{padding:16px 18px 18px}
#dashboardPage .dashboard-data-note{margin:8px 2px 0;color:var(--color-muted);font-size:10px;line-height:1.5;text-align:center}
#dashboardPage .dashboard-version-source{display:none}

#dashboardPage .dashboard-intraday-strip{
  display:grid;
  gap:10px;
  margin:0 0 12px;
  padding:14px;
  border:1px solid var(--color-line);
  border-radius:var(--radius-lg);
  background:var(--color-surface);
  box-shadow:var(--shadow-card);
}
#dashboardPage .dashboard-intraday-strip-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
#dashboardPage .dashboard-eyebrow{display:none}
#dashboardPage .intraday-status-pill{padding:5px 9px;border-radius:var(--radius-pill);background:var(--color-loading-soft);color:var(--color-muted);font-size:10px;font-weight:750}
#dashboardPage .dashboard-intraday-option{grid-template-columns:minmax(0,1fr) auto;align-items:center;min-height:76px;padding:11px 14px;opacity:1;cursor:default}
#dashboardPage .dashboard-intraday-identity,#dashboardPage .dashboard-intraday-quote{display:grid;gap:4px;min-width:0}
#dashboardPage .dashboard-intraday-quote{justify-items:end;text-align:right}
#dashboardPage .dashboard-intraday-quote small{color:var(--color-sub);font-size:10px}
#dashboardPage .dashboard-intraday-quote strong{color:var(--color-ink);font-size:23px;font-weight:800;line-height:1}
#dashboardPage .dashboard-intraday-quote em{color:var(--color-muted);font-size:9px;font-style:normal}

/* Detail pages */
#swingPage > .swing-picker,
#fundPage > .fund-ma-card{margin:0;padding:16px}
#swingPage .picker-head,
#fundPage .fund-market-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
#swingPage .picker-head > div,
#fundPage .fund-market-head > div{min-width:0}
#swingPage #swingRefreshBtn,
#fundPage #fundRefreshBtn{flex:0 0 auto}
#swingPage .compact-status,
#fundPage .compact-status{margin-top:6px;color:var(--color-muted);font-size:var(--font-help);line-height:1.5}
#fundPage .price-help{margin-top:6px}

#swingSignalCard,
#fundAdviceCard{margin-top:var(--section-gap)}
#swingSignalCard + .annual-signal-card,
#fundAdviceCard + .annual-signal-card,
#swingPage .annual-signal-card + .strategy-rules-details,
#fundPage .annual-signal-card + .strategy-rules-details{margin-top:var(--section-gap)}

#swingPage .annual-signal-card,
#fundPage .annual-signal-card,
#swingPage .strategy-rules-details,
#fundPage .strategy-rules-details{padding:16px}

@media(max-width:700px){
  #dashboardPage .dashboard-overview{padding:10px;border-radius:20px}
  #dashboardPage .dashboard-formal-actions{justify-content:stretch}
  #dashboardPage .dashboard-refresh-formal{width:100%}
  #dashboardPage .dashboard-intraday-strip-head{align-items:flex-start}
  #swingPage > .swing-picker,#fundPage > .fund-ma-card,#swingPage .annual-signal-card,#fundPage .annual-signal-card,#swingPage .strategy-rules-details,#fundPage .strategy-rules-details{padding:14px}
  #swingPage .picker-head,
  #fundPage .fund-market-head{flex-direction:column;align-items:stretch}
  #swingPage #swingRefreshBtn,
  #fundPage #fundRefreshBtn{width:100%}
}
@media(max-width:559px){
  #dashboardPage .dashboard-intraday-segment{grid-template-columns:1fr}
}
