/* NutriUva Pro - Camada responsiva mobile enxuta
   Objetivo: experiência tipo aplicativo sem alterar lógica, rotas, permissões ou versão desktop. */

/* Guarda desktop 2026-05-17: elementos gerados somente para mobile não aparecem no desktop. */
[data-mobile-only="1"],
.nu-mobile-analysis-box,
.nu-mobile-safra-cards{display:none!important;}

@media (max-width: 768px){
  [data-mobile-only="1"],
  .nu-mobile-analysis-box,
  .nu-mobile-safra-cards{display:block!important;}
}

@media (max-width: 1024px){
  html, body{max-width:100%;overflow-x:hidden!important;}
  body{touch-action:manipulation;-webkit-text-size-adjust:100%;}
  img, svg, canvas, video, iframe{max-width:100%;height:auto;}
  .container, .container-fluid{max-width:100%;}
  .row{--bs-gutter-x:1rem;}
  .app-shell,.premium-shell{width:100%;max-width:100%;overflow-x:hidden;}
  .content,.premium-content{max-width:100%;overflow-x:hidden;}
  .chart-box,.chart-box-sm,.chart-box-md,.chart-box-lg,.rec-chart-box,.analysis-chart-box{width:100%!important;max-width:100%!important;overflow:hidden;}
  canvas{max-width:100%!important;}
  .table-responsive{max-width:100%;overflow-x:visible!important;}
  .btn,.form-control,.form-select{max-width:100%;}
  .btn{white-space:normal;}
  .d-flex{min-width:0;}
}

