:root{--blue:#0072BA;--blue-dark:#00538A;--blue-soft:#E6F3FA;--gray:#BCBCBC;--gray-dark:#878787;--gray-soft:#F3F3F3;--border:#D7D7D7;--ink:#1D1D1D;--paper:#FFFFFF}
*{box-sizing:border-box}
body{margin:0;padding:18px;font-family:'Poppins','Segoe UI',Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.55}
h3.ode-title{margin:0 0 4px;font-size:1.08rem;font-weight:800;color:var(--blue-dark)}
p.ode-orientacao{margin:0 0 16px;font-size:.88rem;color:var(--gray-dark)}
.tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.tabs button{flex:1 1 auto;min-width:110px;border:1px solid var(--blue);background:#fff;color:var(--blue-dark);padding:10px 8px;border-radius:6px;font-family:inherit;font-size:.85rem;font-weight:600;cursor:pointer}
.tabs button[aria-selected="true"]{background:var(--blue);color:#fff}
.tabpanel{border:1px solid var(--border);border-radius:6px;padding:16px;background:var(--soft,#F4F6F7)}
.tabpanel[hidden]{display:none}
.tabpanel h4{margin:0 0 8px;color:var(--blue-dark)}
.tabpanel p{margin:0}
.step{border:1px solid var(--border);border-radius:6px;padding:16px;background:#fff}
.step[hidden]{display:none}
.step h4{margin:0 0 8px;color:var(--blue-dark)}
.opcoes{display:flex;flex-direction:column;gap:8px;margin-top:12px}
.opcoes button{text-align:left;border:1px solid var(--blue);background:#fff;color:var(--ink);padding:10px 12px;border-radius:6px;font-family:inherit;cursor:pointer}
.opcoes button:hover{background:var(--blue-soft)}
.opcoes button[data-correta="true"].respondida{border-color:#1a7a3c;background:#EAF7EE}
.opcoes button[data-correta="false"].respondida{border-color:#B3261E;background:#FBEAEA}
.feedback{margin-top:12px;padding:10px 12px;border-left:4px solid var(--blue);background:var(--blue-soft);font-size:.92rem;display:none}
.feedback.mostrar{display:block}
.nav-btn{margin-top:16px;background:var(--blue-dark);color:#fff;border:none;padding:10px 18px;border-radius:6px;font-family:inherit;cursor:pointer;font-weight:600}
.nav-btn:disabled{background:var(--gray);cursor:not-allowed}
.refs{font-size:.78rem;color:var(--gray-dark);margin-top:16px;border-top:1px solid var(--border);padding-top:10px}
.cena-media{background:repeating-linear-gradient(45deg,#e3e7ea,#e3e7ea 10px,#d7dde1 10px,#d7dde1 20px);color:#4a5866;font-size:.8rem;font-weight:600;text-align:center;padding:30px 12px;border-radius:6px;margin-bottom:10px}
.locucao{font-style:italic;color:var(--blue-dark);margin:0 0 4px}
.progress-dots{display:flex;gap:6px;margin-bottom:12px}
.progress-dots span{width:9px;height:9px;border-radius:50%;background:var(--border)}
.progress-dots span.ativo{background:var(--blue)}
