/* nova-build 260830live16 — lobi yükleme: oda plazası yüklenme bitene kadar kilitli */
/* Ana ekranı yalnız yükleme örtüsünde gizle — land-flow ile gizleme Çık’ta mavi boşluk bırakır */
body.ndep-loadwait-on #main-screen,
body.nova-macera-wait-cover #main-screen {
  display: none !important;
  visibility: hidden !important;
}

/* Yükleme sırasında html/body mavi void olmasın */
html.ndep-loadwait-on,
body.ndep-loadwait-on,
html.nova-duel-land-flow.ndep-loadwait-on,
body.nova-duel-land-flow.ndep-loadwait-on {
  background: #070b14 !important;
}

/* Epic plaza — yükleme boyunca her zaman üstte ve görünür */
body.ndep-loadwait-on #nova-duel-epic-root,
body.ndep-loadwait-on #nova-duel-epic-root.ndep-open {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  z-index: 2147483646 !important;
}
body.ndep-loadwait-on #nova-duel-search-phase.ndep-active {
  display: flex !important;
  visibility: visible !important;
}

/* Oyun arkada yüklensin ama kullanıcı görmesin — tam ekran mavi/perde flaşı yok */
body.ndep-loadwait-on #birles-magara-overlay.is-open,
body.ndep-loadwait-on #birles-tepe-overlay.is-open {
  opacity: 0 !important;
  pointer-events: none !important;
  transition: opacity 0.35s ease;
}
body:not(.ndep-loadwait-on) #birles-magara-overlay.is-open,
body:not(.ndep-loadwait-on) #birles-tepe-overlay.is-open {
  opacity: 1 !important;
  transition: opacity 0.35s ease;
}

/* 145 CSS land-flow gizlemesini çıkışta ve ana ekranda ez */
body.nova-leaving-immersive #main-screen,
html.nova-leaving-immersive #main-screen,
body.nova-leaving-immersive.nova-duel-land-flow #main-screen,
body.nova-leaving-immersive.nova-duel-epic-active #main-screen,
body.nova-leaving-immersive.birles-magara-fs #main-screen,
body.nova-leaving-immersive.birles-tepe-fs #main-screen,
html.nova-leaving-immersive.nova-duel-land-flow #main-screen,
body.nova-main-screen-visible #main-screen {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* Harita/oyuncu seçimi açıkken ana hub epic’in üstüne binmesin */
body.nova-duel-epic-active:not(.nova-leaving-immersive) #main-screen,
body.nova-duel-land-flow:not(.nova-leaving-immersive) #main-screen,
html.nova-duel-land-flow:not(.nova-leaving-immersive) #main-screen,
body.nova-duel-epic-active:not(.nova-leaving-immersive).nova-main-screen-visible #main-screen,
body.nova-duel-land-flow:not(.nova-leaving-immersive).nova-main-screen-visible #main-screen {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* Mağara/tepe yükleme örtüsünün altında — şeffaf/FS mavi boşluk olmasın */
body.ndep-loadwait-on #nova-duel-epic-root {
  z-index: 2147483645 !important;
}
body.ndep-loadwait-on #birles-magara-overlay.birles-magara,
body.ndep-loadwait-on #birles-tepe-overlay.birles-tepe,
body.ndep-loadwait-on #birles-magara-overlay,
body.ndep-loadwait-on #birles-tepe-overlay {
  z-index: 80 !important;
  background: #070b14 !important;
}
body.ndep-loadwait-on .birles-magara__panel,
body.ndep-loadwait-on .birles-tepe__panel,
body.ndep-loadwait-on .birles-magara__stage,
body.ndep-loadwait-on .birles-tepe__stage {
  background: #070b14 !important;
}
body.ndep-loadwait-on .birles-magara__boot,
body.ndep-loadwait-on .birles-tepe__boot {
  display: none !important;
}

/* Dikey “mavi perde / cihazı yan çevir” yükleme ve çıkışta olmasın */
body.ndep-loadwait-on.nova-duel-land-flow::before,
body.ndep-loadwait-on.birles-magara-fs::before,
body.ndep-loadwait-on.birles-tepe-fs::before,
body.nova-leaving-immersive::before,
html.nova-leaving-immersive::before,
body.nova-leaving-immersive.nova-duel-land-flow::before,
body.nova-leaving-immersive.birles-magara-fs::before,
body.nova-leaving-immersive.birles-tepe-fs::before {
  content: none !important;
  display: none !important;
  background: none !important;
}

