* { box-sizing: border-box; margin: 0; padding: 0; }
body {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  min-height: 100vh; display: flex; align-items: center; justify-content: center;
  padding: 20px;
}
.card {
  background: white; border-radius: 20px; padding: 40px; max-width: 480px; width: 100%;
  box-shadow: 0 20px 60px rgba(0,0,0,0.3);
}
.card a { color: inherit; text-decoration: none; }
.title { font-size: 1.3rem; color: #333; margin-bottom: 16px; text-align: center; }
.form-group { margin-bottom: 16px; }
label { display: block; font-size: 0.85rem; font-weight: 600; color: #555; margin-bottom: 4px; }
input[type="text"] {
  width: 100%; padding: 12px 16px; border: 2px solid #e0e0e0; border-radius: 12px;
  font-size: 1rem; transition: border 0.2s;
}
input[type="text"]:focus { outline: none; border-color: #667eea; }
.picker {
  border: 2px dashed #ccc; border-radius: 12px; padding: 32px 16px;
  text-align: center; cursor: pointer; transition: all 0.2s; background: #fafafa;
}
.picker:active { border-color: #667eea; background: #f0f4ff; }
.picker.has-files { border-color: #48bb78; background: #f0fff4; }
.picker-icon { font-size: 2.5rem; margin-bottom: 8px; }
.picker-text { color: #888; font-size: 0.95rem; }
.file-list { margin-top: 12px; font-size: 0.85rem; color: #555; }
.file-list span { display: inline-block; background: #e8ecf8; border-radius: 6px; padding: 2px 8px; margin: 2px; }
button {
  width: 100%; padding: 14px; background: linear-gradient(135deg, #667eea, #764ba2);
  color: white; border: none; border-radius: 12px; font-size: 1.1rem; font-weight: 600;
  cursor: pointer; transition: opacity 0.2s; margin-top: 8px;
}
button:hover { opacity: 0.9; }
button:disabled { opacity: 0.5; cursor: not-allowed; }
#status { margin-top: 16px; text-align: center; font-size: 0.9rem; }
.success { color: #48bb78; }
.error { color: #e53e3e; }
.progress { color: #667eea; }
input[type="file"] { display: none; }
.hidden { display: none; }
.thanks { text-align: center; padding: 20px 0; }
.thanks .icon { font-size: 3rem; margin-bottom: 12px; }
.thanks h2 { color: #333; margin-bottom: 4px; }
.thanks p { color: #666; font-size: 0.9rem; }
