:root {
  --cmc-shell-ust-satir: calc(var(--cmc-shell-ust-boyut, 44px) + env(safe-area-inset-top, 0px));
}

.cmc-shell {
  --cmc-shell-ust-satir: calc(var(--cmc-shell-ust-boyut) + env(safe-area-inset-top, 0px));
  display: grid;
  grid-template-columns: var(--cmc-kenar-sol-boyut, 0) 1fr;
  grid-template-rows: var(--cmc-shell-ust-satir) 1fr;
  height: 100dvh;
  overflow: hidden;
  background: var(--cmc-yuzey-zemin);
}

  .cmc-shell--menu-sol { --cmc-kenar-sol-boyut: var(--cmc-menu-acik-genislik); }
  .cmc-shell--menu-sol-ikon { --cmc-kenar-sol-boyut: var(--cmc-menu-ikon-genislik); }
  .cmc-shell--menu-gizli { --cmc-kenar-sol-boyut: 0; }

/* ── Menü yerleşimi (sol/sag/ust/alt) × modu (acik/ikon/gizli) ── */
#cmc-shell[data-cmc-menu-gorunum="acik"] {
  --cmc-menu-boyut: var(--cmc-menu-acik-genislik);
  --cmc-menu-yatay: var(--cmc-menu-yatay-acik);
}
#cmc-shell[data-cmc-menu-gorunum="ikon"] {
  --cmc-menu-boyut: var(--cmc-menu-ikon-genislik);
  --cmc-menu-yatay: var(--cmc-menu-yatay-ikon);
}
#cmc-shell[data-cmc-menu-gorunum="gizli"] {
  --cmc-menu-boyut: 0;
  --cmc-menu-yatay: 0;
}

/* Tam gizli — kenar tamamen kaldırılır */
#cmc-shell[data-cmc-menu-gorunum="gizli"]:not(.cmc-shell--oturum-kapali) .cmc-shell__kenar {
  display: none !important;
}

#cmc-shell[data-cmc-menu-gorunum="gizli"].cmc-shell--menu-gecici-acik .cmc-shell__kenar[hidden] {
  display: none !important;
}

