body{margin:0;font-family:Arial,Helvetica,sans-serif;background:#f6f7fb;color:#111827}
.wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}
.card{width:920px;max-width:100%;background:#fff;border-radius:14px;box-shadow:0 6px 22px rgba(0,0,0,.08);overflow:hidden}
.header{background:#111827;color:#fff;padding:18px 22px}
.brand{font-weight:800;font-size:18px}
.subtitle{opacity:.85;font-size:13px;margin-top:2px}
.steps{display:flex;gap:10px;padding:14px 22px;border-bottom:1px solid #e5e7eb;background:#fafafa}
.step{padding:8px 10px;border-radius:10px;background:#e5e7eb;color:#374151;font-size:13px}
.step.active{background:#111827;color:#fff}
.panel{padding:22px}
.hidden{display:none}
h1{margin:0 0 14px;font-size:20px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.span2{grid-column:1 / span 2}
label{display:block;font-size:12px;color:#374151;margin-bottom:6px}
input{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:10px;font-size:14px;outline:none}
input:focus{border-color:#111827}
.chk{display:flex;align-items:center;gap:8px}
.note{margin-top:10px;font-size:13px;color:#6b7280}
.actions{margin-top:18px;display:flex;gap:10px;justify-content:flex-end}
.btn{border:1px solid #d1d5db;background:#fff;padding:10px 14px;border-radius:10px;cursor:pointer;text-decoration:none;color:#111827;display:inline-block}
.btn.primary{background:#111827;border-color:#111827;color:#fff}
.btn:disabled{opacity:.6;cursor:not-allowed}
.alert{margin:14px 22px 0;padding:10px 12px;border-radius:10px;font-size:13px}
.alert.error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}
.alert.ok{background:#ecfeff;color:#0f172a;border:1px solid #a5f3fc}
