/* Agenda Munck — identidade GM (especificação, seção 10) */

@font-face { font-family: "Space Grotesk"; font-weight: 500; font-display: swap; src: url("../fonts/space-grotesk-latin-500-normal.woff2") format("woff2"); }
@font-face { font-family: "Space Grotesk"; font-weight: 700; font-display: swap; src: url("../fonts/space-grotesk-latin-700-normal.woff2") format("woff2"); }
@font-face { font-family: "IBM Plex Sans"; font-weight: 400; font-display: swap; src: url("../fonts/ibm-plex-sans-latin-400-normal.woff2") format("woff2"); }
@font-face { font-family: "IBM Plex Sans"; font-weight: 500; font-display: swap; src: url("../fonts/ibm-plex-sans-latin-500-normal.woff2") format("woff2"); }
@font-face { font-family: "IBM Plex Sans"; font-weight: 600; font-display: swap; src: url("../fonts/ibm-plex-sans-latin-600-normal.woff2") format("woff2"); }
@font-face { font-family: "IBM Plex Mono"; font-weight: 400; font-display: swap; src: url("../fonts/ibm-plex-mono-latin-400-normal.woff2") format("woff2"); }
@font-face { font-family: "IBM Plex Mono"; font-weight: 500; font-display: swap; src: url("../fonts/ibm-plex-mono-latin-500-normal.woff2") format("woff2"); }

