/* Janela da nuvem · volta 3 (uma só: hexágono + Ajustes) — [CÓPIA] fonte: docs/rodada_janela_nuvem_progresso_2026-10-21/DO_JEAN/janela_nuvem_progresso_jean_v3_2026-10-21.html, bloco «MIOLO · volta 3».
   Escopo: .rnn (o corpo rolável não vaza pras outras folhas .rnj--m; a fita vence o CSS antigo injetado pelo hexagonoSyncBundle). % 40px aprovada por Raphael. */
.rnn{--fs-micro:11.5px;--fs-xs:13px;--fs-sm:14.5px;--fs-md:16px;--fs-lg:18px;--fs-xl:22px}
.rnn .rnj-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-mask:linear-gradient(#000 calc(100% - 18px),transparent)}
.rnn{--ciano:#22d3ee;--roxo:#9d5cff}
.rnn-pct{font:500 40px/1 var(--rnj-serif);font-variant-numeric:tabular-nums;color:var(--rnj-text)}/* exceção aprovada por Raphael */
.rnn-pct small{font:400 var(--fs-md)/1 var(--rnj-ui);color:var(--rnj-text3);margin-left:2px}
.rnn-top{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:14px 0 10px}
.rnn-etapa{text-align:right;font:400 var(--fs-xs)/1.35 var(--rnj-ui);color:var(--rnj-text3)}.rnn-etapa b{display:block;font:500 var(--fs-sm)/1.35 var(--rnj-ui);color:var(--rnj-text)}
.rnn-trilho{position:relative;height:6px;border-radius:3px;background:rgba(255,255,255,.07);overflow:hidden}
.rnn-cheio{position:absolute;inset:0 auto 0 0;border-radius:3px;background:var(--ciano);transition:width .5s var(--rnj-ease)}
.rnn-cheio.desce{background:linear-gradient(90deg,var(--ciano) 0 var(--meio,50%),var(--rnj-azul) var(--meio,50%))}
.rnn-cheio.parou{background:linear-gradient(90deg,var(--ciano) 0 var(--meio,100%),var(--rnj-verm) var(--meio,100%))}
.rnn-cheio::after{content:"";position:absolute;top:0;right:0;width:30px;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.6));animation:rnnBrilho 1.4s linear infinite}
.rnn-cheio.parou::after{display:none}
@keyframes rnnBrilho{0%,100%{opacity:0}50%{opacity:1}}
.rnn-conta{display:flex;justify-content:space-between;margin-top:8px;font:400 var(--fs-xs)/1.3 var(--rnj-ui);color:var(--rnj-text3);font-variant-numeric:tabular-nums}.rnn-conta b{color:var(--rnj-text);font-weight:500}
.rnn-res{display:flex;gap:10px;margin-top:14px}
.rnn-res .c{flex:1;padding:10px 12px;border:1px solid rgba(255,255,255,.08);border-radius:11px 11px 11px 5px;background:rgba(0,0,0,.18)}
.rnn-res .v{font:500 var(--fs-xl)/1 var(--rnj-serif);color:var(--rnj-text);font-variant-numeric:tabular-nums}
.rnn-res .r{margin-top:5px;font:400 var(--fs-xs)/1.3 var(--rnj-ui);color:var(--rnj-text3)}
.rnn-g{display:flex;align-items:center;gap:12px;min-height:48px;border-bottom:1px solid rgba(255,255,255,.06);font:400 var(--fs-md)/1.3 var(--rnj-ui);color:var(--rnj-text)}
.rnn-g:last-child{border-bottom:0}
.rnn-g .ic{flex:none;width:28px;height:28px;display:grid;place-items:center;border-radius:8px 8px 8px 4px;background:rgba(255,255,255,.04);color:var(--rnj-text2)}
.rnn-g .ic svg{width:16px;height:16px}
.rnn-g .nm{flex:1;min-width:0}.rnn-g .nm small{display:block;font:400 var(--fs-xs)/1.35 var(--rnj-ui);color:var(--rnj-text3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rnn-g .n{font-variant-numeric:tabular-nums;font-weight:500}
.rnn-g.agora .ic{color:var(--ciano);background:rgba(34,211,238,.08)}.rnn-g.agora .n{color:var(--ciano)}
.rnn-g .sx{width:16px;height:16px;color:var(--rnj-text3);transition:transform .18s}
.rnn-g.aberto .sx{transform:rotate(90deg)}
/* vindo do painel antigo: a pessoa com a pastilha de cor do aluno, dentro do grupo aberto */
.rnn-pess{list-style:none;margin:0 0 6px;padding:0 0 0 40px}
.rnn-pess li{display:flex;align-items:center;gap:10px;min-height:34px;font:400 var(--fs-sm)/1.3 var(--rnj-ui);color:var(--rnj-text)}
.rnn-pess i{flex:none;width:8px;height:8px;border-radius:50%}
.rnn-pess span{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rnn-pess time{font-size:var(--fs-xs);color:var(--rnj-text3);font-variant-numeric:tabular-nums}
.rnn-grave{display:flex;align-items:center;gap:12px;min-height:56px;padding:10px 12px;border:1px solid rgba(253,224,71,.35);border-radius:11px 11px 11px 5px;background:rgba(253,224,71,.04);color:var(--rnj-text);font:400 var(--fs-md)/1.3 var(--rnj-ui)}
.rnn-grave small{display:block;font-size:var(--fs-xs);color:var(--rnj-text3)}
/* legenda (volta 2) */
.rnn .rnx-fita{display:grid;grid-template-columns:repeat(6,1fr);gap:4px}
.rnn .rnx-fita button{position:relative;display:grid;place-items:center;height:48px;padding:0;border:1px solid transparent;border-radius:11px 11px 11px 5px;background:none;cursor:pointer}
.rnn .rnx-fita button svg{width:28px;height:30px;opacity:.38;transition:opacity .18s}
.rnn .rnx-fita button.sel{border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.03)}
.rnn .rnx-fita button.sel svg,.rnn .rnx-fita button.atual svg{opacity:1}
.rnn .rnx-fita button.atual::after{content:"";position:absolute;bottom:4px;left:50%;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:rgba(var(--rnj-champ),.9)}
.rnn .rnx-pilula{font:600 9px/1 var(--rnj-ui)}
.rnn .rnx-frase{margin:10px 0 0;font:400 var(--fs-sm)/1.45 var(--rnj-ui);color:var(--rnj-text2);min-height:42px}
.rnn .rnx-frase em{font-style:normal;color:var(--rnj-text)}
.rnn .rnx-hex-ciano .contorno{stroke-dasharray:14 80;animation:rnnCorre 1.6s linear infinite}
@keyframes rnnCorre{to{stroke-dashoffset:-94}}
/* NOVO · o registro pro suporte — veio do painel dos Ajustes (Copiar pra mandar + O que o app anotou) */
.rnr{margin-top:18px;border-top:1px dashed rgba(238,231,218,.17);padding-top:4px}
.rnr summary{list-style:none;display:flex;align-items:center;gap:10px;min-height:44px;cursor:pointer;font:400 var(--fs-xs)/1.3 var(--rnj-ui);color:var(--rnj-text3)}
.rnr summary::-webkit-details-marker{display:none}
.rnr summary svg{width:16px;height:16px;flex:none}
.rnr summary .sx{margin-left:auto;transition:transform .18s}
.rnr[open] summary .sx{transform:rotate(90deg)}
.rnr pre{margin:4px 0 10px;max-height:132px;overflow:auto;padding:10px 12px;border:1px solid rgba(255,255,255,.08);border-radius:11px 11px 11px 5px;background:rgba(0,0,0,.28);font:400 var(--fs-xs)/1.5 ui-monospace,'SF Mono',Menlo,monospace;color:var(--rnj-text2);white-space:pre-wrap;word-break:break-word}
.rnr-copiar{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border:1px dashed rgba(var(--rnj-champ),.32);border-radius:11px 11px 11px 5px;background:transparent;color:var(--rnj-text);font:400 var(--fs-sm)/1 var(--rnj-ui);cursor:pointer}
.rnr-copiar svg{width:16px;height:16px;color:rgb(var(--rnj-champ))}
.rnr-copiar.ok{border-style:solid;border-color:rgba(61,220,151,.5);color:var(--rnj-verde)}
.rnr-copiar.ok svg{color:var(--rnj-verde)}
.rnr--falha{border-top:0;margin-top:14px;padding-top:0}
.rnr--falha summary{color:var(--rnj-text2)}
/* botão com ciclo (volta 2) — nunca [disabled] */
.rnn-cic[aria-disabled="true"]{pointer-events:none;opacity:1}
.rnn-cic.subindo{background:transparent;color:var(--rnj-text);border:1px solid rgba(91,141,239,.25)}
.rnn-cic.subindo::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1.5px;background:conic-gradient(from var(--a,0deg),transparent 0 62%,#5b8def 82%,transparent 100%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:rnnGira 1.2s linear infinite}
@property --a{syntax:'<angle>';inherits:false;initial-value:0deg}
@keyframes rnnGira{to{--a:360deg}}
.rnn-cic.nuvem{background:transparent;color:var(--rnj-verde);border:1px solid var(--rnj-verde)}
@media (prefers-reduced-motion:reduce){.rnn-cheio::after,.rnn-cic.subindo::before,.rnx-hex-ciano .contorno{animation:none}}
.rnn .rnx-fita button .rnx{opacity:1;filter:none}   /* a opacidade é a do svg (molde); o CSS antigo da fita apagava em dobro */
/* CASCA do molde (trecho «Padrão v2» da prancha v3), letra a letra, onde difere do v2 do app — o miolo depende dela.
   [CÓPIA] fonte: docs/rodada_janela_nuvem_progresso_2026-10-21/DO_JEAN/janela_nuvem_progresso_jean_v3_2026-10-21.html (linhas 32-46 e 45 «.mac .rnj»). */
.rnn .rnn-cic,.rnn .rnj-btn{position:relative}
.rnn .rnj-btn{letter-spacing:normal}
.rnn .rnj-eyebrow,.rnn .rnj-section{display:flex;align-items:center;gap:8px;font:500 var(--fs-micro)/1.2 var(--rnj-ui);letter-spacing:.2em;text-transform:uppercase;color:var(--rnj-text3)}
.rnn .rnj-eyebrow::before,.rnn .rnj-section::before{content:"";width:14px;height:1px;flex:none;background:rgba(var(--rnj-champ),.7)}
.rnn .rnj-section{margin:18px 0 8px}.rnn .rnj-section::after{content:"";flex:1;height:1px;background:rgba(255,255,255,.08)}
.rnn .rnj-close{margin-top:0}
.rnn .rnj-body{padding:10px 20px 4px}
.rnn .rnj-body p.rnj-lead,.rnn .rnj-lead{margin:0}
.rnn .rnj-foot{padding:14px 20px calc(env(safe-area-inset-bottom,0px) + 18px)}   /* molde 14 20 18; [CONSTRUÇÃO] + área segura do iPhone, a folha é encostada embaixo */
.rnn .rnj-foot[hidden]{display:none}
.rnn .rnj-poco{padding:4px 12px}
.rnn .rnj-status{gap:6px}
@media (min-width:1024px){.rnn.rnj{max-height:min(86vh,700px)}}
.rnn .rnj-close svg{width:14px;height:14px}
.rnn .rnj-title{text-wrap:wrap}
.rnn .rnn-grave>svg:last-child{color:#b1a99a}