.birles-magara[hidden],
.birles-tepe[hidden] {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

#ndep-wait-room {
  display: none !important;
}

.ndep-load-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  opacity: 0;
  transform: scale(1.08);
  background:
    url("../assets/birles/duel/ndep-load-wait-plaza.live10.webp?v=260830live10") center / cover no-repeat;
  filter: saturate(1.08) contrast(1.04);
  transition: opacity 0.85s ease, transform 1.4s cubic-bezier(0.22, 1, 0.36, 1);
}

.ndep-search-phase.is-loadwait {
  overflow: hidden;
}

.ndep-search-phase.is-loadwait .ndep-load-bg {
  opacity: 1;
  transform: scale(1);
  animation: ndep-load-ken 18s ease-in-out infinite alternate;
}

.ndep-search-phase.is-loadwait .ndep-kids-bg {
  opacity: 0;
  filter: blur(10px);
  transition: opacity 0.7s ease, filter 0.7s ease;
}

@keyframes ndep-load-ken {
  from { transform: scale(1) translate3d(0, 0, 0); }
  to { transform: scale(1.05) translate3d(-1.2%, -0.8%, 0); }
}

.ndep-search-phase.is-loadwait .ndep-kids-veil--soft {
  background:
    linear-gradient(180deg, rgba(6, 12, 28, 0.28), rgba(7, 18, 36, 0.18) 42%, rgba(8, 20, 40, 0.45)),
    radial-gradient(ellipse 80% 70% at 50% 40%, rgba(250, 204, 21, 0.12), transparent 62%);
}

.ndep-search-card.is-loadwait .ndep-go-overlay {
  display: none !important;
}

.ndep-search-load-sub {
  margin: 0 0 4px;
  font-size: clamp(13px, 2.4vh, 16px);
  font-weight: 800;
  color: #fef9c3;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.45);
  text-align: center;
}
.ndep-search-phase.is-loadwait #ndep-search-load-sub[hidden],
.ndep-search-phase.is-loadwait #ndep-search-load-sub:empty {
  display: none !important;
}

.ndep-search-phase.is-loadwait #ndep-search-title {
  color: #fff7c2;
  text-shadow: 0 0 18px rgba(250, 204, 21, 0.45);
}

.ndep-seat-load {
  display: none;
  width: 100%;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  margin-top: 2px;
}

.ndep-search-phase.is-loadwait .ndep-seat-load:not([hidden]) {
  display: flex;
}

.ndep-seat-load__track {
  width: 100%;
  height: 9px;
  border-radius: 999px;
  overflow: hidden;
  background: rgba(15, 23, 42, 0.35);
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.25);
}

