.gt-notify-root{ position:relative; }
.gt-notify-btn{
  position:relative; display:inline-flex; align-items:center; justify-content:center; gap:10px;
  width:42px; height:42px; border-radius:14px; border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.06); color:rgba(255,255,255,.86);
  transition:transform .18s ease, background .18s ease, border-color .18s ease, color .18s ease;
}
.gt-notify-btn:hover{ background:rgba(255,255,255,.11); border-color:rgba(255,255,255,.2); color:#fff; transform:translateY(-1px); }
.gt-notify-btn[aria-expanded="true"]{ background:rgba(255,255,255,.14); border-color:rgba(99,102,241,.45); color:#fff; }
.gt-notify-bell-wrap{ position:relative; display:inline-flex; align-items:center; justify-content:center; }
.gt-notify-bell-wrap .bi{ font-size:1.05rem; line-height:1; }
.gt-notify-badge{
  position:absolute; top:-8px; right:-10px; min-width:18px; height:18px; padding:0 5px;
  border-radius:999px; background:#ef4444; color:#fff; font-size:11px; font-weight:800;
  display:inline-flex; align-items:center; justify-content:center; border:2px solid rgba(15,23,42,.92);
  box-shadow:0 8px 18px rgba(239,68,68,.32);
}
.gt-notify-badge.is-empty{ display:none; }
.gt-notify-btn-mobile{ width:100%; height:auto; justify-content:flex-start; padding:12px 16px; border-radius:16px; }
.gt-notify-btn-label{ font-weight:600; font-size:.96rem; }
.gt-notify-popover{
  position:absolute; top:calc(100% + 12px); right:0; width:min(380px, calc(100vw - 32px));
  border-radius:22px; border:1px solid rgba(255,255,255,.12); background:rgba(5,10,24,.96);
  box-shadow:0 26px 80px rgba(2,6,23,.55); backdrop-filter:blur(18px); z-index:90;
  overflow:hidden;
}
.gt-notify-popover.hidden{ display:none; }
.gt-notify-popover__head{
  display:flex; align-items:flex-start; justify-content:space-between; gap:16px;
  padding:16px 18px 14px; border-bottom:1px solid rgba(255,255,255,.08);
}
.gt-notify-title{ font-size:15px; font-weight:800; color:#fff; }
.gt-notify-subtitle{ margin-top:4px; font-size:12px; color:rgba(255,255,255,.58); }
.gt-notify-readall{
  border:0; background:transparent; color:#93c5fd; font-size:12px; font-weight:700; padding:2px 0;
}
.gt-notify-readall:hover{ color:#bfdbfe; }
.gt-notify-readall[disabled]{ opacity:.45; cursor:not-allowed; }
.gt-notify-list{ max-height:420px; overflow:auto; padding:10px; }
.gt-notify-item{
  padding:14px; border-radius:18px; border:1px solid rgba(255,255,255,.08); background:rgba(255,255,255,.04);
  display:flex; flex-direction:column; gap:8px;
}
.gt-notify-item + .gt-notify-item{ margin-top:10px; }
.gt-notify-item.is-read{ opacity:.7; }
.gt-notify-item__top{ display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.gt-notify-item__title{ font-size:14px; font-weight:800; color:#fff; line-height:1.35; }
.gt-notify-item__date{ font-size:11px; color:rgba(255,255,255,.45); white-space:nowrap; padding-top:2px; }
.gt-notify-item__msg{ font-size:13px; line-height:1.5; color:rgba(255,255,255,.72); }
.gt-notify-item__actions{ display:flex; align-items:center; justify-content:flex-end; gap:10px; }
.gt-notify-mark{
  border:1px solid rgba(99,102,241,.28); background:rgba(99,102,241,.12); color:#c7d2fe;
  padding:8px 12px; border-radius:12px; font-size:12px; font-weight:700;
}
.gt-notify-mark:hover{ background:rgba(99,102,241,.18); color:#e0e7ff; }
.gt-notify-empty{
  padding:28px 16px; text-align:center; color:rgba(255,255,255,.58); font-size:13px;
}
.gt-notify-chip{
  display:inline-flex; align-items:center; gap:6px; padding:6px 10px; border-radius:999px;
  background:rgba(248,113,113,.12); color:#fca5a5; border:1px solid rgba(248,113,113,.24);
  font-size:11px; font-weight:800; letter-spacing:.02em; width:max-content;
}
.gt-notify-chip--warning{
  background:rgba(251,191,36,.14); color:#fcd34d; border-color:rgba(251,191,36,.28);
}
.gt-notify-chip--danger{
  background:rgba(248,113,113,.12); color:#fca5a5; border-color:rgba(248,113,113,.24);
}
.gt-notify-item--warning{
  border-color:rgba(251,191,36,.24);
  box-shadow:inset 0 0 0 1px rgba(251,191,36,.04);
}
.gt-notify-item--danger{
  border-color:rgba(248,113,113,.24);
  box-shadow:inset 0 0 0 1px rgba(248,113,113,.05);
}
html.gt-theme-light .gt-notify-btn{
  background:rgba(255,255,255,.82); border-color:rgba(148,163,184,.22); color:#0f172a;
  box-shadow:0 12px 28px rgba(15,23,42,.08);
}
html.gt-theme-light .gt-notify-btn:hover,
html.gt-theme-light .gt-notify-btn[aria-expanded="true"]{ background:#fff; border-color:rgba(99,102,241,.25); color:#0f172a; }
html.gt-theme-light .gt-notify-badge{ border-color:#fff; }
html.gt-theme-light .gt-notify-popover{
  background:rgba(255,255,255,.97); border-color:rgba(148,163,184,.18); box-shadow:0 28px 70px rgba(15,23,42,.12);
}
html.gt-theme-light .gt-notify-popover__head{ border-bottom-color:rgba(148,163,184,.2); }
html.gt-theme-light .gt-notify-title,
html.gt-theme-light .gt-notify-item__title{ color:#0f172a; }
html.gt-theme-light .gt-notify-subtitle,
html.gt-theme-light .gt-notify-item__date{ color:#64748b; }
html.gt-theme-light .gt-notify-item{ background:rgba(248,250,252,.96); border-color:rgba(148,163,184,.18); }
html.gt-theme-light .gt-notify-item__msg,
html.gt-theme-light .gt-notify-empty{ color:#475569; }
html.gt-theme-light .gt-notify-mark{ background:rgba(99,102,241,.1); color:#4338ca; border-color:rgba(99,102,241,.18); }
html.gt-theme-light .gt-notify-mark:hover{ background:rgba(99,102,241,.16); color:#312e81; }
html.gt-theme-light .gt-notify-chip{ background:rgba(254,226,226,.95); color:#b91c1c; border-color:rgba(248,113,113,.18); }
html.gt-theme-light .gt-notify-chip--warning{
  background:rgba(254,243,199,.98); color:#92400e; border-color:rgba(245,158,11,.24);
}
html.gt-theme-light .gt-notify-chip--danger{
  background:rgba(254,226,226,.95); color:#b91c1c; border-color:rgba(248,113,113,.18);
}
html.gt-theme-light .gt-notify-item--warning{ border-color:rgba(245,158,11,.22); }
html.gt-theme-light .gt-notify-item--danger{ border-color:rgba(248,113,113,.18); }
@media (max-width: 767px){
  .gt-notify-popover{ left:0; right:auto; width:min(100%, calc(100vw - 32px)); }
}