@media (max-width: 768px){
  :root{--mobile-radius:18px;--mobile-shadow:0 10px 26px rgba(16,35,29,.075);}

  body{background:#f3f7f5;}
  body.sidebar-open{overflow:hidden!important;}

  .app-shell,.premium-shell{display:block!important;min-height:100dvh;}
  .content,.premium-content{margin-left:0!important;width:100%!important;padding:72px 12px 18px!important;}

  .mobile-topbar{display:flex!important;position:fixed;top:0;left:0;right:0;z-index:1045;height:58px;padding:9px 12px;background:rgba(248,252,250,.96);backdrop-filter:blur(16px);border-bottom:1px solid rgba(13,75,59,.11);box-shadow:0 10px 25px rgba(13,75,59,.08);align-items:center;justify-content:space-between;gap:10px;}
  .mobile-topbar strong{font-size:.98rem;color:#0d4b3b;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .sidebar-toggle{width:40px!important;height:40px!important;border-radius:14px!important;border:1px solid rgba(13,75,59,.14)!important;background:#fff!important;color:#0d4b3b!important;font-size:1.15rem!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;box-shadow:0 8px 18px rgba(13,75,59,.08)!important;}
  .mobile-topbar .btn{padding:8px 10px!important;font-size:.8rem!important;border-radius:12px!important;}

  .topbar,.premium-topbar{display:none!important;}

  .sidebar,.premium-sidebar{position:fixed!important;top:0!important;left:0!important;bottom:0!important;width:min(84vw,320px)!important;height:100dvh!important;transform:translateX(-105%);transition:transform .24s ease!important;z-index:1050!important;padding:16px 14px!important;overflow-y:auto!important;box-shadow:18px 0 45px rgba(8,57,47,.25)!important;border-radius:0 24px 24px 0!important;}
  body.sidebar-open .sidebar,body.sidebar-open .premium-sidebar{transform:translateX(0)!important;}
  .sidebar-backdrop{display:block!important;position:fixed!important;inset:0!important;background:rgba(5,30,24,.48)!important;z-index:1040!important;opacity:0!important;pointer-events:none!important;transition:opacity .22s ease!important;}
  body.sidebar-open .sidebar-backdrop{opacity:1!important;pointer-events:auto!important;}
  .sidebar .brand,.premium-sidebar .brand{margin-bottom:14px!important;padding-right:34px!important;}
  .brand-mark{width:40px!important;height:40px!important;border-radius:14px!important;}
  .sidebar .brand strong{font-size:1rem!important;}
  .sidebar .brand small{font-size:.72rem!important;}
  .sidebar-collapse-toggle{display:none!important;}
  .sidebar nav,.admin-nav-accordion{display:block!important;max-height:none!important;overflow:visible!important;}
  .sidebar nav a,.admin-nav-group-toggle,.admin-nav-group-panel a{min-height:44px!important;padding:10px 12px!important;border-radius:14px!important;font-size:.92rem!important;display:flex!important;align-items:center!important;gap:9px!important;}
  .sidebar nav a span{min-width:22px;text-align:center;}
  .nav-section,.nav-section-feature,.admin-nav-section-title{margin-top:12px!important;margin-bottom:5px!important;font-size:.68rem!important;letter-spacing:.08em!important;}
  .sidebar-footer{margin-top:14px!important;padding:12px!important;border-radius:16px!important;}

  .card-pro,.nutri-card,.dashboard-section,.team-panel,.filter-card,.report-block,.plan-card,.admin-card,.summary-card,.metric,.module-card,.chart-panel,.mobile-card{border-radius:var(--mobile-radius)!important;padding:14px!important;margin-bottom:12px!important;box-shadow:var(--mobile-shadow)!important;}
  .card-pro h1,.card-pro h2,.card-pro h3,.section-head h3{font-size:1.05rem!important;line-height:1.22!important;margin-bottom:7px!important;}
  .card-pro p,.hint,.text-muted{font-size:.86rem!important;line-height:1.35!important;}

  .grid,.grid-2,.grid-3,.grid-4,.mini-grid,.dashboard-grid,.dashboard-kpi-grid,.admin-kpi-grid,.admin-kpi-grid-compact,.analysis-chart-grid-wide,.chart-dashboard.two-cols,.plans-grid,.modules-grid,.benefits-grid,.steps-grid,.proof-band{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;}
  .mobile-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;}
  .metric{min-height:auto!important;}
  .metric b,.metric strong{font-size:1.25rem!important;line-height:1.15!important;}

  .dashboard-hero,.team-dash-hero,.rec-hero,.login-card-header,.section-head,.nutri-head{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:8px!important;padding:14px!important;}
  .dashboard-hero .plan-pill{width:100%!important;min-width:0!important;padding:10px 12px!important;}
  .module-card{min-height:auto!important;}
  .module-card h3{font-size:.98rem!important;margin-bottom:4px!important;}

  .chart-box{min-height:250px!important;height:250px!important;}
  .chart-box-sm,.chart-box-md{min-height:230px!important;height:230px!important;}
  .chart-box-lg{min-height:300px!important;height:300px!important;}
  .rec-chart-box{height:260px!important;min-height:260px!important;}

  form .row>[class*="col-"],.row.g-3>[class*="col-"],.row.g-2>[class*="col-"]{width:100%!important;flex:0 0 100%!important;max-width:100%!important;}
  .form-label{font-size:.84rem!important;margin-bottom:4px!important;}
  .form-control,.form-select,textarea.form-control{min-height:44px!important;border-radius:13px!important;font-size:.95rem!important;}
  textarea.form-control{min-height:84px!important;}
  .input-group{flex-wrap:nowrap;max-width:100%;}
  .btn{min-height:42px;border-radius:13px!important;padding:9px 12px!important;font-size:.9rem!important;display:inline-flex;align-items:center;justify-content:center;gap:6px;}
  .btn-sm{min-height:36px!important;padding:7px 10px!important;font-size:.8rem!important;}
  .mobile-actions,.card-button-row,.login-button-row,.plan-button-wrap,.actions,.action-row,.d-flex.gap-2{display:flex!important;flex-wrap:wrap!important;gap:8px!important;align-items:center!important;justify-content:flex-start!important;}
  .mobile-actions .btn,.card-button-row .btn,.login-button-row .btn,.plan-button-wrap .btn{flex:1 1 auto;min-width:130px;}

  .table-responsive.mobile-cardified{overflow:visible!important;border:0!important;}
  table.mobile-card-table{border:0!important;width:100%!important;display:block!important;background:transparent!important;}
  table.mobile-card-table thead{display:none!important;}
  table.mobile-card-table tbody{display:block!important;width:100%!important;}
  table.mobile-card-table tr{display:block!important;width:100%!important;background:#fff!important;border:1px solid #e2eee8!important;border-radius:16px!important;margin-bottom:10px!important;padding:10px!important;box-shadow:0 8px 20px rgba(16,35,29,.055)!important;}
  table.mobile-card-table td{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:12px!important;width:100%!important;border:0!important;border-bottom:1px solid #edf3ef!important;padding:7px 0!important;white-space:normal!important;word-break:break-word!important;text-align:right!important;font-size:.86rem!important;}
  table.mobile-card-table td:last-child{border-bottom:0!important;padding-bottom:0!important;}
  table.mobile-card-table td::before{content:attr(data-label);font-weight:850;color:#0d4b3b;text-align:left;min-width:38%;max-width:48%;font-size:.76rem;text-transform:uppercase;letter-spacing:.03em;}
  table.mobile-card-table td:empty{display:none!important;}
  table.mobile-card-table td .btn,table.mobile-card-table td a.btn{margin:2px!important;}
  table.mobile-card-table td:last-child{justify-content:flex-start!important;text-align:left!important;flex-wrap:wrap!important;}
  table.mobile-card-table td:last-child::before{width:100%;max-width:100%;flex:0 0 100%;}

  .mobile-collapse{border:1px solid #e2eee8;border-radius:16px;background:#fff;margin-bottom:10px;overflow:hidden;}
  .mobile-collapse summary{cursor:pointer;padding:12px 14px;font-weight:900;color:#0d4b3b;list-style:none;}
  .mobile-collapse summary::-webkit-details-marker{display:none;}
  .mobile-collapse summary::after{content:'+';float:right;font-weight:900;color:#d99a2b;}
  .mobile-collapse[open] summary::after{content:'–';}
  .mobile-collapse-body{padding:0 14px 14px;}

  .alert,.free-limit-alert,.upgrade-alert{border-radius:16px!important;padding:12px 14px!important;font-size:.88rem!important;}
  .dropdown-menu{max-width:calc(100vw - 24px)!important;border-radius:16px!important;}
  .pagination{flex-wrap:wrap;gap:4px;}

  .nutriuva-global-footer{padding:8px 0 0!important;}
  .nutriuva-footer-box{font-size:.72rem!important;line-height:1.25!important;padding:10px!important;border-radius:14px!important;}
}

@media (max-width: 480px){
  .content,.premium-content{padding-left:10px!important;padding-right:10px!important;}
  .mobile-grid{grid-template-columns:1fr!important;}
  .mobile-topbar{height:56px;padding:8px 10px;}
  .mobile-topbar strong{font-size:.92rem;max-width:42vw;}
  .mobile-topbar .btn{font-size:.74rem!important;padding:7px 8px!important;}
  .sidebar,.premium-sidebar{width:min(88vw,304px)!important;}
  .card-pro,.nutri-card,.dashboard-section,.metric,.module-card,.plan-card{padding:12px!important;border-radius:16px!important;}
  .btn{width:auto;min-width:0;}
  .mobile-actions .btn,.card-button-row .btn,.login-button-row .btn,.plan-button-wrap .btn{flex:1 1 100%;width:100%;}
  table.mobile-card-table td{display:block!important;text-align:left!important;padding:8px 0!important;}
  table.mobile-card-table td::before{display:block;max-width:100%;margin-bottom:3px;}
  .chart-box,.chart-box-sm,.chart-box-md{height:220px!important;min-height:220px!important;}
  .chart-box-lg{height:270px!important;min-height:270px!important;}
}

/* Landing page e login: ajustes mobile específicos, carregados somente abaixo de 768px. */
@media (max-width: 768px){
  .landing-shell{overflow-x:hidden!important;}
  .hero-3d{min-height:auto!important;padding:16px 0 68px!important;}
  .hero-nav{padding:0 2px!important;gap:10px!important;}
  .hero-nav .nav-links{display:none!important;}
  .logo-3d{gap:8px!important;}
  .logo-icon{width:42px!important;height:42px!important;border-radius:14px!important;}
  .hero-layout{display:grid!important;grid-template-columns:1fr!important;gap:18px!important;padding-top:22px!important;}
  .hero-copy h1{font-size:2rem!important;line-height:1.05!important;letter-spacing:-.04em!important;}
  .hero-copy p{font-size:.98rem!important;line-height:1.45!important;}
  .hero-actions{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;}
  .hero-actions .btn{width:100%!important;}
  .hero-metrics{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;}
  .metric-pill{padding:11px!important;border-radius:16px!important;}
  .hero-visual{min-height:auto!important;}
  .diagnostic-console{transform:none!important;width:100%!important;border-radius:22px!important;padding:14px!important;}
  .console-body{gap:10px!important;}
  .console-row,.floating-card{padding:10px!important;border-radius:14px!important;}
  .floating-card{position:static!important;margin-top:10px!important;width:100%!important;transform:none!important;}
  .section{padding:42px 0!important;}
  .section-title{display:block!important;margin-bottom:18px!important;}
  .section-title h2{font-size:1.55rem!important;line-height:1.12!important;}
  .problem-card,.module-feature,.step-card,.proof-item{padding:14px!important;border-radius:18px!important;}
  .plan-card{padding:16px!important;}
  .price{font-size:1.65rem!important;}

  .login-page{display:block!important;min-height:100dvh!important;}
  .login-brand-panel{min-height:auto!important;padding:22px 16px!important;border-radius:0 0 28px 28px!important;}
  .login-logo{margin-bottom:18px!important;}
  .login-hero-copy h1{font-size:1.75rem!important;line-height:1.08!important;}
  .login-hero-copy p{font-size:.92rem!important;line-height:1.42!important;}
  .login-stats{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;margin:18px 0!important;}
  .login-stat{padding:10px!important;border-radius:16px!important;}
  .login-benefits{display:none!important;}
  .login-form-panel{padding:16px 12px 28px!important;min-height:auto!important;}
  .login-form-wrap{max-width:100%!important;}
  .login-top-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;margin-bottom:12px!important;}
  .login-top-actions .btn{width:100%!important;}
  .login-card{padding:16px!important;border-radius:22px!important;box-shadow:0 18px 42px rgba(15,61,51,.12)!important;}
  .login-card-header{padding:0!important;}
  .login-card-header h2{font-size:1.35rem!important;}
  .form-footer{margin:8px 0!important;}
  .mini-note{display:grid!important;gap:8px!important;text-align:center!important;}
  .mini-note .btn{width:100%!important;}
}

@media print{
  .mobile-topbar,.sidebar-backdrop{display:none!important;}
  body{overflow:visible!important;}
}

@media (max-width: 768px){
  .mobile-header{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;padding:12px 14px!important;border-radius:18px!important;background:#fff!important;border:1px solid #e2eee8!important;box-shadow:0 10px 26px rgba(16,35,29,.075)!important;margin-bottom:12px!important;}
  .mobile-table-card{background:#fff!important;border:1px solid #e2eee8!important;border-radius:16px!important;padding:10px!important;box-shadow:0 8px 20px rgba(16,35,29,.055)!important;margin-bottom:10px!important;}
}

/* Ajuste 2026-05-17: no mobile, o app drawer deve ficar sempre acima da topbar. */
@media (max-width: 768px){
  .sidebar,
  .premium-sidebar{
    z-index:2147483000!important;
  }
  .sidebar-backdrop{
    z-index:2147482000!important;
  }
  body.sidebar-open .mobile-topbar{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    z-index:1!important;
  }
}


/* Ajuste 2026-05-17 v2: remove espaço superior no mobile e fixa o cabeçalho no topo real da tela. */
@media (max-width: 768px){
  html,
  body{
    margin-top:0!important;
    padding-top:0!important;
    overflow-x:hidden!important;
  }

  .app-shell,
  .premium-shell{
    margin-top:0!important;
    padding-top:0!important;
  }

  .content,
  .premium-content{
    margin-top:0!important;
    padding-top:60px!important;
  }

  .mobile-topbar{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    height:56px!important;
    margin:0!important;
    border-radius:0 0 18px 18px!important;
    padding:7px 10px!important;
    transform:none!important;
    z-index:2147481000!important;
    background:rgba(248,252,250,.98)!important;
    border:0!important;
    border-bottom:1px solid rgba(13,75,59,.12)!important;
    box-shadow:0 8px 22px rgba(13,75,59,.08)!important;
  }

  body.sidebar-open .mobile-topbar{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    z-index:1!important;
  }

  .mobile-topbar .sidebar-toggle{
    width:38px!important;
    height:38px!important;
    border-radius:13px!important;
    flex:0 0 38px!important;
  }

  .mobile-topbar strong{
    flex:1 1 auto!important;
    text-align:center!important;
    min-width:0!important;
    margin:0!important;
  }

  .mobile-topbar .dropdown{
    flex:0 0 auto!important;
  }

  .mobile-topbar .dropdown-toggle{
    min-height:38px!important;
    padding:7px 10px!important;
    white-space:nowrap!important;
  }

  .premium-topbar,
  .topbar{
    margin-top:0!important;
  }

  .dashboard-hero,
  .team-dash-hero,
  .rec-hero,
  .soil-hero,
  .nuva-hero,
  .finrel-hero,
  .finper-hero{
    margin-top:0!important;
  }
}

@media (max-width: 480px){
  .content,
  .premium-content{
    padding-top:58px!important;
  }

  .mobile-topbar{
    height:54px!important;
    border-radius:0 0 16px 16px!important;
  }
}

/* Ajuste 2026-05-17 v4: tabelas técnicas e financeiras no mobile sem quebrar o desktop. */
@media (max-width: 768px){
  /* Mantém as linhas de detalhe fechadas até o clique, mesmo quando a tabela vira card. */
  html body table.mobile-card-table tr.ranking-detail-row:not(.open),
  html body table.mobile-card-table tr.finper-detail-row:not(.is-open),
  html body .ranking-detail-row:not(.open),
  html body .finper-detail-row:not(.is-open){
    display:none!important;
  }
  html body table.mobile-card-table tr.ranking-detail-row.open,
  html body table.mobile-card-table tr.finper-detail-row.is-open{
    display:block!important;
  }

  /* Visual app-like para as tabelas de análises de solo, extrato e folha. */
  html body .analysis-table-rev12,
  html body .analysis-table-wrap{
    overflow:visible!important;
    border-radius:18px!important;
    background:transparent!important;
  }
  html body .analysis-table-rev12 .analysis-list-table,
  html body .analysis-table-rev12 .analysis-list-table tbody,
  html body .analysis-table-rev12 .analysis-list-table tr,
  html body .analysis-table-rev12 .analysis-list-table td,
  html body .analysis-table-solo th, html body .analysis-table-solo td,
  html body .analysis-table-extrato th, html body .analysis-table-extrato td,
  html body .analysis-table-foliar th, html body .analysis-table-foliar td{
    width:100%!important;
    max-width:100%!important;
  }
  html body .analysis-table-rev12 .analysis-list-table{
    display:block!important;
    table-layout:auto!important;
    border-collapse:separate!important;
    border-spacing:0!important;
  }
  html body .analysis-table-rev12 thead{display:none!important;}
  html body .analysis-table-rev12 tbody{display:block!important;}
  html body .analysis-table-rev12 tr.analysis-select-row{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:7px!important;
    border:1px solid #dfeae5!important;
    border-radius:18px!important;
    padding:10px!important;
    margin-bottom:10px!important;
    background:linear-gradient(145deg,#fff 0%,#fbfdfc 100%)!important;
    box-shadow:0 8px 22px rgba(15,61,51,.06)!important;
  }
  html body .analysis-table-rev12 td{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    align-items:flex-start!important;
    min-height:48px!important;
    border:1px solid #edf3ef!important;
    border-radius:12px!important;
    background:#fff!important;
    padding:7px 8px!important;
    overflow:hidden!important;
    white-space:normal!important;
    text-align:left!important;
    font-size:.86rem!important;
    line-height:1.1!important;
    color:#173e31!important;
  }
  html body .analysis-table-rev12 td::before{
    content:attr(data-label)!important;
    display:block!important;
    flex:0 0 auto!important;
    width:auto!important;
    max-width:100%!important;
    margin:0 0 3px!important;
    color:#647870!important;
    font-size:.61rem!important;
    font-weight:950!important;
    letter-spacing:.055em!important;
    text-transform:uppercase!important;
  }
  html body .analysis-table-rev12 td.analysis-ident-cell{
    grid-column:1 / -1!important;
    min-height:auto!important;
    background:#f6fbf8!important;
    border-color:#dfeee7!important;
    display:grid!important;
    grid-template-columns:72px minmax(0,1fr)!important;
    gap:6px 10px!important;
    align-items:center!important;
    padding:9px 10px!important;
  }
  html body .analysis-table-rev12 td.analysis-ident-cell::before{
    grid-column:1 / -1!important;
    margin-bottom:0!important;
  }
  html body .analysis-date-main{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:34px!important;
    border-radius:999px!important;
    background:#0d4b3b!important;
    color:#fff!important;
    font-size:.86rem!important;
    letter-spacing:.02em!important;
    padding:5px 8px!important;
  }
  html body .analysis-ident-sub{
    margin:0!important;
    color:#9a6a00!important;
    font-size:.85rem!important;
    line-height:1.15!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .analysis-table-rev12 .analysis-badge{
    min-width:0!important;
    border-radius:10px!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    font-size:.94rem!important;
    font-weight:950!important;
  }
  html body .analysis-table-rev12 .analysis-actions-cell{
    grid-column:1 / -1!important;
    display:block!important;
    min-height:auto!important;
    border:0!important;
    border-top:1px dashed #dfeae5!important;
    border-radius:0!important;
    background:transparent!important;
    padding:9px 0 0!important;
    margin-top:2px!important;
  }
  html body .analysis-table-rev12 .analysis-actions-cell::before{display:none!important;}
  html body .analysis-table-rev12 .table-actions-inline{
    justify-content:flex-end!important;
    gap:7px!important;
    flex-wrap:wrap!important;
  }
  html body .analysis-table-rev12 .table-actions-inline .btn{
    min-height:34px!important;
    padding:7px 10px!important;
    font-size:.77rem!important;
    border-radius:999px!important;
  }

  /* Ranking de safra e relatório por período: compactos, clicáveis e sem expansão automática. */
  html body .finrel-ranking-table.mobile-card-table tr.finrel-row-click,
  html body .finper-click-table.mobile-card-table tr.finper-toggle-row{
    cursor:pointer!important;
    border-radius:18px!important;
    border-color:#dfeae5!important;
    box-shadow:0 8px 22px rgba(15,61,51,.055)!important;
  }
  html body .finrel-ranking-table.mobile-card-table .detail-cta,
  html body .finper-toggle-row td:first-child .main:after{
    background:#fff4d8!important;
    border:1px solid #e7c979!important;
    color:#5a3a05!important;
  }
  html body .finrel-ranking-table.mobile-card-table td,
  html body .finper-click-table.mobile-card-table td{
    font-size:.84rem!important;
    padding:7px 0!important;
  }

  /* Gestão de Safras: transforma a tabela anual em cards verticais mais legíveis. */
  html body .poda-table.mobile-card-table,
  html body .poda-table.mobile-card-table tbody,
  html body .poda-table.mobile-card-table tr.linha-valvula{
    display:block!important;
    width:100%!important;
  }
  html body .poda-table.mobile-card-table tr.linha-valvula{
    padding:10px!important;
    border:1px solid #dfeae5!important;
    border-radius:18px!important;
    margin-bottom:10px!important;
    background:#fff!important;
    box-shadow:0 8px 22px rgba(15,61,51,.055)!important;
  }
  html body .poda-table.mobile-card-table tr.linha-valvula>td{
    display:block!important;
    border:0!important;
    border-bottom:1px solid #edf3ef!important;
    padding:9px 0!important;
    text-align:left!important;
  }
  html body .poda-table.mobile-card-table tr.linha-valvula>td::before{
    display:block!important;
    margin-bottom:6px!important;
    color:#0d4b3b!important;
    font-size:.68rem!important;
    font-weight:950!important;
    letter-spacing:.06em!important;
    text-transform:uppercase!important;
  }
  html body .poda-table.mobile-card-table tr.linha-valvula>td:first-child::before{content:'Válvula'!important;}
  html body .poda-table.mobile-card-table tr.linha-valvula>td:nth-child(2)::before{content:'Safra 1'!important;}
  html body .poda-table.mobile-card-table tr.linha-valvula>td:nth-child(3)::before{content:'Safra 2'!important;}
  html body .poda-table.mobile-card-table tr.linha-valvula>td:nth-child(4)::before{content:'Safra 3'!important;}
  html body .poda-table.mobile-card-table tr.linha-valvula>td:nth-child(5)::before{content:'Produção'!important;}
  html body .poda-table.mobile-card-table tr.linha-valvula>td:last-child{border-bottom:0!important;}
  html body .poda-table .poda-safra-box{
    padding:8px!important;
    border-radius:14px!important;
    font-size:.78rem!important;
  }
  html body .poda-table .safra-linha{
    display:grid!important;
    grid-template-columns:74px minmax(0,1fr)!important;
    gap:6px!important;
    align-items:center!important;
    margin-bottom:4px!important;
  }
  html body .poda-table .safra-label{
    font-size:.62rem!important;
    font-weight:950!important;
    color:#647870!important;
  }
  html body .poda-table .poda-date-cell,
  html body .poda-table .safra-ciclo,
  html body .poda-table .safra-meta,
  html body .poda-table .safra-producao{
    font-size:.78rem!important;
    line-height:1.15!important;
    word-break:normal!important;
  }
  html body .poda-table .btn-sm{
    min-height:31px!important;
    padding:5px 8px!important;
    font-size:.72rem!important;
  }
}

@media (max-width: 420px){
  html body .analysis-table-rev12 tr.analysis-select-row{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:6px!important;
  }
  html body .analysis-table-rev12 td{
    min-height:45px!important;
    padding:6px 7px!important;
    font-size:.82rem!important;
  }
  html body .analysis-table-rev12 td::before{font-size:.58rem!important;}
  html body .analysis-table-rev12 td.analysis-ident-cell{
    grid-template-columns:68px minmax(0,1fr)!important;
  }
}

/* Ajuste 2026-05-17 v4: análises em tabela horizontal compacta e gestão de safras em cards verticais no mobile. */
@media (max-width: 768px){
  /* Análises: mantém formato de tabela horizontal dentro de uma área rolável, sem gerar scroll na página inteira. */
  .analysis-table-wrap.analysis-table-rev12,
  .table-responsive.analysis-table-wrap.analysis-table-rev12,
  .analysis-table-wrap.mobile-analysis-scroll{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    border-radius:18px!important;
    border:1px solid #dfeae5!important;
    background:#fff!important;
    box-shadow:0 10px 24px rgba(16,35,29,.065)!important;
    padding:0!important;
  }

  .analysis-table-wrap.mobile-analysis-scroll::before{
    content:'Deslize para o lado para ver todos os nutrientes';
    display:block!important;
    position:sticky!important;
    left:0!important;
    padding:8px 10px!important;
    font-size:.70rem!important;
    line-height:1!important;
    color:#6b7f75!important;
    background:#f5faf7!important;
    border-bottom:1px solid #e4efe9!important;
    font-weight:800!important;
    letter-spacing:.02em!important;
    z-index:3!important;
  }

  .analysis-table-wrap.analysis-table-rev12 table.analysis-list-table,
  .analysis-table-wrap.analysis-table-rev12 table.analysis-table-solo,
  .analysis-table-wrap.analysis-table-rev12 table.analysis-table-extrato,
  .analysis-table-wrap.analysis-table-rev12 table.analysis-table-foliar,
  table.mobile-analysis-table{
    display:table!important;
    width:max-content!important;
    min-width:760px!important;
    max-width:none!important;
    table-layout:fixed!important;
    border-collapse:separate!important;
    border-spacing:0!important;
    margin:0!important;
    background:#fff!important;
  }

  .analysis-table-wrap.analysis-table-rev12 table.analysis-table-foliar,
  table.mobile-analysis-table.analysis-table-foliar{min-width:830px!important;}

  .analysis-table-wrap.analysis-table-rev12 thead,
  table.mobile-analysis-table thead{display:table-header-group!important;}
  .analysis-table-wrap.analysis-table-rev12 tbody,
  table.mobile-analysis-table tbody{display:table-row-group!important;}
  .analysis-table-wrap.analysis-table-rev12 tr,
  table.mobile-analysis-table tr{
    display:table-row!important;
    width:auto!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    background:transparent!important;
  }
  .analysis-table-wrap.analysis-table-rev12 th,
  .analysis-table-wrap.analysis-table-rev12 td,
  table.mobile-analysis-table th,
  table.mobile-analysis-table td{
    display:table-cell!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    border:0!important;
    border-bottom:1px solid #edf3ef!important;
    padding:7px 5px!important;
    font-size:.66rem!important;
    line-height:1.08!important;
    vertical-align:middle!important;
    text-align:center!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    font-variant-numeric:tabular-nums!important;
  }
  .analysis-table-wrap.analysis-table-rev12 th,
  table.mobile-analysis-table th{
    background:#f4faf7!important;
    color:#123d2e!important;
    font-weight:950!important;
    font-size:.61rem!important;
    text-transform:none!important;
    letter-spacing:.02em!important;
    border-bottom:1px solid #dfeae5!important;
    position:sticky!important;
    top:0!important;
    z-index:2!important;
  }
  .analysis-table-wrap.analysis-table-rev12 td::before,
  table.mobile-analysis-table td::before{display:none!important;content:none!important;}

  .analysis-table-wrap.analysis-table-rev12 th:first-child,
  .analysis-table-wrap.analysis-table-rev12 td:first-child,
  table.mobile-analysis-table th:first-child,
  table.mobile-analysis-table td:first-child{
    position:sticky!important;
    left:0!important;
    z-index:4!important;
    width:92px!important;
    max-width:92px!important;
    min-width:92px!important;
    text-align:left!important;
    padding-left:8px!important;
    background:#fff!important;
    box-shadow:8px 0 12px rgba(16,35,29,.035)!important;
  }
  .analysis-table-wrap.analysis-table-rev12 thead th:first-child,
  table.mobile-analysis-table thead th:first-child{
    background:#eef8f2!important;
    z-index:5!important;
  }
  .analysis-table-wrap.analysis-table-rev12 th.analysis-actions-head,
  .analysis-table-wrap.analysis-table-rev12 td.analysis-actions-cell,
  table.mobile-analysis-table th.analysis-actions-head,
  table.mobile-analysis-table td.analysis-actions-cell{
    width:142px!important;
    min-width:142px!important;
    max-width:142px!important;
    text-align:center!important;
    background:#fff!important;
    overflow:visible!important;
  }
  .analysis-table-wrap.analysis-table-rev12 .analysis-date-main,
  table.mobile-analysis-table .analysis-date-main{font-size:.74rem!important;line-height:1!important;}
  .analysis-table-wrap.analysis-table-rev12 .analysis-ident-sub,
  table.mobile-analysis-table .analysis-ident-sub{font-size:.54rem!important;line-height:1.05!important;max-width:78px!important;}
  .analysis-table-wrap.analysis-table-rev12 .analysis-badge,
  table.mobile-analysis-table .analysis-badge{
    min-width:28px!important;
    padding:.08rem .18rem!important;
    font-size:.64rem!important;
  }
  .analysis-table-wrap.analysis-table-rev12 .table-actions-inline,
  table.mobile-analysis-table .table-actions-inline{
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    gap:4px!important;
    flex-wrap:nowrap!important;
  }
  .analysis-table-wrap.analysis-table-rev12 .table-actions-inline .btn,
  table.mobile-analysis-table .table-actions-inline .btn{
    min-height:28px!important;
    padding:4px 6px!important;
    font-size:.58rem!important;
    border-radius:999px!important;
    white-space:nowrap!important;
  }

  /* Gestão de safras: tabela anual vira cartão vertical por válvula, com safras compactas. */
  #tabelaAnualValvula .table-responsive{
    overflow:visible!important;
    border:0!important;
  }
  #tabelaAnualValvula table.poda-table{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    border-collapse:separate!important;
  }
  #tabelaAnualValvula .poda-table thead{display:none!important;}
  #tabelaAnualValvula .poda-table tbody{display:block!important;width:100%!important;}
  #tabelaAnualValvula .poda-table tr.linha-valvula{
    display:block!important;
    width:100%!important;
    margin:0 0 12px!important;
    padding:10px!important;
    border:1px solid #dfeae5!important;
    border-radius:18px!important;
    background:#fff!important;
    box-shadow:0 10px 22px rgba(16,35,29,.06)!important;
  }
  #tabelaAnualValvula .poda-table tr:not(.linha-valvula){display:block!important;}
  #tabelaAnualValvula .poda-table td{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    border:0!important;
    padding:7px 0!important;
    text-align:left!important;
    white-space:normal!important;
    overflow:visible!important;
  }
  #tabelaAnualValvula .poda-table td::before{
    content:attr(data-label);
    display:block!important;
    margin:0 0 5px!important;
    font-size:.68rem!important;
    text-transform:uppercase!important;
    letter-spacing:.06em!important;
    font-weight:950!important;
    color:#60746a!important;
  }
  #tabelaAnualValvula .poda-table td:first-child{
    padding:0 0 8px!important;
    border-bottom:1px solid #edf3ef!important;
    margin-bottom:4px!important;
  }
  #tabelaAnualValvula .poda-table td:first-child::before{display:none!important;}
  #tabelaAnualValvula .poda-table td.text-end{
    text-align:left!important;
    border-top:1px dashed #dfeae5!important;
    margin-top:6px!important;
    padding-top:10px!important;
  }
  #tabelaAnualValvula .poda-table .valvula-badge{
    display:inline-flex!important;
    max-width:100%!important;
    margin-bottom:5px!important;
    font-size:.80rem!important;
    padding:5px 9px!important;
    border-radius:999px!important;
  }
  #tabelaAnualValvula .poda-safra-box{
    border-radius:14px!important;
    padding:8px!important;
    background:#f8fbf9!important;
    border:1px solid #e1ede7!important;
    margin-bottom:5px!important;
    box-shadow:none!important;
  }
  #tabelaAnualValvula .poda-safra-box.vazia{
    color:#8a9a91!important;
    font-size:.78rem!important;
    text-align:center!important;
    padding:9px!important;
  }
  #tabelaAnualValvula .safra-linha{
    display:grid!important;
    grid-template-columns:74px minmax(0,1fr)!important;
    gap:6px!important;
    align-items:center!important;
    margin:0 0 4px!important;
    font-size:.76rem!important;
    line-height:1.16!important;
  }
  #tabelaAnualValvula .safra-label{
    font-size:.62rem!important;
    font-weight:950!important;
    color:#60746a!important;
    text-transform:uppercase!important;
    letter-spacing:.04em!important;
  }
  #tabelaAnualValvula .poda-date-cell,
  #tabelaAnualValvula .safra-ciclo,
  #tabelaAnualValvula .safra-meta,
  #tabelaAnualValvula .safra-producao{
    min-width:0!important;
    max-width:100%!important;
    font-size:.76rem!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
  #tabelaAnualValvula .poda-safra-box .btn{
    min-height:30px!important;
    padding:5px 8px!important;
    font-size:.70rem!important;
    border-radius:999px!important;
  }
  #tabelaAnualValvula .poda-chip{
    display:inline-flex!important;
    max-width:100%!important;
    white-space:normal!important;
    font-size:.68rem!important;
    padding:5px 8px!important;
    line-height:1.1!important;
  }
}

