*{box-sizing:border-box}
body{margin:0;min-height:100vh;font-family:Segoe UI,Tahoma,Arial,sans-serif;color:white;background:radial-gradient(circle at top,#0f3b75 0%,#06101f 38%,#020617 100%);overflow-x:hidden}
.bg-glow{position:fixed;inset:0;background:radial-gradient(circle at 25% 25%,rgba(0,153,255,.26),transparent 32%),radial-gradient(circle at 75% 35%,rgba(34,197,94,.18),transparent 30%);filter:blur(42px);z-index:-1}
.wizard-shell{width:min(1180px,94%);margin:auto;padding:28px 0 34px}
.topbar{display:flex;align-items:center;gap:22px;margin-bottom:22px}
.back{color:#cbd5e1;text-decoration:none;background:rgba(15,23,42,.7);border:1px solid rgba(148,163,184,.22);padding:12px 18px;border-radius:999px;font-weight:800}
.back:hover{border-color:#22c55e;color:white}
.topbar h1{margin:0;font-size:34px}
.topbar p{margin:5px 0 0;color:#cbd5e1}
.progress-wrap{background:rgba(15,23,42,.62);border:1px solid rgba(148,163,184,.16);border-radius:20px;padding:18px;margin-bottom:24px}
.step-label{font-weight:900;color:#22c55e;margin-bottom:12px}
.progress-line{height:9px;background:rgba(148,163,184,.2);border-radius:999px;overflow:hidden}
.progress-line div{height:100%;width:0;background:linear-gradient(90deg,#22c55e,#38bdf8);border-radius:999px;transition:width .3s ease}
.dots{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}
.dot-step{width:14px;height:14px;min-width:14px;padding:0;border-radius:50%;cursor:pointer;background:rgba(148,163,184,.35);border:1px solid rgba(255,255,255,.16)}
.dot-step.active{background:#22c55e;box-shadow:0 0 10px rgba(34,197,94,.75)}
.dot-step.current{outline:2px solid white;outline-offset:2px}
.step-card{display:grid;grid-template-columns:1.35fr .9fr;gap:26px;align-items:stretch}
.image-box{position:relative;background:rgba(2,6,23,.55);border:2px solid rgba(34,197,94,.55);border-radius:24px;padding:14px;box-shadow:0 0 34px rgba(34,197,94,.16);min-height:430px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.image-box img{max-width:100%;max-height:70vh;border-radius:16px;display:block;box-shadow:0 20px 45px rgba(0,0,0,.38)}
.content-box{background:rgba(15,23,42,.76);border:1px solid rgba(148,163,184,.18);border-radius:24px;padding:34px 30px;box-shadow:0 20px 45px rgba(0,0,0,.28)}
.badge{display:inline-block;background:rgba(34,197,94,.14);border:1px solid rgba(34,197,94,.38);color:#86efac;border-radius:999px;padding:8px 14px;font-weight:900;margin-bottom:18px}
.content-box h2{font-size:30px;margin:0 0 16px}
.content-box p{font-size:19px;line-height:1.6;color:#e5e7eb;margin:0}
.tip{margin-top:22px;background:rgba(37,99,235,.16);border:1px solid rgba(59,130,246,.35);border-radius:16px;padding:16px;color:#dbeafe;line-height:1.5;font-size:16px}
.tip:empty,.tip[hidden]{display:none}
.controls{display:flex;justify-content:space-between;gap:14px;margin-top:24px}
.controls button{border:0;border-radius:14px;padding:16px 26px;color:white;font-size:17px;font-weight:900;cursor:pointer;background:linear-gradient(135deg,#1e293b,#334155);box-shadow:0 14px 30px rgba(0,0,0,.28);transition:.22s ease}
.controls button:last-child{background:linear-gradient(135deg,#22c55e,#16a34a)}
.controls button:hover{transform:translateY(-3px);filter:brightness(1.1)}
.controls button:disabled{opacity:.45;cursor:not-allowed;transform:none}
@media(max-width:900px){.step-card{grid-template-columns:1fr}.topbar{align-items:flex-start;flex-direction:column}.image-box{min-height:260px}.topbar h1{font-size:28px}.content-box h2{font-size:25px}}
@media(max-width:560px){.wizard-shell{width:94%;padding-top:18px}.content-box{padding:24px 20px}.content-box p{font-size:17px}.controls{flex-direction:column}.controls button{width:100%}.dots{justify-content:center}}