.ndep-seat-load__fill {
  display: block;
  height: 100%;
  width: 0;
  border-radius: inherit;
  background: linear-gradient(90deg, #38bdf8, #facc15 70%, #fff7c2);
  box-shadow: 0 0 10px rgba(250, 204, 21, 0.55);
  transition: width 0.16s linear;
}

.ndep-seat-load.is-bot .ndep-seat-load__fill {
  background: linear-gradient(90deg, #7dd3fc, #bae6fd);
  box-shadow: 0 0 8px rgba(125, 211, 252, 0.45);
}

.ndep-seat-load.is-done .ndep-seat-load__fill {
  background: linear-gradient(90deg, #4ade80, #facc15);
}

.ndep-seat-load__pct {
  font-size: clamp(12px, 2.2vh, 14px);
  font-weight: 900;
  font-variant-numeric: tabular-nums;
  color: #0f172a;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.55);
}

.ndep-seat-load.is-you .ndep-seat-load__pct {
  color: #0c4a6e;
}

.ndep-search-phase.is-loadwait .ndep-search-seat {
  box-shadow:
    0 10px 28px rgba(8, 16, 36, 0.28),
    0 0 0 1px rgba(255, 255, 255, 0.35);
  overflow: visible;
  flex-shrink: 1;
  padding-bottom: 8px;
}
.ndep-search-phase.is-loadwait .ndep-kids-card {
  max-height: calc(100dvh - 12px);
  justify-content: center;
}
.ndep-search-phase.is-loadwait .ndep-search-seats {
  flex: 0 1 auto;
  align-items: stretch;
  overflow: visible;
}
.ndep-search-phase.is-loadwait .ndep-seat-hero {
  --ndep-seat-hero-size: clamp(44px, 16vh, 88px);
}
.ndep-search-phase.is-loadwait .ndep-seat-label,
.ndep-search-phase.is-loadwait .ndep-seat-load {
  flex-shrink: 0;
}
@media (max-height: 520px) {
  .ndep-search-phase.is-loadwait .ndep-seat-hero {
    --ndep-seat-hero-size: clamp(36px, 22vh, 64px);
  }
  .ndep-search-phase.is-loadwait .ndep-kids-card {
    padding-top: 8px;
    padding-bottom: 8px;
    gap: 4px;
  }
}

/* Ana ekran dik: yatay oyun sınıfları «telefonu dik tut» örtüsünü gizleyemez */
html.nova-home-portrait #nova-portrait-lock.is-on,
body.nova-home-portrait #nova-portrait-lock.is-on {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  z-index: 2147483647 !important;
}

/* Kaptan X: siyah tam ekran ve ders örtüsü ana ekranın üstünde kalmasın */
html.nova-home-portrait,
html.nova-home-portrait body,
html.nova-home-portrait:fullscreen,
html.nova-home-portrait:-webkit-full-screen {
  background: #071428 !important;
}
html.nova-home-portrait .harfim-ders-overlay,
html.nova-home-portrait .harfim-ders-overlay.open,
html.nova-home-portrait #roborox-topics-modal,
html.nova-home-portrait #roborox-topics-modal.open,
html.nova-home-portrait #kabuk-uzamsal-overlay,
html.nova-home-portrait #kabuk-uzamsal-overlay.is-open,
html.nova-home-portrait #harfim-fs-video {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  background: none !important;
}
html.nova-home-portrait .harfim-ders-overlay,
html.nova-home-portrait .harfim-ders-overlay.open,
body.nova-home-portrait .harfim-ders-overlay,
body.nova-home-portrait .harfim-ders-overlay.open,
html.nova-home-portrait #kabuk-uzamsal-overlay,
body.nova-home-portrait #kabuk-uzamsal-overlay,
html.nova-home-portrait #harfim-fs-video,
body.nova-home-portrait #harfim-fs-video {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transform: none !important;
}
html.nova-home-portrait #main-screen,
body.nova-home-portrait #main-screen,
html.nova-home-portrait body.nova-main-screen-visible #main-screen,
html.nova-home-portrait body.nova-duel-land-flow #main-screen,
html.nova-home-portrait body.birles-yeryon-land #main-screen,
html.nova-home-portrait body.nova-allow-landscape #main-screen {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

/* Ana ekran telefonun dik eksenine yapışık. Yatay tutunca düzen değişmez. */
html.nova-main-upright,
html.nova-main-upright body {
  overflow: hidden !important;
  background: #020611 !important;
}
html.nova-main-upright #main-screen {
  position: fixed !important;
  top: 50% !important;
  left: 50% !important;
  right: auto !important;
  bottom: auto !important;
  width: 100vh !important;
  width: 100dvh !important;
  height: 100vw !important;
  height: 100dvw !important;
  max-width: none !important;
  max-height: none !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  transform: translate(-50%, -50%) rotate(var(--nova-upright-rot, -90deg)) !important;
  transform-origin: center center !important;
  overflow: hidden !important;
}
html.nova-main-upright #nova-portrait-lock.is-on.is-hold,
html.birles-yeryon-land #nova-portrait-lock.is-on.is-hold,
html.birles-karsi-land #nova-portrait-lock.is-on.is-hold,
html.nova-allow-landscape #nova-portrait-lock.is-on.is-hold,
html.nova-duel-land-flow #nova-portrait-lock.is-on.is-hold,
html.birles-magara-fs #nova-portrait-lock.is-on.is-hold,
html.nova-macera-land #nova-portrait-lock.is-on.is-hold,
html.nova-terazi-fs #nova-portrait-lock.is-on.is-hold,
#nova-portrait-lock.is-on.is-hold {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  z-index: 2147483646 !important;
  background: #e7f7ef !important;
  color: #145c4a !important;
}
#nova-portrait-lock.is-on.is-hold .nova-portrait-lock__card {
  width: min(440px, 92vw);
  padding: 28px 22px 32px;
  border-radius: 32px;
  background: #fffdf8;
  border: 4px solid #1f8a6e;
  box-shadow: 0 10px 0 #14725b;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