/* =====================================================================
   HOTFIX 2026-05-17 v3 - Mobile tabelas de análises e gestão de safras
   Corrige definitivamente o efeito de tabela quebrada/card espremido no iPhone.
   Estratégia: o JS cria uma visualização mobile isolada, sem herdar as regras
   antigas .analysis-table-rev12 e .mobile-card-table.
   ===================================================================== */
@media (max-width: 768px){
  /* Esconde a tabela original somente quando a cópia mobile segura estiver pronta. */
  .nu-original-analysis-hidden-mobile,
  .nu-original-safra-hidden-mobile{
    display:none!important;
  }

  /* ===== Análises: tabela horizontal real, limpa e rolável ===== */
  .nu-mobile-analysis-box{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:10px 0 14px!important;
    border:1px solid #dfeae5!important;
    border-radius:18px!important;
    background:#fff!important;
    box-shadow:0 10px 24px rgba(16,35,29,.065)!important;
    overflow:hidden!important;
  }
  .nu-mobile-analysis-hint{
    display:flex!important;
    align-items:center!important;
    gap:6px!important;
    padding:8px 10px!important;
    background:#f4faf7!important;
    border-bottom:1px solid #e2eee8!important;
    color:#60746a!important;
    font-size:.72rem!important;
    font-weight:850!important;
    letter-spacing:.01em!important;
    line-height:1.15!important;
  }
  .nu-mobile-analysis-scroll{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior-x:contain!important;
  }
  .nu-mobile-analysis-table{
    display:table!important;
    width:max-content!important;
    min-width:820px!important;
    max-width:none!important;
    border-collapse:separate!important;
    border-spacing:0!important;
    table-layout:auto!important;
    margin:0!important;
    background:#fff!important;
  }
  .nu-mobile-analysis-table.nu-mobile-foliar{min-width:930px!important;}
  .nu-mobile-analysis-table thead{display:table-header-group!important;}
  .nu-mobile-analysis-table tbody{display:table-row-group!important;}
  .nu-mobile-analysis-table tr{display:table-row!important;background:#fff!important;border:0!important;box-shadow:none!important;margin:0!important;padding:0!important;}
  .nu-mobile-analysis-table th,
  .nu-mobile-analysis-table td{
    display:table-cell!important;
    min-width:54px!important;
    max-width:86px!important;
    width:auto!important;
    padding:8px 7px!important;
    border:0!important;
    border-bottom:1px solid #edf3ef!important;
    vertical-align:middle!important;
    text-align:center!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    font-size:.72rem!important;
    line-height:1.05!important;
    font-weight:850!important;
    color:#173e31!important;
    font-variant-numeric:tabular-nums!important;
    position:static!important;
    float:none!important;
    clear:none!important;
  }
  .nu-mobile-analysis-table th{
    background:#f1f8f4!important;
    color:#123d2e!important;
    font-size:.66rem!important;
    font-weight:950!important;
    text-transform:none!important;
    letter-spacing:.02em!important;
    border-bottom:1px solid #dce9e2!important;
  }
  .nu-mobile-analysis-table th:first-child,
  .nu-mobile-analysis-table td:first-child{
    min-width:112px!important;
    max-width:112px!important;
    width:112px!important;
    text-align:left!important;
    padding-left:10px!important;
    background:#fff!important;
    color:#0d4b3b!important;
    position:sticky!important;
    left:0!important;
    z-index:2!important;
    box-shadow:7px 0 13px rgba(16,35,29,.045)!important;
  }
  .nu-mobile-analysis-table thead th:first-child{
    background:#ecf7f1!important;
    z-index:3!important;
  }
  .nu-mobile-analysis-table th:last-child,
  .nu-mobile-analysis-table td:last-child{
    min-width:142px!important;
    max-width:156px!important;
    width:148px!important;
    overflow:visible!important;
  }
  .nu-mobile-analysis-table td::before{display:none!important;content:none!important;}
  .nu-mobile-analysis-table .analysis-date-main{
    display:block!important;
    font-size:.88rem!important;
    line-height:1.05!important;
    font-weight:950!important;
    color:#0d4b3b!important;
  }
  .nu-mobile-analysis-table .analysis-ident-sub{
    display:block!important;
    margin-top:3px!important;
    max-width:96px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    font-size:.58rem!important;
    line-height:1.05!important;
    color:#b27200!important;
    font-weight:850!important;
  }
  .nu-mobile-analysis-table .analysis-badge{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:34px!important;
    max-width:70px!important;
    padding:3px 6px!important;
    border-radius:999px!important;
    background:#f3f8f5!important;
    border:1px solid #dfeae5!important;
    color:#173e31!important;
    font-size:.72rem!important;
    font-weight:950!important;
  }
  .nu-mobile-analysis-table .table-actions-inline{
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:center!important;
    gap:5px!important;
  }
  .nu-mobile-analysis-table .table-actions-inline .btn,
  .nu-mobile-analysis-table a.btn{
    min-height:30px!important;
    width:auto!important;
    padding:5px 7px!important;
    border-radius:999px!important;
    font-size:.62rem!important;
    font-weight:900!important;
    line-height:1!important;
    white-space:nowrap!important;
  }

  /* ===== Gestão de safras: cards mobile criados pelo JS ===== */
  .nu-mobile-safra-cards{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    margin-top:10px!important;
  }
  .nu-mobile-safra-card{
    background:#fff!important;
    border:1px solid #dfeae5!important;
    border-radius:18px!important;
    padding:11px!important;
    box-shadow:0 10px 24px rgba(16,35,29,.065)!important;
    overflow:hidden!important;
  }
  .nu-mobile-safra-head{
    padding-bottom:8px!important;
    margin-bottom:8px!important;
    border-bottom:1px solid #edf3ef!important;
  }
  .nu-mobile-safra-head .valvula-badge{
    margin-bottom:5px!important;
    font-size:.82rem!important;
    padding:6px 10px!important;
    border-radius:999px!important;
  }
  .nu-mobile-safra-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  .nu-mobile-safra-block{
    border:1px solid #e3eee8!important;
    background:#f8fbf9!important;
    border-radius:15px!important;
    padding:9px!important;
  }
  .nu-mobile-safra-title{
    display:block!important;
    margin-bottom:6px!important;
    color:#60746a!important;
    text-transform:uppercase!important;
    letter-spacing:.06em!important;
    font-size:.66rem!important;
    font-weight:950!important;
  }
  .nu-mobile-safra-block .poda-safra-box{
    margin:0!important;
    padding:0!important;
    border:0!important;
    box-shadow:none!important;
    background:transparent!important;
    min-width:0!important;
  }
  .nu-mobile-safra-block .safra-linha{
    display:grid!important;
    grid-template-columns:74px minmax(0,1fr)!important;
    gap:6px!important;
    align-items:center!important;
    margin:0 0 5px!important;
    line-height:1.15!important;
  }
  .nu-mobile-safra-block .safra-label{
    font-size:.63rem!important;
    color:#60746a!important;
    font-weight:950!important;
    text-transform:uppercase!important;
    letter-spacing:.03em!important;
  }
  .nu-mobile-safra-block .poda-date-cell,
  .nu-mobile-safra-block .safra-ciclo,
  .nu-mobile-safra-block .safra-meta,
  .nu-mobile-safra-block .safra-producao,
  .nu-mobile-safra-block .small{
    font-size:.76rem!important;
    line-height:1.15!important;
    min-width:0!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
  .nu-mobile-safra-block .btn{
    min-height:30px!important;
    padding:5px 8px!important;
    border-radius:999px!important;
    font-size:.68rem!important;
    white-space:nowrap!important;
  }
  .nu-mobile-safra-prod{
    margin-top:8px!important;
    padding-top:9px!important;
    border-top:1px dashed #dfeae5!important;
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:8px!important;
    flex-wrap:wrap!important;
  }
  .nu-mobile-safra-prod strong{color:#0d4b3b!important;font-size:.86rem!important;}
  .nu-mobile-safra-prod .poda-chip{font-size:.70rem!important;white-space:normal!important;line-height:1.1!important;}
}

/* =====================================================================
   HOTFIX 2026-05-17 v4 - Refinos mobile: análises + gestão de safras
   ===================================================================== */
@media (max-width: 768px){
  /* Garante que a tabela original das análises fique totalmente oculta
     quando a cópia mobile limpa for criada pelo JS. */
  .nu-original-analysis-hidden-mobile,
  .nu-original-analysis-hidden-mobile.table-responsive,
  .nu-original-analysis-hidden-mobile.analysis-table-wrap{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    height:0!important;
    max-height:0!important;
    min-height:0!important;
    overflow:hidden!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
  }
  body.nu-mobile-analysis-ready .analysis-table-solo:not(.nu-mobile-analysis-table),
  body.nu-mobile-analysis-ready .analysis-table-extrato:not(.nu-mobile-analysis-table),
  body.nu-mobile-analysis-ready .analysis-table-foliar:not(.nu-mobile-analysis-table){
    display:none!important;
  }

  /* Segunda tabela das análises: identificação mais legível e menos “oval sem texto”. */
  .nu-mobile-analysis-hint{
    justify-content:flex-start!important;
    font-size:.76rem!important;
    color:#315f50!important;
    background:linear-gradient(90deg,#eef8f2,#f8fcfa)!important;
  }
  .nu-mobile-analysis-hint::before{
    content:'↔'!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:24px!important;
    height:24px!important;
    border-radius:999px!important;
    background:#0d4b3b!important;
    color:#fff!important;
    font-size:.82rem!important;
    font-weight:950!important;
    box-shadow:0 6px 14px rgba(13,75,59,.16)!important;
  }
  .nu-mobile-analysis-table th:first-child,
  .nu-mobile-analysis-table td:first-child{
    min-width:136px!important;
    max-width:136px!important;
    width:136px!important;
    padding-left:9px!important;
    padding-right:9px!important;
  }
  .nu-mobile-analysis-table .analysis-date-main{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:88px!important;
    max-width:112px!important;
    padding:6px 9px!important;
    border-radius:999px!important;
    background:#0d4b3b!important;
    color:#fff!important;
    font-size:.78rem!important;
    line-height:1!important;
    letter-spacing:.02em!important;
    box-shadow:0 8px 16px rgba(13,75,59,.12)!important;
  }
  .nu-mobile-analysis-table .analysis-ident-sub{
    max-width:118px!important;
    margin-top:5px!important;
    font-size:.60rem!important;
    color:#a56800!important;
  }
  .nu-mobile-analysis-table th,
  .nu-mobile-analysis-table td{
    min-width:50px!important;
    padding:7px 6px!important;
    font-size:.70rem!important;
  }
  .nu-mobile-analysis-table th{font-size:.64rem!important;}

  /* Gestão de safras: gráfico de colheitas previstas mais compacto no celular. */
  .poda-chart-box,
  .grafico-chart-wrap .poda-chart-box{
    height:300px!important;
    min-height:300px!important;
  }
  .grafico-chart-wrap{overflow:hidden!important;}
  #podaChart{max-height:300px!important;}

  /* Tabela anual por válvula: centralização dos itens técnicos solicitados. */
  .nu-mobile-safra-block .safra-ciclo,
  .nu-mobile-safra-block .safra-meta,
  .nu-mobile-safra-block .safra-producao,
  #tabelaAnualValvula .poda-table .safra-ciclo,
  #tabelaAnualValvula .poda-table .safra-meta,
  #tabelaAnualValvula .poda-table .safra-producao{
    text-align:center!important;
    justify-self:center!important;
    width:100%!important;
    font-weight:850!important;
  }
  .nu-mobile-safra-block .safra-linha:has(.safra-ciclo),
  .nu-mobile-safra-block .safra-linha:has(.safra-meta),
  .nu-mobile-safra-block .safra-linha:has(.safra-producao),
  #tabelaAnualValvula .poda-table .safra-linha:has(.safra-ciclo),
  #tabelaAnualValvula .poda-table .safra-linha:has(.safra-meta),
  #tabelaAnualValvula .poda-table .safra-linha:has(.safra-producao){
    grid-template-columns:70px minmax(0,1fr)!important;
  }
}

/* =====================================================================
   HOTFIX 2026-05-17 v6 - Gráfico de safras somente no mobile
   ===================================================================== */
@media (max-width: 768px){
  .poda-chart-box,
  .grafico-chart-wrap .poda-chart-box{
    height:260px!important;
    min-height:260px!important;
  }
  #podaChart{
    max-height:260px!important;
  }
  .grafico-chart-wrap{
    padding-left:0!important;
    padding-right:0!important;
  }
}

/* =====================================================================
   HOTFIX 2026-05-17 v7 - Gráfico de safras mobile com scroll horizontal.
   Aplica apenas em telas pequenas e não altera desktop.
   ===================================================================== */
@media (max-width: 768px){
  .poda-chart-box.nu-safra-chart-mobile-scroll{
    width:100%!important;
    max-width:100%!important;
    height:370px!important;
    min-height:370px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    border-radius:18px!important;
    padding:6px 0 8px!important;
    scrollbar-width:thin;
  }
  .poda-chart-box.nu-safra-chart-mobile-scroll::before{
    content:'Deslize o gráfico para o lado · kg acima · válvulas na barra';
    display:inline-flex!important;
    align-items:center!important;
    margin:0 0 4px 6px!important;
    padding:3px 8px!important;
    border-radius:999px!important;
    background:#eef8f2!important;
    color:#0d4b3b!important;
    border:1px solid #d5eadf!important;
    font-size:.68rem!important;
    font-weight:850!important;
    letter-spacing:.01em!important;
    white-space:nowrap!important;
  }
  .poda-chart-box.nu-safra-chart-mobile-scroll canvas#podaChart{
    display:block!important;
    max-width:none!important;
    margin:0!important;
  }
}

