/* verdeQ app: mesmo padrão visual do site (Geist, fundo de pontinhos, cartões brancos, botão preto com borda esmeralda girando). */
@property --giro{syntax:"<angle>";initial-value:0deg;inherits:false}
:root{
  color-scheme:light;
  --fundo:#FAFAFA;--cartao:#FFFFFF;--titulo:#171717;--texto:#262626;--suave:#5C5C5C;--borda:#ECECEC;--borda-forte:#DADADA;
  --esmeralda:#10B981;--esmeralda-texto:#047857;--menta:#ECFDF5;--menta-borda:#C7F0DD;
  --alerta-fundo:#FFF7ED;--alerta-texto:#9A3412;--alerta-borda:#FED7AA;
  --fonte:"Geist",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  --raio:24px;
}
*{box-sizing:border-box}
body{margin:0;background-color:var(--fundo);background-image:radial-gradient(circle,rgba(23,23,23,.05) .75px,transparent 1.2px);background-size:24px 24px;color:var(--texto);font-family:var(--fonte);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;min-height:100vh}
a{color:var(--esmeralda-texto)}
:focus-visible{outline:3px solid var(--esmeralda);outline-offset:3px;border-radius:10px}
h1,h2,h3{color:var(--titulo);font-weight:600;margin:0;text-wrap:balance}
h1{font-size:clamp(30px,4vw,42px);line-height:1.1;letter-spacing:-0.03em}
h2{font-size:24px;line-height:1.2;letter-spacing:-0.02em}
h3{font-size:19px;line-height:1.3;letter-spacing:-0.01em}
p{margin:0}
.wrap{max-width:1120px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.estreito{max-width:820px}
.destaque{background:linear-gradient(110deg,#10B981 0%,#34D399 40%,#A7F3D0 50%,#34D399 60%,#10B981 100%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:brilho 6s ease-in-out infinite}
@keyframes brilho{0%,100%{background-position:100% 0}50%{background-position:0 0}}
.rotulo{font-size:13px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--suave)}
.suave{color:var(--suave)}
.pequeno{font-size:15px}
.oculto{display:none!important}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 26px;border-radius:999px;font-family:var(--fonte);font-size:16px;font-weight:500;letter-spacing:-0.01em;text-decoration:none;cursor:pointer;transition:transform .25s,box-shadow .25s,border-color .25s;border:1px solid transparent;white-space:nowrap}
.btn-preto{color:#FFF;background:linear-gradient(#1C2421,#0A0A0A) padding-box,conic-gradient(from var(--giro),transparent 0%,#047857 5%,#10B981 15%,#047857 30%,transparent 40%,transparent 100%) border-box;box-shadow:inset 0 1px 1px rgba(255,255,255,.15),inset 0 -2px 6px rgba(0,0,0,.2),0 12px 24px -10px rgba(0,0,0,.5);animation:giro 2.5s linear infinite}
.btn-preto:hover{transform:translateY(-2px)}
.btn-claro{color:var(--titulo);background:var(--cartao);border-color:var(--borda);box-shadow:0 1px 2px rgba(23,23,23,.06)}
.btn-claro:hover{border-color:var(--borda-forte)}
.btn-texto{background:none;border:none;color:var(--suave);padding:0 10px;min-height:40px;font-size:15px}
.btn-texto:hover{color:var(--titulo)}
.btn-pequeno{min-height:40px;padding:0 18px;font-size:15px}
.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}
@keyframes giro{to{--giro:360deg}}
@media (prefers-reduced-motion:reduce){.btn-preto,.destaque{animation:none}.btn,.cartao{transition:none}}

/* Topo e navegação */
.topo{position:sticky;top:0;z-index:20;background:rgba(250,250,250,.88);backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--borda)}
.topo .wrap{display:flex;align-items:center;gap:20px;min-height:66px}
.marca{display:flex;align-items:center;gap:10px;color:var(--titulo);text-decoration:none;font-weight:700;font-size:22px;letter-spacing:-0.03em}
.nav{display:flex;gap:4px;margin-left:12px}
.nav a{display:flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;color:var(--suave);text-decoration:none;font-size:15px;font-weight:500}
.nav a:hover{color:var(--titulo);background:rgba(23,23,23,.04)}
.nav a.ativo{color:var(--titulo);background:var(--cartao);border:1px solid var(--borda);box-shadow:0 1px 2px rgba(23,23,23,.05)}
.nav .contador{min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--esmeralda);color:#FFF;font-size:12px;font-weight:600;display:inline-flex;align-items:center;justify-content:center}
.topo .direita{margin-left:auto;display:flex;align-items:center;gap:8px}
.menu-conta{position:relative}
.menu-conta summary{list-style:none;cursor:pointer;width:40px;height:40px;border-radius:20px;background:var(--cartao);border:1px solid var(--borda);display:flex;align-items:center;justify-content:center;font-weight:600;color:var(--titulo)}
.menu-conta summary::-webkit-details-marker{display:none}
.menu-conta .caixa{position:absolute;right:0;top:48px;min-width:220px;background:var(--cartao);border:1px solid var(--borda);border-radius:18px;box-shadow:0 18px 40px -16px rgba(23,23,23,.3);padding:8px;display:flex;flex-direction:column}
.menu-conta .caixa a,.menu-conta .caixa button{padding:10px 14px;border-radius:12px;color:var(--texto);text-decoration:none;font-size:15px;text-align:left;background:none;border:none;font-family:var(--fonte);cursor:pointer}
.menu-conta .caixa a:hover,.menu-conta .caixa button:hover{background:var(--fundo)}
.menu-conta .caixa .nome{padding:10px 14px 6px;font-size:14px;color:var(--suave);border-bottom:1px solid var(--borda);margin-bottom:4px}
.abas{display:none}
@media (max-width:860px){
  .nav{display:none}
  .abas{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:30;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--borda);padding:6px 4px calc(6px + env(safe-area-inset-bottom,0px))}
  .abas a{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 0;font-size:12px;font-weight:500;color:var(--suave);text-decoration:none;position:relative}
  .abas a.ativo{color:var(--titulo)}
  .abas a.ativo svg{color:var(--esmeralda-texto)}
  .abas .contador{position:absolute;top:0;left:calc(50% + 6px);min-width:18px;height:18px;border-radius:9px;background:var(--esmeralda);color:#FFF;font-size:11px;font-weight:600;display:flex;align-items:center;justify-content:center;padding:0 5px}
  main{padding-bottom:96px}
}

