/* Ana sayfa bildirim merkezi (public/js/bildirimMerkezi.js). Renkler home-v2.css --hm-* tokenlarindan. */

.home-notif-btn,
body.home-page .home-notif-btn {
  position: relative;
  /* style.css .home-header-btn overflow:hidden rozeti daireye hapsediyordu */
  overflow: visible;
}

.home-notif-badge {
  position: absolute;
  top: -5px;
  right: -5px;
  z-index: 1;
  min-width: 17px;
  height: 17px;
  padding: 0 4px;
  border-radius: 999px;
  background: var(--hm-danger, #ef5350);
  color: #fff;
  font-size: 10.5px;
  font-weight: 750;
  line-height: 17px;
  text-align: center;
  box-shadow: 0 0 0 2px var(--hm-card, #fff);
  pointer-events: none;
}

.home-notif-badge.hidden {
  display: none;
}

html.bm-acik,
html.bm-acik body {
  overflow: hidden;
}

.bm-arka {
  position: fixed;
  inset: 0;
  z-index: 1200;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  background: rgba(10, 16, 26, 0);
  transition: background 0.2s ease;
}

.bm-arka.hidden {
  display: none;
}

.bm-arka.is-acik {
  background: rgba(10, 16, 26, 0.45);
}

.bm-panel {
  width: min(560px, 100%);
  max-height: min(86vh, 760px);
  display: flex;
  flex-direction: column;
  background: var(--hm-bg, #f5f7f8);
  color: var(--hm-text, #172235);
  border-radius: 24px 24px 0 0;
  box-shadow: 0 -10px 40px rgba(0, 0, 0, 0.18);
  transform: translateY(100%);
  transition: transform 0.22s cubic-bezier(0.2, 0.8, 0.2, 1);
  padding-bottom: env(safe-area-inset-bottom);
}

.bm-arka.is-acik .bm-panel {
  transform: translateY(0);
}

@media (min-width: 700px) {
  .bm-arka {
    align-items: center;
  }

  .bm-panel {
    border-radius: 24px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .bm-arka,
  .bm-panel {
    transition: none;
  }
}

.bm-bas {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 16px 8px 20px;
}

.bm-bas h2 {
  margin: 0;
  font-size: 20px;
  font-weight: 750;
}

.bm-kapat {
  /* style.css genel button dolgusu (13px 18px) ikonu saga itiyordu */
  flex: none;
  display: grid;
  place-items: center;
  box-sizing: border-box;
  width: 40px;
  height: 40px;
  min-width: 0;
  min-height: 0;
  padding: 0;
  margin: 0;
  box-shadow: none;
  transform: none;
  border: 0;
  border-radius: 999px;
  background: var(--hm-card, #fff);
  color: var(--hm-text, #172235);
  cursor: pointer;
}

.bm-govde {
  overflow-y: auto;
  padding: 4px 16px 20px;
  overscroll-behavior: contain;
}

.bm-alt-baslik {
  margin: 16px 4px 8px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: var(--hm-text-2, #5f6c81);
}

.bm-izin {
  margin-top: 4px;
  padding: 14px;
  border-radius: 18px;
  background: var(--hm-mint, #ddf5f0);
}

.bm-izin.hidden {
  display: none;
}

.bm-izin p {
  margin: 0;
  font-size: 14px;
  line-height: 1.45;
}

.bm-izin-ac {
  margin-top: 10px;
  min-height: 42px;
  padding: 0 18px;
  border: 0;
  border-radius: 999px;
  background: var(--hm-primary-fill, #0d857b);
  color: var(--hm-on-primary, #fff);
  font: inherit;
  font-weight: 700;
  cursor: pointer;
}

.bm-liste {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 8px;
}

.bm-bos {
  padding: 18px 16px;
  border-radius: 18px;
  background: var(--hm-card, #fff);
  color: var(--hm-text-2, #5f6c81);
  font-size: 14px;
  line-height: 1.45;
}

.bm-duyuru {
  display: grid;
  gap: 4px;
  width: 100%;
  padding: 14px 16px;
  border: 1px solid var(--hm-border, #e5eaee);
  border-radius: 18px;
  background: var(--hm-card, #fff);
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.bm-duyuru.is-yeni {
  border-color: color-mix(in srgb, var(--hm-primary, #119d91) 45%, var(--hm-border, #e5eaee));
}

.bm-duyuru b {
  font-size: 15px;
  line-height: 1.35;
}

.bm-duyuru-metin {
  color: var(--hm-text-2, #5f6c81);
  font-size: 14px;
  line-height: 1.45;
  white-space: pre-line;
  overflow-wrap: anywhere;
}

.bm-duyuru-ust {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  color: var(--hm-text-2, #5f6c81);
}

.bm-nokta {
  width: 8px;
  height: 8px;
  margin-left: auto;
  border-radius: 50%;
  background: var(--hm-primary, #119d91);
}

.bm-rozet {
  padding: 1px 8px;
  border-radius: 999px;
  font-weight: 700;
  font-size: 11.5px;
}

.bm-rozet.is-acil {
  background: color-mix(in srgb, var(--hm-danger, #ef5350) 14%, transparent);
  color: var(--hm-danger, #c62828);
}

.bm-rozet.is-tanitim {
  background: color-mix(in srgb, var(--hm-sun, #f3a53b) 18%, transparent);
  color: #9a5a00;
}

:root[data-theme="dark"] .bm-rozet.is-tanitim {
  color: var(--hm-sun, #f3a53b);
}

.bm-tercihler {
  border-radius: 18px;
  background: var(--hm-card, #fff);
  border: 1px solid var(--hm-border, #e5eaee);
  overflow: hidden;
}

.bm-anahtar {
  /* style.css genel label rengi (gri) burada istenmiyor */
  color: var(--hm-text, #172235);
  font-weight: 400;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 14px 16px;
  cursor: pointer;
}

.bm-anahtar + .bm-anahtar {
  border-top: 1px solid var(--hm-border, #e5eaee);
}

.bm-anahtar span {
  display: grid;
  gap: 3px;
}

.bm-anahtar b {
  font-size: 15px;
}

.bm-anahtar small {
  color: var(--hm-text-2, #5f6c81);
  font-size: 12.5px;
  line-height: 1.4;
}

/* Anahtar (switch) gorunumlu onay kutusu */
.bm-anahtar input {
  appearance: none;
  -webkit-appearance: none;
  flex: none;
  position: relative;
  box-sizing: border-box;
  width: 46px;
  min-width: 46px;
  height: 28px;
  min-height: 0;
  margin: 0;
  padding: 0;
  border: 0;
  box-shadow: none;
  border-radius: 999px;
  background: var(--hm-border, #d5dce3);
  cursor: pointer;
  transition: background 0.15s;
}

.bm-anahtar input::after {
  content: '';
  position: absolute;
  top: 3px;
  left: 3px;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25);
  transition: transform 0.15s;
}

.bm-anahtar input:checked {
  background: var(--hm-primary-fill, #0d857b);
}

.bm-anahtar input:checked::after {
  transform: translateX(18px);
}

.bm-anahtar input:focus-visible {
  outline: 2px solid var(--hm-primary, #119d91);
  outline-offset: 2px;
}

.bm-anahtar input:disabled {
  opacity: 0.6;
}

.bm-not {
  margin: 10px 4px 0;
  color: var(--hm-text-2, #5f6c81);
  font-size: 12.5px;
  line-height: 1.45;
}

.bm-kimlik {
  display: block;
  margin: 18px auto 0;
  padding: 6px 10px;
  border: 0;
  background: transparent;
  color: var(--hm-text-2, #5f6c81);
  font: inherit;
  font-size: 11.5px;
  cursor: pointer;
  overflow-wrap: anywhere;
}

.bm-kimlik code {
  font-size: 11px;
}

.bm-kimlik.kopyalandi {
  color: var(--hm-primary-text, #08766f);
  font-weight: 700;
}
