.mover{position:fixed;inset:0;z-index:500;background:rgba(0,0,0,.75);backdrop-filter:blur(8px);display:none;align-items:center;justify-content:center;padding:20px;}
.mover.open{display:flex;animation:mfi .2s ease;}
@keyframes mfi{from{opacity:0;}to{opacity:1;}}
.modal{background:var(--surface);border:1px solid var(--border2);border-radius:20px;padding:36px;width:100%;max-width:500px;position:relative;box-shadow:0 40px 100px rgba(0,0,0,.7);animation:msi .25s ease;}
@keyframes msi{from{opacity:0;transform:scale(.94) translateY(10px);}to{opacity:1;transform:none;}}
.modal h3{font-size:20px;font-weight:800;margin-bottom:6px;letter-spacing:-.015em;}
.modal>p{font-size:13.5px;color:var(--text2);margin-bottom:28px;font-weight:300;line-height:1.6;}
.mclose{position:absolute;top:16px;right:16px;background:rgba(255,255,255,.06);border:none;width:32px;height:32px;border-radius:8px;cursor:pointer;color:var(--text2);font-size:16px;transition:all .15s;}
.mclose:hover{background:rgba(255,255,255,.1);color:var(--text);}
.mbtns{display:flex;gap:10px;margin-top:24px;justify-content:flex-end;}
.mcan{background:none;border:1px solid var(--border2);color:var(--text2);padding:9px 20px;border-radius:9px;font-size:13.5px;cursor:pointer;font-family:var(--font);transition:all .2s;}
.mcan:hover{border-color:rgba(255,255,255,.2);color:var(--text);}
.mconf{background:linear-gradient(135deg,var(--accent),var(--disc));color:#fff;border:none;padding:9px 22px;border-radius:9px;font-size:13.5px;font-weight:600;cursor:pointer;font-family:var(--font);transition:all .2s;box-shadow:0 0 16px var(--glow2);}
.mconf:hover{transform:translateY(-1px);}
.mconf:disabled{opacity:.4;cursor:not-allowed;transform:none;}
.fl{margin-bottom:16px;}
.fl label{display:block;font-size:11px;color:var(--text2);font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;margin-bottom:7px;}
.fi{width:100%;background:var(--bg3);border:1px solid rgba(139,92,246,.2);border-radius:9px;padding:11px 14px;font-size:14px;color:var(--text);font-family:var(--font);outline:none;transition:all .2s;}
.fi::placeholder{color:var(--text3);}
.fi:focus{border-color:var(--accent2);box-shadow:0 0 0 3px rgba(124,58,237,.18);}
.vmsg{font-size:12px;font-family:var(--mono);margin-top:8px;padding:8px 12px;border-radius:7px;display:none;}
.vmsg.ok{display:block;background:var(--green-bg);color:var(--green);}
.vmsg.err{display:block;background:var(--red-bg);color:var(--red);}
.mhint{font-size:11px;color:var(--text3);font-family:var(--mono);margin-top:6px;}

/* ── EVENTS MODAL ── */
.ev-group{background:var(--bg3);border:1px solid var(--border);border-radius:12px;padding:14px 16px;margin-bottom:12px;}
.ev-group-title{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text3);margin-bottom:10px;display:flex;align-items:center;gap:8px;}
.prem-badge{font-size:10px;font-weight:600;background:linear-gradient(90deg,rgba(245,158,11,.15),rgba(245,158,11,.05));color:var(--gold);padding:2px 7px;border-radius:100px;border:1px solid rgba(245,158,11,.2);text-transform:none;letter-spacing:0;}
.ev-row{display:flex;align-items:center;gap:10px;padding:7px 0;cursor:pointer;border-radius:7px;transition:background .15s;}
.ev-row:hover{background:rgba(255,255,255,.04);}
.ev-row input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);cursor:pointer;flex-shrink:0;}
.ev-label{font-size:13.5px;font-weight:400;}
.ev-premium .ev-label{color:var(--text2);}
.ev-premium input:disabled{opacity:.4;}

/* ── GUILD SEARCH RESULTS ── */
.gs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;max-height:360px;overflow-y:auto;padding-right:4px;}
.gs-card{background:var(--bg3);border:1px solid var(--border);border-radius:10px;padding:12px;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;}
.gs-icon{width:48px;height:48px;border-radius:50%;object-fit:cover;}
.gs-icon-placeholder{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--disc));display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:800;color:#fff;}
.gs-name{font-size:12px;font-weight:600;word-break:break-word;line-height:1.3;}
.gs-count{font-size:11px;color:var(--text3);font-family:var(--mono);}

/* ── MODAL SIZES ── */
.modal-wide{max-width:560px;}
.modal-sm{max-width:360px;}
