.newtil-upload-zone {
  position: relative;
  border: 1.5px dashed rgba(37, 99, 235, 0.28);
  border-radius: 18px;
  padding: 16px;
  background: linear-gradient(135deg, rgba(239, 246, 255, 0.72), rgba(248, 250, 252, 0.72));
  transition: border-color .18s ease, background .18s ease, box-shadow .18s ease, transform .18s ease;
}

.newtil-upload-zone.is-dragover {
  border-color: #2563eb;
  background: linear-gradient(135deg, rgba(219, 234, 254, 0.95), rgba(239, 246, 255, 0.95));
  box-shadow: 0 18px 42px rgba(37, 99, 235, 0.14);
  transform: translateY(-1px);
}

.newtil-upload-zone .newtil-upload-hint {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 10px;
  color: #1d4ed8;
  font-size: .88rem;
  font-weight: 750;
}

.newtil-upload-zone .newtil-upload-hint::before {
  content: "↥";
  display: inline-grid;
  place-items: center;
  width: 22px;
  height: 22px;
  border-radius: 999px;
  background: #dbeafe;
  color: #1d4ed8;
  font-weight: 900;
}

.newtil-upload-status {
  display: none;
  margin-top: 12px;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid #bfdbfe;
  background: #eff6ff;
  color: #1e3a8a;
  font-size: .9rem;
  line-height: 1.5;
}

.newtil-upload-status.is-visible {
  display: block;
}

.newtil-upload-status strong {
  display: block;
  margin-bottom: 4px;
  color: #1d4ed8;
}

.newtil-upload-status ul {
  margin: 6px 0 0;
  padding-left: 18px;
}

[data-theme='dark'] .newtil-upload-zone {
  border-color: rgba(96, 165, 250, 0.38);
  background: linear-gradient(135deg, rgba(17, 24, 39, 0.82), rgba(24, 24, 27, 0.82));
}

[data-theme='dark'] .newtil-upload-zone.is-dragover {
  border-color: #60a5fa;
  background: linear-gradient(135deg, rgba(30, 58, 138, 0.72), rgba(17, 24, 39, 0.88));
  box-shadow: 0 18px 42px rgba(37, 99, 235, 0.22);
}

[data-theme='dark'] .newtil-upload-zone .newtil-upload-hint {
  color: #bfdbfe;
}

[data-theme='dark'] .newtil-upload-zone .newtil-upload-hint::before {
  background: #1e3a8a;
  color: #bfdbfe;
}

[data-theme='dark'] .newtil-upload-status {
  border-color: #1e3a8a;
  background: rgba(30, 58, 138, 0.34);
  color: #dbeafe;
}

[data-theme='dark'] .newtil-upload-status strong {
  color: #bfdbfe;
}
