* { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; line-height: 1.6; color: #2c3e50; background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); }
.container { max-width: 900px; margin: 2rem auto; padding: 2rem; background: white; border-radius: 20px; box-shadow: 0 20px 40px rgba(0,0,0,0.1); }
h1 { text-align: center; color: #1a1a1a; margin-bottom: 1rem; }
.upload-zone { border: 3px dashed #3498db; border-radius: 15px; padding: 4rem 2rem; text-align: center; cursor: pointer; margin: 2rem 0; background: #f8f9ff; transition: all 0.3s; }
.upload-zone:hover { background: #e3f2fd; }
.upload-zone.dragover { border-color: #2980b9; background: #d5f4e6; }
.btn { display: inline-block; padding: 12px 24px; border-radius: 25px; text-decoration: none; font-weight: 600; transition: all 0.3s; border: none; cursor: pointer; }
.btn-primary { background: linear-gradient(45deg, #3498db, #2980b9); color: white; }
.btn-success { background: linear-gradient(45deg, #27ae60, #229954); color: white; width: 100%; padding: 16px; font-size: 1.1rem; }
.btn-large { width: 100%; padding: 16px; font-size: 1.1rem; }
input { width: 100%; padding: 15px; margin: 10px 0; border: 2px solid #ecf0f1; border-radius: 10px; font-size: 16px; }
input.autofilled { background: #d5f4e6 !important; border-color: #27ae60 !important; }
#progress { text-align: center; padding: 1rem; background: #d1ecf1; border-radius: 10px; margin: 1rem 0; }
.hero { text-align: center; padding: 4rem 2rem; color: white; }
.hero h1 { font-size: 2.5rem; margin-bottom: 1rem; }
.buttons { display: flex; gap: 1rem; justify-content: center; flex-wrap: wrap; margin: 2rem 0; }
.nav { text-align: center; margin-top: 2rem; }
.nav a { margin: 0 1rem; color: #3498db; text-decoration: none; }
@media (max-width: 768px) { .container { margin: 1rem; padding: 1.5rem; } }