/* Ius: folha completa. Carregada sem bloquear a pintura. */

/* =========================================================
   1. Trilha, etiquetas, grade
   ========================================================= */
.ius-migalhas ol{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1.5rem;padding:0;
 font-size:var(--fm-fs--2);color:var(--fm-muted)}
.ius-migalhas li+li::before{content:"/";margin-right:.5rem;color:var(--fm-rule)}
.ius-migalhas a{color:var(--fm-muted)}

.ius-etiquetas{display:flex;flex-wrap:wrap;gap:.4rem;margin:1rem 0 0}
.ius-etiqueta{display:inline-flex;align-items:center;min-height:2rem;padding:.2rem .7rem;
 font-size:var(--fm-fs--2);text-transform:uppercase;letter-spacing:.1em;font-weight:600;
 text-decoration:none;color:var(--fm-ink);border:1px solid var(--fm-rule)}
.ius-etiqueta:hover{border-color:var(--fm-ink)}
.ius-etiqueta--instrumento{border-left:.25rem solid var(--fm-accent)}
.ius-etiqueta--situacao{color:var(--fm-muted)}

.ius-grade{display:grid;gap:clamp(1.5rem,3vw,2.5rem);
 grid-template-columns:repeat(auto-fill,minmax(min(100%,19rem),1fr))}
.ius-cartao{display:flex;flex-direction:column;gap:.6rem;border-top:2px solid var(--fm-ink);padding-top:1rem}
.ius-cartao__selo{margin:0;font-size:var(--fm-fs--2);font-weight:700;letter-spacing:.12em;
 text-transform:uppercase;color:var(--fm-accent-text);font-variant-numeric:tabular-nums}
.ius-cartao__titulo{font-size:var(--fm-fs-1);margin:0;line-height:1.22}
.ius-cartao__titulo a{color:var(--fm-ink);text-decoration:none}
.ius-cartao__titulo a:hover{box-shadow:inset 0 -.1em 0 var(--fm-accent)}
.ius-cartao__tese{margin:0;font-size:var(--fm-fs--1);color:var(--fm-muted)}
.ius-cartao__meta{margin:auto 0 0;font-size:var(--fm-fs--2);color:var(--fm-muted);
 font-variant-numeric:tabular-nums;padding-top:.6rem}
.ius-ultimos{max-width:1280px;margin:0 auto;padding:0 clamp(1rem,4vw,3rem) clamp(3rem,7vw,5rem)}
.ius-conteudo{max-width:var(--fm-medida);margin:0 auto;padding:0 clamp(1rem,4vw,3rem) 4rem}

/* =========================================================
   2. Acervo: filtros e resultados
   ========================================================= */
.ius-acervo{display:grid;gap:clamp(2rem,4vw,3rem)}
@media(min-width:64rem){.ius-acervo{grid-template-columns:19rem minmax(0,1fr);align-items:start}}
@media(min-width:64rem){.ius-acervo__filtros{position:sticky;top:6rem;max-height:calc(100vh - 8rem);overflow:auto}}
.ius-filtros{border-top:2px solid var(--fm-ink);padding-top:1rem}
.ius-filtros__titulo{font-size:var(--fm-fs--1);text-transform:uppercase;letter-spacing:.16em;margin:0 0 1.25rem}
.ius-filtros__campo{margin:0 0 1.25rem}
.ius-faceta{border:0;border-top:1px solid var(--fm-rule);margin:0 0 1.25rem;padding:1rem 0 0}
.ius-faceta legend{font-size:var(--fm-fs--2);font-weight:700;text-transform:uppercase;letter-spacing:.14em;padding:0}
.ius-faceta__lista{list-style:none;margin:.75rem 0 0;padding:0;display:grid;gap:.15rem}
.ius-faceta__lista li{display:flex;align-items:flex-start;gap:.5rem}
.ius-faceta__lista input{flex:0 0 auto;width:1.15rem;height:1.15rem;margin:.55rem 0 0;accent-color:var(--fm-accent)}
.ius-faceta__lista label{display:flex;gap:.5rem;width:100%;min-height:2.75rem;align-items:center;
 font-size:var(--fm-fs--1);font-weight:400;cursor:pointer}
