/* Vida & Saúde | Painel do Fitoterapeuta | V234
   Passada conjunta desktop + mobile.
   Objetivo: preservar a geometria de referência já calibrada em 1448x1086 e
   estabilizar as mesmas 13 áreas em notebook, tablet e mobile sem zoom/scale. */

/* Base segura para as 13 áreas. */
body.professional-visual-v234 .professional-section,
body.professional-visual-v234 .professional-section > *{
  min-width:0!important;
  box-sizing:border-box!important;
}
body.professional-visual-v234 .professional-section img,
body.professional-visual-v234 .professional-section svg{
  max-width:100%;
}

/* =========================================================
   DESKTOP PRINCIPAL 1448x1086
   Mantém os microfits V231/V232/V233 e fecha diferenças de shell.
   ========================================================= */
@media (min-width:1440px) and (max-width:1535px) and (min-height:1000px){
  body.professional-visual-v234 .professional-main{
    padding-right:23px!important;
  }
  body.professional-visual-v234 .professional-header-context{
    align-self:center!important;
  }
  body.professional-visual-v234 .professional-header-title{
    line-height:1.04!important;
    white-space:nowrap!important;
  }
  body.professional-visual-v234 .professional-header-summary{
    line-height:1.2!important;
  }

  /* Os heróis de todas as áreas ficam recortados no próprio card e não
     deixam a botânica invadir CTAs, cabeçalho ou cards abaixo. */
  body.professional-visual-v234 #professional-clients .v196-clients-hero,
  body.professional-visual-v234 #professional-agenda .v197-agenda-hero,
  body.professional-visual-v234 #professional-evolution .v198-evolution-hero,
  body.professional-visual-v234 #professional-attendances .v199-attendance-hero,
  body.professional-visual-v234 #professional-telehealth .tele201-hero,
  body.professional-visual-v234 #professional-records .rec201-hero,
  body.professional-visual-v234 #professional-consents .consents202-hero,
  body.professional-visual-v234 #professional-guidance .v163-guidance-intro,
  body.professional-visual-v234 #professional-finance .v203-finance-hero,
  body.professional-visual-v234 #professional-copilot .copilot203-hero,
  body.professional-visual-v234 #professional-reports .reports170-priority,
  body.professional-visual-v234 #professional-settings .v172-profile-hero{
    overflow:hidden!important;
  }

  /* Registros e Copilot tinham o maior risco de compressão quando o conteúdo
     real variava. Mantemos os tracks da referência sem permitir min-content. */
  body.professional-visual-v234 #professional-records .rec201-workspace,
  body.professional-visual-v234 #professional-copilot .copilot203-grid{
    min-width:0!important;
  }
  body.professional-visual-v234 #professional-records .rec201-workspace > *,
  body.professional-visual-v234 #professional-copilot .copilot203-grid > *{
    min-width:0!important;
  }
}

/* =========================================================
   NOTEBOOK / DESKTOP COMPACTO 1366, 1280 e 1024
   Sem escala proporcional. A composição reduz colunas quando necessário.
   ========================================================= */
@media (min-width:1024px) and (max-width:1439px){
  body.professional-visual-v234 .professional-main{
    overflow-x:hidden!important;
  }
  body.professional-visual-v234 .professional-section{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  body.professional-visual-v234 .professional-section > *{
    max-width:100%!important;
  }

  body.professional-visual-v234 #professional-records .rec201-workspace,
  body.professional-visual-v234 #professional-telehealth .tele201-main-grid,
  body.professional-visual-v234 #professional-copilot .copilot203-grid,
  body.professional-visual-v234 #professional-consents .consents202-layout,
  body.professional-visual-v234 #professional-guidance .guidance202-main-grid{
    min-width:0!important;
  }

  body.professional-visual-v234 #professional-agenda .v197-agenda-hero::before,
  body.professional-visual-v234 #professional-evolution .v198-evolution-hero::after,
  body.professional-visual-v234 #professional-consents .consents202-hero-leaves,
  body.professional-visual-v234 #professional-guidance .v163-guidance-intro::after,
  body.professional-visual-v234 #professional-finance .v203-finance-hero::before,
  body.professional-visual-v234 #professional-copilot .copilot203-hero::before{
    max-width:42%!important;
  }
}

