/* SubirArchivos-modern.css
   Estética: clara, profesional, responsive.
*/

/* Reset mínimo */
*{box-sizing:border-box}
body.modern-upload {
  font-family: 'Inter', system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
  background: linear-gradient(180deg,#f5f8ff,#ffffff);
  color: #0f2a3d;
  margin:0;
  min-height:100vh;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:32px 16px;
}

/* Card central */
.card {
  border-radius:14px;
  overflow:hidden;
}

/* Company logo */
.upload-company-logo {
  width:84px;
  height:84px;
  object-fit:contain;
  border-radius:8px;
  background:transparent;
  box-shadow: 0 6px 18px rgba(16,38,58,0.06);
}

/* File drop area */
.file-drop {
  position:relative;
  border: 1px dashed rgba(16,38,58,0.08);
  border-radius:10px;
  padding:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  background: linear-gradient(180deg, rgba(123,109,255,0.03), rgba(79,195,247,0.01));
  cursor:pointer;
  transition: border-color .15s ease, transform .12s ease, box-shadow .12s ease;
  min-height:82px;
}
.file-drop input[type="file"]{
  position:absolute;
  left:0; top:0;
  width:100%; height:100%;
  opacity:0; cursor:pointer;
}
.file-drop .file-drop-text { text-align:center; color: rgba(15,42,61,0.8); font-weight:600; }
.file-drop .file-drop-text i { color: var(--bs-danger,#d9534f); margin-bottom:6px; }

/* Dragover */
.file-drop.dragover {
  border-color: rgba(123,109,255,0.35);
  transform: translateY(-3px);
  box-shadow: 0 8px 26px rgba(123,109,255,0.06);
}

/* Listas de archivos */
.file-list ul { padding-left:0; margin:0; list-style:none; }
.file-list li { padding:8px 10px; border-radius:8px; display:flex; justify-content:space-between; align-items:center; gap:8px; background:#fbfdff; border:1px solid rgba(16,38,58,0.03); margin-bottom:8px; }

/* Botones */
.btn-primary {
  background: linear-gradient(90deg,#7b6dff,#4fc3f7);
  border:none;
  border-radius:10px;
  padding:10px 16px;
  box-shadow: 0 10px 26px rgba(79,115,167,0.06);
  color:#fff;
}
.btn-outline-secondary {
  border-radius:10px;
  padding:10px 16px;
}

/* Alerts (usar bootstrap default) */
.alert { border-radius:10px; }

/* nota */
.small.text-muted { color:#6b7280; }

/* Responsive */
@media (max-width: 768px) {
  body.modern-upload { padding:18px; }
  .upload-company-logo { width:64px; height:64px; }
  .file-drop { padding:14px; min-height:68px; }
  .card-body { padding:16px; }
}

/* A11y focus */
.file-drop:focus-within { outline:3px solid rgba(123,109,255,0.12); outline-offset:4px; }
input[type="file"]:focus { outline:none; }

/* Fin */
