/* Global flash toast — fixed under dc-app-header, auto-dismiss via JS */
:root{
  --dc-flash-toast-top:calc(env(safe-area-inset-top, 0px) + 64px);
}

.dc-flash-toast-host{
  position:fixed;
  left:50%;
  transform:translateX(-50%) translateY(-8px);
  top:var(--dc-flash-toast-top);
  z-index:4990;
  width:min(1180px, calc(100vw - 24px));
  display:grid!important;
  gap:6px;
  pointer-events:none;
  opacity:0;
  transition:opacity .28s ease, transform .28s ease;
}

.dc-flash-toast-host.is-visible{
  opacity:1;
  transform:translateX(-50%) translateY(0);
}

.dc-flash-toast-host.is-leaving{
  opacity:0;
  transform:translateX(-50%) translateY(-6px);
}

.dc-flash-toast{
  pointer-events:auto;
  margin:0;
  padding:12px 16px;
  border-radius:14px;
  border:1px solid var(--line, rgba(255,255,255,.12));
  background:rgba(18,18,18,.96);
  color:#f2f6f9;
  font-size:14px;
  line-height:1.35;
  text-align:center;
  box-shadow:0 14px 40px rgba(0,0,0,.42);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

.dc-flash-toast--success,
.dc-flash-toast--ok{
  border-color:rgba(38,208,124,.5);
  color:#a7f0ca;
  background:rgba(12,28,20,.94);
}

.dc-flash-toast--danger{
  border-color:rgba(255,59,48,.5);
  color:#ffb2ad;
  background:rgba(28,12,12,.94);
}

html body.admin-mode.admin-mobile-shell{
  --dc-flash-toast-top:calc(env(safe-area-inset-top, 0px) + 56px);
}

@media (max-width:767px){
  html body.user-mode:not(.admin-mode):not(.comments-mode){
    --dc-flash-toast-top:calc(env(safe-area-inset-top, 0px) + 58px);
  }
}

@media (orientation:landscape) and (max-height:520px){
  html body.user-mode.auth-mode,
  html body.admin-mode.auth-page{
    --dc-flash-toast-top:calc(env(safe-area-inset-top, 0px) + 52px);
  }
}