/* 1024: impedir textos longos do topo de disputarem largura com busca/perfil. */
@media (min-width:1024px) and (max-width:1151px){
  body.professional-visual-v234 .professional-header-title{
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  body.professional-visual-v234 #professional-records .rec201-hero-copy h2,
  body.professional-visual-v234 #professional-consents .consents202-hero-copy h3,
  body.professional-visual-v234 #professional-guidance .v163-guidance-intro h2,
  body.professional-visual-v234 #professional-finance .v203-finance-hero-copy h2{
    overflow-wrap:anywhere!important;
  }
}

/* =========================================================
   TABLET + MOBILE, 1023 para baixo
   Shell único, cards com largura real e sem qualquer elemento expandindo o viewport.
   ========================================================= */
@media (max-width:1023px){
  body.professional-visual-v234 .professional-main,
  body.professional-visual-v234 .professional-section,
  body.professional-visual-v234 .professional-section > *{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }

  body.professional-visual-v234 .professional-section button,
  body.professional-visual-v234 .professional-section input,
  body.professional-visual-v234 .professional-section select,
  body.professional-visual-v234 .professional-section textarea{
    max-width:100%!important;
    box-sizing:border-box!important;
  }

  /* Botânica sempre decorativa e contida no hero em mobile. */
  body.professional-visual-v234 #professional-agenda .v197-agenda-hero::before,
  body.professional-visual-v234 #professional-evolution .v198-evolution-hero::after,
  body.professional-visual-v234 #professional-consents .consents202-hero-leaves,
  body.professional-visual-v234 #professional-guidance .v163-guidance-intro::after,
  body.professional-visual-v234 #professional-finance .v203-finance-hero::before,
  body.professional-visual-v234 #professional-copilot .copilot203-hero::before{
    pointer-events:none!important;
    max-width:72%!important;
  }

  /* Registros Profissionais: o hero anterior ficava excessivamente alto em
     430/390/360. Texto em cima, resumo 2x2 abaixo. */
  body.professional-visual-v234 #professional-records .rec201-hero{
    grid-template-columns:minmax(0,1fr)!important;
    gap:12px!important;
    min-height:0!important;
    height:auto!important;
    padding:17px 16px!important;
    align-items:start!important;
  }
  body.professional-visual-v234 #professional-records .rec201-emblem{
    display:none!important;
  }
  body.professional-visual-v234 #professional-records .rec201-hero-copy{
    z-index:2!important;
    max-width:100%!important;
  }
  body.professional-visual-v234 #professional-records .rec201-hero-copy h2{
    font-size:23px!important;
    line-height:1.08!important;
  }
  body.professional-visual-v234 #professional-records .rec201-hero-copy p{
    max-width:330px!important;
    margin-top:7px!important;
    font-size:9.5px!important;
    line-height:1.45!important;
  }
  body.professional-visual-v234 #professional-records .rec201-hero-metrics{
    grid-column:auto!important;
    width:100%!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:0!important;
  }
  body.professional-visual-v234 #professional-records .rec201-hero-metrics article{
    min-height:72px!important;
    padding:10px 12px!important;
    border-top:1px solid rgba(229,208,167,.22)!important;
  }
  body.professional-visual-v234 #professional-records .rec201-hero-metrics article:nth-child(odd){
    border-left:0!important;
  }
  body.professional-visual-v234 #professional-records .rec201-hero-metrics strong{
    font-size:24px!important;
  }
  body.professional-visual-v234 #professional-records .rec201-workspace{
    grid-template-columns:minmax(0,1fr)!important;
    gap:10px!important;
  }

  /* Consentimentos: elimina o título estreito/vertical e mantém os indicadores
     em 2 colunas, coerentes com Clientes, Agenda e Evolução. */
  body.professional-visual-v234 #professional-consents .consents202-hero{
    grid-template-columns:minmax(0,1fr)!important;
    min-height:0!important;
    height:auto!important;
    padding:18px 16px!important;
    text-align:left!important;
  }
  body.professional-visual-v234 #professional-consents .consents202-emblem{
    display:none!important;
  }
  body.professional-visual-v234 #professional-consents .consents202-hero-copy{
    position:relative!important;
    z-index:2!important;
    max-width:340px!important;
  }
  body.professional-visual-v234 #professional-consents .consents202-hero-copy h3{
    max-width:330px!important;
    font-size:24px!important;
    line-height:1.08!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }
  body.professional-visual-v234 #professional-consents .consents202-hero-copy p{
    max-width:330px!important;
    font-size:10.5px!important;
    line-height:1.48!important;
  }
  body.professional-visual-v234 #professional-consents .consents202-hero-copy .btn,
  body.professional-visual-v234 #professional-consents .consents202-hero .btn{
    width:100%!important;
    max-width:330px!important;
  }
  body.professional-visual-v234 #professional-consents .consents202-kpis{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  body.professional-visual-v234 #professional-consents .consents202-kpis article{
    min-height:102px!important;
    padding:10px!important;
    grid-template-columns:40px minmax(0,1fr)!important;
    gap:8px!important;
  }
  body.professional-visual-v234 #professional-consents .consents202-kpi-icon{
    width:38px!important;
    height:38px!important;
  }
  body.professional-visual-v234 #professional-consents .consents202-kpis strong{
    font-size:24px!important;
  }
  body.professional-visual-v234 #professional-consents .consents202-layout{
    grid-template-columns:minmax(0,1fr)!important;
    gap:10px!important;
  }

  /* Orientações: hero e controles em fluxo vertical natural. */
  body.professional-visual-v234 #professional-guidance .v163-guidance-intro{
    min-height:0!important;
    height:auto!important;
    padding:18px 16px!important;
    text-align:left!important;
  }
  body.professional-visual-v234 #professional-guidance .v163-guidance-intro h2{
    max-width:330px!important;
    font-size:23px!important;
    line-height:1.1!important;
  }
  body.professional-visual-v234 #professional-guidance .v163-guidance-intro p{
    max-width:330px!important;
    font-size:10.5px!important;
    line-height:1.48!important;
  }
  body.professional-visual-v234 #professional-guidance .guidance202-kpis{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  body.professional-visual-v234 #professional-guidance .guidance168-controls,
  body.professional-visual-v234 #professional-guidance .guidance202-main-grid{
    grid-template-columns:minmax(0,1fr)!important;
    gap:10px!important;
  }

  /* Financeiro: emblema fora no mobile, CTA em faixa própria e KPIs 2x2. */
  body.professional-visual-v234 #professional-finance .v203-finance-hero{
    grid-template-columns:minmax(0,1fr)!important;
    min-height:0!important;
    height:auto!important;
    gap:12px!important;
    padding:18px 16px!important;
  }
  body.professional-visual-v234 #professional-finance .v203-finance-emblem{
    display:none!important;
  }
  body.professional-visual-v234 #professional-finance .v203-finance-hero-copy,
  body.professional-visual-v234 #professional-finance .v203-finance-hero-actions{
    position:relative!important;
    z-index:2!important;
  }
  body.professional-visual-v234 #professional-finance .v203-finance-hero-copy h2{
    font-size:24px!important;
    line-height:1.08!important;
  }
  body.professional-visual-v234 #professional-finance .v203-finance-hero-copy p{
    max-width:330px!important;
    font-size:10.5px!important;
    line-height:1.48!important;
  }
  body.professional-visual-v234 #professional-finance .v203-finance-hero-actions{
    width:100%!important;
    justify-self:stretch!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  body.professional-visual-v234 #professional-finance .v203-finance-hero-actions .btn{
    width:100%!important;
    min-width:0!important;
  }
  body.professional-visual-v234 #professional-finance .v203-finance-kpis{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }

  /* Teleatendimento: dois indicadores por linha e ações lado a lado em tablet/mobile largo. */
  body.professional-visual-v234 #professional-telehealth .tele201-hero{
    min-height:0!important;
    height:auto!important;
    padding:18px 16px!important;
  }
  body.professional-visual-v234 #professional-telehealth .tele201-hero-copy h2{
    font-size:24px!important;
    line-height:1.08!important;
  }
  body.professional-visual-v234 #professional-telehealth .tele201-hero-copy p{
    max-width:330px!important;
    font-size:10.5px!important;
    line-height:1.48!important;
  }
  body.professional-visual-v234 #professional-telehealth .tele201-hero-actions{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  body.professional-visual-v234 #professional-telehealth .tele201-metrics{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  body.professional-visual-v234 #professional-telehealth .tele201-metric{
    min-height:102px!important;
    grid-template-columns:40px minmax(0,1fr)!important;
    gap:8px!important;
    padding:10px!important;
  }
  body.professional-visual-v234 #professional-telehealth .tele201-icon{
    width:38px!important;
    height:38px!important;
  }
  body.professional-visual-v234 #professional-telehealth .tele201-metric strong{
    font-size:24px!important;
  }
  body.professional-visual-v234 #professional-telehealth .tele201-main-grid,
  body.professional-visual-v234 #professional-telehealth .tele201-side{
    grid-template-columns:minmax(0,1fr)!important;
    width:100%!important;
  }

  /* Evolução: hero compacto sem perder identificação do cliente. */
  body.professional-visual-v234 #professional-evolution .v198-evolution-hero{
    grid-template-columns:78px minmax(0,1fr)!important;
    gap:12px!important;
    min-height:0!important;
    height:auto!important;
    padding:16px!important;
  }
  body.professional-visual-v234 #professional-evolution .v198-client-avatar{
    width:72px!important;
    height:72px!important;
  }
  body.professional-visual-v234 #professional-evolution .v198-hero-name-row h3{
    font-size:21px!important;
    line-height:1.08!important;
  }
  body.professional-visual-v234 #professional-evolution .v198-hero-facts{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px 12px!important;
    margin-top:10px!important;
  }
  body.professional-visual-v234 #professional-evolution .v198-hero-actions{
    grid-column:1/-1!important;
    width:100%!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  body.professional-visual-v234 #professional-evolution .v198-evolution-metrics,
  body.professional-visual-v234 #professional-evolution .v198-overview-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  body.professional-visual-v234 #professional-evolution .v198-evolution-workspace,
  body.professional-visual-v234 #professional-evolution .v198-evolution-sidebar{
    grid-template-columns:minmax(0,1fr)!important;
  }

  /* Atendimentos: estado com dados e estado vazio compartilham a mesma composição. */
  body.professional-visual-v234 #professional-attendances .v199-attendance-hero{
    min-height:0!important;
    height:auto!important;
  }
  body.professional-visual-v234 #professional-attendances .v199-highlight-card,
  body.professional-visual-v234 #professional-attendances .v199-highlight-empty{
    min-height:0!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:10px!important;
    padding:18px 16px!important;
  }
  body.professional-visual-v234 #professional-attendances .v199-highlight-avatar{
    width:84px!important;
    height:84px!important;
  }
  body.professional-visual-v234 #professional-attendances .v199-highlight-actions{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  body.professional-visual-v234 #professional-attendances .v199-attendance-metrics{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  body.professional-visual-v234 #professional-attendances .v199-metric-card{
    min-height:102px!important;
  }

  /* Clientes e Agenda mantêm 2 KPIs por linha e heróis compactos. */
  body.professional-visual-v234 #professional-clients .v196-clients-metrics,
  body.professional-visual-v234 #professional-agenda .v197-agenda-metrics{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  body.professional-visual-v234 #professional-agenda .v197-agenda-hero-actions{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  /* Copilot: preserva o hero já bom e evita lateral apertada. */
  body.professional-visual-v234 #professional-copilot .copilot203-grid,
  body.professional-visual-v234 #professional-copilot .copilot203-side{
    grid-template-columns:minmax(0,1fr)!important;
    width:100%!important;
    min-height:0!important;
    height:auto!important;
  }
  body.professional-visual-v234 #professional-copilot .copilot203-kpis{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }

  /* Relatórios / Configurações: não deixar o breakpoint 430 transformar cada
     resumo em uma coluna única desnecessariamente alta. */
  body.professional-visual-v234 #professional-reports .reports170-summary,
  body.professional-visual-v234 #professional-settings .settings172-summary .v172-profile-fields{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  body.professional-visual-v234 #professional-reports .reports170-layout,
  body.professional-visual-v234 #professional-settings .settings172-profile{
    grid-template-columns:minmax(0,1fr)!important;
    gap:10px!important;
  }
  body.professional-visual-v234 #professional-reports .reports170-filters{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
}