/* =====================================================================
   HOTFIX 2026-05-22 v11 - Tablet/iPad horizontal: topbar compacta
   Objetivo: impedir que a primeira box/topbar fique alta demais no modo paisagem,
   mantendo desktop amplo e mobile vertical preservados.
   ===================================================================== */
@media (min-width: 769px) and (max-width: 1366px) and (orientation: landscape){
  html body .premium-content{
    padding:16px 20px!important;
  }

  html body .premium-topbar,
  html body .topbar.premium-topbar{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    justify-content:space-between!important;
    min-height:0!important;
    height:auto!important;
    max-height:none!important;
    padding:14px 16px!important;
    margin-bottom:16px!important;
    border-radius:24px!important;
    gap:14px!important;
    overflow:visible!important;
  }

  html body .premium-topbar > *,
  html body .topbar.premium-topbar > *{
    align-self:center!important;
    min-height:0!important;
  }

  html body .premium-topbar .topbar-title{
    display:block!important;
    min-width:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
  }

  html body .premium-topbar .page-kicker{
    padding:4px 8px!important;
    margin:0 0 5px!important;
    font-size:.60rem!important;
    line-height:1!important;
  }

  html body .premium-topbar h1{
    margin:0!important;
    font-size:1.42rem!important;
    line-height:1.04!important;
  }

  html body .premium-topbar .dashboard-welcome{
    margin-top:3px!important;
    font-size:.76rem!important;
    line-height:1.12!important;
  }

  html body .premium-topbar .topbar-account.topbar-account-clean{
    width:auto!important;
    min-width:0!important;
    max-width:56vw!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:8px!important;
    align-self:center!important;
  }

  html body .topbar-account-professional:not(.topbar-revenda-corp){
    flex:0 1 405px!important;
    width:auto!important;
    min-width:340px!important;
    max-width:405px!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    display:grid!important;
    grid-template-columns:minmax(92px,.92fr) minmax(76px,.68fr) minmax(130px,1.12fr)!important;
    align-items:center!important;
    gap:6px!important;
    padding:6px!important;
    border-radius:18px!important;
    overflow:visible!important;
  }

  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-account-line{
    min-height:34px!important;
    height:auto!important;
    padding:5px 7px!important;
    border-radius:13px!important;
    grid-template-columns:18px minmax(0,1fr)!important;
    column-gap:5px!important;
    align-items:center!important;
  }

  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-account-icon{
    width:18px!important;
    height:18px!important;
    min-width:18px!important;
    border-radius:7px!important;
  }

  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-account-icon svg{
    width:11px!important;
    height:11px!important;
  }

  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-account-text{
    gap:1px!important;
  }

  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-account-label{
    font-size:.54rem!important;
    line-height:1!important;
    letter-spacing:.045em!important;
  }

  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-client-name,
  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-plan-name{
    font-size:.68rem!important;
    line-height:1.02!important;
  }

  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-limit-value{
    font-size:.60rem!important;
    line-height:1.02!important;
    gap:1px!important;
  }

  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-limit-row{
    line-height:1.02!important;
  }

  html body .premium-topbar .account-menu-dropdown{
    margin-left:0!important;
    flex:0 0 auto!important;
    align-self:center!important;
  }

  html body .premium-topbar .account-menu-button{
    min-height:30px!important;
    padding:.28rem .62rem!important;
    font-size:.70rem!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
}

@media (min-width: 769px) and (max-width: 1180px) and (orientation: landscape){
  html body .premium-topbar,
  html body .topbar.premium-topbar{
    grid-template-columns:1fr!important;
    align-items:start!important;
    padding:13px 15px!important;
    gap:10px!important;
  }

  html body .premium-topbar .topbar-account.topbar-account-clean{
    max-width:100%!important;
    width:100%!important;
    justify-content:flex-start!important;
  }

  html body .topbar-account-professional:not(.topbar-revenda-corp){
    flex:1 1 auto!important;
    max-width:100%!important;
    min-width:0!important;
  }
}


/* =====================================================================
   HOTFIX 2026-05-22 v12 - Tablet/iPad: topbar, safras e financeiro
   ===================================================================== */
@media (min-width: 769px) and (max-width: 1366px) and (orientation: landscape){
  html, body{max-width:100%;overflow-x:hidden!important;}
  html body .premium-content{max-width:calc(100vw - 320px)!important;overflow-x:hidden!important;}
  html body .premium-topbar,
  html body .topbar.premium-topbar{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:8px!important;
    padding:12px 14px!important;
    margin-bottom:14px!important;
    border-radius:22px!important;
    align-items:center!important;
  }
  html body .premium-topbar .page-kicker{font-size:.56rem!important;padding:3px 8px!important;margin-bottom:4px!important;}
  html body .premium-topbar h1{font-size:1.32rem!important;line-height:1.02!important;}
  html body .premium-topbar .dashboard-welcome{font-size:.72rem!important;margin-top:2px!important;}
  html body .premium-topbar .topbar-account.topbar-account-clean{
    width:auto!important;max-width:58vw!important;display:flex!important;flex-direction:row!important;gap:6px!important;justify-content:flex-end!important;align-items:center!important;
  }
  html body .topbar-account-professional:not(.topbar-revenda-corp){
    flex:0 1 520px!important;max-width:520px!important;min-width:0!important;display:grid!important;grid-template-columns:1fr 1fr 1.55fr!important;gap:5px!important;padding:5px!important;border-radius:16px!important;
  }
  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-account-line{min-height:28px!important;padding:4px 6px!important;border-radius:11px!important;grid-template-columns:16px minmax(0,1fr)!important;column-gap:4px!important;}
  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-account-icon{width:16px!important;height:16px!important;min-width:16px!important;border-radius:6px!important;}
  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-account-icon svg{width:10px!important;height:10px!important;}
  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-account-label{font-size:.48rem!important;line-height:1!important;letter-spacing:.04em!important;}
  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-client-name,
  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-plan-name{font-size:.62rem!important;line-height:1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-limit-value{font-size:.54rem!important;line-height:1.02!important;}
  html body .premium-topbar .account-menu-button{min-height:28px!important;padding:.25rem .55rem!important;font-size:.66rem!important;border-radius:12px!important;}
  .finance-table-wrap{max-width:100%!important;overflow-x:hidden!important;}
  .finance-receitas-table{table-layout:fixed!important;width:100%!important;min-width:0!important;font-size:.64rem!important;}
  .finance-receitas-table th,.finance-receitas-table td{padding:5px 4px!important;white-space:normal!important;overflow-wrap:anywhere!important;vertical-align:middle!important;}
  .finance-receitas-table th{font-size:.50rem!important;letter-spacing:.025em!important;}
  .finance-receitas-table .finance-cell-main{font-size:.62rem!important;line-height:1.05!important;}
  .finance-receitas-table .finance-cell-sub{font-size:.52rem!important;line-height:1.05!important;}
  .finance-date-chip{font-size:.52rem!important;padding:3px 4px!important;border-radius:7px!important;line-height:1.05!important;}
  .finance-ciclo-badge{min-width:0!important;font-size:.56rem!important;padding:4px 5px!important;}
  .finance-actions-inline{gap:2px!important;justify-content:flex-end!important;flex-wrap:wrap!important;}
  .finance-actions-inline .btn{font-size:.52rem!important;padding:3px 4px!important;border-radius:7px!important;line-height:1!important;}
  .finance-count-badge,.finance-count-hint{font-size:.68rem!important;}
}
@media (min-width:769px) and (max-width:1024px) and (orientation:portrait){
  .finance-receitas-table{font-size:.62rem!important;table-layout:fixed!important;}
  .finance-receitas-table th,.finance-receitas-table td{padding:5px 3px!important;white-space:normal!important;overflow-wrap:anywhere!important;}
  .finance-receitas-table .finance-cell-main{font-size:.60rem!important;}
  .finance-receitas-table .finance-cell-sub{font-size:.50rem!important;}
  .finance-actions-inline{flex-wrap:wrap!important;gap:2px!important;}
  .finance-actions-inline .btn{font-size:.50rem!important;padding:3px 4px!important;}
}


/* =====================================================================
   HOTFIX 2026-05-22 v13 - Tablet/iPad: topbar em uma linha e tabela safra
   ===================================================================== */
@media (min-width: 769px) and (max-width: 1366px){
  html body .topbar-account-professional:not(.topbar-revenda-corp){
    display:grid!important;
    grid-template-columns:minmax(115px,1fr) minmax(105px,.85fr) minmax(150px,1.15fr)!important;
    grid-auto-flow:column!important;
    align-items:center!important;
    gap:5px!important;
    padding:5px!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
    overflow:hidden!important;
  }
  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-account-line,
  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-account-line:last-child,
  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-account-limit{
    grid-column:auto!important;
    grid-row:auto!important;
    min-width:0!important;
    width:auto!important;
    min-height:28px!important;
    height:auto!important;
    padding:4px 6px!important;
    border-radius:11px!important;
    display:grid!important;
    grid-template-columns:15px minmax(0,1fr)!important;
    gap:4px!important;
    align-items:center!important;
    background:rgba(255,255,255,.70)!important;
    border:0!important;
    box-shadow:inset 0 0 0 1px rgba(15,61,51,.04)!important;
  }
  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-account-icon{
    display:grid!important;width:15px!important;height:15px!important;min-width:15px!important;border-radius:6px!important;
  }
  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-account-icon svg{width:9px!important;height:9px!important;}
  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-account-text{min-width:0!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:0!important;}
  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-account-label{font-size:.46rem!important;line-height:.96!important;letter-spacing:.035em!important;white-space:nowrap!important;}
  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-client-name,
  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-plan-name{font-size:.60rem!important;line-height:1!important;max-width:100%!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-limit-value{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:5px!important;font-size:.54rem!important;line-height:1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-limit-row{display:inline-flex!important;width:auto!important;line-height:1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-limit-row + .topbar-limit-row::before{content:'·'!important;display:inline-block!important;margin-right:5px!important;color:#8b9a93!important;}
}
@media (min-width: 769px) and (max-width: 1366px) and (orientation: landscape){
  html body .premium-topbar,
  html body .topbar.premium-topbar{grid-template-columns:minmax(260px,.75fr) minmax(440px,1.15fr) auto!important;gap:8px!important;padding:10px 14px!important;align-items:center!important;}
  html body .premium-topbar .topbar-title{min-width:0!important;}
  html body .premium-topbar .topbar-account.topbar-account-clean{display:contents!important;}
  html body .premium-topbar .topbar-account-professional:not(.topbar-revenda-corp){max-width:none!important;width:100%!important;}
  html body .premium-topbar .account-menu-dropdown{justify-self:end!important;align-self:center!important;}
}
@media (min-width: 769px) and (max-width: 1024px) and (orientation: portrait){
  html body .premium-topbar,
  html body .topbar.premium-topbar{padding:12px 14px!important;margin-bottom:14px!important;gap:8px!important;border-radius:22px!important;}
  html body .premium-topbar .page-kicker{font-size:.56rem!important;padding:3px 8px!important;margin-bottom:4px!important;}
  html body .premium-topbar h1{font-size:1.26rem!important;line-height:1.02!important;}
  html body .premium-topbar .dashboard-welcome{font-size:.72rem!important;line-height:1.06!important;margin-top:2px!important;}
  html body .premium-topbar .topbar-account.topbar-account-clean{width:100%!important;max-width:100%!important;display:flex!important;flex-direction:row!important;align-items:center!important;gap:6px!important;}
  html body .premium-topbar .topbar-account-professional:not(.topbar-revenda-corp){flex:1 1 auto!important;max-width:none!important;width:100%!important;grid-template-columns:minmax(95px,1fr) minmax(85px,.8fr) minmax(140px,1.2fr)!important;}
  html body .premium-topbar .account-menu-button{min-height:28px!important;padding:.24rem .52rem!important;font-size:.64rem!important;border-radius:12px!important;}
}
@media (min-width: 769px) and (max-width: 1366px){
  .safras-programadas-premium .table-responsive{overflow-x:hidden!important;max-width:100%!important;}
  .safras-programadas-premium .poda-table{width:100%!important;min-width:0!important;table-layout:fixed!important;border-spacing:0 4px!important;}
  .safras-programadas-premium .poda-table th:nth-child(1){width:16%!important;}
  .safras-programadas-premium .poda-table th:nth-child(2),
  .safras-programadas-premium .poda-table th:nth-child(3),
  .safras-programadas-premium .poda-table th:nth-child(4){width:23%!important;}
  .safras-programadas-premium .poda-table th:nth-child(5){width:15%!important;}
  .safras-programadas-premium .poda-table th{font-size:.54rem!important;padding:.32rem .25rem!important;letter-spacing:.025em!important;}
  .safras-programadas-premium .poda-table td{font-size:.66rem!important;padding:.20rem .20rem!important;white-space:normal!important;overflow-wrap:anywhere!important;}
  .safras-programadas-premium .poda-safra-box{min-width:0!important;width:100%!important;padding:5px!important;border-radius:10px!important;line-height:1.03!important;}
  .safras-programadas-premium .safra-linha{display:grid!important;grid-template-columns:minmax(46px,.75fr) minmax(0,1.25fr)!important;gap:3px!important;align-items:center!important;margin-bottom:2px!important;}
  .safras-programadas-premium .safra-label{font-size:.50rem!important;letter-spacing:.025em!important;white-space:nowrap!important;}
  .safras-programadas-premium .poda-date-cell{min-width:0!important;width:100%!important;text-align:left!important;font-size:.58rem!important;padding:2px 4px!important;border-radius:7px!important;}
  .safras-programadas-premium .safra-ciclo,
  .safras-programadas-premium .safra-meta{font-size:.58rem!important;line-height:1.04!important;}
  .safras-programadas-premium .safra-producao{display:block!important;background:#e8f6ee!important;color:#0d4b3b!important;border:1px solid #cde9d8!important;border-radius:8px!important;padding:3px 4px!important;font-size:.62rem!important;font-weight:950!important;line-height:1!important;text-align:center!important;box-shadow:0 4px 10px rgba(15,107,79,.08)!important;}
  .safras-programadas-premium .poda-safra-box .btn{font-size:.52rem!important;padding:2px 4px!important;border-radius:6px!important;}
  .safras-programadas-premium .poda-chip{font-size:.55rem!important;padding:3px 5px!important;}
  .safras-programadas-premium .valvula-badge{min-width:34px!important;font-size:.62rem!important;padding:3px 5px!important;border-radius:9px!important;}
}

/* v14 - Safras Programadas: organização também no navegador normal.
   Mantém somente os itens técnicos solicitados no corpo da safra:
   Poda, Colheita, Ciclo, Repouso, Meta/ha e Prod./área. */
#tabelaAnualValvula .poda-safra-box{
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:10px 10px!important;
}
#tabelaAnualValvula .poda-safra-box .safra-linha{
  display:grid;
  grid-template-columns:76px minmax(0,1fr);
  align-items:center;
  gap:6px;
  min-height:24px;
  margin:0!important;
}
#tabelaAnualValvula .poda-safra-box .safra-label{
  font-size:.66rem!important;
  line-height:1.05!important;
  letter-spacing:.075em!important;
  text-transform:uppercase!important;
  color:#6b7b76!important;
  font-weight:800!important;
  white-space:nowrap!important;
}
#tabelaAnualValvula .poda-safra-box .poda-date-cell,
#tabelaAnualValvula .poda-safra-box .safra-ciclo,
#tabelaAnualValvula .poda-safra-box .safra-repouso,
#tabelaAnualValvula .poda-safra-box .safra-meta{
  display:block;
  width:100%;
  padding:5px 7px;
  border:1px solid rgba(13,75,59,.10);
  border-radius:10px;
  background:#fff;
  color:#063b2f;
  font-size:.78rem!important;
  line-height:1.05!important;
  font-weight:800!important;
  text-align:left!important;
  white-space:nowrap!important;
}
#tabelaAnualValvula .poda-safra-box .safra-producao{
  display:block;
  width:100%;
  padding:6px 8px;
  border-radius:11px;
  background:#0d4b3b;
  color:#fff;
  font-size:.82rem!important;
  line-height:1.05!important;
  font-weight:900!important;
  text-align:left!important;
  white-space:nowrap!important;
  box-shadow:0 8px 18px rgba(13,75,59,.15);
}
#tabelaAnualValvula .poda-safra-box .safra-acoes{
  display:flex;
  justify-content:flex-end;
  gap:5px;
  margin-top:4px;
}
#tabelaAnualValvula .poda-safra-box .safra-acoes .btn{
  padding:3px 8px!important;
  font-size:.68rem!important;
  line-height:1.2!important;
  border-radius:999px!important;
}
@media (min-width: 992px){
  #tabelaAnualValvula .poda-table th,
  #tabelaAnualValvula .poda-table td{
    padding:9px 8px!important;
    vertical-align:top!important;
  }
  #tabelaAnualValvula .poda-table .safra-cell{
    min-width:205px!important;
  }
}
@media (max-width: 1199.98px){
  #tabelaAnualValvula .poda-safra-box .safra-linha{
    grid-template-columns:68px minmax(0,1fr);
  }
  #tabelaAnualValvula .poda-safra-box .poda-date-cell,
  #tabelaAnualValvula .poda-safra-box .safra-ciclo,
  #tabelaAnualValvula .poda-safra-box .safra-repouso,
  #tabelaAnualValvula .poda-safra-box .safra-meta,
  #tabelaAnualValvula .poda-safra-box .safra-producao{
    font-size:.72rem!important;
    padding:5px 6px!important;
  }
}