#nova-portrait-lock.is-on.is-hold .nova-portrait-lock__stage {
  height: 168px;
  display: grid;
  place-items: center;
  margin-bottom: 8px;
}
#nova-portrait-lock.is-on.is-hold .nova-portrait-lock__phone {
  transform-origin: center center;
  will-change: transform;
}
#nova-portrait-lock.is-on.is-hold[data-ask="portrait"] .nova-portrait-lock__phone {
  animation: novaTurnUp 1.8s ease-in-out infinite;
}
#nova-portrait-lock.is-on.is-hold[data-ask="landscape"] .nova-portrait-lock__phone {
  animation: novaTurnSide 1.8s ease-in-out infinite;
}
#nova-portrait-lock.is-on.is-hold .nova-portrait-lock__title {
  font-size: clamp(1.7rem, 6vw, 2.3rem);
  color: #145c4a;
}
#nova-portrait-lock.is-on.is-hold .nova-portrait-lock__text {
  font-size: clamp(1.15rem, 4.2vw, 1.45rem);
  color: #1d6b58;
}
@keyframes novaTurnUp {
  0%, 18% { transform: rotate(90deg); }
  55%, 100% { transform: rotate(0deg); }
}
@keyframes novaTurnSide {
  0%, 18% { transform: rotate(0deg); }
  55%, 100% { transform: rotate(90deg); }
}
@media (prefers-reduced-motion: reduce) {
  #nova-portrait-lock.is-on.is-hold .nova-portrait-lock__phone {
    animation: none !important;
  }
  #nova-portrait-lock.is-on.is-hold[data-ask="landscape"] .nova-portrait-lock__phone {
    transform: rotate(90deg);
  }
}
html.nova-main-upright #main-screen .nova-main-lobby {
  --nova-lobby-tile-w: clamp(138px, calc(34 * var(--nova-pu, 3.9px)), 168px) !important;
  --nova-lobby-tile-h: clamp(148px, calc(36 * var(--nova-pu, 3.9px)), 178px) !important;
  --nova-lobby-icon-box: clamp(68px, calc(17 * var(--nova-pu, 3.9px)), 82px) !important;
  --nova-lobby-icon-size: clamp(30px, calc(7.5 * var(--nova-pu, 3.9px)), 38px) !important;
}
html.nova-main-upright #main-screen .nova-main-hero-zone,
html.nova-main-upright #main-screen #nova-main-hero-slot {
  min-height: clamp(220px, 42%, 320px) !important;
}
html.nova-main-upright #main-screen .student-photo {
  width: clamp(96px, calc(26 * var(--nova-pu, 3.9px)), 132px) !important;
  height: clamp(96px, calc(26 * var(--nova-pu, 3.9px)), 132px) !important;
}

/* Henüz açılmayan ders: dik kart yatay tam ekranda taşmasın. */
@media (orientation: landscape) and (max-height: 540px) {
  #kaptan-soon-modal.open .kaptan-soon-card,
  .kaptan-soon-modal.open .kaptan-soon-card {
    width: min(460px, 68vw) !important;
    padding: 6px 10px 8px !important;
    border-radius: 18px !important;
  }
  #kaptan-soon-modal.open .kaptan-soon__figure,
  .kaptan-soon-modal.open .kaptan-soon__figure {
    width: 70px !important;
    margin: 2px auto 0 !important;
  }
  #kaptan-soon-modal.open .kaptan-soon__paper,
  .kaptan-soon-modal.open .kaptan-soon__paper {
    margin: 2px 2px 6px !important;
    padding: 6px 8px 8px !important;
  }
  #kaptan-soon-modal.open .kaptan-soon__badge,
  .kaptan-soon-modal.open .kaptan-soon__badge {
    margin-bottom: 2px !important;
    font-size: 10px !important;
  }
  #kaptan-soon-modal.open .kaptan-soon__title,
  .kaptan-soon-modal.open .kaptan-soon__title {
    font-size: 15px !important;
    line-height: 1.25 !important;
  }
  #kaptan-soon-modal.open .kaptan-soon__why,
  .kaptan-soon-modal.open .kaptan-soon__why {
    margin-top: 4px !important;
    font-size: 12px !important;
    line-height: 1.3 !important;
  }
  #kaptan-soon-modal.open .kaptan-soon__ok,
  .kaptan-soon-modal.open .kaptan-soon__ok {
    min-width: 108px !important;
    min-height: 36px !important;
    padding: 6px 16px !important;
    font-size: 16px !important;
  }
  #kaptan-soon-modal.open .kaptan-soon__sun,
  #kaptan-soon-modal.open .kaptan-soon__cloud,
  #kaptan-soon-modal.open .kaptan-soon__letter,
  .kaptan-soon-modal.open .kaptan-soon__sun,
  .kaptan-soon-modal.open .kaptan-soon__cloud,
  .kaptan-soon-modal.open .kaptan-soon__letter {
    display: none !important;
  }
}