/* =========================================================
   MOBILE 430 / 390 / 360
   ========================================================= */
@media (max-width:620px){
  body.professional-visual-v234 .professional-main{
    padding:10px 9px 16px!important;
  }

  body.professional-visual-v234 #professional-agenda .v197-agenda-hero-actions,
  body.professional-visual-v234 #professional-evolution .v198-hero-actions,
  body.professional-visual-v234 #professional-attendances .v199-highlight-actions,
  body.professional-visual-v234 #professional-telehealth .tele201-hero-actions,
  body.professional-visual-v234 #professional-finance .v203-finance-hero-actions,
  body.professional-visual-v234 #professional-copilot .copilot203-hero-actions{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  body.professional-visual-v234 #professional-clients .v196-clients-hero,
  body.professional-visual-v234 #professional-agenda .v197-agenda-hero,
  body.professional-visual-v234 #professional-evolution .v198-evolution-hero,
  body.professional-visual-v234 #professional-consents .consents202-hero,
  body.professional-visual-v234 #professional-guidance .v163-guidance-intro,
  body.professional-visual-v234 #professional-finance .v203-finance-hero,
  body.professional-visual-v234 #professional-copilot .copilot203-hero,
  body.professional-visual-v234 #professional-telehealth .tele201-hero,
  body.professional-visual-v234 #professional-records .rec201-hero{
    border-radius:13px!important;
  }

  /* Tabelas viram cartões, sem cabeçalhos comprimidos. */
  body.professional-visual-v234 #professional-telehealth .tele201-table-head,
  body.professional-visual-v234 #professional-clients .v196-clients-table-head,
  body.professional-visual-v234 #professional-attendances .v199-table-head,
  body.professional-visual-v234 #professional-reports .reports204-table-head{
    display:none!important;
  }
}