@media (min-width: 768px) {
  /* SOL (varsayılan) */
  #cmc-shell[data-cmc-menu-yer="sol"]:not(.cmc-shell--oturum-kapali) {
    grid-template-columns: var(--cmc-menu-boyut) 1fr;
    grid-template-rows: var(--cmc-shell-ust-satir) 1fr auto;
  }
  #cmc-shell[data-cmc-menu-yer="sol"]:not(.cmc-shell--oturum-kapali) .cmc-shell__kenar { grid-row: 2 / -1; grid-column: 1; }
  #cmc-shell[data-cmc-menu-yer="sol"]:not(.cmc-shell--oturum-kapali) .cmc-shell__govde { grid-row: 2; grid-column: 2; }
  #cmc-shell[data-cmc-menu-yer="sol"]:not(.cmc-shell--oturum-kapali) .cmc-kabuk-footer { grid-row: 3; grid-column: 2; }

  /* SAĞ */
  #cmc-shell[data-cmc-menu-yer="sag"]:not(.cmc-shell--oturum-kapali) {
    grid-template-columns: 1fr var(--cmc-menu-boyut);
    grid-template-rows: var(--cmc-shell-ust-satir) 1fr auto;
  }
  #cmc-shell[data-cmc-menu-yer="sag"]:not(.cmc-shell--oturum-kapali) .cmc-shell__kenar { grid-row: 2 / -1; grid-column: 2; }
  #cmc-shell[data-cmc-menu-yer="sag"]:not(.cmc-shell--oturum-kapali) .cmc-shell__govde { grid-row: 2; grid-column: 1; }
  #cmc-shell[data-cmc-menu-yer="sag"]:not(.cmc-shell--oturum-kapali) .cmc-kabuk-footer { grid-row: 3; grid-column: 1; }
  #cmc-shell[data-cmc-menu-yer="sag"] .cmc-menu { border-right: 0; border-left: 1px solid var(--cmc-kenar); }

  /* ÜST (yatay menü, başlığın altında) */
  #cmc-shell[data-cmc-menu-yer="ust"]:not(.cmc-shell--oturum-kapali) {
    grid-template-columns: 1fr;
    grid-template-rows: var(--cmc-shell-ust-satir) var(--cmc-menu-yatay) 1fr auto;
  }

  #cmc-shell[data-cmc-menu-yer="ust"]:not(.cmc-shell--oturum-kapali) .cmc-shell__kenar { grid-row: 2; grid-column: 1; }
  #cmc-shell[data-cmc-menu-yer="ust"]:not(.cmc-shell--oturum-kapali) .cmc-shell__govde { grid-row: 3; grid-column: 1; }
  #cmc-shell[data-cmc-menu-yer="ust"]:not(.cmc-shell--oturum-kapali) .cmc-kabuk-footer { grid-row: 4; grid-column: 1; }

  /* ALT (yatay menü, en altta) — içerik | menü | footer */
  #cmc-shell[data-cmc-menu-yer="alt"]:not(.cmc-shell--oturum-kapali) {
    grid-template-columns: 1fr;
    grid-template-rows: var(--cmc-shell-ust-satir) 1fr var(--cmc-menu-yatay) auto;
  }
  #cmc-shell[data-cmc-menu-yer="alt"]:not(.cmc-shell--oturum-kapali) .cmc-shell__kenar { grid-row: 3; grid-column: 1; }
  #cmc-shell[data-cmc-menu-yer="alt"]:not(.cmc-shell--oturum-kapali) .cmc-shell__govde { grid-row: 2; grid-column: 1; }
  #cmc-shell[data-cmc-menu-yer="alt"]:not(.cmc-shell--oturum-kapali) .cmc-kabuk-footer {
    grid-row: 4;
    grid-column: 1;
    border-top: 1px solid var(--cmc-kenar);
  }

  /*
   * Menü kenarı — flyout içeriğin üstünde kalsın.
   * DOM'da .cmc-shell__govde kenardan sonra; sticky liste başlığı (z-index:2)
   * aksi halde sağ/sol flyout'un üstüne biner.
   */
  #cmc-shell[data-cmc-menu-yer="sol"]:not(.cmc-shell--oturum-kapali) .cmc-shell__kenar,
  #cmc-shell[data-cmc-menu-yer="sag"]:not(.cmc-shell--oturum-kapali) .cmc-shell__kenar,
  #cmc-shell[data-cmc-menu-yer="ust"]:not(.cmc-shell--oturum-kapali) .cmc-shell__kenar,
  #cmc-shell[data-cmc-menu-yer="alt"]:not(.cmc-shell--oturum-kapali) .cmc-shell__kenar {
    position: relative;
    z-index: calc(var(--cmc-z-menu) + 10);
    isolation: isolate;
  }

  #cmc-shell[data-cmc-menu-yer="sol"]:not(.cmc-shell--oturum-kapali) .cmc-shell__govde,
  #cmc-shell[data-cmc-menu-yer="sag"]:not(.cmc-shell--oturum-kapali) .cmc-shell__govde,
  #cmc-shell[data-cmc-menu-yer="ust"]:not(.cmc-shell--oturum-kapali) .cmc-shell__govde,
  #cmc-shell[data-cmc-menu-yer="alt"]:not(.cmc-shell--oturum-kapali) .cmc-shell__govde {
    position: relative;
    z-index: 1;
  }
}

.cmc-kabuk-ust {
  grid-column: 1 / -1;
  grid-row: 1;
  width: 100%;
  min-width: 0;
}

.cmc-shell__kenar--sol {
  grid-row: 2;
  grid-column: 1;
  overflow: hidden;
  min-height: 0;
}

@media (min-width: 768px) {
  #cmc-shell:not(.cmc-shell--oturum-kapali) .cmc-shell__kenar {
    overflow: visible;
  }
}

.cmc-shell__govde {
  grid-row: 2;
  grid-column: 2;
  display: grid;
  grid-template-rows: auto 1fr;
  width: 100%;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
}

@media (max-width: 767px) {
  .cmc-shell {
    grid-template-columns: 1fr;
    grid-template-rows: var(--cmc-shell-ust-satir) 1fr auto;
  }

  #cmc-shell:not(.cmc-shell--oturum-kapali) .cmc-kabuk-footer {
    grid-row: 3;
    grid-column: 1;
  }

  .cmc-shell__kenar--sol { display: none; }
  .cmc-shell__govde {
    grid-column: 1;
    grid-row: 2;
    grid-template-rows: auto 1fr;
    min-height: 0;
  }
}

.cmc-shell:not(.cmc-shell--oturum-kapali) [data-cmc-giris-sablon] {
  display: none !important;
}

