/* ═══ HqxBall Map Upload Modal ═══ */
#hqx-upload-modal { position:fixed; inset:0; z-index:9999; display:flex; align-items:center; justify-content:center; padding:24px; font-family:'Inter',Arial,sans-serif; animation:humFadeIn .25s ease; }
@keyframes humFadeIn { from{opacity:0} to{opacity:1} }
@keyframes humSlideUp { from{opacity:0;transform:translateY(12px) scale(0.97)} to{opacity:1;transform:none} }
.hum-backdrop { position:absolute; inset:0; background:rgba(2,6,23,0.85);  -webkit- }
.hum-card { position:relative; width:100%; max-width:480px; background:rgba(15,23,42,0.95); border-radius:28px; border:1px solid rgba(255,255,255,0.06); box-shadow:0 32px 80px rgba(0,0,0,0.7),0 0 0 1px rgba(255,255,255,0.03) inset; display:flex; flex-direction:column; overflow:hidden; animation:humSlideUp .3s ease; }
.hum-glow { position:absolute; top:0; left:0; right:0; height:120px; background:linear-gradient(to bottom,rgba(6,182,212,0.04),transparent); pointer-events:none; border-radius:28px 28px 0 0; }
/* Head */
.hum-head { display:flex; align-items:center; justify-content:space-between; padding:24px 28px 16px; position:relative; z-index:1; }
.hum-head-left { display:flex; align-items:center; gap:14px; }
.hum-icon-box { width:44px; height:44px; border-radius:14px; background:rgba(6,182,212,0.08); border:1px solid rgba(6,182,212,0.2); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.hum-title { font-size:17px; font-weight:900; color:#fff; letter-spacing:-0.01em; }
.hum-sub { font-size:10px; font-weight:700; color:rgba(100,116,139,0.7); letter-spacing:0.15em; text-transform:uppercase; margin-top:2px; }
.hum-close { width:32px; height:32px; border-radius:10px; background:rgba(255,255,255,0.04); border:1px solid rgba(255,255,255,0.06); color:rgba(148,163,184,0.6); display:flex; align-items:center; justify-content:center; cursor:pointer; transition:all .2s; }
.hum-close:hover { background:rgba(255,255,255,0.08); color:#fff; }
/* Body */
.hum-body { padding:0 28px 20px; display:flex; flex-direction:column; gap:20px; position:relative; z-index:1; }
/* Drop zone */
.hum-drop { border:2px dashed rgba(255,255,255,0.08); border-radius:20px; padding:36px 24px; display:flex; flex-direction:column; align-items:center; gap:10px; cursor:pointer; transition:all .25s; background:rgba(0,0,0,0.15); }
.hum-drop:hover, .hum-drag-over { border-color:rgba(34,211,238,0.4); background:rgba(6,182,212,0.04); }
.hum-drop.hum-file-loaded { border-style:solid; border-color:rgba(34,211,238,0.25); background:rgba(6,182,212,0.04); padding:20px 24px; }
.hum-drop-icon { color:rgba(51,65,85,1); }
.hum-drop-text { font-size:12px; font-weight:700; color:rgba(148,163,184,0.7); text-align:center; }
.hum-browse { color:#22d3ee; cursor:pointer; text-decoration:underline; text-underline-offset:2px; }
.hum-drop-hint { font-size:10px; font-weight:600; color:rgba(100,116,139,0.4); letter-spacing:0.1em; }
/* Fields */
.hum-fields { display:flex; flex-direction:column; gap:16px; animation:humFadeIn .3s ease; }
.hum-field { display:flex; flex-direction:column; gap:6px; }
.hum-label { font-size:10px; font-weight:900; letter-spacing:0.2em; text-transform:uppercase; color:rgba(148,163,184,0.6); }
.hum-input { width:100%; background:rgba(0,0,0,0.35); border:1px solid rgba(255,255,255,0.06); border-radius:14px; padding:12px 16px; color:#fff; font-family:'Inter',Arial,sans-serif; font-size:13px; font-weight:600; outline:none; transition:all .2s; box-sizing:border-box; }
.hum-input::placeholder { color:rgba(100,116,139,0.4); }
.hum-input:focus { border-color:rgba(34,211,238,0.4); box-shadow:0 0 0 1px rgba(34,211,238,0.4); }
.hum-textarea { resize:none; min-height:72px; font-size:12px; line-height:1.6; }
/* Meta */
.hum-meta { display:grid; grid-template-columns:1fr 1fr 1fr; gap:10px; }
.hum-meta-item { background:rgba(0,0,0,0.25); border-radius:12px; padding:10px 14px; border:1px solid rgba(255,255,255,0.04); display:flex; flex-direction:column; gap:3px; }
.hum-meta-label { font-size:8px; font-weight:900; letter-spacing:0.2em; text-transform:uppercase; color:rgba(100,116,139,0.5); }
.hum-meta-val { font-size:12px; font-weight:700; color:rgba(203,213,225,0.9); }
/* Footer */
.hum-foot { display:flex; align-items:center; justify-content:flex-end; gap:10px; padding:16px 28px 24px; position:relative; z-index:1; border-top:1px solid rgba(255,255,255,0.04); }
.hum-btn-cancel { padding:10px 20px; border-radius:14px; background:rgba(255,255,255,0.04); border:1px solid rgba(255,255,255,0.06); color:rgba(148,163,184,0.8); font-family:'Inter',sans-serif; font-size:11px; font-weight:800; letter-spacing:0.15em; text-transform:uppercase; cursor:pointer; transition:all .2s; }
.hum-btn-cancel:hover { background:rgba(255,255,255,0.08); color:#fff; }
.hum-btn-upload { padding:10px 24px; border-radius:14px; background:linear-gradient(135deg,#06b6d4,#2563eb); border:none; color:#fff; font-family:'Inter',sans-serif; font-size:11px; font-weight:900; letter-spacing:0.15em; text-transform:uppercase; cursor:pointer; transition:all .25s; box-shadow:0 0 20px rgba(6,182,212,0.2); }
.hum-btn-upload:hover:not(:disabled) { box-shadow:0 0 30px rgba(6,182,212,0.4); transform:scale(1.03); }
.hum-btn-upload:disabled { opacity:0.35; cursor:not-allowed; transform:none; }
