/* Identidade discreta, restrita ao calendário e à correção auditada. */
.mcal-page { --mc-ink:#263044; --mc-muted:#667085; --mc-line:#e5e7ed; --mc-accent:#6451bb; color:var(--mc-ink); max-width:1680px; margin:auto; padding:20px; }
.mcal-page *, .mcal-modal * { box-sizing:border-box; }
.mcal-page button,.mcal-modal button { cursor:pointer; font:inherit; }
.mcal-page button:disabled,.mcal-modal button:disabled { cursor:default; opacity:.5; }
.mcal-page button:focus-visible,.mcal-modal button:focus-visible { outline:3px solid #bfb3f0; outline-offset:2px; }
.mcal-hero { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:24px; }
.mcal-hero small,.mcal-modal header small { font-size:10px; letter-spacing:.12em; font-weight:700; color:#756b91; }
.mcal-hero h1 { font-size:28px; letter-spacing:-.8px; margin:7px 0; }
.mcal-hero p,.mcal-modal header p { color:#667085; font-size:13px; margin:6px 0; }
.mcal-hero-acoes,.mcal-toolbar,.mcal-data-nav,.mcal-modos { display:flex; align-items:center; gap:8px; }
.mcal-toolbar { justify-content:space-between; padding:12px; background:#fff; border:1px solid var(--mc-line); border-radius:12px; margin-bottom:16px; flex-wrap:wrap; }
.mcal-toolbar button { border:1px solid var(--mc-line); border-radius:7px; padding:8px 12px; color:var(--mc-ink); background:#fff; }
.mcal-toolbar .on { background:#f0edf9; border-color:#c7bde6; color:#503f98; }
.mcal-data-nav b { min-width:180px; text-align:center; font-size:13px; }
.mcal-principal { display:grid; grid-template-columns:minmax(0,1fr) 285px; align-items:start; gap:18px; }
.mcal-dia,.mcal-lista-dia,.mcal-anteriores,.mcal-meu-dia { background:#fff; border:1px solid var(--mc-line); border-radius:12px; overflow:hidden; }
.mcal-dia-cab,.mcal-lista-dia>header,.mcal-anteriores>header { display:flex; justify-content:space-between; gap:10px; padding:16px; border-bottom:1px solid var(--mc-line); }
.mcal-dia-cab small,.mcal-dia-cab b,.mcal-anteriores small,.mcal-anteriores b { display:block; }
.mcal-dia-cab small,.mcal-anteriores small { color:var(--mc-muted); font-size:11px; margin-bottom:5px; }
.mcal-hora { display:grid; grid-template-columns:65px minmax(0,1fr); min-height:68px; border-bottom:1px solid #f0f1f5; }
.mcal-hora>time { padding:15px 10px; font-size:12px; color:#7b8393; border-right:1px solid #f0f1f5; }
.mcal-hora-corpo { padding:7px 10px; min-width:0; }
.mcal-card { display:flex; align-items:center; gap:9px; width:100%; border:1px solid #e7e4ee; border-radius:8px; background:#faf9fc; padding:11px; margin:4px 0; text-align:left; color:#30364a; }
.mcal-card:hover { background:#f2eef9; border-color:#c7bde6; }
.mcal-card-hora { font-size:11px; color:#737a8a; }
.mcal-card-cor { width:3px; align-self:stretch; background:var(--mcal-cor,#6451bb); border-radius:3px; }
.mcal-card-texto { flex:1; min-width:0; overflow-wrap:anywhere; }
.mcal-card-texto b,.mcal-card-texto small { display:block; }
.mcal-card-texto b { font-size:12px; line-height:1.4; }
.mcal-card-texto small { font-size:11px; color:#7b8190; margin-top:3px; }
.mcal-card em { font-size:10px; font-style:normal; color:#746b89; }
.mcal-card.atrasada { border-left:3px solid #a56652; }
.mcal-card.concluida { opacity:.65; }
.mcal-vazio-hora { width:100%; min-height:42px; border:1px dashed transparent; background:transparent; color:#8b91a0; text-align:left; font-size:11px!important; }
.mcal-vazio-hora:hover { border-color:#c7bde6; border-radius:7px; color:#6451bb; }
.mcal-bloco { display:block; width:100%; text-align:left; background:#f1f3f6; color:#505b70; border:0; border-left:3px solid #a3adbf; padding:7px 10px; border-radius:5px; margin-bottom:5px; }
.mcal-bloco b,.mcal-bloco span { display:block; font-size:11px; }
.mcal-bloco span { margin-top:3px; color:#7a8394; }
.mcal-meu-dia { position:sticky; top:12px; }
.mcal-meu-dia>header { padding:18px; border-bottom:1px solid var(--mc-line); }
.mcal-meu-dia h3 { font-size:20px; margin:7px 0; }
.mcal-meu-dia small,.mcal-meu-dia header span { font-size:11px; color:var(--mc-muted); }
.mcal-meu-dia>section { margin:0 16px; padding:17px 0; border-bottom:1px solid var(--mc-line); }
.mcal-agora>* { display:block; margin-bottom:5px; }
.mcal-agora b { font-size:16px; }.mcal-agora span,.mcal-agora em { color:#737a8a; font-size:12px; font-style:normal; }
.mcal-side-titulo { display:flex; justify-content:space-between; font-size:12px; margin-bottom:10px; }
.mcal-proximas button,.mcal-atencao button { display:flex; gap:10px; align-items:center; border:0; background:transparent; width:100%; text-align:left; padding:9px 0; color:#424b5d; }
.mcal-proximas button:hover,.mcal-atencao button:hover { color:#6451bb; }
.mcal-proximas time { color:#7b8393; font-size:11px; }.mcal-proximas b,.mcal-proximas small { display:block; font-size:11px; }
.mcal-atencao button b { min-width:24px; padding:4px; background:#f0edf7; border-radius:5px; text-align:center; }
.mcal-atencao span,.mcal-filosofia span { font-size:12px; }.mcal-filosofia>* { display:block; margin-bottom:6px; }.mcal-filosofia { color:#747b8b; font-size:12px; }
.mcal-filtros { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:12px; padding:16px; background:#fff; border:1px solid var(--mc-line); border-radius:10px; margin-bottom:16px; }
.mcal-filtros[hidden],.mcal-wait[hidden] { display:none; }.mcal-filtros label { display:grid; gap:5px; font-size:11px; color:#737a8a; }
.mcal-filtros input,.mcal-filtros select,.mcal-form input,.mcal-form select,.mcal-form textarea { width:100%; min-height:38px; border:1px solid #dce0e8; border-radius:7px; background:#fff; color:#30384a; padding:8px; font:inherit; }
.mcal-semana { display:grid; grid-template-columns:repeat(7,minmax(130px,1fr)); overflow:auto; border:1px solid var(--mc-line); border-radius:12px; background:#fff; }
.mcal-semana>section { border-right:1px solid var(--mc-line); min-height:420px; padding:7px; }
.mcal-semana-cab { background:transparent; border:0; width:100%; display:grid; gap:5px; padding:12px 0; color:#61697a; }.mcal-semana-cab b { font-size:24px; }.mcal-semana-cab small { font-size:10px; }.mcal-semana .hoje { background:#faf9fd; }
.mcal-semana .mcal-card { flex-wrap:wrap; }.mcal-semana-vazio { border:1px dashed #e2ddeb; background:transparent; color:#9892a7; padding:20px; width:100%; border-radius:7px; }
.mcal-lista { display:grid; gap:16px; }.mcal-lista .mcal-card { width:calc(100% - 24px); margin:8px 12px; }.mcal-lista header { font-size:12px; }.mcal-anteriores>header { background:#faf7f4; color:#886955; }
.mcal-sem-dados,.mcal-carregando { padding:40px; text-align:center; background:#fff; border:1px solid #e5e7ed; border-radius:12px; color:#737a8a; }.mcal-sem-dados b,.mcal-sem-dados span { display:block; margin:10px; }
.mcal-modal { max-width:760px; color:#30384a; }.mcal-modal header { display:flex; justify-content:space-between; gap:12px; margin-bottom:20px; }.mcal-modal h3 { font-size:23px; margin:6px 0; }.mcal-modal footer { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; padding-top:18px; margin-top:20px; border-top:1px solid #e5e7ed; }
.mcal-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }.mcal-form .field { display:grid; gap:6px; font-size:12px; }.mcal-span-2 { grid-column:1/-1; }.mcal-wait { display:grid; grid-template-columns:1fr 1fr; gap:12px; padding:12px; border-radius:9px; background:#f6f4f9; }
.mcal-detalhe-grade { display:grid; grid-template-columns:1fr 1fr; gap:18px; padding:16px; background:#f8f9fb; border-radius:10px; }.mcal-detalhe-grade small,.mcal-detalhe-grade b,.mcal-detalhe-grade span { display:block; margin:5px 0; }.mcal-detalhe-grade small,.mcal-detalhe-grade span { font-size:11px; color:#747b8b; }
.mcal-texto,.mcal-espera { padding:14px 0; white-space:pre-wrap; overflow-wrap:anywhere; }.mcal-texto small { color:#747b8b; }.mcal-acoes-contexto { display:flex; gap:8px; flex-wrap:wrap; }.mcal-status { font-size:11px; border:1px solid #e1dbea; background:#f4f1f8; border-radius:20px; padding:6px 10px; align-self:start; }.mcal-perigo { color:#975c53!important; }
.reopen-audit-panel { display:block!important; width:min(680px,100%); min-width:0!important; }.reopen-audit-panel .reopen-audit-grid { display:grid; grid-template-columns:1fr; gap:16px; }.reopen-audit-panel textarea { width:100%; }
@media(max-width:1050px) { .mcal-principal { grid-template-columns:minmax(0,1fr); }.mcal-meu-dia { position:static; }.mcal-hero { align-items:flex-start; }.mcal-page { padding:12px; } }
@media(max-width:600px) { .mcal-hero { display:block; }.mcal-hero-acoes { margin-top:16px; }.mcal-data-nav { flex-wrap:wrap; }.mcal-data-nav b { min-width:100px; max-width:170px; }.mcal-form,.mcal-detalhe-grade,.mcal-wait { grid-template-columns:1fr; }.mcal-span-2 { grid-column:auto; }.mcal-card em { display:none; }.mcal-hora { grid-template-columns:48px minmax(0,1fr); }.mcal-modal header { display:block; } }

/* Acabamento operacional de 06/09: neutros, hierarquia e esperas explícitas. */
.mcal-page { --mc-ink:#1d3045; --mc-muted:#637488; --mc-line:#dfe6ee; --mc-accent:#17638c; padding:22px; }
.mcal-hero { padding:22px 24px; margin-bottom:18px; background:#fff; border:1px solid var(--mc-line); border-radius:16px; border-top:3px solid #1d3045; }
.mcal-hero small,.mcal-modal header small { color:#496174; letter-spacing:.11em; }
.mcal-hero h1 { font-size:27px; font-weight:750; color:#162d44; }
.mcal-page .btn,.mcal-modal .btn { background:#185d82; border:1px solid #185d82; border-radius:8px; padding:9px 13px; color:white; box-shadow:none; }
.mcal-page .btn.ghost,.mcal-modal .btn.ghost { background:#fff; color:#28465f; border-color:#ccd8e2; }
.mcal-page button:focus-visible,.mcal-modal button:focus-visible { outline-color:#62a1c3; }
.mcal-toolbar { gap:12px; box-shadow:0 2px 8px #21384e05; }
.mcal-toolbar .on { background:#1d405b; color:#fff; border-color:#1d405b; }
.mcal-data-nav input { border:1px solid #ccd8e2; border-radius:7px; padding:7px 9px; font:inherit; font-size:12px; color:#1d3045; background:#fff; max-width:150px; min-height:35px; }
.mcal-data-nav b { font-weight:500; color:#64758a; min-width:0; padding:0 8px; }
.mcal-principal { grid-template-columns:minmax(0,1fr) 310px; gap:18px; }
.mcal-card { background:#fff; border-color:#dfe6ee; color:#1d3045; box-shadow:0 2px 5px #21384e04; }
.mcal-card:hover { background:#f5f9fc; border-color:#a6c0d1; }
.mcal-card-cor { background:#8ba0b1; }
.mcal-card.atrasada { border-left-color:#ab5e54; }
.mcal-card.aguardando-cliente,.mcal-card.aguardando-processo { background:#f7f9fb; }
.mcal-card.concluida .mcal-card-cor { background:#527e70; }
.mcal-card em { color:#486076; border:1px solid #e3e9ef; border-radius:5px; padding:3px 6px; white-space:nowrap; }
.mcal-card.urgente em { color:#904b41; border-color:#e7ccc6; }
.mcal-card-situacao { color:#63788b!important; font-size:10px!important; }
.mcal-vazio-hora:hover { border-color:#b3c8d8; color:#17638c; background:#f7fafc; }
.mcal-bloco { background:#edf2f6; border-left-color:#7b93a8; color:#314c65; }
.mcal-meu-dia { box-shadow:0 6px 22px #1d304509; max-height:calc(100vh - 150px); overflow-y:auto; scrollbar-width:thin; scrollbar-color:#c1cfdb transparent; }
.mcal-meu-dia>header { background:#f7f9fb; padding:17px 18px; }
.mcal-agora { background:#f2f7fa; border:1px solid #d8e4ed!important; border-radius:9px; padding:14px!important; margin-top:15px!important; }
.mcal-meu-dia .mcal-side-titulo { color:#213c54; }
.mcal-proximas button:hover,.mcal-atencao button:hover { color:#17638c; background:#f7fafc; }
.mcal-atencao button b { background:#edf2f6; color:#244a66; }
.mcal-nota { display:block; font-size:10px!important; color:#697d8e!important; line-height:1.5; margin-top:9px; }
.mcal-aguardando>p { color:#6a7d8e; font-size:11px; line-height:1.5; }
.mcal-fila-espera { max-height:285px; overflow:auto; scrollbar-width:thin; }
.mcal-fila-espera button { display:grid; width:100%; text-align:left; gap:4px; border:1px solid #e1e7ee; border-radius:7px; padding:10px; margin:6px 0; background:#f9fbfc; color:#294258; }
.mcal-fila-espera button:hover { border-color:#abc4d6; background:#f1f7fb; }
.mcal-fila-espera b { font-size:11px; overflow-wrap:anywhere; }.mcal-fila-espera span,.mcal-fila-espera small { font-size:10px; color:#667c8e; }
.mcal-semana .hoje { background:#f0f6fa; }.mcal-semana-vazio { color:#748b9e; border-color:#d3dfe9; }
.mcal-semana-area { min-width:0; }.mcal-semana-ajuda { color:#657b8e; font-size:11px; margin:0 0 9px; }
.mcal-semana .mcal-card { display:grid; grid-template-columns:minmax(0,1fr); gap:5px; }
.mcal-semana .mcal-card-cor { display:none; }.mcal-semana .mcal-card em { justify-self:start; }
.mcal-anteriores>header { background:#f8f8f8; color:#526577; }.mcal-anteriores>header span { font-size:10px; align-self:center; }
.mcal-modal .mcal-wait { background:#f3f7fa; border:1px solid #dfe8ef; }
.mcal-status { background:#f2f6f9; color:#344f65; border-color:#d7e2eb; }
.mcal-status.atrasada { background:#fcf5f3; color:#965448; border-color:#efd8d1; }
.mcal-espera { border:1px solid #e0e8ef; padding:14px; margin-top:14px; border-radius:9px; background:#f7f9fb; }
.mcal-espera>* { display:block; margin:4px 0; }.mcal-espera small { color:#697e90; }
@media(max-width:1180px) { .mcal-data-nav { flex-wrap:wrap; }.mcal-data-nav b { flex-basis:100%; text-align:left; padding:4px 0; } }
@media(max-width:1050px) { .mcal-principal { grid-template-columns:minmax(0,1fr); }.mcal-meu-dia { order:-1; max-height:340px; position:static; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }.mcal-meu-dia>header { grid-column:1/-1; }.mcal-meu-dia>section { min-width:0; }.mcal-page { padding:12px; }.mcal-meu-dia .mcal-agora { align-self:start; } }
@media(max-width:600px) { .mcal-page { padding:8px; }.mcal-hero { padding:16px; }.mcal-hero h1 { font-size:23px; }.mcal-hero-acoes { display:grid; grid-template-columns:auto 1fr; }.mcal-toolbar { padding:10px; }.mcal-data-nav { gap:5px; width:100%; }.mcal-data-nav b { max-width:none; }.mcal-meu-dia { grid-template-columns:minmax(0,1fr); }.mcal-card em { display:block; font-size:9px; white-space:normal; max-width:70px; }.mcal-card { gap:6px; padding:9px; }.mcal-dia-cab { align-items:center; padding:12px; }.mcal-dia-cab .btn { font-size:11px; }.mcal-modal footer .btn { min-height:40px; }.mcal-anteriores>header { flex-wrap:wrap; } }
@media(max-width:600px) { .mcal-semana { grid-template-columns:repeat(7,minmax(170px,1fr)); }.mcal-semana>section { min-height:230px; }.mcal-semana-vazio { padding:14px 8px; } }
