/* =====================================================================
   AGENDA-OS — Tema Moderno (estilo Claude)
   Folha de estilo central. Carregada pelo cabecalho.php DEPOIS do estilo.css,
   então prevalece. Também redefine as variáveis antigas (--green-*, --preto,
   --term-font, etc.) para a paleta nova, de modo que estilos inline herdados
   das páginas retrô já apareçam com as cores modernas.
   ===================================================================== */

:root{
    /* Paleta moderna */
    --bg:#faf8f5; --surface:#ffffff; --surface-2:#f5f1ea;
    --border:#eae3d8; --border-strong:#ddd4c6;
    --text:#26241f; --muted:#78716a; --faint:#a49c90;
    --accent:#c96442; --accent-soft:#f3e7e1;
    --green:#4f7a53; --amber:#b4801f; --danger:#c0392b;
    --radius:14px;
    --shadow:0 1px 3px rgba(40,30,20,.06), 0 1px 2px rgba(40,30,20,.04);
    --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    --serif:Georgia,"Times New Roman",serif;

    /* --- Compatibilidade: variáveis antigas → paleta nova --- */
    --term-font:var(--sans);
    --verde:var(--text); --verde-fraco:var(--border); --verde-fundo:var(--bg); --preto:var(--surface);
    --ambar-alerta:var(--amber); --vermelho-alerta:var(--danger);
    --term-green:var(--accent); --term-green-dim:var(--muted); --term-green-dark:var(--surface-2);
    --term-amber:var(--amber); --term-bg-dark:var(--surface);
    --green-bright:var(--text); --green-normal:var(--text); --green-sub:var(--muted);
    --green-dim:var(--muted); --green-dark:var(--surface-2); --green-border:var(--border);
}

*{box-sizing:border-box}
html,body{margin:0}
body{
    background:var(--bg)!important;
    color:var(--text)!important;
    font-family:var(--sans)!important;
    font-size:15px; line-height:1.5; -webkit-font-smoothing:antialiased;
    text-shadow:none!important;
}
a{color:inherit}
h1,h2,h3,h4{font-family:var(--serif);color:var(--text);font-weight:600;}

/* ---------- Topbar / navegação ---------- */
.topbar{position:sticky;top:0;z-index:20;background:rgba(250,248,245,.85);
        backdrop-filter:blur(8px);border-bottom:1px solid var(--border);}
.topbar-in{max-width:none;margin:0 auto;display:flex;align-items:center;gap:16px;padding:12px 20px;}
.brand{font-family:var(--serif);font-size:19px;font-weight:600;color:var(--accent);
       text-decoration:none;white-space:nowrap;letter-spacing:.2px;}
.nav{display:flex;gap:2px;overflow-x:auto;flex:1;scrollbar-width:none;}
.nav::-webkit-scrollbar{display:none}
.nav a{padding:6px 12px;border-radius:999px;color:var(--muted);text-decoration:none;
       font-size:14px;font-weight:500;white-space:nowrap;transition:background .15s,color .15s;}
.nav a:hover{background:var(--surface-2);color:var(--text);}
.nav a.ativo{background:var(--accent);color:#fff;}
.userbox{display:flex;align-items:center;gap:10px;white-space:nowrap;}
.userbox .nome{font-size:13px;color:var(--muted);}
.sair{font-size:13px;color:var(--muted)!important;text-decoration:none;border:1px solid var(--border-strong);
      padding:5px 10px;border-radius:999px;}
.sair:hover{background:var(--surface-2);color:var(--text)!important;}
#status-conexao-badge{font-size:11px;color:var(--green);border:1px solid var(--border-strong);
      padding:3px 9px;border-radius:999px;white-space:nowrap;}

/* ---------- Layout ---------- */
main,.conteudo-principal{max-width:none;margin:0 auto;padding:26px clamp(16px,2.5vw,40px) 60px;}
.rodape{max-width:none;margin:0 auto;padding:0 20px 40px;color:var(--faint);font-size:12px;text-align:center;}

/* ---------- Componentes genéricos ---------- */
.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);
      box-shadow:var(--shadow);padding:18px;display:flex;flex-direction:column;margin-bottom:16px;}
.card h3{margin:0 0 12px;font-family:var(--sans);font-size:13px;font-weight:600;letter-spacing:.3px;
         text-transform:uppercase;color:var(--muted);display:flex;justify-content:space-between;align-items:center;gap:8px;}
