/*
 * 53-single.css — ferramenta de tamanho do texto do post (single.php)
 * INF-005 F5 lote 3: migrado de <style> inline (single.php) em 24/09/2026.
 * SEM @layer de proposito: o inline era unlayered; aqui continua vencendo o legado
 * (f1-* em @layer features) sem guerra de especificidade. Ver CONTRATOS §5b.
 * Carrega SO com single.php (mapa por template em carregar_scripts_rotina, functions.php).
 */
.rotina-fs-tool{display:flex;align-items:center;gap:8px;justify-content:flex-end;flex-wrap:wrap;margin:0 0 18px}
.rotina-fs-tool .fs-label{font-size:.75rem;text-transform:uppercase;letter-spacing:1px;font-weight:700;color:var(--cor-texto-suave,#666);margin-right:2px}
.rotina-fs-tool .fs-nivel{min-width:46px;text-align:center;font-size:.8rem;font-weight:800;color:var(--azul-principal,#0441F5);font-variant-numeric:tabular-nums}
.rotina-fs-tool button{min-width:40px;height:36px;padding:0 12px;border-radius:8px;border:1px solid rgba(0,0,0,.18);background:transparent;color:var(--cor-texto,#222);font-weight:700;cursor:pointer;font-size:.9rem;line-height:1;transition:border-color .15s,background .15s,transform .1s}
.rotina-fs-tool button:hover{border-color:var(--azul-principal,#0441F5)}
.rotina-fs-tool button:active{transform:scale(.94)}
.rotina-fs-tool button.ativo{background:var(--azul-principal,#0441F5);border-color:var(--azul-principal,#0441F5);color:#fff}
html.dark-mode .rotina-fs-tool button{border-color:rgba(255,255,255,.25);color:#e6e9f2}
html.dark-mode .rotina-fs-tool .fs-label{color:#8b93a3}
html.dark-mode .rotina-fs-tool .fs-nivel{color:var(--azul-neon,#59C4F9)}
@media (max-width:768px){
    .rotina-fs-tool{justify-content:center}
    .rotina-fs-tool button{min-width:48px;height:44px;font-size:1rem}
    .rotina-fs-tool .fs-nivel{font-size:.9rem}
}
/* Escala: !important vence qualquer regra do tema (inclusive a
   mobile .entry-content{font-size:...!important} do style.css) */
html.rfs-m2 .entry-content{--font-size-body:calc(clamp(1.125rem, 1.08rem + 0.22vw, 1.3125rem) * .76) !important;font-size:calc(clamp(1.125rem, 1.08rem + 0.22vw, 1.3125rem) * .76) !important}
html.rfs-m1 .entry-content{--font-size-body:calc(clamp(1.125rem, 1.08rem + 0.22vw, 1.3125rem) * .88) !important;font-size:calc(clamp(1.125rem, 1.08rem + 0.22vw, 1.3125rem) * .88) !important}
html.rfs-1 .entry-content{--font-size-body:calc(clamp(1.125rem, 1.08rem + 0.22vw, 1.3125rem) * 1.15) !important;font-size:calc(clamp(1.125rem, 1.08rem + 0.22vw, 1.3125rem) * 1.15) !important}
html.rfs-2 .entry-content{--font-size-body:calc(clamp(1.125rem, 1.08rem + 0.22vw, 1.3125rem) * 1.35) !important;font-size:calc(clamp(1.125rem, 1.08rem + 0.22vw, 1.3125rem) * 1.35) !important}
html.rfs-1 .entry-content{line-height:1.75}
html.rfs-2 .entry-content{line-height:1.8}
/* FIX MOBILE (r44): o media query do style.css trava p{font-size:1rem!important}
   — quando qualquer escala está ativa, os parágrafos herdam do contêiner
   (especificidade html.classe .classe p vence o seletor p, ambos !important) */
html.rfs-m2 .entry-content p,html.rfs-m1 .entry-content p,html.rfs-1 .entry-content p,html.rfs-2 .entry-content p{font-size:inherit !important;line-height:inherit !important}

/* r58.27: marcador de fim da leitura (single.php, logo depois do texto). Estados vêm do scripts.js §12 (data-estado). */
.rotina-fim-leitura { display: flex; align-items: center; gap: 12px; margin: 28px 0 8px; padding: 14px 18px; border-radius: 12px; border: 1px dashed rgba(201,162,39,.55); background: rgba(201,162,39,.08); color: var(--cor-texto, #222); font-size: .95rem; line-height: 1.5; }
.rotina-fim-leitura i { font-size: 1.3rem; color: #c9a227; flex: none; }
.rotina-fim-leitura[data-estado="quase"] { border-style: solid; }
.rotina-fim-leitura[data-estado="ok"] { border-style: solid; border-color: rgba(59,165,93,.6); background: rgba(59,165,93,.1); }
.rotina-fim-leitura[data-estado="ok"] i { color: #3BA55D; }
.rotina-fim-leitura a { font-weight: 700; }
html.dark-mode .rotina-fim-leitura { color: #e8e3d5; }
