.vip-gift-dialog { width:min(640px,94vw); max-height:90vh; overflow:auto; padding:24px; border:1px solid var(--line); color:var(--text); background:#21170f; }
.vip-gift-dialog::backdrop { background:#0009; }
.vip-gift-dialog header { display:flex; justify-content:space-between; align-items:center; gap:16px; }
.vip-gift-dialog h2 { margin:0; color:var(--gold); }
.vip-gift-dialog p,.vip-gift-dialog li { line-height:1.65; overflow-wrap:anywhere; }
.vip-gift-help { color:var(--muted); }
.vip-gift-fields,.mail-vip-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.vip-gift-fields { align-items:start; }
.vip-gift-fields label { display:grid; gap:8px; min-width:0; color:var(--gold); }
.vip-gift-fields input,.vip-gift-fields select { width:100%; min-width:0; }
.vip-gift-duration { display:grid; gap:8px; min-width:0; }
.vip-gift-fields .vip-gift-permanent { display:flex; align-items:center; gap:8px; width:fit-content; color:var(--text); }
.vip-gift-fields .vip-gift-permanent input { flex:0 0 18px; width:18px; height:18px; margin:0; accent-color:var(--gold); }
.vip-gift-duration input:disabled { opacity:.55; }
.vip-gift-reason { grid-column:1/-1; }
.vip-gift-dialog output { display:block; margin-top:14px; color:var(--gold); line-height:1.6; }
.vip-gift-dialog form > button { margin-top:12px; }
@media(max-width:650px) { .vip-gift-fields,.mail-vip-grid { grid-template-columns:1fr; } }