.card h3 .ver,.card h3 a{font-size:12px;font-weight:500;text-transform:none;letter-spacing:0;color:var(--accent);text-decoration:none;}
.grid{display:grid;grid-template-columns:1fr;gap:16px;}
@media(min-width:640px){.grid{grid-template-columns:1fr 1fr;}}
@media(min-width:1000px){.grid{grid-template-columns:1fr 1fr 1fr;}}
.row{padding:9px 0;border-bottom:1px solid var(--border);font-size:14px;}
.row:last-child{border-bottom:none;}
.kpis{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap;}
.kpi{flex:1;min-width:90px;background:var(--surface-2);border-radius:10px;padding:10px;text-align:center;}
.kpi .v{font-size:22px;font-weight:700;color:var(--text);line-height:1.1;}
.kpi .v.small{font-size:15px;}
.kpi .l{font-size:10.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.4px;margin-top:3px;}
.money{display:flex;justify-content:space-between;padding:7px 0;border-bottom:1px solid var(--border);font-size:14px;}
.money.total{font-weight:700;border-top:1px solid var(--border-strong);margin-top:2px;padding-top:9px;}
.pill{display:inline-block;font-size:11px;padding:1px 8px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-weight:600;}
.pill.venc{background:#f6ebd6;color:var(--amber);}
.vazio{color:var(--faint);font-size:13.5px;padding:8px 0;}

/* ---------- Botões ---------- */
.btn, .btn-term-nav, .btn-term-acao, .btn-salvar-term, .dec-btn{
    display:inline-block;background:var(--surface);color:var(--text)!important;
    border:1px solid var(--border-strong);padding:7px 14px;border-radius:999px;
    font-family:var(--sans);font-size:13px;font-weight:500;cursor:pointer;text-decoration:none;
    transition:background .15s,border-color .15s;}
.btn:hover,.btn-term-nav:hover,.btn-term-acao:hover,.dec-btn:hover{background:var(--surface-2);border-color:var(--muted);}
.btn-primary,.btn-salvar-term,.dec-btn{background:var(--accent);color:#fff!important;border-color:var(--accent);}
.btn-primary:hover,.btn-salvar-term:hover,.dec-btn:hover{background:#b5573a;color:#fff!important;}
.btn-term-excluir,.dec-btn-amber{background:transparent;color:var(--danger)!important;border:1px solid #e6c9c2;
    padding:5px 12px;border-radius:999px;font-family:var(--sans);font-size:12px;cursor:pointer;}
.btn-term-excluir:hover{background:#fbece9;}
.dec-btn-mini,.btn-term-acao{font-size:12px;padding:5px 11px;}

/* ---------- Formulários ---------- */
input[type=text],input[type=date],input[type=number],input[type=email],input[type=password],
input[type=time],select,textarea{
    width:100%;box-sizing:border-box;background:var(--surface);color:var(--text);
    border:1px solid var(--border-strong);border-radius:10px;padding:9px 11px;
    font-family:var(--sans);font-size:15px;}
textarea{min-height:90px;resize:vertical;}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);}
label{font-size:12px;color:var(--muted);}

/* ---------- Barra de navegação de datas (dia/mês) ---------- */
.barra-navegacao-dia{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;
    margin-bottom:20px;border-bottom:1px solid var(--border);padding-bottom:12px;font-family:var(--sans);}

/* ---------- Página do dia: cards e texto hierárquico ---------- */
.card-terminal{background:var(--surface)!important;border:1px solid var(--border)!important;border-radius:var(--radius)!important;
    box-shadow:var(--shadow);padding:14px!important;margin-bottom:14px!important;}
.card-terminal.card-editando{border-color:var(--accent)!important;box-shadow:0 0 0 3px var(--accent-soft)!important;}
.card-titulo-terminal{color:var(--text)!important;font-family:var(--serif);font-size:1.05em!important;font-weight:600!important;text-shadow:none!important;}
.card-tipo-terminal{color:var(--muted)!important;font-size:.72em!important;text-transform:uppercase;letter-spacing:1px;}
.term-h1{font-family:var(--serif);font-size:1.15em!important;font-weight:600!important;color:var(--text)!important;
    margin:10px 0 4px!important;border-bottom:1px solid var(--border)!important;padding-bottom:3px!important;text-shadow:none!important;}
.term-h2{font-family:var(--serif);font-size:1.02em!important;font-weight:600!important;color:var(--text)!important;margin:10px 0 3px!important;text-shadow:none!important;}
.term-p{font-size:.95em!important;color:var(--text)!important;margin:0 0 5px!important;line-height:1.55!important;}
.tag-badge-term{font-size:.8em!important;color:var(--accent)!important;background:var(--accent-soft);padding:1px 8px;border-radius:999px;margin-right:6px;}
.gtd-badge-term{font-size:.8em!important;color:var(--muted)!important;}
.contador-term{font-size:.82em!important;color:var(--muted)!important;}
.rotulo-tipo{font-size:.72em;color:var(--faint)!important;}

/* ---------- Kanban (GTD) ---------- */
.kanban-board{display:flex!important;flex-wrap:nowrap!important;gap:14px;overflow-x:auto;padding-bottom:12px;
    -webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;margin-top:16px;}
.kanban-coluna{flex:1 0 220px;min-width:220px;scroll-snap-align:start;background:var(--surface-2)!important;
    border:1px solid var(--border)!important;border-radius:var(--radius)!important;display:flex;flex-direction:column;min-height:220px;}
@media(max-width:700px){.kanban-coluna{flex:0 0 82vw;min-width:82vw;}}
.kanban-coluna-topo{padding:10px 12px!important;background:transparent!important;border-bottom:1px solid var(--border)!important;
    display:flex;justify-content:space-between;align-items:center;}
.kanban-coluna-titulo{font-size:.8em!important;font-weight:600!important;letter-spacing:.4px;color:var(--muted)!important;text-transform:uppercase;}
.kanban-coluna-contador{font-size:.72em!important;background:var(--accent)!important;color:#fff!important;padding:1px 8px!important;border-radius:999px!important;font-weight:700;}
.kanban-cards{padding:10px!important;display:flex;flex-direction:column;gap:8px;flex:1;}
.kanban-cards.drag-hover{background:var(--accent-soft)!important;outline:1px dashed var(--accent)!important;}
.kanban-card{background:var(--surface)!important;border:1px solid var(--border)!important;border-radius:10px!important;
    padding:10px!important;box-shadow:var(--shadow);cursor:grab;}
.kanban-card.arrastando{opacity:.4;}
.kanban-card-link{display:block;color:var(--text)!important;font-size:.92em;line-height:1.35;text-decoration:none;}
.kanban-card-link:hover{color:var(--accent)!important;}
.kanban-progresso{font-size:.75em;color:var(--muted)!important;margin-top:6px;}
.feito-resumo{border:1px dashed var(--border-strong)!important;background:var(--surface)!important;padding:16px 10px;text-align:center;cursor:pointer;border-radius:10px;}
.feito-resumo:hover{background:var(--surface-2)!important;}
.feito-resumo .num{font-size:1.9em;font-weight:700;color:var(--accent);}
.feito-resumo .lbl{font-size:.78em;color:var(--muted);margin-top:4px;}

/* ---------- Modais (concluídas etc.) ---------- */
.modal-overlay{position:fixed;inset:0;background:rgba(38,30,20,.45);display:none;align-items:center;justify-content:center;z-index:9999;padding:16px;}
.modal-overlay.aberto{display:flex;}
.modal-box{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 20px 50px rgba(0,0,0,.2);
    width:100%;max-width:560px;max-height:82vh;display:flex;flex-direction:column;font-family:var(--sans);}
.modal-topo{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:1px solid var(--border);color:var(--text);font-weight:600;}
.modal-fechar{background:transparent;border:1px solid var(--border-strong);color:var(--muted);border-radius:999px;cursor:pointer;padding:4px 10px;font-size:.9em;}
.modal-fechar:hover{background:var(--surface-2);}
.modal-lista{overflow-y:auto;padding:8px 12px;}
.modal-item{display:flex;gap:10px;align-items:baseline;padding:9px 4px;border-bottom:1px solid var(--border);color:var(--text)!important;text-decoration:none;font-size:.9em;}
.modal-item:hover{background:var(--surface-2);}
.modal-item .dt{color:var(--muted);font-size:.82em;white-space:nowrap;min-width:82px;}
.modal-vazio{padding:20px;text-align:center;color:var(--muted);}

/* ---------- Decisões ---------- */
.dec-grid{display:grid;grid-template-columns:1fr;gap:18px;}
@media(min-width:900px){.dec-grid{grid-template-columns:1.2fr 1fr;}}
.dec-box{border:1px solid var(--border)!important;background:var(--surface)!important;border-radius:var(--radius);box-shadow:var(--shadow);padding:16px!important;}
.dec-box h3{margin:0 0 10px;font-family:var(--sans);color:var(--muted)!important;border-bottom:1px solid var(--border)!important;padding-bottom:6px;font-size:13px;text-transform:uppercase;letter-spacing:.3px;}
.dec-card{border:1px solid var(--border)!important;border-radius:10px;padding:11px 12px!important;margin-bottom:10px;}
.dec-card.venc{border-color:var(--amber)!important;}
.dec-card .tit{color:var(--text)!important;font-weight:600;}
.dec-meta{font-size:12px;color:var(--muted)!important;margin-top:4px;}
.dec-hip{font-size:13px;color:var(--text)!important;margin-top:6px;}
.conf-tag,.venc-tag{font-size:11px;border-radius:999px;padding:1px 8px;border:0;background:var(--accent-soft);color:var(--accent)!important;}
.venc-tag{background:#f6ebd6;color:var(--amber)!important;}
.calib-bar-wrap{flex:1;background:var(--surface-2);height:14px;position:relative;border-radius:999px;overflow:hidden;}
.calib-bar{height:14px;background:var(--accent);}
.calib-marker{position:absolute;top:-3px;width:2px;height:20px;background:var(--amber);}
.calib-faixa{width:64px;color:var(--muted);}

/* ---------- Calendário (mês) ---------- */
.calendario-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;}
.dia-semana-cabecalho{text-align:center;font-weight:600;font-size:.8em;padding:8px 0;color:var(--muted);text-transform:uppercase;}
.dia-card{background:var(--surface)!important;border:1px solid var(--border)!important;border-radius:10px!important;
    min-height:84px;padding:8px;display:flex;flex-direction:column;justify-content:space-between;text-decoration:none;color:var(--text)!important;}
.dia-card:hover{background:var(--surface-2)!important;border-color:var(--border-strong)!important;}
.dia-card.vazio{background:transparent!important;border-color:transparent!important;pointer-events:none;}
.dia-card.hoje{border-color:var(--accent)!important;box-shadow:0 0 0 2px var(--accent-soft) inset;}
.dia-numero{font-size:.95em;font-weight:600;}
.badge-item{font-size:.72em;padding:2px 6px;border-radius:999px;background:var(--surface-2);}
.badge-reuniao{background:#e7eef6;color:#3a6ea5;}
.badge-financeiro{background:#e7f1e8;color:var(--green);}
.badge-gtd{background:#f6efe0;color:var(--amber);}
.badge-decisao{background:var(--accent-soft);color:var(--accent);}
.badge-revisar{background:#f6ebd6;color:var(--amber);}

/* ---------- Painel (cockpit) — reaproveita .card/.grid ---------- */
.pnl-head{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px;margin-bottom:6px;}
.saudacao{font-family:var(--serif);font-size:30px;font-weight:600;margin:4px 0 2px;letter-spacing:-.4px;}
.sub{color:var(--muted);font-size:14px;margin-bottom:24px;}
.sub a{color:var(--accent);text-decoration:none;font-weight:500;}
.atalho{display:block;padding:9px 0;border-bottom:1px solid var(--border);color:var(--text)!important;text-decoration:none;font-size:14px;font-weight:500;}
.atalho:last-of-type{border-bottom:none;}
.atalho:hover{color:var(--accent)!important;}

/* ---------- Extras de compatibilidade ---------- */
.botao{display:inline-block;background:var(--surface);color:var(--text)!important;border:1px solid var(--border-strong);
    padding:7px 13px;border-radius:999px;font-size:13px;font-weight:500;text-decoration:none;cursor:pointer;}
.botao:hover{background:var(--surface-2);}
.calendario-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:20px;}
.calendario-nav{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.grid-dia{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start;}
@media(max-width:760px){.grid-dia{grid-template-columns:1fr;}}
.dec-form label{display:block;margin:8px 0 2px;}
.revisar-area{margin-top:8px;border-top:1px solid var(--border);padding-top:8px;}
.revisar-area summary,details summary{cursor:pointer;color:var(--accent);}

:root{ --cor-primaria:var(--accent); }

/* ---------- Financeiro ---------- */
.botao-primario{background:var(--accent)!important;color:#fff!important;border-color:var(--accent)!important;}
.fin-card-term{background:var(--surface)!important;border:1px solid var(--border)!important;border-radius:var(--radius)!important;
    padding:14px 16px!important;box-shadow:var(--shadow)!important;}
.fin-card-term.destaque{border-color:var(--accent)!important;}
.fin-label{font-size:.72em;color:var(--muted)!important;text-transform:uppercase;letter-spacing:.6px;font-weight:600;}
.fin-valor{font-size:1.5em;font-weight:700;color:var(--text)!important;margin-top:4px;text-shadow:none!important;}
.tabela-fin-term{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;font-family:var(--sans);}
.tabela-fin-term th{background:var(--surface-2);color:var(--muted);font-size:.76em;padding:10px 12px;border-bottom:1px solid var(--border);text-transform:uppercase;letter-spacing:.4px;text-align:left;}
.tabela-fin-term td{border-bottom:1px solid var(--border);padding:10px 12px;color:var(--text);font-size:.9em;}
.btn-filtro-term{background:var(--surface)!important;border:1px solid var(--border-strong)!important;color:var(--muted)!important;
    font-family:var(--sans)!important;font-size:.8em!important;padding:5px 12px!important;border-radius:999px!important;text-decoration:none!important;}
.btn-filtro-term.ativo,.btn-filtro-term:hover{background:var(--accent)!important;color:#fff!important;border-color:var(--accent)!important;}
.waterfall-crt-container{background:var(--surface)!important;border:1px solid var(--border)!important;border-radius:var(--radius)!important;padding:16px!important;margin-top:24px;position:relative;box-shadow:var(--shadow);}
.crt-grid-line{stroke:var(--border);stroke-width:1;stroke-dasharray:2,3;}
.crt-axis-line{stroke:var(--border-strong);stroke-width:1.5;}
.crt-text-axis{fill:var(--muted);font-family:var(--sans);font-size:11px;}
.wf-bar{transition:opacity .15s;cursor:pointer;}
.wf-bar:hover{opacity:.85;}
.wf-connector{stroke:var(--faint);stroke-width:1;stroke-dasharray:2,2;}
#wf-tooltip{position:absolute;display:none;background:var(--text);border:0;color:#fff;padding:6px 10px;border-radius:8px;
    font-family:var(--sans);font-size:12px;pointer-events:none;box-shadow:0 6px 18px rgba(0,0,0,.25);z-index:1000;}

/* ---------- Busca ---------- */
.card-busca-terminal{background:var(--surface)!important;border:1px solid var(--border)!important;border-radius:var(--radius)!important;padding:14px!important;margin-bottom:12px!important;box-shadow:var(--shadow);}
.card-busca-terminal:hover{border-color:var(--border-strong)!important;}
.input-busca-global{width:100%;background:var(--surface)!important;border:1px solid var(--border-strong)!important;color:var(--text)!important;
    font-family:var(--sans)!important;font-size:16px!important;padding:10px 13px!important;border-radius:999px!important;box-sizing:border-box;}
.input-busca-global:focus{outline:none!important;border-color:var(--accent)!important;box-shadow:0 0 0 3px var(--accent-soft)!important;}
.btn-term-busca{background:var(--accent)!important;color:#fff!important;font-family:var(--sans)!important;font-weight:600!important;
    font-size:.9em!important;border:1px solid var(--accent)!important;padding:9px 18px!important;border-radius:999px!important;cursor:pointer!important;}
.btn-term-busca:hover{background:#b5573a!important;}
.btn-link-dia{background:transparent!important;border:1px solid var(--border-strong)!important;color:var(--text)!important;
    font-family:var(--sans)!important;font-size:.78em!important;padding:4px 10px!important;border-radius:999px!important;text-decoration:none!important;display:inline-block!important;}
.btn-link-dia:hover{background:var(--surface-2)!important;}

/* ---------- Login / Cadastro (telas independentes) ---------- */
button{font-family:var(--sans);background:var(--accent);color:#fff;border:1px solid var(--accent);border-radius:999px;padding:9px 18px;font-size:14px;font-weight:600;cursor:pointer;}
button:hover{background:#b5573a;}
.terminal{max-width:420px;margin:8vh auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:28px 26px;}
.terminal h1{font-family:var(--serif);color:var(--accent);font-size:24px;margin:0 0 4px;}
.terminal p{margin:10px 0;}
.terminal a{color:var(--accent);text-decoration:none;font-weight:500;}
.cursor-piscante{display:none;}
.erro{background:#fbece9;border:1px solid #e6c9c2;color:var(--danger);padding:10px 12px;border-radius:10px;font-size:14px;margin:10px 0;}

/* =====================================================================
   REVISÃO DE LEGIBILIDADE (scanlines, quadro anual, contrastes)
   ===================================================================== */

/* A variável antiga --green-bright era usada tanto como texto quanto como
   FUNDO de botões. Mapear para o acento resolve os "botões pretos". */
:root{ --green-bright:var(--accent); }

/* Remove o efeito de scanlines (linhas horizontais) que atrapalhava a leitura */
body::before{ display:none !important; content:none !important; }

/* ---------- Quadro anual (ano.php): paleta clara e legível ---------- */
.rotulo-mes{ color:var(--muted)!important; font-weight:600; }
.dia-celula{ border:1px solid var(--border)!important; color:var(--text)!important; border-radius:4px;
             text-shadow:none!important; }
.dia-celula:hover{ box-shadow:0 0 0 2px var(--accent-soft)!important; }
.dia-livre{ background:var(--surface)!important; color:var(--text)!important; }
.dia-livre:not(.dia-destaque){ background:var(--surface)!important; color:var(--text)!important; }
.dia-celula:not(.dia-destaque){ border-color:var(--border)!important; }
.dia-celula.dia-destaque{ background:var(--surface-2)!important; border:1px solid var(--border-strong)!important;
                          text-decoration:none!important; }
/* Viagem / ocupado: vermelho claro — vale também em fins de semana e feriados */
.dia-celula.dia-ocupado,
.dia-celula.dia-ocupado.dia-destaque{ background:#fde2e2!important; color:#b42318!important; border:1px solid #f6b8b8!important; font-weight:600; }
.dia-celula.dia-ocupado.dia-destaque{ border-color:#ee9a9a!important; }
.dia-celula.dia-parcial,
.dia-celula.dia-parcial.dia-destaque{ background:#f6ecd2!important; color:#7a5c12!important; border:1px solid #e8d3a0!important; }
.dia-celula.dia-hoje,
.dia-celula.dia-hoje.dia-destaque{ background:var(--accent)!important; color:#fff!important; border-color:var(--accent)!important; font-weight:700; }
.dia-celula.dia-hoje.dia-ocupado{ box-shadow:0 0 0 2px #f6b8b8!important; }
.dia-vazio{ background:transparent!important; border:none!important; }
.dia-celula.dia-gtd::after{ background:#8b5cf6!important; box-shadow:none!important; }
/* Marcas na cor do texto do dia (visão anual e mensal), em camadas no mesmo ::before:
   sábado e domingo = traço do canto inferior esquerdo ao superior direito; feriado = traço horizontal no meio. */
.dia-fds, .quad-fds{ --traco-fds:linear-gradient(to bottom right, transparent calc(50% - .7px), currentColor calc(50% - .7px),
                                                currentColor calc(50% + .7px), transparent calc(50% + .7px)); }
.dia-feriado, .quad-feriado{ --traco-feriado:linear-gradient(to bottom, transparent calc(50% - .7px), currentColor calc(50% - .7px),
                                                        currentColor calc(50% + .7px), transparent calc(50% + .7px)); }
.dia-celula.dia-fds::before, .dia-celula.dia-feriado::before,
.dia-card.dia-fds::before, .dia-card.dia-feriado::before,
.legenda .quad-fds::before, .legenda .quad-feriado::before{ content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none;
    background-image:var(--traco-fds, none), var(--traco-feriado, none);
    opacity:.25; }
.legenda .quad-fds, .legenda .quad-feriado,
.dia-card.dia-fds, .dia-card.dia-feriado{ position:relative; }
.legenda .quad{ border-radius:3px; }

/* Terceiro nível de título (/3) nas anotações do Dia — distinto de h2 e do texto normal */
.term-h3{ font-family:var(--sans)!important; font-size:.82em!important; font-weight:700!important;
    color:var(--muted)!important; text-transform:uppercase; letter-spacing:.6px;
    margin:9px 0 2px!important; text-shadow:none!important; }

/* Linha de tarefa capturada para o GTD (marcada com /t nas anotações do Dia) */
.term-tarefa-gtd{ display:flex; align-items:center; gap:8px; flex-wrap:wrap;
    font-size:.93em!important; color:var(--text)!important; font-weight:600;
    background:var(--accent-soft); border-left:3px solid var(--accent);
    border-radius:6px; padding:5px 10px!important; margin:5px 0!important; line-height:1.4!important; }
.term-tarefa-gtd .tg-flag{ font-size:.7em; font-weight:700; letter-spacing:.5px; text-transform:uppercase;
    color:#fff; background:var(--accent); border-radius:4px; padding:1px 6px; }
.term-tarefa-gtd.pendente{ opacity:.85; }

/* Aviso flutuante ao capturar tarefas via /t */
.toast-gtd{ position:fixed; left:50%; bottom:26px; transform:translateX(-50%) translateY(20px);
    background:var(--accent); color:#fff; font-weight:600; font-size:.92em;
    padding:11px 18px; border-radius:10px; box-shadow:0 8px 26px rgba(0,0,0,.22);
    opacity:0; pointer-events:none; transition:opacity .25s, transform .25s; z-index:9999; }
.toast-gtd.aberto{ opacity:1; transform:translateX(-50%) translateY(0); }

/* ---------- Anexos (arquivos anexados às anotações do Dia) ---------- */
.anexos-lista{ display:flex; flex-wrap:wrap; gap:6px; margin-top:8px; }
.anexo-chip{ display:inline-flex; align-items:center; gap:4px; max-width:100%;
    background:var(--term-bg-dark, rgba(0,0,0,.25)); border:1px solid var(--green-border);
    border-radius:4px; padding:3px 6px; font-size:.78em; }
.anexo-chip a{ color:var(--green-normal, var(--text)); text-decoration:none; display:inline-flex;
    align-items:center; gap:4px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; max-width:220px; }
.anexo-chip a:hover{ color:var(--green-bright); text-decoration:underline; }
.anexo-tamanho{ color:var(--green-dim); font-size:.9em; white-space:nowrap; }
.btn-remover-anexo{ background:transparent!important; border:none!important;
    color:var(--vermelho-alerta,#ff4d4d)!important; cursor:pointer; font-size:1em; line-height:1;
    padding:0 2px!important; }
.btn-remover-anexo:hover{ opacity:.7; }
.campo-anexos-info{ font-size:.72em; color:var(--green-dim); margin-top:3px; }

/* ---------- Listas com marcadores ("- item") nas anotações ---------- */
.term-lista{ margin:4px 0 8px 0; padding-left:22px; }
.term-lista li{ font-size:.95em!important; color:var(--text)!important; margin-bottom:3px; line-height:1.55!important; }

/* ---------- Resultados de busca clicáveis (abrem o pop-up de edição) ---------- */
.item-busca{ cursor:pointer; }

/* ---------- Pop-up de edição de anotações (nota/tarefa/financeira/reunião) ---------- */
.modal-box-edicao{ max-width:680px; }
.modal-corpo-edicao{ overflow-y:auto; padding:16px; display:flex; flex-direction:column; gap:14px; }
.campo-edicao label{ display:block; font-size:.78em; color:var(--muted); margin-bottom:4px; text-transform:uppercase; letter-spacing:.4px; }
.campo-edicao input[type="text"], .campo-edicao input[type="date"], .campo-edicao input[type="time"],
.campo-edicao select, .campo-edicao textarea{ width:100%; box-sizing:border-box; }
.me-grid-2{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.me-grid-3{ display:grid; grid-template-columns:1fr 1fr 1fr; gap:12px; }
@media (max-width:560px){ .me-grid-2, .me-grid-3{ grid-template-columns:1fr; } }
.toolbar-edicao{ display:flex; justify-content:space-between; align-items:center; margin-bottom:4px; }
.toolbar-botoes{ display:flex; gap:6px; }
.toolbar-botoes button{ background:var(--surface); color:var(--text)!important; border:1px solid var(--border-strong);
    border-radius:8px; padding:3px 10px; font-size:.82em; cursor:pointer; }
.toolbar-botoes button:hover{ background:var(--surface-2); }
#me-conteudo{ min-height:170px; font-family:'Share Tech Mono','Courier New',monospace; }
.modal-rodape-edicao{ display:flex; align-items:center; gap:10px; padding:12px 16px; border-top:1px solid var(--border); }