/**
 * Hero_Staff_UI — kit visual do Painel Staff (direção "A · Hero + papel").
 *
 * Linguagem do hero da home: faixa escura com grade sutil e brilho lima,
 * selo com ponto, League Spartan 800 em caixa alta com a última palavra em
 * lima, números em blocos (como a contagem regressiva), botões de 11–12px
 * peso 900 com tracking. O trabalho fica em cartões claros.
 *
 * Tudo vem de token do tema, com fallback. Espaço entre irmãos é `gap`.
 * O tema tem `section{padding:100px 40px}` (faixas da home): dentro do kit
 * nenhum section herda isso.
 */

.hsu {
    --k-ink: #090A09;
    --k-lime: var(--lime, #A3D900);
    --k-lime-dark: var(--lime-dark, #92c800);
    --k-lime-ink: var(--lime-text, #5a7a00);
    --k-txt: var(--text-primary, #1D1F1B);
    --k-mute: var(--text-secondary, #5B5F57);
    --k-card: var(--card-bg, #FFFFFF);
    --k-line: var(--card-border, #E6E7E1);
    --k-paper: #F3F4F0;
    --k-warn: #8a4b00; --k-warn-bg: rgba(245, 158, 11, .16);
    --k-ok: var(--lime-text, #5a7a00); --k-ok-bg: rgba(163, 217, 0, .2);
    --k-bad: #b3202b; --k-bad-bg: rgba(230, 57, 70, .1);
    display: flex; flex-direction: column; gap: 22px;
    color: var(--k-txt);
    font-family: var(--font-body, 'Outfit', sans-serif);
}
[data-theme="dark"] .hsu {
    --k-paper: rgba(255, 255, 255, .05);
    --k-warn: #fbbf24; --k-warn-bg: rgba(251, 191, 36, .14);
    --k-ok: var(--lime, #A3D900); --k-ok-bg: rgba(163, 217, 0, .14);
    --k-lime-ink: var(--lime, #A3D900);
    --k-bad: #ff8a8a; --k-bad-bg: rgba(255, 99, 99, .12);
    color-scheme: dark;
}
.hsu *, .hsu *::before, .hsu *::after { box-sizing: border-box; }
.hsu section, .hsu header, .hsu footer { padding: 0; }
.hsu h1, .hsu h2, .hsu h3, .hsu p { margin: 0; }
.hsu [hidden] { display: none !important; }

/* ── Faixa-hero ─────────────────────────────────────── */
.hsu-hero {
    display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 22px 32px; align-items: end;
    padding: 24px 28px 26px; border-radius: 20px; color: #fff; overflow: hidden;
    background-color: var(--k-ink);
    background-image:
        radial-gradient(900px 380px at 88% -10%, rgba(163, 217, 0, .22), transparent 60%),
        linear-gradient(rgba(255, 255, 255, .045) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, .045) 1px, transparent 1px);
    background-size: auto, 44px 44px, 44px 44px;
}
[data-theme="dark"] .hsu-hero { box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .08); }
/* Capa: a foto fica atrás de duas camadas escuras (lateral + base), como o
   .hero-shade da home. O texto nunca fica sobre a foto "crua". */
.hsu-hero--capa {
    background-image:
        linear-gradient(90deg, rgba(9, 10, 9, .9) 0%, rgba(9, 10, 9, .66) 48%, rgba(9, 10, 9, .38) 100%),
        linear-gradient(0deg, rgba(9, 10, 9, .8) 0%, rgba(9, 10, 9, 0) 60%),
        radial-gradient(900px 380px at 88% -10%, rgba(163, 217, 0, .18), transparent 60%),
        linear-gradient(rgba(255, 255, 255, .04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, .04) 1px, transparent 1px),
        var(--hsu-capa);
    background-size: auto, auto, auto, 44px 44px, 44px 44px, cover;
    background-position: 0 0, 0 0, 0 0, 0 0, 0 0, center 30%;
}
.hsu-hero--capa .hsu-hero__dica, .hsu-hero--capa .hsu-voltar { color: rgba(255, 255, 255, .88); text-shadow: 0 1px 10px rgba(0, 0, 0, .7); }
.hsu-hero--capa .hsu-tile { background: rgba(9, 10, 9, .55); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.hsu-hero__top { grid-column: 1 / -1; display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.hsu-voltar { display: inline-flex; align-items: center; gap: 6px; min-height: 32px; font-size: 13px; font-weight: 600; color: rgba(255, 255, 255, .72); text-decoration: none; }
.hsu-voltar:hover { color: #fff; }
.hsu-kicker {
    display: inline-flex; align-items: center; gap: 8px; padding: 6px 12px; border-radius: 20px;
    background: rgba(8, 10, 8, .46); border: 1px solid rgba(255, 255, 255, .13); color: #fff;
    font-size: 10.5px; font-weight: 800; letter-spacing: 1.5px; text-transform: uppercase; white-space: nowrap;
}
.hsu-kicker::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--k-lime); box-shadow: 0 0 0 3px rgba(163, 217, 0, .25); }
.hsu-hero__txt { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.hsu-display {
    font-family: var(--font-display, 'League Spartan', sans-serif); font-weight: 800; text-transform: uppercase;
    letter-spacing: -.045em; line-height: .92; font-size: 56px; text-wrap: balance; overflow-wrap: anywhere;
}
.hsu-display--longo { font-size: 44px; }
.hsu-hero .hsu-display { color: #fff; }
.hsu-display em { font-style: normal; color: var(--k-lime); }
.hsu-hero__meta { display: flex; flex-wrap: wrap; gap: 8px; }
.hsu-tiles { display: flex; gap: 10px; flex-wrap: wrap; justify-content: flex-end; }
.hsu-tile {
    min-width: 92px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px;
    padding: 14px 12px 12px; border-radius: 12px; background: rgba(255, 255, 255, .05); border: 1px solid rgba(255, 255, 255, .1);
}
.hsu-tile b { font-family: var(--font-display, 'League Spartan', sans-serif); font-weight: 800; font-size: 34px; line-height: 1; color: #fff; font-variant-numeric: tabular-nums; }
.hsu-tile span { font-size: 9.5px; font-weight: 800; letter-spacing: 1.4px; text-transform: uppercase; color: rgba(255, 255, 255, .58); white-space: nowrap; }
.hsu-tile--alerta b { color: #fbbf24; }
.hsu-tile--ok b { color: var(--k-lime); }
.hsu-hero__acoes { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 10px; align-items: center; padding-top: 18px; border-top: 1px solid rgba(255, 255, 255, .1); }
.hsu-hero__dica { margin-left: auto; font-size: 13px; color: rgba(255, 255, 255, .65); max-width: 52ch; }

/* ── Pílulas ─────────────────────────────────────────── */
.hsu-pill {
    display: inline-flex; align-items: center; gap: 6px; padding: 4px 11px; border-radius: 999px;
    font-size: 10.5px; font-weight: 800; letter-spacing: 1px; text-transform: uppercase; white-space: nowrap;
    background: var(--k-paper); color: var(--k-mute);
}
.hsu-pill--escuro { background: rgba(255, 255, 255, .08); color: rgba(255, 255, 255, .78); }
.hsu-pill--lima { background: var(--k-lime); color: var(--k-ink); }
.hsu-pill--aguardando { background: var(--k-warn-bg); color: var(--k-warn); }
.hsu-hero .hsu-pill--aguardando { background: rgba(251, 191, 36, .16); color: #fbbf24; }
.hsu-pill--ok { background: var(--k-ok-bg); color: var(--k-ok); }
.hsu-hero .hsu-pill--ok { background: rgba(163, 217, 0, .16); color: var(--k-lime); }
.hsu-pill--erro { background: var(--k-bad-bg); color: var(--k-bad); }
.hsu-pill--vivo::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: currentColor; }

/* ── Botões (o .btn do hero: 11–12px, peso 900, tracking) ── */
.hsu-btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 0 20px;
    border: 1px solid var(--k-lime); border-radius: var(--r-btn, 8px); background: var(--k-lime); color: var(--k-ink);
    font: inherit; font-size: 12px; font-weight: 900; letter-spacing: .06em; text-transform: uppercase;
    text-decoration: none; cursor: pointer; white-space: nowrap;
    transition: background .15s ease, border-color .15s ease, color .15s ease;
}
.hsu-btn i { font-size: 17px; }
.hsu-btn:hover { background: var(--k-lime-dark); border-color: var(--k-lime-dark); color: var(--k-ink); }
.hsu-btn--claro { background: var(--k-card); border-color: var(--k-line); color: var(--k-txt); }
.hsu-btn--claro:hover { background: var(--k-card); border-color: var(--k-txt); color: var(--k-txt); }
.hsu-btn--fantasma { background: rgba(255, 255, 255, .06); border-color: rgba(255, 255, 255, .18); color: #fff; }
.hsu-btn--fantasma:hover { background: rgba(255, 255, 255, .12); border-color: rgba(255, 255, 255, .3); color: #fff; }
.hsu-btn--perigo { background: var(--k-card); border-color: var(--k-line); color: var(--k-bad); }
.hsu-btn--perigo:hover { background: var(--k-card); border-color: var(--k-bad); color: var(--k-bad); }
.hsu-btn--sm { min-height: 36px; padding: 0 14px; font-size: 11px; }
.hsu-btn:disabled, .hsu-btn[aria-disabled="true"] { opacity: .5; cursor: not-allowed; }
.hsu-btn.is-armado { background: var(--k-ink); border-color: var(--k-ink); color: #fff; }
.hsu-btn--perigo.is-armado { background: #c0262f; border-color: #c0262f; color: #fff; }
.hsu button:focus-visible, .hsu a:focus-visible, .hsu input:focus-visible, .hsu select:focus-visible, .hsu textarea:focus-visible {
    outline: 2px solid var(--k-lime); outline-offset: 2px;
}

/* ── Abas / segmentos ────────────────────────────────── */
.hsu-abas {
    display: flex; gap: 6px; padding: 5px; width: fit-content; max-width: 100%;
    background: var(--k-card); border: 1px solid var(--k-line); border-radius: 14px;
    overflow-x: auto; scrollbar-width: none;
}
.hsu-abas::-webkit-scrollbar { display: none; }
.hsu-abas > a, .hsu-abas > button {
    flex: none; display: inline-flex; align-items: center; gap: 8px; min-height: 42px; padding: 0 16px;
    border: 0; border-radius: 10px; background: none; color: var(--k-mute); text-decoration: none; cursor: pointer;
    font: inherit; font-size: 12px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase;
    transition: background .15s ease, color .15s ease;
}
.hsu-abas > a:hover, .hsu-abas > button:hover { color: var(--k-txt); }
.hsu-abas > [aria-current="page"], .hsu-abas > [aria-selected="true"], .hsu-abas > [aria-pressed="true"] { background: var(--k-ink); color: #fff; }
[data-theme="dark"] .hsu-abas > [aria-current="page"], [data-theme="dark"] .hsu-abas > [aria-selected="true"], [data-theme="dark"] .hsu-abas > [aria-pressed="true"] { background: var(--k-lime); color: var(--k-ink); }
.hsu-conta {
    min-width: 20px; height: 20px; padding: 0 6px; display: inline-flex; align-items: center; justify-content: center;
    border-radius: 999px; background: var(--k-paper); color: var(--k-mute); font-size: 11px; letter-spacing: 0; font-variant-numeric: tabular-nums;
}
.hsu-conta--alerta { background: var(--k-warn-bg); color: var(--k-warn); }
[aria-current="page"] > .hsu-conta, [aria-selected="true"] > .hsu-conta, [aria-pressed="true"] > .hsu-conta { background: rgba(255, 255, 255, .16); color: inherit; }

/* ── Cartões ─────────────────────────────────────────── */
.hsu-card {
    display: flex; flex-direction: column; gap: 18px; min-width: 0;
    padding: 22px; border-radius: 20px; background: var(--k-card); border: 1px solid var(--k-line);
}
.hsu-card__h { display: flex; justify-content: space-between; align-items: flex-end; gap: 12px; flex-wrap: wrap; }
.hsu-card__titulo {
    font-family: var(--font-display, 'League Spartan', sans-serif); font-weight: 800; text-transform: uppercase;
    letter-spacing: -.035em; line-height: 1; font-size: 26px; color: var(--k-txt);
}
.hsu-card__sub { margin-top: 6px; font-size: 13.5px; color: var(--k-mute); max-width: 64ch; }
.hsu-cols { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr)); gap: 20px; align-items: start; }
.hsu-barra { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; justify-content: space-between; }

/* ── Campos ──────────────────────────────────────────── */
.hsu-campo { display: flex; flex-direction: column; gap: 6px; min-width: 0; font-size: 11px; font-weight: 800; letter-spacing: 1.2px; text-transform: uppercase; color: var(--k-mute); }
.hsu-campo input, .hsu-campo select, .hsu-campo textarea, .hsu-input {
    width: 100%; min-height: 44px; padding: 0 12px; border-radius: var(--r-btn, 8px); border: 1px solid var(--k-line);
    background: var(--k-card); color: var(--k-txt); font: inherit; font-size: 14px; font-weight: 500; letter-spacing: 0; text-transform: none;
}
.hsu-campo textarea { min-height: 88px; padding: 10px 12px; }
.hsu-form { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr)); gap: 12px; align-items: end; }
.hsu-form .hsu-campo--cheio { grid-column: 1 / -1; }

/* ── Tabela ──────────────────────────────────────────── */
.hsu-tabela-wrap { overflow-x: auto; border: 1px solid var(--k-line); border-radius: 16px; background: var(--k-card); }
.hsu-tabela { width: 100%; border-collapse: collapse; font-size: 14px; }
.hsu-tabela th, .hsu-tabela td { padding: 13px 16px; text-align: left; vertical-align: middle; border-bottom: 1px solid var(--k-line); }
.hsu-tabela tbody tr:last-child > * { border-bottom: 0; }
.hsu-tabela thead th { background: var(--k-paper); font-size: 10.5px; font-weight: 800; letter-spacing: 1.3px; text-transform: uppercase; color: var(--k-mute); white-space: nowrap; }
.hsu-tabela td.is-num, .hsu-tabela th.is-num { font-variant-numeric: tabular-nums; white-space: nowrap; }
.hsu-tabela strong { font-weight: 700; }
.hsu-sub { display: block; font-size: 12.5px; color: var(--k-mute); }

/* ── Estados ─────────────────────────────────────────── */
.hsu-vazio { display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 30px 18px; border-radius: 16px; background: var(--k-paper); text-align: center; }
.hsu-vazio i { font-size: 30px; color: var(--k-mute); }
.hsu-vazio b { font-family: var(--font-display, 'League Spartan', sans-serif); font-weight: 800; text-transform: uppercase; letter-spacing: -.02em; font-size: 18px; }
.hsu-vazio span { font-size: 13.5px; color: var(--k-mute); max-width: 46ch; }
.hsu-aviso { display: flex; gap: 10px; align-items: flex-start; padding: 12px 14px; border-radius: 12px; background: var(--k-warn-bg); font-size: 14px; }
.hsu-aviso i { font-size: 18px; color: var(--k-warn); flex: none; }
.hsu-msg { padding: 12px 14px; border-radius: 12px; font-size: 14px; font-weight: 600; }
.hsu-msg--ok { background: var(--k-ok-bg); color: var(--k-ok); }
.hsu-msg--erro { background: var(--k-bad-bg); color: var(--k-bad); }
.hsu-dica { font-size: 13.5px; color: var(--k-mute); max-width: 72ch; }

/* ── Celular ─────────────────────────────────────────── */
@media (max-width: 760px) {
    .hsu { gap: 16px; }
    .hsu-hero { grid-template-columns: minmax(0, 1fr); padding: 18px 18px 20px; gap: 18px; border-radius: 16px; }
    .hsu-display, .hsu-display--longo { font-size: 34px; }
    .hsu-tiles { justify-content: flex-start; display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 8px; }
    .hsu-hero__top { flex-wrap: wrap; }
    .hsu-kicker { max-width: 100%; overflow: hidden; text-overflow: ellipsis; }
    .hsu-tile { min-width: 0; padding: 12px 6px 10px; }
    .hsu-tile b { font-size: 28px; }
    .hsu-hero__acoes > .hsu-btn { flex: 1 1 auto; }
    .hsu-hero__dica { margin-left: 0; }
    .hsu-card { padding: 16px; border-radius: 16px; }
    .hsu-card__titulo { font-size: 22px; }
    .hsu-abas { width: 100%; }
}
@media (prefers-reduced-motion: reduce) { .hsu *, .hsu *::before, .hsu *::after { transition: none !important; } }

/* ════════════════════════════════════════════════════════════════
   2.70.0 — Painel sem barra lateral
   A barra lateral tirava o staff da navegação do site. Agora: o cabeçalho
   do site continua e o painel ganha uma barra escura de subnavegação
   (.hsp). O conteúdo ocupa a largura toda; as telas no kit (.hsu) perdem
   o cartão branco externo (senão seria cartão dentro de cartão).
   ════════════════════════════════════════════════════════════════ */
.hero-staff--topo .hero-staff__layout--topo { grid-template-columns: minmax(0, 1fr); max-width: 1200px; }
.hero-staff--topo .hero-staff__main:has(> .hsu) { background: none; border: 0; padding: 0; box-shadow: none; }
/* v2.80.2 — o invólucro antigo (.hero-staff, staff-panel.css) pinta #F5F5F3 fixo
   e não tem modo escuro; o kit segue o tema. No escuro dava texto claro do kit
   sobre o fundo claro do invólucro: títulos e avisos quase sumiam. Onde o kit
   manda, o invólucro fica transparente e o fundo escuro do site aparece. */
[data-theme="dark"] .hero-staff--topo:has(.hsu) { background: transparent; }

.hsp {
    position: relative; z-index: 30;
    max-width: 1200px; margin: 0 auto 20px; box-sizing: border-box;
    display: flex; align-items: center; gap: 6px; padding: 8px 10px 8px 18px; border-radius: 14px;
    background: #090A09; color: #fff; font-family: var(--font-body, 'Outfit', sans-serif);
}
.hsp a { text-decoration: none; }
.hsp__marca {
    display: inline-flex; align-items: center; gap: 8px; margin-right: 12px; color: #fff; white-space: nowrap;
    font-family: var(--font-display, 'League Spartan', sans-serif); font-weight: 800; font-size: 16px; letter-spacing: -.02em; text-transform: uppercase;
}
.hsp__marca i { color: var(--lime, #A3D900); font-size: 18px; }
.hsp__desk, .hsp__mob { display: flex; align-items: center; gap: 4px; min-width: 0; }
.hsp__mob { display: none; }
.hsp__item {
    display: inline-flex; align-items: center; gap: 7px; height: 38px; padding: 0 12px; border-radius: 8px;
    color: rgba(255, 255, 255, .74); font-size: 11.5px; font-weight: 900; letter-spacing: .07em; text-transform: uppercase;
    white-space: nowrap; cursor: pointer; list-style: none; transition: background .15s ease, color .15s ease;
}
.hsp__item::-webkit-details-marker { display: none; }
.hsp__item i { font-size: 16px; }
.hsp__item:hover { color: #fff; background: rgba(255, 255, 255, .07); }
.hsp__item[aria-current="page"] { background: var(--lime, #A3D900); color: #090A09; }
.hsp__item.is-dentro { color: #fff; box-shadow: inset 0 -2px 0 var(--lime, #A3D900); border-radius: 8px 8px 0 0; }
.hsp__item:focus-visible, .hsp__opcao:focus-visible, .hsp__marca:focus-visible { outline: 2px solid var(--lime, #A3D900); outline-offset: 2px; }
.hsp-n {
    min-width: 18px; height: 18px; padding: 0 5px; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center;
    background: #fbbf24; color: #090A09; font-style: normal; font-size: 10.5px; font-weight: 800; letter-spacing: 0; font-variant-numeric: tabular-nums;
}
.hsp__item[aria-current="page"] .hsp-n { background: #090A09; color: var(--lime, #A3D900); }
.hsp__grupo { position: relative; }
.hsp__grupo[open] > .hsp__item { color: #fff; background: rgba(255, 255, 255, .07); }
.hsp__grupo[open] > .hsp__item .ti-chevron-down { transform: rotate(180deg); }
.hsp__menu {
    position: absolute; top: calc(100% + 8px); left: 0; min-width: 260px; padding: 8px; border-radius: 14px;
    background: var(--card-bg, #fff); color: var(--text-primary, #1D1F1B); border: 1px solid var(--card-border, #E6E7E1);
    box-shadow: 0 18px 40px rgba(0, 0, 0, .22); display: flex; flex-direction: column; gap: 2px;
}
.hsp__opcao {
    display: flex; align-items: center; gap: 10px; min-height: 42px; padding: 0 12px; border-radius: 10px;
    color: var(--text-primary, #1D1F1B); font-size: 14px; font-weight: 600;
}
.hsp__opcao i { font-size: 18px; color: var(--text-secondary, #5B5F57); }
.hsp__opcao span { flex: 1; }
.hsp__opcao:hover { background: rgba(0, 0, 0, .05); }
.hsp__opcao[aria-current="page"] { background: rgba(163, 217, 0, .18); color: var(--lime-text, #5a7a00); font-weight: 800; }
[data-theme="dark"] .hsp__opcao:hover { background: rgba(255, 255, 255, .06); }
[data-theme="dark"] .hsp__opcao[aria-current="page"] { color: var(--lime, #A3D900); }
[data-theme="dark"] .hsp { box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .08); }
.hsp__user { margin-left: auto; display: inline-flex; align-items: center; gap: 10px; padding-left: 10px; font-size: 13px; color: rgba(255, 255, 255, .7); white-space: nowrap; }
.hsp__sair { height: 32px; padding: 0 10px; display: inline-flex; align-items: center; border-radius: 8px; border: 1px solid rgba(255, 255, 255, .16); color: #fff; font-size: 11px; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
.hsp__sair:hover { background: rgba(255, 255, 255, .08); }

/* Hub do Início */
.hsp-hub__grupo { display: flex; flex-direction: column; gap: 12px; }
.hsp-hub__grade { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 12px; }
.hsp-cartao {
    display: flex; flex-direction: column; gap: 12px; min-height: 150px; padding: 18px; border-radius: 18px;
    background: var(--card-bg, #fff); border: 1px solid var(--card-border, #E6E7E1); color: var(--text-primary, #1D1F1B);
    text-decoration: none; transition: border-color .15s ease;
}
.hsp-cartao:hover { border-color: var(--text-primary, #1D1F1B); }
.hsp-cartao__ico { width: 42px; height: 42px; border-radius: 12px; display: inline-flex; align-items: center; justify-content: center; background: #F3F4F0; font-size: 21px; color: #090A09; }
[data-theme="dark"] .hsp-cartao__ico { background: rgba(255, 255, 255, .07); color: #fff; }
.hsp-cartao__nome { font-family: var(--font-display, 'League Spartan', sans-serif); font-weight: 800; font-size: 19px; letter-spacing: -.02em; text-transform: uppercase; line-height: 1.05; }
.hsp-cartao__estado { margin-top: auto; display: inline-flex; align-items: center; gap: 6px; font-size: 11px; font-weight: 900; letter-spacing: .07em; text-transform: uppercase; color: var(--text-secondary, #5B5F57); }
.hsp-cartao.is-pendente .hsp-cartao__ico { background: rgba(245, 158, 11, .18); color: #8a4b00; }
.hsp-cartao.is-pendente .hsp-cartao__estado { color: #8a4b00; }
[data-theme="dark"] .hsp-cartao.is-pendente .hsp-cartao__ico, [data-theme="dark"] .hsp-cartao.is-pendente .hsp-cartao__estado { color: #fbbf24; }

@media (max-width: 960px) {
    .hsp { flex-wrap: wrap; padding: 10px 12px; gap: 8px; }
    .hsp__desk { display: none; }
    .hsp__mob { display: flex; order: 3; flex: 1 1 100%; overflow-x: auto; scrollbar-width: none; padding-bottom: 2px; }
    .hsp__mob::-webkit-scrollbar { display: none; }
    .hsp__mob .hsp__item { flex: none; }
}
@media (prefers-reduced-motion: reduce) { .hsp__item, .hsp-cartao { transition: none; } }

/* 2.71.0 — selo da barra aceso no Início; linha discreta para a fila de bugs. */
.hsp__marca[aria-current="page"] { color: var(--lime, #A3D900); }
.hsp-linha {
    display: flex; align-items: center; gap: 12px; padding: 14px 18px; border-radius: 14px;
    background: var(--card-bg, #fff); border: 1px solid var(--card-border, #E6E7E1);
    color: var(--text-primary, #1D1F1B); text-decoration: none; font-size: 14px;
}
.hsp-linha > i:first-child { font-size: 20px; color: var(--text-secondary, #5B5F57); }
.hsp-linha span { flex: 1; }
.hsp-linha:hover { border-color: var(--text-primary, #1D1F1B); }

/* Página pública que usa o kit fora do Painel (cronograma vazio, avisos). */
.hsu-pagina { max-width: 1200px; margin: 32px auto 64px; padding-inline: var(--hero-gutter, 20px); }

/* ════════════════════════════════════════════════════════════════
   2.72.0 — Inscrições (.hsi): fila de decisão no padrão do kit.
   ════════════════════════════════════════════════════════════════ */
.hsi__barra { display: flex; flex-direction: column; gap: 12px; }
.hsi__filtros { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.hsi__filtros .hsu-campo { flex: 0 1 220px; }
.hsi__filtros .hsi__busca { flex: 1 1 260px; }
.hsi__limpar { font-size: 13px; font-weight: 700; color: var(--k-mute); text-decoration: underline; text-underline-offset: 3px; }
.hsi__limpar:hover { color: var(--k-txt); }
/* Célula de tabela não pode ser flex (sai do layout de tabela): filhos em bloco. */
.hsi__quem > *, .hsi__onde > * { display: block; }
.hsi__quem > * + *, .hsi__onde > * + * { margin-top: 2px; }
.hsi__quem strong { font-size: 15px; }
.hsi__quem a { font-size: 13px; color: var(--k-mute); text-decoration: none; overflow-wrap: anywhere; }
.hsi__quem a:hover { color: var(--k-txt); text-decoration: underline; }
.hsi__quando, .hsi__onde small { font-size: 12px; color: var(--k-mute); }
.hsi__th-acoes { width: 1%; }
.hsi__acoes { white-space: nowrap; }
.hsi__acoes-in, .hsi__decide { display: flex; gap: 8px; align-items: center; justify-content: flex-end; }
.hsi__mais { position: relative; }
.hsi__mais > summary {
    list-style: none; cursor: pointer; width: 36px; height: 36px; border-radius: var(--r-btn, 8px);
    display: inline-flex; align-items: center; justify-content: center;
    border: 1px solid var(--k-line); background: var(--k-card); color: var(--k-txt); font-size: 18px;
}
.hsi__mais > summary::-webkit-details-marker { display: none; }
.hsi__mais[open] > summary, .hsi__mais > summary:hover { border-color: var(--k-txt); }
.hsi__menu {
    position: absolute; right: 0; top: calc(100% + 6px); z-index: 20; min-width: 230px;
    display: flex; flex-direction: column; gap: 12px; padding: 14px;
    background: var(--k-card); border: 1px solid var(--k-line); border-radius: 14px; box-shadow: 0 14px 34px rgba(0, 0, 0, .16);
    white-space: normal;
}
.hsi__paginas { display: flex; gap: 10px; align-items: center; justify-content: flex-end; font-size: 13px; color: var(--k-mute); }
.hsi__linha { transition: opacity .25s ease; }
.hsi__linha.is-saindo { opacity: 0; }
/* Elenco da equipe (Hero Play) vinha com fundo claro fixo inline: segue o kit nos dois temas. */
.hsi__tabela .hp-team-row > td { background: var(--k-paper) !important; color: var(--k-txt); }
/* A tabela-wrap rola de lado: o menu "Mais" não pode ser cortado por ela. */
.hsi .hsu-tabela-wrap { overflow: visible; }

@media (max-width: 760px) {
    .hsi__filtros .hsu-campo, .hsi__filtros .hsi__busca { flex: 1 1 100%; }
    .hsi__filtros .hsu-btn { flex: 1 1 auto; }
    /* Tabela vira pilha de cartões: nome em cima, decisão embaixo, sem rolar de lado. */
    .hsi__tabela thead { display: none; }
    .hsi__tabela, .hsi__tabela tbody, .hsi__tabela tr, .hsi__tabela td { display: block; width: 100%; box-sizing: border-box; }
    .hsi__tabela tr.hsi__linha { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 6px 12px; padding: 14px 16px; border-bottom: 1px solid var(--k-line); }
    .hsi__tabela tr.hsi__linha > td { padding: 0; border: 0; }
    .hsi__tabela .hsi__quem { grid-column: 1; }
    .hsi__tabela tr.hsi__linha > td:nth-child(3) { grid-column: 2; grid-row: 1; align-self: start; }
    .hsi__tabela .hsi__onde { grid-column: 1 / -1; }
    .hsi__tabela .hsi__acoes { grid-column: 1 / -1; padding-top: 6px; }
    .hsi__acoes-in { justify-content: flex-start; }
    .hsi__decide { flex: 1; }
    .hsi__decide .hsu-btn { flex: 1; }
    .hsi__paginas { justify-content: center; }
}
/* O tema não define a classe do WP para texto só de leitor de tela. */
.hsu .screen-reader-text { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

/* 2.73.0 — Início: o diretório de tudo o que a pessoa pode abrir.
   Cartão-linha baixo (ícone + nome + contador), para caber muita coisa sem
   virar uma parede de blocos grandes como era em 2.70. */
.hsp-hub__atalhos { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 236px), 1fr)); gap: 10px; }
.hsp-hub__atalhos--mini { grid-template-columns: repeat(auto-fill, minmax(min(100%, 212px), 1fr)); }
.hsp-atalho {
    display: flex; align-items: center; gap: 12px; min-height: 60px; padding: 11px 14px;
    border: 1px solid var(--k-line); border-radius: 14px; background: var(--k-card);
    color: var(--k-txt); text-decoration: none; font-weight: 700; font-size: 14.5px;
    transition: border-color .15s ease;
}
.hsp-atalho:hover, .hsp-atalho:focus-visible { border-color: var(--k-lime); }
.hsp-atalho--mini { min-height: 52px; font-size: 14px; }
.hsp-atalho__ico {
    flex: none; width: 38px; height: 38px; border-radius: 11px; display: inline-flex; align-items: center; justify-content: center;
    background: var(--k-paper); color: var(--k-txt); font-size: 19px;
}
.hsp-atalho--mini .hsp-atalho__ico { width: 32px; height: 32px; border-radius: 9px; font-size: 17px; }
/* Sem a seta: o espaço dela é o que falta para "Patrocinadores" caber inteiro. */
.hsp-atalho--mini .hsp-atalho__seta { display: none; }
/* Rótulo longo quebra em duas linhas; cortar 'Patrocinadores' em 'Patrocinad…' seria pior. */
.hsp-atalho__nome { flex: 1; min-width: 0; overflow-wrap: anywhere; line-height: 1.2; }
.hsp-atalho__seta { font-size: 17px; color: var(--k-mute); }
.hsp-atalho__n {
    font-style: normal; flex: none; min-width: 26px; height: 24px; padding: 0 8px; border-radius: 999px;
    background: var(--k-warn-bg); color: var(--k-warn); font-size: 12.5px; font-weight: 800;
    display: inline-flex; align-items: center; justify-content: center; font-variant-numeric: tabular-nums;
}
.hsp-atalho.is-pendente .hsp-atalho__ico { background: var(--k-warn-bg); color: var(--k-warn); }

/* ════════════════════════════════════════════════════════════════
   2.74.0 — Avaliação da equipe (.hsa): cartão por pessoa e o
   formulário DENTRO do cartão, sem popup.
   ════════════════════════════════════════════════════════════════ */
.hsa__barra { display: flex; flex-direction: column; gap: 12px; }
.hsa__filtros { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.hsa__filtros .hsu-campo { flex: 0 1 220px; }
.hsa__filtros .hsa__busca { flex: 1 1 260px; }
.hsa__grade { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); gap: 14px; align-items: start; }
.hsa-cartao {
    display: flex; flex-direction: column; gap: 11px; padding: 18px;
    border: 1px solid var(--k-line); border-radius: 16px; background: var(--k-card);
    transition: border-color .15s ease;
}
.hsa-cartao:hover, .hsa-cartao:focus-within { border-color: var(--k-lime); }
/* Aberto, o formulário manda: o cartão ocupa a linha inteira da grade. */
.hsa-cartao.is-aberto { grid-column: 1 / -1; border-color: var(--k-lime); }
.hsa-cartao__topo { display: flex; align-items: center; gap: 12px; min-width: 0; }
/* Foto de perfil no mesmo lugar (e no mesmo quadrado) da inicial. */
.hsa-cartao__foto {
    flex: none; width: 44px; height: 44px; border-radius: 12px;
    object-fit: cover; background: var(--k-paper);
}
.hsa-cartao__ini {
    flex: none; width: 44px; height: 44px; border-radius: 12px; display: inline-flex; align-items: center; justify-content: center;
    background: var(--k-ink); color: var(--k-lime); font-weight: 800; font-size: 18px;
}
[data-theme="dark"] .hsa-cartao__ini { background: var(--k-lime); color: var(--k-ink); }
.hsa-cartao__quem { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.hsa-cartao__quem b { font-size: 16px; }
.hsa-cartao__quem small { font-size: 12.5px; color: var(--k-mute); overflow-wrap: anywhere; }
.hsa-cartao__nota { display: flex; align-items: center; gap: 9px; flex-wrap: wrap; }
.hsa-cartao__qtd, .hsa-cartao__voce { font-size: 13px; color: var(--k-mute); margin: 0; }
.hsa-cartao__cta { margin-top: auto; width: 100%; justify-content: space-between; }
/* Com o formulário aberto, o botão que o abriu só confunde. */
.hsa-cartao.is-aberto .hsa-cartao__cta { display: none; }

.hsa-form { display: flex; flex-direction: column; gap: 14px; margin-top: 4px; padding-top: 14px; border-top: 1px solid var(--k-line); }
.hsa-form__quem { font-size: 11px; font-weight: 800; letter-spacing: 1.3px; text-transform: uppercase; color: var(--k-mute); }
.hsa-form__criterios { display: flex; flex-direction: column; }
.hsa-crit { display: flex; align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap; padding: 9px 0; border-bottom: 1px solid var(--k-line); }
.hsa-crit:last-child { border-bottom: 0; }
.hsa-crit__txt { display: flex; flex-direction: column; gap: 2px; min-width: 200px; flex: 1; }
.hsa-crit__txt b { font-size: 14.5px; }
.hsa-crit__txt small { font-size: 12.5px; color: var(--k-mute); }
.hsa-crit__notas { display: flex; gap: 5px; }
.hsa-nota {
    width: 38px; height: 38px; border-radius: var(--r-btn, 8px); border: 1px solid var(--k-line);
    background: var(--k-card); color: var(--k-mute); font: inherit; font-weight: 700; cursor: pointer;
    transition: background .12s ease, border-color .12s ease, color .12s ease;
}
.hsa-nota:hover { border-color: var(--k-txt); color: var(--k-txt); }
.hsa-nota[aria-pressed="true"] { background: var(--k-ink); border-color: var(--k-ink); color: var(--k-lime); font-weight: 800; }
[data-theme="dark"] .hsa-nota[aria-pressed="true"] { background: var(--k-lime); border-color: var(--k-lime); color: var(--k-ink); }
.hsa-form__obs textarea { width: 100%; box-sizing: border-box; }
.hsa-form__pe { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.hsa-form__total { display: inline-flex; align-items: center; gap: 8px; padding: 9px 14px; border-radius: 10px; background: var(--k-paper); font-size: 13.5px; color: var(--k-mute); }
.hsa-form__total b { font-family: var(--font-display, 'League Spartan', sans-serif); font-size: 22px; line-height: 1; color: var(--k-txt); font-variant-numeric: tabular-nums; }
.hsa-form__msg { flex: 1; min-width: 140px; font-size: 13px; color: var(--k-mute); }
@media (max-width: 640px) {
    .hsa__filtros .hsu-campo, .hsa__filtros .hsa__busca { flex: 1 1 100%; }
    .hsa-crit { justify-content: flex-start; }
    .hsa-crit__notas { width: 100%; }
    .hsa-nota { flex: 1; height: 44px; }   /* alvo de toque no celular */
    .hsa-form__pe .hsu-btn { flex: 1 1 auto; justify-content: center; }
}

/* 2.74.0 — "Sua avaliação" no Início: a nota por extenso, não uma pílula. */
.hsp-sas { display: grid; grid-template-columns: minmax(200px, 250px) minmax(0, 1fr); gap: 24px; align-items: start; }
.hsp-sas__rot { font-size: 11px; font-weight: 800; letter-spacing: 1.3px; text-transform: uppercase; color: var(--k-mute); }
.hsp-sas__nota { display: flex; flex-direction: column; gap: 10px; align-items: flex-start; padding: 18px; border-radius: 14px; background: var(--k-ink); color: #fff; }
.hsp-sas__nota .hsp-sas__rot { color: rgba(255, 255, 255, .72); }
.hsp-sas__nota b { font-family: var(--font-display, 'League Spartan', sans-serif); font-weight: 800; font-size: 52px; line-height: .85; letter-spacing: -.04em; }
.hsp-sas__nota b span { font-family: inherit; font-size: 17px; font-weight: 700; color: rgba(255, 255, 255, .6); margin-left: 4px; }
.hsp-sas__nota small { font-size: 12.5px; color: rgba(255, 255, 255, .72); }
.hsp-sas__criterios { display: flex; flex-direction: column; gap: 8px; }
.hsp-sas__linha { display: grid; grid-template-columns: minmax(0, 1fr) 150px 46px; align-items: center; gap: 12px; font-size: 14px; }
.hsp-sas__barra { height: 8px; border-radius: 4px; background: var(--k-paper); overflow: hidden; }
.hsp-sas__barra i { display: block; height: 100%; background: var(--k-lime); }
.hsp-sas__linha b { text-align: right; font-variant-numeric: tabular-nums; }
.hsp-sas__recados { display: flex; flex-direction: column; gap: 8px; }
.hsp-sas__recado { display: flex; gap: 12px; padding: 13px 15px; border-radius: 13px; background: var(--k-card); border: 1px solid var(--k-line); }
.hsp-sas__recado > span { display: flex; flex-direction: column; gap: 3px; font-size: 14px; }
.hsp-sas__recado b { font-size: 14px; }
.hsp-sas__recado b small { font-weight: 500; color: var(--k-mute); }
.hsp-sas__foto { flex: none; width: 34px; height: 34px; border-radius: 9px; object-fit: cover; background: var(--k-paper); }
.hsp-sas__ini { flex: none; width: 34px; height: 34px; border-radius: 9px; display: inline-flex; align-items: center; justify-content: center; background: var(--k-ink); color: var(--k-lime); font-weight: 800; }
[data-theme="dark"] .hsp-sas__ini { background: var(--k-lime); color: var(--k-ink); }
@media (max-width: 760px) {
    .hsp-sas { grid-template-columns: minmax(0, 1fr); gap: 16px; }
    .hsp-sas__linha { grid-template-columns: minmax(0, 1fr) 90px 46px; }
}
