/* KUPÜR — Anlık Bildirim · izin kutusu, zil düğmesi, abonelik bloğu */
.ekbn-box { position: fixed; left: 50%; z-index: 9990; width: min(440px, calc(100% - 24px)); transform: translate(-50%, -16px); opacity: 0; transition: transform .3s ease, opacity .3s ease; pointer-events: none; }
.ekbn-box.ekbn-top { top: 12px; }
.ekbn-box.ekbn-bottom { bottom: 12px; transform: translate(-50%, 16px); }
.ekbn-box.show { transform: translate(-50%, 0); opacity: 1; pointer-events: auto; }
.ekbn-in { display: grid; grid-template-columns: 52px 1fr; gap: 6px 14px; align-items: center; padding: 16px 16px 14px; background: var(--card, #fff); color: var(--text, #333); border-radius: 12px; box-shadow: 0 12px 40px rgba(0,0,0,.25), 0 0 0 1px rgba(0,0,0,.05); }
.ekbn-ic { width: 52px; height: 52px; border-radius: 12px; object-fit: cover; grid-row: span 2; align-self: start; }
.ekbn-ic-bell { display: block; background: var(--main, #da171e); position: relative; }
.ekbn-ic-bell::before, .ekbn-bell span::before { content: ""; position: absolute; inset: 0; margin: auto; width: 24px; height: 24px; background: #fff;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 22a2.5 2.5 0 0 0 2.45-2h-4.9A2.5 2.5 0 0 0 12 22Zm7-6V11a7 7 0 0 0-5.5-6.84V3a1.5 1.5 0 0 0-3 0v1.16A7 7 0 0 0 5 11v5l-2 2v1h18v-1Z'/%3E%3C/svg%3E") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 22a2.5 2.5 0 0 0 2.45-2h-4.9A2.5 2.5 0 0 0 12 22Zm7-6V11a7 7 0 0 0-5.5-6.84V3a1.5 1.5 0 0 0-3 0v1.16A7 7 0 0 0 5 11v5l-2 2v1h18v-1Z'/%3E%3C/svg%3E") center / contain no-repeat; }
.ekbn-txt { margin: 0; font-size: 15px; line-height: 1.45; color: var(--ink, #1b1b1b); }
.ekbn-acts { display: flex; justify-content: flex-end; gap: 8px; }
.ekbn-acts button { padding: 9px 16px; border-radius: 8px; border: 0; font: 600 14px/1.2 inherit; cursor: pointer; }
.ekbn-yes { background: var(--main, #da171e); color: #fff; }
.ekbn-no { background: transparent; color: var(--muted, #6b7280); }
.ekbn-no:hover { background: rgba(127,127,127,.12); }
.ekbn-acts button:focus-visible, .ekbn-bell:focus-visible { outline: 3px solid var(--main, #da171e); outline-offset: 2px; }
.ekbn-bell { position: fixed; left: 16px; bottom: 16px; z-index: 9980; width: 48px; height: 48px; border: 0; border-radius: 50%; background: var(--main, #da171e); box-shadow: 0 6px 18px rgba(0,0,0,.25); cursor: pointer; }
.ekbn-bell span { position: absolute; inset: 0; }
body:has(.cookie-bar.cookie-bar:not([hidden])) .ekbn-bell { bottom: 96px; }   /* çerez bildirimi açıkken üstünde dursun */
body:has(.cookie-bar:not([hidden])) .ekbn-box.ekbn-bottom { bottom: 96px; }
.ekbn-toast { position: fixed; left: 50%; bottom: 24px; z-index: 9995; max-width: calc(100% - 32px); padding: 12px 18px; border-radius: 10px; background: #1f2328; color: #fff; font-size: 14.5px; line-height: 1.4; transform: translate(-50%, 20px); opacity: 0; transition: transform .3s, opacity .3s; }
.ekbn-toast.show { transform: translate(-50%, 0); opacity: 1; }
@media (max-width: 767px) {
  .ekbn-box.ekbn-top { top: 8px; } .ekbn-box.ekbn-bottom { bottom: 70px; }
  .ekbn-in { grid-template-columns: 44px 1fr; padding: 14px; }
  .ekbn-ic { width: 44px; height: 44px; }
  .ekbn-txt { font-size: 14px; }
  .ekbn-bell { bottom: 76px; left: 12px; width: 44px; height: 44px; }
}
@media (prefers-reduced-motion: reduce) { .ekbn-box, .ekbn-toast { transition: none; } }

/* Abonelik bloğu ve e-posta sayfası */
.bn-box { display: flex; gap: 14px; align-items: flex-start; padding: 16px; background: var(--card, #fff); }
.bn-box-ic { flex: none; width: 42px; height: 42px; display: grid; place-items: center; border-radius: 50%; background: var(--main, #da171e); color: #fff; font-size: 18px; }
.bn-box p { margin: 0 0 10px; color: var(--ink, #1b1b1b); line-height: 1.45; }
.bn-box-btns { display: flex; flex-wrap: wrap; gap: 8px; }
.bn-btn { display: inline-flex; align-items: center; gap: 8px; padding: 9px 16px; border: 0; border-radius: 8px; background: var(--main, #da171e); color: #fff !important; font: 600 14px/1.2 inherit; cursor: pointer; text-decoration: none; }
.bn-btn.is-on { background: #1f7a4d; }
.bn-btn-light { background: transparent; color: var(--ink, #1b1b1b) !important; box-shadow: inset 0 0 0 1px var(--line, #dcdcdc); }
.bn-page { display: grid; gap: 16px; max-width: 760px; }
.bn-card { padding: 20px; background: var(--card, #fff); }
.bn-card h2 { margin: 0 0 8px; font-size: 19px; }
.bn-card p { margin: 0 0 12px; line-height: 1.5; }
.bn-small { font-size: 13px; color: var(--muted, #6b7280); margin-top: 12px !important; }
.bn-note { padding: 12px 14px; background: #eaf6ef; border-left: 3px solid #1f7a4d; margin: 0; }
.bn-note-err { background: #fdecec; border-left-color: #c8102e; }
