*{box-sizing:border-box;margin:0;padding:0}body{background:#f0f2f5;justify-content:center;align-items:center;min-height:100vh;font-family:Segoe UI,system-ui,sans-serif;display:flex}.container{background:#fff;border-radius:16px;width:100%;max-width:520px;padding:40px;box-shadow:0 4px 24px #0000001a}h1{color:#1a1a2e;text-align:center;margin-bottom:8px;font-size:24px}.subtitle{color:#666;text-align:center;margin-bottom:28px;font-size:14px}.drop-zone{text-align:center;cursor:pointer;border:2px dashed #ccc;border-radius:12px;padding:40px 20px;transition:border-color .3s,background .3s}.drop-zone:hover{background:#f8f9ff;border-color:#4a6cf7}.drop-zone.has-file{background:#f0fff4;border-color:#28a745}.drop-zone-icon{margin-bottom:12px;font-size:48px}.drop-zone-text{color:#555;font-size:15px}.drop-zone-text strong{color:#4a6cf7}.file-name{color:#28a745;font-weight:600}.btn{cursor:pointer;border:none;border-radius:10px;width:100%;margin-top:20px;padding:14px;font-size:16px;font-weight:600;transition:background .3s,opacity .3s;display:block}.btn-primary{color:#fff;background:#4a6cf7}.btn-primary:hover{background:#3a5ce5}.btn-primary:disabled{cursor:not-allowed;background:#a0b0e8}.status{text-align:center;min-height:20px;margin-top:16px;font-size:14px}.status.error{color:#dc3545}.status.success{color:#28a745}
