/* ODYXPRO - revisão visual legível e padronizada 20260630
   Objetivo: manter a paleta aprovada, melhorar leitura, botões e organização sem quebrar a base PHP. */
:root{
  --odyx-bg:#f3f7f3;
  --odyx-bg2:#eef6f1;
  --odyx-warm:#fff8e8;
  --odyx-surface:#fffefa;
  --odyx-surface2:#f8fffc;
  --odyx-text:#12313a;
  --odyx-muted:#617882;
  --odyx-border:#d8e8e1;
  --odyx-primary:#1f8f83;
  --odyx-primary-dark:#176f66;
  --odyx-primary-soft:#e6f6f1;
  --odyx-sidebar:#114653;
  --odyx-sidebar2:#155b69;
  --odyx-accent:#f2b84b;
  --odyx-danger:#d95d52;
  --odyx-radius:20px;
  --odyx-shadow:0 14px 34px rgba(17,70,83,.10);
  --odyx-shadow-soft:0 8px 22px rgba(17,70,83,.08);
}
*{box-sizing:border-box!important}
html,body{min-height:100%;}
body{
  margin:0!important;
  font-family:Inter,Arial,Helvetica,sans-serif!important;
  color:var(--odyx-text)!important;
  background:
    radial-gradient(circle at 12% 4%, rgba(31,143,131,.16), transparent 28%),
    radial-gradient(circle at 98% 8%, rgba(242,184,75,.20), transparent 30%),
    linear-gradient(135deg,var(--odyx-bg),var(--odyx-bg2) 58%,var(--odyx-warm))!important;
  font-size:14px!important;
  line-height:1.45!important;
}
a{color:var(--odyx-primary-dark)!important;text-decoration:none!important;font-weight:800!important}
a:hover{color:#0e514b!important;text-decoration:none!important}

/* LAYOUT PADRÃO */
.odyx-shell,.layout{
  display:grid!important;
  grid-template-columns:238px minmax(0,1fr)!important;
  min-height:100vh!important;
  background:transparent!important;
}
.odyx-main,.content,.main,.principal{
  padding:24px 28px 46px!important;
  background:transparent!important;
  min-width:0!important;
}
.odyx-sidebar,.sidebar,.menu-lateral,aside:not(.odyx-sidebar){
  width:238px!important;
  min-width:238px!important;
  background:linear-gradient(180deg,var(--odyx-sidebar),var(--odyx-sidebar2))!important;
  color:#fff!important;
  padding:20px 14px!important;
  border:0!important;
  box-shadow:12px 0 34px rgba(17,70,83,.18)!important;
}
.odyx-sidebar{position:sticky!important;top:0!important;height:100vh!important;z-index:5!important}
.sidebar{min-height:100vh!important}
.odyx-brand,.sidebar h3,.menu-title{
  color:#fff!important;
  font-size:17px!important;
  font-weight:950!important;
  letter-spacing:.04em!important;
  margin:0 0 22px!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
}
.odyx-brand .mark{width:38px!important;height:38px!important;border-radius:13px!important;background:#eef8f4!important;display:grid!important;place-items:center!important;color:var(--odyx-primary-dark)!important}
.odyx-nav,.sidebar .menu,.menu-lateral .menu{display:flex!important;flex-direction:column!important;gap:8px!important}
.odyx-nav a,.sidebar a,.menu-lateral a,aside:not(.odyx-sidebar) a{
  display:flex!important;align-items:center!important;gap:10px!important;
  min-height:44px!important;padding:11px 13px!important;border-radius:15px!important;
  color:#eafbf7!important;background:transparent!important;font-weight:900!important;font-size:14px!important;
}
.odyx-nav a:hover,.sidebar a:hover,.menu-lateral a:hover,.odyx-nav a.active,.sidebar a.active,.menu-lateral a.active{
  background:rgba(255,255,255,.14)!important;color:#fff!important;
}
.odyx-nav a.active,.sidebar a.active,.menu-lateral a.active{box-shadow:inset 4px 0 0 var(--odyx-accent)!important}

/* TOPO */
.odyx-topbar,.topbar,.topo,.header,.navbar{
  width:100%!important;
  background:rgba(255,254,250,.95)!important;
  color:var(--odyx-text)!important;
  border:1px solid var(--odyx-border)!important;
  border-radius:24px!important;
  box-shadow:var(--odyx-shadow)!important;
  margin:0 0 18px!important;
}
.odyx-topbar{
  display:flex!important;justify-content:space-between!important;align-items:center!important;gap:18px!important;padding:20px 22px!important;
}
.odyx-title{min-width:0!important}.odyx-title h1{font-size:26px!important;margin:0 0 4px!important;color:var(--odyx-text)!important}.odyx-title p{margin:0!important;color:var(--odyx-muted)!important;font-weight:700!important;max-width:660px!important}.odyx-user{display:flex!important;gap:10px!important;align-items:center!important;justify-content:flex-end!important;flex-wrap:wrap!important}.odyx-pill{background:var(--odyx-surface2)!important;border:1px solid #d7e9e4!important;border-radius:999px!important;padding:9px 14px!important;color:#274e57!important;font-weight:900!important;white-space:nowrap!important}
.topbar{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:16px!important;padding:16px 22px!important}.topbar .title{font-size:18px!important;font-weight:950!important;color:var(--odyx-text)!important}

/* CARDS E PAINÉIS */
.odyx-hero{background:linear-gradient(90deg,rgba(226,247,241,.96),rgba(255,246,222,.96))!important;border:1px solid var(--odyx-border)!important;border-radius:24px!important;padding:22px!important;box-shadow:var(--odyx-shadow)!important;margin-bottom:18px!important}.odyx-hero h2{margin:0 0 6px!important;font-size:24px!important}.odyx-hero p{margin:0!important;color:#4f6871!important;font-weight:700!important}
.odyx-page-card,.odyx-chart-card,.card,.box,.painel,.container,.content-card,.main-card,.patient-header,.orcamento-card,.modal,.modal-content{
  background:rgba(255,254,250,.96)!important;border:1px solid var(--odyx-border)!important;border-radius:22px!important;box-shadow:var(--odyx-shadow)!important;color:var(--odyx-text)!important;
}
.card,.box,.painel,.container,.content-card,.main-card,.odyx-page-card{padding:18px!important}.odyx-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(245px,1fr))!important;gap:16px!important}.odyx-card{display:flex!important;gap:14px!important;align-items:flex-start!important;background:rgba(255,254,250,.96)!important;border:1px solid var(--odyx-border)!important;border-bottom:4px solid rgba(242,184,75,.64)!important;border-radius:22px!important;padding:18px!important;min-height:110px!important;box-shadow:var(--odyx-shadow-soft)!important;transition:.18s ease!important;color:var(--odyx-text)!important}.odyx-card:hover{transform:translateY(-2px)!important;box-shadow:0 18px 38px rgba(17,70,83,.15)!important}.odyx-card h3{margin:4px 0 6px!important;color:var(--odyx-text)!important}.odyx-card p{margin:0!important;color:#55717b!important;font-weight:700!important}.odyx-icon{width:44px!important;height:44px!important;border-radius:15px!important;background:#eaf7f4!important;color:#176f66!important;display:grid!important;place-items:center!important;font-size:22px!important;flex:0 0 auto!important}
.odyx-section-title{font-size:13px!important;font-weight:950!important;color:#557073!important;letter-spacing:.12em!important;text-transform:uppercase!important;margin:0 0 12px!important}

/* DASHBOARD: somente indicadores e gráficos, sem quebrar texto */
.odyx-kpis,.dashboard-kpis{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important;margin:18px 0 22px!important}.odyx-kpi{background:rgba(255,254,250,.97)!important;border:1px solid var(--odyx-border)!important;border-left:5px solid var(--odyx-primary)!important;border-radius:20px!important;padding:16px 18px!important;box-shadow:var(--odyx-shadow-soft)!important;display:grid!important;grid-template-columns:1fr auto!important;grid-template-areas:"label number" "small number"!important;gap:4px 12px!important;align-items:center!important;min-height:88px!important;overflow:hidden!important}.odyx-kpi span{grid-area:label!important;color:#536d75!important;font-weight:950!important;font-size:13px!important;line-height:1.25!important;word-break:normal!important}.odyx-kpi b{grid-area:number!important;font-size:24px!important;color:#0d2630!important;white-space:nowrap!important;text-align:right!important}.odyx-kpi small{grid-area:small!important;color:#768a94!important;font-weight:800!important;font-size:12px!important;white-space:normal!important;line-height:1.25!important}.odyx-dashboard-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important}.odyx-chart-card{padding:20px!important}.odyx-chart-card.wide{grid-column:1 / -1!important}.odyx-chart-card h2{margin:0 0 16px!important;font-size:18px!important;color:var(--odyx-text)!important}.odyx-bars{height:230px!important;display:flex!important;align-items:end!important;gap:14px!important;padding:20px 8px 0!important}.odyx-bar-col{flex:1!important;height:100%!important;display:flex!important;flex-direction:column!important;justify-content:flex-end!important;align-items:center!important;gap:8px!important;min-width:0!important}.odyx-bar{width:78%!important;min-height:12px!important;max-width:72px!important;border-radius:16px 16px 8px 8px!important;background:linear-gradient(180deg,var(--odyx-primary),#5bbfa8)!important;position:relative!important;box-shadow:0 10px 18px rgba(31,143,131,.18)!important}.odyx-bar span{position:absolute!important;top:-23px!important;left:50%!important;transform:translateX(-50%)!important;font-size:11px!important;font-weight:900!important;color:#48606a!important;white-space:nowrap!important}.odyx-bar-col small{font-weight:900!important;color:#667d86!important}.odyx-meter{height:18px!important;background:#e6f1ed!important;border-radius:999px!important;overflow:hidden!important;margin:10px 0 18px!important}.odyx-meter span{display:block!important;height:100%!important;background:linear-gradient(90deg,var(--odyx-primary),var(--odyx-accent))!important;border-radius:999px!important}.odyx-legend{display:flex!important;justify-content:space-between!important;border-top:1px solid #e1ece8!important;padding:12px 0!important;color:#536d75!important}.odyx-legend strong{color:#0d2630!important}.odyx-rowbar{display:grid!important;grid-template-columns:150px 1fr!important;gap:12px!important;align-items:center!important;margin:12px 0!important}.odyx-rowbar b{display:block!important;color:#102b36!important}.odyx-rowbar small{color:#6d838c!important;font-weight:800!important}.odyx-rowbar span{height:14px!important;background:#e6f1ed!important;border-radius:999px!important;overflow:hidden!important}.odyx-rowbar i{display:block!important;height:100%!important;background:linear-gradient(90deg,var(--odyx-primary),var(--odyx-accent))!important;border-radius:999px!important}.odyx-attention{display:flex!important;align-items:center!important;gap:14px!important;background:#f5fbf8!important;border:1px solid #dce9e3!important;border-radius:16px!important;padding:12px!important;margin:10px 0!important}.odyx-attention strong{font-size:28px!important;color:#0d2630!important}.odyx-attention span{font-weight:900!important;color:#536d75!important}

/* BOTÕES E FORMULÁRIOS */
button,.btn,a.btn,input[type=submit],input[type=button],.button,.odyx-btn,.salvar,.novo{
  background:var(--odyx-primary)!important;color:#fff!important;border:0!important;border-radius:13px!important;font-weight:900!important;text-decoration:none!important;box-shadow:0 8px 18px rgba(31,143,131,.18)!important;padding:10px 14px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;min-height:38px!important;line-height:1.15!important;cursor:pointer!important;white-space:nowrap!important;
}
button:hover,.btn:hover,a.btn:hover,input[type=submit]:hover,input[type=button]:hover,.button:hover,.odyx-btn:hover{background:var(--odyx-primary-dark)!important;color:#fff!important}.btn-danger,.danger,.excluir,.delete,.btn-del{background:var(--odyx-danger)!important;color:#fff!important}.btn-warning,.warning{background:#e39b25!important;color:#fff!important}.btn-secondary,.secondary,.btn-nav,.limpar,.cancelar,.voltar{background:#eaf7f4!important;color:#244b54!important;border:1px solid #d3e5df!important;box-shadow:none!important}.btn-whats{background:#21a66f!important;color:#fff!important}.btn-ficha,.btn-edit{background:var(--odyx-primary)!important;color:#fff!important}.logout,a.logout{background:var(--odyx-danger)!important;color:#fff!important;border-radius:999px!important;padding:10px 14px!important;box-shadow:0 8px 18px rgba(217,93,82,.16)!important}
.btn *,button *,a.btn *{color:inherit!important}input,select,textarea{border:1px solid #cbdcd8!important;border-radius:12px!important;background:#fff!important;color:var(--odyx-text)!important;outline:none!important;padding:10px 12px!important;min-height:38px!important}input:focus,select:focus,textarea:focus{border-color:var(--odyx-primary)!important;box-shadow:0 0 0 3px rgba(31,143,131,.13)!important}label{color:#47606a!important;font-weight:850!important}

/* TABELAS LEGÍVEIS */
.table-wrap,.odyx-table-scroll{width:100%!important;overflow-x:auto!important}table{width:100%!important;border-collapse:separate!important;border-spacing:0 8px!important;min-width:920px!important}th{background:#edf5f2!important;color:#36515a!important;font-size:12px!important;text-transform:uppercase!important;letter-spacing:.04em!important;padding:12px!important;text-align:left!important;white-space:nowrap!important}td{background:#fffefa!important;color:#102b36!important;border-top:1px solid #dde9e5!important;border-bottom:1px solid #dde9e5!important;padding:11px 12px!important;vertical-align:middle!important}tr td:first-child{border-left:1px solid #dde9e5!important;border-radius:13px 0 0 13px!important}tr td:last-child{border-right:1px solid #dde9e5!important;border-radius:0 13px 13px 0!important}.acoes{display:flex!important;align-items:center!important;gap:7px!important;flex-wrap:nowrap!important}.acoes .btn,.acoes a.btn,td .btn,td a.btn{font-size:12px!important;padding:8px 10px!important;min-height:34px!important;border-radius:11px!important;box-shadow:0 6px 14px rgba(31,143,131,.14)!important}td:last-child{width:285px!important;min-width:285px!important}.muted{color:#78909c!important;font-size:12px!important;font-weight:600!important}.foto-mini{width:44px!important;height:44px!important;border-radius:12px!important;object-fit:cover!important;border:1px solid #d6e5df!important;background:#f4f8f6!important}

/* Mensagens */
.msg-ok{background:#e6f6f1!important;color:#146a60!important;border:1px solid #cbe9df!important;border-radius:14px!important;padding:12px 14px!important;margin-bottom:12px!important;font-weight:800!important}.msg-erro{background:#fdecea!important;color:#a93b32!important;border:1px solid #f4cbc6!important;border-radius:14px!important;padding:12px 14px!important;margin-bottom:12px!important;font-weight:800!important}.msg-info{background:#eaf5ff!important;color:#24526c!important;border:1px solid #cfe5f5!important;border-radius:14px!important;padding:12px 14px!important;margin:12px 0!important;font-weight:800!important}

/* Agenda não deve herdar botão global nos botões pequenos internos */
.consulta-nome-btn,.more-btn,.mini-more-btn,.modal-close,.menu-icon-btn,.menu-delete-btn{box-shadow:none!important;min-height:auto!important}.consulta-nome-btn{background:transparent!important;color:#1e293b!important;padding:0!important;border-radius:0!important;text-align:left!important;justify-content:flex-start!important}.more-btn,.mini-more-btn,.modal-close,.menu-icon-btn{background:#f1f7f4!important;color:#244b54!important;border:1px solid #d8e8e1!important}.menu-status-btn{color:#fff!important}

/* Responsivo */
@media(max-width:1200px){.odyx-kpis,.dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}.odyx-dashboard-grid{grid-template-columns:1fr!important}}
@media(max-width:900px){.odyx-shell,.layout{display:block!important}.odyx-sidebar,.sidebar,.menu-lateral{position:relative!important;width:100%!important;min-width:100%!important;height:auto!important;min-height:auto!important}.odyx-main,.content,.main,.principal{padding:16px!important}.odyx-nav,.sidebar .menu,.menu-lateral .menu{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}.odyx-topbar,.topbar{flex-direction:column!important;align-items:flex-start!important}.odyx-user{justify-content:flex-start!important}.odyx-grid{grid-template-columns:1fr!important}.form-grid{grid-template-columns:1fr!important}}
@media(max-width:640px){.odyx-nav,.sidebar .menu,.menu-lateral .menu,.odyx-kpis,.dashboard-kpis{grid-template-columns:1fr!important}.odyx-rowbar{grid-template-columns:1fr!important}.acoes{flex-wrap:wrap!important}td:last-child{min-width:220px!important;width:220px!important}}

/* ===== AJUSTE SOLICITADO 20260702: botões por função, leitura e cadastro rápido ===== */
.odyx-clinic-switch{display:inline-flex!important;align-items:center!important;gap:8px!important;background:#fffefa!important;border:1px solid #d8e8e1!important;border-radius:999px!important;padding:5px 8px 5px 12px!important;box-shadow:0 8px 18px rgba(17,70,83,.08)!important;white-space:nowrap!important}
.odyx-clinic-switch select{min-height:32px!important;border:0!important;background:transparent!important;font-weight:900!important;color:#274e57!important;padding:4px 24px 4px 4px!important;box-shadow:none!important;max-width:210px!important}
.odyx-user{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important}.usuario-wrap{display:flex!important;align-items:center!important;gap:10px!important;justify-content:flex-end!important;flex-wrap:wrap!important}
/* paleta de botões elegante por ação */
.btn,.odyx-btn,button,input[type=submit],.button{letter-spacing:.01em!important;color:#fff!important;text-shadow:none!important;min-height:36px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;line-height:1.15!important;white-space:nowrap!important}
.btn-ficha,.btn[href*="ficha_paciente"],a[href*="ficha_paciente"].btn{background:linear-gradient(135deg,#2563eb,#3b82f6)!important;box-shadow:0 10px 20px rgba(37,99,235,.18)!important;color:#fff!important}
.btn-edit,.btn[href*="editar"],a[href*="editar"].btn{background:linear-gradient(135deg,#7c3aed,#9b6cff)!important;box-shadow:0 10px 20px rgba(124,58,237,.18)!important;color:#fff!important}
.btn-whats,.btn[href*="wa.me"],a[href*="wa.me"].btn{background:linear-gradient(135deg,#128c7e,#25d366)!important;box-shadow:0 10px 20px rgba(18,140,126,.18)!important;color:#fff!important}
.btn-create,.btn[href*="novo"],a[href*="novo"].btn,.btn[href*="nova"],a[href*="nova"].btn{background:linear-gradient(135deg,#0f766e,#14b8a6)!important;box-shadow:0 10px 20px rgba(20,184,166,.18)!important;color:#fff!important}
.btn-danger,.danger,.excluir,.delete,a[href*="excluir"].btn{background:linear-gradient(135deg,#e05252,#ef6a5b)!important;box-shadow:0 10px 20px rgba(224,82,82,.18)!important;color:#fff!important}
.btn-nav,.btn-secondary,.limpar,.cancelar,.voltar{background:linear-gradient(135deg,#edf7f3,#fffefa)!important;color:#244b54!important;border:1px solid #d7e8e2!important;box-shadow:0 6px 14px rgba(17,70,83,.06)!important}
.acoes{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;justify-content:flex-start!important}.acoes .btn{padding:9px 12px!important;border-radius:12px!important;font-size:13px!important;font-weight:900!important;min-width:auto!important}
/* pacientes: tabela menos quebrada */
.content table td,.main table td{vertical-align:middle!important}.content table td:last-child,.main table td:last-child{min-width:260px!important}.content table td:nth-child(2){min-width:260px!important}.content table td:nth-child(3){min-width:120px!important;word-break:normal!important}.content table td:nth-child(4){min-width:115px!important}
/* botão WhatsApp preservado visível */
.btn-whats::before{content:'💬';font-size:13px}.btn-ficha::before{content:'📄';font-size:13px}.btn-edit::before{content:'✏️';font-size:13px}.btn-danger::before{content:'🗑️';font-size:13px}
/* cadastro rápido na agenda */
.novo-paciente-inline{margin-top:10px!important;background:#fff8e8!important;border:1px solid #f1d49b!important;color:#5b4316!important;border-radius:16px!important;padding:12px!important;font-weight:800!important}.novo-paciente-inline input{background:#fff!important}
.autocomplete-list{z-index:9999!important}.modal{max-width:720px!important}.modal-body{max-height:calc(100vh - 190px)!important;overflow:auto!important}.modal-actions{position:sticky!important;bottom:0!important;background:linear-gradient(180deg,rgba(255,254,250,.86),#fffefa)!important;padding-top:12px!important}
/* agenda: deixar botões de popover mais claros */
.menu-icon-btn{background:#fff!important;color:#164b55!important;border:1px solid #d7e8e2!important;border-radius:12px!important;box-shadow:0 6px 14px rgba(17,70,83,.08)!important}.menu-status-confirmado{background:#dcfce7!important;color:#166534!important}.menu-status-falta{background:#fff2cf!important;color:#7a4b00!important}.menu-status-finalizado{background:#dbeafe!important;color:#1d4ed8!important}.menu-delete-btn{background:#ffe7e7!important;color:#b91c1c!important}
@media(max-width:1050px){.odyx-kpis,.dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}.content table td:last-child,.main table td:last-child{min-width:220px!important}}

/* ===== AJUSTE FINAL 20260702B: cores diferentes por botão e cadastro rápido visível ===== */
a.btn.btn-ficha, button.btn-ficha, .acoes a.btn-ficha, td a.btn-ficha {background:linear-gradient(135deg,#2563eb,#60a5fa)!important;color:#fff!important;border:0!important;box-shadow:0 8px 18px rgba(37,99,235,.20)!important;}
a.btn.btn-edit, button.btn-edit, .acoes a.btn-edit, td a.btn-edit {background:linear-gradient(135deg,#7c3aed,#a78bfa)!important;color:#fff!important;border:0!important;box-shadow:0 8px 18px rgba(124,58,237,.20)!important;}
a.btn.btn-whats, button.btn-whats, .acoes a.btn-whats, td a.btn-whats {background:linear-gradient(135deg,#16a34a,#22c55e)!important;color:#fff!important;border:0!important;box-shadow:0 8px 18px rgba(22,163,74,.20)!important;}
a.btn.btn-danger, button.btn-danger, .acoes a.btn-danger, td a.btn-danger, a.btn.excluir {background:linear-gradient(135deg,#dc2626,#fb7185)!important;color:#fff!important;border:0!important;box-shadow:0 8px 18px rgba(220,38,38,.18)!important;}
a.btn.btn-create, button.btn-create, .btn-create {background:linear-gradient(135deg,#0f766e,#14b8a6)!important;color:#fff!important;border:0!important;box-shadow:0 8px 18px rgba(20,184,166,.20)!important;}
a.btn.btn-search, button.btn-search, .btn-search {background:linear-gradient(135deg,#0f766e,#2dd4bf)!important;color:#fff!important;}
a.btn.btn-clean, button.btn-clean, .btn-clean, .limpar {background:linear-gradient(135deg,#f8fafc,#e2e8f0)!important;color:#334155!important;border:1px solid #cbd5e1!important;box-shadow:0 5px 12px rgba(51,65,85,.08)!important;}
.acoes .btn, td .btn {font-size:12px!important;padding:8px 11px!important;border-radius:12px!important;min-height:34px!important;}
.quick-patient-grid{display:grid!important;grid-template-columns:1fr 160px auto!important;gap:10px!important;align-items:center!important;margin-top:10px!important;}
.novo-paciente-option{background:#e7f8f3!important;color:#0f766e!important;font-weight:950!important;border-left:4px solid #14b8a6!important;}
.autocomplete-item{padding:10px 12px!important;cursor:pointer!important;border-bottom:1px solid #e5eee9!important;background:#fff!important;color:#17323a!important;}
.autocomplete-item:hover{background:#f0fbf7!important;}
@media(max-width:720px){.quick-patient-grid{grid-template-columns:1fr!important}}


/* ===== ODYXPRO 20260702C - ACABAMENTO VISUAL FINAL ===== */
:root{
  --odyx-blue:#3b82f6;
  --odyx-blue-light:#60a5fa;
  --odyx-green:#16a34a;
  --odyx-orange:#f97316;
  --odyx-purple:#7c3aed;
  --odyx-red:#dc2626;
  --odyx-soft-blue:#e8f4ff;
}
/* Botões principais por função */
.btn-search,button.btn-search,input.btn-search,
form button[type="submit"].btn-search{
  background:linear-gradient(135deg,#16a34a,#22c55e)!important;color:#fff!important;border:0!important;
  box-shadow:0 10px 20px rgba(22,163,74,.22)!important;
}
.btn-clear,a.btn-clear,button.btn-clear,.limpar.btn-clear{
  background:linear-gradient(135deg,#f97316,#fb923c)!important;color:#fff!important;border:0!important;
  box-shadow:0 10px 20px rgba(249,115,22,.20)!important;
}
.btn-new-patient,a.btn-new-patient,button.btn-new-patient,
.btn-create.btn-new-patient{
  background:linear-gradient(135deg,#38bdf8,#3b82f6)!important;color:#fff!important;border:0!important;
  box-shadow:0 10px 20px rgba(59,130,246,.22)!important;
}
.btn-primary:not(.btn-search):not(.btn-new-patient){
  background:linear-gradient(135deg,#2c8f84,#36b59f)!important;color:#fff!important;
}
/* Ações em linha, sem quebrar Excluir sozinho */
td .acoes,.acoes.patient-actions,.patient-actions,.acoes{
  display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;
  flex-wrap:nowrap!important;white-space:nowrap!important;min-width:0!important;
}
td:last-child,th:last-child{min-width:390px!important;width:390px!important;max-width:none!important;}
.acoes .btn,.patient-actions .btn,td .acoes a.btn{
  flex:0 0 auto!important;font-size:12px!important;padding:9px 11px!important;min-height:36px!important;
}
.btn-ficha{background:linear-gradient(135deg,#2563eb,#60a5fa)!important;color:#fff!important;}
.btn-edit{background:linear-gradient(135deg,#7c3aed,#a78bfa)!important;color:#fff!important;}
.btn-whats{background:linear-gradient(135deg,#16a34a,#22c55e)!important;color:#fff!important;}
.btn-danger,.btn-excluir,.excluir,.danger{background:linear-gradient(135deg,#dc2626,#fb7185)!important;color:#fff!important;}
.btn-add-phone{background:linear-gradient(135deg,#0ea5e9,#38bdf8)!important;color:#fff!important;}
/* Agenda: remover roxo da aba ativa */
.view-tabs a.active,.agenda-tabs a.active,.tab-view.active,.period-bar .view-tabs a.active,
.odyx-tabs .active:not(.odyx-tab){
  background:linear-gradient(135deg,#dff1ff,#cfe9ff)!important;
  color:#1976b9!important;border:1px solid #b7dfff!important;box-shadow:0 8px 18px rgba(25,118,185,.10)!important;
}
.view-tabs a,.agenda-tabs a,.tab-view{
  background:#fffefa!important;color:#18313a!important;border:1px solid #dbe8e4!important;box-shadow:none!important;
}
.period-actions .btn-primary{background:linear-gradient(135deg,#38bdf8,#3b82f6)!important;color:#fff!important;}
/* Topo profissional com menu */
.odyx-profile{position:relative!important;display:inline-flex!important;align-items:center!important;}
.odyx-profile-btn{background:#f7fcfa!important;color:#274e57!important;border:1px solid #d7e9e4!important;border-radius:999px!important;padding:9px 14px!important;font-weight:950!important;box-shadow:0 8px 18px rgba(17,70,83,.08)!important;min-height:40px!important;}
.odyx-profile-btn:hover{background:#eef8f4!important;color:#123f4a!important;}
.odyx-profile-menu{display:none;position:absolute;right:0;top:calc(100% + 8px);min-width:190px;background:#fffefa;border:1px solid #d8e8e1;border-radius:16px;box-shadow:0 18px 40px rgba(17,70,83,.20);padding:8px;z-index:9999;}
.odyx-profile.open .odyx-profile-menu,.odyx-profile-menu.open{display:block!important;}
.odyx-profile-menu a{display:flex!important;align-items:center!important;gap:8px!important;padding:10px 11px!important;border-radius:12px!important;color:#274e57!important;font-weight:900!important;background:transparent!important;box-shadow:none!important;}
.odyx-profile-menu a:hover{background:#eef8f4!important;color:#0f766e!important;}
.odyx-profile-email{display:block;padding:8px 11px 10px;color:#6b7f88;font-size:12px;font-weight:800;border-bottom:1px solid #e1ece8;margin-bottom:4px;word-break:break-all;}
/* autocomplete novo paciente */
.novo-paciente-option{background:#eaf7ff!important;color:#145b89!important;font-weight:950!important;border-left:4px solid #38bdf8!important;}
.quick-patient-grid{display:grid!important;grid-template-columns:1fr 1fr auto!important;gap:10px!important;align-items:center!important;margin-top:10px!important;}
.quick-patient-grid input{min-width:160px!important;}
@media(max-width:1100px){
  td:last-child,th:last-child{min-width:310px!important;width:310px!important;}
  .acoes .btn,.patient-actions .btn,td .acoes a.btn{font-size:0!important;padding:9px 10px!important;}
  .acoes .btn::before,.patient-actions .btn::before{font-size:14px!important;margin:0!important;}
}
@media(max-width:760px){
  td .acoes,.acoes.patient-actions,.patient-actions,.acoes{flex-wrap:wrap!important;}
  .quick-patient-grid{grid-template-columns:1fr!important;}
}


/* ===== ODYXPRO 20260706 - RESPONSIVIDADE E AÇÕES SEM QUEBRAR TABELAS ===== */
.table-wrap,.table-responsive,.odyx-table-scroll{width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch}
table{min-width:720px!important}
table th:last-child,table td:last-child{width:auto!important;min-width:0!important;max-width:none!important;white-space:normal!important}
table td .acoes,table td .actions,table td .patient-actions{display:flex!important;align-items:center!important;gap:7px!important;flex-wrap:nowrap!important;white-space:nowrap!important;min-width:max-content!important}
@media(max-width:760px){table{min-width:680px!important}table td .acoes,table td .actions,table td .patient-actions{flex-wrap:wrap!important;min-width:190px!important}}

/* ===== Dashboard com filtro de período 20260707 ===== */
.odyx-dashboard-filter{
  display:grid!important;
  grid-template-columns:minmax(260px,1fr) auto!important;
  gap:16px!important;
  align-items:end!important;
  background:rgba(255,254,250,.96)!important;
  border:1px solid var(--odyx-border)!important;
  border-radius:22px!important;
  padding:17px 18px!important;
  box-shadow:var(--odyx-shadow-soft)!important;
  margin:0 0 18px!important;
}
.odyx-filter-heading{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;min-width:0!important}
.odyx-filter-heading>div:first-child{display:flex!important;flex-direction:column!important;gap:3px!important;min-width:0!important}
.odyx-filter-label{font-size:12px!important;letter-spacing:.09em!important;text-transform:uppercase!important;font-weight:950!important;color:#607781!important}
.odyx-filter-heading strong{font-size:18px!important;color:#112d36!important}
.odyx-filter-heading small{color:#70858d!important;font-weight:750!important}
.odyx-filter-shortcuts{display:flex!important;gap:8px!important;flex-wrap:wrap!important;justify-content:flex-end!important}
.odyx-period-btn{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  padding:9px 13px!important;border:1px solid #d2e4de!important;border-radius:12px!important;
  background:#eef7f4!important;color:#28535a!important;font-size:13px!important;font-weight:950!important;
  box-shadow:none!important;white-space:nowrap!important
}
.odyx-period-btn:hover{background:#e2f3ed!important;color:#174f4b!important}
.odyx-period-btn.active{background:linear-gradient(135deg,var(--odyx-primary),#4bb49f)!important;color:#fff!important;border-color:transparent!important;box-shadow:0 8px 16px rgba(31,143,131,.18)!important}
.odyx-custom-period{display:grid!important;grid-template-columns:150px 150px auto!important;gap:10px!important;align-items:end!important}
.odyx-custom-period label{display:flex!important;flex-direction:column!important;gap:5px!important;color:#536d75!important;font-size:12px!important;font-weight:950!important}
.odyx-custom-period input{min-height:40px!important;padding:8px 10px!important}
.odyx-filter-submit{min-height:40px!important;white-space:nowrap!important;padding:9px 14px!important}
.odyx-filter-warning{grid-column:1 / -1!important;background:#fff4d8!important;border:1px solid #eddaaa!important;border-radius:13px!important;padding:10px 12px!important;color:#72561d!important;font-weight:850!important}
.odyx-chart-title-row{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:14px!important;margin-bottom:6px!important}
.odyx-chart-title-row h2{margin-bottom:2px!important}
.odyx-chart-title-row small{color:#6d838c!important;font-weight:800!important}
.odyx-chart-title-row>strong{font-size:20px!important;color:#15333b!important;white-space:nowrap!important}
.odyx-bars-wrap{overflow-x:auto!important;overflow-y:visible!important;padding:4px 2px 8px!important;scrollbar-width:thin!important}
.odyx-bars.many{min-width:max(760px,calc(var(--odyx-chart-count, 14) * 64px))!important}
.odyx-bars.many .odyx-bar-col{min-width:54px!important}

@media(max-width:1180px){
  .odyx-dashboard-filter{grid-template-columns:1fr!important;align-items:stretch!important}
  .odyx-custom-period{grid-template-columns:repeat(2,minmax(150px,1fr)) auto!important}
}
@media(max-width:760px){
  .odyx-filter-heading{align-items:flex-start!important;flex-direction:column!important}
  .odyx-filter-shortcuts{justify-content:flex-start!important}
  .odyx-custom-period{grid-template-columns:1fr!important}
  .odyx-filter-submit{width:100%!important}
  .odyx-chart-title-row{flex-direction:column!important}
}
