/* Trilha lateral (js/trilha-lateral.js): linha vertical fina com nos ao lado das listas de materias e assuntos.
   Toda regra comeca por html.premium. --tl-c e --tl-rgb sao a cor da materia (mesma tabela do cronograma). */
html.premium { --tl-g: 46px; --tl-lw: 2px; --tl-no: 18px; --tl-fundo: #0E0E12; --tl-cinza: rgba(255,255,255,.14); }

/* estacao no topo: anel de progresso + texto */
html.premium .tl-estacao { display: flex; align-items: center; gap: 12px; padding: 12px 14px 10px 0; box-sizing: border-box; }
html.premium .tl-anel { position: relative; flex: 0 0 auto; width: var(--tl-r, 40px); height: var(--tl-r, 40px); display: inline-block; }
html.premium .tl-anel svg { width: 100%; height: 100%; display: block; }
html.premium .tl-a-bg { fill: var(--tl-fundo); stroke: rgba(255,255,255,.12); stroke-width: 4; }
html.premium .tl-a-fg { fill: none; stroke: var(--tl-c, #B087F7); stroke-width: 4; stroke-linecap: round; transition: stroke-dashoffset .6s ease; }
html.premium .tl-anel.tl-acento .tl-a-fg { stroke: #B087F7; }
html.premium .tl-anel b { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; font-family: var(--p-fh, inherit); font-weight: 700; font-size: calc(var(--tl-r, 40px) * .27); color: #fff; letter-spacing: 0; }
html.premium .tl-txt { min-width: 0; display: flex; flex-direction: column; gap: 1px; }
html.premium .tl-txt b { font-family: var(--p-fh, inherit); font-weight: 600; font-size: .86rem; color: #fff; }
html.premium .tl-txt span { font-size: .76rem; color: var(--p-tx3, #8d8d96); }

/* linha */
html.premium .tbl-wrap.tl-on { position: relative; }
html.premium .tl-ov { position: absolute; inset: 0; pointer-events: none; z-index: 1; overflow: visible; }
html.premium .tl-linha, html.premium .tl-prog, html.premium .tl-hl { position: absolute; width: var(--tl-lw); margin-left: calc(var(--tl-lw) / -2); border-radius: 2px; display: block; }
html.premium .tl-linha { background: var(--tl-cinza); transition: background .25s ease; }
html.premium .tl-prog { background: var(--tl-c, #B087F7); transition: height .5s ease; }
html.premium .tl-hl { background: var(--tl-c, #B087F7); opacity: 0; width: calc(var(--tl-lw) + 2px); margin-left: calc((var(--tl-lw) + 2px) / -2); box-shadow: 0 0 10px rgba(var(--tl-rgb, 176,135,247), .6); transition: opacity .2s ease, top .18s ease, height .18s ease; }

/* nos = circulos de status que ja existem na linha do assunto */
html.premium .tbl.materia .st-dot.tl-no { position: relative; z-index: 2; width: var(--tl-no); height: var(--tl-no); box-sizing: border-box; border: 2px solid rgba(var(--tl-rgb, 176,135,247), .6); background: var(--tl-fundo); color: transparent; box-shadow: none; line-height: 1; font-size: .62rem; display: inline-flex; align-items: center; justify-content: center; transition: transform .18s ease, box-shadow .18s ease, background .2s ease, border-color .2s ease; }
html.premium .tbl.materia .st-dot.tl-e-andamento { background: linear-gradient(90deg, var(--tl-c) 50%, var(--tl-fundo) 50%); border-color: var(--tl-c); }
html.premium .tbl.materia .st-dot.tl-e-concluido { background: var(--tl-c); border-color: var(--tl-c); color: #0A0A0C; }
html.premium .tbl.materia .st-dot.tl-e-revisao { background: var(--tl-c); border-color: var(--tl-fundo); color: transparent; outline: 2px dashed var(--tl-c); outline-offset: 0; }
html.premium .tbl.materia .st-dot.tl-sem { opacity: .45; }
html.premium .tbl.materia .st-dot.tl-no:hover, html.premium .tbl.materia tr.tl-hov .st-dot.tl-no { transform: scale(1.14); box-shadow: 0 0 0 4px rgba(var(--tl-rgb, 176,135,247), .18), 0 0 12px rgba(var(--tl-rgb, 176,135,247), .45); }
html.premium .tbl.materia .st-dot.tl-e-aqui { animation: tl-pulso 2.4s ease-in-out infinite; }
@keyframes tl-pulso { 0%, 100% { box-shadow: 0 0 0 0 rgba(var(--tl-rgb, 176,135,247), .45); } 50% { box-shadow: 0 0 0 6px rgba(var(--tl-rgb, 176,135,247), 0); } }

/* destaque da linha ao passar o mouse ou clicar no no */
html.premium .tbl.materia tr.tl-hov > td { box-shadow: inset 0 0 0 999px rgba(var(--tl-rgb, 176,135,247), .07); }
html.premium .tbl.materia tr.tl-sel > td { box-shadow: inset 0 0 0 999px rgba(var(--tl-rgb, 176,135,247), .13); }
html.premium .tbl.materia tr.tl-sel > td:first-child { box-shadow: inset 0 0 0 999px rgba(var(--tl-rgb, 176,135,247), .13), inset 3px 0 0 var(--tl-c); }

/* etiqueta discreta */
html.premium .tl-aqui-tag { display: inline-block; vertical-align: middle; margin-left: 6px; padding: 1px 8px; border-radius: 999px; font-size: .64rem; font-weight: 600; line-height: 1.5; letter-spacing: .02em; white-space: nowrap; color: var(--tl-c, #B087F7); background: rgba(var(--tl-rgb, 176,135,247), .12); border: 1px solid rgba(var(--tl-rgb, 176,135,247), .4); }

/* tela do concurso: gutter com um no por materia */
html.premium .list.tl-lista { position: relative; padding-left: var(--tl-g); }
html.premium .list.tl-lista > .tl-estacao { margin-left: calc(var(--tl-g) * -1); }
html.premium .tl-gno { position: absolute; width: calc(var(--tl-no) - 2px); height: calc(var(--tl-no) - 2px); margin: calc((var(--tl-no) - 2px) / -2) 0 0 calc((var(--tl-no) - 2px) / -2); border-radius: 50%; box-sizing: border-box; border: 2px solid rgba(var(--tl-rgb), .6); background: var(--tl-fundo); z-index: 2; transition: transform .18s ease, box-shadow .18s ease; }
html.premium .tl-gno.tl-e-andamento { background: linear-gradient(90deg, var(--tl-c) 50%, var(--tl-fundo) 50%); border-color: var(--tl-c); }
html.premium .tl-gno.tl-e-concluido { background: var(--tl-c); border-color: var(--tl-c); }
html.premium .tl-gno.tl-e-revisao { background: var(--tl-c); border-color: var(--tl-fundo); outline: 2px dashed var(--tl-c); }
html.premium .tl-gno.tl-sem { opacity: .45; }
html.premium .tl-gno.tl-hov { transform: scale(1.18); box-shadow: 0 0 0 4px rgba(var(--tl-rgb), .18), 0 0 12px rgba(var(--tl-rgb), .45); }
html.premium .tl-gno.tl-e-aqui { animation: tl-pulso 2.4s ease-in-out infinite; }
html.premium .tl-linha.tl-vivo { background: rgba(255,255,255,.26); }
html.premium .list.tl-lista a.row:hover { background: linear-gradient(90deg, rgba(var(--tl-rgb, 176,135,247), .09), transparent 70%) !important; }

@media (max-width: 900px) { html.premium { --tl-g: 40px; --tl-no: 17px; } }
@media (max-width: 560px) { html.premium { --tl-g: 30px; --tl-lw: 1px; --tl-no: 15px; }
  html.premium .tl-estacao { gap: 9px; padding-right: 10px; }
  html.premium .tl-txt b { font-size: .8rem; } html.premium .tl-txt span { font-size: .72rem; } }
@media (prefers-reduced-motion: reduce) {
  html.premium .tl-gno.tl-e-aqui, html.premium .tbl.materia .st-dot.tl-e-aqui { animation: none; }
  html.premium .tl-a-fg, html.premium .tl-prog, html.premium .tl-hl, html.premium .tl-no, html.premium .tl-gno { transition: none; }
}

/* 19/10/2026: assuntos e quantidade de flashcards mais afastados da linha da trilha e alinhados a direita para ficar organizado */
@media (min-width: 901px) {
  html.premium .tbl.materia tr:not(.grp):not(.cab) > td:nth-child(2) { padding-left: 20px; }
  html.premium .tbl.materia tr:not(.grp):not(.cab) > td.num:nth-child(3) { text-align: right; padding-right: 34px; white-space: nowrap; min-width: 150px; }
}
@media (min-width: 601px) and (max-width: 900px) {
  html.premium .tbl.materia tr:not(.grp):not(.cab) > td:nth-child(2) { padding-left: 14px; }
}

/* cabecalhos de topico: UMA barra de acento por cabecalho, centrada no eixo da trilha (--tl-x, medido em js) */
html.premium .tbl-wrap.tl-on { isolation: isolate; --tl-x: 27px; }
html.premium .tbl-wrap.tl-on .tl-ov { z-index: -1; }
html.premium .tbl.materia tr.grp > td:first-child, html.premium .tbl.materia tr.sub.cab > td:first-child { position: relative; box-shadow: none !important; border-left: 0 !important; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.grp > td:first-child::before, html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab > td:first-child::before {
  content: ""; position: absolute; left: calc(var(--tl-x) - 2px); top: 7px; bottom: 7px; width: 4px; border-radius: 4px;
  background: linear-gradient(180deg, #B087F7, var(--tl-c, #8F63E8)); box-shadow: 0 0 8px rgba(var(--tl-rgb, 176,135,247), .4); pointer-events: none; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d2 > td:first-child::before, html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d3 > td:first-child::before { opacity: .75; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.grp > td:first-child { padding-left: calc(var(--tl-x) + 18px) !important; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d1 > td:first-child { padding-left: calc(var(--tl-x) + 18px) !important; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d2 > td:first-child { padding-left: calc(var(--tl-x) + 30px) !important; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d3 > td:first-child { padding-left: calc(var(--tl-x) + 42px) !important; }
html.premium .tbl.materia tr.tg .tg-ic { width: 1em; margin-right: 7px; font-size: .78em; text-align: center; vertical-align: baseline; line-height: 1; }
html.premium .tbl.materia tr.tg > td > span[style*="opacity"] { margin-right: 2px; }

/* ===== hierarquia clara: topico (faixa), subtopico (discreto), assunto (folha com no) ===== */
html.premium .tbl-wrap.tl-on .tbl.materia { --tl-nv: 12px; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.grp > td, html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab > td { position: relative; line-height: 1.4; box-sizing: border-box; outline: 0 !important; }
/* nivel 1: topico */
html.premium .tbl-wrap.tl-on .tbl.materia tr.grp > td { --fs: .95rem; font-size: var(--fs); font-weight: 600; color: #fff !important; padding-top: 13px; padding-bottom: 13px; padding-right: 14px;
  background: linear-gradient(90deg, rgba(var(--tl-rgb, 176,135,247), .2), rgba(var(--tl-rgb, 176,135,247), .05) 65%, transparent) !important; border-top: 0 !important; border-bottom: 1px solid rgba(var(--tl-rgb, 176,135,247), .26) !important; }
/* nivel 2: subtopico, fundo discreto, sem caixa nem borda dupla */
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d1 > td { --fs: .9rem; font-size: var(--fs); font-weight: 600; color: var(--p-tx) !important; padding-top: 10px; padding-bottom: 10px; padding-right: 14px;
  background: rgba(255,255,255,.028) !important; border: 0 !important; border-bottom: 1px solid var(--p-line) !important; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d2 > td, html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d3 > td { --fs: .88rem; font-size: var(--fs); font-weight: 500; color: var(--p-tx2) !important; padding-top: 9px; padding-bottom: 9px; padding-right: 14px;
  background: rgba(255,255,255,.014) !important; border: 0 !important; border-bottom: 1px solid var(--p-line) !important; }
/* recuo por nivel (texto) e seta absoluta alinhada a primeira linha: quebra em duas linhas fica alinhada ao texto */
html.premium .tbl-wrap.tl-on .tbl.materia tr.grp > td:first-child { padding-left: calc(var(--tl-x) + 32px) !important; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d1 > td:first-child { padding-left: calc(var(--tl-x) + 32px + var(--tl-nv)) !important; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d2 > td:first-child { padding-left: calc(var(--tl-x) + 32px + var(--tl-nv) * 2) !important; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d3 > td:first-child { padding-left: calc(var(--tl-x) + 32px + var(--tl-nv) * 3) !important; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.tg .tg-ic { position: absolute; left: calc(var(--tl-x) + 10px); top: 0; margin: 0; width: 14px; height: calc(var(--fs, .9rem) * 1.4); padding-top: inherit; box-sizing: content-box; display: flex; align-items: center; justify-content: center; font-size: .7rem; line-height: 1; color: var(--p-tx3); transform-origin: 50% calc(50% + 0px); }
html.premium .tbl-wrap.tl-on .tbl.materia tr.grp.tg .tg-ic { padding-top: 13px; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d1 .tg-ic { padding-top: 10px; left: calc(var(--tl-x) + 10px + var(--tl-nv)); }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d2 .tg-ic { padding-top: 9px; left: calc(var(--tl-x) + 10px + var(--tl-nv) * 2); }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d3 .tg-ic { padding-top: 9px; left: calc(var(--tl-x) + 10px + var(--tl-nv) * 3); }
html.premium .tbl-wrap.tl-on .tbl.materia tr.tg.aberto .tg-ic { color: var(--tl-c, var(--p-ac)); }
/* numeracao em cor secundaria */
html.premium .tbl-wrap.tl-on .tbl.materia tr.tg > td > span[style*="opacity"] { opacity: 1 !important; color: var(--p-tx3); font-weight: 500; margin-right: 4px; }
/* barra de acento: nivel 1 mais marcada, nivel 2 e 3 finas */
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab > td:first-child::before { width: 3px; left: calc(var(--tl-x) - 1.5px); top: 9px; bottom: 9px; opacity: .7; box-shadow: 0 0 6px rgba(var(--tl-rgb, 176,135,247), .3); }
/* foco por teclado: realce leve, sem contorno duplo */
html.premium .tbl.materia tr.tg:focus-visible > td { outline: 0 !important; box-shadow: inset 0 0 0 999px rgba(var(--tl-rgb, 176,135,247), .1) !important; }
/* assunto (folha): titulo em peso normal, divisoria fina, espacamento regular */
html.premium .tbl-wrap.tl-on .tbl.materia tr.folha > td { border-bottom: 1px solid rgba(255,255,255,.06); padding-top: 12px; padding-bottom: 12px; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.folha > td:nth-child(2), html.premium .tbl-wrap.tl-on .tbl.materia tr.folha > td:nth-child(2) a, html.premium .tbl-wrap.tl-on .tbl.materia tr.folha > td:nth-child(2) span:not(.chip):not(.tl-aqui-tag) { font-weight: 500 !important; color: var(--p-tx) !important; overflow-wrap: break-word; }
/* nos mais legiveis: borda forte na cor da materia e brilho no ativo */
html.premium .tbl.materia .st-dot.tl-no { border-color: rgba(var(--tl-rgb, 176,135,247), .85); }
html.premium .tbl.materia .st-dot.tl-e-andamento { border-color: var(--tl-c); }
html.premium .tbl.materia .st-dot.tl-e-aqui { border-color: var(--tl-c); box-shadow: 0 0 0 3px rgba(var(--tl-rgb), .22), 0 0 14px rgba(var(--tl-rgb), .55); }
html.premium .tl-gno { border-color: rgba(var(--tl-rgb), .85); }
@media (max-width: 560px) {
  html.premium .tbl-wrap.tl-on .tbl.materia { --tl-nv: 9px; }
  html.premium .tbl-wrap.tl-on .tbl.materia tr.grp > td:first-child { padding-left: calc(var(--tl-x) + 26px) !important; }
  html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d1 > td:first-child { padding-left: calc(var(--tl-x) + 26px + var(--tl-nv)) !important; }
  html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d2 > td:first-child { padding-left: calc(var(--tl-x) + 26px + var(--tl-nv) * 2) !important; }
  html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d3 > td:first-child { padding-left: calc(var(--tl-x) + 26px + var(--tl-nv) * 3) !important; }
  html.premium .tbl-wrap.tl-on .tbl.materia tr.tg .tg-ic { width: 12px; left: calc(var(--tl-x) + 8px); }
  html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d1 .tg-ic { left: calc(var(--tl-x) + 8px + var(--tl-nv)); }
  html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d2 .tg-ic { left: calc(var(--tl-x) + 8px + var(--tl-nv) * 2); }
  html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d3 .tg-ic { left: calc(var(--tl-x) + 8px + var(--tl-nv) * 3); }
}

/* ===== arvore de estudo: estacoes (nos maiores) nos cabecalhos, linha continua por cima das faixas ===== */
html.premium .tbl-wrap.tl-on .tl-ov { z-index: 1; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.grp > td { --pt: 13px; --nd: 14px; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d1 > td { --pt: 10px; --nd: 11px; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d2 > td, html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d3 > td { --pt: 9px; --nd: 9px; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.grp > td:first-child::before, html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab > td:first-child::before,
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d2 > td:first-child::before, html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d3 > td:first-child::before {
  content: ""; position: absolute; z-index: 3; box-sizing: border-box; width: var(--nd); height: var(--nd); border-radius: 50%; bottom: auto; opacity: 1;
  left: calc(var(--tl-x) - var(--nd) / 2); top: calc(var(--pt) + var(--fs) * .7 - var(--nd) / 2);
  background: linear-gradient(135deg, #B087F7, var(--tl-c, #8F63E8)); border: 2px solid var(--tl-fundo);
  box-shadow: 0 0 0 1.5px rgba(var(--tl-rgb, 176,135,247), .55), 0 0 10px rgba(var(--tl-rgb, 176,135,247), .35); }
/* seta: mesma caixa e tamanho em todos os niveis, centrada na primeira linha do titulo */
html.premium .tbl-wrap.tl-on .tbl.materia tr.tg .tg-ic, html.premium .tbl-wrap.tl-on .tbl.materia tr.grp.tg .tg-ic, html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab .tg-ic {
  position: absolute; top: var(--pt); padding: 0; width: 14px; height: calc(var(--fs) * 1.4); display: flex; align-items: center; justify-content: center; font-size: .7rem; line-height: 1; margin: 0; box-sizing: border-box; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.grp .tg-ic { left: calc(var(--tl-x) + 12px); }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d1 .tg-ic { left: calc(var(--tl-x) + 12px + var(--tl-nv)); }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d2 .tg-ic { left: calc(var(--tl-x) + 12px + var(--tl-nv) * 2); }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d3 .tg-ic { left: calc(var(--tl-x) + 12px + var(--tl-nv) * 3); }
html.premium .tbl-wrap.tl-on .tbl.materia tr.tg:hover .tg-ic { color: var(--tl-c); }
/* pesos decrescentes e degrades na cor da materia */
html.premium .tbl-wrap.tl-on .tbl.materia tr.grp > td { font-weight: 650; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d1 > td { font-weight: 550; background: linear-gradient(90deg, rgba(var(--tl-rgb, 176,135,247), .08), rgba(255,255,255,.02) 55%, transparent) !important; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d2 > td { font-weight: 500; background: linear-gradient(90deg, rgba(var(--tl-rgb, 176,135,247), .05), transparent 50%) !important; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d3 > td { font-weight: 400; background: transparent !important; }
/* divisorias: so na linha, nunca por celula (celular empilha as celulas) */
html.premium .tbl-wrap.tl-on .tbl.materia tr.folha > td { border-bottom: 0 !important; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.folha { border-bottom: 1px solid rgba(255,255,255,.06); }
html.premium .tbl-wrap.tl-on .tbl.materia tr.folha:last-child { border-bottom: 0; }
@media (max-width: 560px) {
  html.premium .tbl-wrap.tl-on .tbl.materia tr.grp .tg-ic { left: calc(var(--tl-x) + 10px); width: 12px; }
  html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d1 .tg-ic { left: calc(var(--tl-x) + 10px + var(--tl-nv)); width: 12px; }
  html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d2 .tg-ic { left: calc(var(--tl-x) + 10px + var(--tl-nv) * 2); width: 12px; }
  html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d3 .tg-ic { left: calc(var(--tl-x) + 10px + var(--tl-nv) * 3); width: 12px; }
}

/* ===== tipografia escalonada: materia > topico > subtopico > assunto ===== */
html.premium #app:has(.tbl.materia) > h1.title { font-weight: 650 !important; letter-spacing: -.01em; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.grp > td { --fs: .92rem; font-size: .92rem !important; font-weight: 600 !important; letter-spacing: .005em; text-transform: none !important; line-height: 1.4; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d1 > td { --fs: .88rem; font-size: .88rem !important; font-weight: 500 !important; letter-spacing: .005em; text-transform: none !important; line-height: 1.4; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d2 > td { --fs: .86rem; font-size: .86rem !important; font-weight: 500 !important; text-transform: none !important; line-height: 1.4; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d3 > td { --fs: .84rem; font-size: .84rem !important; font-weight: 400 !important; text-transform: none !important; line-height: 1.4; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.tg > td > span[style*="opacity"] { font-weight: 500 !important; color: var(--p-tx3) !important; opacity: 1 !important; }
/* assunto (folha): peso 400, cinza claro, ate 2 linhas */
html.premium .tbl-wrap.tl-on .tbl.materia tr.folha > td:nth-child(2) { font-size: .88rem; line-height: 1.4; letter-spacing: .003em; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.folha > td:nth-child(2), html.premium .tbl-wrap.tl-on .tbl.materia tr.folha > td:nth-child(2) a,
html.premium .tbl-wrap.tl-on .tbl.materia tr.folha > td:nth-child(2) span:not(.chip):not(.tl-aqui-tag) { font-weight: 400 !important; color: #DEDEE8 !important; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.folha > td:nth-child(2) > a, html.premium .tbl-wrap.tl-on .tbl.materia tr.folha > td:nth-child(2) > span:not(.chip):not(.tl-aqui-tag) { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; overflow: hidden; }

/* ===== sem risquinho ao selecionar: so realce leve de fundo ===== */
html.premium .tl-hl { display: none !important; }
html.premium .tbl.materia tr.tl-sel > td, html.premium .tbl.materia tr.tl-sel > td:first-child { box-shadow: inset 0 0 0 999px rgba(var(--tl-rgb, 176,135,247), .08) !important; }
html.premium .tbl.materia tr.tl-hov > td { box-shadow: inset 0 0 0 999px rgba(var(--tl-rgb, 176,135,247), .06) !important; }
html.premium .tbl.materia tr:focus, html.premium .tbl.materia tr:focus-visible, html.premium .tbl.materia tr:active, html.premium .tbl.materia tr:focus > td, html.premium .tbl.materia tr:focus-visible > td, html.premium .tbl.materia tr:active > td { outline: 0 !important; border-left: 0 !important; }
html.premium .tbl.materia tr.tg:focus-visible > td { box-shadow: inset 0 0 0 999px rgba(var(--tl-rgb, 176,135,247), .08) !important; }
html.premium .tbl.materia .st-dot.tl-no:focus, html.premium .tbl.materia .st-dot.tl-no:active { outline: 0; }
html.premium .tbl.materia .st-dot.tl-no:hover, html.premium .tbl.materia tr.tl-hov .st-dot.tl-no, html.premium .tbl.materia tr.tl-sel .st-dot.tl-no { box-shadow: 0 0 0 3px rgba(var(--tl-rgb, 176,135,247), .16); transform: none; }

/* ===== indice editorial: numero em coluna propria, titulo com recuo fixo, chip a direita ===== */
html.premium .tbl-wrap.tl-on .tbl.materia { --tl-num: 34px; --tl-base: 28px; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.grp > td { --pt: 15px; --fs: .95rem; font-size: .95rem !important; font-weight: 600 !important; line-height: 1.45; padding-top: 15px; padding-bottom: 15px; border-bottom: 1px solid rgba(255,255,255,.07) !important;
  background: linear-gradient(90deg, rgba(var(--tl-rgb, 176,135,247), .09), rgba(var(--tl-rgb, 176,135,247), .02) 60%, transparent) !important; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d1 > td { --pt: 13px; --fs: .92rem; font-size: .92rem !important; line-height: 1.45; padding-top: 13px; padding-bottom: 13px; border-bottom: 1px solid rgba(255,255,255,.07) !important; background: rgba(255,255,255,.016) !important; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d2 > td, html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d3 > td { --pt: 11px; line-height: 1.45; padding-top: 11px; padding-bottom: 11px; border-bottom: 1px solid rgba(255,255,255,.06) !important; background: transparent !important; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d2 > td { --fs: .9rem; font-size: .9rem !important; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d3 > td { --fs: .88rem; font-size: .88rem !important; }
/* recuo do titulo = base + coluna do numero */
html.premium .tbl-wrap.tl-on .tbl.materia tr.grp > td:first-child { padding-left: calc(var(--tl-x) + var(--tl-base) + var(--tl-num) + 6px) !important; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d1 > td:first-child { padding-left: calc(var(--tl-x) + var(--tl-base) + var(--tl-num) + 6px + var(--tl-nv)) !important; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d2 > td:first-child { padding-left: calc(var(--tl-x) + var(--tl-base) + var(--tl-num) + 6px + var(--tl-nv) * 2) !important; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d3 > td:first-child { padding-left: calc(var(--tl-x) + var(--tl-base) + var(--tl-num) + 6px + var(--tl-nv) * 3) !important; }
/* numero: coluna fixa a esquerda do titulo */
html.premium .tbl-wrap.tl-on .tbl.materia tr.tg > td > span[style*="opacity"] { position: absolute; top: var(--pt); height: calc(var(--fs) * 1.45); display: flex; align-items: center; width: var(--tl-num); margin: 0 !important; font-variant-numeric: tabular-nums; letter-spacing: 0; font-size: .86em; font-weight: 500 !important; color: var(--p-tx3) !important; left: calc(var(--tl-x) + var(--tl-base)); }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d1 > td > span[style*="opacity"] { left: calc(var(--tl-x) + var(--tl-base) + var(--tl-nv)); }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d2 > td > span[style*="opacity"] { left: calc(var(--tl-x) + var(--tl-base) + var(--tl-nv) * 2); }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d3 > td > span[style*="opacity"] { left: calc(var(--tl-x) + var(--tl-base) + var(--tl-nv) * 3); }
/* seta a esquerda do numero */
html.premium .tbl-wrap.tl-on .tbl.materia tr.tg .tg-ic { height: calc(var(--fs) * 1.45); }
html.premium .tbl-wrap.tl-on .tbl.materia tr.grp .tg-ic { left: calc(var(--tl-x) + 12px); }
/* titulo: ate 2 linhas */
html.premium .tbl-wrap.tl-on .tbl.materia .tl-tit { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; overflow: hidden; overflow-wrap: anywhere; letter-spacing: .003em; }
/* chip do cronograma a direita da linha de cabecalho */
html.premium .tbl-wrap.tl-on .tbl.materia tr.grp > td .tl-aqui-tag, html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab > td .tl-aqui-tag { position: absolute; right: 14px; top: calc(var(--pt) + var(--fs) * .725 - 10px); margin: 0; height: 20px; line-height: 18px; padding-top: 0; padding-bottom: 0; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.grp > td:has(.tl-aqui-tag), html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab > td:has(.tl-aqui-tag) { padding-right: 190px !important; }
@media (max-width: 560px) {
  html.premium .tbl-wrap.tl-on .tbl.materia { --tl-num: 28px; --tl-base: 22px; }
  html.premium .tbl-wrap.tl-on .tbl.materia tr.grp > td:first-child { padding-left: calc(var(--tl-x) + var(--tl-base) + var(--tl-num) + 4px) !important; }
  html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d1 > td:first-child { padding-left: calc(var(--tl-x) + var(--tl-base) + var(--tl-num) + 4px + var(--tl-nv)) !important; }
  html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d2 > td:first-child { padding-left: calc(var(--tl-x) + var(--tl-base) + var(--tl-num) + 4px + var(--tl-nv) * 2) !important; }
  html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d3 > td:first-child { padding-left: calc(var(--tl-x) + var(--tl-base) + var(--tl-num) + 4px + var(--tl-nv) * 3) !important; }
  html.premium .tbl-wrap.tl-on .tbl.materia tr.grp > td:has(.tl-aqui-tag), html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab > td:has(.tl-aqui-tag) { padding-right: 14px !important; }
  html.premium .tbl-wrap.tl-on .tbl.materia tr.grp > td .tl-aqui-tag, html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab > td .tl-aqui-tag { position: static; display: table; margin: 6px 0 0 auto; }
}

/* ajustes finos do indice */
html.premium .tbl-wrap.tl-on .tbl.materia { --tl-num: 30px; }
@media (max-width: 560px) { html.premium .tbl-wrap.tl-on .tbl.materia { --tl-num: 26px; } }
@media (min-width: 901px) {
  html.premium .tbl-wrap.tl-on .tbl.materia tr.folha > td:nth-child(2) { padding-left: calc(var(--tl-x) + var(--tl-base) + var(--tl-num) + 6px + var(--tl-nv) - 46px - 10px); }
}
/* realce de selecao na linha inteira (nao por celula) */
html.premium .tbl.materia tr.tl-sel, html.premium .tbl.materia tr.tl-hov { background: rgba(var(--tl-rgb, 176,135,247), .06); }
html.premium .tbl.materia tr.tl-sel { background: rgba(var(--tl-rgb, 176,135,247), .1); }
html.premium .tbl.materia tr.folha.tl-sel > td, html.premium .tbl.materia tr.folha.tl-hov > td, html.premium .tbl.materia tr.folha.tl-sel > td:first-child { box-shadow: none !important; }
html.premium .tbl.materia tr.folha.tl-sel > td, html.premium .tbl.materia tr.folha.tl-hov > td, html.premium .tbl.materia tr.folha:hover > td { background: transparent !important; background-image: none !important; }
html.premium .tbl.materia tr.folha:hover { background: rgba(var(--tl-rgb, 176,135,247), .05); }
@media (max-width: 560px) { html.premium .tbl-wrap.tl-on .tbl.materia tr.grp > td .tl-aqui-tag, html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab > td .tl-aqui-tag { display: block; width: fit-content; border-radius: 999px; } }

/* "Você está aqui": a bolinha do ponto atual brilha mais, com halo pulsante e o chip em destaque */
html.premium .tbl.materia .st-dot.tl-no.tl-e-aqui, html.premium .tbl.materia tr .tl-e-aqui.st-dot.tl-no { border-color: var(--tl-c, #B087F7); background: var(--tl-c, #B087F7); box-shadow: 0 0 0 4px rgba(var(--tl-rgb, 176,135,247), .28), 0 0 16px 2px rgba(var(--tl-rgb, 176,135,247), .85); animation: tlAquiPulso 2s ease-in-out infinite; }
@keyframes tlAquiPulso { 0%, 100% { box-shadow: 0 0 0 4px rgba(var(--tl-rgb, 176,135,247), .22), 0 0 12px 1px rgba(var(--tl-rgb, 176,135,247), .6); } 50% { box-shadow: 0 0 0 8px rgba(var(--tl-rgb, 176,135,247), .1), 0 0 22px 4px rgba(var(--tl-rgb, 176,135,247), 1); } }
@media (prefers-reduced-motion: reduce) { html.premium .tbl.materia .st-dot.tl-no.tl-e-aqui { animation: none; } }
html.premium .tl-aqui-tag { font-weight: 700; background: rgba(var(--tl-rgb, 176,135,247), .22) !important; border: 1px solid rgba(var(--tl-rgb, 176,135,247), .7) !important; }

/* ===== hierarquia: subtopicos mais a direita, ligados ao topico por uma linha pontilhada com um ramo ate cada subtopico ===== */
html.premium .tbl-wrap.tl-on .tbl.materia { --tl-nv: 40px; --tl-cor: rgba(var(--tl-rgb, 176,135,247), .6); }
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub:not(.cab) { --pt: 11px; --fs: .88rem; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.fil > td:first-child, html.premium .tbl-wrap.tl-on .tbl.materia tr.fcont > td:first-child { position: relative; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.fil.d1 { --cx: calc(var(--tl-x) + var(--tl-base) + 9px); }
html.premium .tbl-wrap.tl-on .tbl.materia tr.fil.d2 { --cx: calc(var(--tl-x) + var(--tl-base) + var(--tl-nv) + 9px); }
html.premium .tbl-wrap.tl-on .tbl.materia tr.fil.d3 { --cx: calc(var(--tl-x) + var(--tl-base) + var(--tl-nv) * 2 + 9px); }
html.premium .tbl-wrap.tl-on .tbl.materia tr.fcont.fd1 { --cx: calc(var(--tl-x) + var(--tl-base) + 9px); }
html.premium .tbl-wrap.tl-on .tbl.materia tr.fcont.fd2 { --cx: calc(var(--tl-x) + var(--tl-base) + var(--tl-nv) + 9px); }
html.premium .tbl-wrap.tl-on .tbl.materia tr.fcont.fd3 { --cx: calc(var(--tl-x) + var(--tl-base) + var(--tl-nv) * 2 + 9px); }
html.premium .tbl-wrap.tl-on .tbl.materia tr.fil > td:first-child::after {
  content: ""; position: absolute; z-index: 1; pointer-events: none; box-sizing: border-box; left: var(--cx); top: 0; bottom: 0; width: calc(var(--tl-nv) - 27px);
  border-left: 2px dotted var(--tl-cor);
  background: repeating-linear-gradient(90deg, var(--tl-cor) 0 2px, transparent 2px 5px) 0 calc(var(--pt) + var(--fs) * .725 - 1px) / 100% 2px no-repeat; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.fil.ult > td:first-child::after { bottom: calc(100% - var(--pt) - var(--fs) * .725 - 1px); }
html.premium .tbl-wrap.tl-on .tbl.materia tr.fcont > td:first-child::before { content: ""; position: absolute; z-index: 1; pointer-events: none; left: var(--cx); top: 0; bottom: 0; border-left: 2px dotted var(--tl-cor); }
@media (max-width: 560px) {
  html.premium .tbl-wrap.tl-on .tbl.materia { --tl-nv: 28px; }
  html.premium .tbl-wrap.tl-on .tbl.materia tr.fil.d1, html.premium .tbl-wrap.tl-on .tbl.materia tr.fcont.fd1 { --cx: calc(var(--tl-x) + var(--tl-base) + 6px); }
  html.premium .tbl-wrap.tl-on .tbl.materia tr.fil.d2, html.premium .tbl-wrap.tl-on .tbl.materia tr.fcont.fd2 { --cx: calc(var(--tl-x) + var(--tl-base) + var(--tl-nv) + 6px); }
  html.premium .tbl-wrap.tl-on .tbl.materia tr.fil.d3, html.premium .tbl-wrap.tl-on .tbl.materia tr.fcont.fd3 { --cx: calc(var(--tl-x) + var(--tl-base) + var(--tl-nv) * 2 + 6px); }
  html.premium .tbl-wrap.tl-on .tbl.materia tr.fil > td:first-child::after { width: calc(var(--tl-nv) - 20px); }
}
html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d1 .tg-ic, html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d2 .tg-ic, html.premium .tbl-wrap.tl-on .tbl.materia tr.sub.cab.d3 .tg-ic { padding: 0 !important; }
html.premium .tbl-wrap.tl-on .tbl.materia { --tl-cor: rgba(var(--tl-rgb, 176,135,247), .8); }

/* itens (assuntos) dentro de um topico ou subtopico: ligados ao titulo por uma linha pontilhada com ramo, como os subtopicos */
html.premium .tbl-wrap.tl-on .tbl.materia tr.folha.fl > td:first-child { position: relative; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.folha.fd0 { --lx: calc(var(--tl-x) + var(--tl-base) + 9px); }
html.premium .tbl-wrap.tl-on .tbl.materia tr.folha.fd1 { --lx: calc(var(--tl-x) + var(--tl-base) + var(--tl-nv) + 9px); }
html.premium .tbl-wrap.tl-on .tbl.materia tr.folha.fd2 { --lx: calc(var(--tl-x) + var(--tl-base) + var(--tl-nv) * 2 + 9px); }
html.premium .tbl-wrap.tl-on .tbl.materia tr.folha.fd3 { --lx: calc(var(--tl-x) + var(--tl-base) + var(--tl-nv) * 3 + 9px); }
html.premium .tbl-wrap.tl-on .tbl.materia tr.folha.fl > td:first-child::after {
  content: ""; position: absolute; z-index: 1; pointer-events: none; box-sizing: border-box; left: var(--lx); top: 0; bottom: 0; width: calc(var(--tl-num) + var(--tl-nv) - 23px);
  border-left: 2px dotted var(--tl-cor);
  background: repeating-linear-gradient(90deg, var(--tl-cor) 0 2px, transparent 2px 5px) 0 50% / 100% 2px no-repeat; }
html.premium .tbl-wrap.tl-on .tbl.materia tr.folha.fl.ult > td:first-child::after { bottom: 50%; background-position: 0 100%; }
@media (max-width: 900px) {
  /* celular e tablet: a linha do assunto vira um bloco empilhado; o conector sai da linha inteira e nao so da celula do no */
  html.premium .tbl-wrap.tl-on .tbl.materia tr.folha.fl > td:first-child::after, html.premium .tbl-wrap.tl-on .tbl.materia tr.folha.fcont > td:first-child::before { content: none; }
  html.premium .tbl-wrap.tl-on .tbl.materia tr.folha.fl, html.premium .tbl-wrap.tl-on .tbl.materia tr.folha.fcont { position: relative; }
  html.premium .tbl-wrap.tl-on .tbl.materia tr.folha.fl > td:not(:first-child) { margin-left: 16px; }
  html.premium .tbl-wrap.tl-on .tbl.materia tr.folha.fl::after { content: ""; position: absolute; z-index: 1; pointer-events: none; box-sizing: border-box; left: var(--lx); top: 0; bottom: 0; width: 20px;
    border-left: 2px dotted var(--tl-cor); background: repeating-linear-gradient(90deg, var(--tl-cor) 0 2px, transparent 2px 5px) 0 32px / 100% 2px no-repeat; }
  html.premium .tbl-wrap.tl-on .tbl.materia tr.folha.fl.ult::after { bottom: calc(100% - 33px); background-position: 0 100%; }
  html.premium .tbl-wrap.tl-on .tbl.materia tr.folha.fcont::before { content: ""; position: absolute; z-index: 1; pointer-events: none; left: var(--cx); top: 0; bottom: 0; border-left: 2px dotted var(--tl-cor); }
}
@media (max-width: 560px) {
  html.premium .tbl-wrap.tl-on .tbl.materia tr.folha.fd0 { --lx: calc(var(--tl-x) + var(--tl-base) + 6px); }
  html.premium .tbl-wrap.tl-on .tbl.materia tr.folha.fd1 { --lx: calc(var(--tl-x) + var(--tl-base) + var(--tl-nv) + 6px); }
  html.premium .tbl-wrap.tl-on .tbl.materia tr.folha.fd2 { --lx: calc(var(--tl-x) + var(--tl-base) + var(--tl-nv) * 2 + 6px); }
  html.premium .tbl-wrap.tl-on .tbl.materia tr.folha.fl::after { width: 13px; }
}
