:root{--ndi-black: #1c1918;--ndi-white: #ffffff;--ndi-parchment: #f4f0ea;--ndi-stone: #8a8278;--ndi-green: #6dc72a;--ndi-red: #8b2230;--font: Arial, Helvetica, sans-serif}*{box-sizing:border-box}body{margin:0;font-family:var(--font);background:var(--ndi-parchment);color:var(--ndi-black)}h1,h2,h3{font-weight:700;text-transform:uppercase;letter-spacing:.02em}.app-header{background:var(--ndi-black);color:var(--ndi-white);padding:20px 24px;border-bottom:3px solid var(--ndi-green)}.app-header h1{margin:0;font-size:20px}.wizard-shell{max-width:640px;margin:0 auto;padding:24px 16px 80px}.progress-bar{display:flex;gap:4px;margin-bottom:32px}.progress-bar .segment{flex:1;height:3px;background:var(--ndi-stone);opacity:.3}.progress-bar .segment.active,.progress-bar .segment.done{background:var(--ndi-green);opacity:1}.card{background:var(--ndi-white);border-radius:4px;padding:24px;box-shadow:0 1px 3px #00000014}.card h2{font-size:18px;margin-top:0}.option-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:16px 0}.option-card{border:2px solid var(--ndi-stone);border-radius:4px;padding:16px;cursor:pointer;background:var(--ndi-white);text-align:left;font-family:var(--font)}.option-card.selected{border-color:var(--ndi-green);background:#6dc72a14}.option-card .label{font-weight:700;text-transform:uppercase;font-size:13px;display:block;margin-bottom:4px}label{display:block;font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.03em;margin-bottom:6px;color:var(--ndi-stone)}input[type=text],input[type=email],input[type=tel],input[type=number],select{width:100%;padding:10px 12px;border:1px solid var(--ndi-stone);border-radius:4px;font-family:var(--font);font-size:15px;margin-bottom:16px}.step-nav{display:flex;justify-content:space-between;margin-top:24px}button{font-family:var(--font);font-weight:700;text-transform:uppercase;font-size:13px;padding:12px 24px;border-radius:4px;border:none;cursor:pointer;letter-spacing:.02em}button.primary{background:var(--ndi-green);color:var(--ndi-black)}button.secondary{background:transparent;color:var(--ndi-stone);border:1px solid var(--ndi-stone)}button:disabled{opacity:.4;cursor:not-allowed}.badge{display:inline-block;padding:3px 10px;border-radius:12px;font-size:11px;font-weight:800;text-transform:uppercase}.badge.disponibile{background:var(--ndi-green);color:var(--ndi-black)}.badge.basso-stock{background:#e8a93b;color:var(--ndi-black)}.badge.su-ordine{background:var(--ndi-red);color:var(--ndi-white)}.totale-box{text-align:center;padding:32px 16px;border-top:3px solid var(--ndi-green);margin-top:24px}.totale-box .numero{font-size:40px;font-weight:700;color:var(--ndi-black)}.totale-box .disclaimer{color:var(--ndi-stone);font-size:12px;margin-top:8px}
