/* Sistema de layout da casa (07/09/2026): página inteira com gutter, painéis, grades e sinais.
   Sem teto 84rem — o dono reverteu o workspace centralizado de 06/09. Fonte canônica:
   assets/human-ui.css, copiada para public/ por sync-assets. Catálogo e regras: docs/ui-layout.md.
   O produto escolhe o acento (--mm-accent*) e a composição; as primitivas mm-* são as mesmas. */
:root {
  --mm-space-1: .5rem; --mm-space-2: 1rem; --mm-space-3: 1.5rem; --mm-space-4: 2.5rem;
  --mm-radius: .25rem; --mm-gutter: clamp(1rem, 3vw, 2rem); --mm-max: 84rem; --mm-max-narrow: 60rem;
  --mm-control: 2.75rem; --mm-control-sm: 2.25rem;
  --mm-bg: #f3f5f8; --mm-surface: #fff; --mm-surface-2: #e9edf2; --mm-border: #d3d9e0; --mm-border-strong: #97a3b0;
  --mm-text: #172029; --mm-muted: #55616d;
  --mm-accent: #1f5ae8; --mm-accent-hover: #1747bd; --mm-accent-text: #1d4ed8; --mm-accent-text-rgb: 29, 78, 216;
  --mm-on-accent: #fff; --mm-accent-soft: #e6eefc;
  --mm-ok: #14663a; --mm-ok-bg: #e3f4e9; --mm-ok-border: #a7dcb9;
  --mm-warn: #8a5a00; --mm-warn-bg: #fff2cf; --mm-warn-border: #f0cf7a;
  --mm-bad: #b42318; --mm-bad-bg: #fde7e5; --mm-bad-border: #f4b2ac;
  --mm-info: #1d4ed8; --mm-info-bg: #e6eefc; --mm-info-border: #b6c9f5;
  --mm-neutral: #4b5563; --mm-neutral-bg: #eef0f3; --mm-neutral-border: #d1d5db;
  --mm-shadow-pop: 0 8px 24px rgb(15 23 42 / .12);
}
[data-bs-theme="dark"], [data-theme="dark"] {
  --mm-bg: #0f1318; --mm-surface: #161b22; --mm-surface-2: #1f262f; --mm-border: #2b333d; --mm-border-strong: #4d5866;
  --mm-text: #e6ebf0; --mm-muted: #a4b0bc;
  --mm-accent: #2f6fed; --mm-accent-hover: #4a83f5; --mm-accent-text: #8fb4ff; --mm-accent-text-rgb: 143, 180, 255;
  --mm-on-accent: #fff; --mm-accent-soft: #15243d;
  --mm-ok: #57d38f; --mm-ok-bg: #112a1d; --mm-ok-border: #1f5a39;
  --mm-warn: #f2c14e; --mm-warn-bg: #33270a; --mm-warn-border: #6b520f;
  --mm-bad: #ff8a80; --mm-bad-bg: #3a1616; --mm-bad-border: #7a2b2b;
  --mm-info: #8fb4ff; --mm-info-bg: #15243d; --mm-info-border: #2c4a80;
  --mm-neutral: #b6c0cb; --mm-neutral-bg: #1f262f; --mm-neutral-border: #3a444f;
  --mm-shadow-pop: 0 8px 24px rgb(0 0 0 / .5);
}

