/* [CÓPIA] fonte: docs/rodada_rn_ia_identidade_2026-10-26/DO_JEAN_v2/auri_ia_v2.css — Jean, ciclo 2 (26/10). Cópia letra a letra; só os tokens --aui-* (mesmo valor) e o toque 44 (AUTORIZADO POR RAPHAEL 27/10). */
/* ══ VAI PRO APP · INÍCIO ══  auri_ia_v2.css — Auri IA: o ícone (.aui), a moldura (.aui-moldura), o botão (.aui-btn), o card (.rnd-ia). Ciclo 2 · 26/10/2026.
   Carregar DEPOIS de montagem_v5.css (sobrescreve a pele do .rnd-ia por cascata). Lê os tokens do app: --rnia --rnia-tinta --rnia-eyebrow --rnia-ouro --rnia-luz
   --text --text2 --text3 --fs-* --ui --ease --line --card-line-1 --limao --verm --verde --azul.
   PRECISA do bloco <svg class="aui-defs"> (gradientes #auiCasa #auiNuc #auiVidro #auiTerm) UMA vez no body — como os <symbol> do menu. Sem ele, o glifo cai em roxo chapado.
   REGRA MÁQUINA: passos discretos; todas as partes mudam no mesmo quadro; sem antecipação, sem atraso entre camadas, sem sobra; ao parar, para seco.
   A ÚNICA DESACELERAÇÃO desta folha é a da LUZ DA MOLDURA ao acender (auiAcende, cubic-bezier .22,.61,.36,1 — é luz, desacelera). O ÍCONE ACENDE SECO: toda mudança
   de pose é troca de classe, sem transition; em loop só transform/opacity; o efeito de luz do glifo (blur) é ESTÁTICO numa camada própria (.aui-luz) que só muda de opacity.
   Em repouso nada se mexe — nem o filete do card.
   RELÓGIO ÚNICO: 4 degraus × 600 ms = 2,4 s = uma volta da luz; um degrau por quarto de volta; ícone e luz começam e param no mesmo quadro.
   MOVIMENTO (caminho B · o sinal percorre o circuito): um pacote de luz salta do núcleo pro terminal — trilha 2 · trilha 1 · topo da casa · nuvem — e o circuito vai
   ficando aceso atrás dele; no 4º degrau o terminal acende; recomeça apagando tudo de uma vez. No concluiu o circuito fecha aceso num quadro. O miolo, por família, trabalha junto.
   O glifo é UMA string (AUI_SVG, no fim desta prancha), injetada em <i class="aui aui--N"> — como o _MCB_SVG do cérebro.
   Partes: .aui-luz (halos, blur estático) · .aui-vidro (o vidro) · .aui-casa + .aui-casa-fio (a casa e o fio de relevo) · .aui-t1/.aui-t2 (trilhas) · .aui-nuc (núcleo) ·
   .aui-haste + .aui-term (o fio e o terminal: a nuvem) · .aui-sinal .aui-s1/.aui-s2/.aui-s3 (o pacote, 3 posições) · .aui-f-* (o miolo por função; .aui-g64/.aui-g28 = geometria por tamanho).
   ── 1 · tokens que já vivem no app (declarados aqui só pra prancha abrir sozinha) ── */