/* v15 - Tabela anual por válvula: dados centralizados e cores por item.
   Aplicado no desktop, tablet horizontal e tablet vertical. */
#tabelaAnualValvula .poda-safra-box .safra-linha{
  grid-template-columns:78px minmax(0,1fr)!important;
  align-items:center!important;
}
#tabelaAnualValvula .poda-safra-box .safra-label{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:25px!important;
  padding:4px 5px!important;
  border-radius:999px!important;
  font-size:.61rem!important;
  line-height:1!important;
  text-align:center!important;
  letter-spacing:.055em!important;
  color:#0d4b3b!important;
  background:#eef6f2!important;
  border:1px solid rgba(13,75,59,.10)!important;
}
#tabelaAnualValvula .poda-safra-box .poda-date-cell,
#tabelaAnualValvula .poda-safra-box .safra-ciclo,
#tabelaAnualValvula .poda-safra-box .safra-repouso,
#tabelaAnualValvula .poda-safra-box .safra-meta,
#tabelaAnualValvula .poda-safra-box .safra-producao{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:25px!important;
  text-align:center!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}
#tabelaAnualValvula .poda-safra-box .safra-linha-poda .safra-label,
#tabelaAnualValvula .poda-safra-box .poda-date-poda{
  background:#fff6df!important;
  border-color:#f0d79a!important;
  color:#7a5200!important;
}
#tabelaAnualValvula .poda-safra-box .safra-linha-colheita .safra-label,
#tabelaAnualValvula .poda-safra-box .poda-date-colheita{
  background:#e9f8ee!important;
  border-color:#bfe6cb!important;
  color:#0f5c38!important;
}
#tabelaAnualValvula .poda-safra-box .safra-linha-ciclo .safra-label,
#tabelaAnualValvula .poda-safra-box .safra-ciclo{
  background:#eef4ff!important;
  border-color:#c9d9f4!important;
  color:#234b7b!important;
}
#tabelaAnualValvula .poda-safra-box .safra-linha-repouso .safra-label,
#tabelaAnualValvula .poda-safra-box .safra-repouso{
  background:#f4efff!important;
  border-color:#d9ccf3!important;
  color:#4e3b7a!important;
}
#tabelaAnualValvula .poda-safra-box .safra-linha-meta .safra-label,
#tabelaAnualValvula .poda-safra-box .safra-meta{
  background:#eef7f7!important;
  border-color:#c7e5e1!important;
  color:#0e5953!important;
}
#tabelaAnualValvula .poda-safra-box .safra-linha-producao .safra-label{
  background:#dff4eb!important;
  border-color:#a9dec8!important;
  color:#063b2f!important;
}
#tabelaAnualValvula .poda-safra-box .safra-producao{
  background:linear-gradient(135deg,#0d4b3b,#0f6b4f)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  color:#fff!important;
  font-weight:950!important;
  box-shadow:0 8px 18px rgba(13,75,59,.18)!important;
}
@media (min-width: 769px) and (max-width: 1366px){
  #tabelaAnualValvula .poda-safra-box .safra-linha{
    grid-template-columns:minmax(48px,.82fr) minmax(0,1.18fr)!important;
    gap:3px!important;
  }
  #tabelaAnualValvula .poda-safra-box .safra-label{
    min-height:21px!important;
    padding:3px 3px!important;
    font-size:.48rem!important;
    letter-spacing:.025em!important;
  }
  #tabelaAnualValvula .poda-safra-box .poda-date-cell,
  #tabelaAnualValvula .poda-safra-box .safra-ciclo,
  #tabelaAnualValvula .poda-safra-box .safra-repouso,
  #tabelaAnualValvula .poda-safra-box .safra-meta,
  #tabelaAnualValvula .poda-safra-box .safra-producao{
    min-height:21px!important;
    padding:3px 4px!important;
    font-size:.55rem!important;
    line-height:1!important;
  }
}
@media (max-width: 768px){
  #tabelaAnualValvula .poda-safra-box .safra-linha{
    grid-template-columns:72px minmax(0,1fr)!important;
  }
  #tabelaAnualValvula .poda-safra-box .safra-label,
  #tabelaAnualValvula .poda-safra-box .poda-date-cell,
  #tabelaAnualValvula .poda-safra-box .safra-ciclo,
  #tabelaAnualValvula .poda-safra-box .safra-repouso,
  #tabelaAnualValvula .poda-safra-box .safra-meta,
  #tabelaAnualValvula .poda-safra-box .safra-producao{
    text-align:center!important;
  }
}