/* ── Bootstrap veste os tokens: cor, borda, raio e sinais passam pelas mesmas variáveis ── */
.mm-human {
  --bs-body-bg: var(--mm-bg); --bs-body-color: var(--mm-text); --bs-emphasis-color: var(--mm-text);
  --bs-secondary-color: var(--mm-muted); --bs-tertiary-color: var(--mm-muted); --bs-border-color: var(--mm-border);
  --bs-secondary-bg: var(--mm-surface-2); --bs-tertiary-bg: var(--mm-surface-2);
  --bs-link-color-rgb: var(--mm-accent-text-rgb); --bs-link-hover-color-rgb: var(--mm-accent-text-rgb);
  --bs-border-radius: var(--mm-radius); --bs-border-radius-sm: .125rem; --bs-border-radius-lg: var(--mm-radius);
  --bs-border-radius-xl: var(--mm-radius); --bs-border-radius-xxl: var(--mm-radius); --bs-border-radius-pill: var(--mm-radius);
  --bs-success-text-emphasis: var(--mm-ok); --bs-success-bg-subtle: var(--mm-ok-bg); --bs-success-border-subtle: var(--mm-ok-border);
  --bs-warning-text-emphasis: var(--mm-warn); --bs-warning-bg-subtle: var(--mm-warn-bg); --bs-warning-border-subtle: var(--mm-warn-border);
  --bs-danger-text-emphasis: var(--mm-bad); --bs-danger-bg-subtle: var(--mm-bad-bg); --bs-danger-border-subtle: var(--mm-bad-border);
  --bs-info-text-emphasis: var(--mm-info); --bs-info-bg-subtle: var(--mm-info-bg); --bs-info-border-subtle: var(--mm-info-border);
  --bs-primary-text-emphasis: var(--mm-accent-text); --bs-primary-bg-subtle: var(--mm-accent-soft); --bs-primary-border-subtle: var(--mm-info-border);
  --bs-secondary-text-emphasis: var(--mm-neutral); --bs-secondary-bg-subtle: var(--mm-neutral-bg); --bs-secondary-border-subtle: var(--mm-neutral-border);
  --bs-light-text-emphasis: var(--mm-neutral); --bs-light-bg-subtle: var(--mm-neutral-bg); --bs-light-border-subtle: var(--mm-neutral-border);
  margin: 0; min-height: 100vh; display: flex; flex-direction: column; background: var(--mm-bg); color: var(--mm-text);
  font-size: 1rem; line-height: 1.55;
}
.mm-human main { flex: 1 0 auto; min-width: 0; }
.mm-human main, .mm-human section, .mm-human .tab-content { min-width: 0; }
.mm-human h1, .mm-human h2, .mm-human h3 { text-wrap: balance; letter-spacing: -.01em; }
.mm-human :focus-visible { outline: 3px solid var(--mm-accent); outline-offset: 2px; }
.mm-human .btn { --bs-btn-border-radius: var(--mm-radius); min-height: var(--mm-control); display: inline-flex; align-items: center; justify-content: center; gap: .4rem; font-weight: 600; }
.mm-human .btn-sm { min-height: var(--mm-control-sm); font-size: .875rem; }
.mm-human .btn-lg { min-height: 3rem; font-size: 1.0625rem; }
.mm-human .btn.btn-primary { --bs-btn-bg: var(--mm-accent); --bs-btn-border-color: var(--mm-accent); --bs-btn-color: var(--mm-on-accent); --bs-btn-hover-bg: var(--mm-accent-hover); --bs-btn-hover-border-color: var(--mm-accent-hover); --bs-btn-hover-color: var(--mm-on-accent); --bs-btn-active-bg: var(--mm-accent-hover); --bs-btn-active-border-color: var(--mm-accent-hover); --bs-btn-active-color: var(--mm-on-accent); --bs-btn-disabled-bg: var(--mm-accent); --bs-btn-disabled-border-color: var(--mm-accent); --bs-btn-disabled-color: var(--mm-on-accent); }
.mm-human .btn.btn-outline-primary { --bs-btn-color: var(--mm-accent-text); --bs-btn-border-color: var(--mm-accent-text); --bs-btn-hover-bg: var(--mm-accent-soft); --bs-btn-hover-color: var(--mm-accent-text); --bs-btn-hover-border-color: var(--mm-accent-text); --bs-btn-active-bg: var(--mm-accent-soft); --bs-btn-active-color: var(--mm-accent-text); --bs-btn-active-border-color: var(--mm-accent-text); --bs-btn-disabled-color: var(--mm-accent-text); --bs-btn-disabled-border-color: var(--mm-accent-text); }
.mm-human .btn.btn-outline-secondary, .mm-human .btn.btn-secondary, .mm-human .btn.btn-outline-dark, .mm-human .btn.btn-light { --bs-btn-bg: var(--mm-surface); --bs-btn-color: var(--mm-text); --bs-btn-border-color: var(--mm-border-strong); --bs-btn-hover-bg: var(--mm-surface-2); --bs-btn-hover-color: var(--mm-text); --bs-btn-hover-border-color: var(--mm-border-strong); --bs-btn-active-bg: var(--mm-surface-2); --bs-btn-active-color: var(--mm-text); --bs-btn-active-border-color: var(--mm-border-strong); --bs-btn-disabled-color: var(--mm-muted); --bs-btn-disabled-bg: var(--mm-surface); --bs-btn-disabled-border-color: var(--mm-border); }
.mm-human .btn.btn-danger { --bs-btn-bg: var(--mm-bad); --bs-btn-border-color: var(--mm-bad); --bs-btn-color: #fff; --bs-btn-hover-bg: #8f1d15; --bs-btn-hover-border-color: #8f1d15; }
.mm-human .btn.btn-outline-danger { --bs-btn-color: var(--mm-bad); --bs-btn-border-color: var(--mm-bad-border); --bs-btn-hover-bg: var(--mm-bad-bg); --bs-btn-hover-color: var(--mm-bad); --bs-btn-hover-border-color: var(--mm-bad); }
.mm-human .btn.btn-outline-success { --bs-btn-color: var(--mm-ok); --bs-btn-border-color: var(--mm-ok-border); --bs-btn-hover-bg: var(--mm-ok-bg); --bs-btn-hover-color: var(--mm-ok); --bs-btn-hover-border-color: var(--mm-ok); }
.mm-human .btn.btn-link { --bs-btn-color: var(--mm-accent-text); --bs-btn-hover-color: var(--mm-accent-text); font-weight: 600; text-underline-offset: .2em; }
.mm-human .btn i[class^="bi-"], .mm-human .btn i[class*=" bi-"] { font-size: 1.05em; line-height: 1; }
.mm-human .btn-group > .btn { min-height: var(--mm-control-sm); }
.mm-human .form-control, .mm-human .form-select { min-height: var(--mm-control); background-color: var(--mm-surface); color: var(--mm-text); border-color: var(--mm-border-strong); border-radius: var(--mm-radius); }
.mm-human .form-control:focus, .mm-human .form-select:focus { border-color: var(--mm-accent); box-shadow: 0 0 0 3px var(--mm-accent-soft); }
.mm-human .form-control::placeholder { color: var(--mm-muted); opacity: .8; }
.mm-human .form-control-sm, .mm-human .form-select-sm, .mm-human .input-group-sm > .form-control { min-height: var(--mm-control-sm); }
.mm-human .input-group-text { background: var(--mm-surface-2); border-color: var(--mm-border-strong); color: var(--mm-muted); }
.mm-human .form-label { font-weight: 600; margin-bottom: .35rem; }
.mm-human .form-text { color: var(--mm-muted); }
.mm-human .form-check-input:checked { background-color: var(--mm-accent); border-color: var(--mm-accent); }
.mm-human .nav-tabs { --bs-nav-tabs-border-color: var(--mm-border); --bs-nav-tabs-link-active-bg: transparent; --bs-nav-tabs-link-active-color: var(--mm-text); --bs-nav-tabs-link-active-border-color: transparent transparent var(--mm-accent); --bs-nav-tabs-link-hover-border-color: transparent transparent var(--mm-border-strong); --bs-nav-link-color: var(--mm-muted); --bs-nav-link-hover-color: var(--mm-text); gap: .25rem; }
.mm-human .nav-tabs .nav-link { border-width: 0 0 2px; border-radius: 0; margin-bottom: -1px; padding: .6rem .85rem; font-weight: 600; display: inline-flex; align-items: center; gap: .4rem; }
.mm-human .badge { font-weight: 600; font-size: .8125rem; padding: .3em .55em; border-radius: var(--mm-radius); }
.mm-human .text-bg-success { color: var(--mm-ok) !important; background-color: var(--mm-ok-bg) !important; border: 1px solid var(--mm-ok-border); }
.mm-human .text-bg-warning { color: var(--mm-warn) !important; background-color: var(--mm-warn-bg) !important; border: 1px solid var(--mm-warn-border); }
.mm-human .text-bg-danger { color: var(--mm-bad) !important; background-color: var(--mm-bad-bg) !important; border: 1px solid var(--mm-bad-border); }
.mm-human .text-bg-info, .mm-human .text-bg-primary { color: var(--mm-info) !important; background-color: var(--mm-info-bg) !important; border: 1px solid var(--mm-info-border); }
.mm-human .text-bg-secondary, .mm-human .text-bg-light, .mm-human .text-bg-dark { color: var(--mm-neutral) !important; background-color: var(--mm-neutral-bg) !important; border: 1px solid var(--mm-neutral-border); }
.mm-human .alert { --bs-alert-border-radius: var(--mm-radius); }
.mm-human .list-group { --bs-list-group-bg: transparent; --bs-list-group-border-color: var(--mm-border); --bs-list-group-color: var(--mm-text); }
.mm-human .table { --bs-table-bg: transparent; --bs-table-border-color: var(--mm-border); --bs-table-color: var(--mm-text); }
.mm-human .modal-content, .mm-human .dropdown-menu, .mm-human .offcanvas { --bs-modal-bg: var(--mm-surface); --bs-dropdown-bg: var(--mm-surface); --bs-offcanvas-bg: var(--mm-surface); background-color: var(--mm-surface); border-color: var(--mm-border); }
.mm-human .modal-content { border-radius: var(--mm-radius); }
.mm-human .btn-close { filter: none; }
[data-bs-theme="dark"] .mm-human .btn-close { filter: invert(1) grayscale(100%) brightness(200%); }
.mm-human pre, .mm-human .mm-codigo { background: var(--mm-surface-2); border: 1px solid var(--mm-border); border-radius: var(--mm-radius); padding: .75rem 1rem; font-size: .875rem; overflow: auto; max-width: 100%; min-width: 0; }
.mm-human code { color: inherit; }

/* ── Estrutura: workspace, barra superior, herói ── */
.mm-workspace { width: 100%; max-width: none; margin-inline: auto; padding-inline: var(--mm-gutter); min-width: 0; }
.mm-narrow { max-width: var(--mm-max-narrow); }
.mm-topbar { position: sticky; top: 0; z-index: 1020; background: var(--mm-surface); border-bottom: 1px solid var(--mm-border); }
.mm-topbar > .mm-workspace { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem 1rem; min-height: 3.75rem; padding-block: .5rem; }
.mm-brand { display: inline-flex; align-items: center; gap: .5rem; font-weight: 700; font-size: 1.125rem; letter-spacing: -.01em; color: var(--mm-text); text-decoration: none; white-space: nowrap; }
.mm-brand:hover { color: var(--mm-text); }
.mm-brand .bi, .mm-brand svg { color: var(--mm-accent-text); font-size: 1.35rem; width: 1.5rem; height: 1.5rem; }
.mm-brand img { width: 1.5rem; height: 1.5rem; }
.mm-topnav { display: flex; flex-wrap: wrap; align-items: center; gap: .125rem; }
.mm-topnav a, .mm-topnav button { display: inline-flex; align-items: center; gap: .4rem; min-height: 2.5rem; padding: .35rem .7rem; border: 0; border-radius: var(--mm-radius); background: transparent; color: var(--mm-muted); font: inherit; font-weight: 600; font-size: .9375rem; text-decoration: none; cursor: pointer; }
.mm-topnav a:hover, .mm-topnav button:hover { background: var(--mm-surface-2); color: var(--mm-text); }
.mm-topnav [aria-current="page"], .mm-topnav .active { background: var(--mm-accent-soft); color: var(--mm-accent-text); }
.mm-tools { display: flex; align-items: center; gap: .5rem; margin-inline-start: auto; }
.mm-count { display: inline-flex; align-items: center; justify-content: center; min-width: 1.25rem; height: 1.25rem; padding: 0 .35rem; border-radius: 1rem; background: var(--mm-accent); color: var(--mm-on-accent); font-size: .75rem; font-weight: 700; line-height: 1; }
.mm-hero { display: grid; gap: 1.5rem; align-items: start; padding-block: var(--mm-space-4) var(--mm-space-3); }
.mm-hero h1 { margin: 0 0 .75rem; max-width: 24ch; font-size: clamp(1.75rem, 2.2vw + .6rem, 2.375rem); line-height: 1.15; letter-spacing: -.02em; font-weight: 700; }
.mm-lead { margin: 0 0 1.25rem; max-width: 60ch; font-size: 1.0625rem; color: var(--mm-muted); }
.mm-kicker { display: block; margin-bottom: .5rem; font-size: .8125rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--mm-accent-text); }
.mm-hero-aside { min-width: 0; }
.mm-intro { padding-block: var(--mm-space-4) var(--mm-space-3); }
.mm-intro h1 { max-width: 28ch; font-size: clamp(1.75rem, 2.5vw, 2.5rem); line-height: 1.15; font-weight: 700; }
.mm-intro p, .mm-prose { max-width: 72ch; }
.mm-task { margin-block: var(--mm-space-2); }

