.cpdq{background:#FFFFFF;border:1px solid var(--line);border-radius:20px;padding:28px;margin:40px 0 8px}
.cpdq-top{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 14px}
.cpdq-pill{font-size:12px;font-weight:600;border-radius:999px;padding:5px 12px;white-space:nowrap;background:#F5F5F5;border:1px solid var(--line);color:#0A0A0A}
.cpdq-pill.dark{background:#0A0A0A;border-color:#0A0A0A;color:#FFFFFF}
.ep-body .cpdq h2{margin:0 0 10px;font-size:28px}
.ep-body .cpdq p{margin:0 0 14px}
.cpdq-steps{list-style:none;padding:0;margin:0 0 20px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;font-size:15px;line-height:1.45;color:#2A2A2A}
.cpdq-steps li{background:#F5F5F5;border-radius:14px;padding:12px 14px}
.cpdq-steps b{display:block;font-family:'League Spartan',sans-serif;font-size:15px;margin-bottom:2px}
.cpdq-q{border:0;border-top:1px solid var(--line);margin:0;padding:22px 0 6px;min-width:0}
.cpdq-q legend{font-family:'League Spartan',sans-serif;font-weight:600;font-size:19px;line-height:1.3;padding:0;margin:0 0 12px}
.cpdq-q legend span{display:block;font-family:'DM Sans',sans-serif;font-weight:600;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#555555;margin-bottom:4px}
.cpdq-opt{display:flex;gap:12px;align-items:flex-start;border:1px solid #D9D9D9;border-radius:14px;padding:12px 14px;margin:0 0 8px;cursor:pointer;font-size:16px;line-height:1.45;background:#FFFFFF}
.cpdq-opt:hover{border-color:#0A0A0A}
.cpdq-opt input{margin:3px 0 0;accent-color:#0A0A0A;flex:0 0 auto;width:18px;height:18px}
.cpdq-opt.is-right{border-color:#0A0A0A;background:#F0F0F0}
.cpdq-opt.is-wrong{border-style:dashed;color:#555555}
.cpdq-fb{font-size:15px;line-height:1.55;background:#F5F5F5;border-radius:12px;padding:12px 14px;margin:4px 0 10px;color:#2A2A2A}
.cpdq-fb b{font-family:'League Spartan',sans-serif}
.cpdq-fb small{display:block;color:#555555;margin-top:4px;font-size:13px}
.cpdq-form{border-top:1px solid var(--line);padding-top:22px;margin-top:10px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.cpdq-f{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:600}
.cpdq-f input{font:inherit;font-weight:400;font-size:16px;border:1px solid #C7C7C7;border-radius:12px;padding:12px 14px;background:#FFFFFF;color:#0A0A0A;width:100%}
.cpdq-f small{font-weight:400;color:#555555;font-size:13px;line-height:1.4}
.cpdq-wide{grid-column:1/-1}
.cpdq-check{display:flex;gap:10px;align-items:flex-start;font-size:15px;line-height:1.45}
.cpdq-check input{margin:3px 0 0;accent-color:#0A0A0A;width:18px;height:18px;flex:0 0 auto}
.cpdq-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.cpdq-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:6px}
.cpdq button{cursor:pointer;font-family:inherit}
.cpdq-err{color:#0A0A0A;font-weight:600;font-size:15px;margin:0}
.cpdq-result{border-radius:16px;padding:20px;margin:20px 0 6px;background:#0A0A0A;color:#FFFFFF}
.cpdq-result.fail{background:#F5F5F5;color:#0A0A0A;border:1px solid var(--line)}
.ep-body .cpdq-result p{color:inherit;margin:0 0 8px;font-size:16px}
.cpdq-result b.big{display:block;font-family:'League Spartan',sans-serif;font-size:30px;line-height:1.1;margin-bottom:8px}
.cpdq-result a{color:inherit}
@media (max-width:720px){.cpdq{padding:20px 16px}.cpdq-steps{grid-template-columns:1fr}.cpdq-form{grid-template-columns:1fr}.ep-body .cpdq h2{font-size:24px}}