:root{--rnia:#9d5cff;--rnia-tinta:#cba7ff;--rnia-eyebrow:#c7a6f5;--rnia-ouro:#c99652;--rnia-luz:#f2d8aa;--rnia-papel-a:#151310;--rnia-papel-b:#0b0a08}
:root{--aui-solido:#b07cff;--aui-claro:#f3ecff;--aui-halo:#a874ff;--aui-halo-veu:#b58bff;--aui-escuro:#0a0806;--aui-hover:#a86fff;--aui-toque:#b98cff;--aui-chao-sobe:#141008;--aui-branco:#fff}   /* cores do molde viram tokens --aui-* (mesmo valor; risco 3 do diretor de arte) */
.rnd-ia,.aui-btn,.aui-salva,.rnp-rnia-title{--ui:'Jost','Avenir Next',system-ui,-apple-system,'Segoe UI',sans-serif;--card-line-1:rgba(255,255,255,.18);--limao:#fde047}   /* tokens que a folha lê e o Montador não declara: valor da prancha / do app (27/10) */
@property --rnia-giro{syntax:'<angle>';inherits:false;initial-value:169deg}
@property --aui-sobe{syntax:'<angle>';inherits:false;initial-value:0deg}
.aui-defs{position:absolute;width:0;height:0;overflow:hidden}

/* ── 2 · O ÍCONE: caixa, tamanhos, peso de traço por tamanho (px de tela ≈ 1,5 em todos) ──
   svg = --d × .8432 (régua do aro do cérebro: 88 → 0,598 px/u · 64 → 0,435 · 56 → 0,381 · 28 → 0,190 · 24 → 0,163 · 22 → 0,150 · 20 → 0,136).
   MATERIAL (porta aberta por Raphael 26/10, só no glifo): aresta em degradê roxo (#dcc8ff → #9d5cff → #6b3ad8, luz no alto-esquerdo), vidro roxo dentro da casa,
   núcleo aceso (var(--aui-claro) → #cba7ff → #9d5cff), halos atrás (blur estático), fio de relevo dentro da aresta. Por tamanho: 88/64 tudo · 56 sem o fio de relevo · 28 sem o fio,
   halo mais largo (10 u) · 24/22/20 CHAPADO (sem degradê, sem vidro, sem halo, sem pacote interno) — o efeito borrava a silhueta, ali ele sai. */
.aui{--d:64px;--aui-w:3.4px;--aui-wt:2.6px;--aui-ns:1;--aui-ts:1;--aui-dim:.38;--aui-slot:.22;--aui-blur:8px;--aui-t:0s;position:relative;display:inline-grid;place-items:center;flex:none;width:var(--d);height:var(--d);color:var(--rnia);vertical-align:middle;line-height:0}
.aui svg{display:block;width:calc(var(--d)*.8432);height:calc(var(--d)*.7344);overflow:visible}
.aui--88{--d:88px;--aui-w:2.6px;--aui-wt:2px;--aui-blur:8px}
.aui--64{--d:64px;--aui-w:3.4px;--aui-wt:2.6px;--aui-blur:8px}
.aui--56{--d:56px;--aui-w:4px;--aui-wt:3px;--aui-blur:8px}
.aui--28{--d:28px;--aui-w:7.5px;--aui-wt:6px;--aui-ns:1.4;--aui-ts:1.5;--aui-blur:10px}
.aui--24{--d:24px;--aui-w:9px;--aui-wt:8.5px;--aui-ns:1.9;--aui-ts:1.8}
.aui--22{--d:22px;--aui-w:9.5px;--aui-wt:8.5px;--aui-ns:2.1;--aui-ts:1.9}
.aui--20{--d:20px;--aui-w:10.5px;--aui-wt:9.5px;--aui-ns:2.3;--aui-ts:2}
/* o que cada tamanho carrega: 88/64/56 tudo · 28 casa + trilha 1 + núcleo + fio · 24/22/20 casa + núcleo + fio */
.aui--28 .aui-t2,.aui--28 .aui-luz-t2,.aui--28 .aui-s1,.aui--24 .aui-t1,.aui--24 .aui-t2,.aui--22 .aui-t1,.aui--22 .aui-t2,.aui--20 .aui-t1,.aui--20 .aui-t2{display:none}
/* as partes — a pintura vem por variável pra regra de inversão trocar num lugar só */
.aui .aui-casa,.aui .aui-t1,.aui .aui-t2{fill:none;stroke:var(--aui-pint,url(#auiCasa));stroke-linecap:round;stroke-linejoin:round}
.aui .aui-haste{fill:none;stroke:var(--aui-pint-solid,var(--aui-solido));stroke-linecap:round}            /* linha tem bbox zero: degradê não pega, vai sólido */
.aui .aui-casa,.aui .aui-haste{stroke-width:var(--aui-w)}
.aui .aui-t1,.aui .aui-t2{stroke-width:var(--aui-wt);opacity:var(--aui-dim)}
.aui .aui-casa-fio{fill:none;stroke:var(--aui-fio,var(--aui-claro));stroke-width:1.3px;opacity:.26}        /* a segunda espessura: um fio de luz dentro da aresta (88/64) */
.aui .aui-vidro{fill:var(--aui-vidro,url(#auiVidro))}
.aui .aui-nuc,.aui .aui-f rect,.aui .aui-nuc-meio rect{fill:var(--aui-pint-nuc,url(#auiNuc))}
.aui .aui-term{fill:var(--aui-pint-term,url(#auiTerm))}
.aui .aui-nuc,.aui .aui-term,.aui .aui-nuc-meio,.aui .aui-barra{transform-box:fill-box;transform-origin:center}
.aui .aui-nuc,.aui .aui-nuc-meio{transform:scale(var(--aui-ns))}
.aui .aui-term{transform:scale(var(--aui-ts))}
.aui .aui-f,.aui .aui-nuc-meio,.aui .aui-g28{display:none}
.aui .aui-f .aui-slot{opacity:var(--aui-slot)}                                                    /* peça/linha por vir: o vão que vai encher */
/* o pacote (caminho B): três posições, uma acesa por vez */
.aui .aui-sinal line{fill:none;stroke:var(--aui-pacote,var(--aui-claro));stroke-width:calc(var(--aui-w)*1.15);stroke-linecap:round;opacity:0}
/* os halos: blur ESTÁTICO (filter só aqui, nunca em elemento que se mexe); o que muda é a opacity de cada halo */
.aui .aui-luz{pointer-events:none}
.aui .aui-luz>*{filter:url(#auiBlur8)}.aui--28 .aui-luz>*{filter:url(#auiBlur10)}   /* = blur(var(--aui-blur)) do molde (8 u; 10 u a 28) como <filter> SVG do index: o WebKit não borra filho de SVG — AUTORIZADO POR RAPHAEL (27/10, prompt do porte) */
.aui .aui-luz-casa{fill:none;stroke:var(--aui-luz,var(--aui-halo));stroke-width:calc(var(--aui-w)*1.9);opacity:.5}   /* a sombra atrás */
.aui .aui-luz-t1,.aui .aui-luz-t2{fill:none;stroke:var(--aui-luz,var(--aui-halo));stroke-width:calc(var(--aui-wt)*2.2);opacity:0}
.aui .aui-luz-miolo{fill:var(--aui-luz,var(--aui-halo));opacity:.5}
.aui .aui-luz-term{fill:var(--aui-luz,var(--aui-halo));opacity:.45}
/* por tamanho: o que SAI */
.aui--56 .aui-casa-fio,.aui--28 .aui-casa-fio{display:none}
.aui--24,.aui--22,.aui--20{--aui-pint:currentColor;--aui-pint-nuc:currentColor;--aui-pint-term:currentColor;--aui-pint-solid:currentColor}
.aui--24 .aui-luz,.aui--22 .aui-luz,.aui--20 .aui-luz,.aui--24 .aui-vidro,.aui--22 .aui-vidro,.aui--20 .aui-vidro,.aui--24 .aui-casa-fio,.aui--22 .aui-casa-fio,.aui--20 .aui-casa-fio,
.aui--24 .aui-s1,.aui--24 .aui-s2,.aui--22 .aui-s1,.aui--22 .aui-s2,.aui--20 .aui-s1,.aui--20 .aui-s2{display:none}
/* regra de inversão: o roxo é dela; onde o chão JÁ é dela, o ícone vira tinta — clara sobre o véu (card, janelas da IA; o halo continua roxo-claro atrás), escura sobre o botão cheio (sem halo) */
.rnd-ia .aui,.wkb-rev-panel .aui,#wkbMetodologiaOverlay .aui{color:var(--text);--aui-pint:var(--text);--aui-pint-nuc:var(--text);--aui-pint-term:var(--text);--aui-pint-solid:var(--text);--aui-fio:var(--text);--aui-luz:var(--aui-halo-veu);--aui-vidro:rgba(240,235,224,.045);--aui-pacote:var(--aui-branco)}
.aui-btn--primario .aui{color:var(--aui-escuro);--aui-pint:var(--aui-escuro);--aui-pint-nuc:var(--aui-escuro);--aui-pint-term:var(--aui-escuro);--aui-pint-solid:var(--aui-escuro);--aui-pacote:var(--aui-claro)}
.aui-btn--primario .aui .aui-luz,.aui-btn--primario .aui .aui-vidro,.aui-btn--primario .aui .aui-casa-fio{display:none}

/* ── 3 · POSES (estados estáticos). Todas mudam de uma vez: é classe, não transição. ── */
.aui--chamado .aui-t1,.aui--chamado .aui-t2,.aui--concluiu .aui-t1,.aui--concluiu .aui-t2{opacity:1}            /* o circuito fecha aceso num quadro */
.aui--chamado .aui-luz>*,.aui--concluiu .aui-luz>*{opacity:.9}
.aui--chamado .aui-term,.aui--concluiu .aui-term,.aui--chamado .aui-haste,.aui--concluiu .aui-haste{opacity:1}
.aui--atenta .aui-t2{opacity:1}.aui--atenta .aui-luz-t2{opacity:.7}                                              /* PROPOSTO: «posso revisar isto?» */
.aui--erro{color:var(--text3);--aui-pint:currentColor;--aui-pint-nuc:currentColor;--aui-pint-term:currentColor;--aui-pint-solid:currentColor}   /* apagou: tinta morta, sem material */
.aui--erro .aui-luz,.aui--erro .aui-vidro,.aui--erro .aui-casa-fio{display:none}
.aui--erro .aui-t1,.aui--erro .aui-t2,.aui--semcredito .aui-t1,.aui--semcredito .aui-t2{opacity:0}
.aui--erro .aui-nuc,.aui--semcredito .aui-nuc{fill:none;stroke:currentColor;stroke-width:calc(var(--aui-wt)/var(--aui-ns))}
.aui--semcredito .aui-luz-miolo,.aui--semcredito .aui-luz-t1,.aui--semcredito .aui-luz-t2{opacity:0}
.aui--semrede .aui-term{fill:none;stroke:currentColor;stroke-width:calc(var(--aui-wt)/var(--aui-ts))}                /* o fio não chega: terminal oco, haste cortada */
.aui--semrede .aui-haste{stroke-dasharray:3 100}
.aui--semrede .aui-luz-term{opacity:0}
.aui--parcial .aui-nuc{display:none}
.aui--parcial .aui-nuc-meio{display:block}
.aui--parcial .aui-nuc-r{fill:none;stroke:currentColor;stroke-width:calc(var(--aui-wt)/var(--aui-ns))}              /* PROPOSTO: veio metade */

/* ── 4 · PENSANDO · BASE COMUM (toda função, todo tamanho): 4 degraus × 600 ms. O pacote salta e o circuito acende atrás dele:
   d1 pacote na trilha 2 · d2 trilha 2 acesa, pacote na trilha 1 · d3 trilha 1 acesa, pacote no topo da casa · d4 casa cheia, pacote some, terminal acende (chegou à nuvem)
   → recomeça apagando tudo no mesmo quadro. Valores iguais dentro de cada degrau: o degrau é dado, não interpolado. ── */
.aui--pensa .aui-s1{animation:auiS1 2.4s linear var(--aui-t) infinite}
.aui--pensa .aui-s2{animation:auiS2 2.4s linear var(--aui-t) infinite}
.aui--pensa .aui-s3{animation:auiS3 2.4s linear var(--aui-t) infinite}
.aui--pensa .aui-t2{animation:auiT2 2.4s linear var(--aui-t) infinite}
.aui--pensa .aui-luz-t2{animation:auiLuzT2 2.4s linear var(--aui-t) infinite}
.aui--pensa .aui-t1{animation:auiT1 2.4s linear var(--aui-t) infinite}
.aui--pensa .aui-luz-t1{animation:auiLuzT1 2.4s linear var(--aui-t) infinite}
.aui--pensa .aui-luz-casa{animation:auiLuzCasa 2.4s linear var(--aui-t) infinite}
.aui--pensa .aui-term,.aui--pensa .aui-haste{animation:auiTerm 2.4s linear var(--aui-t) infinite}
.aui--pensa .aui-luz-term{animation:auiLuzTerm 2.4s linear var(--aui-t) infinite}
.aui--pensa .aui-luz-miolo{opacity:.85}
@keyframes auiS1{0%,24.9%{opacity:1}25%,100%{opacity:0}}
@keyframes auiS2{0%,24.9%{opacity:0}25%,49.9%{opacity:1}50%,100%{opacity:0}}
@keyframes auiS3{0%,49.9%{opacity:0}50%,74.9%{opacity:1}75%,100%{opacity:0}}
@keyframes auiT2{0%,24.9%{opacity:var(--aui-dim)}25%,100%{opacity:1}}
@keyframes auiLuzT2{0%,24.9%{opacity:0}25%,100%{opacity:.75}}
@keyframes auiT1{0%,49.9%{opacity:var(--aui-dim)}50%,100%{opacity:1}}
@keyframes auiLuzT1{0%,49.9%{opacity:0}50%,100%{opacity:.75}}
@keyframes auiLuzCasa{0%,74.9%{opacity:.5}75%,100%{opacity:.95}}
@keyframes auiTerm{0%,74.9%{opacity:var(--aui-dim)}75%,100%{opacity:1}}
@keyframes auiLuzTerm{0%,74.9%{opacity:0}75%,100%{opacity:1}}
/* progresso REAL (PROPOSTO): com item contável o relógio sai e o porte põe o degrau como classe estática — .aui--passo-1..4 = fração processada (⌊n/total × 4⌋). O texto conta («12 de 18»). */
.aui--passo-1 .aui-s1,.aui--passo-2 .aui-s2,.aui--passo-3 .aui-s3{opacity:1}
.aui--passo-2 .aui-t2,.aui--passo-3 .aui-t2,.aui--passo-4 .aui-t2,.aui--passo-3 .aui-t1,.aui--passo-4 .aui-t1,.aui--passo-4 .aui-term,.aui--passo-4 .aui-haste{opacity:1}
.aui--passo-2 .aui-luz-t2,.aui--passo-3 .aui-luz-t2,.aui--passo-4 .aui-luz-t2,.aui--passo-3 .aui-luz-t1,.aui--passo-4 .aui-luz-t1{opacity:.75}
.aui--passo-4 .aui-luz-term{opacity:1}.aui--passo-4 .aui-luz-casa{opacity:.95}
[class*="aui--passo-"] .aui-luz-miolo{opacity:.85}
/* ── 5 · PENSANDO · POR FUNÇÃO (≥ 28 px): o palco limpa (trilhas somem — o pacote continua) e o núcleo vira o trabalho, em 3 degraus; o terminal confirma no 4º.
   Só forma e ritmo, nunca pictograma, nunca cor nova. Sem a classe de família, vale a base. ── */
.aui--ler .aui-f-ler,.aui--pensar .aui-f-pensar,.aui--montar .aui-f-montar,.aui--escrever .aui-f-escrever{display:block}
.aui--ler .aui-nuc,.aui--pensar .aui-nuc,.aui--montar .aui-nuc,.aui--escrever .aui-nuc{display:none}
.aui--ler .aui-t1,.aui--ler .aui-t2,.aui--pensar .aui-t1,.aui--pensar .aui-t2,.aui--montar .aui-t1,.aui--montar .aui-t2,.aui--escrever .aui-t1,.aui--escrever .aui-t2,
.aui--ler .aui-luz-t1,.aui--ler .aui-luz-t2,.aui--pensar .aui-luz-t1,.aui--pensar .aui-luz-t2,.aui--montar .aui-luz-t1,.aui--montar .aui-luz-t2,.aui--escrever .aui-luz-t1,.aui--escrever .aui-luz-t2{opacity:0;animation:none}
/* geometria por tamanho: 64 (e 88/56) usa .aui-g64; 28 usa .aui-g28 (formas ≥ 2 px, vãos ≥ 1,5 px em tela: linhas 10 u / vão 8 · peças 22 u / vão 10 · barra 10 u · pratos 24 u / vão 10) */
.aui--28 .aui-g64{display:none}.aui--28 .aui-g28{display:block}
/* LER · varredura: a barra desce em 3 posições (−12 · 0 · +12 u) — passa a linha pelo que entrou, de cima pra baixo */
.aui--ler .aui-barra{transform:translateY(-12px)}
.aui--ler.aui--pensa .aui-barra{animation:auiLer 2.4s linear var(--aui-t) infinite}
@keyframes auiLer{0%,24.9%{transform:translateY(-12px)}25%,49.9%{transform:translateY(0)}50%,100%{transform:translateY(12px)}}
/* PENSAR · balança: esquerda · direita · as duas — pesa um lado contra o outro */
.aui--pensar .aui-br{opacity:var(--aui-slot)}
.aui--pensar.aui--pensa .aui-bl{animation:auiBL 2.4s linear var(--aui-t) infinite}
.aui--pensar.aui--pensa .aui-br{animation:auiBR 2.4s linear var(--aui-t) infinite}
@keyframes auiBL{0%,24.9%{opacity:1}25%,49.9%{opacity:var(--aui-slot)}50%,100%{opacity:1}}
@keyframes auiBR{0%,24.9%{opacity:var(--aui-slot)}25%,49.9%{opacity:1}50%,100%{opacity:1}}
/* MONTAR · empilhar: 1 · 2 · 3 peças (a 28: 1 · 2), da esquerda pra direita — cada degrau é um exercício posto no vão que o esperava */
.aui--montar.aui--pensa .aui-c2{animation:auiPasso2 2.4s linear var(--aui-t) infinite}
.aui--montar.aui--pensa .aui-c3{animation:auiPasso3 2.4s linear var(--aui-t) infinite}
/* ESCREVER · linhas: 1 · 2 · 3 (a 28: 1 · 2); a última curta: ainda não acabou */
.aui--escrever.aui--pensa .aui-l2{animation:auiPasso2 2.4s linear var(--aui-t) infinite}
.aui--escrever.aui--pensa .aui-l3{animation:auiPasso3 2.4s linear var(--aui-t) infinite}
@keyframes auiPasso2{0%,24.9%{opacity:var(--aui-slot)}25%,100%{opacity:1}}
@keyframes auiPasso3{0%,49.9%{opacity:var(--aui-slot)}50%,100%{opacity:1}}
/* ── 6 · 24/22/20: só a base. As famílias não existem aqui (a função se lê no texto ao lado); o pacote tem 3 posições: núcleo · topo da casa · terminal ── */
.aui--24 .aui-f,.aui--22 .aui-f,.aui--20 .aui-f{display:none}
.aui--24 .aui-nuc,.aui--22 .aui-nuc,.aui--20 .aui-nuc{display:block}
.aui--24.aui--pensa .aui-nuc,.aui--22.aui--pensa .aui-nuc,.aui--20.aui--pensa .aui-nuc{animation:auiNucMini 2.4s linear var(--aui-t) infinite}
.aui--24.aui--pensa .aui-s3,.aui--22.aui--pensa .aui-s3,.aui--20.aui--pensa .aui-s3{animation:auiS3Mini 2.4s linear var(--aui-t) infinite}
@keyframes auiNucMini{0%,24.9%{opacity:1}25%,74.9%{opacity:var(--aui-dim)}75%,100%{opacity:1}}
@keyframes auiS3Mini{0%,24.9%{opacity:0}25%,74.9%{opacity:1}75%,100%{opacity:0}}
.aui--24.aui--semrede .aui-haste,.aui--24.aui--semrede .aui-term,.aui--22.aui--semrede .aui-haste,.aui--22.aui--semrede .aui-term,.aui--20.aui--semrede .aui-haste,.aui--20.aui--semrede .aui-term{opacity:0}   /* no pequeno, sem rede = a antena some inteira */
.aui--24.aui--parcial .aui-nuc,.aui--22.aui--parcial .aui-nuc,.aui--20.aui--parcial .aui-nuc{display:none}
/* ── 7 · quadros congelados (prancha e storyboard): o mesmo relógio, parado num tempo ── */
.aui--congela *{animation-play-state:paused!important}
.aui--q1{--aui-t:-.1s}.aui--q2{--aui-t:-.7s}.aui--q3{--aui-t:-1.3s}.aui--q4{--aui-t:-1.9s}

/* ── 8 · A MOLDURA (a que Raphael gosta — mesmo anel cônico da pele, mesmas cores; ouro #c99652/#f2d8aa = exceção autorizada 26/10, só aqui).
   Vive no card .rnd-ia. Repouso: NÃO existe (card quieto). Chamada: acende numa volta de 300° em 1,05 s (de −131° a 169°) no MESMO quadro em que o ícone acende —
   a desaceleração é só da luz. Pensando: orbita 2,4 s, SEMPRE de 169° a 529° — a volta começa e termina no ponteiro.
   REGRA DE PORTE (o ponteiro, sem salto): quando a resposta chega, o JS NÃO troca a classe na hora: mede t desde o início da órbita, fixa
   animation-iteration-count = ceil(t / 2,4) e espera o animationend — a volta corrente fecha em 169° e a luz para seco ali; o resultado é escrito NESSE quadro
   (espera máxima 2,4 s). O ícone roda o mesmo relógio desde o mesmo quadro: o pacote chega ao terminal quando a luz chega ao ponteiro. Depois: .aui-moldura--para.
   Sai: some de uma vez quando o professor vê o resultado. Nada de respirar (rniaRespira/rniaOndula/rniaDeriva não entram aqui). ── */
.rnd-ia.aui-moldura{border:1.5px solid transparent;
  background:radial-gradient(120% 90% at 0% 0%,rgba(157,92,255,.12),transparent 55%) padding-box,
    linear-gradient(180deg,var(--rnia-papel-a),var(--rnia-papel-b)) padding-box,
    conic-gradient(from var(--rnia-giro) at 50% 50%,rgba(157,92,255,.55) 0deg,var(--rnia-ouro) 96deg,var(--rnia-luz) 138deg,var(--rnia-ouro) 184deg,rgba(157,92,255,.62) 262deg,var(--rnia) 318deg,rgba(157,92,255,.55) 360deg) border-box;
  box-shadow:0 0 26px rgba(157,92,255,.20),0 12px 40px rgba(0,0,0,.45)}
.rnd-ia.aui-moldura::before{display:none}                                              /* com a moldura acesa, o filete sai: uma luz só */
.aui-moldura--chamada{animation:auiAcende 1.05s cubic-bezier(.22,.61,.36,1) both}     /* = rniaAcende, agora pousando no ponteiro */
.aui-moldura--pensa{animation:auiOrbita 2.4s linear infinite}                          /* = rniaPensa, de ponteiro a ponteiro */
.aui-moldura--para{--rnia-giro:169deg}                                                 /* a pose final: a ponta creme no começo da linha do resultado */
@keyframes auiAcende{from{--rnia-giro:-131deg}to{--rnia-giro:169deg}}
@keyframes auiOrbita{from{--rnia-giro:169deg}to{--rnia-giro:529deg}}

/* ── 9 · O BOTÃO DA AURI IA. Primário = chamar a IA (roxo cheio, herói só dentro do bloco dela; corta embaixo-direita como o ouro da casa).
   Recurso = um recurso (fantasma com a borda em degradê de hoje; corta embaixo-esquerda). Toque ≥ 44 nos dois. ── */
.aui-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:0 16px;border:1px solid transparent;border-radius:12px 12px 12px 6px;
  color:var(--text2);font:500 var(--fs-sm)/1.2 var(--ui);letter-spacing:.01em;cursor:pointer;text-align:center;-webkit-tap-highlight-color:transparent;
  background:linear-gradient(180deg,rgba(12,10,8,.55),rgba(12,10,8,.35)) padding-box,linear-gradient(120deg,rgba(157,92,255,.34),rgba(157,92,255,.10) 55%,rgba(201,150,82,.16)) border-box;
  transition:color .18s var(--ease),background-color .18s var(--ease),border-color .18s var(--ease)}
.aui-btn .aui{--d:20px;margin-left:-2px}
.aui-btn:hover{color:var(--text);background:linear-gradient(180deg,rgba(14,11,9,.6),rgba(14,11,9,.4)) padding-box,linear-gradient(120deg,rgba(157,92,255,.75),rgba(201,150,82,.45) 60%,rgba(242,216,170,.55)) border-box}
.aui-btn:active,.aui-btn.is-toque{color:var(--text);background:linear-gradient(180deg,rgba(157,92,255,.16),rgba(157,92,255,.08)) padding-box,linear-gradient(120deg,var(--rnia),rgba(201,150,82,.6) 60%,var(--rnia-luz)) border-box}
.aui-btn:focus-visible{outline:2px solid rgba(203,167,255,.8);outline-offset:2px}
.aui-btn--primario{min-height:46px;padding:0 18px;border-radius:12px 12px 6px 12px;background:var(--rnia);color:var(--aui-escuro);font-size:var(--fs-md);box-shadow:inset 0 1px 0 rgba(255,255,255,.22)}
.aui-btn--primario:hover{background:var(--aui-hover);color:var(--aui-escuro)}
.aui-btn--primario:active,.aui-btn--primario.is-toque{background:var(--aui-toque);color:var(--aui-escuro)}
/* estados — os mesmos do ícone, mais «toque» e «resultado pronto». O botão LÊ estado (chamada, rede, crédito); nunca grava nada. */
.aui-btn.is-pensa{color:var(--text);cursor:progress;background:linear-gradient(180deg,rgba(157,92,255,.14),rgba(157,92,255,.06)) padding-box,linear-gradient(120deg,rgba(157,92,255,.6),rgba(201,150,82,.3) 60%,rgba(242,216,170,.4)) border-box}
.aui-btn--primario.is-pensa{background:rgba(157,92,255,.22);color:var(--text);box-shadow:none;border-color:rgba(157,92,255,.6)}
.aui-btn--primario.is-pensa .aui{color:var(--text);--aui-pint:var(--text);--aui-pint-nuc:var(--text);--aui-pint-term:var(--text);--aui-pint-solid:var(--text)}
.aui-btn.is-pronto{color:var(--text);background:linear-gradient(180deg,rgba(157,92,255,.14),rgba(157,92,255,.06)) padding-box,linear-gradient(120deg,var(--rnia),var(--rnia-ouro) 60%,var(--rnia-luz)) border-box}
.aui-btn--primario.is-pronto{background:var(--rnia);color:var(--aui-escuro);border-color:transparent}
.aui-btn.is-parcial{color:var(--text);background:linear-gradient(180deg,rgba(12,10,8,.55),rgba(12,10,8,.35)) padding-box,linear-gradient(120deg,rgba(157,92,255,.6),rgba(157,92,255,.25)) border-box}
.aui-btn.is-erro{color:var(--text);background:rgba(240,97,107,.06);border-color:rgba(240,97,107,.55)}
.aui-btn.is-off,.aui-btn:disabled,.aui-btn--primario.is-off,.aui-btn--primario:disabled{color:var(--text3);background:none;border-color:var(--line);box-shadow:none;cursor:default}
.aui-btn--primario.is-off,.aui-btn--primario:disabled{background:rgba(157,92,255,.10);border-color:rgba(157,92,255,.18)}
.aui-btn.is-off .aui,.aui-btn:disabled .aui{color:var(--text3);--aui-pint:currentColor;--aui-pint-nuc:currentColor;--aui-pint-term:currentColor;--aui-pint-solid:currentColor}
.aui-btn.is-off .aui .aui-luz,.aui-btn:disabled .aui .aui-luz{display:none}
.aui-btn .aui-custo{font:400 var(--fs-xs)/1 var(--ui);opacity:.8;margin-left:2px}   /* PROPOSTO: custo visível */
/* o botão do SALVAR é da casa (ouro) e segue o ciclo da casa; a órbita da IA é luz na MOLDURA do bloco, o salvar é traço de 2 px no PRÓPRIO botão — nunca os dois na mesma peça */
.aui-salva{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:0 18px;border:2px solid transparent;border-radius:12px 12px 6px 12px;background:var(--gold);color:var(--aui-escuro);font:500 var(--fs-md)/1.2 var(--ui);cursor:pointer;box-shadow:inset 0 1px 0 rgba(255,255,255,.22)}
.aui-salva.is-salvando{background:rgba(201,162,39,.14);color:var(--text);border-color:rgba(201,162,39,.35);box-shadow:none;cursor:progress}
.aui-salva.is-subindo{color:var(--text);box-shadow:none;cursor:progress;background:linear-gradient(var(--aui-chao-sobe),var(--aui-chao-sobe)) padding-box,conic-gradient(from var(--aui-sobe) at 50% 50%,var(--azul) 0deg 80deg,rgba(91,141,239,.12) 80deg 360deg) border-box;animation:auiSobe 1.2s linear infinite}
.aui-salva.is-nuvem{background:rgba(61,220,151,.08);color:var(--text);border-color:var(--verde);box-shadow:none}
.aui-salva.is-local{background:none;color:var(--text);border-color:var(--card-line-1);box-shadow:none}
@keyframes auiSobe{to{--aui-sobe:360deg}}

/* ── 10 · O CARD COPILOTO (.rnd-ia) — proposta A de recursos (sujeita à escolha de Raphael). Mesmas classes/ids do app; o que é novo tem prefixo aui-.
   Morre: o hexágono do .eb::before, o grayscale dos .rn-metric-info, rniaFilete (o filete fica, parado), rniaPulso e o glow do ponto da nota, o glow dos pontos de status. ── */
.rnd-ia{position:relative;border:1px solid rgba(157,92,255,.20);border-radius:14px 14px 14px 7px;padding:14px 16px 12px;overflow:hidden;color:var(--text2);font:400 var(--fs-sm)/1.45 var(--ui);
  background:radial-gradient(120% 90% at 0% 0%,rgba(157,92,255,.10),transparent 55%),radial-gradient(90% 70% at 100% 100%,rgba(201,150,82,.05),transparent 60%),linear-gradient(165deg,rgba(255,255,255,.015),rgba(255,255,255,.008)),var(--aui-escuro)}
.rnd-ia::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,rgba(157,92,255,.15),var(--rnia) 22%,var(--rnia-ouro) 55%,var(--rnia-luz) 72%,rgba(201,150,82,.15));animation:none}
.rnd-ia:has(.rnd-ia-note:not(:empty)){border-color:rgba(157,92,255,.30)}
.rnd-ia-head{display:flex;align-items:center;gap:8px;position:relative;z-index:1}
.rnd-ia-head .eb{display:inline-flex;align-items:center;gap:8px;min-width:0;color:var(--rnia-eyebrow);font:500 var(--fs-micro)/1.2 var(--ui);letter-spacing:.17em;text-transform:uppercase}
.rnd-ia-head .eb::before{display:none}
.rnd-ia-head .eb .aui{margin:0 2px 0 -2px}
.rnd-ia-head .rn-metric-info{position:relative;width:32px;height:32px;flex:none;display:grid;place-items:center;padding:0;border:1px solid rgba(157,92,255,.22);border-radius:9px 9px 9px 4px;background:rgba(10,8,6,.3);color:var(--text2);cursor:pointer;filter:none;opacity:1;font:inherit;transition:color .18s var(--ease),border-color .18s var(--ease)}
.rnd-ia-head .rn-metric-info::before{content:'';position:absolute;inset:-6px}         /* toque 44 */
.rnd-ia-head .rn-metric-info svg{width:18px;height:18px;display:block;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.rnd-ia-head .rn-metric-info:hover{color:var(--rnia-tinta);border-color:rgba(157,92,255,.45)}
.rnd-ia-head button.rn-metric-info:first-of-type{margin-left:auto}
.rnd-ia-note{position:relative;z-index:1;display:block;padding-left:17px;margin-top:11px;font-size:var(--fs-sm);line-height:1.45;color:var(--text2);text-wrap:pretty}   /* bloco com o ponto absoluto: o texto do app (#rndIaNote) tem <b> solto + nó de texto — nunca flex aqui */
.rnd-ia-note:empty{display:none}
.rnd-ia-note::before{content:'';position:absolute;left:0;top:7px;width:7px;height:7px;border-radius:50%;background:var(--rnia)}
.rnd-ia-note b{color:var(--text);font-weight:500}
.rnd-ia-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px;position:relative;z-index:1}
.rnd-ia-actions .aui-btn{padding:0 10px;white-space:normal}
.rnd-ia-actions .aui-btn--primario{grid-column:1/-1}
.rnd-ia-foot{position:relative;z-index:1;margin-top:11px;display:flex;align-items:center;justify-content:space-between;gap:10px;font:italic 400 var(--fs-xs)/1.4 var(--ui);color:var(--text3)}
.aui-link{border:0;background:none;padding:6px 0;margin:-6px 0;color:var(--rnia-tinta);font:500 var(--fs-xs)/1 var(--ui);letter-spacing:.02em;cursor:pointer;font-style:normal;text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(203,167,255,.45)}
/* status: sempre ícone (ponto) + rótulo; o texto fica na tinta, só o ponto leva a cor de status; ponto sem glow (o brilho é só do glifo e da moldura) */
.aui-status{position:relative;z-index:1;display:flex;align-items:flex-start;gap:10px;margin-top:11px;font-size:var(--fs-sm);line-height:1.45;color:var(--text)}
.aui-status .pt{width:7px;height:7px;border-radius:50%;flex:none;margin-top:7px;background:currentColor}
.aui-status--limao .pt{color:var(--limao)}.aui-status--verm .pt{color:var(--verm)}
.aui-status span{flex:1;min-width:0}
.aui-status .aui-link{margin-left:4px}
.aui-linha{position:relative;z-index:1;margin-top:8px;font:400 var(--fs-xs)/1.4 var(--ui);color:var(--text2)}
/* a resposta que esperou: chip de resultado preso ao aluno certo; a primeira palavra já nasce em --text onde a luz parou */
.aui-pronta{position:relative;z-index:1;display:flex;align-items:center;gap:10px;margin-top:11px;padding:9px 10px 9px 12px;border:1px solid rgba(157,92,255,.5);border-radius:10px 10px 10px 5px;background:rgba(157,92,255,.08);color:var(--text2);font-size:var(--fs-sm)}
.aui-pronta span{flex:1;min-width:0}
.aui-pronta b{color:var(--text);font-weight:500}
.aui-pronta .aui-btn{min-height:36px;padding:0 12px;font-size:var(--fs-xs)}
.aui-pronta .aui-btn::before{content:'';position:absolute;inset:-4px 0}   /* toque 44 — AUTORIZADO POR RAPHAEL (27/10) */
/* PROPOSTO (recibo): o que ela está lendo, uma linha sob o botão em pensando; cada item é tocável no primeiro meio segundo pra corrigir o contexto (item 10 do DA) */
.aui-recibo{position:relative;z-index:1;display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;font:400 var(--fs-xs)/1.4 var(--ui);color:var(--text2);font-variant-numeric:tabular-nums}
.aui-recibo .aui-chip{border:1px dashed rgba(203,167,255,.4);border-radius:8px 8px 8px 4px;background:none;padding:4px 8px;color:var(--text2);font:400 var(--fs-xs)/1.2 var(--ui);cursor:pointer;min-height:28px}
.aui-recibo .aui-chip{position:relative}.aui-recibo .aui-chip::before{content:'';position:absolute;inset:-8px 0}   /* toque 44 — AUTORIZADO POR RAPHAEL (27/10) */
.aui-recibo .aui-chip:hover{border-color:var(--rnia-tinta);color:var(--text)}

/* ── 11 · reduzido: pose-chave parada + texto com reticências; nenhuma órbita, nenhum degrau; moldura acesa e parada ── */
@media (prefers-reduced-motion:reduce){
  .aui *{animation:none!important}
  .aui--pensa .aui-t1,.aui--pensa .aui-t2,.aui--pensa .aui-term,.aui--pensa .aui-haste,.aui--pensa .aui-nuc,.aui--pensa .aui-s2{opacity:1}
  .aui--pensa .aui-luz-t1,.aui--pensa .aui-luz-t2{opacity:.75}
  .aui--ler .aui-t1,.aui--ler .aui-t2,.aui--pensar .aui-t1,.aui--pensar .aui-t2,.aui--montar .aui-t1,.aui--montar .aui-t2,.aui--escrever .aui-t1,.aui--escrever .aui-t2,
  .aui--ler .aui-luz-t1,.aui--ler .aui-luz-t2,.aui--pensar .aui-luz-t1,.aui--pensar .aui-luz-t2,.aui--montar .aui-luz-t1,.aui--montar .aui-luz-t2,.aui--escrever .aui-luz-t1,.aui--escrever .aui-luz-t2{opacity:0}
  .aui-moldura--chamada,.aui-moldura--pensa,.aui-salva.is-subindo{animation:none}
  .aui-salva.is-subindo{border-color:var(--azul);background:var(--aui-chao-sobe)}
  .aui-btn{transition:none}
}
/* ══ VAI PRO APP · FIM ══ */
/* rail da Home do Mac (27/10, §10 do molde): ícone 24 em repouso, cor da área = roxo, nunca animado — herda o tom da estrela que sai */
#rnp-hd .rn8 .aui.rn13a{color:var(--purple,#9d5cff)}
/* PDF da avaliação (27/10, §4 do molde · ler): ícone 28 + a frase na mesma linha */
#asmOverlay .aval-feedback.sending{display:flex;align-items:center;gap:10px}
/* relatório e estratégia da avaliação (27/10, §4 do molde · escrever): ícone 28 + a frase onde o texto vai nascer, sem moldura */
.asm-loading.aui-escreve{display:flex;align-items:center;justify-content:center;gap:10px}
/* «Trazer uma ficha» (27/10): a regra .tf-arq__st svg (14 px, traço) não pode pegar o glifo — volta ao tamanho e à tinta do molde */
.tf-arq__st .aui svg{width:calc(var(--d)*.8432);height:calc(var(--d)*.7344);stroke:initial;fill:initial;stroke-width:initial;stroke-linecap:initial;stroke-linejoin:initial}
/* «lido pela IA» da conferência (27/10, §10 do molde): o glow dos pontos de status morre — o ponto fica, sem halo */
.tf-ia i{box-shadow:none}
