/*
 * JEEResult Child Theme — assets/css/responsive.css
 *
 * Mobile-first breakpoints:
 *   sm  ≥ 480px
 *   md  ≥ 768px
 *   lg  ≥ 1024px
 *   xl  ≥ 1200px
 */

/* ══════════════════════════════════════
   BASE  (all widths — mobile first)
   ══════════════════════════════════════ */

/* Single-column page layout by default */
.jee-page-layout {
  grid-template-columns: 1fr;
}

/* Header: hide desktop search, show mobile controls */
.jee-header__search          { display: none; }
.jee-header__mobile-controls { display: flex; }

/* Nav: hidden on mobile, toggled via JS */
.jee-nav { display: none; }
.jee-nav.is-open { display: block; }
.jee-nav__menu {
  flex-direction: column;
}
.jee-nav__menu > li > a { padding: 12px 20px; }
.jee-nav__menu li ul {
  position: static;
  box-shadow: none;
  border-top: none;
  border-left: 3px solid rgba(255,255,255,.15);
  margin-left: 20px;
  display: none;
}
.jee-nav__menu li.is-open > ul { display: block; }

/* Hero tiles: 2 columns */
.jee-hero__tiles { grid-template-columns: repeat(2, 1fr); }

/* Updates grid: single column */
.jee-updates-grid { grid-template-columns: 1fr; }

/* Results / news grids: single column */
.jee-results-grid,
.jee-news-grid,
.jee-archive-grid--cpt,
.jee-archive-grid--posts { grid-template-columns: 1fr; }

/* Counselling cols: stack */
.jee-counselling-cols { grid-template-columns: 1fr; }

/* Predictor cards: stack */
.jee-predictor-cards { grid-template-columns: 1fr; }

/* Footer widget grid: 2 columns → single */
.jee-footer__widgets-grid { grid-template-columns: repeat(2, 1fr); }

/* Stats grid: 2×2 */
.jee-stats-grid { grid-template-columns: repeat(2, 1fr); }

/* Footer bottom: stack */
.jee-footer__bottom-inner { flex-direction: column; align-items: flex-start; }
.jee-footer__copyright { text-align: left; margin-left: 0; }

/* Tool form rows: single col */
.jee-form-row,
.jee-form-row--3 { grid-template-columns: 1fr; }

/* Result card in tool: stacked */
.jee-result-card { flex-direction: column; text-align: center; }

/* How steps: single column */
.jee-how-steps { grid-template-columns: 1fr; }

/* Papers grid: 2 cols */
.jee-papers-grid { grid-template-columns: repeat(2, 1fr); }

/* Ticker: clamp height */
.jee-ticker-bar { height: 34px; font-size: .8rem; }
.jee-ticker-label { font-size: .65rem; padding: 0 10px; }

/* Notification bar: smaller */
.jee-notification-bar { font-size: .8rem; }

/* Post nav: stack */
.jee-post-nav .nav-links { flex-direction: column; }

/* Author box: stack */
.jee-author-box { flex-direction: column; }

/* Hero actions: stack */
.jee-hero__actions { flex-direction: column; align-items: flex-start; }

/* Sidebar: not sticky on mobile */
.jee-sidebar {
  position: static;
  max-height: none;
  overflow-y: visible;
}

/* Breadcrumbs: smaller */
.jee-breadcrumb-list { font-size: .75rem; }

/* ══════════════════════════════════════
   sm  ≥ 480px
   ══════════════════════════════════════ */
@media (min-width: 480px) {

  .jee-hero__tiles { grid-template-columns: repeat(4, 1fr); }

  .jee-papers-grid { grid-template-columns: repeat(2, 1fr); }

  .jee-hero__actions {
    flex-direction: row;
    flex-wrap: wrap;
  }

  .jee-form-row--3 { grid-template-columns: 1fr 1fr; }
}

/* ══════════════════════════════════════
   md  ≥ 768px
   ══════════════════════════════════════ */