.ius-faceta__n{margin-left:auto;font-size:var(--fm-fs--2);color:var(--fm-muted);font-variant-numeric:tabular-nums}
.ius-faceta--periodo p{display:grid;gap:.25rem;margin:0 0 .75rem}
.ius-filtros__acoes{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.5rem 0 0}
.ius-contagem{margin:0 0 1.5rem;font-size:var(--fm-fs--2);text-transform:uppercase;
 letter-spacing:.14em;color:var(--fm-muted);font-variant-numeric:tabular-nums}
.ius-vazio{max-width:var(--fm-medida);color:var(--fm-muted)}

/* =========================================================
   3. Formulários
   ========================================================= */
label{display:block;font-size:var(--fm-fs--1);font-weight:600;margin-bottom:.35rem}
input[type=text],input[type=email],input[type=url],input[type=search],input[type=number],
input[type=date],select,textarea{width:100%;min-height:2.75rem;padding:.7rem .85rem;font:inherit;
 font-size:var(--fm-fs-0);color:var(--fm-ink);background:var(--fm-paper);border:2px solid var(--fm-rule);
 border-radius:0;-webkit-appearance:none;appearance:none}
select{padding-right:2.5rem;
 background-image:linear-gradient(45deg,transparent 50%,var(--fm-ink) 50%),linear-gradient(135deg,var(--fm-ink) 50%,transparent 50%);
 background-position:calc(100% - 1.1rem) 1.15rem,calc(100% - .75rem) 1.15rem;
 background-size:.35rem .35rem,.35rem .35rem;background-repeat:no-repeat}
textarea{min-height:8rem;line-height:1.6}
input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--fm-ink)}
button,input[type=submit]{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;
 padding:.7rem 1.5rem;font:inherit;font-size:var(--fm-fs--1);font-weight:600;background:var(--fm-ink);
 color:var(--fm-paper);border:2px solid var(--fm-ink);border-radius:0;cursor:pointer}
button:hover,input[type=submit]:hover{background:var(--fm-accent-text);border-color:var(--fm-accent-text)}
.ius-busca{max-width:34rem}
.ius-busca__campo{display:flex;gap:.5rem}
.ius-busca__campo button{flex:0 0 auto;padding:0 1.25rem}

/* =========================================================
   4. Precedente
   ========================================================= */
.ius-precedente__cabeca{margin:0 0 clamp(2rem,5vw,3rem);padding-bottom:1.5rem;border-bottom:2px solid var(--fm-ink)}
.ius-precedente__selo{margin:0 0 .5rem;font-size:var(--fm-fs--2);font-weight:700;
 text-transform:uppercase;letter-spacing:.18em;color:var(--fm-accent-text);font-variant-numeric:tabular-nums}
.ius-precedente__titulo{font-size:var(--fm-fs-4);margin:0;max-width:26ch;letter-spacing:-.04em}

.ius-tese{margin:0 0 clamp(2.5rem,6vw,4rem)}
/* A tese firmada é o que fica: moldura aberta, como a marca. */
.ius-tese__texto{position:relative;margin:0;padding:clamp(1.25rem,4vw,2rem);max-width:var(--fm-medida);
 border:.375rem solid var(--fm-ink);border-top-color:transparent;border-right-color:transparent;
 font-size:var(--fm-fs-1);line-height:1.5}
.ius-tese__texto::before{content:"";position:absolute;left:-.375rem;bottom:-.375rem;
 width:1.1rem;height:1.1rem;background:var(--fm-accent)}
.ius-tese__texto p:last-child{margin-bottom:0}

.ius-precedente__corpo{display:grid;gap:clamp(2rem,5vw,3.5rem)}
@media(min-width:64rem){
 .ius-precedente__corpo:has(.ius-lateral){grid-template-columns:minmax(0,1fr) 18rem}
 .ius-precedente__corpo:has(.ius-lateral) .ius-lateral{grid-column:2}
}
.ius-precedente__coluna>section+section{margin-top:clamp(2.5rem,6vw,4rem)}

