/* ========== Algemene reset / basisstijl ========== */
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

/* Basisstijl voor html en body */
html, body {
  height: 100%;
  background-color: #000;
  font-family: 'Cinzel', serif;
  font-size: 15px;
  color: #FF0000;
}

/* =========== Container voor hele pagina ========== */
.container {
  display: grid;
  grid-template-rows: 51px 1fr 39px;
  grid-template-columns: 21px 1fr 21px;
  height: 100vh;
  overflow: hidden;
  transition: grid-template-columns 0.3s ease;
}

/* =============== Bovenbalk (header) ============== */
.top {
  position: sticky;
  grid-column: 1 / 4;           /* Colspan van 1 t/m 4 */
  grid-row: 1 / 2;              /* Bovenste rij */
  background-color: #000;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* ================== Mid sectie =================== */
                 /* Sidebar (left) */
.left {
  position: fixed;
  top: 51px;                    /* hoogte van header, toevoeging */
  bottom: 39px;                 /* hoogte van footer, toevoeging */
  left: 0;                      /* ook aanpassing */
  width: 21px;
  background-color: #000;
  overflow: hidden;             /* voorkomt scrollbar */
  transition: width 0.3s ease;
  z-index: 10;                  /* zorgt dat het boven content ligt */
}

.container.expanded .left {
  position: absolute;           /* Verlaat grid en zweeft boven content */
  width: 133px;
  top: 51px;                    /* net onder de topbar */
  height: calc(100vh - 51px - 39px); /* hoogte minus header en footer */
  overflow: hidden;
  box-shadow: 2px 0 5px rgba(0,0,0,0.7); /* optioneel, geeft schaduw */
}

.content {
  grid-column: 2 / 3;           /* Middelste column */
  grid-row: 2 / 3;              /* Middelste rij */
  z-index: 1;                   /* onder .left */
  min-height: 0;                /* 🚀 cruciaal voor scrollen in grid */
  color: #333;
  display: flex;                /* als je flex of block wilt binnenin */
  flex-direction: column;
  height: 100%;
  overflow: hidden;             /* NIET scrollen hier, dat gebeurt binnenin! */
  margin-left: 0;               /* content blijft op z'n plek */
  position: relative;           /* indien je later iets wil positioneren */
}

.content iframe {
  width: auto;
  height: auto;
  border: none;
  display: block;
}

/* ================== Rechterkolom ================= */
.right {
  position: sticky;
  grid-column: 3 / 4;           /* Rechter column */
  grid-row: 2 / 3;              /* Middelste rij */
  background-color: #000;
}

/* =============== Onderbalk (footer) ============== */
.bottom {
  position: sticky;
  grid-column: 1 / 4;           /* Colspan van 1 t/m 4 */
  grid-row: 3 / 4;              /* Onderste rij */
  border: none;
  background-color: #000;
}

.top iframe, .bottom iframe {
  width: 100%;
  height: 100%;
  display: block;
}