:root{
  /* Paleta interna FFA — os módulos herdam estes tokens apenas no console. */
  --ffa-vermelho-claro:#f4d5da;
  --ffa-vermelho:#c0182f;
  --ffa-vermelho-escuro:#8f1022;
  --ffa-azul-claro:#d9dfeb;
  --ffa-azul:#21355e;
  --ffa-azul-escuro:#15233f;
  --ffa-neutro-claro:#f5f6f8;
  --ffa-neutro:#e2e6ee;
  --ffa-branco:#ffffff;
  --tidmm-ink:#15171d;
  --tidmm-ink-2:#3a3f4b;
  --tidmm-muted:#73767f;
  --tidmm-line:#e8e6e1;
  --tidmm-surface:#ffffff;
  --tidmm-bg:#f4f2ee;
  --tidmm-panel:#fbfaf8;
  --tidmm-primary:#26262c;
  --tidmm-primary-2:#3b3b44;
  --tidmm-accent:#d85a30;
  --tidmm-accent-2:#bd4a25;
  --tidmm-accent-soft:#fae9e0;
  --tidmm-display:'Space Grotesk',ui-sans-serif,system-ui,sans-serif;
  --tidmm-body:'Inter',ui-sans-serif,system-ui,-apple-system,sans-serif;
  --tidmm-shadow:0 1px 2px rgba(22,20,18,.05),0 6px 16px -9px rgba(22,20,18,.14);
}
body.dark{
  color-scheme:dark;
  --ink:#f0f0f0;
  --ink-2:#d0d0d0;
  --muted:#a0a0a0;
  --line:#3a3a42;
  --surface:#1a1a22;
  --card:#1a1a22;
  --bg:#0f0f15;
  --panel:#1e1e28;
  --dark:#202022;
  --primary:#ec7b4c;
  --primary-soft:#2e1f17;
  --tidmm-ink:#f0f0f0;
  --tidmm-ink-2:#d0d0d0;
  --tidmm-muted:#a0a0a0;
  --tidmm-line:#3a3a42;
  --tidmm-surface:#1a1a22;
  --tidmm-bg:#0f0f15;
  --tidmm-panel:#1e1e28;
  --tidmm-primary:#f0f0f0;
  --tidmm-primary-2:#e0e0e0;
  --tidmm-accent:#ec7b4c;
  --tidmm-accent-2:#e1693e;
  --tidmm-accent-soft:#2e1f17;
}

