.spo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.spo-btn{background:#2271b1;color:#fff;border:0;padding:8px 14px;border-radius:6px;cursor:pointer}
.spo-card{background:#fff;border:1px solid #e3e3e3;border-radius:10px;padding:16px;margin-bottom:16px}
.spo-flex{display:flex;gap:16px;flex-wrap:wrap}
.spo-question{margin:12px 0;padding:12px;border:1px dashed #ddd;border-radius:8px}
.spo-options{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}
.spo-radio{background:#f7f7f7;border:1px solid #eee;padding:6px 10px;border-radius:6px}
.spo-table{width:100%;border-collapse:collapse;margin-top:12px}
.spo-table th,.spo-table td{border:1px solid #ddd;padding:8px;text-align:left}
.spo-msg.ok{color:green}.spo-msg.error{color:#b11}