.ius-ficha__lista{margin:0;display:grid;gap:0;
 grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr))}
.ius-ficha__par{margin:0;padding:1rem 1.25rem 1rem 0;border-bottom:1px solid var(--fm-rule)}
.ius-ficha__par dt{font-size:var(--fm-fs--2);font-weight:700;text-transform:uppercase;
 letter-spacing:.12em;color:var(--fm-muted);margin-bottom:.35rem}
.ius-ficha__par dd{margin:0;font-size:var(--fm-fs--1);font-variant-numeric:tabular-nums}
.ius-ficha__par dd p{margin:0 0 .5em}
.ius-externo::after{content:"\2197";font-size:.75em;margin-left:.2em;vertical-align:super}

.ius-artigo__corpo{max-width:var(--fm-medida)}
.ius-artigo__corpo>*+*{margin-top:1.25em}
.ius-artigo__corpo h2{font-size:var(--fm-fs-2);margin-top:2.5em}
.ius-artigo__corpo h3{font-size:var(--fm-fs-1);margin-top:2em}
.ius-artigo__corpo ul,.ius-artigo__corpo ol{padding-left:1.5em}
.ius-artigo__corpo blockquote{margin:2em 0;padding:0 0 0 1.5rem;border-left:.25rem solid var(--fm-accent)}
.ius-artigo__corpo .alignwide{width:min(100%,1100px);max-width:none;margin-inline:auto}

.ius-correlatos__lista{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}
.ius-correlatos__lista li{border-left:2px solid var(--fm-rule);padding:.35rem 0 .35rem .85rem}
.ius-correlatos__lista a{color:var(--fm-ink);text-decoration:none;font-weight:600}
.ius-correlatos__lista a:hover{color:var(--fm-accent-text);text-decoration:underline}

.ius-abnt__ref{margin:0;padding:1rem 1.25rem;background:var(--fm-paper-2);
 border-left:.1875rem solid var(--fm-accent);font-size:var(--fm-fs--2);line-height:1.7;max-width:var(--fm-medida)}

.ius-lateral{font-size:var(--fm-fs--1)}
.ius-widget+.ius-widget{margin-top:2.5rem}
.ius-widget__titulo{font-size:var(--fm-fs--1);text-transform:uppercase;letter-spacing:.14em;
 border-bottom:2px solid var(--fm-ink);padding-bottom:.5rem;margin-bottom:1rem}

.ius-nav-post{display:grid;gap:1rem;margin-top:3rem;padding-top:2rem;border-top:2px solid var(--fm-ink)}
@media(min-width:48rem){.ius-nav-post{grid-template-columns:1fr 1fr;gap:2rem}}
.ius-nav-post a{color:var(--fm-ink);text-decoration:none;font-weight:600}
.ius-nav-post__rot{display:block;font-size:var(--fm-fs--2);font-weight:400;text-transform:uppercase;
 letter-spacing:.12em;color:var(--fm-muted);margin-bottom:.35rem}
.ius-nav-post__proximo{text-align:right}

/* =========================================================
   5. Fluxograma
   ---------------------------------------------------------
   O quadro reserva a proporção do desenho antes de pintar: sem isso, o SVG
   entraria empurrando o texto, e o deslocamento acumulado penalizaria a
   métrica de estabilidade visual.
   ========================================================= */
.ius-fluxo{margin:0}
.ius-fluxo__quadro{width:100%;max-width:64rem;padding:clamp(1rem,3vw,2rem);
 background:var(--fm-paper);border:1px solid var(--fm-rule);overflow:auto}
.ius-fluxo__quadro svg{width:100%;height:auto;max-width:100%}
.ius-fluxo__quadro svg text{font-family:"Inter var","Inter",system-ui,sans-serif}
.ius-fluxo__legenda{margin-top:1.25rem;max-width:var(--fm-medida)}
.ius-fluxo__texto,.ius-fluxo__codigo{border-top:1px solid var(--fm-rule);padding:.85rem 0}
.ius-fluxo__texto summary,.ius-fluxo__codigo summary{cursor:pointer;font-size:var(--fm-fs--2);
 font-weight:700;text-transform:uppercase;letter-spacing:.14em;min-height:2.75rem;display:flex;align-items:center}