/* Casca literal portada do DISC: marca quadrante, Home e tema. */
.tidmm-shell-topbar{
  position:relative;
  z-index:100;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  min-height:64px;
  padding:12px max(16px,calc(env(safe-area-inset-left) + 12px));
  color:var(--tidmm-ink);
  background:var(--tidmm-surface);
  border-bottom:1px solid var(--tidmm-line);
  box-shadow:var(--tidmm-shadow);
}
.tidmm-shell-topbar .brand{display:flex;align-items:center;gap:10px;min-width:0}
.tidmm-shell-topbar .mark{width:34px;height:34px;border-radius:10px;overflow:hidden;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;flex:0 0 auto;box-shadow:var(--tidmm-shadow)}
.tidmm-shell-topbar .mark i{display:block}.tidmm-shell-topbar .mark .q1{background:#d85a30}.tidmm-shell-topbar .mark .q2{background:#e0922f}.tidmm-shell-topbar .mark .q3{background:#2e9e6b}.tidmm-shell-topbar .mark .q4{background:#2b6fce}
.tidmm-shell-topbar .brand b{display:block;font:700 14px/1 var(--tidmm-display);letter-spacing:.04em;color:var(--tidmm-ink)}
.tidmm-shell-topbar .brand span{display:block;margin-top:3px;font:400 11px/1.15 var(--tidmm-body);color:var(--tidmm-muted)}
.tidmm-shell-topbar .right{display:flex;align-items:center;gap:8px;margin-left:auto}
.tidmm-shell-topbar .themebtn{width:36px;height:36px;border:1px solid var(--tidmm-line);border-radius:10px;background:var(--tidmm-surface);color:var(--tidmm-ink-2);font-size:16px;line-height:1;cursor:pointer;display:inline-grid;place-items:center;text-decoration:none;transition:background .16s ease,border-color .16s ease,transform .16s ease}
.tidmm-shell-topbar .themebtn:hover{background:var(--tidmm-panel);border-color:var(--tidmm-accent);transform:translateY(-1px)}
.tidmm-home-link{display:inline-grid;place-items:center}

/* Rodapé literal do DISC, compartilhado pelos módulos sem gerar DOM por JavaScript. */
footer.foot.no-print{
  max-width:980px;
  margin:34px auto 0;
  padding:22px 20px 34px;
  border-top:1px solid var(--tidmm-line);
  color:var(--tidmm-muted);
  background:transparent;
  font:12px/1.65 var(--tidmm-body);
  text-align:center;
}
footer.foot.no-print a{color:var(--tidmm-accent);text-underline-offset:2px}
footer.foot.no-print a:hover{color:var(--tidmm-accent-2)}

.tidmm-suite-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px}
.tidmm-suite-card{display:flex;flex-direction:column;gap:7px;min-height:142px;padding:18px;border:1px solid var(--tidmm-line);border-radius:14px;background:var(--tidmm-surface);box-shadow:var(--tidmm-shadow);color:var(--tidmm-ink);text-decoration:none;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.tidmm-suite-card:hover{transform:translateY(-2px);border-color:var(--tidmm-accent);box-shadow:0 12px 28px -18px rgba(0,0,0,.35)}
.tidmm-suite-card strong{font:700 19px/1.1 var(--tidmm-display)}
.tidmm-suite-card span:not(.tidmm-suite-card-tag){font:13px/1.45 var(--tidmm-body);color:var(--tidmm-ink-2)}
.tidmm-suite-card b{margin-top:auto;font:600 12px var(--tidmm-display);color:var(--tidmm-accent)}
.tidmm-suite-card-tag{font:600 10px var(--tidmm-display);letter-spacing:.1em;text-transform:uppercase;color:var(--tidmm-accent)}
.tidmm-suite-card-clima{border-top:3px solid #2e7d52}.tidmm-suite-card-career{border-top:3px solid #7a4bb8}.tidmm-suite-card-exitvoice{border-top:3px solid #a64b34}.tidmm-suite-card-dashboard{border-top:3px solid var(--tidmm-accent)}

.tidmm-cookie-banner{position:fixed;z-index:10000;left:16px;right:16px;bottom:16px;max-width:800px;margin:0 auto;display:flex;align-items:center;gap:16px;justify-content:space-between;flex-wrap:wrap;padding:15px 18px;border:1px solid var(--tidmm-line);border-radius:14px;background:var(--tidmm-surface);box-shadow:0 18px 46px -22px rgba(0,0,0,.38);color:var(--tidmm-ink-2);font:12.8px/1.5 var(--tidmm-body)}
.tidmm-cookie-banner[hidden]{display:none}.tidmm-cookie-banner p{margin:0;flex:1;min-width:230px;color:inherit}.tidmm-cookie-banner a{color:var(--tidmm-accent)}
.tidmm-cookie-actions{display:flex;gap:8px;flex-wrap:wrap}.tidmm-cookie-actions button{min-height:34px;padding:8px 12px;border-radius:9px;border:1px solid var(--tidmm-line);background:transparent;color:var(--tidmm-ink-2);font:600 12px var(--tidmm-body);cursor:pointer}.tidmm-cookie-actions button[data-choice="accept"]{background:var(--tidmm-primary);border-color:var(--tidmm-primary);color:#fff}body.dark .tidmm-cookie-actions button[data-choice="accept"]{color:#16161b}
.tidmm-legal-overlay{position:fixed;inset:0;z-index:10001;display:grid;place-items:center;padding:20px;background:rgba(8,10,16,.56)}
.tidmm-legal-dialog{width:min(620px,100%);max-height:min(760px,88vh);overflow:auto;border:1px solid var(--tidmm-line);border-radius:16px;background:var(--tidmm-surface);color:var(--tidmm-ink);box-shadow:0 24px 70px -20px rgba(0,0,0,.55)}
.tidmm-legal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 22px 0}.tidmm-legal-head h2{margin:0;font:600 20px/1.2 var(--tidmm-display)}.tidmm-legal-close{border:1px solid var(--tidmm-line);background:transparent;color:var(--tidmm-ink-2);border-radius:8px;width:32px;height:32px;cursor:pointer;font-size:18px}.tidmm-legal-body{padding:14px 22px 22px;color:var(--tidmm-ink-2);font:13.5px/1.65 var(--tidmm-body)}.tidmm-legal-body h3{margin:16px 0 5px;color:var(--tidmm-ink);font:600 14px var(--tidmm-display)}.tidmm-legal-body p{margin:0 0 10px}
.tidmm-skip{position:fixed;left:12px;top:8px;z-index:10002;transform:translateY(-160%);padding:8px 12px;border-radius:8px;background:var(--tidmm-primary);color:#fff;text-decoration:none;font:600 12px var(--tidmm-body)}.tidmm-skip:focus{transform:none}
body.dark .tidmm-legal-dialog,body.dark .tidmm-cookie-banner{color:var(--tidmm-ink)}
@media(max-width:680px){.tidmm-shell-topbar{min-height:58px;padding-inline:14px}.tidmm-shell-topbar .brand span{display:none}.tidmm-suite-cards{grid-template-columns:1fr}footer.foot.no-print{padding-inline:16px}}
@media print{.tidmm-shell-topbar,.tidmm-cookie-banner,.tidmm-skip,.no-print{display:none!important}}


/* Componente compartilhado de entrada: a mesma hierarquia visual em todos os módulos. */
.tidmm-entry{display:block}
.tidmm-entry .card{background:var(--tidmm-surface);border:1px solid var(--tidmm-line);border-radius:18px;box-shadow:var(--tidmm-shadow)}
.tidmm-entry .pad{padding:30px}
.tidmm-entry .hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(230px,.85fr);gap:30px;align-items:center}
.tidmm-entry .eyebrow{font:600 12px/1.3 var(--tidmm-display);letter-spacing:.14em;text-transform:uppercase;color:var(--tidmm-accent)}
.tidmm-entry .h-xl,.tidmm-entry h1{font:600 clamp(34px,5vw,46px)/1.05 var(--tidmm-display);letter-spacing:-.025em;margin:12px 0 0;color:var(--tidmm-ink)}
.tidmm-entry .lead{color:var(--tidmm-muted);font:400 16px/1.62 var(--tidmm-body);margin:12px 0 0;max-width:46ch}
.tidmm-entry .profile-pick{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-top:26px}
.tidmm-entry .pick{min-height:126px;text-align:left;border:1px solid var(--tidmm-line);background:var(--tidmm-panel);color:var(--tidmm-ink);border-radius:14px;padding:18px;cursor:pointer;transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease;display:flex;flex-direction:column;gap:4px;font-family:var(--tidmm-body)}
.tidmm-entry .pick:hover{border-color:var(--tidmm-primary-2);background:var(--tidmm-surface);transform:translateY(-2px);box-shadow:var(--tidmm-shadow)}
.tidmm-entry .pick:focus-visible{outline:none;box-shadow:0 0 0 3px var(--tidmm-accent-soft),0 0 0 1.5px var(--tidmm-accent)}
.tidmm-entry .pick .ic{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;margin-bottom:8px;flex:0 0 auto}
.tidmm-entry .pick .ic-svg{width:18px;height:18px}
.tidmm-entry .pick b{font:700 16px/1.2 var(--tidmm-display)}
.tidmm-entry .pick small{color:var(--tidmm-muted);font:400 12.5px/1.4 var(--tidmm-body)}
.tidmm-entry .meta{display:flex;gap:26px;flex-wrap:wrap;margin-top:26px}
.tidmm-entry .meta div b{display:block;font:700 22px/1.1 var(--tidmm-display);font-variant-numeric:tabular-nums;color:var(--tidmm-ink)}
.tidmm-entry .meta div span{font:400 12.5px/1.35 var(--tidmm-body);color:var(--tidmm-muted)}
.tidmm-entry .entry-panel{border:1px solid var(--tidmm-line);border-radius:18px;padding:18px;background:var(--tidmm-surface);box-shadow:var(--tidmm-shadow);max-width:320px;margin:0 auto;width:100%}
.tidmm-entry .entry-panel h2{font:600 18px/1.2 var(--tidmm-display);margin:0;color:var(--tidmm-ink)}
.tidmm-entry .entry-panel p{font:400 12.5px/1.55 var(--tidmm-body);color:var(--tidmm-muted);margin:6px 0 0}
.tidmm-entry .entry-method{margin:16px 0 0;max-width:520px;color:var(--tidmm-muted);font:400 12.5px/1.6 var(--tidmm-body)}
.tidmm-entry .entry-method b{color:var(--tidmm-ink-2)}
@media(max-width:720px){.tidmm-entry .hero-grid{grid-template-columns:1fr}.tidmm-entry .entry-panel{max-width:440px}}
@media(max-width:520px){.tidmm-entry .pad{padding:20px}.tidmm-entry .profile-pick{grid-template-columns:1fr}.tidmm-entry .h-xl,.tidmm-entry h1{font-size:34px}}


/* Navegação única da suíte: cinco módulos, com o atual explicitamente marcado. */
.tidmm-module-menu{position:relative;display:inline-block;z-index:120}
.tidmm-module-trigger{list-style:none;display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:8px 11px;border:1px solid var(--tidmm-line);border-radius:10px;background:var(--tidmm-surface);color:var(--tidmm-ink-2);font:600 12px var(--tidmm-body);cursor:pointer;user-select:none}
.tidmm-module-trigger::-webkit-details-marker{display:none}
.tidmm-module-trigger::after{content:'▾';font-size:10px;opacity:.7}
.tidmm-module-menu[open] .tidmm-module-trigger{border-color:var(--tidmm-accent);color:var(--tidmm-accent)}
.tidmm-module-list{position:absolute;right:0;top:calc(100% + 7px);width:250px;padding:7px;border:1px solid var(--tidmm-line);border-radius:13px;background:var(--tidmm-surface);box-shadow:0 18px 42px -18px rgba(0,0,0,.4)}
.tidmm-module-item{display:block;width:100%;padding:10px 11px;border-radius:9px;color:var(--tidmm-ink-2);font:500 13px/1.25 var(--tidmm-body);text-decoration:none;text-align:left}
.tidmm-module-item:hover{background:var(--tidmm-panel);color:var(--tidmm-accent)}
.tidmm-module-item[aria-current="page"]{background:var(--tidmm-accent-soft);color:var(--tidmm-accent);font-weight:700;cursor:default}
.tidmm-module-item small{display:block;margin-top:3px;color:var(--tidmm-muted);font-size:11px;font-weight:400}

/* O mesmo editor cadastral é usado pelos consoles DISC, Talent e Clima. */
.tidmm-person-manager{display:grid;gap:12px}
.tidmm-person-manager-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.tidmm-person-manager-toolbar input{flex:1;min-width:220px}
.tidmm-person-manager-table{width:100%;border-collapse:collapse;font:13px/1.35 var(--tidmm-body)}
.tidmm-person-manager-table th,.tidmm-person-manager-table td{padding:9px 8px;border-bottom:1px solid var(--tidmm-line);text-align:left;vertical-align:middle}
.tidmm-person-manager-table th{color:var(--tidmm-muted);font:600 11px var(--tidmm-display);text-transform:uppercase;letter-spacing:.04em}
.tidmm-person-manager-table .tidmm-person-action{text-align:right;white-space:nowrap}
.tidmm-person-manager-table tr[hidden]{display:none}
.tidmm-person-manager-edit{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.tidmm-person-manager-edit .full{grid-column:1/-1}
.tidmm-person-manager-edit .field{margin:0}
.tidmm-person-manager-edit .field input,.tidmm-person-manager-edit .field select,.tidmm-person-manager-edit .field textarea{width:100%}
.tidmm-person-photo{display:flex;gap:12px;align-items:center;margin-bottom:12px}
.tidmm-person-photo img,.tidmm-person-photo .placeholder{width:72px;height:88px;border-radius:9px;object-fit:cover;border:1px solid var(--tidmm-line);background:var(--tidmm-panel);display:grid;place-items:center;color:var(--tidmm-muted)}
@media(max-width:680px){.tidmm-module-list{right:auto;left:0}.tidmm-person-manager-edit{grid-template-columns:1fr}.tidmm-person-manager-edit .full{grid-column:auto}.tidmm-person-manager-table th:nth-child(2),.tidmm-person-manager-table td:nth-child(2){display:none}}