/* =====================================================================
   HOTFIX 2026-05-22 v16 - Tablet vertical: menu acima do painel técnico
   e remoção do limite na topbar em mobile/tablet.
   ===================================================================== */
@media (min-width: 769px) and (max-width: 1024px) and (orientation: portrait){
  html body.sidebar-open{overflow:hidden!important;}
  html body .sidebar,
  html body .premium-sidebar{
    position:fixed!important;
    top:0!important;
    left:0!important;
    bottom:0!important;
    height:100dvh!important;
    z-index:2147483000!important;
    transform:translateX(-105%);
    transition:transform .24s ease!important;
    box-shadow:22px 0 50px rgba(5,30,24,.32)!important;
  }
  html body.sidebar-open .sidebar,
  html body.sidebar-open .premium-sidebar{
    transform:translateX(0)!important;
  }
  html body .sidebar-backdrop{
    display:block!important;
    position:fixed!important;
    inset:0!important;
    z-index:2147482000!important;
    background:rgba(5,30,24,.48)!important;
    opacity:0!important;
    pointer-events:none!important;
    transition:opacity .22s ease!important;
  }
  html body.sidebar-open .sidebar-backdrop{
    opacity:1!important;
    pointer-events:auto!important;
  }
  html body.sidebar-open .premium-topbar,
  html body.sidebar-open .topbar.premium-topbar,
  html body.sidebar-open .dashboard-hero,
  html body.sidebar-open .team-dash-hero,
  html body.sidebar-open .rec-hero,
  html body.sidebar-open .soil-hero,
  html body.sidebar-open .nuva-hero{
    position:relative!important;
    z-index:1!important;
  }
}

