/* Chinese Chess's bottom network pill, adapted to Mahjong's narrower phone column. */
.net-toast {
  position: fixed; left: 50%; bottom: max(6px, env(safe-area-inset-bottom)); z-index: 2600;
  display: flex; align-items: center; gap: 10px; width: min(430px, calc(100vw - 12px));
  min-height: 34px; padding: 6px 12px; border-radius: 8px;
  border: 1px solid rgba(189, 165, 122, .54);
  background: linear-gradient(180deg, rgba(255,255,255,.64), rgba(255,255,255,.16) 42%, rgba(219,206,179,.24)), rgba(245,239,227,.96);
  backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); color: rgba(49,35,17,.96);
  box-shadow: 0 6px 24px rgba(0,0,0,.48), 0 0 16px rgba(197,160,89,.18);
  transform: translate(-50%, calc(100% + 20px)); opacity: 0; pointer-events: none;
  transition: transform .22s cubic-bezier(.22,1,.36,1), opacity .16s ease;
  font: 800 11px var(--font-body, sans-serif); letter-spacing: .02em;
}
.net-toast[hidden] { display: none; }
.net-toast.is-visible { transform: translate(-50%, 0); opacity: 1; }
.net-toast-icon { width: 18px; height: 18px; border-radius: 5px; flex: 0 0 18px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid #a99d85; }
.net-toast-label { flex: 1; min-width: 0; line-height: 1.35; overflow-wrap: anywhere; }
.net-toast-success .net-toast-icon { background: #b4d8b4; color: #21582b; }
.net-toast-warn .net-toast-icon { background: #efd29c; color: #795013; }
.net-toast-error .net-toast-icon { background: #e9b0a9; color: #772b28; }
.net-toast-retry { pointer-events: auto; min-height: 32px; border: 1px solid #a49068; border-radius: 5px; padding: 4px 8px; background: #fff5da; color: #382a14; font: inherit; }
.net-toast-retry[hidden] { display: none; }
@media (prefers-reduced-motion: reduce) { .net-toast { transition: none; } }