.ius-fluxo__texto p{font-size:var(--fm-fs--1)}
.ius-fluxo__codigo pre{overflow:auto;background:var(--fm-paper-2);padding:1rem;
 font-size:var(--fm-fs--2);line-height:1.6}
.ius-fluxo__tabela{margin-top:.5rem}
.ius-fluxo__sem{color:var(--fm-muted)}
.ius-fluxo__pendencia{font-size:var(--fm-fs--1);border-left:.1875rem solid var(--fm-accent);
 padding:.5rem 0 .5rem .85rem;color:var(--fm-accent-text)}
.ius-mermaid{white-space:pre-wrap;font-size:var(--fm-fs--2);background:var(--fm-paper-2);padding:1rem}

.ius-tabela-rolagem{overflow-x:auto;margin:1rem 0;border:1px solid var(--fm-rule)}
.ius-tabela-rolagem:focus-visible{outline:3px solid var(--fm-focus);outline-offset:2px}
table{border-collapse:collapse;width:100%;font-size:var(--fm-fs--1)}
th,td{padding:.6rem .9rem;text-align:left;border-bottom:1px solid var(--fm-rule);vertical-align:top}
thead th{background:var(--fm-paper-2);font-weight:700}

/* =========================================================
   6. Paginação, rodapé, contraste
   ========================================================= */
.ius-paginacao{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--fm-rule)}
.ius-paginacao ul{list-style:none;display:flex;flex-wrap:wrap;gap:.35rem;margin:0;padding:0}
.ius-paginacao a,.ius-paginacao .current{display:inline-flex;align-items:center;justify-content:center;
 min-width:2.75rem;min-height:2.75rem;padding:0 .75rem;border:1px solid var(--fm-rule);
 text-decoration:none;color:var(--fm-ink);font-variant-numeric:tabular-nums}
.ius-paginacao .current{background:var(--fm-ink);color:var(--fm-paper);border-color:var(--fm-ink)}

.ius-rodape{background:var(--fm-ink);color:var(--fm-paper);margin-top:clamp(3rem,8vw,6rem)}
.ius-rodape a{color:var(--fm-paper);text-decoration:none}
.ius-rodape a:hover{text-decoration:underline;text-decoration-color:var(--fm-accent);text-decoration-thickness:.14em}
.ius-rodape :focus-visible{outline-color:var(--fm-paper)}
.ius-rodape__interno{max-width:1280px;margin:0 auto;padding:clamp(2.5rem,6vw,4rem) clamp(1rem,4vw,3rem);
 display:grid;gap:2.5rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr))}
.ius-rodape__tit{font-size:var(--fm-fs--1);text-transform:uppercase;letter-spacing:.16em;
 padding-bottom:.6rem;margin-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.25);position:relative}
.ius-rodape__tit::after{content:"";position:absolute;left:0;bottom:-1px;width:2rem;height:2px;background:var(--fm-accent)}
.ius-rodape__col{font-size:var(--fm-fs--1)}
.ius-rodape__menu{list-style:none;margin:0;padding:0}
.ius-rodape__menu li{padding:.3rem 0}
.ius-rodape__base{border-top:1px solid rgba(255,255,255,.2);max-width:1280px;margin:0 auto;
 padding:1.75rem clamp(1rem,4vw,3rem) 2.5rem;font-size:var(--fm-fs--2)}
.ius-rodape__copy{color:rgba(255,255,255,.75);margin-bottom:.75rem}
.ius-aviso-oab{color:rgba(255,255,255,.65);max-width:70ch}

[data-ius-contraste-ativo] {--fm-ink:#000;--fm-paper:#fff;--fm-muted:#2b2b2b;--fm-rule:#000;--fm-accent-text:#8e0e12}
[data-ius-contraste-ativo] .ius-rodape{background:#000;border-top:2px solid #fff}
