/* EgyptFun PWA — кнопка подписки на push. */
.ef-pushBtn{display:block;width:calc(100% - 32px);margin:0 16px 16px;border:none;border-radius:14px;
  padding:14px;font:700 14.5px Montserrat,sans-serif;cursor:pointer;
  background:rgba(26,160,174,.12);color:var(--sea)}
.ef-pushBtn.on{background:#e8f5ec;color:#1e7d43}
.ef-pushBtn.muted{background:rgba(92,123,127,.14);color:var(--mute)}
.ef-pushBtn:disabled{cursor:default;opacity:.9}
.ef-pushHint{margin:-6px 16px 16px;font-size:12.5px;line-height:1.55;color:#5C7B7F;
  background:#fff5e6;border:1px solid #f3d9a8;border-radius:12px;padding:11px 13px}
.ef-pushHint b{color:#8a5a00}

/* беззвучный режим */
.ef-pushMute{margin:-6px 16px 16px}
.ef-pushMuteRow{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fff;
  border-radius:14px;padding:12px 15px;cursor:pointer;box-shadow:0 4px 14px rgba(14,77,86,.06)}
.ef-pushMuteTitle{font-size:14.5px;font-weight:700;color:var(--ink)}
.ef-pushMuteSub{font-size:12px;color:var(--mute);margin-top:2px;max-width:230px;line-height:1.4}
.ef-switch{flex-shrink:0;width:46px;height:28px;border-radius:999px;background:#CBD9D9;position:relative;transition:background .2s}
.ef-switch.on{background:var(--sea)}
.ef-switchDot{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;
  transition:left .2s;box-shadow:0 1px 3px rgba(0,0,0,.2)}
.ef-switch.on .ef-switchDot{left:21px}

/* Подсказка «Разрешите уведомления» со стрелкой на кнопку навбара */
.ef-pushNudge{position:fixed;left:0;right:0;bottom:var(--nudge-bottom,64px);z-index:60;
  padding:0 14px;pointer-events:none}
.ef-pushNudgeBubble{pointer-events:auto;position:relative;max-width:330px;margin:0 auto 16px;
  background:linear-gradient(135deg,#FF6B4A,#ff8a63);color:#fff;border-radius:16px;
  padding:13px 42px 13px 16px;box-shadow:0 14px 34px rgba(255,107,74,.42);cursor:pointer;
  animation:efNudgeIn .35s ease both}
.ef-pushNudgeT{font-weight:800;font-size:14.5px;letter-spacing:-.01em}
.ef-pushNudgeS{font-size:12.5px;opacity:.96;margin-top:2px;line-height:1.4}
.ef-pushNudgeClose{position:absolute;top:6px;right:7px;width:26px;height:26px;border:none;border-radius:50%;
  background:rgba(255,255,255,.22);color:#fff;font-size:18px;line-height:1;cursor:pointer;
  display:grid;place-items:center}
.ef-pushNudgeArrow{pointer-events:auto;position:absolute;left:var(--nudge-x,50%);bottom:-2px;
  transform:translateX(-50%);color:#FF6B4A;font-size:34px;line-height:1;cursor:pointer;
  text-shadow:0 3px 8px rgba(0,0,0,.28);animation:efNudgeBounce 1.1s ease-in-out infinite}
@keyframes efNudgeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@keyframes efNudgeBounce{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(7px)}}
@media(prefers-reduced-motion:reduce){.ef-pushNudgeArrow{animation:none}.ef-pushNudgeBubble{animation:none}}