@media (min-width: 768px) {

  /* Header: show desktop search, hide mobile controls */
  .jee-header__search          { display: flex; }
  .jee-header__mobile-controls { display: none; }

  /* Nav: always visible, reset to horizontal */
  .jee-nav         { display: block; }
  .jee-nav__menu   { flex-direction: row; }
  .jee-nav__menu li ul {
    position: absolute;
    box-shadow: var(--shadow-lg);
    border-top: 2px solid var(--jee-accent);
    border-left: none;
    margin-left: 0;
  }

  /* Updates grid: restore two-col */
  .jee-updates-grid { grid-template-columns: 1fr 300px; }

  /* Results / news: 2 cols */
  .jee-results-grid        { grid-template-columns: repeat(2, 1fr); }
  .jee-news-grid           { grid-template-columns: repeat(2, 1fr); }
  .jee-archive-grid--cpt   { grid-template-columns: repeat(2, 1fr); }
  .jee-archive-grid--posts { grid-template-columns: repeat(2, 1fr); }

  /* Counselling: 2 cols */
  .jee-counselling-cols { grid-template-columns: 1fr 1fr; }

  /* Predictors: 2 cols */
  .jee-predictor-cards { grid-template-columns: 1fr 1fr; }

  /* Footer: 2 cols */
  .jee-footer__widgets-grid { grid-template-columns: repeat(2, 1fr); }

  /* Stats: 4 cols */
  .jee-stats-grid { grid-template-columns: repeat(4, 1fr); }

  /* Papers: 3 cols */
  .jee-papers-grid { grid-template-columns: repeat(3, 1fr); }

  /* Form row */
  .jee-form-row   { grid-template-columns: 1fr 1fr; }
  .jee-form-row--3{ grid-template-columns: 1fr 1fr 1fr; }

  /* Result card: horizontal */
  .jee-result-card { flex-direction: row; text-align: left; }

  /* How steps: 3 cols */
  .jee-how-steps { grid-template-columns: repeat(3, 1fr); }

  /* Post nav: horizontal */
  .jee-post-nav .nav-links { flex-direction: row; }

  /* Author box: horizontal */
  .jee-author-box { flex-direction: row; }

  /* Footer bottom: horizontal */
  .jee-footer__bottom-inner { flex-direction: row; align-items: center; }
  .jee-footer__copyright { text-align: right; margin-left: auto; }
}

/* ══════════════════════════════════════
   lg  ≥ 1024px
   ══════════════════════════════════════ */
@media (min-width: 1024px) {

  /* Restore page layout with sidebar */
  .jee-page-layout {
    grid-template-columns: 1fr 300px;
  }

  /* Sidebar sticky */
  .jee-sidebar {
    position: sticky;
    top: calc(var(--header-h) + var(--nav-h) + 1rem);
    max-height: calc(100vh - var(--header-h) - var(--nav-h) - 2rem);
    overflow-y: auto;
  }

  /* 3-column grids */
  .jee-results-grid        { grid-template-columns: repeat(3, 1fr); }
  .jee-news-grid           { grid-template-columns: repeat(3, 1fr); }
  .jee-archive-grid--cpt   { grid-template-columns: repeat(3, 1fr); }
  .jee-archive-grid--posts { grid-template-columns: repeat(3, 1fr); }

  /* 4-col footer */
  .jee-footer__widgets-grid { grid-template-columns: repeat(4, 1fr); }

  /* Hero tiles: 8 across */
  .jee-hero__tiles { grid-template-columns: repeat(8, 1fr); }

  /* Papers: 4 cols */
  .jee-papers-grid { grid-template-columns: repeat(4, 1fr); }
}

/* ══════════════════════════════════════
   xl  ≥ 1200px
   ══════════════════════════════════════ */
@media (min-width: 1200px) {
  .jee-page-layout { grid-template-columns: 1fr 320px; }
}

/* ══════════════════════════════════════
   PRINT
   ══════════════════════════════════════ */
@media print {
  .jee-header,
  .jee-nav,
  .jee-ticker-bar,
  .jee-notification-bar,
  .jee-sidebar,
  .jee-footer,
  .jee-ad-area,
  .jee-hero__actions,
  .jee-tools-cta-bar,
  .jee-section--predictors { display: none !important; }

  .jee-page-layout { grid-template-columns: 1fr; }

  body { font-size: 12pt; color: #000; }
  a    { color: #000; text-decoration: underline; }
  .jee-article__title { font-size: 18pt; }
}

/* ══════════════════════════════════════
   ACCESSIBILITY: Reduced Motion
   ══════════════════════════════════════ */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }

  .jee-ticker-track { animation: none; }
}

/* ══════════════════════════════════════
   HIGH CONTRAST
   ══════════════════════════════════════ */
@media (forced-colors: active) {
  .jee-btn,
  .jee-badge,
  .jee-result-card,
  .jee-tool-container { border: 2px solid ButtonText; }

  .jee-nav__menu > li > a { border-bottom: 1px solid ButtonText; }
}
