/* SV Seguros V443 — acabamento mobile.
   Camada exclusivamente visual para ecrãs pequenos.
   Não altera BD, API, dados, regras de negócio ou o layout de PC. */
@media (max-width:700px){
  :root{--sv443-side:12px;--sv443-float:46px}
  html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
  body{overscroll-behavior-x:none}
  .content{
    padding-left:var(--sv443-side)!important;
    padding-right:var(--sv443-side)!important;
    padding-bottom:calc(92px + env(safe-area-inset-bottom))!important;
  }

  /* Dashboard: pesquisa mais compacta e legível, sem provocar zoom no iPhone. */
  #dashboard .dashboard-quick-search{margin:10px 0 14px!important}
  #dashboard .dashboard-quick-search-box{min-height:50px!important;padding:0 10px!important;gap:8px!important;border-radius:14px!important}
  #dashboard #dashboard-quick-search-input{min-height:48px!important;font-size:16px!important;min-width:0!important}
  #dashboard #dashboard-quick-search-input::placeholder{font-size:13px!important;letter-spacing:-.015em!important;color:#838b97!important}
  #dashboard .dashboard-quick-search-icon{font-size:18px!important}
  #dashboard .dashboard-quick-search-help{font-size:10.5px!important;line-height:1.35!important;margin-top:5px!important}
  #dashboard .dashboard-quick-search-results{left:10px!important;right:10px!important}

  /* Retenção AUTO: cabeçalho compacto para não ocupar metade do ecrã. */
  #sv-retencao-clientes-v416-overlay{padding:6px!important;align-items:flex-start!important}
  #sv-retencao-clientes-v416-overlay .v416-card{
    width:calc(100vw - 12px)!important;
    max-height:calc(100dvh - 12px)!important;
    border-radius:17px!important;
  }
  #sv-retencao-clientes-v416-overlay .v416-head{
    padding:13px 14px 11px!important;
    gap:10px!important;
    align-items:flex-start!important;
    min-height:0!important;
  }
  #sv-retencao-clientes-v416-overlay .v416-head>div:first-child{min-width:0!important;flex:1 1 auto!important;padding-right:2px!important}
  #sv-retencao-clientes-v416-overlay .v416-head h2{
    font-size:22px!important;
    line-height:1.08!important;
    letter-spacing:-.025em!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }
  #sv-retencao-clientes-v416-overlay .v416-head p{
    margin-top:5px!important;
    font-size:11.5px!important;
    line-height:1.35!important;
    max-width:100%!important;
  }
  #sv-retencao-clientes-v416-overlay .v423-head-actions{
    gap:6px!important;
    flex:0 0 auto!important;
    margin-left:auto!important;
  }
  #sv-retencao-clientes-v416-overlay .v423-minimize,
  #sv-retencao-clientes-v416-overlay .v416-close{
    width:38px!important;height:38px!important;min-width:38px!important;flex:0 0 38px!important;
    border-radius:999px!important;padding:0!important;margin:0!important;
  }
  #sv-retencao-clientes-v416-overlay .v423-minimize{font-size:22px!important}
  #sv-retencao-clientes-v416-overlay .v416-close{font-size:24px!important;line-height:1!important}
  #sv-retencao-clientes-v416-overlay .v416-body{padding:10px 11px 18px!important}
  #sv-retencao-clientes-v416-overlay .v416-note{padding:10px 11px!important;margin-bottom:10px!important;font-size:11.5px!important;line-height:1.4!important;border-radius:12px!important}
  #sv-retencao-clientes-v416-overlay .v416-kpis{gap:7px!important;margin-bottom:9px!important}
  #sv-retencao-clientes-v416-overlay .v416-kpi{min-height:72px!important;padding:9px 10px!important;border-radius:12px!important}
  #sv-retencao-clientes-v416-overlay .v416-kpi span{font-size:9px!important;line-height:1.2!important}
  #sv-retencao-clientes-v416-overlay .v416-kpi strong{font-size:19px!important;margin-top:3px!important}
  #sv-retencao-clientes-v416-overlay .v416-kpi small{font-size:10px!important;line-height:1.25!important}
  #sv-retencao-clientes-v416-overlay .v423-kpi-tools{margin:0 0 9px!important}
  #sv-retencao-clientes-v416-overlay .v423-list-refresh{min-height:42px!important;border-radius:10px!important}
  #sv-retencao-clientes-v416-overlay .v416-tools{padding:9px!important;gap:8px!important;border-radius:12px!important}
  #sv-retencao-clientes-v416-overlay .v416-tools select,
  #sv-retencao-clientes-v416-overlay .v416-tools input,
  #sv-retencao-clientes-v416-overlay .v416-refresh{min-height:44px!important;height:44px!important;font-size:16px!important}

  /* Cotações: menos área desperdiçada e ações mais fáceis de tocar. */
  #cotacoes .cotacoes-intro-v429{padding:14px 15px!important;margin-bottom:10px!important;border-radius:14px!important}
  #cotacoes .cotacoes-intro-v429>strong{font-size:20px!important;line-height:1.15!important;margin-bottom:5px!important}
  #cotacoes .cotacoes-intro-v429>p{font-size:13px!important;line-height:1.4!important}
  #cotacoes .cotacoes-kpis-v429{gap:7px!important;margin-bottom:10px!important}
  #cotacoes .cotacoes-kpi-v429{min-height:76px!important;padding:9px 39px 9px 10px!important;border-radius:13px!important}
  #cotacoes .cotacoes-kpi-v429>span{font-size:9px!important;line-height:1.2!important}
  #cotacoes .cotacoes-kpi-v429>strong{font-size:20px!important;margin-top:2px!important}
  #cotacoes .cotacoes-kpi-v429>small{font-size:10px!important;line-height:1.18!important;margin-top:4px!important}
  #cotacoes .cotacoes-kpi-open-v429{width:31px!important;height:31px!important;right:7px!important}
  #cotacoes .toolbar{gap:8px!important;margin-bottom:10px!important;align-items:stretch!important}
  #cotacoes #cotacoes-search{min-height:46px!important;font-size:16px!important;border-radius:12px!important}
  #cotacoes #cotacoes-search::placeholder{font-size:13px!important;color:#8a9098!important}
  #cotacoes .toolbar-right{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important}
  #cotacoes #cotacoes-status-filter{min-height:44px!important;font-size:16px!important;max-width:100%!important}
  #cotacoes .table-panel tr{margin-bottom:9px!important;padding:8px 10px!important;border-radius:14px!important}
  #cotacoes .table-panel td{grid-template-columns:minmax(96px,30%) minmax(0,1fr)!important;gap:7px!important;padding:7px 1px!important;line-height:1.32!important}
  #cotacoes .table-panel td::before{font-size:9.5px!important;line-height:1.25!important}
  #cotacoes .table-panel td:last-child>div{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:8px!important;
    width:100%!important;
    justify-content:stretch!important;
  }
  #cotacoes .table-panel td:last-child>div>button{width:100%!important;min-width:0!important;min-height:44px!important;margin:0!important;padding:8px 7px!important}
  #cotacoes .table-panel td:last-child>div>button:first-child{grid-column:1/-1!important}

  /* Recuperação: mesmas margens compactas e botões com área de toque adequada. */
  .v434-top,.v437-top{gap:8px!important;margin-bottom:9px!important}
  .v434-filters,.v437-filters,.v433-filters{padding:9px!important;gap:7px!important;border-radius:13px!important}
  .v434-kpis,.v437-kpis,.v433-kpis,.v432-kpis{gap:7px!important}
  .v434-kpi,.v437-kpi,.v433-kpi,.v432-kpi{border-radius:13px!important;padding:9px!important;min-height:74px!important}
  .v434-table tr,.v437-table tr{margin-bottom:9px!important;padding:8px 10px!important}
  .v434-table td,.v437-table td{grid-template-columns:minmax(100px,31%) minmax(0,1fr)!important;gap:7px!important;padding:7px 1px!important}

  /* E-mail e Chat deixam de formar uma coluna que tapa as ações.
     No mobile ficam numa pequena doca horizontal no canto inferior direito. */
  #email-floating-v249.email-floating-v249{
    right:calc(12px + var(--sv443-float) + 8px)!important;
    bottom:calc(12px + env(safe-area-inset-bottom))!important;
  }
  #email-floating-v249 .email-floating-launcher-v249{
    width:var(--sv443-float)!important;height:var(--sv443-float)!important;
    min-width:var(--sv443-float)!important;min-height:var(--sv443-float)!important;
    box-shadow:0 8px 22px rgba(143,12,21,.28)!important;
  }
  #email-floating-v249 .email-floating-launcher-v249 svg{width:22px!important;height:22px!important}
  #chat-floating.chat-floating{
    right:10px!important;
    bottom:calc(12px + env(safe-area-inset-bottom))!important;
  }
  #chat-floating .chat-floating-launcher{
    width:var(--sv443-float)!important;height:var(--sv443-float)!important;
    min-width:var(--sv443-float)!important;min-height:var(--sv443-float)!important;
    box-shadow:0 8px 22px rgba(76,29,149,.28)!important;
  }
  #chat-floating .chat-floating-launcher svg{width:22px!important;height:22px!important}

  /* Os painéis flutuantes abertos continuam a usar quase todo o ecrã. */
  #email-floating-v249 .email-floating-panel-v249,
  #chat-floating .chat-floating-panel{
    left:6px!important;right:6px!important;
    top:max(6px,env(safe-area-inset-top))!important;
    bottom:max(6px,env(safe-area-inset-bottom))!important;
    border-radius:14px!important;
  }
}

@media (max-width:460px){
  /* Mantém 2 colunas de KPI enquanto houver espaço real; só cai para 1 coluna em ecrãs muito estreitos. */
  #sv-retencao-clientes-v416-overlay .v416-kpis,
  #cotacoes .cotacoes-kpis-v429,
  .v434-kpis,.v437-kpis,.v433-kpis,.v432-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

@media (max-width:350px){
  #sv-retencao-clientes-v416-overlay .v416-kpis,
  #cotacoes .cotacoes-kpis-v429,
  .v434-kpis,.v437-kpis,.v433-kpis,.v432-kpis{grid-template-columns:1fr!important}
  #sv-retencao-clientes-v416-overlay .v416-head h2{font-size:20px!important}
  #cotacoes .table-panel td:last-child>div{grid-template-columns:1fr!important}
  #cotacoes .table-panel td:last-child>div>button:first-child{grid-column:auto!important}
}