:root {
  --navy: #1B2430;
  --laranja: #EE7D2B;
  --laranja-escuro: #C2621A;
  --azul: #2F4E8C;
  --fundo: #F3F1EC;
  --cartao: #FFFFFF;
  --texto: #1B2430;
  --texto-secundario: #4A5260;
  --borda: #E4E2DC;
  --bloqueio: #D9DDE3;
  --urgencia: #F2C48D;
  --vitrine-cartao: #25303F;
  --vitrine-borda: #2E3A4A;
  --perigo: #A8231B;
  --perigo-fundo: #FBE9E7;
  --sucesso: #1E6B3A;
  --sucesso-fundo: #E5F3EA;

  --fonte-titulo: "Space Grotesk", system-ui, sans-serif;
  --fonte-texto: "IBM Plex Sans", system-ui, sans-serif;
  --fonte-mono: "IBM Plex Mono", ui-monospace, monospace;

  --raio: 8px;
  --alvo: 44px;
  --sombra: 0 1px 2px rgba(27, 36, 48, .06);
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; font: 400 15px/1.5 var(--fonte-texto); color: var(--texto); background: var(--fundo); }
h1, h2, h3 { font-family: var(--fonte-titulo); font-weight: 700; line-height: 1.2; margin: 0; }
h1 { font-size: 1.6rem; }
h2 { font-size: 1.2rem; }
a { color: var(--azul); }
.mono { font-family: var(--fonte-mono); font-variant-numeric: tabular-nums; }
.texto-secundario { color: var(--texto-secundario); }
.visualmente-oculto { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

:focus-visible { outline: 3px solid var(--laranja); outline-offset: 2px; }
.pular { position: absolute; left: -999px; top: 8px; background: var(--laranja); color: var(--navy); padding: 8px 12px; z-index: 10; }
.pular:focus { left: 8px; }

.icone { width: 18px; height: 18px; flex: none; vertical-align: -3px; }
.icone-p { width: 14px; height: 14px; vertical-align: -2px; margin-right: 4px; }
.icone-grande { width: 40px; height: 40px; color: var(--texto-secundario); }
.icone-cartao { width: 28px; height: 28px; color: var(--laranja-escuro); }

/* Topbar */
.topbar { display: flex; align-items: center; gap: 24px; padding: 0 24px; min-height: 60px; background: var(--navy); color: #fff; flex-wrap: wrap; }
.marca { display: flex; flex-direction: column; color: #fff; text-decoration: none; padding: 8px 0; }
.marca-nome { font: 700 1.1rem var(--fonte-titulo); }
.marca-sub { font-size: .75rem; color: #C9CED6; }
.menu { display: flex; gap: 4px; flex: 1; flex-wrap: wrap; }
.menu a { display: inline-flex; align-items: center; gap: 8px; min-height: var(--alvo); padding: 0 14px; color: #E7EAEE; text-decoration: none; border-radius: var(--raio); font-weight: 500; }
.menu a:hover { background: rgba(255, 255, 255, .08); }
.menu a[aria-current="page"] { background: var(--laranja); color: var(--navy); }
.usuario { display: flex; align-items: center; gap: 8px; }
.usuario form { margin: 0; }
.usuario-nome { display: flex; flex-direction: column; text-align: right; font-weight: 500; }
.usuario-nome small { color: #C9CED6; font-weight: 400; }
.topbar .botao-icone { color: #fff; }
.topbar .botao-icone:hover { background: rgba(255, 255, 255, .1); }

.conteudo { max-width: 1200px; margin: 0 auto; padding: 24px; }

/* Cabeçalhos e trilha */
.cabecalho { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin: 0 0 12px; }
.trilha { font-size: .9rem; color: var(--texto-secundario); margin-bottom: 8px; }
.contador { font-size: .85rem; font-weight: 500; color: var(--texto-secundario); background: var(--borda); border-radius: 999px; padding: 2px 10px; vertical-align: 4px; }

/* Cartões */
.cartao { background: var(--cartao); border: 1px solid var(--borda); border-radius: var(--raio); box-shadow: var(--sombra); }
.grade-cartoes { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 16px; }
.cartao-link { display: flex; flex-direction: column; gap: 6px; padding: 20px; color: var(--texto); text-decoration: none; min-height: 140px; }
.cartao-link strong { font: 700 1.05rem var(--fonte-titulo); }
.cartao-link span { color: var(--texto-secundario); font-size: .9rem; }
.cartao-link:hover { border-color: var(--laranja); }
.vazio { padding: 40px 24px; text-align: center; color: var(--texto-secundario); }
.vazio h1 { color: var(--texto); margin: 8px 0 16px; font-size: 1.3rem; }
.vazio-codigo { font-size: 2.5rem; margin: 0; color: var(--laranja-escuro); }
.vazio-pequeno { padding: 16px; margin: 0; color: var(--texto-secundario); }

/* Botões */
.botao { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: var(--alvo); padding: 0 16px; border: 1px solid var(--borda); border-radius: var(--raio); background: var(--cartao); color: var(--texto); font: 500 .95rem var(--fonte-texto); text-decoration: none; cursor: pointer; }
.botao:hover { border-color: var(--texto-secundario); }
.botao-principal { background: var(--laranja); border-color: var(--laranja); color: var(--navy); font-weight: 600; }
.botao-principal:hover { background: #E06F1F; border-color: #E06F1F; }
.botao-perigo { color: var(--perigo); border-color: #E7B8B3; }
.botao-perigo:hover { background: var(--perigo-fundo); border-color: var(--perigo); }
.botao-pequeno { min-height: 36px; padding: 0 12px; font-size: .9rem; }
.botao-bloco { width: 100%; }
.botao-icone { display: inline-flex; align-items: center; justify-content: center; width: var(--alvo); height: var(--alvo); border: 0; border-radius: var(--raio); background: transparent; color: var(--texto-secundario); cursor: pointer; }
.botao-icone:hover { background: var(--fundo); color: var(--texto); }

/* Avisos e selos */
.aviso { padding: 12px 16px; border-radius: var(--raio); margin-bottom: 16px; border: 1px solid; }
.aviso-sucesso { background: var(--sucesso-fundo); border-color: #B5DCC2; color: var(--sucesso); }
.aviso-erro { background: var(--perigo-fundo); border-color: #E7B8B3; color: var(--perigo); }
.selo { display: inline-flex; align-items: center; padding: 2px 8px; border-radius: 999px; font-size: .8rem; font-weight: 600; white-space: nowrap; }
.selo-perigo { background: var(--perigo-fundo); color: var(--perigo); }
.selo-alerta { background: var(--urgencia); color: var(--navy); }

/* Tabelas */
.tabela-rolagem { overflow-x: auto; }
.tabela { width: 100%; border-collapse: collapse; }
.tabela th, .tabela td { padding: 10px 14px; text-align: left; border-bottom: 1px solid var(--borda); vertical-align: middle; }
.tabela th { font-size: .8rem; font-weight: 600; text-transform: uppercase; letter-spacing: .03em; color: var(--texto-secundario); background: #FAF9F6; }
.tabela tr:last-child td { border-bottom: 0; }
.tabela td a { font-weight: 500; }
.acoes { width: 1%; white-space: nowrap; text-align: right; }
.acoes form { display: inline; margin: 0; }

.filtros { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin: 16px 0; }
.filtros input[type="search"] { max-width: 320px; }
.paginacao { display: flex; align-items: center; justify-content: center; gap: 16px; margin-top: 16px; }

/* Formulários */
.formulario { padding: 24px; }
.formulario h1 { margin-bottom: 16px; }
.formulario > .campo { margin-bottom: 16px; }
.formulario > fieldset.campo, .formulario > div > .campo, .formulario > div > fieldset.campo { margin-bottom: 14px; }
.campos { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 16px 20px; }
.campo { display: flex; flex-direction: column; gap: 6px; }
.campo-largo { grid-column: 1 / -1; }
.campo > label { font-weight: 500; }
.obrigatorio { color: var(--laranja-escuro); }
input[type="text"], input[type="email"], input[type="tel"], input[type="password"], input[type="date"], input[type="time"], input[type="search"], input:not([type]), select, textarea {
  width: 100%; min-height: var(--alvo); padding: 8px 12px; border: 1px solid #CFCCC4; border-radius: var(--raio); background: #fff; color: var(--texto); font: inherit;
}
textarea { min-height: 88px; resize: vertical; }
input[type="file"] { min-height: var(--alvo); font: inherit; }
.campo-erro input, .campo-erro select, .campo-erro textarea { border-color: var(--perigo); }
.ajuda { color: var(--texto-secundario); font-size: .85rem; }
.erro { color: var(--perigo); font-weight: 500; font-size: .85rem; }
fieldset { border: 0; margin: 0; padding: 0; min-width: 0; }
legend { font-weight: 500; padding: 0; margin-bottom: 6px; }
.grupo { margin-bottom: 24px; }
.grupo > legend { font: 700 1.05rem var(--fonte-titulo); margin-bottom: 12px; }
.opcoes { display: flex; flex-wrap: wrap; gap: 8px 20px; }
.opcao { display: inline-flex; align-items: center; gap: 8px; min-height: var(--alvo); cursor: pointer; }
.opcao input { width: 20px; height: 20px; accent-color: var(--laranja-escuro); }
.arquivo-atual { display: flex; align-items: center; gap: 16px; margin: 0; }
.botoes { display: flex; gap: 12px; margin-top: 24px; flex-wrap: wrap; }
.excluir { margin: 16px 0 0; display: flex; justify-content: flex-end; }

.secao-filho { margin-top: 32px; }
.secao-filho .cabecalho { margin-bottom: 4px; }
.secao-filho > p { margin: 0 0 12px; }

/* Utilidades */
.texto-perigo { color: var(--perigo); }
.icone-direita { transform: rotate(180deg); }
.rotulo { font-weight: 500; }
.resposta-nao-sei { display: inline-block; padding: 0 8px; border: 1px dashed var(--texto-secundario); border-radius: 999px; font-size: .85rem; }
.aviso-leve { margin: 0; padding: 10px 14px; background: #FAF9F6; border-left: 3px solid var(--laranja); color: var(--texto-secundario); }
.aviso-urgencia { display: block; margin: 12px 0 0; padding: 10px 14px; background: var(--urgencia); color: var(--navy); border-radius: var(--raio); }
.aviso-urgencia[hidden] { display: none; }
.duas-colunas { display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 0 24px; }
.conteudo-largo { max-width: 1680px; }
.contador-menu { min-width: 22px; padding: 0 6px; border-radius: 999px; background: var(--urgencia); color: var(--navy); font-size: .8rem; text-align: center; line-height: 22px; }
.menu a[aria-current="page"] .contador-menu { background: var(--navy); color: #fff; }

/* Selos de status e marcações */
.selo-status { border: 1px solid transparent; }
.selo-solicitada, .selo-expirada, .selo-cancelada { background: #ECEAE4; color: var(--texto-secundario); }
.selo-prereserva { background: #fff; border: 1px dashed var(--laranja-escuro); color: #8A4512; }
.selo-confirmada { background: var(--sucesso-fundo); color: var(--sucesso); }
.selo-em_execucao { background: #E8EEF9; color: var(--azul); }
.selo-concluida { background: var(--navy); color: #fff; }
.selo-fechada { background: var(--texto-secundario); color: #fff; }
.selo-recusada { background: var(--perigo-fundo); color: var(--perigo); }
.selo-reagendada { background: var(--urgencia); color: var(--navy); }
.selo-urgencia { background: var(--urgencia); color: var(--navy); }
.selo-avaliacao { background: #E8EEF9; color: var(--azul); border: 1px solid #B9C7E4; }
.selo-sugerido { background: var(--laranja); color: var(--navy); }
.selo-hoje { background: var(--laranja); color: var(--navy); font-size: .7rem; padding: 0 6px; }
.selo-origem-externa { background: #FDE3CF; color: #8A4512; }
.selo-origem-interna { background: #E8EEF9; color: var(--azul); }

/* Painel de programação */
.cabecalho-painel { align-items: flex-end; }
.cabecalho-painel .resumo { margin: 4px 0 0; }
.barra-acoes { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.barra-acoes select { width: auto; min-width: 170px; }
.barra-acoes form { margin: 0; }
.navegacao-semana { display: flex; gap: 4px; }

.indicadores-rapidos { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin: 8px 0 16px; }
.indicador { display: flex; flex-direction: column; gap: 2px; padding: 12px 16px; background: var(--cartao); border: 1px solid var(--borda); border-radius: var(--raio); }
.indicador-rotulo { font-size: .8rem; font-weight: 600; text-transform: uppercase; letter-spacing: .03em; color: var(--texto-secundario); }
.indicador-valor { font-size: 1.5rem; font-weight: 500; }
.indicador-detalhe { font-size: .85rem; color: var(--texto-secundario); }

.painel { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 20px; align-items: start; }

.grade { border-collapse: separate; border-spacing: 0; width: 100%; min-width: 900px; table-layout: fixed; }
.grade th, .grade td { border-bottom: 1px solid var(--borda); border-right: 1px solid var(--borda); padding: 4px; vertical-align: top; }
.grade thead th { background: #FAF9F6; font-weight: 600; text-align: center; }
.grade-dia { font-family: var(--fonte-titulo); font-size: .95rem; padding: 8px 4px !important; }
.grade-turno { font-size: .75rem; font-weight: 500 !important; color: var(--texto-secundario); text-transform: uppercase; letter-spacing: .03em; }
.grade-munck { width: 150px; text-align: left !important; background: #FAF9F6; }
.grade tbody .grade-munck { display: table-cell; padding: 10px; }
.grade tbody .grade-munck a { display: block; font: 700 1rem var(--fonte-titulo); color: var(--texto); text-decoration: none; }
.grade tbody .grade-munck a:hover { text-decoration: underline; }
.grade tbody .grade-munck span { display: block; font-size: .8rem; font-weight: 400; color: var(--texto-secundario); }
.grade .grade-hoje { background-color: #FFF8F1; }
.grade thead .grade-hoje { box-shadow: inset 0 3px 0 var(--laranja); }
.celula { height: 92px; }

.bloco { display: flex; flex-direction: column; gap: 1px; height: 100%; min-height: 82px; padding: 6px 8px; border-radius: 6px; font-size: .78rem; line-height: 1.3; text-decoration: none; overflow: hidden; }
.bloco > span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.bloco-codigo { font-weight: 500; font-size: .75rem; }
.bloco-quem { font-weight: 600; font-size: .82rem; }
.bloco-compacto { padding: 5px 6px; }
.bloco-compacto > .bloco-quem { white-space: normal; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow-wrap: anywhere; hyphens: auto; }
.bloco-tipo { opacity: .9; }
.bloco-selos { display: flex; flex-wrap: wrap; gap: 3px; margin-top: 3px; white-space: normal !important; }
.bloco-selos .selo { font-size: .68rem; padding: 0 6px; }
a.bloco:hover, a.bloco:focus-visible { filter: brightness(.96); box-shadow: 0 0 0 2px var(--navy); }
.bloco-externo { background: var(--laranja); color: var(--navy); }
.bloco-interno { background: var(--azul); color: #fff; }
.bloco-pre { background: #fff; color: var(--navy); border: 2px dashed var(--laranja-escuro); }
.bloco-bloqueio { background: var(--bloqueio); color: var(--navy); justify-content: center; font-weight: 500; background-image: repeating-linear-gradient(135deg, transparent 0 8px, rgba(27, 36, 48, .06) 8px 16px); }
.bloco-bloqueio span { white-space: normal !important; }
.celula-livre { display: flex; align-items: center; justify-content: center; height: 100%; min-height: 82px; border-radius: 6px; color: transparent; text-decoration: none; font-size: .78rem; }
.celula-livre:hover, .celula-livre:focus-visible { color: var(--texto-secundario); background: var(--fundo); outline-offset: -2px; }
.celula-livre:hover span::before, .celula-livre:focus-visible span::before { content: "+ "; }
.celula-fechada { display: flex; align-items: center; justify-content: center; min-height: 82px; color: #B4B1A8; }

.legenda { display: flex; flex-wrap: wrap; gap: 8px 20px; list-style: none; margin: 12px 0 0; padding: 0; font-size: .85rem; color: var(--texto-secundario); }
.legenda li { display: inline-flex; align-items: center; gap: 8px; }
.amostra { display: inline-block; width: 28px; height: 16px; border-radius: 4px; min-height: 0; padding: 0; }

.painel-lateral { position: sticky; top: 16px; max-height: calc(100vh - 32px); overflow-y: auto; padding: 16px; background: var(--cartao); border: 1px solid var(--borda); border-radius: var(--raio); }
.painel-lateral h2 { margin-bottom: 8px; }
.pendencias-grupo { font: 600 .8rem var(--fonte-texto); text-transform: uppercase; letter-spacing: .04em; color: var(--texto-secundario); margin: 16px 0 8px; }
.pendencias { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.pendencia { display: flex; flex-direction: column; gap: 2px; padding: 10px 12px; border: 1px solid var(--borda); border-radius: var(--raio); font-size: .88rem; }
.pendencia-urgente { border-color: #E5A964; border-left: 4px solid #E5A964; background: #FFFBF5; }
.pendencia-topo { display: flex; justify-content: space-between; align-items: baseline; gap: 8px; }
.pendencia-topo a { font-weight: 500; white-space: nowrap; }
.pendencia-topo .pendencia-prazo { text-align: right; }
.pendencia-prazo { font-size: .82rem; color: #8A4512; font-weight: 500; }
.pendencia-quem { font-weight: 600; }
.pendencia-quando { color: var(--texto-secundario); font-size: .82rem; }
.pendencia-acoes { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; margin-top: 6px; }
.pendencia-acoes .botao-pequeno { min-height: 36px; padding: 0 6px; font-size: .82rem; }
.alertas { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; font-size: .88rem; }
.alertas li { display: flex; gap: 6px; align-items: flex-start; }
.alertas .icone { color: #B45A12; margin-top: 3px; }
.alertas-cartao { padding: 16px; margin-bottom: 16px; }
.alertas-cartao h2 { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; font-size: 1rem; }

/* Diálogo do detalhe */
.dialogo-detalhe { width: min(720px, 100vw); max-width: 100vw; height: 100vh; max-height: 100vh; margin: 0 0 0 auto; padding: 0; border: 0; border-radius: 0; background: var(--fundo); color: var(--texto); box-shadow: -8px 0 32px rgba(27, 36, 48, .2); }
.dialogo-detalhe::backdrop { background: rgba(27, 36, 48, .45); }
.dialogo-conteudo { padding: 24px; }
.dialogo-fechar { position: absolute; top: 12px; right: 12px; }

/* Detalhe da solicitação */
.detalhe { position: relative; }
.detalhe-cabecalho { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin: 0 40px 16px 0; }
.detalhe-cabecalho h1 { font-family: var(--fonte-mono); font-weight: 500; font-size: 1.5rem; }
.detalhe-selos { display: flex; gap: 6px; flex-wrap: wrap; }
.detalhe-resumo { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 12px 20px; margin: 0 0 16px; padding: 16px; background: var(--cartao); border: 1px solid var(--borda); border-radius: var(--raio); }
.detalhe-resumo dt, .detalhe-lista dt { font-size: .78rem; font-weight: 600; text-transform: uppercase; letter-spacing: .03em; color: var(--texto-secundario); }
.detalhe-resumo dd, .detalhe-lista dd { margin: 2px 0 0; }
.detalhe-largo { grid-column: 1 / -1; }
.detalhe-secao { margin-top: 20px; padding: 16px; background: var(--cartao); border: 1px solid var(--borda); border-radius: var(--raio); }
.detalhe-secao h2 { font-size: 1.05rem; margin-bottom: 12px; }
.detalhe-lista { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 12px 20px; margin: 0; }
.detalhe-compacto { grid-template-columns: 1fr; gap: 8px; margin: 12px 0; }
.texto-livre { white-space: normal; }
.campo-copiar { font-size: .8rem; }
.campo-copiar.copiado { border-color: var(--sucesso); background: var(--sucesso-fundo); }
.fotos { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; margin: 16px 0 0; padding: 0; }
.fotos img { display: block; width: 120px; height: 90px; object-fit: cover; border-radius: 6px; border: 1px solid var(--borda); }
.historico { list-style: none; margin: 0; padding: 0; }
.historico li { display: grid; grid-template-columns: 130px 1fr auto; gap: 2px 12px; padding: 8px 0; border-bottom: 1px solid var(--borda); font-size: .9rem; }
.historico li:last-child { border-bottom: 0; }
.historico-data { color: var(--texto-secundario); font-size: .82rem; }
.historico-motivo { grid-column: 2 / -1; color: var(--texto-secundario); }

.acoes-detalhe { display: flex; flex-direction: column; gap: 8px; }
.acao { border: 1px solid var(--borda); border-radius: var(--raio); }
.acao > summary { display: flex; align-items: center; min-height: var(--alvo); padding: 0 14px; font-weight: 600; cursor: pointer; }
.acao[open] > summary { border-bottom: 1px solid var(--borda); }
.acao > form { display: flex; flex-direction: column; gap: 12px; padding: 14px; }
.acao > form > .botao { align-self: flex-start; }
.opcoes-munck { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
.opcao-munck { display: flex; gap: 10px; align-items: flex-start; padding: 10px 12px; border: 1px solid var(--borda); border-radius: var(--raio); cursor: pointer; }
.opcao-munck:has(input:checked) { border-color: var(--laranja-escuro); box-shadow: inset 0 0 0 1px var(--laranja-escuro); background: #FFF8F1; }
.opcao-munck input { width: 20px; height: 20px; margin-top: 2px; accent-color: var(--laranja-escuro); }
.opcao-munck-texto { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; }
.opcao-situacao { flex-basis: 100%; font-size: .88rem; color: var(--texto-secundario); }
.situacao-prereserva { color: #8A4512; }
.opcao-indisponivel { opacity: .6; cursor: not-allowed; background: #FAF9F6; }
[data-motivo-passar-frente][hidden] { display: none; }

/* Formulário de solicitação */
.formulario-solicitacao { display: flex; flex-direction: column; gap: 16px; }
.formulario-solicitacao h2 { margin-bottom: 12px; }
.formulario-solicitacao .botoes { margin-top: 0; }
.chips { display: flex; flex-wrap: wrap; gap: 8px; }
.chip { position: relative; display: inline-flex; }
.chip input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.chip span { display: inline-flex; align-items: center; gap: 6px; min-height: var(--alvo); padding: 0 16px; border: 1px solid #CFCCC4; border-radius: 999px; background: #fff; cursor: pointer; font-weight: 500; }
.chip input:checked + span { background: var(--navy); border-color: var(--navy); color: #fff; }
.chip input:focus-visible + span { outline: 3px solid var(--laranja); outline-offset: 2px; }
.chip-nao-sei span { border-style: dashed; border-color: var(--texto-secundario); }
.chip-nao-sei input:checked + span { background: #4A5260; border-color: #4A5260; border-style: dashed; }
.chip-alinhado { align-self: flex-end; }
.medidas { display: flex; flex-wrap: wrap; gap: 12px 16px; align-items: flex-start; }
.medidas .campo { width: 160px; }
[data-mostrar-origem][hidden], [data-mostrar-cliente][hidden] { display: none; }
.campos-compactos { grid-template-columns: repeat(auto-fill, minmax(200px, 260px)); margin-top: 16px; }
fieldset.campo[aria-invalid="true"] .chip span { border-color: var(--perigo); }

.seletor-data p { margin-top: 0; }
.dias-grade { display: grid; grid-template-columns: repeat(auto-fill, minmax(92px, 1fr)); gap: 6px; }
.dia, .periodo { display: flex; flex-direction: column; align-items: flex-start; gap: 2px; min-height: 56px; padding: 8px 10px; border: 1px solid #CFCCC4; border-radius: var(--raio); background: #fff; color: var(--texto); font: inherit; text-align: left; cursor: pointer; }
.dia-rotulo, .periodo-rotulo { font-weight: 600; font-size: .9rem; }
.dia-status, .periodo-status { font-size: .78rem; color: var(--texto-secundario); }
.dia-livre .dia-status, .periodo-livre .periodo-status { color: var(--sucesso); }
.dia-poucas .dia-status, .dia-so_manha .dia-status, .dia-so_tarde .dia-status, .periodo-poucas .periodo-status { color: #8A4512; }
.dia:disabled, .periodo:disabled { background: #F1EFEA; color: #8C8A84; cursor: not-allowed; border-style: dashed; }
.dia:disabled .dia-status, .periodo:disabled .periodo-status { color: #8C8A84; }
.dia[aria-pressed="true"], .periodo[aria-pressed="true"] { background: var(--navy); border-color: var(--navy); color: #fff; }
.dia[aria-pressed="true"] .dia-status, .periodo[aria-pressed="true"] .periodo-status { color: #D7DBE1; }
.periodos-grade { display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 6px; margin-top: 12px; }

/* Listas */
.filtros-grade { display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 12px 16px; padding: 16px; margin-bottom: 16px; align-items: end; }
.filtros-botoes { display: flex; gap: 8px; }
.lista-cartoes { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 12px; }
.cartao-solicitacao { display: flex; flex-direction: column; gap: 4px; padding: 16px; color: var(--texto); text-decoration: none; }
.cartao-solicitacao:hover { border-color: var(--laranja); }
.cartao-solicitacao-topo { display: flex; justify-content: space-between; align-items: center; }

/* Frota */
.grade-frota { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 16px; }
.cartao-equipamento { display: flex; flex-direction: column; padding: 16px; }
.cartao-equipamento header { display: flex; justify-content: space-between; align-items: center; }
.cartao-equipamento h2 a { color: var(--texto); text-decoration: none; }
.cartao-equipamento p { margin: 2px 0 0; }
.cartao-equipamento .alertas { margin-bottom: 12px; }
.cartao-equipamento .alertas li, .alertas-cartao .alertas li { display: block; }
.cartao-equipamento > .botao { align-self: flex-start; margin-top: auto; }

@media (max-width: 1200px) {
  .painel { grid-template-columns: 1fr; }
  .painel-lateral { position: static; max-height: none; }
  .indicadores-rapidos { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Indicadores */
.filtros-indicadores { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 12px 16px; padding: 16px; margin-bottom: 16px; }
.filtros-indicadores .campo { width: 170px; }
.atalhos { display: flex; flex-wrap: wrap; gap: 6px; margin-left: auto; }
.atalho-ativo { border-color: var(--navy); box-shadow: inset 0 0 0 1px var(--navy); }
.indicadores-topo { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.indicadores-topo .indicador-valor { font-family: var(--fonte-texto); font-weight: 600; font-variant-numeric: normal; }
.grade-indicadores { display: grid; grid-template-columns: repeat(auto-fit, minmax(420px, 1fr)); gap: 16px; }
.bloco-indicador { padding: 18px 20px; }
.bloco-indicador header { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.bloco-indicador > p { margin: 4px 0 14px; font-size: .9rem; }
.bloco-largo { grid-column: 1 / -1; }
.barras { display: flex; flex-direction: column; gap: 6px; }
.barra-linha { display: grid; grid-template-columns: 96px 1fr; align-items: center; gap: 12px; min-height: 32px; border-radius: 6px; padding: 0 4px; }
.barra-linha:hover, .barra-linha:focus-visible { background: var(--fundo); }
.barra-rotulo { font-size: .9rem; color: var(--texto); }
.barra-trilho { display: flex; align-items: center; gap: 8px; min-width: 0; }
.barra { display: block; height: 16px; min-width: 2px; border-radius: 0 4px 4px 0; }
.barra-valor { font-size: .85rem; color: var(--texto-secundario); white-space: nowrap; }
.cor-serie { background: var(--azul); }
.cor-parado { background: var(--texto-secundario); }
.cor-externo { background: var(--laranja); }
.cor-interno { background: var(--azul); }
.composicao { display: flex; gap: 2px; height: 24px; margin: 8px 0 12px; }
.composicao-parte { display: block; min-width: 4px; }
.composicao-parte:first-child { border-radius: 4px 0 0 4px; }
.composicao-parte:last-child { border-radius: 0 4px 4px 0; }
.composicao-parte:only-child { border-radius: 4px; }
.legenda-indicador { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px 20px; font-size: .9rem; }
.legenda-indicador li { display: inline-flex; align-items: center; gap: 8px; }
.amostra-cor { display: inline-block; width: 12px; height: 12px; border-radius: 3px; }
.ver-tabela { margin-top: 12px; }
.ver-tabela summary { cursor: pointer; font-size: .9rem; color: var(--azul); min-height: 32px; display: flex; align-items: center; }
.tabela .numero, .tabela td.numero { text-align: right; }
.tabela tfoot th, .tabela tfoot td { border-top: 1px solid var(--borda); border-bottom: 0; }
.tabela tfoot th { background: none; text-transform: none; letter-spacing: 0; font-size: .95rem; color: var(--texto); }
.cor-parado + .barra-valor { font-family: var(--fonte-texto); }
.dica-flutuante { position: fixed; z-index: 20; max-width: 280px; padding: 6px 10px; border-radius: 6px; background: var(--navy); color: #fff; font-size: .82rem; pointer-events: none; box-shadow: 0 4px 12px rgba(27, 36, 48, .2); }
.avisos-whatsapp { display: flex; flex-wrap: wrap; gap: 8px; }
.botao-whatsapp-claro { border-color: #9FD6B6; color: #155E3A; background: #EAF7EF; }
.botao-whatsapp-claro:hover { border-color: #1F7A4D; }
.pendencia > .botao-whatsapp-claro { margin-top: 6px; align-self: flex-start; }
@media (max-width: 1200px) { .indicadores-topo { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 720px) { .grade-indicadores { grid-template-columns: 1fr; } .atalhos { margin-left: 0; } .indicadores-topo { grid-template-columns: 1fr; } }

/* Operador (mobile) */
.operador { max-width: 640px; margin: 0 auto; }
.operador h1 { margin-bottom: 8px; }
.operador-grupo { font: 600 .8rem var(--fonte-texto); text-transform: uppercase; letter-spacing: .04em; color: var(--texto-secundario); margin: 20px 0 8px; }
.operador-servicos { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.operador-servico { display: flex; flex-direction: column; gap: 4px; padding: 16px; color: var(--texto); text-decoration: none; }
.operador-servico .botao { margin-top: 10px; pointer-events: none; }
.operador-andamento { border-left: 4px solid var(--azul); }
.operador-servico-topo { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.operador-quem { font: 600 1.05rem var(--fonte-titulo); }
.operador-endereco { display: flex; gap: 6px; align-items: flex-start; color: var(--texto-secundario); font-size: .9rem; }
.botao-grande { min-height: 56px; font-size: 1.05rem; margin: 8px 0 16px; }
.checklist { display: flex; flex-direction: column; gap: 14px; margin-top: 12px; }
.checklist .formulario h2 { font-size: 1.05rem; margin-bottom: 12px; }
.campos-leituras { grid-template-columns: 1fr 1fr; }
.itens-checklist { list-style: none; margin: 0 0 16px; padding: 0; }
.itens-checklist li { padding: 10px 0; border-bottom: 1px solid var(--borda); }
.itens-checklist legend { font-weight: 600; margin-bottom: 8px; }
.sim-nao { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.sim-nao .chip span { width: 100%; justify-content: center; min-height: 48px; }
.sim-nao .chip input:checked + span { background: var(--sucesso); border-color: var(--sucesso); color: #fff; }
.sim-nao .chip-nao input:checked + span { background: var(--perigo); border-color: var(--perigo); color: #fff; }
.assinatura canvas { display: block; width: 100%; height: 180px; border: 2px dashed #B9B6AE; border-radius: var(--raio); background: #fff; touch-action: none; cursor: crosshair; }
.assinatura.campo-faltando canvas { border-color: var(--perigo); }
.assinatura-acoes { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.checklists { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 12px 24px; margin-top: 16px; }
.detalhe-secao h3 { font: 600 .85rem var(--fonte-texto); text-transform: uppercase; letter-spacing: .03em; color: var(--texto-secundario); margin: 16px 0 6px; }
.checklist-respostas { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 4px; }
.resposta-sim .icone { color: var(--sucesso); }
.resposta-nao { color: var(--perigo); font-weight: 600; }
.ocorrencias { margin: 0; padding: 10px 14px; background: #FAF9F6; border-left: 3px solid var(--laranja); }
.assinatura-registrada { margin: 0; display: inline-flex; flex-direction: column; gap: 4px; }
.assinatura-registrada img { max-width: 320px; width: 100%; border: 1px solid var(--borda); border-radius: 6px; background: #fff; }
.foto-legenda { display: block; font-size: .75rem; color: var(--texto-secundario); margin-top: 2px; }
.form-fechamento { display: flex; flex-direction: column; gap: 12px; }
.form-fechamento .campos-compactos { margin-top: 0; }
.form-fechamento > .botao { align-self: flex-start; }
.pendencia > .botao-pequeno { margin-top: 6px; align-self: flex-start; }

/* Vitrine pública (mobile first, fundo navy, acento laranja) */
html:not(.js) .so-js { display: none !important; }
.js .sem-js { display: none !important; }
.vitrine { background: var(--navy); color: #F3F4F6; min-height: 100vh; display: flex; flex-direction: column; }
.vitrine a { color: #F7B57E; }
.vitrine-topo { padding: 16px; border-bottom: 1px solid var(--vitrine-borda); }
.vitrine-topo .marca { padding: 0; }
.vitrine-conteudo { width: 100%; max-width: 640px; margin: 0 auto; padding: 16px 16px 40px; flex: 1; }
.vitrine-rodape { display: flex; justify-content: space-between; gap: 16px; padding: 16px; border-top: 1px solid var(--vitrine-borda); color: #9AA3B0; font-size: .85rem; }
.vitrine-rodape a { color: #C9CED6; }
.vitrine h1 { font-size: 1.5rem; margin: 8px 0 12px; }
.vitrine h2 { font-size: 1.05rem; margin-bottom: 12px; }
.vitrine .aviso-erro { background: #3A2326; border-color: #7A3A3A; color: #FFD5D0; }
.vitrine .aviso-sucesso { background: #1F3A2B; border-color: #2F6B49; color: #CFF0DC; }
.vitrine .erro { color: #FFB4A9; }
.vitrine .ajuda, .vitrine-apoio, .vitrine .opcional { color: #C9CED6; }
.vitrine-apoio { margin: 0 0 16px; }
.vitrine .campo { margin-bottom: 20px; }
.vitrine .campo > label, .vitrine legend { font-weight: 600; color: #fff; }
.vitrine .ajuda { margin: -2px 0 8px; }
.vitrine input[type="text"], .vitrine input[type="email"], .vitrine input[type="tel"], .vitrine input[type="date"], .vitrine select, .vitrine textarea {
  background: var(--vitrine-cartao); border-color: #4A5A70; color: #fff; font-size: 16px;
}
.vitrine input::placeholder { color: #8892A0; }
.vitrine input[type="file"] { color: #C9CED6; }
.vitrine .campo-erro input, .vitrine [aria-invalid="true"] { border-color: #FF8A7A; }
.vitrine .chip span { background: var(--vitrine-cartao); border-color: #4A5A70; color: #fff; }
.vitrine .chip input:checked + span { background: var(--laranja); border-color: var(--laranja); color: var(--navy); }
.vitrine .chip-nao-sei span { border-style: dashed; border-color: #9AA3B0; }
.vitrine .chip-nao-sei input:checked + span { background: #C9CED6; border-color: #C9CED6; color: var(--navy); border-style: dashed; }
.vitrine .campo-faltando .chip span, .vitrine .campo-faltando input { border-color: #FF8A7A; }
.vitrine .campo-faltando legend, .vitrine .campo-faltando > label { color: #FFB4A9; }
.vitrine .botao { background: var(--vitrine-cartao); border-color: #4A5A70; color: #fff; }
.vitrine .botao-principal { background: var(--laranja); border-color: var(--laranja); color: var(--navy); font-weight: 600; min-height: 52px; font-size: 1rem; }
.vitrine .botao-principal:hover { background: #F28C40; }
.vitrine .botao-principal:disabled { opacity: .7; cursor: wait; }
.vitrine :focus-visible { outline-color: #F7B57E; }
.armadilha { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

.passos-topo { display: flex; align-items: center; justify-content: space-between; min-height: var(--alvo); }
.botao-voltar { display: inline-flex; align-items: center; gap: 6px; min-height: var(--alvo); padding: 0 8px 0 0; border: 0; background: none; color: #fff; font: inherit; font-weight: 500; cursor: pointer; }
.botao-voltar[hidden] { visibility: hidden; display: inline-flex; }
.passos-indicador { color: #C9CED6; font-size: .9rem; }
.passos-barra { height: 4px; background: var(--vitrine-borda); border-radius: 2px; margin: 4px 0 8px; overflow: hidden; }
.passos-barra span { display: block; height: 100%; width: 25%; background: var(--laranja); transition: width .2s; }
.passo-acoes { margin-top: 8px; }
.passo h1:focus { outline: none; }
.passo-erro { margin: 0 0 12px; padding: 10px 14px; border-radius: var(--raio); background: #3A2326; color: #FFD5D0; border: 1px solid #7A3A3A; }

.servicos { display: flex; flex-direction: column; gap: 10px; }
.servico-cartao { position: relative; display: flex; align-items: flex-start; gap: 14px; padding: 16px; background: var(--vitrine-cartao); border: 1px solid var(--vitrine-borda); border-radius: 12px; cursor: pointer; }
.servico-cartao input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.servico-cartao:has(input:checked) { border-color: var(--laranja); box-shadow: inset 0 0 0 1px var(--laranja); }
.servico-cartao:has(input:focus-visible) { outline: 3px solid #F7B57E; outline-offset: 2px; }
.servico-icone { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; flex: none; border-radius: 10px; background: #2E3A4A; color: var(--laranja); }
.servico-icone .icone { width: 24px; height: 24px; }
.servico-texto { display: flex; flex-direction: column; gap: 2px; flex: 1; }
.servico-texto strong { font: 600 1.05rem var(--fonte-titulo); color: #fff; }
.servico-texto span { color: #C9CED6; font-size: .92rem; }
.servico-texto .servico-preco { color: #F7B57E; font-weight: 500; margin-top: 2px; }
.servico-marca { display: flex; align-items: center; justify-content: center; width: 26px; height: 26px; flex: none; border: 2px solid #4A5A70; border-radius: 50%; color: transparent; }
.servico-cartao:has(input:checked) .servico-marca { background: var(--laranja); border-color: var(--laranja); color: var(--navy); }
.servico-marca .icone { width: 16px; height: 16px; }

.vitrine-aviso { display: block; margin: 0 0 20px; padding: 12px 14px; border-left: 3px solid var(--laranja); background: var(--vitrine-cartao); border-radius: 0 var(--raio) var(--raio) 0; color: #E5E7EB; }
.vitrine-aviso[hidden] { display: none; }
.vitrine .medidas .campo { width: 130px; margin-bottom: 0; }
.fotos-previa { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; margin: 10px 0 0; padding: 0; }
.fotos-previa:empty { display: none; }
.fotos-previa li { position: relative; }
.fotos-previa img { display: block; width: 76px; height: 76px; object-fit: cover; border-radius: 8px; border: 1px solid var(--vitrine-borda); }
.foto-remover { position: absolute; top: -8px; right: -8px; width: 28px; height: 28px; border-radius: 50%; border: 0; background: #fff; color: var(--navy); font-size: 1.1rem; line-height: 1; cursor: pointer; }

.resumo-pedido { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 16px; margin: 0 0 16px; padding: 14px 16px; background: var(--vitrine-cartao); border: 1px solid var(--vitrine-borda); border-radius: 12px; font-size: .9rem; }
.resumo-pedido div:last-child { grid-column: 1 / -1; }
.resumo-pedido dt { color: #9AA3B0; font-size: .78rem; text-transform: uppercase; letter-spacing: .03em; }
.resumo-pedido dd { margin: 2px 0 0; color: #fff; }
.vitrine .dias-grade { grid-template-columns: repeat(auto-fill, minmax(96px, 1fr)); }
.vitrine .dia, .vitrine .periodo { background: var(--vitrine-cartao); border-color: #4A5A70; color: #fff; min-height: 60px; }
.vitrine .dia-status, .vitrine .periodo-status { color: #C9CED6; }
.vitrine .dia-livre .dia-status, .vitrine .periodo-livre .periodo-status { color: #8EE0AE; }
.vitrine .dia-poucas .dia-status, .vitrine .dia-so_manha .dia-status, .vitrine .dia-so_tarde .dia-status, .vitrine .periodo-poucas .periodo-status { color: #F7B57E; }
.vitrine .dia:disabled, .vitrine .periodo:disabled { background: transparent; color: #7C8594; border-style: dashed; border-color: #3A4656; }
.vitrine .dia:disabled .dia-status, .vitrine .periodo:disabled .periodo-status { color: #7C8594; }
.vitrine .dia[aria-pressed="true"], .vitrine .periodo[aria-pressed="true"] { background: var(--laranja); border-color: var(--laranja); color: var(--navy); }
.vitrine .dia[aria-pressed="true"] .dia-status, .vitrine .periodo[aria-pressed="true"] .periodo-status { color: var(--navy); }
.vitrine .periodos-grade { grid-template-columns: 1fr; margin: 12px 0 16px; }
.vitrine .periodo { flex-direction: row; justify-content: space-between; align-items: center; }

.vitrine-cartao { display: block; margin-bottom: 14px; padding: 16px; background: var(--vitrine-cartao); border: 1px solid var(--vitrine-borda); border-radius: 12px; }
.pedido-novo { text-align: center; margin: 8px 0 20px; }
.pedido-novo h1 { margin: 10px 0 4px; }
.pedido-novo p { margin: 0; color: #C9CED6; }
.pedido-novo-icone { display: inline-flex; align-items: center; justify-content: center; width: 56px; height: 56px; border-radius: 50%; background: var(--laranja); color: var(--navy); }
.pedido-novo-icone .icone { width: 30px; height: 30px; }
.pedido-situacao { border-left-width: 4px; }
.pedido-pre { border-left-color: var(--laranja); }
.pedido-fila { border-left-color: #C9CED6; }
.pedido-ok { border-left-color: #8EE0AE; }
.pedido-fim { border-left-color: #7C8594; }
.pedido-codigo { display: block; font-size: 1.3rem; color: #fff; }
.pedido-status { display: block; font: 700 1.15rem var(--fonte-titulo); margin: 4px 0; }
.pedido-pre .pedido-status { color: #F7B57E; }
.pedido-ok .pedido-status { color: #8EE0AE; }
.pedido-situacao p { margin: 6px 0 0; color: #D7DBE1; }
.pedido-dados { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 16px; margin: 0; }
.pedido-dados div:last-child { grid-column: 1 / -1; }
.pedido-dados dt { color: #9AA3B0; font-size: .78rem; text-transform: uppercase; letter-spacing: .03em; }
.pedido-dados dd { margin: 2px 0 0; color: #fff; }
.link-acompanhamento input { font-size: .85rem; }
.link-botoes { display: grid; grid-template-columns: 1fr; gap: 8px; margin-top: 10px; }
.vitrine .botao-whatsapp { background: #1F7A4D; border-color: #1F7A4D; color: #fff; text-decoration: none; }
.vitrine .campo-copiar.copiado, .vitrine input.copiado { border-color: #8EE0AE; }
.pedido-historico { list-style: none; margin: 0; padding: 0; }
.pedido-historico li { display: flex; gap: 12px; padding: 8px 0; border-bottom: 1px solid var(--vitrine-borda); font-size: .92rem; }
.pedido-historico li:last-child { border-bottom: 0; }
.pedido-historico .mono { color: #9AA3B0; font-size: .82rem; white-space: nowrap; }
.pedido-cancelar summary { min-height: var(--alvo); display: flex; align-items: center; cursor: pointer; font-weight: 600; color: #FFB4A9; }
.pedido-cancelar form { margin-top: 12px; }
.vitrine .botao-perigo-escuro { background: transparent; border-color: #FF8A7A; color: #FFB4A9; }
.pedido-novo-link { text-align: center; margin-top: 20px; }
.vitrine .vazio { background: var(--vitrine-cartao); border-color: var(--vitrine-borda); color: #C9CED6; }
.vitrine .vazio h1 { color: #fff; }

@media (min-width: 560px) {
  .link-botoes { grid-template-columns: 1fr 1fr; }
}

/* Layout simples (login, erros sem sessão) */
.simples { background: var(--navy); min-height: 100vh; display: flex; align-items: center; justify-content: center; padding: 16px; }
.simples-caixa { width: 100%; max-width: 400px; }
.simples-marca { display: flex; flex-direction: column; align-items: center; color: #fff; margin-bottom: 24px; }
.simples-marca .marca-nome { font-size: 1.6rem; }

@media (max-width: 720px) {
  .topbar { padding: 8px 16px; gap: 8px; }
  .menu { order: 3; flex-basis: 100%; overflow-x: auto; flex-wrap: nowrap; }
  .menu a span { white-space: nowrap; }
  .usuario { margin-left: auto; }
  .usuario-nome { display: none; }
  .conteudo { padding: 16px; }
  .formulario { padding: 16px; }
  .indicadores-rapidos { grid-template-columns: 1fr; }
  .navegacao-semana span { display: none; }
  .dialogo-conteudo { padding: 16px; }
  .historico li { grid-template-columns: 1fr; }
}