html.cmc-oturum-bekleniyor #cmc-merkez-ic {
  display: none !important;
}

html.cmc-oturum-bekleniyor .cmc-shell--oturum-kapali {
  --cmc-kenar-sol-boyut: var(--cmc-menu-acik-genislik);
  grid-template-columns: var(--cmc-kenar-sol-boyut) 1fr;
  grid-template-rows: var(--cmc-shell-ust-satir) 1fr;
}

html.cmc-oturum-bekleniyor .cmc-shell--oturum-kapali .cmc-kabuk-ust,
html.cmc-oturum-bekleniyor .cmc-shell--oturum-kapali .cmc-shell__kenar--sol:not(.cmc-shell__kenar--gelistirici) {
  display: flex !important;
}

html.cmc-oturum-bekleniyor .cmc-shell--oturum-kapali .cmc-shell__kenar--sol:not(.cmc-shell__kenar--gelistirici) {
  display: block !important;
}

html.cmc-oturum-bekleniyor .cmc-shell--oturum-kapali .cmc-shell__govde {
  grid-column: 2;
  grid-row: 2;
  grid-template-rows: 1fr;
}

html.cmc-oturum-bekleniyor .cmc-shell--oturum-kapali .cmc-merkez {
  display: block;
  min-height: auto;
  padding: 0;
}

@media (max-width: 767px) {
  html.cmc-oturum-bekleniyor .cmc-shell--oturum-kapali {
    grid-template-columns: 1fr;
    grid-template-rows: var(--cmc-shell-ust-satir) 1fr;
  }

  html.cmc-oturum-bekleniyor .cmc-shell--oturum-kapali .cmc-shell__kenar--sol {
    display: none !important;
  }

  html.cmc-oturum-bekleniyor .cmc-shell--oturum-kapali .cmc-shell__govde {
    grid-column: 1;
    grid-row: 2;
  }
}

/* Oturum kapalı — yalnızca giriş formu */
.cmc-shell--oturum-kapali {
  --cmc-kenar-sol-boyut: 0;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
}

.cmc-shell--oturum-kapali .cmc-shell__kenar--sol,
.cmc-shell--oturum-kapali .cmc-kabuk-ust,
.cmc-shell--oturum-kapali .cmc-kabuk-footer,
.cmc-shell--oturum-kapali .cmc-gelistirici-bant {
  display: none !important;
}

.cmc-shell--oturum-kapali .cmc-shell__govde {
  grid-column: 1;
  grid-row: 1;
  grid-template-rows: 1fr;
}

.cmc-shell--oturum-kapali .cmc-merkez {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100dvh;
  padding: var(--cmc-space-4);
}

.cmc-shell--oturum-kapali .cmc-merkez__ic {
  width: 100%;
}

/* Panel ayrımı */
.cmc-shell--panel-kullanici .cmc-shell__kenar--gelistirici,
.cmc-shell--panel-kullanici .cmc-shell__kenar--sistem,
.cmc-shell--panel-gelistirici .cmc-shell__kenar--sistem,
.cmc-shell--panel-sistem #cmc-menu-kullanici-wrap,
.cmc-shell--panel-sistem .cmc-shell__kenar--gelistirici {
  display: none !important;
}

.cmc-shell--panel-gelistirici #cmc-menu-kullanici-wrap {
  display: none !important;
}

.cmc-shell--panel-gelistirici .cmc-shell__kenar--gelistirici {
  display: block;
}

.cmc-shell--panel-gelistirici .cmc-kabuk-ust__marka::after {
  content: ' · Dev';
  font-size: var(--cmc-font-xs);
  color: var(--cmc-accent);
  font-weight: 500;
}

@media (min-width: 768px) {
  .cmc-shell--menu-sol:not(.cmc-shell--oturum-kapali) { --cmc-kenar-sol-boyut: var(--cmc-menu-acik-genislik); }
  .cmc-shell--panel-gelistirici:not(.cmc-shell--oturum-kapali) .cmc-shell__kenar--gelistirici,
  .cmc-shell--panel-sistem:not(.cmc-shell--oturum-kapali) .cmc-shell__kenar--sistem {
    display: block;
  }
  .cmc-shell--panel-kullanici:not(.cmc-shell--oturum-kapali) .cmc-shell__kenar--sol:not(.cmc-shell__kenar--gelistirici):not(.cmc-shell__kenar--sistem) {
    display: block;
  }
}
