.pm-support-banner{position:relative;display:block;width:100%;padding:0;border:0;border-radius:18px;overflow:hidden;background:#12080b;box-shadow:0 14px 36px rgba(0,0,0,.45);text-align:left;cursor:pointer;transition:transform .18s ease, box-shadow .18s ease}
.pm-support-banner img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;background:#0f0f12}
.pm-support-banner:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(0,0,0,.55)}
.pm-support-banner:active{transform:translateY(0)}
.pm-support-badge{position:absolute;left:10px;top:10px;z-index:2;background:rgba(0,0,0,.76);border:1px solid rgba(255,255,255,.14);color:#fff;font-size:11px;font-weight:900;padding:7px 10px;border-radius:999px;letter-spacing:.2px}
.pm-support-caption{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 12px;background:linear-gradient(180deg,rgba(20,20,25,.94),rgba(10,10,12,.98));color:#fff;font-size:13px;font-weight:800;line-height:1.35}
.pm-support-banner--sidebar{position:sticky;top:112px;align-self:start}
.pm-support-banner--sidebar img{aspect-ratio:auto}
.pm-support-banner--inline{display:none;margin:22px 0}
.pm-support-toast{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);z-index:9999;background:#111;color:#fff;border:1px solid rgba(255,255,255,.12);padding:12px 16px;border-radius:12px;box-shadow:0 14px 34px rgba(0,0,0,.45);font-size:14px;font-weight:800;opacity:0;pointer-events:none;transition:opacity .18s ease,transform .18s ease}
.pm-support-toast.is-visible{opacity:1;transform:translateX(-50%) translateY(-2px)}
.pm-article-sidebar-stack{display:flex;flex-direction:column;gap:18px;min-width:0}
.pm-support-admin-form input[type=text],.pm-support-admin-form textarea{width:100%;background:#17191f;border:1px solid #2d3340;color:#fff;padding:10px 12px;border-radius:10px}
.pm-support-admin-form input[type=file]{display:block;margin-top:8px}
.pm-support-admin-grid{display:grid;gap:16px}
.pm-support-admin-grid fieldset{border:1px solid #2a2f39;border-radius:12px;padding:12px 14px}
.pm-support-admin-grid legend{padding:0 6px}
.pm-support-admin-grid small{display:block;color:#9da4b1;margin-top:6px}
.pm-support-admin-preview{margin-top:22px;max-width:360px}
.pm-support-banner--admin{max-width:360px}
.pm-support-banner--admin .pm-support-caption{font-size:12px}
@media (max-width:830px){
  .pm-support-banner--sidebar{display:none}
  .pm-support-banner--inline{display:block}
}
