*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--bg:#09090b;--card:#18181b;--card-hover:#1f1f23;--border:#27272a;--text:#e4e4e7;--text-muted:#a1a1aa;--text-dim:#71717a;--accent:#2dd4bf;--accent-hover:#14b8a6;--success:#22c55e;--error:#ef4444;--warning:#f59e0b;--radius:12px}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh;-webkit-font-smoothing:antialiased}.container{max-width:560px;margin:0 auto;padding:40px 20px 80px}.logo{text-align:center;margin-bottom:32px}.logo h1{font-size:28px;font-weight:700;background:linear-gradient(135deg,var(--accent),#06b6d4);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.logo p{color:var(--text-muted);font-size:14px;margin-top:4px}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:32px}.step{margin-bottom:28px}.step:last-child{margin-bottom:0}.step-header{gap:12px;margin-bottom:12px}.step-header,.step-number{display:flex;align-items:center}.step-number{width:28px;height:28px;border-radius:50%;background:var(--accent);color:var(--bg);font-size:14px;font-weight:700;justify-content:center;flex-shrink:0}.step-number.done{background:var(--success)}.step-label{font-size:16px;font-weight:600}label{display:block;font-size:13px;color:var(--text-muted);margin-bottom:6px;font-weight:500}input[type=email],input[type=text],select{width:100%;padding:12px 16px;background:var(--bg);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:15px;outline:none;transition:border-color .2s}input:focus,select:focus{border-color:var(--accent)}input::placeholder{color:var(--text-dim)}select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23a1a1aa' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px}.dropzone{border:2px dashed var(--border);border-radius:var(--radius);padding:32px;text-align:center;cursor:pointer;transition:all .2s}.dropzone.drag-over,.dropzone:hover{border-color:var(--accent);background:rgba(45,212,191,.05)}.dropzone.has-file{border-color:var(--success);background:rgba(34,197,94,.05)}.dropzone-icon{font-size:36px;margin-bottom:8px}.dropzone-text{color:var(--text-muted);font-size:14px}.dropzone-text strong{color:var(--accent)}.file-info{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:13px;color:var(--success)}.btn{width:100%;padding:14px;border:none;border-radius:var(--radius);font-size:16px;font-weight:700;cursor:pointer;transition:all .2s;margin-top:24px}.btn-primary{background:var(--accent);color:var(--bg)}.btn-primary:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px)}.btn-primary:disabled{opacity:.4;cursor:not-allowed}.btn-validate{margin-top:8px;padding:10px;font-size:14px;background:transparent;border:1px solid var(--accent);color:var(--accent);border-radius:8px;cursor:pointer;transition:all .2s}.btn-validate:hover:not(:disabled){background:rgba(45,212,191,.1)}.btn-validate:disabled{opacity:.4;cursor:not-allowed}.validation-msg{font-size:13px;margin-top:8px;padding:8px 12px;border-radius:8px}.validation-msg.success{background:rgba(34,197,94,.1);color:var(--success);border:1px solid rgba(34,197,94,.2)}.validation-msg.error{background:rgba(239,68,68,.1);color:var(--error);border:1px solid rgba(239,68,68,.2)}.success-card{text-align:center;padding:48px 32px}.success-icon{font-size:64px;margin-bottom:16px}.success-card h2{font-size:24px;margin-bottom:8px;color:var(--success)}.success-card p{color:var(--text-muted);font-size:15px;line-height:1.6}.spinner{display:inline-block;width:16px;height:16px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .6s linear infinite;margin-right:8px;vertical-align:middle}@keyframes spin{to{transform:rotate(1turn)}}.style-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.style-option{padding:12px;background:var(--bg);border:2px solid var(--border);border-radius:8px;cursor:pointer;text-align:center;transition:all .2s;font-size:13px}.style-option:hover{border-color:var(--text-dim)}.style-option.selected{border-color:var(--accent);background:rgba(45,212,191,.05)}.style-option .style-name{font-weight:600;color:var(--text);margin-bottom:2px}.style-option .style-desc{color:var(--text-dim);font-size:11px}