/* Estrutura das páginas */
main{padding-block:36px 72px}
.cabecalho{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:28px}
.cabecalho .tit{display:flex;flex-direction:column;gap:6px}
.cabecalho p{color:var(--suave)}
.pilha{display:flex;flex-direction:column;gap:20px}
.grade{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.grade-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.grade-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
@media (max-width:860px){.grade,.grade-2{grid-template-columns:minmax(0,1fr)}.grade-4{grid-template-columns:repeat(2,minmax(0,1fr))}main{padding-top:24px}}
.cartao{background:var(--cartao);border:1px solid var(--borda);border-radius:var(--raio);padding:26px;display:flex;flex-direction:column;gap:12px;min-width:0}
.cartao.link{text-decoration:none;color:inherit;transition:transform .25s,box-shadow .25s}
.cartao.link:hover{transform:translateY(-3px);box-shadow:0 18px 32px -20px rgba(23,23,23,.25)}
.cartao.escuro{background:#0A0A0A;border-color:#0A0A0A;color:#E5E5E5}
.cartao.escuro h2,.cartao.escuro h3{color:#FFF}
.cartao.escuro .suave{color:#A3A3A3}
.cartao.menta{background:var(--menta);border-color:var(--menta-borda)}
.icone{width:44px;height:44px;border-radius:22px;background:var(--menta);border:1px solid var(--menta-borda);color:var(--esmeralda-texto);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.numero{font-size:38px;font-weight:600;letter-spacing:-0.03em;color:var(--titulo);line-height:1;font-variant-numeric:tabular-nums}
.numero small{font-size:17px;color:var(--suave);font-weight:500;letter-spacing:0}
.cartao.escuro .numero{color:#FFF}
.cartao.escuro .numero b{color:#34D399;font-weight:600}
.acoes{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.linha-entre{display:flex;align-items:center;justify-content:space-between;gap:12px}

/* Barras de progresso */
.barra{height:8px;border-radius:4px;background:var(--borda);overflow:hidden}
.barra i{display:block;height:100%;border-radius:4px;background:var(--esmeralda)}
.cartao.escuro .barra{background:#262626}

/* Avisos */
.msg{font-size:16px;border-radius:16px;padding:12px 16px;border:1px solid var(--borda);background:var(--cartao)}
.msg.ok{background:var(--menta);color:#065F46;border-color:var(--menta-borda)}
.msg.erro{background:var(--alerta-fundo);color:var(--alerta-texto);border-color:var(--alerta-borda)}
.aviso-topo{margin-bottom:20px}

/* Formulários */
.campo{display:flex;flex-direction:column;gap:6px;font-size:15px;color:var(--suave);font-weight:500}
.campo input,.campo select,.campo textarea,.entrada{font-family:var(--fonte);font-size:16px;color:var(--titulo);background:var(--cartao);border:1px solid var(--borda-forte);border-radius:14px;padding:12px 16px;min-height:50px;width:100%;box-shadow:0 1px 2px rgba(23,23,23,.04)}
.campo textarea{min-height:120px;line-height:1.5;resize:vertical}
.campo input:focus,.campo select:focus,.campo textarea:focus,.entrada:focus{outline:none;border-color:var(--esmeralda);box-shadow:0 0 0 4px var(--menta)}
.marcar{display:flex;gap:10px;align-items:flex-start;font-size:15px;color:var(--texto);line-height:1.45;cursor:pointer}
.marcar input{width:20px;height:20px;margin-top:1px;accent-color:#10B981;flex-shrink:0}
.form{display:flex;flex-direction:column;gap:16px}

/* Entrar / cadastrar */
.porta{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 16px}
.porta .cartao{width:min(460px,100%);padding:34px;gap:18px}
.porta .marca{margin-bottom:22px;font-size:26px}

/* Chips de filtro */
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{position:relative}
.chip input{position:absolute;opacity:0;pointer-events:none}
.chip span{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;border:1px solid var(--borda-forte);background:var(--cartao);font-size:15px;color:var(--texto);cursor:pointer;user-select:none}
.chip span small{color:var(--suave);font-size:13px}
.chip input:checked+span{background:#0A0A0A;color:#FFF;border-color:#0A0A0A}
.chip input:checked+span small{color:#A3A3A3}
.chip input:focus-visible+span{outline:3px solid var(--esmeralda);outline-offset:2px}
.arvore{display:flex;flex-direction:column;gap:6px}
.arvore details{border:1px solid var(--borda);border-radius:16px;background:var(--cartao)}
.arvore summary{cursor:pointer;padding:12px 16px;display:flex;align-items:center;gap:10px;font-weight:500;color:var(--titulo);list-style:none}
.arvore summary::-webkit-details-marker{display:none}
.arvore summary::before{content:"";width:8px;height:8px;border-right:2px solid var(--suave);border-bottom:2px solid var(--suave);transform:rotate(-45deg);transition:transform .2s;flex-shrink:0}
.arvore details[open]>summary::before{transform:rotate(45deg)}
.arvore summary small{margin-left:auto;color:var(--suave);font-weight:400;font-size:14px}
.arvore .dentro{padding:4px 16px 14px 34px;display:flex;flex-direction:column;gap:8px}
.arvore .sub{padding-left:28px;display:flex;flex-direction:column;gap:6px}
.barra-fixa{position:sticky;bottom:16px;z-index:10;margin-top:24px}
.barra-fixa .cartao{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;box-shadow:0 18px 40px -20px rgba(23,23,23,.35);padding:16px 20px}
@media (max-width:860px){.barra-fixa{bottom:84px}}

/* Resolver questão */
.resolver{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:24px;align-items:start}
@media (max-width:1000px){.resolver{grid-template-columns:minmax(0,1fr)}.lateral{order:2}}
.questao{gap:18px;padding:30px}
@media (max-width:600px){.questao{padding:20px;border-radius:20px}}
.etiquetas{display:flex;flex-wrap:wrap;gap:6px}
.etiqueta{font-size:13px;font-weight:500;padding:3px 11px;border-radius:999px;background:var(--fundo);border:1px solid var(--borda);color:var(--texto)}
.etiqueta.verde{background:var(--menta);border-color:var(--menta-borda);color:#065F46}
.etiqueta.alerta{background:var(--alerta-fundo);border-color:var(--alerta-borda);color:var(--alerta-texto)}
.texto-apoio{background:var(--fundo);border:1px solid var(--borda);border-radius:18px;padding:18px 20px;font-size:16px;max-height:420px;overflow:auto}
.texto-apoio p+p,.enunciado p+p{margin-top:12px}
.enunciado{font-size:18px;line-height:1.65;color:var(--titulo)}
.figura{max-width:100%;border-radius:14px;border:1px solid var(--borda);background:#FFF}
.opcoes-ce{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.opcoes-ce button{min-height:56px;border-radius:999px;border:1px solid var(--borda-forte);background:var(--cartao);color:var(--titulo);font-family:var(--fonte);font-weight:600;font-size:17px;cursor:pointer;transition:transform .2s}
.opcoes-ce button:hover{transform:translateY(-1px)}
.opcoes-me{display:flex;flex-direction:column;gap:10px}
.alt{display:flex;align-items:stretch;gap:6px}
.alt .escolher{flex:1;display:flex;gap:14px;align-items:flex-start;text-align:left;padding:14px 16px;border-radius:18px;border:1px solid var(--borda-forte);background:var(--cartao);font-family:var(--fonte);font-size:16px;line-height:1.5;color:var(--titulo);cursor:pointer}
.alt .letra{flex-shrink:0;width:30px;height:30px;border-radius:15px;border:1px solid var(--borda-forte);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;background:var(--fundo)}
.alt .riscar{width:40px;border:none;background:none;color:var(--suave);cursor:pointer;border-radius:12px;display:flex;align-items:center;justify-content:center}
.alt .riscar:hover{background:rgba(23,23,23,.05);color:var(--titulo)}
.alt.riscada .escolher{color:#A3A3A3;text-decoration:line-through}
.opcoes-ce button[aria-pressed="true"],.alt .escolher[aria-pressed="true"]{background:#0A0A0A;color:#FFF;border-color:#0A0A0A}
.alt .escolher[aria-pressed="true"] .letra{background:#262626;border-color:#404040;color:#FFF}
.respondida .opcoes-ce button,.respondida .alt .escolher{cursor:default;transform:none}
.alt.certa .escolher,.opcoes-ce button.certa{background:var(--menta);border-color:#34D399;color:#065F46}
.alt.certa .letra{background:#10B981;border-color:#10B981;color:#FFF}
.alt.errada .escolher,.opcoes-ce button.errada{background:var(--alerta-fundo);border-color:#FDBA74;color:var(--alerta-texto)}
.alt.errada .letra{background:#F97316;border-color:#F97316;color:#FFF}
.alt .pct{margin-left:auto;font-size:13px;color:var(--suave);padding-left:8px;white-space:nowrap}
.acoes-questao{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center}
.resultado{display:flex;gap:12px;align-items:flex-start;padding:14px 18px;border-radius:18px;font-size:16px;line-height:1.5}
.resultado.ok{background:var(--menta);color:#065F46;border:1px solid var(--menta-borda)}
.resultado.erro{background:var(--alerta-fundo);color:var(--alerta-texto);border:1px solid var(--alerta-borda)}
.resultado.neutro{background:var(--fundo);border:1px solid var(--borda)}
.resultado b{font-weight:600}
.comentario{border-top:1px solid var(--borda);padding-top:18px;display:flex;flex-direction:column;gap:12px}
.conteudo{font-size:16.5px;line-height:1.7;color:var(--texto)}
.conteudo p{margin:0 0 12px}
.conteudo p:last-child{margin-bottom:0}
.conteudo h1,.conteudo h2,.conteudo h3{margin:28px 0 12px}
.conteudo h1{font-size:28px}.conteudo h2{font-size:23px}.conteudo h3{font-size:19px}
.conteudo ul,.conteudo ol{padding-left:22px;margin:0 0 12px}
.conteudo li{margin-bottom:6px}
.conteudo blockquote{margin:0 0 14px;padding:12px 18px;border-left:3px solid var(--esmeralda);background:var(--menta);border-radius:0 14px 14px 0}
.conteudo table{border-collapse:collapse;width:100%;margin:0 0 16px;font-size:15px;display:block;overflow-x:auto}
.conteudo th,.conteudo td{border:1px solid var(--borda);padding:8px 12px;text-align:left;vertical-align:top}
.conteudo th{background:var(--fundo);font-weight:600}
.conteudo code{background:var(--fundo);border:1px solid var(--borda);border-radius:6px;padding:1px 6px;font-size:.92em}
.conteudo strong{color:var(--titulo)}
.explicacao{background:var(--fundo);border:1px solid var(--borda);border-radius:18px;padding:16px 18px}
.parecidas{display:flex;flex-direction:column;gap:8px}
.parecidas a{display:block;padding:12px 16px;border-radius:16px;border:1px solid var(--borda);background:var(--fundo);color:var(--texto);text-decoration:none;font-size:15px;line-height:1.45}
.parecidas a:hover{border-color:var(--borda-forte)}
.parecidas a small{display:block;color:var(--suave);font-size:13px;margin-bottom:2px}
.navegar{display:flex;justify-content:space-between;gap:10px;align-items:center}
.mapa{display:grid;grid-template-columns:repeat(auto-fill,minmax(36px,1fr));gap:6px}
.mapa a{height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:500;text-decoration:none;color:var(--texto);background:var(--fundo);border:1px solid var(--borda)}
.mapa a.c{background:var(--menta);border-color:var(--menta-borda);color:#065F46}
.mapa a.e{background:var(--alerta-fundo);border-color:var(--alerta-borda);color:var(--alerta-texto)}
.mapa a.atual{background:#0A0A0A;color:#FFF;border-color:#0A0A0A}
.lateral{position:sticky;top:86px;display:flex;flex-direction:column;gap:14px}
.lateral .cartao{padding:20px}
.ferramentas{display:flex;flex-wrap:wrap;gap:6px}
.ferramentas button{display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:0 14px;border-radius:999px;border:1px solid var(--borda);background:var(--cartao);font-family:var(--fonte);font-size:14px;color:var(--texto);cursor:pointer}
.ferramentas button:hover{border-color:var(--borda-forte)}
.ferramentas button[aria-pressed="true"]{background:var(--menta);border-color:var(--menta-borda);color:#065F46}
dialog{border:none;border-radius:var(--raio);padding:0;width:min(520px,calc(100% - 32px));box-shadow:0 30px 60px -20px rgba(0,0,0,.4)}
dialog::backdrop{background:rgba(10,10,10,.4)}
dialog .cartao{border:none}

/* Tabelas */
.caixa-tabela{overflow-x:auto;background:var(--cartao);border:1px solid var(--borda);border-radius:var(--raio)}
.tabela{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;font-size:15px}
.tabela th,.tabela td{text-align:left;padding:14px 18px;border-bottom:1px solid var(--borda);vertical-align:middle}
.tabela th{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--suave);font-weight:500;white-space:nowrap}
.tabela tr:last-child td{border-bottom:none}
.tabela td.num{text-align:right;white-space:nowrap}

/* Desempenho */
.grafico{display:flex;align-items:flex-end;gap:4px;height:140px;padding-top:10px}
.grafico .col{flex:1;display:flex;flex-direction:column;justify-content:flex-end;height:100%;position:relative}
.grafico .col i{display:block;background:#D4D4D4;border-radius:4px 4px 0 0;min-height:2px}
.grafico .col i.c{background:var(--esmeralda);border-radius:0}
.grafico .col:hover::after{content:attr(data-dica);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translateX(-50%);background:#0A0A0A;color:#FFF;font-size:12px;padding:4px 8px;border-radius:8px;white-space:nowrap;z-index:2}
.legenda{display:flex;gap:16px;font-size:13px;color:var(--suave)}
.legenda i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:-1px}
.materia-linha{display:grid;grid-template-columns:minmax(0,1fr) 110px 54px;gap:14px;align-items:center;padding:10px 0;border-bottom:1px solid var(--borda)}
.materia-linha:last-child{border-bottom:none}
.materia-linha .pct{text-align:right;font-weight:600;color:var(--titulo);font-variant-numeric:tabular-nums}
.materia-linha .pct.baixo{color:var(--alerta-texto)}
.materia-linha small{color:var(--suave);font-size:13px}

/* Plano */
.semana{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}
@media (max-width:1000px){.semana{grid-template-columns:minmax(0,1fr)}}
.dia{background:var(--cartao);border:1px solid var(--borda);border-radius:20px;padding:14px;display:flex;flex-direction:column;gap:8px;min-width:0}
.dia.hoje{border-color:#34D399;box-shadow:0 0 0 3px var(--menta)}
.dia h3{font-size:15px}
.bloco{background:var(--fundo);border:1px solid var(--borda);border-radius:12px;padding:8px 10px;font-size:14px;line-height:1.35}
.bloco small{display:block;color:var(--suave);font-size:12px}
.pesos{display:flex;flex-direction:column;gap:8px}
.peso{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border:1px solid var(--borda);border-radius:14px;background:var(--cartao)}
.peso select{min-height:40px;border-radius:10px;border:1px solid var(--borda-forte);padding:0 10px;font-family:var(--fonte);font-size:15px;background:var(--cartao)}

/* Revisão */
.passos{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.passos li{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;font-size:13px;color:var(--suave)}
.bola{width:64px;height:64px;border-radius:32px;background:var(--cartao);border:1px solid var(--borda);display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;color:var(--titulo)}
.bola b{font-size:22px;font-weight:600}
.bola small{font-size:11px;color:var(--suave)}

/* Teoria */
.lista-assuntos{display:flex;flex-direction:column}
.lista-assuntos a,.lista-assuntos .item{display:flex;align-items:center;gap:12px;padding:12px 4px;border-bottom:1px solid var(--borda);text-decoration:none;color:var(--texto)}
.lista-assuntos a:last-child{border-bottom:none}
.lista-assuntos a:hover .nome{color:var(--titulo);text-decoration:underline}
.lista-assuntos .nome{flex:1}
.lista-assuntos .sub .nome{padding-left:20px;font-size:15px}
.marcador{width:22px;height:22px;border-radius:11px;border:1px solid var(--borda-forte);flex-shrink:0;display:flex;align-items:center;justify-content:center}
.marcador.feito{background:var(--esmeralda);border-color:var(--esmeralda);color:#FFF}
.aula{max-width:760px}
.aula .conteudo{font-size:18px;line-height:1.75}

footer.rodape{border-top:1px solid var(--borda);padding-block:24px;color:var(--suave);font-size:14px}
footer.rodape .wrap{display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between}
@media (max-width:860px){footer.rodape{padding-bottom:100px}}

.btn.icone-so{padding:0;width:40px;min-height:40px}
@media (max-width:860px){.topo .direita .btn span{display:none}.topo .direita .btn{padding:0 12px}}

/* Barra da questão: cronômetro, compartilhar, setas */
.barra-questao{display:flex;align-items:center;gap:8px}
.cronometro{display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:0 14px;border-radius:999px;border:1px solid var(--borda);background:var(--cartao);font-family:var(--fonte);font-size:14px;color:var(--titulo);cursor:pointer;font-variant-numeric:tabular-nums}
.cronometro .crono-valor{font-weight:600}
.cronometro .crono-rotulo{color:var(--suave)}
.cronometro.parado{color:var(--suave);background:var(--fundo)}
.cronometro.parado .crono-valor::after{content:" · pausado";font-weight:400}
.cronometro.pausado-auto .crono-valor::after{content:" · pausa automática";font-weight:400;color:var(--suave)}
.botao-icone{width:38px;height:38px;border-radius:19px;border:1px solid var(--borda);background:var(--cartao);display:inline-flex;align-items:center;justify-content:center;color:var(--titulo);cursor:pointer}
.botao-icone:hover,.cronometro:hover{border-color:var(--borda-forte)}
.setas{display:flex;gap:8px;align-items:center}
.aviso-erro{font-size:14px;color:var(--suave);border-top:1px solid var(--borda);padding-top:14px;margin-top:2px}
button.link{background:none;border:none;padding:0;font:inherit;color:var(--esmeralda-texto);text-decoration:underline;cursor:pointer}
.bloco-abrir{display:flex;flex-direction:column;gap:12px}
.bloco-abrir>button.abrir{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 18px;border-radius:999px;border:1px solid var(--borda-forte);background:var(--cartao);font-family:var(--fonte);font-size:15px;font-weight:500;color:var(--titulo);cursor:pointer}
.bloco-abrir>button.abrir[aria-expanded="true"]{background:var(--fundo)}
.lembrar-escolha{font-size:13px;color:var(--suave);display:flex;align-items:center;gap:6px}
.lembrar-escolha input{accent-color:#10B981}
@media (max-width:600px){.cronometro .crono-rotulo{display:none}.setas #pular span{display:none}}

/* Questão em largura total; informações do caderno discretas */
.resolver{grid-template-columns:minmax(0,1fr)}
.figura{display:block;max-width:min(100%,560px);margin:0 auto}
.info-questao{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:-8px}
.info-botoes{display:flex;gap:4px;align-items:center}
.popover{position:relative}
.popover summary{list-style:none;cursor:pointer;min-height:32px;display:inline-flex;align-items:center}
.popover summary::-webkit-details-marker{display:none}
.popover[open] summary{color:var(--titulo)}
.popover-caixa{position:absolute;right:0;top:36px;z-index:15;width:280px;background:var(--cartao);border:1px solid var(--borda);border-radius:18px;box-shadow:0 18px 40px -16px rgba(23,23,23,.3);padding:14px;display:flex;flex-direction:column;gap:10px}
.popover-caixa.largo{width:min(360px,calc(100vw - 32px))}
.popover-caixa p+p{margin-top:2px}
#aviso-copiado{margin-left:6px;color:var(--esmeralda-texto)}

.cabeca-questao{display:flex;flex-direction:column;gap:6px;margin-top:-6px}
.etiquetas.discretas .etiqueta{font-size:12px;padding:2px 10px;background:transparent}
.etiquetas.discretas .etiqueta.verde{background:var(--menta)}
.origem-questao{font-size:13px}

.placar{display:inline-flex;align-items:center;gap:2px;margin-left:8px;padding:3px;border:1px solid var(--borda);border-radius:999px;background:var(--cartao);vertical-align:middle}
.placar-item{display:inline-flex;align-items:center;gap:5px;padding:2px 10px;border-radius:999px;font-size:13px;color:var(--suave)}
.placar-item b{color:var(--titulo);font-weight:600;font-variant-numeric:tabular-nums}
.placar-item i{width:7px;height:7px;border-radius:4px;display:inline-block}
.placar-item.acertos i{background:#10B981}
.placar-item.acertos b{color:#047857}
.placar-item.erros i{background:#F97316}
.placar-item.erros b{color:#C2410C}
.placar-item.pct{background:#0A0A0A;color:#FFF;font-weight:600}
@media (max-width:600px){.placar{margin:6px 0 0;display:flex;width:max-content}}
