/* ============================================================
   V7 LAYOUT — üst bar + kenar menü + karo içerik + "Bu sayfada"
   ============================================================ */

.topbar {
  position: sticky;
  top: 0;
  z-index: 40;
  display: flex;
  align-items: center;
  gap: var(--space-4);
  height: 62px;
  padding: 0 var(--space-6);
  background: rgba(243, 246, 254, 0.88);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--line);
}

.content {
  display: grid;
  grid-template-columns: minmax(0, 1fr) var(--toc-w);
  gap: var(--space-10);
  max-width: 1320px;
  margin: 0 auto;
  padding: var(--space-10) var(--space-8) var(--space-8);
  align-items: start;
}

.article {
  max-width: 880px;
  width: 100%;
  min-width: 0;
  margin-inline: auto;
}

/* Başlangıç karoları için geniş sütun */
.article--wide {
  max-width: 1060px;
}

.toc {
  position: sticky;
  top: calc(62px + var(--space-8));
  max-height: calc(100vh - 120px);
  overflow-y: auto;
}

/* Bento ızgarası: 4 kolon → 2 → 1 */
.bento {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-auto-rows: minmax(148px, auto);
  gap: var(--space-4);
}

.span-2x2 { grid-column: span 2; grid-row: span 2; }
.span-2x1 { grid-column: span 2; }
.span-1x2 { grid-row: span 2; }

@media (max-width: 1279px) {
  .bento {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 600px) {
  .bento {
    grid-template-columns: minmax(0, 1fr);
  }

  .span-2x2,
  .span-2x1 {
    grid-column: auto;
  }

  .span-2x2,
  .span-1x2 {
    grid-row: auto;
  }
}

.section {
  margin-top: var(--space-16);
}

.footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--space-4);
  flex-wrap: wrap;
  margin-top: var(--space-16);
  padding-top: var(--space-5);
  border-top: 1px solid var(--line);
  font-size: var(--text-sm);
  color: var(--text-muted);
}

@media (max-width: 1359px) {
  .content {
    grid-template-columns: minmax(0, 1fr);
  }

  .toc {
    display: none;
  }
}

@media (max-width: 1023px) {
  .content {
    padding: var(--space-6) var(--space-5) var(--space-6);
  }
}

@media (max-width: 767px) {
  .topbar {
    padding: 0 var(--space-4);
  }

  .content {
    padding: var(--space-5) var(--space-4);
  }
}