/* Retira o bloco Limite da área superior em mobile e tablet para reduzir altura. */
@media (max-width: 768px), (min-width: 769px) and (max-width: 1366px){
  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-account-limit,
  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-account-line.topbar-account-limit,
  html body .topbar-account-professional:not(.topbar-revenda-corp) .topbar-account-line:last-child:nth-child(3){
    display:none!important;
  }
  html body .topbar-account-professional:not(.topbar-revenda-corp){
    grid-template-columns:minmax(110px,1fr) minmax(100px,.9fr)!important;
    align-items:center!important;
    max-width:360px!important;
  }
}

@media (min-width: 769px) and (max-width: 1366px) and (orientation: landscape){
  html body .premium-topbar,
  html body .topbar.premium-topbar{
    grid-template-columns:minmax(260px,.85fr) minmax(250px,.75fr) auto!important;
    gap:8px!important;
    padding:9px 13px!important;
  }
  html body .premium-topbar .topbar-account-professional:not(.topbar-revenda-corp){
    width:100%!important;
    max-width:360px!important;
    min-width:0!important;
    padding:4px!important;
    gap:4px!important;
    border-radius:15px!important;
  }
  html body .premium-topbar .topbar-account-professional:not(.topbar-revenda-corp) .topbar-account-line{
    min-height:25px!important;
    padding:3px 5px!important;
  }
}