/* ── Painéis, seções e grades ── */
.mm-panel { background: var(--mm-surface); border: 1px solid var(--mm-border); border-radius: var(--mm-radius); padding: var(--mm-panel-pad, 1.25rem); min-width: 0; }
.mm-panel > :last-child { margin-bottom: 0; }
.mm-panel-tint { background: color-mix(in srgb, var(--mm-accent) 5%, var(--mm-surface)); border-color: color-mix(in srgb, var(--mm-accent) 35%, var(--mm-border)); }
.mm-panel-flush { padding: 0; }
.mm-panel-flush > .mm-panel-head, .mm-panel-flush > .mm-panel-body { padding: 1rem 1.25rem; }
.mm-panel-flush > .mm-panel-head { border-bottom: 1px solid var(--mm-border); margin-bottom: 0; }
.mm-panel-head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .5rem 1rem; margin-bottom: 1rem; }
.mm-panel-title { margin: 0; font-size: 1.0625rem; font-weight: 700; }
.mm-panel-flush .list-group-flush .list-group-item, .mm-panel-flush .mm-rows > * { padding: 1rem 1.25rem; }
.mm-rows { list-style: none; margin: 0; padding: 0; }
.mm-rows > * + * { border-top: 1px solid var(--mm-border); }
.mm-section { padding-block: var(--mm-space-3); }
.mm-bloco { padding-block: var(--mm-space-3); border-top: 1px solid var(--mm-border); }
.mm-section-head { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: .5rem 1.5rem; margin-bottom: 1.25rem; }
.mm-section-head h2, .mm-bloco > h2 { margin: 0; font-size: 1.375rem; font-weight: 700; }
.mm-section-head p { grid-column: 1 / -1; margin: 0; max-width: 72ch; color: var(--mm-muted); }
.mm-bloco > h2 + p { color: var(--mm-muted); max-width: 72ch; margin: .35rem 0 1.25rem; }
.mm-grid { display: grid; gap: 1rem; grid-template-columns: repeat(auto-fit, minmax(min(100%, 17rem), 1fr)); }
.mm-grid-2, .mm-grid-3, .mm-split, .mm-split-even, .mm-split-aside { display: grid; gap: 1rem; grid-template-columns: minmax(0, 1fr); align-items: start; }
.mm-split, .mm-split-even, .mm-split-aside { gap: 1.5rem; }
.mm-sticky { position: sticky; top: 4.5rem; }
.mm-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; }
.mm-actions-end { justify-content: flex-end; }
.mm-kpis { display: grid; gap: .75rem; grid-template-columns: repeat(auto-fit, minmax(min(100%, 8rem), 1fr)); margin: 0; }
.mm-kpi { min-width: 0; padding: .875rem 1rem; border: 1px solid var(--mm-border); border-radius: var(--mm-radius); background: var(--mm-surface); }
.mm-kpi-label, .mm-kpi dt { margin-bottom: .25rem; font-size: .8125rem; font-weight: 500; color: var(--mm-muted); }
.mm-kpi-value, .mm-kpi dd { margin: 0; font-size: 1.625rem; font-weight: 700; line-height: 1.1; letter-spacing: -.01em; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.mm-kpi-note, .mm-kpi small { display: block; margin-top: .3rem; font-size: .8125rem; color: var(--mm-muted); }
.mm-kpi-ok .mm-kpi-value, .mm-kpi-ok dd { color: var(--mm-ok); }
.mm-kpi-warn .mm-kpi-value, .mm-kpi-warn dd { color: var(--mm-warn); }
.mm-kpi-bad .mm-kpi-value, .mm-kpi-bad dd { color: var(--mm-bad); }
.mm-kpi-accent .mm-kpi-value, .mm-kpi-accent dd { color: var(--mm-accent-text); }
.mm-facts { display: grid; gap: .75rem 1.5rem; grid-template-columns: repeat(auto-fit, minmax(min(100%, 11rem), 1fr)); margin: 0; }
.mm-facts dt { font-size: .8125rem; font-weight: 500; color: var(--mm-muted); }
.mm-facts dd { margin: 0; font-weight: 600; overflow-wrap: anywhere; }
.mm-status { display: inline-flex; align-items: center; gap: .35rem; white-space: nowrap; padding: .15rem .55rem; border: 1px solid var(--mm-neutral-border); border-radius: var(--mm-radius); background: var(--mm-neutral-bg); color: var(--mm-neutral); font-size: .8125rem; font-weight: 600; line-height: 1.4; }
.mm-status-ok { color: var(--mm-ok); background: var(--mm-ok-bg); border-color: var(--mm-ok-border); }
.mm-status-warn { color: var(--mm-warn); background: var(--mm-warn-bg); border-color: var(--mm-warn-border); }
.mm-status-bad { color: var(--mm-bad); background: var(--mm-bad-bg); border-color: var(--mm-bad-border); }
.mm-status-info { color: var(--mm-info); background: var(--mm-info-bg); border-color: var(--mm-info-border); }
.mm-need { display: flex; flex-direction: column; gap: .5rem; height: 100%; padding: 1.25rem; border: 1px solid var(--mm-border); border-radius: var(--mm-radius); background: var(--mm-surface); color: var(--mm-text); text-decoration: none; }
.mm-need > .bi, .mm-need > svg { font-size: 1.5rem; width: 1.5rem; height: 1.5rem; color: var(--mm-accent-text); }
.mm-need h3 { margin: 0; font-size: 1.0625rem; font-weight: 700; }
.mm-need p { margin: 0; font-size: .9375rem; color: var(--mm-muted); }
.mm-need-cta { margin-top: auto; padding-top: .25rem; font-weight: 600; color: var(--mm-accent-text); }
a.mm-need:hover, button.mm-need:hover { border-color: var(--mm-accent-text); color: var(--mm-text); }
.mm-steps { counter-reset: passo; list-style: none; margin: 0; padding: 0; display: grid; gap: 1rem; }
.mm-steps > li { counter-increment: passo; display: grid; grid-template-columns: 2rem minmax(0, 1fr); gap: .75rem; align-items: start; }
.mm-steps > li::before { grid-column: 1; grid-row: 1 / span 2; content: counter(passo); display: grid; place-items: center; width: 2rem; height: 2rem; border-radius: 50%; background: var(--mm-accent-soft); color: var(--mm-accent-text); font-weight: 700; }
.mm-steps > li > * { grid-column: 2; }
.mm-steps strong { display: block; margin-bottom: .2rem; }
.mm-steps p { margin: 0; color: var(--mm-muted); }
.mm-chips { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; }
.mm-chip { display: inline-flex; align-items: center; gap: .35rem; min-height: 2rem; padding: .2rem .65rem; border: 1px solid var(--mm-border-strong); border-radius: var(--mm-radius); background: var(--mm-surface); color: var(--mm-text); font: inherit; font-size: .875rem; font-weight: 500; text-decoration: none; cursor: pointer; }
.mm-chip:hover { border-color: var(--mm-accent-text); color: var(--mm-accent-text); }
.mm-hero-main { min-width: 0; max-width: 60rem; }
.mm-hero:has(> .mm-hero-aside > [hidden]:only-child), .mm-hero:has(> .mm-hero-aside:empty) { grid-template-columns: minmax(0, 1fr); }
.mm-panels { display: grid; gap: 1rem; align-items: start; }
.mm-panels > * { margin: 0 !important; padding: 1.25rem !important; border: 1px solid var(--mm-border) !important; border-radius: var(--mm-radius); background: var(--mm-surface); min-width: 0; }
.mm-example { margin: 0; padding: 1rem 1.25rem; border: 1px solid var(--mm-border); border-left: 3px solid var(--mm-accent); border-radius: var(--mm-radius); background: var(--mm-surface); max-width: none; }
.mm-example > :last-child { margin-bottom: 0; }
.mm-nav { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem 1.25rem; }
.mm-nav a { font-weight: 600; text-underline-offset: .2em; }
.mm-faq-item { padding: .15rem 0; border-bottom: 1px solid var(--mm-border); }
.mm-faq-item summary { display: flex; gap: .75rem; align-items: baseline; padding: .7rem 0; cursor: pointer; list-style: none; font-weight: 600; }
.mm-faq-item summary::-webkit-details-marker { display: none; }
.mm-faq-item summary::before { content: "+"; flex: 0 0 1rem; color: var(--mm-accent-text); font-weight: 700; }
.mm-faq-item[open] summary::before { content: "–"; }
.mm-faq-item p { margin: 0 0 .85rem 1.75rem; max-width: 72ch; color: var(--mm-muted); }
.mm-precos table { margin: 0; }
.mm-precos td { padding-block: .75rem; vertical-align: middle; }
.mm-precos td:last-child { white-space: normal; min-width: 7rem; text-align: right; }
.mm-discovery { padding: 0; font-size: inherit; }
.mm-leitura h1 { font-size: 1.75rem; }
.mm-leitura p { margin: 0 0 1rem; }
.mm-leitura h2 { font-size: 1.25rem; margin-top: 1.75rem; }
.mm-leitura p, .mm-leitura li, .mm-leitura h2, .mm-leitura h3 { max-width: 72ch; }

/* ── Rodapé ── */
.mm-footer { margin-top: var(--mm-space-4); border-top: 1px solid var(--mm-border); background: var(--mm-surface); font-size: .875rem; color: var(--mm-muted); }
.mm-footer > .mm-workspace { padding-block: 2rem .5rem; }
.mm-footer-grid { display: grid; gap: 1.5rem 2rem; grid-template-columns: repeat(auto-fit, minmax(min(100%, 13rem), 1fr)); }
.mm-footer-grid h2 { margin: 0 0 .6rem; font-size: .8125rem; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: var(--mm-text); }
.mm-footer-grid ul { list-style: none; margin: 0; padding: 0; display: grid; gap: .4rem; }
.mm-footer-grid p { margin: 0 0 .5rem; max-width: 40ch; }
.mm-footer a, .mm-footer .btn-link { color: var(--mm-text); text-decoration: none; padding: 0; border: 0; font: inherit; font-weight: 500; vertical-align: baseline; }
.mm-footer a:hover, .mm-footer .btn-link:hover { text-decoration: underline; text-underline-offset: .2em; color: var(--mm-accent-text); }
.mm-footer .mm-nav, .mm-footer .mm-discovery { gap: .35rem 1rem; }
.mm-footer-grid .mm-nav { flex-direction: column; align-items: flex-start; gap: .4rem; }
.mm-footer-bottom { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .5rem 1.5rem; margin-top: 1.5rem; padding-top: 1rem; border-top: 1px solid var(--mm-border); }
.mm-footer details summary { cursor: pointer; }
.mm-footer > #mm-statusline { max-width: none; margin-inline: auto; padding: .25rem var(--mm-gutter) 1rem !important; font-size: .8125rem !important; }

/* ── Páginas de leitura (/developers, sobre, jurídico) ── */
.mm-reference { margin: 0; background: var(--mm-bg); color: var(--mm-text); font-family: system-ui, sans-serif; line-height: 1.55; }
.mm-reference .mm-workspace { max-width: var(--mm-max-narrow); }
.mm-reference-header { display: flex; justify-content: space-between; align-items: center; gap: 1rem; border-bottom: 1px solid var(--mm-border); padding-block: 1rem; }
.mm-reference a { color: var(--mm-accent-text); text-underline-offset: .2em; }
.mm-reference .mm-bloco { padding-block: 2rem; }
.mm-reference h2 { font-size: 1.4rem; }
.mm-reference h3 { font-size: 1.05rem; margin-top: 1.5rem; }
.mm-reference p, .mm-reference li { max-width: 72ch; }
.mm-reference pre { padding: 1rem; border: 1px solid var(--mm-border); background: var(--mm-surface); border-radius: var(--mm-radius); overflow: auto; font-size: .875rem; }
.mm-reference button, .mm-reference .btn { font: inherit; padding: .5rem .75rem; border: 1px solid var(--mm-border-strong); border-radius: var(--mm-radius); background: var(--mm-surface); color: inherit; cursor: pointer; }
.mm-reference .d-flex { display: flex; flex-wrap: wrap; gap: .75rem; }
.mm-reference footer { padding-block: 1.5rem; border-top: 1px solid var(--mm-border); }

@media (min-width: 768px) {
  .mm-grid-2, .mm-grid-3, .mm-split-even { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 992px) {
  .mm-hero { grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); gap: 2.5rem; }
  .mm-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .mm-split { grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); }
  .mm-split-aside { grid-template-columns: minmax(0, 17rem) minmax(0, 1fr); }
}
@media (max-width: 575.98px) {
  .mm-hero, .mm-intro { padding-top: 1.5rem; }
  .mm-panel { --mm-panel-pad: 1rem; }
  .mm-panel-flush > .mm-panel-head, .mm-panel-flush > .mm-panel-body, .mm-panel-flush .list-group-flush .list-group-item, .mm-panel-flush .mm-rows > * { padding-inline: 1rem; }
  .mm-kpi-value, .mm-kpi dd { font-size: 1.375rem; }
  .mm-topbar > .mm-workspace { min-height: 3.25rem; }
  .mm-tools .btn > span, .mm-topnav a > span, .mm-topnav button > span { display: none; }
  .mm-tools .btn { padding-inline: .6rem; }
  .mm-task { margin-block: 1rem; }
  .mm-human .mm-precos td:last-child { min-width: 5.5rem; }
}
