/* SocialHeat v03: three compact notification variants. */
html body #toastContainer {
  position:fixed;
  top:20px;
  right:20px;
  left:auto;
  bottom:auto;
  width:min(380px,calc(100vw - 32px));
  max-width:380px;
  max-height:calc(100dvh - 40px);
  overflow-y:auto;
  display:flex;
  flex-direction:column;
  gap:10px;
  z-index:10000;
  pointer-events:none;
}
#toastContainer .sh-notice {
  --notice-ink:#0b61b4;
  --notice-soft:#eaf3fc;
  display:grid;
  grid-template-columns:32px minmax(0,1fr) 24px;
  align-items:start;
  gap:10px;
  width:100%;
  box-sizing:border-box;
  padding:14px;
  border-radius:12px;
  border:1px solid var(--border-color,#e2e8f0);
  background:var(--bg-card,#fff);
  color:var(--text-primary,#0f172a);
  box-shadow:0 8px 24px #0f172a14;
  font-family:Inter,system-ui,sans-serif;
  pointer-events:auto;
  animation:shNoticeEnter .18s ease;
}
#toastContainer .sh-notice-success {
  --notice-ink:#047857;
  --notice-soft:#e9f8f1
}
#toastContainer .sh-notice-error {
  --notice-ink:#be123c;
  --notice-soft:#fff1f5
}
.sh-notice-icon {
  display:grid;
  place-items:center;
  width:32px;
  height:32px;
  border-radius:9px;
  background:var(--notice-soft);
  color:var(--notice-ink)
}
.sh-notice-icon svg {
  width:18px;
  height:18px
}
.sh-notice-copy {
  min-width:0
}
.sh-notice-copy strong {
  display:block;
  font-size:12px;
  font-weight:600;
  line-height:1.5;
  margin-bottom:3px
}
.sh-notice-copy p {
  margin:0;
  font-size:12px;
  line-height:1.6;
  white-space:pre-line;
  overflow-wrap:anywhere;
  max-height:180px;
  overflow:auto
}
.sh-notice-close {
  width:24px;
  height:24px;
  padding:3px;
  border:0;
  border-radius:5px;
  background:transparent;
  color:var(--text-secondary,#64748b);
  cursor:pointer
}
.sh-notice-close svg {
  width:18px;
  height:18px
}
.sh-notice-close:hover {
  background:var(--bg-subtle,#f1f5f9)
}
.sh-notice-close:focus-visible {
  outline:2px solid var(--notice-ink);
  outline-offset:2px
}
[data-sh-notice] {
  display:none!important
}
[data-theme=dark] #toastContainer .sh-notice-success {
  --notice-ink:#6ee7b7;
  --notice-soft:#064e3b
}
[data-theme=dark] #toastContainer .sh-notice-error {
  --notice-ink:#fda4af;
  --notice-soft:#4c0519
}
[data-theme=dark] #toastContainer .sh-notice-notice {
  --notice-ink:#93c5fd;
  --notice-soft:#172f4f
}
@keyframes shNoticeEnter {
  from {
    opacity:0;
    transform:translateY(-6px)
  }
  to {
    opacity:1;
    transform:translateY(0)
  }
}
@media(max-width:600px) {
  html body #toastContainer {
    top:12px;
    right:16px
  }
}
@media(prefers-reduced-motion:reduce) {
  #toastContainer .sh-notice {
    animation:none
  }
}
/* Guideline typography for notifications and progress dialogs. */ :is(.waiting-modal-box,.custom-modal-box,.sh-notice) {
  font-family: SHSidebarInter, Inter, system-ui, sans-serif;
}
.waiting-modal-box .waiting-modal-title {
  font-family:inherit;
  font-size:18px;
  font-weight:600;
  line-height:1.4;
  letter-spacing:0;
}
.waiting-modal-box :is(.waiting-modal-message,.waiting-notice-banner) {
  font-family:inherit;
  font-size:13px;
  line-height:1.6;
}
.waiting-modal-box :is(.waiting-status-chip,.waiting-progress-detail,.waiting-progress-percent) {
  font-family:inherit;
  font-size:12px;
  font-weight:500;
  line-height:1.5;
}
.waiting-modal-box .waiting-status-chip {
  white-space:normal;
  text-align:left;
  overflow-wrap:anywhere;
}