@media (min-width: 769px) and (max-width: 1024px) and (orientation: portrait){
  html body .premium-topbar,
  html body .topbar.premium-topbar{
    padding:10px 12px!important;
    gap:7px!important;
  }
  html body .premium-topbar .topbar-account.topbar-account-clean{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:6px!important;
    width:100%!important;
  }
  html body .premium-topbar .topbar-account-professional:not(.topbar-revenda-corp){
    flex:1 1 auto!important;
    width:auto!important;
    max-width:none!important;
    grid-template-columns:minmax(110px,1fr) minmax(100px,.9fr)!important;
    padding:4px!important;
    gap:4px!important;
    border-radius:15px!important;
  }
  html body .premium-topbar .topbar-account-professional:not(.topbar-revenda-corp) .topbar-account-line{
    min-height:25px!important;
    padding:3px 5px!important;
  }
  html body .premium-topbar .account-menu-dropdown{
    flex:0 0 auto!important;
  }
  html body .premium-topbar .account-menu-button{
    min-height:26px!important;
    padding:.22rem .48rem!important;
    font-size:.62rem!important;
  }
}

/* =====================================================================
   HOTFIX 2026-05-22 v17 - Mobile/tablet horizontal: seta de recolher
   sempre acima do painel técnico/topbar.
   ===================================================================== */
@media (max-width: 1024px) and (orientation: landscape){
  html body .sidebar,
  html body .premium-sidebar{
    z-index:2147483000!important;
    isolation:isolate!important;
  }
  html body .sidebar .sidebar-collapse-toggle,
  html body .premium-sidebar .sidebar-collapse-toggle{
    display:inline-flex!important;
    position:absolute!important;
    top:14px!important;
    right:-15px!important;
    width:32px!important;
    height:32px!important;
    min-width:32px!important;
    min-height:32px!important;
    border-radius:999px!important;
    align-items:center!important;
    justify-content:center!important;
    z-index:2147483100!important;
    pointer-events:auto!important;
    box-shadow:0 10px 22px rgba(5,30,24,.22)!important;
  }
  html body .premium-topbar,
  html body .topbar.premium-topbar,
  html body .dashboard-hero,
  html body .team-dash-hero,
  html body .rec-hero,
  html body .soil-hero,
  html body .nuva-hero{
    z-index:10!important;
  }
  html body.sidebar-open .premium-topbar,
  html body.sidebar-open .topbar.premium-topbar{
    z-index:1!important;
  }
}

@media (min-width: 769px) and (max-width: 1366px) and (orientation: landscape){
  html body .sidebar,
  html body .premium-sidebar{
    z-index:2147483000!important;
  }
  html body .sidebar .sidebar-collapse-toggle,
  html body .premium-sidebar .sidebar-collapse-toggle{
    z-index:2147483100!important;
  }
}

/* =====================================================================
   HOTFIX 2026-05-22 v18 - Tablet horizontal: seta de recolher totalmente visível
   Evita que metade do botão fique atrás do painel técnico/topbar.
   ===================================================================== */
@media (min-width: 769px) and (max-width: 1366px) and (orientation: landscape){
  html body .sidebar,
  html body .premium-sidebar{
    z-index:2147483000!important;
    overflow:visible!important;
    contain:none!important;
  }
  html body .sidebar .sidebar-collapse-toggle,
  html body .premium-sidebar .sidebar-collapse-toggle{
    position:absolute!important;
    top:12px!important;
    right:8px!important;
    left:auto!important;
    transform:none!important;
    width:30px!important;
    height:30px!important;
    min-width:30px!important;
    min-height:30px!important;
    z-index:2147483600!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    box-shadow:0 8px 18px rgba(5,30,24,.25)!important;
  }
  html body.sidebar-collapsed .sidebar .sidebar-collapse-toggle,
  html body.sidebar-collapsed .premium-sidebar .sidebar-collapse-toggle,
  html body.sidebar-mini .sidebar .sidebar-collapse-toggle,
  html body.sidebar-mini .premium-sidebar .sidebar-collapse-toggle{
    right:6px!important;
  }
  html body .premium-topbar,
  html body .topbar.premium-topbar,
  html body .dashboard-hero,
  html body .team-dash-hero,
  html body .rec-hero,
  html body .soil-hero,
  html body .nuva-hero{
    z-index:5!important;
  }
}

/* =====================================================================
   HOTFIX 2026-05-22 v19 - Tablet horizontal: seta alinhada com a logomarca
   Mantém o botão visível sem sobrepor o painel técnico e com centro vertical
   alinhado ao brand mark/logomarca do menu lateral.
   ===================================================================== */
@media (min-width: 769px) and (max-width: 1366px) and (orientation: landscape){
  html body .sidebar .sidebar-collapse-toggle,
  html body .premium-sidebar .sidebar-collapse-toggle{
    top:21px!important;
    right:12px!important;
    left:auto!important;
    transform:none!important;
    width:30px!important;
    height:30px!important;
    min-width:30px!important;
    min-height:30px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    z-index:2147483600!important;
  }
  html body.sidebar-collapsed .sidebar .sidebar-collapse-toggle,
  html body.sidebar-collapsed .premium-sidebar .sidebar-collapse-toggle,
  html body.sidebar-mini .sidebar .sidebar-collapse-toggle,
  html body.sidebar-mini .premium-sidebar .sidebar-collapse-toggle{
    top:21px!important;
    right:10px!important;
  }
}

/* =====================================================================
   HOTFIX 2026-05-22 v20 - Tablet horizontal: microalinhamento da seta
   Ajuste fino para alinhar o centro da seta com o centro visual da logomarca.
   ===================================================================== */
@media (min-width: 769px) and (max-width: 1366px) and (orientation: landscape){
  html body .sidebar .sidebar-collapse-toggle,
  html body .premium-sidebar .sidebar-collapse-toggle{
    top:25px!important;
    right:12px!important;
    left:auto!important;
    transform:none!important;
  }
  html body.sidebar-collapsed .sidebar .sidebar-collapse-toggle,
  html body.sidebar-collapsed .premium-sidebar .sidebar-collapse-toggle,
  html body.sidebar-mini .sidebar .sidebar-collapse-toggle,
  html body.sidebar-mini .premium-sidebar .sidebar-collapse-toggle{
    top:25px!important;
    right:10px!important;
  }
}

/* =====================================================================
   HOTFIX 2026-05-22 v21 - Tablet horizontal: seta alinhada ao "Nu" da logomarca
   Desce levemente a seta em relação ao v20, mantendo visibilidade e sem sobrepor o painel técnico.
   ===================================================================== */
@media (min-width: 769px) and (max-width: 1366px) and (orientation: landscape){
  html body .sidebar .sidebar-collapse-toggle,
  html body .premium-sidebar .sidebar-collapse-toggle{
    top:31px!important;
    right:12px!important;
    left:auto!important;
    transform:none!important;
  }
  html body.sidebar-collapsed .sidebar .sidebar-collapse-toggle,
  html body.sidebar-collapsed .premium-sidebar .sidebar-collapse-toggle,
  html body.sidebar-mini .sidebar .sidebar-collapse-toggle,
  html body.sidebar-mini .premium-sidebar .sidebar-collapse-toggle{
    top:31px!important;
    right:10px!important;
  }
}
