/* Nova Verify — уникальные стили модалки верификации */
.nv-verify-modal .nv-modal-title { color:#e6f1ff; font-weight:700; letter-spacing:0.2px; display:flex; align-items:center; gap:10px; }
.nv-verify-modal .nv-modal-title i { color:#7aa2ff; }
.nv-verify-modal .nv-modal-close { background:transparent; border:none; color:#9fb3c8; font-size:22px; cursor:pointer; }

.nv-verify-body { padding: 18px 20px 8px; }
.nv-verify-body { max-height: calc(100vh - 220px); overflow: auto; }
/* Custom scrollbar moved to global modal.css to unify styles */
.nv-verify-tabs { display:flex; gap:8px; background:rgba(255,255,255,0.03); border:1px solid rgba(255,255,255,0.06); padding:6px; border-radius:12px; position:sticky; top:0; z-index:2; }
.nv-verify-tab { border:none; background:transparent; color:#a8c0d8; padding:10px 12px; border-radius:10px; font-weight:600; display:flex; align-items:center; gap:8px; cursor:pointer; transition: all .2s ease; }
.nv-verify-tab:hover { color:#e6f1ff; background:rgba(255,255,255,0.04); }
.nv-verify-tab.active { background:linear-gradient(135deg,#203b7a 0%,#1b294a 100%); color:#e6f1ff; box-shadow: inset 0 0 0 1px rgba(122,162,255,0.35); }

.nv-verify-panes { margin-top:14px; }
.nv-verify-intro h4 { margin:4px 0 6px; color:#dfeaff; font-weight:700; }
.nv-verify-intro .nv-muted { color:#93a6bb; margin:0 0 8px; }
.nv-verify-hints { margin:0 0 12px; padding-left:18px; color:#a9bed2; }

.nv-form { margin-top:8px; }
.nv-form-grid { display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap:12px; }
.nv-field { display:flex; flex-direction:column; gap:6px; }
.nv-field.full { grid-column: 1 / -1; }
.nv-label { color:#b6c8db; font-size:13px; }
.nv-input, .nv-select, .nv-textarea { background:#0b0d12; border:1px solid rgba(255,255,255,0.08); color:#e6f1ff; border-radius:10px; padding:10px 12px; outline:none; transition: border-color .2s ease, box-shadow .2s ease; }
/* .nv-input:focus, .nv-select:focus, .nv-textarea:focus { border-color:#7aa2ff; box-shadow:0 0 0 3px rgba(122,162,255,0.15); } */
.nv-select-wrap { position:relative; display:block; width:100%; }
.nv-upload { position: relative; }
.nv-upload input[type="file"] { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
.nv-upload .nv-dropzone { background:#0b0d12; border:1px dashed rgba(122,162,255,0.4); color:#cfe0ff; border-radius:10px; padding:18px 12px; display:flex; align-items:center; justify-content:space-between; gap:12px; transition:border-color .2s ease, background .2s ease; }
.nv-upload .nv-dropzone .nv-filename { color:#9fb3c8; font-size: 13px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.nv-upload .nv-dropzone .nv-btn { background:transparent; border:1px solid rgba(122,162,255,0.4); color:#cfe0ff; padding:8px 10px; border-radius:8px; font-weight:700; }
.nv-upload.dragover .nv-dropzone { border-color:#7aa2ff; background:rgba(122,162,255,0.06); }

/* Preview under dropzone */
.nv-preview { margin-top: 8px; display:flex; align-items:center; gap:8px; min-height: 38px; }
.nv-preview-img { max-height: 80px; max-width: 100%; border-radius: 8px; border:1px solid rgba(255,255,255,0.08); }
.nv-preview-badge { color:#cfe0ff; background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.1); padding: 6px 8px; border-radius: 8px; font-size: 12px; }

/* Custom select wrapper */
.nv-select-wrap { position: relative; }
.nv-select-wrap .nv-select { appearance: none; -webkit-appearance:none; background-image: linear-gradient(45deg, transparent 50%, #7aa2ff 50%), linear-gradient(135deg, #7aa2ff 50%, transparent 50%); background-position: calc(100% - 18px) calc(1em + 2px), calc(100% - 13px) calc(1em + 2px); background-size: 5px 5px, 5px 5px; background-repeat: no-repeat; padding-right: 30px; width: 100%; }

/* Custom Nova select (nv-cselect) */
.nv-select-wrap { position: relative; }
.nv-cselect-trigger { width:100%; background:#0b0d12; border:1px solid rgba(255,255,255,0.08); color:#e6f1ff; border-radius:10px; padding:10px 12px; display:flex; align-items:center; justify-content:space-between; cursor:pointer; transition: border-color .2s ease, box-shadow .2s ease; }
/* .nv-cselect-trigger:focus { outline:none; border-color:#7aa2ff; box-shadow:0 0 0 3px rgba(122,162,255,0.15); } */
.nv-cselect-trigger .nv-cselect-text { flex: 1; min-width: 0; }
.nv-cselect-trigger i { margin-left: 8px; color: #8b5cf6; }
.nv-cselect-dropdown { position:absolute; left:0; right:0; background:#0d0f14; border:1px solid rgba(255,255,255,0.08); border-radius:8px; margin-top:6px; max-height:280px; overflow:auto; z-index:1000 !important; display:none; box-shadow: 0 4px 20px rgba(0,0,0,0.3); }
.nv-cselect-search { position:sticky; top:0; background:#0d0f14; padding:8px; border-bottom:1px solid rgba(255,255,255,0.06); }
.nv-cselect-search input { width:100%; background:#0b0d12; border:1px solid rgba(255,255,255,0.08); color:#e6f1ff; border-radius:8px; padding:8px 10px; font-size:13px; outline:none; }
.nv-cselect-options { display:flex; flex-direction:column; }
.nv-cselect-option { padding:8px 12px; color:#cfe0ff; cursor:pointer; }
.nv-cselect-option:hover, .nv-cselect-option.active { background:rgba(122,162,255,0.12); }
.nv-cselect-option.disabled { opacity:.6; cursor:not-allowed; }

/* Searchable country dropdown */
.nv-country { position: relative; }
.nv-country .nv-country-input { background:#0b0d12; border:1px solid rgba(255,255,255,0.08); color:#e6f1ff; border-radius:10px; padding:10px 12px; width:100%; }
.nv-country .nv-country-dropdown { position:absolute; left:0; right:0; background:#0d0f14; border:1px solid rgba(255,255,255,0.08); border-radius:8px; margin-top:6px; max-height:240px; overflow:auto; z-index:10; display:none; }
.nv-country .nv-country-item { padding:8px 12px; color:#cfe0ff; cursor:pointer; }
.nv-country .nv-country-item:hover, .nv-country .nv-country-item.active { background:rgba(122,162,255,0.12); }

/* Modal footer and buttons */
.nv-modal-footer.nv-verify-footer { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:12px 20px 16px; border-top:1px solid rgba(255,255,255,0.06); position: relative; z-index: 10; background: #0d0f14; }
.nv-verify-status { color:#a8c0d8; font-size:13px; min-height:18px; }
.nv-verify-status.ok { color:#73e28d; }
.nv-verify-status.err { color:#ff7b7b; }
.nv-verify-actions { display:flex; gap:8px; }
.nv-btn-primary:disabled { opacity:.6; cursor:not-allowed; transform: none; }

/* Ensure modal is properly contained */
.nv-verify-modal { z-index: 1055 !important; }
.nv-verify-modal .modal-dialog { z-index: 1056 !important; }
.nv-verify-modal .nv-modal-content { position: relative; z-index: 1057 !important; }

/* Сообщения в модалках */
.nv-muted.nv-ok { color:#73e28d; }
.nv-muted.nv-error { color:#ff7b7b; }

/* Upload sections */
.nv-upload-section { margin-top: 20px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,0.06); }
.nv-section-title { color:#dfeaff; font-weight:700; margin: 0 0 12px 0; font-size: 14px; }

/* File upload states */
.nv-upload.has-file .nv-dropzone { 
  border-color:#73e28d; 
  /* Градиентные зелёные оттенки */
  background: linear-gradient(135deg, rgba(34,197,94,0.14) 0%, rgba(16,185,129,0.10) 50%, rgba(34,197,94,0.14) 100%);
  box-shadow: 0 0 0 1px rgba(115,226,141,0.25) inset, 0 6px 16px rgba(16,185,129,0.10);
  transition: all 0.25s ease;
}
.nv-upload.has-file .nv-dropzone:hover {
  border-color:#86efac;
  background: linear-gradient(135deg, rgba(34,197,94,0.18) 0%, rgba(16,185,129,0.14) 50%, rgba(34,197,94,0.18) 100%);
  box-shadow: 0 0 0 1px rgba(134,239,172,0.3) inset, 0 8px 20px rgba(16,185,129,0.14);
}
.nv-upload.has-file .nv-dropzone:active {
  border-color:#22c55e;
  background: linear-gradient(135deg, rgba(34,197,94,0.22) 0%, rgba(16,185,129,0.18) 50%, rgba(34,197,94,0.22) 100%);
  transform: translateY(0.5px);
}
.nv-upload.has-file .nv-filename { 
  color:#73e28d !important; 
  font-weight: 600 !important; 
}
.nv-upload.has-file .nv-btn {
  background: linear-gradient(135deg, #22c55e, #10b981);
  border-color: #22c55e;
  color: #0d0f14;
  box-shadow: 0 4px 12px rgba(16,185,129,0.25);
}
.nv-upload.has-file .nv-btn:hover { filter: brightness(1.05); box-shadow: 0 6px 16px rgba(16,185,129,0.30); }
.nv-upload.has-file .nv-btn:active { filter: brightness(0.98); transform: translateY(0.5px); }

/* Drag over state */
.nv-upload.dragover .nv-dropzone {
  border-color: #3B82F6;
  background: rgba(59, 130, 246, 0.1);
  transform: scale(1.02);
}

/* Enhanced dropzone interaction */
.nv-dropzone {
  cursor: pointer;
  transition: all 0.2s ease;
}

.nv-dropzone:hover {
  border-color: #6B7280;
  background: rgba(107, 114, 128, 0.05);
}

.nv-filename {
  transition: color 0.2s ease, font-weight 0.2s ease;
  user-select: none;
  pointer-events: none;
}

/* Review state (после отправки документов) */
.nv-review-state { 
  padding: 16px; 
  margin-top: 8px; 
  border: 1px solid rgba(255,255,255,0.06); 
  border-radius: 12px; 
  background: rgba(34,197,94,0.06);
}
.nv-review-state .nv-review-head { 
  display:flex; align-items:center; gap:10px; margin-bottom:8px; 
}
.nv-review-state .nv-review-title { 
  color:#dfeaff; font-weight:700; 
}
.nv-review-state .nv-review-icon { 
  color:#73e28d; font-size:18px; 
}

/* Малые экраны */
@media (max-width: 768px) {
  .nv-form-grid { grid-template-columns: 1fr; }
}
