/* IDV Quirontec — fontes auto-hospedadas (CSP style-src 'self'); fonte: docs/brand/quirontec-idv.md */
@font-face{font-family:"Inter";font-weight:400;font-style:normal;font-display:swap;src:url(/brand/fonts/Inter-400.woff2) format("woff2")}
@font-face{font-family:"Inter";font-weight:600;font-style:normal;font-display:swap;src:url(/brand/fonts/Inter-600.woff2) format("woff2")}
@font-face{font-family:"Inter";font-weight:700;font-style:normal;font-display:swap;src:url(/brand/fonts/Inter-700.woff2) format("woff2")}
@font-face{font-family:"Space Grotesk";font-weight:500;font-style:normal;font-display:swap;src:url(/brand/fonts/SpaceGrotesk-500.woff2) format("woff2")}
@font-face{font-family:"Space Grotesk";font-weight:700;font-style:normal;font-display:swap;src:url(/brand/fonts/SpaceGrotesk-700.woff2) format("woff2")}
:root{--bg:#F6F7FA;--card:#fff;--ink:#222A52;--muted:#4E5873;--line:#E3E7F0;--line-strong:#7E869B;--brand:#222A52;--brand-d:#141A38;--blue:#4B5D85;--navy:#222A52;--navy-deep:#141A38;--navy-hover:#333E70;--danger:#b3261e;--ok:#1b7a3e;--warn:#8a5a00;--focus:#222A52;--r:20px;--r-sm:12px;--shadow:0 18px 48px rgba(34,42,82,.07);--font:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--font-head:"Space Grotesk","Inter",system-ui,sans-serif}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 var(--font)}
h1,h2,h3{font-family:var(--font-head);letter-spacing:-.02em;line-height:1.2}h1{font-size:1.5rem;margin:.2em 0 .5em}h2{font-size:1.15rem;margin:0 0 .6em}h3{font-size:1rem;margin:0 0 .3em}
a{color:var(--brand)}
.skip{position:absolute;left:-999px;top:0;background:#000;color:#fff;padding:.6em 1em;min-height:44px;display:inline-flex;align-items:center;z-index:10}.skip:focus{left:0}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;left:-9999px;top:auto}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px;box-shadow:0 0 0 2px #fff}
.topbar :focus-visible,.totem :focus-visible,.scan-overlay :focus-visible{outline-color:#fff;box-shadow:0 0 0 2px var(--navy)}
main{max-width:1000px;margin:0 auto;padding:16px}
main:focus{outline:none}
.topbar{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;align-items:center;background:var(--navy);color:#fff;padding:10px 16px}
.brand{display:flex;gap:10px;align-items:center;color:#fff;text-decoration:none;font-weight:600}
.brand small{font-weight:400;opacity:.8}
.logo{display:block;height:28px;width:auto}.logo-lg{height:40px}
.user{display:flex;gap:10px;align-items:center}.who small{opacity:.75}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:16px;margin-bottom:16px;display:block;box-shadow:var(--shadow)}
.grid{display:grid;gap:16px;grid-template-columns:1fr}
@media(min-width:760px){.grid{grid-template-columns:1fr 1fr}}
.page-head{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin-bottom:8px}
.page-head h1{margin:0}
.muted,.hint{color:var(--muted)}.hint{font-size:.875rem;margin:.4em 0 0}
.cards{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.event-card{display:flex;justify-content:space-between;gap:12px;align-items:center;text-decoration:none;color:inherit;margin:0;min-height:56px}
.event-card:hover{border-color:var(--blue);box-shadow:0 18px 44px rgba(34,42,82,.14)}.ev-name{font-weight:600}
.badge{display:inline-block;font-size:.75rem;font-weight:600;padding:.15em .6em;border-radius:99px;vertical-align:middle;border:1px solid}
.badge-rascunho{background:#EEF1F8;color:#3a4462;border-color:#c4cadb}.badge-aberto{background:#e3f4ea;color:var(--ok);border-color:#a7d9b9}.badge-encerrado{background:#f1e6e5;color:var(--danger);border-color:#e3b9b6}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:.5em 1em;border-radius:999px;border:1px solid var(--line-strong);background:#fff;color:var(--ink);font:inherit;font-weight:600;text-decoration:none;cursor:pointer}
.btn:hover{border-color:var(--brand);background:#EEF1F8}
.btn-primary{background:var(--brand);border-color:var(--brand);color:#fff}.btn-primary:hover{background:var(--navy-hover);border-color:var(--navy-hover)}
.btn-danger{background:var(--danger);border-color:var(--danger);color:#fff}
.btn-ghost{background:transparent;color:#fff;border-color:#9aa5c4}.btn-ghost:hover{background:var(--navy-hover);border-color:#fff}
.btn-link{border:0;background:none;color:var(--brand);min-height:36px;padding:0 .3em;text-decoration:underline}.btn-link.danger{color:var(--danger)}
.btn-block{width:100%}.btn:disabled{opacity:.55;cursor:not-allowed}
label{display:block;font-weight:600;margin:.9em 0 .25em}
textarea,input[type=search],input[type=number],input[type=datetime-local],input[type=text],input[type=email],input[type=tel],input[type=password],input[type=date],input[type=time]{width:100%;min-height:44px;padding:.5em .7em;font:inherit;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:#fff;color:var(--ink)}
input:disabled{background:#eef1f4}
.mono{font-family:ui-monospace,Menlo,monospace;font-size:.9rem;word-break:break-all;overflow-wrap:anywhere}
fieldset{border:1px solid var(--line);border-radius:8px;margin:0 0 12px;padding:10px 12px}legend{font-weight:700;padding:0 6px}
.day-grid{display:grid;gap:0 12px;grid-template-columns:1fr 1fr}
@media(min-width:760px){.day-grid{grid-template-columns:1.2fr 1fr 1fr 2fr}}
.day-grid .field:last-child{grid-column:1/-1}@media(min-width:760px){.day-grid .field:last-child{grid-column:auto}}
.check-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:2px 12px}
label.check{display:flex;align-items:center;gap:10px;font-weight:400;margin:0;min-height:44px;cursor:pointer}
input[type=checkbox]{width:24px;height:24px;flex:none;cursor:pointer}
.stack{display:grid;gap:10px}.row{display:flex;flex-wrap:wrap;gap:10px}
.actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-bottom:32px}
.plain{list-style:none;padding:0;margin:.5em 0 1em}.plain li{padding:.35em 0;border-bottom:1px solid var(--line)}
dl{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;margin:0}dt{color:var(--muted)}dd{margin:0}
.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{font-size:.8rem;background:#eef1f4;border-radius:6px;padding:.15em .55em}.chip-warn{background:#fdf1d6;color:var(--warn)}
.rules{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.rule{border:1px solid var(--line);border-radius:8px;padding:10px 12px}
.alert{background:#fdecea;color:#7a1610;border:1px solid #f0b8b3;border-radius:8px;padding:10px 12px;margin-bottom:12px}
.ok-box{background:#e3f4ea;color:#14562c;border:1px solid #a7d9b9;border-radius:8px;padding:10px 12px;margin-bottom:12px}
.note{background:#fff7e0;border:1px solid #f0d78a;border-radius:8px;padding:8px 10px;margin:8px 0}
.copy-row{display:flex;gap:8px;flex-wrap:wrap}.copy-row input{flex:1 1 220px}
.empty{text-align:center;padding:20px 8px}
.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.55em .6em;border-bottom:1px solid var(--line)}th{color:var(--muted);font-size:.85rem}
.crumbs{margin-bottom:8px}
.login-wrap{max-width:420px;padding-top:8vh}.login-card{margin-top:16px}.brand-lg{color:var(--ink);justify-content:center;flex-direction:column;gap:6px;text-align:center}.brand-lg small{color:var(--muted);font-weight:500}
.toast{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);background:var(--navy);color:#fff;padding:.7em 1.1em;border-radius:999px;opacity:0;pointer-events:none;transition:opacity .2s;max-width:90vw}
.toast.show{opacity:1}.toast.warn{background:var(--warn)}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
.noscript{padding:16px}
.btn-block{margin-top:18px}
/* importação */
select{width:100%;min-height:44px;padding:.5em .7em;font:inherit;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:#fff;color:var(--ink)}
input[type=file]{width:100%;min-height:44px;padding:.6em;border:1px dashed var(--line-strong);border-radius:var(--r-sm);background:#fafbfc;font:inherit}
.chip-bad{background:#fdecea;color:#7a1610}
.st-ok,.st-imported{background:#e3f4ea;color:var(--ok);border-color:#a7d9b9}.st-error{background:#fdecea;color:#7a1610;border-color:#f0b8b3}
.st-duplicate_in_file,.st-already_registered{background:#fdf1d6;color:var(--warn);border-color:#f0d78a}
.prob{font-size:.85rem}.prob.bad{color:#7a1610}.prob.warn{color:var(--warn)}
.map{margin:12px 0}.map summary{cursor:pointer;font-weight:600;min-height:44px;display:flex;align-items:center}
.map-grid{display:grid;gap:0 12px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.filter{align-items:center}.filter label{margin:0}.filter select{width:auto;min-width:200px}
.pager{align-items:center;justify-content:center;margin:12px 0}
.dup{margin-top:16px}
td .badge{white-space:nowrap}

/* público (mobile-first) */
.pub{max-width:560px;margin:0 auto;padding:0 16px 32px}
.pub-head{display:flex;align-items:center;gap:10px;padding:16px 0;font-weight:600}.pub-head small{font-weight:400;color:var(--muted)}.pub-head{border-bottom:1px solid var(--line);margin-bottom:16px;gap:12px;flex-wrap:wrap;justify-content:space-between}
.pub main{padding:0;max-width:none}
.pub-card{margin-bottom:14px}.pub-card h1{font-size:1.35rem}.center{text-align:center}
.pub-foot{color:var(--muted);font-size:.8rem;text-align:center;margin-top:20px}
.steps{list-style:none;display:flex;gap:6px;padding:0;margin:0 0 14px;font-size:.78rem}
.steps li{flex:1;text-align:center;padding:6px 4px;border-bottom:3px solid var(--line);color:var(--muted)}
.steps li.cur{border-color:var(--brand);color:var(--ink);font-weight:700}.steps li.done{border-color:var(--ok);color:var(--ok)}
.req{color:var(--danger)}.opt{font-weight:400;color:var(--muted);font-size:.85rem}
.field-error{color:var(--danger);font-size:.875rem;margin:.3em 0 0;font-weight:600}
input[aria-invalid=true],select[aria-invalid=true]{border-color:var(--danger);border-width:2px}
.summary{grid-template-columns:1fr;margin-bottom:12px}.summary dt{font-size:.8rem;margin-top:8px}.summary dd{font-weight:600;word-break:break-word}
.next{border:1px dashed var(--line-strong);border-radius:var(--r-sm);padding:12px;margin-top:12px}
.btn-plain{margin-top:10px;background:none}
.days{margin-bottom:0}
@media(max-width:480px){input,select{font-size:16px}}

/* scanner / totem */
.nav{display:flex;flex-wrap:wrap;gap:4px}.nav a{color:#fff;text-decoration:none;padding:.5em .8em;border-radius:8px;min-height:44px;display:inline-flex;align-items:center}.nav a:hover{background:var(--navy-hover)}
.btn-xl{min-height:56px;font-size:1.15rem;padding:.6em 1.4em}.btn-sm{min-height:36px;padding:.2em .8em}
.cam-box{position:relative;background:var(--navy-deep);border-radius:var(--r);overflow:hidden;aspect-ratio:4/3;max-height:60vh;width:100%;display:grid;place-items:center;margin:12px 0}
.cam{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:none}.cam.on{display:block}
.cam-frame{position:absolute;inset:18%;border:4px solid rgba(255,255,255,.85);border-radius:16px;pointer-events:none;box-shadow:0 0 0 999px rgba(0,0,0,.25)}
.cam-msg{position:relative;color:#dfe8f0;text-align:center;padding:0 16px;margin:0;z-index:1;max-width:32ch}
.cam-box .btn{position:absolute;bottom:14px;z-index:2}
/* F12-06: sem câmera (desligada/negada) não há moldura; mensagem e botão fluem em coluna, sem sobrepor a borda */
.cam-box:not(:has(.cam.on)){display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:16px}
.cam-box:not(:has(.cam.on)) .cam-frame{display:none}
.cam-box:not(:has(.cam.on)) .btn{position:static}
.scan-setup{display:grid;gap:0 12px;grid-template-columns:1fr 1fr}@media(max-width:520px){.scan-setup{grid-template-columns:1fr}}
.sim-banner{background:#fdf1d6;color:var(--warn);border:2px dashed #d9a400;border-radius:8px;padding:8px 12px;font-weight:700;margin-bottom:8px}
.samples{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:8px 0}.samples .hint{margin:0}
.manual{margin:12px 0}
.scan-overlay{position:fixed;inset:0;z-index:50;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;padding:24px;color:#fff}
.scan-overlay[hidden]{display:none}
.scan-overlay.valid{background:#12703a}.scan-overlay.already{background:#0b57b0}.scan-overlay.pending{background:#f2b600;color:#2a2000}.scan-overlay.invalid{background:#b3261e}
.ov-icon{font-size:clamp(5rem,22vw,10rem);line-height:1;font-weight:800}.ov-title{font-size:clamp(2rem,9vw,4.5rem);font-weight:800;letter-spacing:.02em}
.ov-name{font-size:clamp(1.6rem,7vw,3rem);font-weight:700}.ov-sub{font-size:clamp(1.1rem,4vw,1.8rem);opacity:.95}.ov-hint{font-size:clamp(1rem,3.5vw,1.5rem);opacity:.95;max-width:30ch}
.ov-btn{margin-top:14px;background:#fff;color:#111;border-color:#fff}
.totem-main{max-width:none;padding:0;min-height:100vh;background:var(--navy);color:#fff}
.totem{padding:16px;max-width:900px;margin:0 auto}
.totem-head{display:flex;flex-wrap:wrap;align-items:center;gap:12px;justify-content:space-between}.totem-head h1{font-size:clamp(1.5rem,5vw,2.4rem);margin:0;flex:1}
.totem .cam-box{max-height:70vh}.totem .check,.totem label{color:#fff}.totem .hint{color:#D5DAEA}
.totem-manual{margin-top:12px}.totem-manual summary{cursor:pointer;min-height:44px;display:flex;align-items:center}
.totem .btn{border-color:#9aa5c4}.totem input[type=text]{color:#111}
[hidden]{display:none!important}

/* assinatura */
.spinner{width:44px;height:44px;border:5px solid var(--line);border-top-color:var(--brand);border-radius:50%;margin:8px auto 14px;animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.spinner{animation:none;border-top-color:var(--line);border-right-color:var(--brand)}}

/* inscritos: convites e revisão de CPF */
.sub{font-size:.8rem;color:var(--muted);max-width:34ch}
.row-review{background:#fffbf0}
.row-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.btn.armed{background:var(--danger);border-color:var(--danger);color:#fff}
.bulk{margin:0 0 12px}.bulk-prog{margin:6px 0 0}

/* F8: busca, check-in manual, QR (celular primeiro) */
.search input{width:100%;min-height:48px;padding:.5em .8em;font:inherit;border:1px solid var(--line-strong);border-radius:var(--r-sm);margin-bottom:6px}
.chip-ok{background:#e3f4ea;color:var(--ok)}
.inline-form{border:1px dashed var(--line-strong);border-radius:var(--r-sm);padding:10px;margin-top:8px;background:#fafbfc;display:grid;gap:4px;max-width:420px}
.inline-form .field{margin:0}.inline-form label{margin:.3em 0 .2em}
.form-host:empty{display:none}
@media(max-width:640px){
  .table-wrap table,.table-wrap thead,.table-wrap tbody,.table-wrap tr,.table-wrap td{display:block;width:100%}
  .table-wrap thead{position:absolute;left:-9999px}
  .table-wrap tr{border:1px solid var(--line);border-radius:10px;margin-bottom:10px;padding:6px 10px;background:#fff}
  .table-wrap td{border:0;padding:.35em 0}
  .table-wrap td[data-label="Tipo"],.table-wrap td[data-label="Origem"]{display:inline-block;width:48%;vertical-align:top}
  .table-wrap td[data-label]::before{content:attr(data-label);display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
  .row-actions .btn{min-height:44px}
}
.qr-card{text-align:center}.qr-box{background:#fff;padding:14px;border-radius:12px;border:1px solid var(--line);display:inline-block;margin:8px auto}
.qr-box svg{display:block;width:min(78vw,320px);height:auto}
.qr-name{font-size:1.25rem;font-weight:700;margin:6px 0 0}

/* auditoria de escopo */
.att-count{font-size:1.05rem;margin:.4em 0}.sig-summary{margin:0 0 10px}
.manual-details{margin:0 0 12px;border:1px solid var(--line);border-radius:8px;padding:0 12px;background:#fff}
.manual-details summary{cursor:pointer;min-height:48px;display:flex;align-items:center;font-weight:600}
.manual-grid{display:grid;gap:0 12px;grid-template-columns:1fr}@media(min-width:640px){.manual-grid{grid-template-columns:1fr 1fr}}
.err-slot:empty{display:none}

/* passada de acessibilidade/celular */
.nav a[aria-current=page]{background:var(--navy-hover);font-weight:700;text-decoration:underline;text-underline-offset:4px}
@media(pointer:coarse),(max-width:640px){.btn-sm{min-height:44px;padding:.4em 1em}.btn-link{min-height:44px}select,input:not([type=checkbox]):not([type=radio]){min-height:48px}}
@media(max-width:640px){
  .table-wrap td[data-label="Horário"],.table-wrap td[data-label="Tipo"],.table-wrap td[data-label="Origem"],.table-wrap td[data-label="Como"],.table-wrap td[data-label="Linha"]{display:inline-block;width:48%;vertical-align:top}
  .page-head .btn{width:100%}.actions .btn{flex:1 1 100%}
  .card{padding:14px 12px}
  h1{font-size:1.35rem}
}
@media(max-width:380px){.topbar .nav a{padding:.4em .5em}}
@media(max-width:640px){
  .rules{grid-template-columns:1fr}.check-grid{grid-template-columns:1fr}
  .day-grid .field:first-child,.day-grid .field:last-child{grid-column:1/-1}
  fieldset.rule{min-width:0}
}

.row-off{opacity:.65}
.inline-form select{max-width:100%}
td select{min-width:160px}

.filters{margin:0 0 8px}.filters summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:600}
.filter-grid{display:grid;gap:0 10px;grid-template-columns:1fr 1fr}@media(min-width:760px){.filter-grid{grid-template-columns:repeat(4,1fr)}}
.reg-total{margin:.3em 0;color:var(--muted)}
.inline-form.wide{max-width:none}.clear-chk{min-height:36px;font-size:.85rem}
.att-days li{padding:.5em 0}

.tabs{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}.tab[aria-pressed=true]{background:var(--brand);border-color:var(--brand);color:#fff}
.event-card.rich{display:block}.ev-top{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:4px}

.sub.err{color:#7a1610}.filters-open{margin:8px 0}

/* IDV: rodapé público e detalhes */
.pub-foot{color:var(--muted)}
.pub-head small{color:var(--muted)}
@media(prefers-reduced-motion:reduce){.event-card{transition:none}}

/* assinatura eletrônica própria */
.steps-4{font-size:.72rem;gap:4px}.steps-4 li{padding:6px 2px}
.term-scroll{max-height:min(46vh,380px);overflow-y:auto;border:2px solid var(--line-strong);border-radius:var(--r-sm);padding:12px 14px;background:#fff;line-height:1.55;-webkit-overflow-scrolling:touch}
.term-scroll:focus-visible{outline-offset:3px}
.term-title{font-size:1rem}.term-sec h3{font-size:.95rem;margin:1em 0 .4em}.term-sec p{margin:.4em 0;font-size:.95rem;text-align:left}
.read-bar{width:100%;height:10px;margin:0 0 4px;accent-color:var(--brand);border:0;border-radius:99px;overflow:hidden;background:var(--line)}
.read-bar::-webkit-progress-bar{background:var(--line)}.read-bar::-webkit-progress-value{background:var(--brand)}.read-bar::-moz-progress-bar{background:var(--brand)}
.read-txt{margin:0 0 8px;font-size:.875rem;color:var(--muted);font-weight:600}
.dl-row{margin:10px 0 0}.dl-row .btn{margin-top:0}
fieldset.consents{margin:16px 0 0;padding:10px 12px}fieldset.consents:disabled{opacity:.6}
fieldset.choice{border:0;padding:0;margin:14px 0 0}fieldset.choice legend{padding:0}
.choice-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px}
label.pill{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;margin:0;padding:.4em .8em;border:2px solid var(--line-strong);border-radius:999px;background:#fff;font-weight:700;cursor:pointer;text-align:center}
label.pill:has(input:checked){background:var(--brand);border-color:var(--brand);color:#fff}
label.pill:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}
label.pill input{width:18px;height:18px;flex:none;accent-color:#fff}
label.check span{flex:1}
label.check.accept{align-items:flex-start;margin-top:14px;padding:10px 12px;border:2px solid var(--line-strong);border-radius:var(--r-sm);background:#fff}
.mt{margin-top:1.2em}
.otp{font-size:1.5rem;letter-spacing:.35em;text-align:center;font-family:ui-monospace,Menlo,monospace}
.sig-wrap{border:2px dashed var(--line-strong);border-radius:var(--r-sm);background:#fff;margin:6px 0 8px;overflow:hidden}
.sig-canvas{display:block;width:100%;height:180px;touch-action:none;cursor:crosshair}
.receipt .rc-code{font-size:1.4rem;font-weight:700;letter-spacing:.06em;word-break:break-all}
.hash{word-break:break-all;font-size:.8rem;font-weight:400}
.hash-result{margin:8px 0 0;font-weight:700}.hash-result.ok{color:var(--ok)}.hash-result.bad{color:var(--danger)}
.evidence .summary{margin-bottom:8px}
@media(max-width:380px){.choice-row{grid-template-columns:1fr}}
.term-scroll h2,.term-scroll h3{letter-spacing:0}
.term-en{margin-top:.6em;padding-top:.5em;border-top:1px dashed var(--line);color:var(--muted);font-style:italic}.term-en h4{font-size:.85rem;margin:.2em 0}

/* F5b dashboard */
.dash-page-head{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}.dash-page-head h1{margin:.2em 0}
.dash-counters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}
.dash-chip-btn{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:.3em .9em;border:1px solid var(--line-strong);border-radius:999px;background:#fff;color:var(--ink);font:inherit;cursor:pointer;transition:background .15s,border-color .15s}
.dash-chip-btn:hover{border-color:var(--brand);background:#EEF1F8}.dash-chip-btn strong{font-variant-numeric:tabular-nums}
.dash-chip-btn[aria-pressed=true]{background:var(--brand);border-color:var(--brand);color:#fff}
.dash-filter-actions{display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap}
.badge.dash-st-enviado,.badge.dash-st-parcial,.badge.dash-sg-notificado,.badge.dash-sg-visualizou{background:#e8eefb;color:#1d3f8a;border-color:#b5c6ea}
.badge.dash-st-concluido,.badge.dash-sg-assinou{background:#e3f4ea;color:var(--ok);border-color:#a7d9b9}
.badge.dash-st-recusado,.badge.dash-sg-recusou,.badge.dash-st-cancelado{background:#f1e6e5;color:#7a1610;border-color:#e3b9b6}
.badge.dash-st-expirado,.badge.dash-sg-pendente{background:#fdf1d6;color:var(--warn);border-color:#f0d78a}
.badge.dash-st-rascunho{background:#EEF1F8;color:#3a4462;border-color:#c4cadb}
.dash-pager{display:flex;gap:12px;align-items:center;justify-content:center;margin:12px 0}
.dash-empty{text-align:center;padding:28px 16px}
.dash-skeleton{height:56px;border-radius:var(--r-sm);background:linear-gradient(90deg,#eceff6,#f6f7fa,#eceff6);background-size:200% 100%;margin-bottom:10px;animation:dash-sk 1.4s linear infinite}
@keyframes dash-sk{to{background-position:-200% 0}}
@media(prefers-reduced-motion:reduce){.dash-skeleton{animation:none}.dash-chip-btn{transition:none}}
.dash-timeline{list-style:none;margin:0;padding:0 0 0 14px;border-left:2px solid var(--line)}
.dash-timeline li{position:relative;padding:.5em 0 .7em 14px}.dash-timeline li::before{content:"";position:absolute;left:-21px;top:.95em;width:10px;height:10px;border-radius:50%;background:var(--brand);border:2px solid #fff}
.dash-chain{font-weight:600;margin:0 0 10px}.dash-chain.ok{color:var(--ok)}.dash-chain.bad{color:var(--danger)}
@media(max-width:640px){.dash-page-head .btn{width:100%}}

/* A falha de selagem usa o mesmo tratamento de erro do painel. */
.dash-st-sealing_failed { color: var(--danger); }