/* 390 e 360: CTAs grandes passam a uma coluna; métricas continuam 2x2. */
@media (max-width:390px){
  body.professional-visual-v234 .professional-header-title{
    font-size:16.5px!important;
  }
  body.professional-visual-v234 .professional-header-summary{
    font-size:7.8px!important;
  }
  body.professional-visual-v234 #professional-agenda .v197-agenda-hero-actions,
  body.professional-visual-v234 #professional-evolution .v198-hero-actions,
  body.professional-visual-v234 #professional-attendances .v199-highlight-actions,
  body.professional-visual-v234 #professional-telehealth .tele201-hero-actions,
  body.professional-visual-v234 #professional-finance .v203-finance-hero-actions,
  body.professional-visual-v234 #professional-copilot .copilot203-hero-actions,
  body.professional-visual-v234 #professional-reports .reports204-hero-actions,
  body.professional-visual-v234 #professional-settings .settings172-hero-actions{
    grid-template-columns:minmax(0,1fr)!important;
  }
  body.professional-visual-v234 #professional-records .rec201-hero-copy h2,
  body.professional-visual-v234 #professional-consents .consents202-hero-copy h3,
  body.professional-visual-v234 #professional-guidance .v163-guidance-intro h2,
  body.professional-visual-v234 #professional-finance .v203-finance-hero-copy h2,
  body.professional-visual-v234 #professional-telehealth .tele201-hero-copy h2{
    font-size:21.5px!important;
  }

  body.professional-visual-v234 #professional-reports .reports170-summary article,
  body.professional-visual-v234 #professional-settings .settings172-summary .v172-profile-field{
    min-height:94px!important;
    padding:11px 9px 11px 50px!important;
  }
  body.professional-visual-v234 #professional-reports .reports170-summary article::before,
  body.professional-visual-v234 #professional-settings .settings172-summary .v172-profile-field::before{
    left:9px!important;
    top:12px!important;
    width:34px!important;
    height:34px!important;
  }
}

@media (max-width:370px){
  body.professional-visual-v234 .professional-main{
    padding-left:8px!important;
    padding-right:8px!important;
  }
  body.professional-visual-v234 #professional-records .rec201-hero,
  body.professional-visual-v234 #professional-consents .consents202-hero,
  body.professional-visual-v234 #professional-guidance .v163-guidance-intro,
  body.professional-visual-v234 #professional-finance .v203-finance-hero,
  body.professional-visual-v234 #professional-telehealth .tele201-hero{
    padding-left:14px!important;
    padding-right:14px!important;
  }
  body.professional-visual-v234 #professional-records .rec201-hero-metrics article,
  body.professional-visual-v234 #professional-consents .consents202-kpis article,
  body.professional-visual-v234 #professional-telehealth .tele201-metric,
  body.professional-visual-v234 #professional-attendances .v199-metric-card{
    padding-left:8px!important;
    padding-right:8px!important;
  }
}
