.shell,
.content,
.hero-grid > *,
.columns > *,
.news-card > * {
  min-width: 0;
}

.shell { width: 100%; }
.shell .nav { flex-wrap: wrap; overflow: visible; }

.stadium-photo-link { display: block; width: 100%; height: 100%; line-height: 0; cursor: zoom-in; }
.stadium-photo-link:focus-visible { outline: 3px solid #00fe86; outline-offset: -3px; }
html.stadium-lightbox-open { overflow: hidden; }
.stadium-lightbox {
  width: min(1100px, calc(100% - 24px));
  max-width: none;
  max-height: calc(100dvh - 24px);
  padding: 0;
  margin: auto;
  border: 0;
  background: #17051d;
  color: #fff;
}
.stadium-lightbox::backdrop { background: rgba(0, 0, 0, .85); }
.stadium-lightbox figure { margin: 0; }
.stadium-lightbox img { display: block; width: 100%; height: auto; max-height: calc(100dvh - 100px); object-fit: contain; }
.stadium-lightbox figcaption { padding: 12px 52px; font-size: 13px; line-height: 1.4; text-align: center; overflow-wrap: anywhere; }
.stadium-lightbox-close {
  position: absolute;
  top: 8px;
  right: 8px;
  z-index: 1;
  width: 42px;
  height: 42px;
  padding: 0;
  border: 1px solid #fff;
  background: #37003c;
  color: #fff;
  font: 30px/1 Arial, sans-serif;
  cursor: pointer;
}
.stadium-lightbox-close:focus-visible { outline: 3px solid #00fe86; outline-offset: 2px; }

.side-item { padding: 0; font-weight: normal; }
.side-item .hero-copy { width: 100%; padding: 13px; }
.side-item h2 { margin: 7px 0; color: #fff; font-size: 20px; line-height: 1.1; }
.side-item .report-card-excerpt {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
  margin: 0;
  font-size: 13px;
  line-height: 1.45;
  font-weight: normal;
}
.hero-grid-two .side-item .hero-copy { padding: 18px; }
.hero-grid-two .side-item h2 { font-size: 27px; }
.hero-grid-two .side-item .report-card-excerpt { display: block; font-size: 14px; }

.top-scorer .eyebrow {
  display: inline-block;
  max-width: 100%;
  padding: 5px 7px;
  margin-bottom: 3px;
  background: #37003c;
  color: #00fe86;
  font-size: 9px;
  line-height: 1.45;
  letter-spacing: .5px;
}
.differential-info {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px 7px;
  min-width: 0;
}
.differential-info strong { color: #37003c; font-size: 13px; overflow-wrap: anywhere; }
.differential-club {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: #625b65;
  font-size: 10px;
  white-space: nowrap;
}
.differential-club img { display: block; width: 18px; height: 18px; object-fit: contain; }

@media (max-width: 760px) {
  .shell .mast {
    height: auto;
    min-height: 80px;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    gap: 8px;
    padding: 12px 14px;
  }
  .shell .mast > * { min-width: 0; }
  .shell .brand { font-size: 23px; white-space: nowrap; }
  .shell .header-logo img { width: 110px; }
  .shell .meta { font-size: 9px; line-height: 1.45; }

  .shell .nav {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    padding: 0;
  }
  .shell .nav a,
  .shell .nav a.active,
  .shell .nav a:hover {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    min-height: 46px;
    padding: 10px 5px;
    font-size: 12px;
    line-height: 1.3;
    white-space: normal;
    text-align: center;
    border-bottom: 3px solid transparent;
  }
  .shell .nav a.active,
  .shell .nav a:hover { border-bottom-color: var(--green); }

  .shell .deadline-bar {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 7px 10px !important;
    padding: 12px 14px !important;
  }
  .shell .deadline-bar > strong {
    grid-column: 1 / -1;
    font-size: 14px !important;
    line-height: 1.35;
  }
  .shell #deadline-clock { font-size: 20px !important; }
  .shell .deadline-bar > small { font-size: 10px; text-align: right; }

  .shell .hero-grid,
  .shell .columns { grid-template-columns: minmax(0, 1fr); }
  .shell .hero { height: auto; min-height: 250px; }
  .shell .hero-copy { padding: 16px; overflow-wrap: anywhere; }
  .shell .hero h1 { font-size: 25px; line-height: 1.15; }
  .shell .hero-grid-two .side-item h2 { font-size: 25px; line-height: 1.15; }
  .shell .hero p { font-size: 13px; }
  .shell .side-news { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .shell .side-item { min-width: 0; overflow-wrap: anywhere; }
  .shell .section-title { font-size: 12px; line-height: 1.5; }
  .shell .section-title:after { min-width: 18px; }
  .shell .popular > div,
  .shell .top-scorer > div { min-width: 0; overflow-wrap: anywhere; }
  .shell .top-scorer { gap: 9px; }
  .shell .top-scorer small { line-height: 1.55; }

  .shell #tabela table { table-layout: fixed; font-size: 12px; }
  .shell #tabela th,
  .shell #tabela td { padding: 9px 5px; overflow-wrap: anywhere; }
  .shell #tabela th:first-child { width: 24px; }
  .shell #tabela th:nth-child(3) { width: 58px; }
  .shell #tabela th:last-child { width: 57px; }
  .shell #tabela td { line-height: 1.4; }
  .shell .report-archive { padding: 13px; line-height: 1.5; }
  .shell .report-archive a { width: 100%; text-align: center; font-size: 11px; }
  .shell .news-text { min-width: 0; overflow-wrap: anywhere; }
  .shell .news-text b { line-height: 1.3; }
  .shell .fixture { grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); }
  .shell .club { font-size: 12px; gap: 5px; }
  .shell .round-select { min-height: 40px; max-width: 100%; }
  .shell .foot { flex-wrap: wrap; gap: 12px; padding: 17px 14px; }

  .shell .article-page,
  .shell .article-content { min-width: 0; }
  .shell .article-header h1 { overflow-wrap: anywhere; }
  .shell .article-deck,
  .shell .article-body { overflow-wrap: anywhere; }
  .shell .article-body blockquote.article-bar-green,
  .shell .article-body blockquote.article-bar-purple { padding: 12px; font-size: 16px; }
  .shell .report-promo { grid-template-columns: repeat(2, minmax(0, 1fr)); }

  .shell .stadium-grid { grid-template-columns: minmax(0, 1fr) !important; }
  .shell .stadium-card { min-width: 0; }
  .shell .stadium-card > div { min-width: 0; overflow-wrap: anywhere; }

  .shell .stats-dashboard .sd-grid { grid-template-columns: minmax(0, 1fr); }
  .shell .stats-dashboard .sd-grid > .sd-card { grid-column: 1 / -1; }
  .shell .stats-dashboard .sd-kpis { grid-template-columns: minmax(0, 1fr); }
  .shell .stats-dashboard .sd-kpis .sd-kpi:last-child { grid-column: auto; }
  .shell .stats-dashboard .sd-intro { padding: 20px; }
  .shell .stats-dashboard .sd-intro p { font-size: 12px; line-height: 1.6; }
  .shell .stats-dashboard .sd-kpi strong { font-size: 22px; }
  .shell .stats-dashboard .sd-card-head { flex-wrap: wrap; }
  .shell .stats-dashboard .sd-card-head > div { flex: 1 1 170px; min-width: 0; }
  .shell .stats-dashboard .sd-card-head p { line-height: 1.5; }
  .shell .stats-dashboard .sd-tag { max-width: 100%; white-space: normal; }
  .shell .stats-dashboard .sd-legend { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .shell .stats-dashboard .sd-legend span { white-space: normal; overflow-wrap: anywhere; }
  .shell .stats-dashboard .sd-records { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 520px) {
  .shell .mast { grid-template-columns: minmax(0, 1fr) auto; gap: 8px; }
  .shell .header-logo { justify-self: end; }
  .shell .header-logo img { width: 120px; }
  .shell .meta { grid-column: 1 / -1; justify-self: center; text-align: center; }
  .shell .meta br { display: none; }
  .shell .meta { word-spacing: 1px; }
  .shell .nav a { font-size: clamp(10px, 2.9vw, 12px); }
  .shell .popular-pair .popular { flex-direction: column; align-items: flex-start; }
  .shell .popular-pair .popular img { width: 50px; height: 60px; flex: 0 0 60px; }
  .shell .popular-pair .popular .eyebrow { font-size: 9px; letter-spacing: .4px; line-height: 1.5; }
  .shell .popular-pair .popular b { font-size: 16px; }
  .shell .popular-pair .popular small { font-size: 11px; line-height: 1.5; }
  .shell .differentials-grid { grid-template-columns: minmax(0, 1fr) !important; }
  .shell .side-news { grid-template-columns: minmax(0, 1fr); }
  .shell .side-item { min-height: 150px; }
  .shell .stadium-card { grid-template-columns: minmax(0, 1fr) !important; gap: 12px !important; }
  .shell .stadium-card > div:first-child { aspect-ratio: 4 / 3; min-height: 0 !important; }
  .shell .stadium-card img { height: 100% !important; min-height: 0 !important; }
  .shell .article-layout { padding: 0 10px 20px; }
  .shell .article-header h1 { font-size: 27px; }
  .shell .article-body { font-size: 16px; }
  .shell .article-meta { gap: 7px; font-size: 11px; }
  .shell .article-sidebar-card { padding: 11px; }

  .shell .stats-dashboard .sd-donut-layout { grid-template-columns: minmax(0, 1fr); }
  .shell .stats-dashboard .sd-key { grid-template-columns: minmax(0, 1fr); }
  .shell .stats-dashboard .sd-key-row { font-size: 11px; }
  .shell .stats-dashboard .sd-form-table { min-width: 0; border-spacing: 2px; }
  .shell .stats-dashboard .sd-form-table th,
  .shell .stats-dashboard .sd-form-table td { padding: 8px 1px; font-size: 9px; }
  .shell .stats-dashboard .sd-form-table th:first-child { width: 83px; font-size: 9px; }
  .shell .stats-dashboard .sd-manager-dot { width: 5px; height: 5px; margin-right: 3px; }
  .shell .stats-dashboard .sd-columns { min-width: 0; gap: 3px; }
  .shell .stats-dashboard .sd-column-plot { height: 165px; }
  .shell .stats-dashboard .sd-column-label { font-size: 8px; line-height: 1.4; }
  .shell .stats-dashboard .sd-column-bar b { font-size: 10px; }
  .shell .stats-dashboard .sd-bar-row { grid-template-columns: minmax(85px, 1fr) minmax(40px, 1.25fr) 35px; gap: 7px; }
  .shell .stats-dashboard .sd-bar-name { white-space: normal; overflow-wrap: anywhere; font-size: 10px; }
}

@media (max-width: 360px) {
  .shell .content { padding: 8px; }
  .shell .panel { padding: 10px; }
  .shell .hero-copy { padding: 13px; }
  .shell .hero h1 { font-size: 23px; }
  .shell .stats-dashboard .sd-records { grid-template-columns: minmax(0, 1fr); }
}
