:root{
  --tb-font-base:14px;
  --tb-font-title:20px;
  --tb-font-card-title:16px;
  --tb-font-muted:13px;
  --tb-header-title-font-family:inherit;
  --tb-header-subtitle-font-family:inherit;
  --tb-header-title-size:20px;
  --tb-header-subtitle-size:13px;
  --tb-color-primary:#2b4cff;
  --tb-color-accent:#7c4dff;
  --tb-color-bg:#ffffff;
  --tb-color-card-bg:#ffffff;
  --tb-color-card-alt:#fbfcff;
  --tb-color-border:#e6eaf2;
  --tb-color-status:#ffd54a;
}
.tb-wrap{width:100%;max-width:1200px;margin:18px auto;padding:18px;box-sizing:border-box;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial;font-size:var(--tb-font-base);background:var(--tb-color-bg);border-radius:18px}
.tb-wrap.tb-client-portal{background:var(--tb-color-bg) !important;border:1px solid var(--tb-color-border) !important;box-shadow:0 14px 34px rgba(15,23,42,.10) !important;border-radius:0 !important;overflow:hidden;}
.tb-wrap.tb-client-portal.tb-theme-light{box-shadow:0 10px 30px rgba(15,23,42,.08) !important;}
.tb-wrap.tb-client-portal.tb-theme-modern{box-shadow:0 14px 34px rgba(15,23,42,.10) !important;}
.tb-wrap.tb-client-portal.tb-theme-dark{box-shadow:0 18px 42px rgba(0,0,0,.28) !important;}

.tb-layout{display:flex;gap:14px;align-items:flex-start}
.tb-sidebar{width:220px;min-width:220px;position:sticky;top:18px}
.tb-sidebar-title{font-weight:900;opacity:.8;margin:6px 0 10px 0}
.tb-sidebtn{width:100%;text-align:left;border:1px solid #d7deea;background:#fff;padding:10px 12px;border-radius:14px;cursor:pointer;display:flex;align-items:center;gap:10px;margin-bottom:10px}
.tb-sidebtn .dashicons{font-size:18px;line-height:1;opacity:.9}
.tb-sidebtn-active{background:color-mix(in srgb, var(--tb-color-primary) 8%, #ffffff);border-color:color-mix(in srgb, var(--tb-color-primary) 35%, var(--tb-color-border))}
.tb-content{flex:1;min-width:0}

.tb-sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.tb-sidebar-close{display:none;width:38px;height:38px;border:1px solid #d7deea;background:#fff;border-radius:12px;cursor:pointer;font-size:24px;line-height:1;color:inherit}
.tb-mobilebar{display:none;align-items:center;gap:12px;margin:0 0 12px 0;padding:10px 12px;border:1px solid var(--tb-color-border);border-radius:16px;background:var(--tb-color-card-alt)}
.tb-mobilebar-text{min-width:0}
.tb-mobilebar-title{font-weight:900;line-height:1.15}
.tb-mobilebar-sub{margin-top:3px;font-size:12px;opacity:.74}
.tb-hamburger{width:46px;height:46px;border:1px solid #d7deea;background:#fff;border-radius:14px;cursor:pointer;display:inline-flex;flex-direction:column;justify-content:center;gap:5px;padding:0 12px;flex:0 0 auto}
.tb-hamburger span{display:block;width:100%;height:2px;border-radius:999px;background:currentColor}
.tb-mobile-overlay{display:none}
#tbWorkspaceMain{min-width:0}
body.tb-mobile-menu-open{overflow:hidden}

/* Perfil header (foto + nome + bio + links)*/
.tb-profileheader{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;flex-wrap:wrap}
.tb-profileheader-left{display:flex;gap:12px;align-items:flex-start;min-width:280px}
.tb-avatar{width:72px;height:72px;border-radius:15px;object-fit:cover;border:2px solid var(--tb-color-border)}
.tb-avatar-fallback{background:var(--tb-color-card-alt)}

/* ===============================
 Therapist Mini (Painel)
 - Avatar 130x130 + radius 10px
 - Texto max-width 700px
 - Badge validade (bolinha verde/vermelha)
================================*/
#tbTherapistMini .tb-avatar{
  width:130px;
  height:130px;
  border-radius:10px;
  object-fit:cover;
}

#tbTherapistMini .tb-profileheader-text{
  max-width:700px;
}

#tbTherapistMini .tb-profileheader-between{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}

#tbTherapistMini .tb-profileheader-right{
  display:flex;
  justify-content:flex-end;
}


/* ===============================
 Card do Terapeuta (reutilizado em Terapeuta e Cliente)
 - Mantém avatar e ícones no mesmo padrão do TherapistMini
================================*/
.tb-therapist-card .tb-avatar{
  width:130px;
  height:130px;
  border-radius:10px;
  object-fit:cover;
}
.tb-therapist-card .tb-profileheader-text{
  max-width:700px;
}
.tb-therapist-card .tb-profileheader-title,
.tb-therapist-card .tb-profileheader-bio,
#tbTherapistMini .tb-profileheader-title,
#tbTherapistMini .tb-profileheader-bio{
  padding-inline:4px;
  box-sizing:border-box;
}
.tb-profileheader-links .tb-linkchip-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.tb-linkchip-icon .tb-social-ico svg{
  display:block;
}
#tbTherapistMini .tb-access-badge,
.tb-client-access-panel .tb-access-badge{
  display:flex;
  align-items:center;
  gap:8px;
  padding:8px 10px;
  border:1px solid var(--tb-color-border);
  border-radius:12px;
  font-size:12px;
  line-height:1.2;
  background:var(--tb-color-card-alt);
}

/*
 * Badge de acesso do cliente.
 * Ajustado para ficar no formato pílula igual ao visual aprovado,
 * sem alterar a estrutura HTML existente do sistema.
*/
.tb-client-portal .tb-access-badge,
.tb-client-access-panel .tb-access-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  width:fit-content;
  max-width:100%;
  min-height:38px;
  padding:6px 12px;
  border-width:1px;
  border-style:solid;
  border-radius:999px;
  font-size:11px;
  line-height:1.2;
  background:#ffffff;
  box-sizing:border-box;
}
.tb-client-portal .tb-access-badge,
.tb-client-access-panel .tb-access-badge,
#tbTherapistMini .tb-access-badge{
  border-color:#d1d5db;
  box-shadow:0 1px 0 rgba(255,255,255,.75) inset;
}
.tb-client-portal .tb-access-badge-ok,
.tb-client-access-panel .tb-access-badge-ok,
#tbTherapistMini .tb-access-badge-ok{
  color:#166534;
  border-color:rgba(34,197,94,.34);
  box-shadow:none;
  background:rgba(34,197,94,.06);
}
.tb-client-portal .tb-access-badge-warn,
.tb-client-access-panel .tb-access-badge-warn,
#tbTherapistMini .tb-access-badge-warn{
  min-height:36px;
  padding:5px 11px;
  gap:7px;
  font-size:10px;
  line-height:1.15;
  color:#9a5800;
  border-color:rgba(249,115,22,.34) !important;
  box-shadow:none;
  background:rgba(249,115,22,.08);
}
.tb-client-portal .tb-access-badge-expiring,
.tb-client-access-panel .tb-access-badge-expiring,
#tbTherapistMini .tb-access-badge-expiring{
  min-height:36px;
  padding:5px 11px;
  gap:7px;
  font-size:10px;
  line-height:1.15;
  color:#b42318;
  border-color:rgba(239,68,68,.34) !important;
  box-shadow:none;
  background:rgba(239,68,68,.08);
}
.tb-client-portal .tb-access-badge-scheduled,
.tb-client-access-panel .tb-access-badge-scheduled{
  border-color:rgba(59,130,246,.24);
  background:#ffffff;
}
.tb-client-portal .tb-access-badge-expired,
.tb-client-access-panel .tb-access-badge-expired{
  border-color:rgba(239,68,68,.34);
  background:#ffffff;
}
#tbTherapistMini .tb-access-badge-scheduled,
.tb-client-access-panel .tb-access-badge-scheduled{
  border-color: rgba(59,130,246,.28);
  background:#eff6ff;
}
#tbTherapistMini .tb-access-badge-expiring,
.tb-client-access-panel .tb-access-badge-expiring{
  border-color: rgba(239,68,68,.35);
  background:#fff5f5;
}
#tbTherapistMini .tb-access-badge-expired,
.tb-client-access-panel .tb-access-badge-expired{
  border-color: rgba(239,68,68,.35);
  background:#fef2f2;
}

#tbTherapistMini .tb-dot,
.tb-client-access-panel .tb-dot{
  width:10px;
  height:10px;
  border-radius:50%;
  display:inline-block;
}
.tb-client-portal .tb-access-badge .tb-dot,
.tb-client-access-panel .tb-access-badge .tb-dot{
  width:10px;
  height:10px;
  min-width:10px;
  border-radius:50%;
  display:inline-block;
}
#tbTherapistMini .tb-dot-green, #tbTherapistMini .tb-dot-gren, .tb-client-access-panel .tb-dot-green, .tb-client-access-panel .tb-dot-gren, .tb-client-portal .tb-dot-green, .tb-client-portal .tb-dot-gren{ background:#22c55e !important; }
#tbTherapistMini .tb-dot-orange, #tbTherapistMini .tb-dot-oranje, .tb-client-access-panel .tb-dot-orange, .tb-client-access-panel .tb-dot-oranje, .tb-client-portal .tb-dot-orange, .tb-client-portal .tb-dot-oranje{ background:#f97316 !important; }
#tbTherapistMini .tb-dot-red, .tb-client-access-panel .tb-dot-red, .tb-client-portal .tb-dot-red{ background:#ef4444 !important; }
#tbTherapistMini .tb-dot-blue, .tb-client-access-panel .tb-dot-blue, .tb-client-portal .tb-dot-blue{ background:#3b82f6 !important; }
.tb-client-portal .tb-dot-green, .tb-client-portal .tb-dot-gren, .tb-client-access-panel .tb-dot-green, .tb-client-access-panel .tb-dot-gren{ box-shadow:0 0 0 3px rgba(34,197,94,.12); }
.tb-client-portal .tb-dot-orange, .tb-client-portal .tb-dot-oranje, .tb-client-access-panel .tb-dot-orange, .tb-client-access-panel .tb-dot-oranje{ box-shadow:0 0 0 3px rgba(249,115,22,.12); }
.tb-client-portal .tb-dot-red, .tb-client-access-panel .tb-dot-red{ box-shadow:0 0 0 3px rgba(239,68,68,.10); }
.tb-client-portal .tb-dot-blue, .tb-client-access-panel .tb-dot-blue{ box-shadow:0 0 0 3px rgba(59,130,246,.10); }
.tb-client-portal .tb-access-badge .tb-access-text,
.tb-client-access-panel .tb-access-badge .tb-access-text{
  display:inline-flex;
  align-items:center;
  flex-wrap:wrap;
  gap:3px;
  color:#374151;
}
.tb-client-portal .tb-access-badge .tb-access-text b,
.tb-client-access-panel .tb-access-badge .tb-access-text b{
  font-weight:700;
}
.tb-client-portal .tb-access-badge .tb-access-days,
.tb-client-access-panel .tb-access-badge .tb-access-days{
  color:#6b7280;
  font-size:.95em;
}

#tbTherapistMini .tb-access-days,
.tb-client-access-panel .tb-access-days{ opacity:.85; }
.tb-client-portal .tb-access-text,
.tb-client-access-panel .tb-access-text{
  color:#1f2937;
  font-weight:500;
}
.tb-client-portal .tb-access-text b,
.tb-client-access-panel .tb-access-text b{font-weight:800;}
.tb-client-portal .tb-access-badge-ok .tb-access-text,
.tb-client-access-panel .tb-access-badge-ok .tb-access-text,
#tbTherapistMini .tb-access-badge-ok .tb-access-text{color:#166534;}
.tb-client-portal .tb-access-badge-warn .tb-access-text,
.tb-client-access-panel .tb-access-badge-warn .tb-access-text,
#tbTherapistMini .tb-access-badge-warn .tb-access-text{color:#9a5800;}
.tb-client-portal .tb-access-badge-expiring .tb-access-text,
.tb-client-access-panel .tb-access-badge-expiring .tb-access-text,
#tbTherapistMini .tb-access-badge-expiring .tb-access-text,
.tb-client-portal .tb-access-badge-expired .tb-access-text,
.tb-client-access-panel .tb-access-badge-expired .tb-access-text,
#tbTherapistMini .tb-access-badge-expired .tb-access-text{color:#b42318;}
.tb-client-portal .tb-access-days,
.tb-client-access-panel .tb-access-days{
  color:#475569;
  opacity:1;
}
.tb-profileheader-text{min-width:200px}
.tb-profileheader-name{font-weight:900;font-size:16px}
.tb-profileheader-title{opacity:.85;margin-top:2px;font-weight:700}
.tb-profileheader-bio{opacity:.78;margin-top:6px;line-height:1.35}
.tb-profileheader-links{display:flex;gap:10px;flex-wrap:wrap;align-items:center;justify-content:flex-end}
.tb-linkchip{border:1px solid #d7deea;border-radius:999px;padding:8px 12px;background:#fff;display:inline-flex;gap:8px;align-items:center;text-decoration:none;color:inherit}
.tb-linkchip-icon{
  /* Botão circular só com ícone (usado no card do terapeuta / relatório do cliente)*/
  width:40px;
  height:40px;
  padding:0;
  border-radius:999px;
  justify-content:center;
  gap:0;
  line-height:0;
}
.tb-linkchip-icon .tb-social-ico{width:20px;height:20px}
.tb-linkchip-icon .tb-social-ico svg{width:20px;height:20px}
.tb-social-ico{display:inline-flex;width:18px;height:18px;align-items:center;justify-content:center}
.tb-social-ico svg{width:18px;height:18px;fill:currentColor}

/* Evita "corte" de SVG dentro do chip circular*/
.tb-linkchip-icon .tb-social-ico{overflow:visible}
.tb-iconbtn{padding:8px 10px}

.tb-title{font-size:var(--tb-font-title);font-weight:900}
.tb-sub{opacity:.75;margin-top:4px}
.tb-topbar .tb-title{font-family:var(--tb-header-title-font-family);font-size:var(--tb-header-title-size);}
.tb-topbar .tb-sub{font-family:var(--tb-header-subtitle-font-family);font-size:var(--tb-header-subtitle-size);}
.tb-topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}
.tb-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end}
.tb-theme-quick{display:flex;flex-direction:column;gap:4px;align-items:flex-start}

/* Admin styles page: never let logo previews explode*/
#tbPortalLogoPreview, #tbMenuIconPreview{max-width:100% !important;max-height:100% !important;}

.tb-card{border:1px solid var(--tb-color-border);border-radius:14px;padding:14px;margin:12px 0;background:var(--tb-color-card-bg)}
.tb-hr{border:none;border-top:1px solid var(--tb-color-border);margin:12px 0}
.tb-muted{opacity:.75;font-size:var(--tb-font-muted)}

/* -----------------------------
 Relatório (Portal + Impressão)
 - Tipografia padrão controlada pelo Admin em "Estilos"
 - Defaults (quando não houver override):
 H1: Times 24 / #253263
 H2: Times 18 / #253263
 H3: Times 14 / #253263
 Corpo: Arial 12
------------------------------*/
.tb-report-content{line-height:1.55;}
.tb-report-content h1{font-size:24px;line-height:1.15;margin:18px 0 10px;font-weight:900;font-family:"Times New Roman",Times,serif;color:#253263;}
.tb-report-content h2{font-size:18px;line-height:1.2;margin:18px 0 10px;font-weight:800;font-family:"Times New Roman",Times,serif;color:#253263;}
.tb-report-content h3{font-size:14px;line-height:1.25;margin:14px 0 8px;font-weight:800;font-family:"Times New Roman",Times,serif;color:#253263;}
.tb-analysis-html.tb-report-content p,
.tb-analysis-html.tb-report-content li,
.tb-report-scope .tb-report-content p,
.tb-report-scope .tb-report-content li{margin:10px 0;font-family:Arial,Helvetica,sans-serif;font-size:12px;color:#111827 !important;}
.tb-report-content ul,.tb-report-content ol{margin:10px 0 10px 22px;}
.tb-report-content li{margin:6px 0;}
.tb-report-content strong{font-weight:800;}
.tb-report-content hr{border:none;border-top:1px solid rgba(148,163,184,.35);margin:14px 0;}

/* =========================
 Relatório (escopo)
 Evita que o tema do site/Elementor force títulos em branco.
 OBS: as cores/tipografias "default" ficam aqui e podem ser sobrescritas
 pelo bloco de CSS injetado pelo Admin (Estilos -> Tipografia do Relatório).
=========================*/
.tb-analysis-html.tb-report-content,
.tb-report-scope .tb-report-content{color:#111827;}

/*
 Container "miolo" do relatório (HTML)
 - Evita que o relatório fique "full tela" quando o tema/Elementor zera limites
 - Mantém o mesmo comportamento visual do layout correto (max-width + padding + bordas)
*/
.tb-analysis-html.tb-report-content{
    max-width: none !important;
    margin: 0 !important;
    padding: 8mm !important;
    border: 1px solid rgba(148,163,184,.55) !important;
    border-radius: 14px !important;
    box-sizing: border-box !important;
    background: #fff !important;

  }
}

/* Responsivo (Portal do Cliente no celular)*/
@media (max-width: 768px){
  .tb-analysis-html.tb-report-content{
    max-width: 100%;
    margin: 10px 10px;
    padding: 14px 12px;
    border-radius: 12px;
  }
  .tb-report-radar-top img{
    max-width: 100%;
    width: 100%;
    max-height: none;
  }
}

/* Wrapper transparente (quando o portal for inserido dentro de páginas com fundo próprio)*/
.tb-wrap.tb-wrap-transparent{background:transparent !important;}

.tb-analysis-html.tb-report-content h1,
.tb-report-scope .tb-report-content h1{color:#253263 !important;font-family:"Times New Roman",Times,serif !important;font-size:24px !important;}
.tb-analysis-html.tb-report-content h2,
.tb-report-scope .tb-report-content h2{color:#253263 !important;font-family:"Times New Roman",Times,serif !important;font-size:18px !important;}
.tb-analysis-html.tb-report-content h3,
.tb-report-scope .tb-report-content h3{color:#253263 !important;font-family:"Times New Roman",Times,serif !important;font-size:14px !important;}

#tbPreAnalysisEditorScope .wp-editor-wrap .mce-edit-area iframe{background:#fff !important;}
.tb-preanalysis-rich-body,.tb-preanalysis-rich-body p,.tb-preanalysis-rich-body li,.tb-preanalysis-rich-body blockquote{font-family:"Times New Roman",Times,serif !important;font-size:12pt !important;line-height:1.65 !important;color:#111111 !important;}
.tb-preanalysis-rich-body h1{font-family:"Times New Roman",Times,serif !important;font-size:24pt !important;line-height:1.2 !important;font-weight:700 !important;color:#111111 !important;margin:0 0 12px !important;}
.tb-preanalysis-rich-body h2,.tb-preanalysis-rich-body h3,.tb-preanalysis-rich-body h4,.tb-preanalysis-rich-body h5,.tb-preanalysis-rich-body h6{font-family:"Times New Roman",Times,serif !important;font-size:16pt !important;line-height:1.25 !important;font-weight:700 !important;color:#111111 !important;margin:0 0 10px !important;}
.tb-preanalysis-rich-body strong,.tb-preanalysis-rich-body b{font-weight:700 !important;}
.tb-preanalysis-rich-body p:empty{display:none !important;margin:0 !important;}

/* =========================
 Rodapé do Relatório
 (HTML + impressão)
=========================*/
.tb-report-footer{
  margin-top:18px;
  padding:14px 18px;
  border:1px solid rgba(37,50,99,.20);
  border-top:2px solid #253263;
  border-radius:12px;
  background:#fff;
  color:#111827;
}

@media print {
  .tb-report-footer{
    display:block !important;
    border:1px solid rgba(37,50,99,.20) !important;
    border-top:2px solid #253263 !important;
    border-radius:12px !important;
    padding:14px 18px !important;
    background:#fff !important;
    color:#91989c !important;
    -webkit-print-color-adjust:exact !important;
    print-color-adjust:exact !important;
    break-inside:avoid !important;
    page-break-inside:avoid !important;
  }
}

/* =========================
 Rodapé do Sistema
 (Dashboard + impressão do relatório do cliente)
=========================*/
.tb-system-footer{
  margin-top:18px;
  padding:12px 16px;
  border-top:1px solid rgba(148,163,184,.35);
  font-size:12px;
  line-height:1.6;
  text-align:center;
  color:var(--tb-muted);
}
.tb-system-footer *{color:inherit;}
.tb-theme-dark .tb-system-footer{border-top-color:rgba(255,255,255,.12);}
.tb-system-version{margin-top:8px;font-size:11px;opacity:.85;}

.tb-btn{border:1px solid #cfd6e4;background:#fff;padding:8px 12px;border-radius:10px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.tb-btn .dashicons{font-size:18px;line-height:1}
.tb-file-btn{position:relative;overflow:hidden}
.tb-file-btn input[type=file]{position:absolute;left:0;top:0;opacity:0;width:100%;height:100%;cursor:pointer}
.tb-btn-primary{background:var(--tb-color-primary);color:#fff;border-color:var(--tb-color-primary)}
.tb-btn-danger{background:#fff5f5;color:#b91c1c;border-color:#fecaca;}
.tb-btn-danger:hover{background:#fee2e2;color:#991b1b;}
.tb-input,.tb-textarea,.tb-select{width:100%;border:1px solid #d7deea;border-radius:10px;padding:8px}
.tb-textarea{margin-top:6px}

/* WordPress Editor (TinyMCE) dentro do layout do plugin*/
.tb-editor .wp-editor-wrap{border:1px solid #d7deea;border-radius:12px;overflow:hidden;background:#fff}
.tb-editor .wp-editor-container{border:0}
.tb-editor .mce-top-part::before{box-shadow:none}
.tb-pre-q{min-height:170px}
.tb-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.tb-row-between{justify-content:space-between}

.tb-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.tb-grid label{display:block;font-size:12px;opacity:.8;margin-bottom:4px}


.tb-client-summary-grid{display:grid;gap:10px}
.tb-client-summary-grid-top{grid-template-columns:repeat(3,minmax(0,1fr))}
.tb-client-summary-grid-bottom{grid-template-columns:repeat(4,minmax(0,1fr))}


.tb-table{width:100%;border-collapse:separate;border-spacing:0}
.tb-table th,.tb-table td{border-bottom:1px solid var(--tb-color-border);padding:10px 10px;text-align:left;vertical-align:top}
.tb-table th{font-size:12px;opacity:.8}
.tb-table tr:last-child td{border-bottom:0}

.tb-tabs{display:flex;gap:8px;margin-top:10px}
.tb-tab{border:1px solid #d7deea;border-radius:12px;padding:10px 12px;background:#fff;cursor:pointer}
.tb-tab-active{background:color-mix(in srgb, var(--tb-color-primary) 10%, #ffffff);border-color:color-mix(in srgb, var(--tb-color-primary) 35%, var(--tb-color-border))}

/* --------------------------------------------------------------------------*/
/* Themes*/
/* --------------------------------------------------------------------------*/

/* Default (Light)*/
.tb-wrap.tb-theme-light{
  --tb-color-bg:#f6f8fc;
  --tb-color-card-bg:#ffffff;
  --tb-color-card-alt:#fbfcff;
  --tb-color-border:#e6eaf2;
  --tb-color-primary:#2b4cff;
  color:#0f172a;
  box-shadow:0 10px 30px rgba(15,23,42,.08);
}

.tb-wrap.tb-theme-light .tb-sidebar-title{color:#0f172a;}
.tb-wrap.tb-theme-light .tb-sidebtn{background:#ffffff;}

/* Dark (Premium Blue)*/
.tb-wrap.tb-theme-dark{
  --tb-color-bg:linear-gradient(180deg,#071a3a 0%, #041028 100%);
  --tb-color-card-bg:rgba(255,255,255,.06);
  --tb-color-card-alt:rgba(255,255,255,.04);
  --tb-color-border:rgba(255,255,255,.14);
  --tb-color-primary:#4f7cff;
  --tb-color-accent:#9b7bff;
  color:#e5e7eb;
  box-shadow:0 14px 36px rgba(0,0,0,.28);
}

.tb-wrap.tb-theme-dark .tb-muted{opacity:.78;color:#cbd5e1;}
.tb-wrap.tb-theme-dark .tb-title{color:#ffffff;}
.tb-wrap.tb-theme-dark .tb-sub{color:#cbd5e1;opacity:1;}

.tb-wrap.tb-theme-dark .tb-card{
  background:var(--tb-color-card-bg);
  border-color:var(--tb-color-border);
  backdrop-filter: blur(6px);
}

.tb-wrap.tb-theme-dark .tb-sidebtn{
  background:rgba(255,255,255,.06);
  border-color:rgba(255,255,255,.14);
  color:#e5e7eb;
}
.tb-wrap.tb-theme-dark .tb-sidebtn .dashicons{opacity:1;}
.tb-wrap.tb-theme-dark .tb-sidebtn-active{
  background:rgba(79,124,255,.18);
  border-color:rgba(79,124,255,.45);
}

.tb-wrap.tb-theme-dark .tb-btn{
  background:rgba(255,255,255,.06);
  border-color:rgba(255,255,255,.16);
  color:#e5e7eb;
}
.tb-wrap.tb-theme-dark .tb-btn-primary{
  background:var(--tb-color-primary);
  border-color:var(--tb-color-primary);
  color:#ffffff;
}

.tb-wrap.tb-theme-dark .tb-input,
.tb-wrap.tb-theme-dark .tb-textarea,
.tb-wrap.tb-theme-dark .tb-select{
  background:rgba(255,255,255,.06);
  border-color:rgba(255,255,255,.16);
  color:#e5e7eb;
}
.tb-wrap.tb-theme-dark .tb-input::placeholder,
.tb-wrap.tb-theme-dark .tb-textarea::placeholder{color:#94a3b8;}

.tb-wrap.tb-theme-dark .tb-tab{
  background:rgba(255,255,255,.06);
  border-color:rgba(255,255,255,.14);
  color:#e5e7eb;
}
.tb-wrap.tb-theme-dark .tb-tab-active{
  background:rgba(79,124,255,.18);
  border-color:rgba(79,124,255,.45);
}

/* Dark theme fixes: cards internos (áreas/perguntas) não podem ficar brancos*/
.tb-wrap.tb-theme-dark .tb-area-card{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14);} 
.tb-wrap.tb-theme-dark .tb-reflect{background:rgba(255,255,255,.06);border-color:rgba(79,124,255,.55);color:#e5e7eb;}
.tb-wrap.tb-theme-dark .tb-help{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.16);color:#e5e7eb;}
.tb-wrap.tb-theme-dark .tb-scorebox{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14);color:#e5e7eb;}
.tb-wrap.tb-theme-dark .tb-qscroll{background:rgba(2,6,23,.28);border-color:rgba(255,255,255,.14);} 
.tb-wrap.tb-theme-dark .tb-qitem{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14);} 
.tb-wrap.tb-theme-dark .tb-qanswer{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.16);color:#e5e7eb;} 
.tb-wrap.tb-theme-dark .tb-scorelabel{opacity:.85;color:#cbd5e1;}
.tb-wrap.tb-theme-dark .tb-qwrap{border-top-color:rgba(255,255,255,.14);} 

/* Modern (Gradients)*/
.tb-wrap.tb-theme-modern{
  --tb-color-bg:linear-gradient(135deg,#f7f7ff 0%, #eef6ff 45%, #f6fff9 100%);
  --tb-color-card-bg:rgba(255,255,255,.86);
  --tb-color-card-alt:rgba(255,255,255,.72);
  --tb-color-border:rgba(37,50,99,.14);
  --tb-color-primary:#253263;
  --tb-color-accent:#7c4dff;
  color:#0f172a;
  box-shadow:0 14px 34px rgba(15,23,42,.10);
}
.tb-wrap.tb-theme-modern .tb-card{backdrop-filter: blur(10px);}
.tb-wrap.tb-theme-modern .tb-sidebtn{background:rgba(255,255,255,.80);} 
.tb-wrap.tb-theme-modern .tb-sidebtn-active{background:color-mix(in srgb, var(--tb-color-primary) 10%, #ffffff);} 
.tb-wrap.tb-theme-modern .tb-btn{border-radius:12px;}

/* Subtle polish*/
.tb-wrap .tb-topbar{padding:6px 0 2px 0;}
.tb-wrap .tb-topbar .tb-actions .tb-btn{border-radius:12px;}

/* Sinalização "Retorno do Cliente" (ponto na aba)*/
.tb-dot{display:inline-block;width:10px;height:10px;border-radius:999px;background:#ef4444;margin-left:8px;box-shadow:0 0 0 3px rgba(239,68,68,.15);vertical-align:middle}

.tb-radar{display:flex;justify-content:center;align-items:center;padding:var(--tb-radar-padding,10px)}
.tb-radar svg{max-width:var(--tb-radar-display-width,720px);width:100%;height:auto}
.tb-radar-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}

/* Destaques abaixo do radar (maior e menor área)*/
.tb-radar-highlights{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:14px}
.tb-highlight{flex:1 1 320px;max-width:560px;border:1px solid var(--tb-color-border,#e6eaf2);border-radius:14px;background:var(--tb-color-card-bg,#fff);padding:14px}
.tb-highlight-title{display:flex;align-items:center;gap:10px;font-weight:700}
.tb-highlight-row{display:flex;align-items:center;gap:12px;margin-top:10px}
.tb-highlight-badge{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:var(--tb-color-card-alt,#fbfcff);border:1px solid var(--tb-color-border,#e6eaf2);flex:1}
.tb-highlight-label{font-weight:800;letter-spacing:0.2px}
.tb-highlight-value{margin-left:auto;font-weight:900}
.tb-highlight-dot{width:12px;height:12px;border-radius:999px;background:var(--tb-dot,#111827);box-shadow:0 0 0 4px color-mix(in srgb, var(--tb-dot,#111827) 20%, transparent)}
.tb-chip{border:1px solid #d7deea;border-radius:999px;padding:6px 10px;background:#fff;display:flex;gap:8px;align-items:center;cursor:pointer}
.tb-chip input{margin:0}

.tb-areas-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.tb-area-card{border:1px solid var(--tb-color-border);border-radius:14px;padding:12px;background:var(--tb-color-card-alt);position:relative}
.tb-area-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.tb-area-actions{display:flex;gap:8px;align-items:center}
.tb-reflect{border:2px solid color-mix(in srgb, var(--tb-color-primary) 75%, #ff3b30);background:#fff;color:color-mix(in srgb, var(--tb-color-primary) 30%, #ff3b30);padding:8px 14px;border-radius:14px;cursor:pointer;font-weight:800;line-height:1}
.tb-reflect:hover{filter:brightness(0.98)}
.tb-area-title{font-weight:900;font-size:var(--tb-font-card-title)}
.tb-help{width:28px;height:28px;border-radius:999px;border:1px solid #d7deea;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-weight:900}
.tb-scores{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
.tb-scorebox{border:1px solid #eef2f8;border-radius:12px;padding:10px;background:#fff}
.tb-scorelabel{font-size:12px;opacity:.8}
.tb-scoreval{font-size:22px;font-weight:900;margin-top:2px}
.tb-range{width:100%}

.tb-qwrap{margin-top:10px;border-top:1px dashed #e6eaf2;padding-top:10px}
.tb-qscroll{max-height:240px;overflow:auto;border:1px solid #eef2f8;border-radius:12px;background:#fff;padding:10px}
.tb-qitem{border:1px solid #eef2f8;border-radius:12px;padding:10px;margin:10px 0;background:#fbfcff}
.tb-qrow{display:flex;gap:10px;align-items:flex-start}
.tb-qtext{font-weight:800}
.tb-qcheck{display:flex;gap:8px;align-items:center;font-size:13px;opacity:.9}
.tb-qanswer{width:100%;border:1px solid #d7deea;border-radius:10px;padding:8px;margin-top:6px;min-height:100px;resize:vertical}

/* Sessão 1 – Pré-Diagnóstico: caixas maiores*/
.tb-pre-q{min-height:170px;}

.tb-report-tools{margin:10px 0;border:1px dashed #e6eaf2;border-radius:12px;padding:10px;background:#fbfcff}
.tb-reportbox{width:100%;border:1px solid #d7deea;border-radius:12px;padding:10px;font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;min-height:300px;resize:vertical}

.tb-pre{white-space:pre-wrap;border:1px solid #d7deea;border-radius:12px;padding:10px;background:#fff}

.tb-admin-box{border:1px dashed #d7deea;border-radius:12px;padding:10px;background:#fbfcff;min-width:320px}

/* Modal*/
.tb-modal{position:fixed;inset:0;z-index:99999;padding:20px;box-sizing:border-box;overflow:auto;-webkit-overflow-scrolling:touch}
.tb-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.45);z-index:0}
.tb-modal-card{position:relative;z-index:1;display:flex;flex-direction:column;width:min(100%,720px);max-width:720px;max-height:calc(100vh - 40px);overflow:hidden;margin:0 auto;background:#fff;border-radius:16px;padding:14px;box-shadow:0 12px 40px rgba(0,0,0,.25)}
.tb-modal-title{font-size:18px;font-weight:900;padding-right:56px}
.tb-modal-body{margin-top:10px;line-height:1.45;overflow:auto;overflow-wrap:anywhere;word-break:break-word;padding-right:4px}
.tb-modal-close-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;min-width:44px;height:44px;padding:0;border:1px solid #cbd5e1;border-radius:12px;background:#fff;color:#0f172a;font-size:28px;line-height:1;font-weight:700;cursor:pointer;text-decoration:none;box-shadow:none}
.tb-modal-close-btn:hover,.tb-modal-close-btn:focus-visible{border-color:#94a3b8;background:#f8fafc;outline:none}

/* Reflexões (modal)*/
.tb-reflection-text{width:100%;border:1px solid #d7deea;border-radius:12px;padding:10px;min-height:220px;resize:vertical;font-family:inherit}

/* Reflexões (modal)*/
.tb-reflection-text{width:100%;border:1px solid #d7deea;border-radius:12px;padding:12px;min-height:220px;resize:vertical;font-family:inherit;font-size:14px;background:#fbfcff}

@media (max-width: 1200px) and (min-width: 768px){
  .tb-grid{grid-template-columns:repeat(3,1fr)}
  .tb-client-summary-grid-top{grid-template-columns:repeat(3,minmax(0,1fr))}
  .tb-client-summary-grid-bottom{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 980px){
  .tb-wrap{padding:14px;border-radius:16px}
  .tb-layout{display:block}
  .tb-mobilebar{display:flex}
  .tb-sidebar{position:fixed;top:0;left:0;bottom:0;z-index:100001;width:min(84vw,320px);min-width:0;padding:18px 14px 24px;background:var(--tb-color-bg);border-right:1px solid var(--tb-color-border);box-shadow:0 18px 50px rgba(15,23,42,.18);transform:translateX(-110%);transition:transform .24s ease, visibility .24s ease;visibility:hidden;overflow:auto}
  .tb-sidebar.is-open{transform:translateX(0);visibility:visible}
  .tb-sidebar-close{display:inline-flex;align-items:center;justify-content:center}
  .tb-mobile-overlay{position:fixed;inset:0;z-index:100000;background:rgba(15,23,42,.38);display:none;pointer-events:none;opacity:0}
  .tb-mobile-overlay.is-open{display:block;pointer-events:auto;opacity:1}
  .tb-topbar{flex-direction:column;align-items:stretch}
  .tb-tabs{overflow:auto;padding-bottom:2px;flex-wrap:nowrap}
  .tb-actions{width:100%;align-items:stretch}
  .tb-actions > *{flex:1 1 100%}
  .tb-theme-quick select,
  .tb-actions .tb-btn{width:100%}
  #tbTherapistMini,
  #tbWorkspaceMain{grid-column:1 / -1}
  #tbWorkspaceMain{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}
  #tbWorkspaceMain > .tb-card,
  #tbWorkspaceMain > .tb-tabs,
  #tbWorkspaceMain > #tbWorkspaceProfile,
  #tbWorkspaceMain > #tbNewAtendimentoWrap{grid-column:1 / -1}
  #tbWorkspaceMain > .tb-tabpane{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  #tbWorkspaceMain > .tb-tabpane > .tb-card{margin:0}
  #tbTabPre > .tb-card,
  #tbTabAnalysis > .tb-card,
  #tbTabReview > .tb-card,
  #tbTabDelivery > .tb-card{grid-column:1 / -1}
}
.tb-journey-board-wrap{margin-top:16px;padding-top:14px;border-top:1px solid #e5e7eb;}
.tb-journey-board-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:10px;}
.tb-journey-board-card{border:1px solid #d7deea;border-radius:18px;padding:14px 16px;background:#f8fafc;display:grid;gap:10px;box-shadow:0 10px 22px rgba(15,23,42,.04);}
.tb-journey-board-card.is-success{border-color:#86efac;background:#f0fdf4;}
.tb-journey-board-card.is-info{border-color:#7dd3fc;background:#f0f9ff;}
.tb-journey-board-card.is-warning{border-color:#fcd34d;background:#fffbeb;}
.tb-journey-board-kicker{font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#475569;}
.tb-journey-board-title{font-size:16px;font-weight:800;line-height:1.3;color:#0f172a;}
.tb-journey-board-desc{font-size:14px;line-height:1.55;color:#334155;}
.tb-journey-board-meta{display:flex;flex-wrap:wrap;gap:8px;}
.tb-journey-board-meta span{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#fff;border:1px solid #d7deea;font-size:12px;font-weight:700;color:#334155;}
.tb-journey-board-progress{height:8px;border-radius:999px;background:#e5e7eb;overflow:hidden;}
.tb-journey-board-progress span{display:block;height:8px;border-radius:999px;background:#253263;}
.tb-journey-board-actions{display:flex;gap:10px;flex-wrap:wrap;}
.tb-journey-board-empty{margin-top:10px;padding:14px 16px;border:1px dashed #cbd5e1;border-radius:16px;background:#f8fafc;color:#64748b;}
.tb-journey-achievement-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:10px;}
.tb-journey-achievement-item{appearance:none;border:1px solid #d7deea;border-radius:18px;padding:14px 12px;background:#fff;display:grid;gap:8px;justify-items:flex-start;text-align:left;cursor:pointer;transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;}
.tb-journey-achievement-item:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(15,23,42,.08);border-color:#bfd0ea;}
.tb-journey-achievement-item:focus-visible{outline:2px solid #253263;outline-offset:2px;}
.tb-journey-achievement-item.is-achieved{background:#f0fdf4;border-color:#86efac;}
.tb-journey-achievement-item.is-locked{background:#f8fafc;}
.tb-journey-achievement-icon{font-size:26px;line-height:1;}
.tb-journey-achievement-title{font-size:14px;font-weight:800;line-height:1.3;color:#0f172a;}
.tb-journey-achievement-status{font-size:12px;font-weight:700;color:#475569;}
.tb-journey-achievement-progress{display:block;width:100%;height:8px;border-radius:999px;background:#e5e7eb;overflow:hidden;}
.tb-journey-achievement-progress span{display:block;height:8px;border-radius:999px;background:#253263;}
.tb-journey-achievement-counter{font-size:12px;font-weight:800;color:#29407a;}
@media (max-width: 767px){
  .tb-grid{grid-template-columns:repeat(2,1fr)}
  .tb-client-summary-grid-top,
  .tb-client-summary-grid-bottom{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tb-client-summary-grid-top > .tb-pre:last-child:nth-child(odd){grid-column:1 / -1}
  .tb-areas-cards{grid-template-columns:1fr}
  #tbWorkspaceMain{grid-template-columns:1fr}
  #tbWorkspaceMain > .tb-tabpane{grid-template-columns:1fr}
  .tb-row,
  .tb-row.tb-row-between{flex-direction:column;align-items:stretch}
  .tb-admin-box{min-width:0}
}
@media print{
  .tb-actions,.tb-tabs,.tb-btn,.tb-report-tools{display:none !important}
  .tb-wrap{max-width:100%}
}


/* Icon tint (works best with SVG/PNG with transparency)*/
.tb-icon-mask, .tb-svg-icon {
  display:inline-block;
  background-color: currentColor;
  -webkit-mask-image: var(--tb-icon-url);
  mask-image: var(--tb-icon-url);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-position: center;
  mask-position: center;
}

#tbReportBox{min-height:300px;}

/* Garante que a máscara ocupe o tamanho definido no container do ícone*/
.tb-social-ico .tb-icon-mask{
  width:100%;
  height:100%;
}

.tb-qanswer{width:100%;border:1px solid #d7deea;border-radius:10px;padding:8px;margin-top:6px;min-height:100px;resize:vertical}


/* Radar overlay for labels/icons*/
.tb-radar-stage{
  position: relative;
  display: inline-block; /* mantém o box do SVG e centraliza via flex no container pai*/
  width: min(100%, var(--tb-radar-display-width, 720px));
}
.tb-radar-stage svg{
  width: 100%;
  max-width: none; /* evita max-width aplicado fora do stage deslocar o SVG para a esquerda*/
  height: auto;
  display: block;
}
.tb-radar-overlay{position:absolute;inset:0;pointer-events:none;}
.tb-radar-tag{position:absolute;transform:translate(-50%,-50%);text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px;font-size:var(--tb-tag-font,22px);color:#111827;}
.tb-radar-tag-text{line-height:1.1;}
.tb-radar-tag-icon{display:inline-block;width:var(--tb-icon-size,26px);height:var(--tb-icon-size,26px);background-color:currentColor;-webkit-mask-image:var(--tb-icon-url);mask-image:var(--tb-icon-url);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-position:center;mask-position:center;}

/* Dark theme fixes: radar labels + chips readability*/
.tb-wrap.tb-theme-dark .tb-radar-tag{color:#e5e7eb;text-shadow:0 2px 10px rgba(0,0,0,.35), 0 1px 2px rgba(0,0,0,.45);}
.tb-wrap.tb-theme-dark .tb-radar-tag-text{opacity:.95;}
.tb-wrap.tb-theme-dark .tb-chip{background:rgba(255,255,255,.10);border-color:rgba(148,163,184,.32);color:#e5e7eb;}
.tb-wrap.tb-theme-dark .tb-chip input{accent-color:#60a5fa;}
.tb-wrap.tb-theme-dark .tb-highlight{background:rgba(255,255,255,.08);border-color:rgba(148,163,184,.22);}
.tb-wrap.tb-theme-dark .tb-highlight-badge{background:rgba(2,6,23,.35);border-color:rgba(148,163,184,.22);}

.tb-pre-q textarea, textarea.tb-pre-q{min-height:170px !important;height:170px !important;}


/* Sessão 3 – Entrega do Áudio*/
.tb-delivery-head{
  display:grid;
  grid-template-columns: 260px 1fr;
  gap: 18px;
  align-items:start;
}
.tb-cover-preview{
  width: 240px;
  height: 240px;
  border: 1px solid var(--tb-color-border);
  border-radius: 14px;
  background: #f7f9ff;
  overflow: hidden;
  display:flex;
  align-items:center;
  justify-content:center;
}
.tb-cover-preview img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.tb-cover-placeholder{
  text-align:center;
  padding: 12px;
  color:#475569;
  font-weight:600;
}


/* therapist photo rounding*/
.tb-therapist-card img, .tb-therapist-header img, img.tb-therapist-avatar { border-radius:15px !important; }


/* Dark theme: garantir legibilidade de labels*/
.tb-wrap.tb-theme-dark label{color:#e5e7eb;}


/* Dark theme fixes (feedback + question cards)*/
.tb-wrap.tb-theme-dark h3{color:#ffffff;}
.tb-wrap.tb-theme-dark .tb-pre{
  background:rgba(255,255,255,.06);
  border-color:rgba(255,255,255,.16);
  color:#e5e7eb;
}
.tb-wrap.tb-theme-dark .tb-qwrap{border-top-color:rgba(255,255,255,.18);}
.tb-wrap.tb-theme-dark .tb-qscroll{
  background:rgba(255,255,255,.04);
  border-color:rgba(255,255,255,.14);
}
.tb-wrap.tb-theme-dark .tb-qitem{
  background:rgba(255,255,255,.06);
  border-color:rgba(255,255,255,.14);
}
.tb-wrap.tb-theme-dark .tb-qanswer{
  background:rgba(255,255,255,.06);
  border-color:rgba(255,255,255,.16);
  color:#e5e7eb;
}
.tb-wrap.tb-theme-dark .tb-qanswer::placeholder{color:#94a3b8;}



/* ===== ÍCONES DE REDES (chips + seletor do perfil) =====*/

/* Variáveis padrão de cor para ícones (integração com tema)*/
.tb-wrap{
  --tb-social-icon-color:#111827;
  --tb-social-icon-hover-color: var(--tb-color-primary);
  --tb-social-chip-bg: transparent;
  --tb-social-chip-border: rgba(17,24,39,.18);
}
.tb-wrap.tb-theme-dark{
  --tb-social-icon-color:#e5e7eb;
  --tb-social-icon-hover-color:#ffffff;
  --tb-social-chip-bg: transparent;
  --tb-social-chip-border: rgba(255,255,255,.22);
}

/* Quando o ícone for imagem (PNG/JPG/WebP), mantém proporção sem distorcer*/
.tb-linkchip.tb-linkchip-icon .tb-social-img,
.tb-admin-social-preview .tb-social-img{
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
}

.tb-profileheader-links{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}

/* Chip circular (tamanho controlado por CSS vars do estilo ativo)*/
.tb-linkchip.tb-linkchip-icon{
  width:var(--tb-social-chip-size,var(--tb-social-icon-size,58px));
  height:var(--tb-social-chip-size,var(--tb-social-icon-size,58px));
  padding:0 !important;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  /* Mesmo visual do Admin: círculo “vazado” com borda*/
  background: var(--tb-social-chip-bg, transparent) !important;
  border: 2px solid var(--tb-social-chip-border, rgba(17,24,39,.18)) !important;
}

/* Container interno: o ícone pode ocupar 100% do círculo*/
.tb-linkchip.tb-linkchip-icon .tb-social-ico{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:100%;
  line-height:0;
}

/* Máscara: pinta a imagem pelo currentColor*/
.tb-linkchip.tb-linkchip-icon{
  color:var(--tb-social-icon-color,#111827);
  transition: color .15s ease;
}
.tb-linkchip.tb-linkchip-icon:hover{
  color:var(--tb-social-icon-hover-color,#2563eb);
}
.tb-linkchip.tb-linkchip-icon .tb-icon-mask{
  width:100%;
  height:100%;
  display:block;
  background-color: currentColor;
  -webkit-mask-image: var(--tb-icon-url);
  mask-image: var(--tb-icon-url);
  -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat;
  -webkit-mask-position:center; mask-position:center;
  -webkit-mask-size:contain; mask-size:contain;
}

/* Seletor de ícones (Meu Perfil > Links)*/
.tb-links-preset{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
}
.tb-links-preset .tb-iconbtn{
  width:44px;
  height:44px;
  border-radius:12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0;
  color:var(--tb-social-icon-color,#111827);
}
.tb-links-preset .tb-iconbtn:hover{
  color:var(--tb-social-icon-hover-color,#2563eb);
}
.tb-links-preset .tb-iconbtn .tb-social-ico{
  width:22px;
  height:22px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.tb-links-preset .tb-iconbtn .tb-icon-mask{
  width:100%;
  height:100%;
  display:block;
  background-color: currentColor;
  -webkit-mask-image: var(--tb-icon-url);
  mask-image: var(--tb-icon-url);
  -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat;
  -webkit-mask-position:center; mask-position:center;
  -webkit-mask-size:contain; mask-size:contain;
}



/* Quebra de página controlada (impressão/PDF)*/
.tb-page-break{display:block; height:0;}
@media print{
  .tb-page-break{break-before: page; page-break-before: always;}
}


/* =========================================================
 MODO COMPACTO MOBILE — EXCLUSIVO DO PORTAL DO CLIENTE
 Escopo: .tb-client-portal
 Objetivo:
 - reduzir margens/paddings
 - compactar tipografia/botões
 - evitar overflow horizontal
 - diminuir o mapa (radar) sem afetar dashboard do terapeuta/admin
=========================================================*/

/* Portal do Cliente: pequenos ajustes globais (desktop + mobile)
 - evita texto “colado” no card do terapeuta
 - permite customização do grid da Entrega do Áudio via classes*/
.tb-client-portal .tb-therapist-card .tb-profileheader-text{
  padding-right: 8px;
}

@media (max-width: 768px){
  /* Container principal do portal*/
  .tb-client-portal{
    padding: 0 !important; /* evita “dupla margem” do tema*/
  }

  /* Card raiz (onde ficam logo + login + tabs)*/
  .tb-client-portal > .tb-card{
    max-width: 100% !important;
    margin: 0 10px !important;
    padding: 14px 12px !important;
    border-radius: 14px !important;
    box-sizing: border-box !important;
  }

  /* Cabeçalho (logo + botão sair)*/
  .tb-client-portal .tb-row.tb-row-between{
    gap: 10px !important;
    flex-wrap: wrap !important;
  }
  .tb-client-portal img[alt="Logo"]{
    height: 56px !important;
    width: auto !important;
    max-width: 100% !important;
  }

  /* Tipografia mais compacta*/
  .tb-client-portal h2{font-size: 18px !important;}
  .tb-client-portal h3{font-size: 16px !important;}
  .tb-client-portal .tb-muted{font-size: 13px !important;line-height: 1.35 !important;}

  /* Formulário de login: 1 coluna*/
  .tb-client-portal form.tb-row{
    flex-direction: column !important;
    align-items: stretch !important;
  }
  .tb-client-portal form.tb-row .tb-input{
    min-width: 0 !important;
    width: 100% !important;
  }
  .tb-client-portal form.tb-row .tb-btn{
    width: 100% !important;
    justify-content: center !important;
  }

  /* Tabs (quando existirem)*/
  .tb-client-portal .tb-tabs{
    gap: 8px !important;
    flex-wrap: wrap !important;
  }
  .tb-client-portal .tb-tab{
    padding: 10px 12px !important;
    font-size: 13px !important;
  }

  /* Botões de ações (imprimir/copiar/download) ficam full width*/
  .tb-client-portal .tb-btn{
    padding: 10px 12px !important;
    border-radius: 12px !important;
  }
  .tb-client-portal .tb-row.tb-row-between .tb-btn{
    width: 100% !important;
    justify-content: center !important;
  }

  /* Relatório HTML dentro do portal: menos “respiro” lateral*/
  .tb-client-portal .tb-analysis-html.tb-report-content{
    margin: 10px 0 !important;
    padding: 12px 10px !important;
  }

  /* Radar (imagem no topo do relatório) — menor no celular*/
  .tb-client-portal .tb-report-radar-top img{
    width: 100% !important;
    max-width: 320px !important;
    margin: 0 auto !important;
    display: block !important;
  }

  /* ---------------------------------------------------------
 (1) CARD DO TERAPEUTA — evitar texto colado na borda
 + reduzir avatar no mobile
 ---------------------------------------------------------*/
  .tb-client-portal .tb-therapist-card{
    padding: 14px 14px !important;
  }
  .tb-client-portal .tb-profileheader-left{
    gap: 12px !important;
    align-items: flex-start !important;
  }
  .tb-client-portal .tb-profileheader-text{
    padding-right: 6px !important;
  }
  .tb-client-portal .tb-therapist-card .tb-avatar{
    width: 64px !important;
    height: 64px !important;
    flex: 0 0 64px !important;
  }

  /* Card do terapeuta no final do portal, acima do rodapé*/
  .tb-client-portal .tb-client-therapist-card-slot-top{
    display:none !important;
  }
  .tb-client-portal .tb-client-therapist-card-slot-bottom{
    display:block !important;
  }

  /* Jornada terapêutica: níveis em coluna única no celular*/
  .tb-client-portal .tb-gamification-badges-grid{
    grid-template-columns: 1fr !important;
  }

  /* ---------------------------------------------------------
 (2) ENTREGA DO ÁUDIO — 2 colunas -> 1 coluna no celular
 ---------------------------------------------------------*/
  .tb-client-portal .tb-delivery-grid{
    grid-template-columns: 1fr !important;
  }
  .tb-client-portal .tb-delivery-cover{
    max-width: 320px !important;
    margin: 0 auto !important;
    display: block !important;
  }
  .tb-client-portal .tb-delivery-download .tb-btn{
    max-width: 320px !important;
    margin: 0 auto !important;
  }

  .tb-client-portal .tb-delivery-player-mobile{
    display:block !important;
  }
  .tb-client-portal .tb-delivery-player-desktop{
    display:none !important;
  }
  .tb-client-portal .tb-delivery-player-mobile .tb-delivery-player{
    margin-top:12px !important;
  }

  /* Ícones nos títulos (alinhamento visual)*/
  .tb-client-portal h3 .dashicons{
    font-size: 18px !important;
    line-height: 1 !important;
    vertical-align: -3px !important;
  }

  /* Segurança: impede qualquer elemento de estourar a borda*/
  .tb-client-portal *{
    max-width: 100%;
    box-sizing: border-box;
  }
}

@media (max-width: 480px){
  /* Mobile pequeno: reduz mais um pouco o radar*/
  .tb-client-portal .tb-report-radar-top img{
    max-width: 260px !important;
  }
}

/* =========================================================
 PORTAL DO CLIENTE – DESTAQUES DE SEÇÕES (tb-pre)
 Requisito:
 1) Técnicas utilizadas + Arquétipos e códigos: fundo #d0e7f8
 2) Aviso legal: fundo #ffcdc0
 Escopo seguro: .tb-client-portal
=========================================================*/

.tb-client-portal .tb-pre.tb-pre-tech,
.tb-client-portal .tb-pre.tb-pre-arch{
  background: #d0e7f8;
}

.tb-client-portal .tb-pre.tb-pre-legal{
  background: #ffcdc0;
}

.tb-client-portal .tb-delivery-player-mobile{
  display:none;
}

.tb-client-portal .tb-delivery-player-desktop{
  display:block;
}


.tb-client-portal .tb-pre.tb-audio-consent-box,
.tb-audio-consent-box{
  background:#ffffff;
  border:1px solid #d1d5db;
}

.tb-client-portal .tb-delivery-download .tb-btn.tb-btn-delivery-ready{
  background:#61ce70;
  color:#ffffff;
  border-color:#61ce70;
}

.tb-client-portal .tb-delivery-download .tb-btn.tb-btn-delivery-ready:hover{
  filter:brightness(0.95);
}

.tb-client-portal .tb-delivery-download .tb-btn.tb-btn-disabled,
.tb-client-portal .tb-delivery-download .tb-btn[disabled]{
  background:#e5e7eb;
  color:#9ca3af;
  border-color:#d1d5db;
  cursor:not-allowed;
  pointer-events:none;
  box-shadow:none;
}


/* Ícones nos títulos (dashicons)*/
.tb-client-portal .tb-muted .dashicons{
  font-size: 16px;
  width: 16px;
  height: 16px;
  line-height: 16px;
  vertical-align: -2px;
  margin-right: 6px;
}



/* =========================================================
 PORTAL DO CLIENTE – AJUSTE TÍTULO DO ÁUDIO (ALINHAMENTO)
 =========================================================*/
.tb-client-portal .tb-delivery-title-row{
  justify-content:flex-start;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.tb-client-portal .tb-delivery-title-label{
  font-weight:800;
  white-space:nowrap;
}
.tb-client-portal .tb-delivery-title-value{
  font-weight:900;
  font-size:16px;
}
@media (max-width: 768px){
  .tb-client-portal .tb-delivery-title-value{
    width:100%;
    display:block;
  }
}


/* Ícones customizados (SVG/PNG) nos títulos do Portal do Cliente*/
.tb-client-portal .tb-title-icon-img{width:18px;height:18px;display:inline-block;vertical-align:text-bottom;object-fit:contain;}


/* =========================================================
 BOTÃO BAIXAR ÁUDIO – COR PERSONALIZADA
 Texto branco / fundo verde (#61ce70)
 Escopo: Portal do Cliente / Entrega do Áudio
 =========================================================*/
.tb-client-portal .tb-delivery-download .tb-btn:not(.tb-btn-disabled):not([disabled]){
  background:#61ce70 !important;
  color:#ffffff !important;
  border-color:#61ce70 !important;
}
.tb-client-portal .tb-delivery-download .tb-btn:not(.tb-btn-disabled):not([disabled]):hover{
  filter:brightness(0.95);
}
.tb-client-portal .tb-delivery-download .tb-btn.tb-btn-disabled,
.tb-client-portal .tb-delivery-download .tb-btn[disabled]{
  background:#e5e7eb !important;
  color:#9ca3af !important;
  border-color:#d1d5db !important;
}


/* =========================================================
 PORTAL DO CLIENTE – CORREÇÃO DE LARGURA MOBILE
 Objetivo:
 - impedir overflow horizontal no iPhone/Safari
 - manter desktop em até 1200px
 - garantir alinhamento simétrico nas laterais
=========================================================*/
.tb-client-portal{
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  overflow-x:hidden;
}
.tb-client-portal > .tb-card{
  width:100% !important;
  max-width:1200px !important;
  margin:0 auto !important;
  box-sizing:border-box !important;
}
@media (max-width: 768px){
  .tb-wrap.tb-client-portal{
    margin:0 !important;
    padding:12px !important;
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
    overflow-x:hidden !important;
  }
  .tb-client-portal > .tb-card{
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    padding:14px 12px !important;
    border-radius:14px !important;
    box-sizing:border-box !important;
  }
}


/* Portal do cliente - estado da aba Entrega do Áudio*/
.tb-client-portal .tb-tabs .tb-tab.tb-tab-disabled,
.tb-client-portal .tb-tabs .tb-tab[disabled],
.tb-client-portal .tb-tabs .tb-tab[aria-disabled="true"]{
  background:#e5e7eb !important;
  color:#9ca3af !important;
  border-color:#d1d5db !important;
  cursor:not-allowed !important;
  pointer-events:none !important;
  opacity:1 !important;
}
.tb-client-portal .tb-tabs .tb-tab.tb-tab-delivery-ready{
  background:#61ce70 !important;
  color:#ffffff !important;
  border-color:#61ce70 !important;
}
.tb-client-portal .tb-tabs .tb-tab.tb-tab-delivery-ready:hover{
  filter:brightness(0.95);
}

.tb-client-portal .tb-delivery-player audio{
  width:100%;
  border-radius:12px;
}

.tb-client-portal .tb-audio-load-shell{position:relative;}
.tb-client-portal .tb-audio-load-indicator{display:flex;align-items:center;gap:10px;margin:0 0 10px;padding:10px 12px;border:1px solid #dbeafe;border-radius:12px;background:#eff6ff;color:#1d4ed8;font-size:13px;line-height:1.45;font-weight:700;box-sizing:border-box;}
.tb-client-portal .tb-audio-load-indicator[hidden]{display:none !important;}
.tb-client-portal .tb-audio-load-spinner{width:16px;height:16px;border-radius:999px;border:2px solid rgba(37,99,235,.20);border-top-color:#2563eb;animation:tbPortalAudioSpin .8s linear infinite;display:inline-block;flex:0 0 16px;}
.tb-client-portal .tb-audio-load-shell.is-error .tb-audio-load-indicator{background:#fef2f2;border-color:#fecaca;color:#b91c1c;}
.tb-client-portal .tb-audio-load-player iframe,
.tb-client-portal .tb-external-audio-player iframe{width:100%;max-width:100%;border:0;border-radius:12px;}
@keyframes tbPortalAudioSpin{to{transform:rotate(360deg)}}
@media print{
  .tb-print-hide,
  .tb-delivery-player{display:none !important;}
}


/* Gamificação mobile*/
.tb-gamification-top-grid,
.tb-gamification-two-grid,
.tb-gamification-badges-grid{align-items:stretch;}
.tb-gamification-badge-card{height:100%;}
@media (max-width: 767px){
  .tb-gamification-top-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .tb-gamification-two-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .tb-gamification-badges-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .tb-gamification-top-grid .tb-pre,
  .tb-gamification-two-grid .tb-pre,
  .tb-gamification-badges-grid .tb-pre{min-width:0; overflow-wrap:anywhere; word-break:break-word;}
  .tb-gamification-badges-grid .tb-pre > div:first-child{align-items:flex-start !important;}
}


.tb-client-portal .tb-btn{color:#1f2937 !important;}
.tb-client-portal .tb-btn.tb-btn-primary{color:#fff !important;}
.tb-client-portal .tb-btn.tb-btn-success{background:#16a34a !important;border-color:#16a34a !important;color:#fff !important;}
.tb-client-portal .tb-btn[disabled]{color:#6b7280 !important;background:#f3f4f6 !important;border-color:#d1d5db !important;opacity:1 !important;}

#tbCGamificationGoalDesc.tb-goal-desc-tall{ min-height:140px; height:140px; resize:vertical; }


@media (max-width: 767px){
  .tb-client-portal .tb-goals-grid{grid-template-columns:minmax(0,1fr) !important;}
  .tb-client-portal .tb-goal-portal-card{padding:14px 12px !important;}
  .tb-client-portal .tb-goal-portal-head{flex-direction:column !important; align-items:flex-start !important;}
  .tb-client-portal .tb-goal-portal-head > div:last-child{white-space:normal !important;}
  .tb-client-portal .tb-goal-form-grid{grid-template-columns:minmax(0,1fr) !important;}
  .tb-client-portal .tb-goal-portal-card .tb-input,
  .tb-client-portal .tb-goal-portal-card .tb-textarea,
  .tb-client-portal .tb-goal-portal-card select{width:100% !important; min-width:0 !important;}
  .tb-client-portal .tb-goal-portal-card textarea.tb-textarea{min-height:120px;}
}

/* =========================
 Central de Notícias e Vídeos
 =========================*/
.tb-central-bell{position:relative;display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:999px;border:1px solid rgba(148,163,184,.35);background:#fff;color:#334155;text-decoration:none;box-shadow:0 8px 24px rgba(15,23,42,.08);}
.tb-central-bell .dashicons{font-size:22px;width:22px;height:22px;}
.tb-central-bell-badge{position:absolute;top:-4px;right:-4px;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#dc2626;color:#fff;font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 16px rgba(220,38,38,.35);}
.tb-central-bell-alert{color:#dc2626;border-color:rgba(220,38,38,.35);animation:tbCentralBellPulse 1.2s infinite;}
.tb-central-bell-read{color:#16a34a;border-color:rgba(34,197,94,.28);background:#f0fdf4;box-shadow:0 8px 24px rgba(34,197,94,.10);}
@keyframes tbCentralBellPulse{0%{transform:scale(1);box-shadow:0 0 0 0 rgba(220,38,38,.35);}70%{transform:scale(1.04);box-shadow:0 0 0 10px rgba(220,38,38,0);}100%{transform:scale(1);box-shadow:0 0 0 0 rgba(220,38,38,0);}}
.tb-central-client-pick{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-top:10px;max-height:260px;overflow:auto;padding:12px;border:1px solid #e2e8f0;border-radius:14px;background:#fff;}
.tb-central-client-option{display:flex;gap:8px;align-items:flex-start;padding:10px 12px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;}
.tb-central-list{display:grid;gap:14px;}
/* Central de Notícias no tema dark: reforço de contraste em pacientes destinatários*/
.tb-wrap.tb-theme-dark .tb-central-client-pick{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.16);}
.tb-wrap.tb-theme-dark .tb-central-client-option{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18);}
.tb-wrap.tb-theme-dark .tb-central-client-option span{color:#f8fafc;font-weight:600;opacity:1;}
.tb-wrap.tb-theme-dark .tb-central-client-option input[type="checkbox"]{accent-color:#60a5fa;}
.tb-wrap.tb-theme-dark .tb-central-client-option:hover{background:rgba(255,255,255,.12);border-color:rgba(96,165,250,.45);}

.tb-central-item{display:grid;grid-template-columns:120px 1fr;gap:14px;padding:14px;border:1px solid #e2e8f0;border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(15,23,42,.04);}
.tb-central-item-thumb img{width:120px;height:120px;object-fit:cover;border-radius:14px;display:block;}
.tb-central-item-body{min-width:0;}
.tb-central-type{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:#eff6ff;color:#1d4ed8;font-size:12px;font-weight:700;}
.tb-central-status{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;font-size:12px;font-weight:800;}
.tb-central-status-new{background:#fee2e2;color:#b91c1c;}
.tb-central-status-read{background:#dcfce7;color:#166534;}
.tb-central-desc{margin-top:10px;color:#334155;line-height:1.6;}
.tb-central-desc p{margin:0 0 10px;}
.tb-central-metrics{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px;color:#475569;font-size:13px;}
@media (max-width: 767px){
  .tb-central-item{grid-template-columns:1fr;}
  .tb-central-item-thumb img{width:100%;height:auto;max-height:220px;}
  .tb-central-client-pick{grid-template-columns:1fr;}
}


.tb-central-patient-shell{background:linear-gradient(180deg,#f8fbff 0%,#ffffff 100%);border:1px solid #e2e8f0;}
.tb-central-hero{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;padding:4px 0 10px;}
.tb-central-hero-badge{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;background:#eff6ff;color:#1d4ed8;font-weight:700;}
.tb-central-hero-badge .dashicons{font-size:18px;width:18px;height:18px;}
.tb-central-empty{margin-top:14px;padding:18px;border:1px dashed #cbd5e1;border-radius:16px;background:#fff;color:#64748b;}
.tb-central-feed{display:grid;gap:18px;margin-top:14px;}
.tb-central-post{overflow:hidden;border:1px solid #e2e8f0;border-radius:22px;background:#fff;box-shadow:0 14px 35px rgba(15,23,42,.06);}
.tb-central-post-body{padding:16px 18px 18px;}
.tb-central-post-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;}
.tb-central-post-title{margin:6px 0 0;font-size:22px;line-height:1.2;color:#0f172a;}
.tb-central-post-date{margin-top:8px;color:#64748b;font-size:13px;}
.tb-central-cover img{display:block;width:100%;max-height:360px;object-fit:cover;}
.tb-central-video-frame{position:relative;width:100%;padding-top:56.25%;background:#0f172a;}
.tb-central-video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;}
.tb-central-video-shell{position:relative;border-radius:24px 24px 0 0;overflow:hidden;background:#0f172a;user-select:none;-webkit-user-select:none;}
.tb-central-video-launch{position:relative;display:block;width:100%;padding:0;border:0;background:#020617;cursor:pointer;color:#fff;text-align:left;}
.tb-central-video-poster{display:block;width:100%;height:260px;object-fit:cover;filter:saturate(1.02);pointer-events:none;}
.tb-central-video-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,6,23,.08) 0%,rgba(2,6,23,.40) 100%);}
.tb-central-video-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:88px;height:88px;border-radius:999px;background:rgba(255,255,255,.92);display:flex;align-items:center;justify-content:center;box-shadow:0 18px 40px rgba(15,23,42,.25);}
.tb-central-video-play .dashicons{font-size:40px;width:40px;height:40px;color:#dc2626;margin-left:4px;}
.tb-central-video-caption{position:absolute;left:18px;bottom:16px;padding:9px 14px;border-radius:999px;background:rgba(15,23,42,.68);font-weight:800;letter-spacing:.02em;}
.tb-central-post-modern .tb-central-status-read{background:#dcfce7;color:#166534;}
.tb-central-post-modern .tb-central-status-new{background:#fee2e2;color:#b91c1c;}
.tb-central-post-modern{user-select:none;-webkit-user-select:none;}
.tb-central-post-modern .tb-central-desc{-webkit-user-select:text;user-select:text;}

@media (max-width: 767px){
  .tb-central-post-title{font-size:18px;}
  .tb-central-post-body{padding:14px;}
}

/* Central moderna*/
.tb-central-kicker{display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;background:rgba(37,50,99,.08);color:#253263;font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;}
.tb-central-modern-hero{padding-bottom:16px;border-bottom:1px solid rgba(148,163,184,.18);}
.tb-central-filterbar{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px;}
.tb-central-filter{border:1px solid rgba(148,163,184,.25);background:#fff;color:#334155;padding:10px 14px;border-radius:999px;font-weight:700;cursor:pointer;transition:.2s ease;}
.tb-central-filter:hover,.tb-central-filter.is-active{background:#253263;color:#fff;border-color:#253263;box-shadow:0 12px 30px rgba(37,50,99,.18);}
.tb-central-chip{display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;background:rgba(37,50,99,.08);color:#253263;font-size:12px;font-weight:800;}
.tb-central-feed-modern{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;}
.tb-central-post-modern{display:grid;grid-template-rows:auto 1fr;border-radius:26px;box-shadow:0 18px 45px rgba(15,23,42,.08);border:1px solid rgba(226,232,240,.95);background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);}
.tb-central-post-modern .tb-central-post-media{position:relative;}
.tb-central-video-frame-modern,.tb-central-cover-modern,.tb-central-cover-placeholder{border-radius:24px 24px 0 0;overflow:hidden;}
.tb-central-cover-modern img{display:block;width:100%;height:260px;object-fit:cover;}
.tb-central-cover-placeholder{display:flex;align-items:center;justify-content:center;height:220px;background:linear-gradient(135deg,#253263 0%,#475569 100%);color:#fff;}
.tb-central-cover-placeholder .dashicons{font-size:42px;width:42px;height:42px;opacity:.9;}
.tb-central-post-modern .tb-central-post-body{display:flex;flex-direction:column;gap:10px;padding:20px;}
.tb-central-post-modern .tb-central-post-top{align-items:flex-start;}
.tb-central-post-modern .tb-central-post-title{font-size:24px;line-height:1.15;margin:10px 0 0;}
.tb-central-post-modern .tb-central-desc{font-size:15px;color:#475569;line-height:1.7;}
.tb-central-post-modern .tb-central-desc p:last-child{margin-bottom:0;}
.tb-central-post-modern.is-video .tb-central-post-body{background:linear-gradient(180deg,rgba(37,50,99,.02) 0%,rgba(255,255,255,1) 100%);}
@media (max-width: 991px){
  .tb-central-feed-modern{grid-template-columns:1fr;}
}
@media (max-width: 767px){
  .tb-central-filterbar{gap:8px;}
  .tb-central-filter{padding:9px 12px;font-size:13px;}
  .tb-central-post-modern .tb-central-post-title{font-size:20px;}
  .tb-central-cover-modern img{height:220px;}
}

/* Central do terapeuta - lista moderna*/
.tb-central-admin-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px;border:1px solid #e2e8f0;border-radius:20px;background:#fff;box-shadow:0 12px 32px rgba(15,23,42,.05);}
.tb-central-admin-main{display:flex;align-items:flex-start;gap:16px;min-width:0;flex:1;}
.tb-central-admin-media{width:96px;min-width:96px;height:96px;border-radius:18px;overflow:hidden;background:#f8fafc;border:1px solid #e2e8f0;display:flex;align-items:center;justify-content:center;}
.tb-central-admin-media img{width:100%;height:100%;object-fit:cover;display:block;}
.tb-central-admin-media-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#eff6ff 0%,#f8fafc 100%);color:#1d4ed8;}
.tb-central-admin-media-placeholder .dashicons{font-size:34px;width:34px;height:34px;}
.tb-central-admin-content{min-width:0;flex:1;display:grid;gap:10px;}
.tb-central-admin-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;}
.tb-central-admin-badges{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.tb-central-admin-date{color:#64748b;font-size:13px;}
.tb-central-admin-title{margin:0;font-size:24px;line-height:1.2;color:#0f172a;}
.tb-central-admin-desc{color:#475569;line-height:1.65;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.tb-central-admin-stats{display:flex;gap:10px;flex-wrap:wrap;}
.tb-central-admin-stats span{display:inline-flex;align-items:baseline;gap:6px;padding:10px 12px;border-radius:999px;background:#f8fafc;border:1px solid #e2e8f0;color:#334155;}
.tb-central-admin-stats strong{font-size:18px;color:#0f172a;}
.tb-central-admin-stats small{font-size:12px;color:#64748b;}
.tb-central-admin-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;}
@media (max-width: 900px){
  .tb-central-admin-card{flex-direction:column;align-items:stretch;}
  .tb-central-admin-main{flex-direction:column;}
  .tb-central-admin-media{width:100%;height:220px;min-width:0;}
  .tb-central-admin-actions{justify-content:flex-start;}
}


.tb-central-post-modern{display:block;}
.tb-central-post-modern .tb-central-post-body{padding:22px;}
.tb-central-minihead{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:4px;}
.tb-central-miniicon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:999px;background:linear-gradient(135deg,#253263 0%,#475569 100%);color:#fff;box-shadow:0 10px 24px rgba(37,50,99,.18);}
.tb-central-miniicon .dashicons{font-size:20px;width:20px;height:20px;}
.tb-central-minilabel{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:rgba(37,50,99,.08);color:#253263;font-size:12px;font-weight:800;letter-spacing:.02em;text-transform:uppercase;}
.tb-central-chip{background:#eef2ff;color:#334155;}
.tb-central-post-modern[data-central-category="avisos"] .tb-central-chip{background:#fff7ed;color:#c2410c;}
.tb-central-post-modern[data-central-category="noticias"] .tb-central-chip{background:#eff6ff;color:#1d4ed8;}
.tb-central-post-modern[data-central-category="videos"] .tb-central-chip{background:#f5f3ff;color:#7c3aed;}
.tb-central-post-modern[data-central-category="orientacoes"] .tb-central-chip{background:#ecfeff;color:#0f766e;}
.tb-central-post-modern[data-central-category="exercicios"] .tb-central-chip{background:#f0fdf4;color:#15803d;}
.tb-central-post-modern[data-central-category="conteudo-extra"] .tb-central-chip{background:#fdf2f8;color:#be185d;}
.tb-central-video-inline{margin-top:14px;}
.tb-central-video-launch-inline{display:inline-flex;align-items:center;gap:10px;width:auto;padding:12px 16px;border-radius:14px;background:#0f172a;color:#fff;}
.tb-central-video-inline-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:999px;background:rgba(255,255,255,.14);}
.tb-central-video-inline-icon .dashicons{font-size:18px;width:18px;height:18px;margin-left:2px;}
.tb-central-video-inline-text{font-weight:800;letter-spacing:.01em;}
.tb-central-video-inline .tb-central-video-frame{margin-top:14px;border-radius:18px;overflow:hidden;}
@media (max-width: 767px){
  .tb-central-post-modern .tb-central-post-body{padding:16px;}
  .tb-central-miniicon{width:38px;height:38px;}
}


/* =========================================================
 PORTAL DO CLIENTE – ABAS COM ÍCONES
 =========================================================*/
.tb-client-portal .tb-client-tabs-modern{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px !important;
  width:100%;
  align-items:stretch;
}
.tb-client-portal .tb-client-tabs-modern .tb-tab{
  display:inline-flex !important;
  width:100%;
  min-width:0;
  align-items:center !important;
  justify-content:flex-start;
  gap:10px !important;
  min-height:58px;
  padding:14px 18px !important;
  border-radius:18px !important;
  background:#fff !important;
  box-shadow:0 8px 24px rgba(15,23,42,.05);
}
.tb-client-portal .tb-client-tabs-modern .tb-tab .tb-tab-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:36px;
  height:36px;
  min-width:36px;
  border-radius:999px;
  background:rgba(37,50,99,.10);
  color:#253263;
  font-size:18px;
  line-height:1;
}
.tb-client-portal .tb-client-tabs-modern .tb-tab .tb-tab-label{
  display:inline-block;
  line-height:1.2;
  white-space:normal;
}
.tb-client-portal .tb-client-tabs-modern .tb-tab.tb-tab-active{
  border-color:#c7d2fe !important;
  box-shadow:0 14px 32px rgba(37,50,99,.12);
}
.tb-client-portal .tb-client-tabs-modern .tb-tab.tb-tab-active .tb-tab-icon{
  background:#253263;
  color:#fff;
}
.tb-client-portal .tb-client-tabs-modern .tb-tab.tb-tab-delivery-ready .tb-tab-icon{
  background:rgba(255,255,255,.18);
  color:#fff;
}
.tb-client-portal .tb-client-tabs-modern .tb-tab.tb-tab-disabled .tb-tab-icon,
.tb-client-portal .tb-client-tabs-modern .tb-tab[disabled] .tb-tab-icon,
.tb-client-portal .tb-client-tabs-modern .tb-tab[aria-disabled="true"] .tb-tab-icon{
  background:rgba(148,163,184,.18);
  color:#9ca3af;
}
@media (max-width: 980px){
  .tb-client-portal .tb-client-tabs-modern{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px !important;
  }
  .tb-client-portal .tb-client-tabs-modern .tb-tab{
    min-height:54px;
    padding:12px 14px !important;
  }
}

/* =========================================================
 CENTRAL DE NOTÍCIAS – CARD DE VÍDEO COM MINIATURA
 =========================================================*/
.tb-central-post-modern{
  overflow:hidden;
}
.tb-central-post-modern .tb-central-post-media-video{
  position:relative;
}
.tb-central-video-card{
  border-radius:26px 26px 0 0;
  overflow:hidden;
  background:#020617;
}
.tb-central-video-launch-card{
  position:relative;
  display:block;
  width:100%;
  padding:0;
  background:#020617;
  border:0;
  cursor:pointer;
}
.tb-central-video-poster-card{
  display:block;
  width:100%;
  height:260px;
  object-fit:cover;
}
.tb-central-video-poster-fallback{
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg,#253263 0%,#0f172a 100%);
  color:#fff;
}
.tb-central-video-poster-fallback .dashicons{
  font-size:42px;
  width:42px;
  height:42px;
}
.tb-central-video-overlay-card{
  background:linear-gradient(180deg,rgba(2,6,23,.05) 0%,rgba(2,6,23,.58) 100%);
}
.tb-central-video-play-card{
  width:92px;
  height:92px;
  background:rgba(255,255,255,.96);
}
.tb-central-video-card-caption{
  position:absolute;
  left:18px;
  bottom:18px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 16px;
  border-radius:999px;
  background:rgba(15,23,42,.72);
  color:#fff;
  font-weight:800;
  letter-spacing:.01em;
  backdrop-filter:blur(6px);
}
.tb-central-video-card-caption-icon{
  font-size:18px;
  width:18px;
  height:18px;
}
.tb-central-post-modern.is-video .tb-central-post-body{
  padding-top:18px;
}
.tb-central-post-modern.is-video .tb-central-post-title{
  margin-top:8px;
}
.tb-central-post-modern.is-video .tb-central-video-frame{
  border-radius:0;
}
@media (max-width: 767px){
  .tb-central-video-poster-card{
    height:220px;
  }
  .tb-central-video-play-card{
    width:78px;
    height:78px;
  }
  .tb-central-video-card-caption{
    left:14px;
    right:14px;
    bottom:14px;
    justify-content:center;
  }
}

/* =========================================================
 DICAS E TUTORIAL – TERAPEUTA
 =========================================================*/
.tb-tutorial-shell{padding:22px;border:1px solid #e7edf6;border-radius:26px;background:#fff;box-shadow:0 10px 28px rgba(15,23,42,.04);} 
.tb-tutorial-shell-head{margin-bottom:10px;}
.tb-tutorial-shell-title{max-width:760px;}
.tb-tutorial-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(430px,430px));gap:14px;align-items:start;}
.tb-tutorial-card{width:430px;max-width:100%;border:1px solid #e5ebf3;border-radius:18px;background:#fff;box-shadow:0 6px 18px rgba(15,23,42,.04);overflow:hidden;transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;}
.tb-tutorial-card:hover{transform:translateY(-1px);box-shadow:0 12px 26px rgba(15,23,42,.07);} 
.tb-tutorial-card[open]{box-shadow:0 14px 32px rgba(15,23,42,.08);border-color:#cfe0ff;}
.tb-tutorial-summary{list-style:none;display:block;cursor:pointer;padding:0;}
.tb-tutorial-summary-row{display:flex;align-items:stretch;gap:0;min-height:160px;height:auto;}
.tb-tutorial-summary::-webkit-details-marker{display:none;}







.tb-tutorial-head{position:relative;padding:16px 18px;display:flex;flex-direction:column;gap:8px;flex:1;min-width:0;justify-content:flex-start;}
.tb-tutorial-badges{display:flex;gap:6px;flex-wrap:wrap;}
.tb-tutorial-head h4{margin:0;font-size:18px;line-height:1.22;color:#0f172a;letter-spacing:-.02em;}
.tb-tutorial-head p{margin:0;color:#516174;line-height:1.45;font-size:14px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;max-width:100%;}
.tb-tutorial-open{display:inline-flex;align-items:center;gap:8px;margin-top:4px;font-weight:700;color:#253263;font-size:14px;}
.tb-tutorial-open:before{content:'+';display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:999px;background:rgba(37,50,99,.08);} 
.tb-tutorial-card[open] .tb-tutorial-open:before{content:'–';}
.tb-tutorial-head .tb-tutorial-new-dot{position:absolute;top:14px;right:14px;width:10px;height:10px;border-radius:999px;background:#ef4444;box-shadow:0 0 0 3px rgba(255,255,255,.96);}

.tb-tutorial-head .tb-tutorial-new-dot{position:absolute;top:14px;right:14px;width:10px;height:10px;border-radius:999px;background:#ef4444;box-shadow:0 0 0 3px rgba(255,255,255,.96);}
.tb-tutorial-body{padding:14px 16px 16px;display:grid;gap:14px;border-top:1px solid #eef2f7;background:#fcfdff;}
.tb-tutorial-video-frame{position:relative;width:100%;padding-top:56.25%;border-radius:14px;overflow:hidden;background:#020617;margin-top:14px;}
.tb-tutorial-video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;}
.tb-tutorial-content{color:#334155;line-height:1.68;font-size:14px;}
.tb-tutorial-content p:first-child{margin-top:0;}

.tb-tutorial-hero-stats{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
.tb-tutorial-filterbar{margin-top:10px;margin-bottom:2px;}
@media (max-width: 768px){
  .tb-tutorial-hero-stats{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    width:100%;
  }
  .tb-tutorial-hero-stats .tb-central-hero-badge{
    width:100%;
    justify-content:center;
    min-width:0;
  }
}
.tb-tutorial-card.is-unread{border-color:#c9dcff;box-shadow:0 8px 24px rgba(37,50,99,.06);}
.tb-tutorial-card.is-read{opacity:.99;}
@media (max-width: 1180px){
}
@media (max-width: 780px){
  .tb-tutorial-grid{grid-template-columns:1fr;}
  .tb-tutorial-card{width:100%;}
  .tb-tutorial-card{width:100%;}
  .tb-tutorial-shell{padding:16px;border-radius:22px;}
  .tb-tutorial-head{padding:14px;}
  .tb-tutorial-hero-stats{width:100%;}
  .tb-tutorial-body{padding:0 14px 14px;}
  .tb-tutorial-head h4{font-size:18px;}
}
.tb-therapist-tutorial-bell{display:none !important;}
.tb-therapist-tutorial-bell-text{font-weight:800;font-size:14px;white-space:nowrap;}
@media (max-width: 860px){
  .tb-therapist-tutorial-bell-text{display:none;}
  .tb-therapist-tutorial-bell{padding:0;width:46px;}
}

.tb-sidebtn-badge-dot{width:10px;height:10px;min-width:10px;border-radius:999px;background:#ef4444;padding:0;display:inline-block;box-shadow:0 0 0 3px rgba(239,68,68,.14);font-size:0;line-height:0;margin-left:auto;}
.tb-sidebtn.has-notification .tb-sidebtn-badge-dot{display:inline-block;}
@media (max-width: 980px){
  .tb-tutorial-grid{grid-template-columns:1fr;}
  .tb-tutorial-card{width:100%;}
  .tb-tutorial-card{width:100%;}
}
@media (max-width: 767px){
  .tb-tutorial-summary-row{min-height:160px;height:auto;}
  .tb-tutorial-summary-row{min-height:160px;height:auto;}
  .tb-tutorial-head{padding:14px;}
  .tb-tutorial-body{padding:14px;}
}

/* =========================================================
 CENTRAL DE NOTÍCIAS – CARD UNIFICADO COM TUTORIAIS
 =========================================================*/
.tb-central-grid-unified{margin-top:18px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start;}
.tb-central-card-unified{width:100%;max-width:100%;}
.tb-central-card-unified .tb-tutorial-summary-row{min-height:160px;}
.tb-central-head-unified{padding-left:18px;padding-right:18px;}
.tb-central-minihead-unified{align-items:center;gap:10px;flex-wrap:wrap;}
.tb-central-chip-read{background:#dcfce7;color:#166534;}
.tb-central-body-unified{padding-top:12px;}
.tb-central-post-date-unified{font-size:13px;color:#64748b;margin-bottom:4px;}
.tb-central-content-unified{margin-top:0;}
.tb-central-content-unified p:last-child{margin-bottom:0;}
.tb-central-card-unified .tb-central-video-shell{margin-top:2px;}
@media (max-width: 1100px){
  .tb-central-grid-unified{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width: 780px){
  .tb-central-grid-unified{grid-template-columns:1fr;}
  .tb-central-card-unified{width:100%;}
}


@media (max-width: 767px){
  .tb-mobile-hide{display:none !important}
  #tbTherapistMiniBottom{margin-top:14px}
  .tb-therapy-steps-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;overflow:visible;padding-bottom:0;flex-wrap:wrap}
  .tb-therapy-steps-tabs .tb-tab{width:100%;min-height:88px;display:flex;align-items:center;justify-content:center;text-align:center;white-space:normal;line-height:1.35;padding:14px 10px}
  #tbTabPre .tb-grid,
  #tbTabPre [style*="grid-template-columns:repeat(2,1fr)"],
  #tbTabPre [style*="grid-template-columns:repeat(4,1fr)"],
  #tbTabDelivery .tb-grid,
  #tbTabDelivery [style*="grid-template-columns:repeat(2,1fr)"],
  #tbViewProfile .tb-grid,
  #tbViewProfile [style*="grid-template-columns:repeat(2,1fr)"],
  #tbViewProfile [style*="grid-template-columns:1fr 2fr"]{grid-template-columns:1fr !important}
  #tbTabDelivery .tb-delivery-head{display:grid !important;grid-template-columns:1fr !important;gap:14px}
  #tbTabDelivery .tb-delivery-cover,
  #tbTabDelivery .tb-delivery-meta{width:100%;min-width:0}
  #tbTabDelivery .tb-editor,
  #tbTabDelivery .wp-editor-wrap,
  #tbTabDelivery .wp-editor-container,
  #tbTabDelivery iframe,
  #tbTabDelivery textarea{max-width:100%}
  #tbTabDelivery .mce-container,
  #tbTabDelivery .mce-container-body{max-width:100% !important}
  #tbViewProfile .tb-iconbtn,
  #tbViewProfile .tb-profile-social-presets,
  #tbViewProfile .tb-profile-social-hint{display:none !important}
  .tb-atendimento-toolbar #tbExportBackup,
  .tb-atendimento-toolbar .tb-file-btn{display:none !important}
}


/* Ajustes oficiais mobile terapeuta*/
@media (max-width: 767px){
  /* Modal/reflexões do Radar 7D adaptados ao mobile*/
  .tb-modal{padding:10px;box-sizing:border-box;overflow:auto;-webkit-overflow-scrolling:touch}
  .tb-modal-card{width:100%;max-width:none;margin:0 auto;max-height:calc(100vh - 20px);overflow:hidden;border-radius:14px;padding:12px}
  .tb-modal-body{overflow:auto;overflow-wrap:anywhere;word-break:break-word}
  .tb-reflection-text{min-height:180px;font-size:16px}

  /* Jornada terapêutica / desafios personalizados em uma coluna*/
  #tbClientBonusSection .tb-grid,
  #tbClientBonusSection .tb-goal-card .tb-grid{grid-template-columns:1fr !important}
  #tbClientBonusSection [style*="grid-template-columns:repeat(2,minmax(0,1fr))"],
  #tbClientBonusSection [style*="grid-template-columns:repeat(2,1fr)"]{grid-template-columns:1fr !important}
  #tbClientBonusSection .tb-row.tb-row-between{align-items:stretch}
  #tbClientBonusSection .tb-row.tb-row-between > *{width:100%}
  #tbClientBonusSection .tb-btn{width:100%;justify-content:center}

  /* Editar sessão/agendamentos com escala correta no mobile*/
  #tbClientSessionForm .tb-grid,
  #tbClientSessionForm [style*="grid-template-columns:repeat(4,1fr)"]{grid-template-columns:1fr !important}
  #tbClientSessionForm [style*="grid-column:2 / span 2;"],
  #tbClientSessionForm [style*="grid-column:1 / span 2;"]{grid-column:auto !important}
  #tbClientSessionForm .tb-input,
  #tbClientSessionForm input[type="datetime-local"],
  #tbClientSessionForm input[type="date"],
  #tbClientSessionForm input[type="time"],
  #tbClientSessionForm select{font-size:16px !important;line-height:1.35;height:auto;min-height:48px;padding:12px 14px}
  #tbClientSessionForm label{font-size:14px;line-height:1.35}
  #tbClientSessionForm .tb-btn{width:100%;justify-content:center}
}

/* Lista de clientes em cards*/
.tb-clients-cards-grid{display:grid;grid-template-columns:1fr;gap:10px;max-width:100%}
.tb-client-card{display:flex;flex-direction:column;gap:10px;border-radius:14px;padding:14px 16px;box-shadow:none;transition:box-shadow .18s ease,border-color .18s ease,transform .18s ease;background:linear-gradient(180deg,#f7faff 0%,#edf3fb 100%);border-color:#dbe4f0}
.tb-client-card[data-open-url]{cursor:pointer;}
.tb-client-card[data-open-url]:hover{border-color:#93c5fd;box-shadow:0 14px 28px rgba(37,99,235,.08);transform:translateY(-1px);}
.tb-client-card[data-open-url]:focus-visible{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.18);}
.tb-client-card.is-risk{border-color:rgba(220,38,38,.28);box-shadow:0 0 0 1px rgba(220,38,38,.08) inset}
.tb-client-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}
.tb-client-card-head--aligned{align-items:center}
.tb-client-card-main{display:flex;flex-direction:column;gap:3px;min-width:220px}
.tb-client-card-code{font-size:12px;letter-spacing:.04em;text-transform:uppercase;opacity:.7;margin-bottom:0}
.tb-client-card-name{font-size:22px;font-weight:800;line-height:1.1;margin:0}
.tb-client-card-name-row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}
.tb-client-card-name-row .tb-client-card-name{flex:1 1 auto;min-width:0}
.tb-client-card-open-btn-mobile{display:none}
.tb-client-card-open-btn-desktop{display:inline-flex}
.tb-client-card-meta{font-size:13px;color:#6b7280;margin-top:4px}
.tb-client-card-head-right{display:flex;flex:1 1 560px;justify-content:flex-end;min-width:280px}
.tb-client-card-topline{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;width:100%}
.tb-client-card-badges{display:flex;gap:8px;flex-wrap:wrap;align-items:stretch;justify-content:flex-end}
.tb-client-card-badge{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 12px;border-radius:16px;border:1px solid transparent;font-weight:700;font-size:12px;line-height:1.2;text-align:center;box-sizing:border-box;white-space:normal}
.tb-client-card-status{color:#fff;border-radius:16px}
.tb-client-card-access{background:#eef2ff;color:#253263;border-color:#c7d2fe}
.tb-client-card-validity{background:#ecfdf5;color:#166534;border-color:#bbf7d0}
.tb-client-card-validity.is-expired{background:#fef2f2;color:#b91c1c;border-color:#fecaca}
.tb-client-card-validity.is-open{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}
.tb-client-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.tb-client-card-grid .tb-pre{height:100%}
.tb-client-card-alert{margin-top:2px;color:#b91c1c;font-weight:700}
.tb-client-card-actions{display:none;gap:8px;flex-wrap:wrap}
.tb-client-card-actions.is-open{display:flex}
.tb-client-card-actions-toggle-wrap{display:block}
.tb-client-card-actions-toggle{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:34px;padding:6px 10px;text-align:center;border-radius:999px}

@media (max-width: 980px){
  .tb-clients-cards-grid{grid-template-columns:1fr}
}
@media (max-width: 767px){
  .tb-client-card-head--aligned{align-items:flex-start}
  .tb-client-card-head-right{width:100%;min-width:0;justify-content:flex-start}
  .tb-client-card-topline{justify-content:flex-start}
  .tb-client-card-badges{justify-content:flex-start}
  .tb-client-card-badge{white-space:normal}
  .tb-client-card-grid{grid-template-columns:1fr}
  .tb-client-card-actions{flex-direction:column}
  .tb-client-card-actions .tb-btn,
  .tb-client-card-actions a.tb-btn,
  .tb-client-card-actions span.tb-btn{width:100%;text-align:center;justify-content:center}
  .tb-client-card-name-row{align-items:flex-start;gap:8px}
  .tb-client-card-open-btn-desktop{display:inline-flex;height:34px;min-height:34px;padding:0 12px;font-size:12px}
  .tb-client-card-top-actions{display:flex}
}


.tb-client-card-panel{margin-top:2px}
.tb-client-card-panel.is-open{display:block}
.tb-client-inline-frame{width:100%;height:720px;margin-top:12px;border:1px solid #d7deea;border-radius:16px;background:#fff}
@media (max-width: 767px){
  .tb-client-card-panel .tb-grid[style*="repeat(3,1fr)"],
  .tb-client-card-panel .tb-grid[style*="repeat(2,minmax(0,1fr))"],
  .tb-client-card-panel .tb-grid[style*="repeat(2,1fr)"],
  .tb-client-card-panel .tb-grid[style*="repeat(4,1fr)"]{grid-template-columns:1fr !important}
  .tb-client-inline-frame{height:560px}
}

/* Atendimentos em cards dentro do card do cliente*/
.tb-client-card-panel .tb-session-cards-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:4px}
.tb-client-card-panel .tb-session-card{background:#fff;border:1px solid #d7deea;border-radius:18px;padding:16px;display:flex;flex-direction:column;gap:14px;box-shadow:0 10px 30px rgba(15,23,42,.04);min-width:0}
.tb-client-card-panel .tb-session-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}
.tb-client-card-panel .tb-session-card-kicker{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#64748b}
.tb-client-card-panel .tb-session-card-title{margin:4px 0 0;font-size:20px;line-height:1.25;color:#0f172a}
.tb-client-card-panel .tb-session-card-status{display:inline-flex;align-items:center;justify-content:center;padding:7px 12px;border-radius:999px;font-size:12px;font-weight:800;border:1px solid transparent}
.tb-client-card-panel .tb-session-card-status.is-success{background:#ecfdf5;color:#047857;border-color:#a7f3d0}
.tb-client-card-panel .tb-session-card-status.is-danger{background:#fef2f2;color:#b91c1c;border-color:#fecaca}
.tb-client-card-panel .tb-session-card-status.is-neutral{background:#f8fafc;color:#475569;border-color:#cbd5e1}
.tb-client-card-panel .tb-session-card-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.tb-client-card-panel .tb-session-card-meta-item{padding:12px 14px;border:1px solid #e2e8f0;border-radius:14px;background:#f8fafc;min-width:0}
.tb-client-card-panel .tb-session-card-meta-label{display:block;font-size:12px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:#64748b;margin-bottom:6px}
.tb-client-card-panel .tb-session-card-meta-item strong{display:block;font-size:15px;line-height:1.35;color:#0f172a;word-break:break-word}
.tb-client-card-panel .tb-session-card-actions{display:flex;gap:8px;flex-wrap:wrap}
.tb-client-card-panel .tb-session-empty{padding:16px;border-radius:16px}
.tb-client-card-panel .tb-session-form-card{border-radius:18px;box-shadow:0 10px 30px rgba(15,23,42,.04)}
@media (max-width: 980px){
  .tb-client-card-panel .tb-session-cards-grid{grid-template-columns:1fr}
}
@media (max-width: 640px){
  .tb-client-card-panel .tb-session-card{padding:14px}
  .tb-client-card-panel .tb-session-card-title{font-size:18px}
  .tb-client-card-panel .tb-session-card-meta{grid-template-columns:1fr}
  .tb-client-card-panel .tb-session-card-actions .tb-btn{width:100%;justify-content:center;text-align:center}
}


/* Clientes mobile: filtros e paginação mais compactos*/
.tb-client-filters{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end}
.tb-client-filter-item{min-width:0}
.tb-client-filter-info{flex:1 1 100%;padding-bottom:0 !important}
.tb-client-pagination-bar{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.tb-client-pagination-info{width:100%;margin-top:6px}
.tb-journey-summary-grid .tb-pre{min-width:0;overflow-wrap:anywhere;word-break:break-word}
.tb-journey-summary-grid .tb-pre > div:last-child{word-break:break-word}
.tb-journey-summary-grid .tb-journey-summary-card.is-full{grid-column:1 / -1;}
.tb-journey-summary-grid .tb-journey-summary-helper{margin-top:8px;font-size:13px;line-height:1.5;color:#64748b;word-break:break-word;}
.tb-journey-summary-grid .tb-journey-summary-card.is-compact .tb-journey-summary-value{font-size:18px !important;line-height:1.35 !important;}
.tb-journey-audio-monitor-card{border:1px solid #d7deea;border-radius:18px;padding:16px;background:#f8fafc;box-shadow:0 10px 24px rgba(15,23,42,.04);}
.tb-journey-audio-monitor-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;}
.tb-journey-audio-monitor-pill{display:inline-flex;align-items:center;justify-content:center;padding:8px 14px;border-radius:999px;font-size:12px;font-weight:800;border:1px solid transparent;}
.tb-journey-audio-monitor-main{margin-top:10px;font-size:24px;font-weight:800;line-height:1.15;color:#0f172a;}
.tb-journey-audio-monitor-meta{opacity:.9;}
.tb-journey-audio-monitor-card.is-success{border-color:#86efac;background:#f0fdf4;}
.tb-journey-audio-monitor-card.is-success .tb-journey-audio-monitor-pill{background:#dcfce7;color:#166534;border-color:#86efac;}
.tb-journey-audio-monitor-card.is-warning{border-color:#fcd34d;background:#fffbeb;}
.tb-journey-audio-monitor-card.is-warning .tb-journey-audio-monitor-pill{background:#fef3c7;color:#92400e;border-color:#fcd34d;}
.tb-journey-audio-monitor-card.is-danger{border-color:#fca5a5;background:#fef2f2;}
.tb-journey-audio-monitor-card.is-danger .tb-journey-audio-monitor-pill{background:#fee2e2;color:#b91c1c;border-color:#fca5a5;}
.tb-journey-audio-monitor-card.is-neutral{border-color:#cbd5e1;background:#f8fafc;}
.tb-journey-audio-monitor-card.is-neutral .tb-journey-audio-monitor-pill{background:#e2e8f0;color:#475569;border-color:#cbd5e1;}
.tb-journey-config-panel{border:1px solid #d7deea;border-radius:18px;background:#fff;overflow:hidden;}
.tb-journey-config-panel summary{list-style:none;cursor:pointer;padding:14px 16px;font-weight:800;color:#166534;display:flex;align-items:center;justify-content:space-between;gap:12px;}
.tb-journey-config-panel summary::-webkit-details-marker{display:none;}
.tb-journey-config-panel summary::after{content:'−';display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;background:#eafaf0;color:#177a35;font-size:20px;line-height:1;}
.tb-journey-config-panel:not([open]) summary::after{content:'+';}
.tb-journey-config-panel-body{padding:0 16px 16px;}
.tb-journey-config-intro{margin-top:12px;line-height:1.6;}
.tb-journey-config-shell{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;margin-top:14px;}
.tb-journey-config-card{border:1px solid #d7deea;border-radius:18px;padding:16px;background:#f8fbff;box-shadow:0 10px 24px rgba(15,23,42,.04);}
.tb-journey-config-card-smart{background:#f9fafb;}
.tb-journey-config-card-title{font-size:16px;font-weight:800;line-height:1.25;color:#0f172a;}
.tb-journey-config-card-desc{margin-top:6px;line-height:1.55;}
.tb-journey-chip-toggle{width:fit-content;max-width:100%;}
.tb-journey-source-checks .tb-chip{display:inline-flex;align-items:center;gap:8px;}
.tb-journey-config-gate{font-size:14px;line-height:1.75;padding:12px 14px;border-radius:16px;background:rgba(241,245,249,.72);border:1px solid #d7deea;}
.tb-journey-config-grid{align-items:start;}
.tb-journey-config-field{min-width:0;}
.tb-journey-config-field > label{display:block;font-size:12px;font-weight:700;letter-spacing:.02em;color:#475569;margin-bottom:6px;opacity:1;}
.tb-journey-config-grid .tb-input,
.tb-journey-config-grid .tb-select,
.tb-journey-config-grid select.tb-input{min-height:48px;padding:11px 13px;border-radius:14px;}
.tb-journey-config-grid input[type="date"].tb-input{appearance:none;-webkit-appearance:none;}
.tb-journey-chip-toggle{width:100%;max-width:none;min-height:56px;align-items:flex-start;padding:12px 14px;border-radius:18px;line-height:1.5;white-space:normal;}
.tb-journey-chip-toggle input{margin-top:3px;flex:0 0 auto;}
.tb-journey-source-checks .tb-chip{display:flex;align-items:flex-start;justify-content:flex-start;width:100%;min-height:52px;padding:12px 14px;border-radius:18px;line-height:1.45;white-space:normal;}
.tb-journey-source-checks .tb-chip input{margin-top:3px;flex:0 0 auto;}

@media (max-width: 768px){
  .tb-journey-config-shell{grid-template-columns:minmax(0,1fr);}
  .tb-journey-source-checks{display:grid !important;grid-template-columns:1fr;gap:8px !important;}
}

.tb-gamification-bars{display:grid;gap:10px;}
.tb-gamification-bar{display:grid;grid-template-columns:minmax(0,180px) minmax(0,1fr) 58px;gap:10px;align-items:center;}
.tb-gamification-bar-label{font-size:13px;font-weight:700;color:#0f172a;line-height:1.3;}
.tb-gamification-bar-meta{margin-top:3px;font-size:11px;color:#64748b;line-height:1.35;}
.tb-gamification-bar-track{height:12px;background:#e5e7eb;border-radius:999px;overflow:hidden;}
.tb-gamification-bar-fill{height:12px;background:#253263;border-radius:999px;}
.tb-gamification-bar-value{font-weight:700;text-align:right;color:#0f172a;}
.tb-session-next-hint{border:1px solid #d7deea;border-left:4px solid #61ce70;border-radius:14px;padding:12px 14px;background:#f6fff8;color:#166534;font-weight:600;line-height:1.5;}
.tb-journey-achievement-card{border:1px solid #d7deea;border-radius:18px;padding:16px;background:#f8fbff;box-shadow:0 10px 24px rgba(15,23,42,.04);}
.tb-journey-achievement-main{margin-top:10px;font-size:24px;font-weight:800;line-height:1.15;color:#0f172a;}
.tb-journey-timeline-wrap{border:1px solid #d7deea;border-radius:20px;padding:16px;background:#fff;}
.tb-journey-focus-card{margin-top:14px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px 18px;border-radius:18px;border:1px solid #d7deea;background:linear-gradient(135deg,#f8fafc 0%,#eef2ff 100%);box-shadow:0 10px 24px rgba(15,23,42,.05);}
.tb-journey-focus-card.is-success{background:linear-gradient(135deg,#f0fdf4 0%,#ecfdf5 100%);border-color:#86efac;}
.tb-journey-focus-card.is-info{background:linear-gradient(135deg,#eff6ff 0%,#f0f9ff 100%);border-color:#93c5fd;}
.tb-journey-focus-card.is-warning{background:linear-gradient(135deg,#fffbeb 0%,#fff7ed 100%);border-color:#fcd34d;}
.tb-journey-focus-label{font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#475569;}
.tb-journey-focus-title{margin-top:6px;font-size:20px;font-weight:800;line-height:1.2;color:#0f172a;}
.tb-journey-focus-desc{margin-top:6px;font-size:14px;line-height:1.55;color:#334155;}
.tb-journey-focus-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;}
.tb-journey-focus-meta span{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.78);border:1px solid rgba(148,163,184,.26);font-size:12px;font-weight:700;color:#334155;}
.tb-journey-focus-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;}
.tb-journey-focus-progress{margin-top:12px;height:8px;border-radius:999px;background:#dbe4f0;overflow:hidden;}
.tb-journey-focus-progress span{display:block;height:8px;border-radius:999px;background:#253263;}
.tb-journey-timeline-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.tb-journey-timeline-filters{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:10px;align-items:end;min-width:min(100%,380px);}
.tb-journey-filter-field label{display:block;margin-bottom:6px;font-size:12px;font-weight:800;color:#475569;text-transform:uppercase;letter-spacing:.04em;}
.tb-journey-live-zone{display:grid;gap:0;}
.tb-journey-sections-shell{display:grid;gap:12px;margin-top:14px;}
.tb-journey-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:stretch;}
.tb-journey-tab{position:relative;display:flex;align-items:center;justify-content:flex-start;text-align:left;gap:14px;min-height:92px;padding:18px 18px 16px;border-radius:18px;width:100%;border:1px solid rgba(148,163,184,.22);background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);box-shadow:0 10px 24px rgba(15,23,42,.05);transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background .18s ease,color .18s ease;overflow:hidden;isolation:isolate;}
.tb-journey-tab::before{content:"";position:absolute;inset:auto 0 0 0;height:4px;background:var(--tb-journey-accent,#253263);opacity:.95;z-index:0;}
.tb-journey-tab::after{content:"";position:absolute;inset:-35% auto auto -12%;width:140px;height:140px;border-radius:999px;background:radial-gradient(circle,rgba(255,255,255,.55) 0%,rgba(255,255,255,0) 72%);opacity:.55;pointer-events:none;z-index:0;}
.tb-journey-tab:hover{transform:translateY(-2px);box-shadow:0 16px 28px rgba(15,23,42,.10);}
.tb-journey-tab:focus-visible{outline:2px solid #253263;outline-offset:2px;}
.tb-journey-tab-icon,.tb-journey-tab-copy{position:relative;z-index:1;}
.tb-journey-tab-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;border-radius:999px;background:var(--tb-journey-accent,#253263);color:#fff;font-size:20px;line-height:1;box-shadow:0 10px 24px color-mix(in srgb, var(--tb-journey-accent,#253263) 28%, transparent);}
.tb-journey-tab-copy{display:grid;gap:4px;min-width:0;}
.tb-journey-tab-title{display:block;max-width:100%;font-size:15px;line-height:1.25;font-weight:800;color:#1e293b;}
.tb-journey-tab-meta{display:block;max-width:100%;font-size:12px;line-height:1.45;font-weight:700;color:var(--tb-journey-accent,#253263);opacity:.95;}
.tb-journey-tabpanes{display:grid;gap:12px;}
.tb-journey-tabpane{display:none;min-width:0;}
.tb-journey-tabpane.is-active{display:block;}
.tb-journey-tab[data-journey-tab="now"]{--tb-journey-accent:#2563eb;background:linear-gradient(180deg,#eef4ff 0%,#ffffff 100%);}
.tb-journey-tab[data-journey-tab="next"]{--tb-journey-accent:#16a34a;background:linear-gradient(180deg,#f1fff5 0%,#ffffff 100%);}
.tb-journey-tab[data-journey-tab="history"]{--tb-journey-accent:#7c3aed;background:linear-gradient(180deg,#f6f0ff 0%,#ffffff 100%);}
.tb-journey-tab[data-journey-tab="config"]{--tb-journey-accent:#f97316;background:linear-gradient(180deg,#fff4ec 0%,#ffffff 100%);}
.tb-journey-tab.tb-tab-active{border-color:color-mix(in srgb, var(--tb-journey-accent,#253263) 68%, #ffffff);background:linear-gradient(135deg,color-mix(in srgb, var(--tb-journey-accent,#253263) 88%, #3b82f6 12%) 0%,var(--tb-journey-accent,#253263) 100%);box-shadow:0 18px 30px color-mix(in srgb, var(--tb-journey-accent,#253263) 24%, transparent);transform:translateY(-1px);}
.tb-journey-tab.tb-tab-active::before{height:0;}
.tb-journey-tab.tb-tab-active .tb-journey-tab-title,.tb-journey-tab.tb-tab-active .tb-journey-tab-meta{color:#ffffff;}
.tb-journey-tab.tb-tab-active .tb-journey-tab-icon{background:#ffffff;color:var(--tb-journey-accent,#253263);box-shadow:0 12px 26px rgba(255,255,255,.28);}
.tb-journey-tab span{max-width:100%;}
.tb-journey-tabpane{min-width:0;}
.tb-journey-config-panel.is-static{overflow:visible;background:transparent;border:none;border-radius:0;box-shadow:none;}
.tb-journey-config-panel.is-static .tb-journey-config-panel-body{padding:0;}
.tb-journey-section{border:1px solid #d7deea;border-radius:18px;background:#fff;overflow:hidden;}
.tb-journey-section[open]{background:#fcfdff;}
.tb-journey-section-summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;cursor:pointer;}
.tb-journey-section-summary::-webkit-details-marker{display:none;}
.tb-journey-section-summary-copy{display:grid;gap:4px;min-width:0;}
.tb-journey-section-title{font-size:15px;font-weight:800;line-height:1.25;color:#0f172a;}
.tb-journey-section-helper{font-size:12px;line-height:1.45;color:#64748b;}
.tb-journey-section-summary-side{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end;}
.tb-journey-section-count{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;background:#f8fafc;border:1px solid #dbe4f0;color:#475569;font-size:11px;font-weight:800;line-height:1.2;text-align:center;}
.tb-journey-section-caret{position:relative;width:12px;height:12px;flex:0 0 12px;}
.tb-journey-section-caret::before,.tb-journey-section-caret::after{content:'';position:absolute;top:5px;width:8px;height:2px;background:#64748b;border-radius:999px;transition:transform .18s ease;}
.tb-journey-section-caret::before{left:0;transform:rotate(45deg);}
.tb-journey-section-caret::after{right:0;transform:rotate(-45deg);}
.tb-journey-section[open] .tb-journey-section-caret::before{transform:rotate(-45deg);}
.tb-journey-section[open] .tb-journey-section-caret::after{transform:rotate(45deg);}
.tb-journey-section-panel{padding:0 16px 16px;border-top:1px solid #edf2f7;display:grid;gap:14px;}
.tb-journey-sections-shell{gap:12px;padding-top:2px;border-top:1px solid #e8edf5;}
.tb-journey-section{border:0;border-radius:0;background:transparent;overflow:visible;border-bottom:1px solid #e8edf5;box-shadow:none;}
.tb-journey-section:last-child{border-bottom:0;}
.tb-journey-section[open]{background:transparent;}
.tb-journey-section-summary{padding:16px 0;min-height:0;}
.tb-journey-section-summary-side{gap:8px;}
.tb-journey-section-count{padding:0;background:transparent;border:0;border-radius:0;color:#64748b;font-size:12px;font-weight:700;line-height:1.35;justify-content:flex-end;}
.tb-journey-section:not([open]) .tb-journey-section-helper{display:none;}
.tb-journey-section-panel{padding:0 0 16px;border-top:0;gap:12px;}
.tb-journey-section.is-info .tb-journey-section-summary,.tb-journey-section.is-success .tb-journey-section-summary,.tb-journey-section.is-warning .tb-journey-section-summary{background:transparent;}
.tb-journey-board-wrap,.tb-journey-history-wrap{margin-top:12px;padding-top:12px;}
.tb-journey-section.is-info .tb-journey-section-summary{background:linear-gradient(180deg,#f8fbff 0%,#ffffff 100%);}
.tb-journey-section.is-success .tb-journey-section-summary{background:linear-gradient(180deg,#f8fff9 0%,#ffffff 100%);}
.tb-journey-section.is-warning .tb-journey-section-summary{background:linear-gradient(180deg,#fffaf0 0%,#ffffff 100%);}
.tb-journey-panel-empty{padding:14px 16px;border:1px dashed #d7deea;border-radius:16px;background:#f8fafc;color:#64748b;font-size:13px;line-height:1.55;}
.tb-journey-history-wrap{display:grid;gap:8px;padding-top:10px;border-top:1px solid #eef2f7;}
.tb-journey-window-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:14px;}
.tb-journey-window-card{display:grid;gap:6px;padding:12px 14px;border-radius:16px;border:1px solid #d7deea;background:#f8fafc;box-shadow:0 8px 20px rgba(15,23,42,.04);}
.tb-journey-window-card.is-active{border-color:#253263;background:#eef2ff;box-shadow:0 10px 24px rgba(37,50,99,.10);}
.tb-journey-window-card.is-warning{background:#fffaf0;border-color:#fcd34d;}
.tb-journey-window-card.is-info{background:#f0f9ff;border-color:#93c5fd;}
.tb-journey-window-card.is-success{background:#f0fdf4;border-color:#86efac;}
.tb-journey-window-label{font-size:12px;font-weight:800;color:#475569;letter-spacing:.03em;text-transform:uppercase;line-height:1.2;}
.tb-journey-window-value{font-size:22px;line-height:1;font-weight:800;color:#0f172a;}
.tb-journey-boardgame-shell{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;margin-top:14px;align-items:stretch;}
.tb-journey-boardgame-guide{grid-column:1/-1;}
.tb-journey-boardgame,.tb-journey-boardgame-guide{border:1px solid #d7deea;border-radius:22px;padding:16px;background:linear-gradient(180deg,#f8fbff 0%,#ffffff 100%);box-shadow:0 10px 24px rgba(15,23,42,.04);}
.tb-journey-boardgame-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.tb-journey-boardgame-score{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:999px;background:#eef2ff;border:1px solid #c7d2fe;color:#29407a;font-size:12px;font-weight:800;}
.tb-journey-boardgame-bar{margin-top:12px;height:8px;border-radius:999px;background:#dbe4f0;overflow:hidden;}
.tb-journey-boardgame-bar span{display:block;height:8px;border-radius:999px;background:#253263;}
.tb-journey-boardgame-legend{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;}
.tb-journey-boardgame-legend span{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;border:1px solid #d7deea;background:#fff;font-size:11px;font-weight:800;color:#475569;text-transform:uppercase;letter-spacing:.03em;}
.tb-journey-boardgame-legend .is-completed{background:#f0fdf4;border-color:#86efac;color:#166534;}
.tb-journey-boardgame-legend .is-current{background:#eef2ff;border-color:#93c5fd;color:#1d4ed8;}
.tb-journey-boardgame-legend .is-upcoming{background:#f8fafc;border-color:#cbd5e1;color:#64748b;}
.tb-journey-boardgame-path{position:relative;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-top:14px;}
.tb-journey-boardgame-path::before{content:'';position:absolute;left:4%;right:4%;top:28px;height:4px;border-radius:999px;background:linear-gradient(90deg,#dbeafe 0%,#e2e8f0 100%);}
.tb-journey-boardgame-step{position:relative;z-index:1;appearance:none;border:1px solid #d7deea;border-radius:20px;padding:12px;background:#fff;display:grid;gap:8px;text-align:left;cursor:pointer;min-height:136px;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;box-shadow:0 10px 20px rgba(15,23,42,.05);}
.tb-journey-boardgame-step:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(15,23,42,.08);}
.tb-journey-boardgame-step:focus-visible{outline:2px solid #253263;outline-offset:2px;}
.tb-journey-boardgame-step.is-completed{background:#f0fdf4;border-color:#86efac;}
.tb-journey-boardgame-step.is-current{background:#eef2ff;border-color:#93c5fd;box-shadow:0 16px 30px rgba(37,99,235,.14);}
.tb-journey-boardgame-step.is-upcoming{background:#f8fafc;border-color:#d7deea;color:#475569;}
.tb-journey-boardgame-step.is-attention{background:#fff7ed;border-color:#fcd34d;}
.tb-journey-boardgame-badge{display:flex;align-items:center;justify-content:space-between;gap:8px;}
.tb-journey-boardgame-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:999px;background:rgba(255,255,255,.9);border:1px solid rgba(148,163,184,.28);font-size:16px;line-height:1;}
.tb-journey-boardgame-day{font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#475569;}
.tb-journey-boardgame-title{font-size:15px;font-weight:800;line-height:1.3;color:#0f172a;}
.tb-journey-boardgame-caption{font-size:12px;font-weight:700;color:#475569;}
.tb-journey-boardgame-track{display:block;width:100%;height:8px;border-radius:999px;background:#e5e7eb;overflow:hidden;}
.tb-journey-boardgame-track span{display:block;height:8px;border-radius:999px;background:#253263;}
.tb-journey-boardgame-counter{font-size:12px;font-weight:800;color:#29407a;}
.tb-journey-boardgame-note{margin-top:12px;padding:11px 12px;border-radius:16px;background:#f8fafc;border:1px dashed #cbd5e1;color:#475569;font-size:13px;line-height:1.45;}
.tb-journey-boardgame-guide{display:grid;gap:12px;align-content:start;}
.tb-journey-boardgame-guide-kicker{font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#475569;}
.tb-journey-boardgame-guide-title{font-size:20px;font-weight:800;line-height:1.2;color:#0f172a;}
.tb-journey-boardgame-guide-text{font-size:14px;line-height:1.6;color:#334155;}
.tb-journey-boardgame-guide-helper{font-size:13px;line-height:1.55;color:#64748b;}
.tb-journey-boardgame-guide-chips{display:flex;flex-wrap:wrap;gap:8px;}
.tb-journey-boardgame-guide-chips span{display:inline-flex;align-items:center;justify-content:center;padding:7px 10px;border-radius:999px;background:#eef2ff;border:1px solid #c7d2fe;color:#29407a;font-size:12px;font-weight:700;}
.tb-journey-boardgame-guide-actions{display:flex;gap:10px;flex-wrap:wrap;}
.tb-journey-surprise-lane{display:grid;gap:12px;margin-top:14px;padding-top:14px;border-top:1px solid #d7deea;}
.tb-journey-surprise-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.tb-journey-surprise-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.tb-journey-surprise-card{display:grid;gap:10px;padding:14px;border-radius:18px;border:1px solid #d7deea;background:#fff;box-shadow:0 10px 24px rgba(15,23,42,.04);}
.tb-journey-surprise-card.is-locked{background:#f8fafc;border-style:dashed;}
.tb-journey-surprise-card.is-unlocked{background:#fffaf0;border-color:#fcd34d;}
.tb-journey-surprise-kicker{font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#475569;}
.tb-journey-surprise-title{font-size:16px;line-height:1.3;font-weight:800;color:#0f172a;}
.tb-journey-surprise-desc{font-size:14px;line-height:1.6;color:#334155;}
.tb-journey-surprise-meta{display:flex;flex-wrap:wrap;gap:8px;}
.tb-journey-surprise-meta span{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;border:1px solid #d7deea;background:#f8fafc;font-size:12px;font-weight:700;color:#334155;}
.tb-journey-surprise-actions{display:flex;gap:10px;flex-wrap:wrap;}
.tb-journey-timeline{position:relative;display:grid;gap:14px;margin-top:14px;}
.tb-journey-timeline-stage{display:flex;align-items:center;gap:10px;margin-top:4px;}
.tb-journey-timeline-stage:first-child{margin-top:0;}
.tb-journey-timeline-stage-pill{display:inline-flex;align-items:center;justify-content:center;padding:7px 12px;border-radius:999px;background:#eef2ff;border:1px solid #c7d2fe;color:#29407a;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;}
.tb-journey-timeline-item{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr);gap:14px;align-items:flex-start;}
.tb-journey-timeline-item:last-child .tb-journey-timeline-rail{display:none;}
.tb-journey-timeline-rail{position:absolute;left:16px;top:36px;bottom:-18px;width:2px;background:#d7deea;}
.tb-journey-timeline-dot{position:relative;z-index:1;width:34px;height:34px;border-radius:999px;display:flex;align-items:center;justify-content:center;border:1px solid #d7deea;background:#f8fafc;font-size:16px;line-height:1;}
.tb-journey-timeline-card{min-width:0;border:1px solid #d7deea;border-radius:18px;padding:14px 16px;background:#f8fafc;box-shadow:0 10px 22px rgba(15,23,42,.04);}
.tb-journey-timeline-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;}
.tb-journey-timeline-status{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:800;border:1px solid transparent;text-transform:uppercase;letter-spacing:.03em;}
.tb-journey-timeline-status.is-completed{background:#dcfce7;color:#166534;border-color:#86efac;}
.tb-journey-timeline-status.is-in_progress{background:#e0f2fe;color:#075985;border-color:#7dd3fc;}
.tb-journey-timeline-status.is-pending{background:#f1f5f9;color:#475569;border-color:#cbd5e1;}
.tb-journey-timeline-status.is-attention{background:#fef3c7;color:#92400e;border-color:#fcd34d;}
.tb-journey-timeline-date{font-size:12px;font-weight:700;color:#64748b;}
.tb-journey-timeline-title{margin-top:8px;font-size:17px;font-weight:800;line-height:1.3;color:#0f172a;}
.tb-journey-timeline-desc{margin-top:6px;font-size:14px;line-height:1.55;color:#334155;}
.tb-journey-timeline-badges{margin-top:10px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.tb-journey-timeline-badge{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;border:1px solid #d7deea;background:#fff;color:#334155;font-size:12px;font-weight:700;line-height:1;}
.tb-journey-timeline-badge.is-info{background:#eef2ff;border-color:#c7d2fe;color:#29407a;}
.tb-journey-timeline-badge.is-active{background:#dbeafe;border-color:#93c5fd;color:#1d4ed8;}
.tb-journey-timeline-badge.is-completed{background:#dcfce7;border-color:#86efac;color:#166534;}
.tb-journey-timeline-badge.is-pending{background:#f8fafc;border-color:#cbd5e1;color:#475569;}
.tb-journey-timeline-badge.is-warning{background:#fef3c7;border-color:#fcd34d;color:#92400e;}
.tb-journey-timeline-meta{margin-top:10px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12px;color:#475569;}
.tb-journey-timeline-meta span{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:#eef2ff;color:#29407a;font-weight:700;}
.tb-journey-timeline-progress{margin-top:10px;height:8px;border-radius:999px;background:#e5e7eb;overflow:hidden;}
.tb-journey-timeline-progress span{display:block;height:8px;border-radius:999px;background:#253263;}
.tb-journey-timeline-action{margin-left:auto;}
.tb-journey-timeline-secondary{background:#fff;border-color:#cbd5e1;color:#334155;}
.tb-journey-timeline-card[role="button"]{cursor:pointer;transition:transform .18s ease, box-shadow .18s ease,border-color .18s ease;}
.tb-journey-timeline-card[role="button"]:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(15,23,42,.08);border-color:#bfd0ea;}
.tb-journey-timeline-card[role="button"]:focus-visible{outline:2px solid #253263;outline-offset:2px;}
.tb-journey-detail-modal{display:grid;gap:16px;}
.tb-journey-detail-kicker{font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#475569;}
.tb-journey-detail-title{font-size:28px;font-weight:800;line-height:1.15;color:#0f172a;}
.tb-journey-detail-meta{display:flex;flex-wrap:wrap;gap:8px;}
.tb-journey-detail-meta span{display:inline-flex;align-items:center;justify-content:center;padding:7px 11px;border-radius:999px;background:#eef2ff;border:1px solid #c7d2fe;color:#29407a;font-size:12px;font-weight:700;}
.tb-journey-detail-section{padding:15px 16px;border:1px solid #d7deea;border-radius:18px;background:#f8fafc;}
.tb-journey-detail-section-label{font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#29407a;}
.tb-journey-detail-section-text{margin-top:8px;font-size:15px;line-height:1.65;color:#334155;}
.tb-journey-detail-progress{margin-top:10px;height:10px;border-radius:999px;background:#e5e7eb;overflow:hidden;}
.tb-journey-detail-progress span{display:block;height:10px;border-radius:999px;background:#253263;}
.tb-journey-detail-progress-label{margin-top:8px;font-size:13px;font-weight:700;color:#475569;}
.tb-journey-summary-grid.is-jump-focus,.tb-client-workspace-section.is-jump-focus{box-shadow:0 0 0 3px rgba(37,50,99,.12);border-radius:18px;animation:tbJourneyJumpPulse 1.2s ease;}
@keyframes tbJourneyJumpPulse{0%{transform:translateY(0);box-shadow:0 0 0 0 rgba(37,50,99,.18);}50%{transform:translateY(-2px);box-shadow:0 0 0 6px rgba(37,50,99,.08);}100%{transform:translateY(0);box-shadow:0 0 0 0 rgba(37,50,99,0);}}
.tb-journey-detail-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;}
.tb-journey-timeline-item{overflow:visible;}
.tb-journey-timeline-rail,
.tb-journey-timeline-dot{pointer-events:none;}
.tb-journey-timeline-card{position:relative;z-index:2;pointer-events:auto;}
.tb-journey-timeline-meta,
.tb-journey-timeline-secondary,
.tb-journey-timeline-secondary-link,
.tb-journey-timeline-action{position:relative;z-index:3;pointer-events:auto;}
.tb-journey-timeline-secondary-link{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;}
.tb-journey-anchor-modal{position:fixed;inset:0;z-index:99999;display:none;padding:20px;box-sizing:border-box;overflow:auto;-webkit-overflow-scrolling:touch;}
.tb-journey-anchor-modal:target{display:block;}
.tb-journey-anchor-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.45);display:block;}
.tb-journey-anchor-card{position:relative;z-index:2;display:flex;flex-direction:column;width:min(100%,760px);max-width:760px;max-height:calc(100vh - 40px);overflow:hidden;margin:0 auto;padding:16px;border-radius:18px;background:#ffffff;box-shadow:0 18px 50px rgba(15,23,42,.28);}
.tb-journey-anchor-head{gap:12px;align-items:flex-start;}
.tb-journey-anchor-card .tb-journey-detail-modal{display:grid;gap:16px;overflow:auto;padding-right:4px;}
.tb-journey-anchor-close{display:inline-flex;align-items:center;justify-content:center;width:44px;min-width:44px;height:44px;padding:0;border:1px solid #cbd5e1;border-radius:12px;background:#fff;color:#0f172a;font-size:28px;line-height:1;font-weight:700;text-decoration:none;}
.tb-journey-anchor-close:hover,.tb-journey-anchor-close:focus-visible{border-color:#94a3b8;background:#f8fafc;outline:none;}
body.tb-modal-open .tb-journey-anchor-modal:target{display:none;}
@media (max-width: 768px){
  .tb-journey-anchor-modal{padding:10px;}
  .tb-journey-anchor-card{margin:0 auto;max-height:calc(100vh - 20px);padding:14px;border-radius:14px;overflow:hidden;}
}
.tb-journey-timeline-item.is-completed .tb-journey-timeline-dot{border-color:#86efac;background:#f0fdf4;}
.tb-journey-timeline-item.is-in_progress .tb-journey-timeline-dot{border-color:#7dd3fc;background:#f0f9ff;}
.tb-journey-timeline-item.is-pending .tb-journey-timeline-dot{border-color:#cbd5e1;background:#f8fafc;}
.tb-journey-timeline-item.is-attention .tb-journey-timeline-dot{border-color:#fcd34d;background:#fffbeb;}
.tb-journey-timeline-item.is-attention .tb-journey-timeline-card{border-color:#fcd34d;background:#fffaf0;}
.tb-journey-events-wrap{margin-top:16px;padding-top:14px;border-top:1px solid #e5e7eb;}
.tb-journey-events-title{font-size:14px;font-weight:800;color:#0f172a;}
.tb-journey-event-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px;}
.tb-journey-event-tag{display:inline-flex;align-items:flex-start;gap:10px;min-width:220px;max-width:100%;padding:10px 12px;border-radius:16px;border:1px solid #d7deea;background:#f8fafc;}
.tb-journey-event-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;background:#eef2ff;color:#29407a;font-size:14px;line-height:1;flex:0 0 28px;}
.tb-journey-event-copy{display:grid;gap:4px;min-width:0;}
.tb-journey-event-copy strong{font-size:13px;line-height:1.3;color:#0f172a;}
.tb-journey-event-copy span{font-size:12px;line-height:1.4;color:#64748b;}
.tb-journey-timeline-empty,.tb-journey-event-empty{padding:14px 16px;border:1px dashed #cbd5e1;border-radius:16px;background:#f8fafc;color:#64748b;margin-top:12px;}

@media (max-width: 767px){
  .tb-client-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}
  .tb-client-filter-search,
  .tb-client-filter-info{grid-column:1 / -1}
  .tb-client-filter-perpage .tb-input,
  .tb-client-filter-status .tb-input,
  .tb-client-filter-search .tb-input{width:100%}
  #tbClientsPagination{display:flex !important;flex-direction:column;align-items:flex-start !important;gap:8px !important}
  .tb-client-pagination-bar{width:100%;flex-wrap:nowrap;overflow:auto;padding-bottom:2px}
  .tb-client-pagination-bar .tb-btn,
  .tb-client-pagination-bar span.tb-btn{flex:0 0 auto}
  .tb-journey-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .tb-journey-summary-grid .tb-pre > div:last-child{font-size:18px !important;line-height:1.2 !important}
  .tb-journey-summary-grid .tb-journey-summary-card.is-full{grid-column:1 / -1;}
  .tb-journey-summary-grid .tb-journey-summary-helper{font-size:12px;line-height:1.45;}
  .tb-journey-audio-monitor-card{padding:14px;}
  .tb-journey-audio-monitor-main{font-size:20px;}
  .tb-gamification-bar{grid-template-columns:1fr;gap:6px;}
  .tb-gamification-bar-track{order:3;}
  .tb-gamification-bar-value{order:2;text-align:left;font-size:13px;}
  .tb-gamification-bar-label{font-size:12px;}
  .tb-gamification-bar-meta{font-size:10px;}
  .tb-bonus-top-card .tb-muted{font-size:12px;line-height:1.4;}
  .tb-journey-timeline-wrap{padding:14px;}
  .tb-journey-boardgame-shell{grid-template-columns:minmax(0,1fr);}
  .tb-journey-boardgame-path{grid-template-columns:repeat(3,minmax(0,1fr));}
  .tb-journey-boardgame-path::before{display:none;}
  .tb-journey-boardgame-step{min-height:122px;padding:11px;}
  .tb-journey-boardgame-guide-title{font-size:18px;}
  .tb-journey-timeline-filters{grid-template-columns:1fr;min-width:0;width:100%;}
  .tb-journey-window-summary{grid-template-columns:repeat(2,minmax(0,1fr));}
  .tb-journey-section-summary{padding:14px 0;align-items:flex-start;}
  .tb-journey-section-summary-side{justify-content:flex-start;}
  .tb-journey-section-panel{padding:0 0 14px;}
  .tb-journey-window-card{padding:11px 12px;}
  .tb-journey-window-value{font-size:19px;}
  .tb-journey-focus-card{grid-template-columns:minmax(0,1fr);padding:14px;}
  .tb-journey-focus-title{font-size:18px;}
  .tb-journey-focus-actions .tb-btn{width:100%;justify-content:center;}
  .tb-journey-timeline-stage-pill{font-size:10px;padding:6px 10px;}
  .tb-journey-timeline-item{grid-template-columns:28px minmax(0,1fr);gap:10px;}
  .tb-journey-timeline-dot{width:28px;height:28px;font-size:14px;}
  .tb-journey-timeline-rail{left:13px;top:30px;}
  .tb-journey-timeline-card{padding:12px 14px;}
  .tb-journey-timeline-title{font-size:15px;}
  .tb-journey-timeline-desc{font-size:13px;}
  .tb-journey-timeline-meta{font-size:11px;}
  .tb-journey-timeline-action{margin-left:0;width:100%;justify-content:center;}
  .tb-journey-timeline-secondary{width:100%;justify-content:center;}
  .tb-journey-board-grid{grid-template-columns:minmax(0,1fr);}
  .tb-journey-achievement-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .tb-journey-board-actions .tb-btn{width:100%;justify-content:center;}
  .tb-journey-detail-title{font-size:22px;}
  .tb-journey-event-tag{min-width:0;width:100%;}
}


/* Ajustes de nomenclatura e mobile cliente*/
.tb-client-pagination-bar--full{justify-content:flex-start}
@media (max-width: 767px){
  .tb-client-filters{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-areas:
      "status perpage"
      "search search"
      "info info";
    align-items:end;
    row-gap:10px;
  }
  .tb-client-filter-status{grid-area:status}
  .tb-client-filter-perpage{grid-area:perpage}
  .tb-client-filter-search{grid-area:search}
  .tb-client-filter-info{grid-area:info;margin-top:0 !important}
  .tb-client-pagination-bar{width:100%;display:flex;flex-wrap:nowrap;overflow:auto;gap:8px;padding-bottom:2px}
  .tb-client-pagination-bar--full{justify-content:flex-start}
  .tb-client-pagination-info{display:none !important}
  .tb-client-card-panel .tb-client-sessions-actions{order:3;justify-content:stretch !important;margin-top:14px}
  .tb-client-card-panel .tb-client-sessions-actions > *{width:100%}
  .tb-client-card-panel #tbClientSessionsActionsExtra{display:contents}
  .tb-client-card-panel #tbClientSessionsActionsExtra .tb-btn{width:100%}
  .tb-client-card-panel .tb-client-sessions-actions .tb-btn{width:100%;justify-content:center;text-align:center}
  .tb-client-card-panel #tbClientSessionsWrap{order:1}
  .tb-client-card-panel #tbClientSessionsHint{order:2}
  .tb-client-card-panel .tb-row.tb-row-between[style*="align-items:flex-end"]{display:flex;flex-direction:column;align-items:stretch !important}
  .tb-client-card-panel .tb-journey-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
}



/* Cliente/Jornada no mobile ocupando toda a largura*/
@media (max-width: 767px){
  .tb-wrap{
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    padding:12px !important;
    border-radius:0 !important;
    overflow-x:hidden !important;
  }

  .tb-content,
  #tbWorkspaceMain,
  #tbViewClients,
  #tbClientsCards,
  .tb-clients-cards-grid,
  .tb-client-card,
  .tb-client-card-panel{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow-x:hidden !important;
    box-sizing:border-box !important;
  }

  #tbViewClients > .tb-card,
  .tb-client-card,
  .tb-client-card-panel > .tb-card,
  .tb-client-card-grid .tb-pre,
  .tb-client-card-panel .tb-pre,
  .tb-client-card-panel .tb-session-card,
  .tb-client-card-panel .tb-session-card-meta-item,
  .tb-client-card-panel .tb-session-form-card{
    border-left:0 !important;
    border-right:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
  }

  #tbViewClients > .tb-card,
  .tb-client-card,
  .tb-client-card-panel > .tb-card{
    margin-left:-12px !important;
    margin-right:-12px !important;
    width:calc(100% + 24px) !important;
    padding-left:12px !important;
    padding-right:12px !important;
  }

  .tb-client-card-head,
  .tb-client-card-badges,
  .tb-client-card-actions{
    width:100% !important;
  }

  .tb-client-card-badges{
    justify-content:flex-start !important;
  }
}
@media (max-width: 767px){
  #tbViewClients .tb-client-filters{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;grid-template-areas:"status perpage" "search search" "info info";row-gap:10px;column-gap:10px;align-items:end !important}
  #tbViewClients .tb-client-filter-status{grid-area:status}
  #tbViewClients .tb-client-filter-perpage{grid-area:perpage}
  #tbViewClients .tb-client-filter-search{grid-area:search;min-width:0 !important;flex:auto !important}
  #tbViewClients .tb-client-filter-info{grid-area:info;margin-top:0 !important}
  #tbClientsPagination{display:block !important}
  #tbClientsPagination .tb-client-pagination-bar{display:flex !important;flex-wrap:nowrap !important;align-items:center !important;gap:8px !important;overflow:auto !important;width:100% !important}
  #tbClientsPagination .tb-client-pagination-info{display:none !important}
}


/* =========================================================
 Portal do Cliente — ajuste do topo no mobile
 - aviso acima de tudo
 - logo à esquerda
 - sino + sair lado a lado à direita
=========================================================*/
.tb-client-portal .tb-client-portal-topnote{
  display:block;
  margin:0 0 14px;
  font-size:15px;
  line-height:1.35;
  font-weight:800;
  color:#334155;
}

.tb-client-portal .tb-client-portal-topbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin:0 0 8px;
}

.tb-client-portal .tb-client-portal-topbar .tb-client-portal-header{
  flex:1 1 auto;
  width:auto;
}

.tb-client-portal .tb-client-portal-topbar .tb-client-portal-actions{
  width:auto;
}

.tb-client-portal .tb-client-portal-greeting{
  margin:8px 0 0;
  font-size:clamp(1.75rem,2.2vw,2rem);
  line-height:1.2;
  font-weight:800;
  color:#0f172a;
}

.tb-client-portal .tb-client-portal-header{
  align-items:center;
}

.tb-client-portal .tb-client-portal-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
}

.tb-client-portal .tb-client-portal-actions .tb-btn{
  width:auto !important;
}

.tb-client-portal .tb-client-portal-install-row{
  display:flex;
  justify-content:flex-start;
  margin:0;
}

.tb-client-portal .tb-client-portal-install-btn-desktop{
  display:inline-flex;
  align-items:center;
  gap:8px;
}

.tb-client-portal .tb-client-portal-install-btn-mobile{
  display:none !important;
}

@media (max-width: 768px){
  .tb-client-portal .tb-client-portal-topbar{
    display:block !important;
    margin:0 0 6px !important;
  }

  .tb-client-portal .tb-client-portal-greeting{
    margin:10px 0 0 !important;
    font-size:1.5rem !important;
  }

  .tb-client-portal .tb-client-portal-topnote{
    margin:0 0 12px !important;
    padding:10px 12px !important;
    border:1px solid #dbe5f1 !important;
    border-radius:12px !important;
    background:#f8fbff !important;
    font-size:14px !important;
    text-align:center !important;
  }

  .tb-client-portal .tb-client-portal-install-row{
    display:none !important;
  }

  .tb-client-portal .tb-client-portal-install-btn-mobile{
    display:inline-flex !important;
  }

  .tb-client-portal .tb-client-portal-header{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:12px !important;
    flex-wrap:nowrap !important;
  }

  .tb-client-portal .tb-client-portal-logo{
    flex:1 1 auto !important;
    min-width:0 !important;
  }

  .tb-client-portal .tb-client-portal-logo img[alt="Logo"]{
    height:54px !important;
    max-width:100% !important;
    width:auto !important;
  }

  .tb-client-portal .tb-client-portal-actions{
    flex:0 0 auto !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:10px !important;
  }

  .tb-client-portal .tb-client-portal-actions .tb-btn,
  .tb-client-portal .tb-client-portal-actions a.tb-btn{
    width:auto !important;
    min-width:auto !important;
    padding:10px 14px !important;
    justify-content:center !important;
    white-space:nowrap !important;
  }

  .tb-client-portal .tb-client-portal-actions .tb-patient-bell,
  .tb-client-portal .tb-client-portal-actions .tb-patient-central-bell,
  .tb-client-portal .tb-client-portal-actions .tb-notification-bell{
    margin:0 !important;
  }
}


/* =========================================================
 Portal do Cliente — reforço final do topo no mobile logo fixada à esquerda
 - sino + sair juntos à direita
=========================================================*/
@media (max-width: 768px){
  .tb-client-portal .tb-client-portal-header{
    display:flex !important;
    width:100% !important;
    align-items:flex-start !important;
    justify-content:space-between !important;
    flex-wrap:nowrap !important;
  }

  .tb-client-portal .tb-client-portal-logo{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    text-align:left !important;
    flex:1 1 auto !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
  }

  .tb-client-portal .tb-client-portal-logo a,
  .tb-client-portal .tb-client-portal-logo picture,
  .tb-client-portal .tb-client-portal-logo span{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    margin:0 !important;
  }

  .tb-client-portal .tb-client-portal-logo img,
  .tb-client-portal .tb-client-portal-logo img[alt="Logo"]{
    display:block !important;
    margin:0 !important;
    margin-left:0 !important;
    margin-right:auto !important;
    height:54px !important;
    width:auto !important;
    max-width:100% !important;
  }

  .tb-client-portal .tb-client-portal-actions{
    display:flex !important;
    flex:0 0 auto !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:flex-end !important;
    text-align:right !important;
    gap:10px !important;
    margin:0 !important;
    padding:0 !important;
    white-space:nowrap !important;
  }

  .tb-client-portal .tb-client-portal-actions .tb-btn,
  .tb-client-portal .tb-client-portal-actions a.tb-btn{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:auto !important;
    min-width:auto !important;
    margin:0 !important;
  }
}

@media (max-width: 768px){
  .tb-client-portal .tb-client-portal-header{
    gap:8px !important;
  }

  .tb-client-portal .tb-client-portal-logo img,
  .tb-client-portal .tb-client-portal-logo img[alt="Logo"]{
    height:46px !important;
    max-width:min(100%, 190px) !important;
  }

  .tb-client-portal .tb-client-portal-actions{
    gap:6px !important;
  }

  .tb-client-portal .tb-client-portal-actions .tb-btn,
  .tb-client-portal .tb-client-portal-actions a.tb-btn,
  .tb-client-portal .tb-client-portal-logout{
    padding:7px 10px !important;
    border-radius:10px !important;
    font-size:13px !important;
    line-height:1 !important;
  }

  .tb-client-portal .tb-client-portal-actions .tb-btn .dashicons,
  .tb-client-portal .tb-client-portal-actions a.tb-btn .dashicons,
  .tb-client-portal .tb-client-portal-logout .dashicons{
    width:16px !important;
    height:16px !important;
    font-size:16px !important;
    margin-right:4px !important;
  }

  .tb-client-portal .tb-client-portal-actions .tb-patient-bell,
  .tb-client-portal .tb-client-portal-actions .tb-patient-central-bell,
  .tb-client-portal .tb-client-portal-actions .tb-notification-bell{
    transform:scale(.94);
    transform-origin:center right;
  }
}


/* =========================================================
 Portal do Cliente — topo sem logo
 - ações sempre alinhadas à direita
 - sino com respiro para manter formato redondo
=========================================================*/
.tb-client-portal .tb-client-portal-header{
  width:100%;
  justify-content:flex-end !important;
}

.tb-client-portal .tb-client-portal-actions{
  width:100%;
  margin-left:auto !important;
  justify-content:flex-end !important;
}

.tb-client-portal .tb-client-portal-actions .tb-central-bell{
  flex:0 0 auto;
  margin-left:6px;
  width:50px;
  height:50px;
  min-width:50px;
  min-height:50px;
  border-radius:999px;
}

@media (max-width: 768px){
  .tb-client-portal .tb-client-portal-header{
    display:flex !important;
    width:100% !important;
    justify-content:flex-end !important;
    align-items:center !important;
  }

  .tb-client-portal .tb-client-portal-actions{
    width:100% !important;
    margin-left:auto !important;
    justify-content:flex-end !important;
    gap:10px !important;
  }

  .tb-client-portal .tb-client-portal-actions .tb-central-bell{
    margin-left:8px !important;
    margin-right:2px !important;
    width:48px !important;
    height:48px !important;
    min-width:48px !important;
    min-height:48px !important;
    padding:0 !important;
    border-radius:999px !important;
    transform:none !important;
  }
}


.tb-tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#dc2626;color:#fff;font-size:11px;font-weight:800;box-shadow:0 6px 16px rgba(220,38,38,.25);}
.tb-client-portal .tb-client-tabs-modern .tb-tab{position:relative;}
.tb-inline-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#253263;color:#fff;font-size:11px;font-weight:800;vertical-align:middle;margin-left:6px;}
.tb-inline-badge-danger{background:#dc2626;}
.tb-inline-badge-success{background:#166534;}
.tb-client-session-trigger.has-notification{border-color:rgba(220,38,38,.28); box-shadow:0 10px 24px rgba(220,38,38,.10);}
.tb-inline-notice{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:rgba(245,158,11,.12);color:#92400e;font-weight:700;font-size:12px;}
.tb-btn.is-copied{background:#ecfdf5;border-color:#86efac;color:#166534;}
.tb-session-alt-wrap{display:grid;gap:8px;}
.tb-session-alt-row{display:grid;grid-template-columns:110px minmax(0,1fr);gap:8px;align-items:center;padding:10px 12px;border:1px solid #e2e8f0;border-radius:14px;background:#fff;}
.tb-session-alt-label{font-size:13px;font-weight:700;color:#334155;}
@media (max-width: 767px){
  .tb-session-alt-row{grid-template-columns:1fr;gap:8px;padding:10px;}
  .tb-tab-badge{min-width:20px;height:20px;font-size:10px;}
}


/* Jornada terapêutica mobile e separação visual*/
.tb-client-portal .tb-gamification-main-title,
.tb-client-portal .tb-gamification-section-title,
.tb-client-portal .tb-gamification-card-title,
.tb-client-portal .tb-gamification-goal-title{
  font-size:20px;
  line-height:1.25;
  font-weight:800;
}
.tb-client-portal .tb-gamification-main-title{font-size:24px;}
.tb-client-portal .tb-client-goals-shell{
  margin-top:18px;
  padding:18px;
  border:1px solid rgba(37,99,235,.18);
  border-radius:18px;
  background:linear-gradient(180deg, rgba(239,246,255,.92) 0%, rgba(255,255,255,.98) 100%);
  box-shadow:0 12px 28px rgba(37,99,235,.08);
}
.tb-client-portal .tb-gamification-section-subtitle{font-size:15px;line-height:1.55;}
.tb-client-portal .tb-gamification-action-grid{align-items:stretch;}
.tb-client-portal .tb-gamification-action-card{height:100%;}
.tb-client-portal .tb-gamification-action-card-audio{border-color:#bfdbfe;background:#eff6ff;}
.tb-client-portal .tb-gamification-action-card-smart{border-color:#c7d2fe;background:#eef2ff;}
.tb-client-portal .tb-goal-portal-card{border-width:1px;box-shadow:0 10px 22px rgba(15,23,42,.05);}
.tb-client-portal .tb-goal-progress-text,
.tb-client-portal .tb-goal-status-line,
.tb-client-portal .tb-goal-portal-card .tb-muted,
.tb-client-portal .tb-gamification-action-card .tb-muted,
.tb-client-portal .tb-gamification-top-grid .tb-pre,
.tb-client-portal .tb-gamification-two-grid .tb-pre{
  font-size:15px;
  line-height:1.55;
}
@media (max-width: 767px){
  .tb-client-portal .tb-gamification-main-title{font-size:26px;}
  .tb-client-portal .tb-gamification-section-title,
  .tb-client-portal .tb-gamification-card-title,
  .tb-client-portal .tb-gamification-goal-title{font-size:22px;}
  .tb-client-portal .tb-gamification-top-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .tb-client-portal .tb-gamification-two-grid{grid-template-columns:minmax(0,1fr) !important;}
  .tb-client-portal .tb-gamification-action-grid{grid-template-columns:minmax(0,1fr) !important;}
  .tb-client-portal .tb-gamification-badges-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .tb-client-portal .tb-client-goals-shell{padding:14px;}
}

/* =========================================================
 Portal do Cliente — Sessão Terapêutica mais clean/compacta
=========================================================*/
.tb-client-portal .tb-portal-session-card{
  padding:14px;
  border-radius:18px;
  background:linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(248,250,252,.98) 100%);
  box-shadow:0 10px 24px rgba(15,23,42,.05);
}
.tb-client-portal .tb-portal-session-header{
  margin-bottom:2px;
}
.tb-client-portal .tb-portal-session-kicker{
  font-size:12px;
  font-weight:700;
  letter-spacing:.02em;
  color:#64748b;
  text-transform:uppercase;
}
.tb-client-portal .tb-portal-session-title{
  margin-top:4px;
  font-size:clamp(20px,2.1vw,24px);
  line-height:1.2;
  font-weight:800;
  color:#0f172a;
}
.tb-client-portal .tb-portal-session-chips{
  align-items:center;
}
.tb-client-portal .tb-portal-session-chip{
  padding:8px 14px;
  border-radius:999px;
  background:#fff;
  border-color:#dbe3f0;
  box-shadow:0 4px 12px rgba(15,23,42,.04);
}
.tb-client-portal .tb-portal-session-meta{
  gap:10px;
}
.tb-client-portal .tb-portal-session-meta-item label,
.tb-client-portal .tb-portal-session-section > label{
  font-size:13px;
  font-weight:700;
  color:#475569;
  margin-bottom:6px;
}
.tb-client-portal .tb-portal-session-field-value{
  display:flex;
  align-items:center;
  min-height:48px;
  padding:10px 14px;
  border:1px solid #e2e8f0;
  border-radius:14px;
  background:#fff;
  color:#0f172a;
  line-height:1.35;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.6);
}
.tb-client-portal .tb-portal-session-field-link{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.tb-client-portal .tb-portal-session-field-link a{
  font-weight:700;
  text-decoration:none;
}
.tb-client-portal .tb-portal-session-box{
  border-radius:16px;
  padding:14px 16px;
  border:1px solid #e2e8f0;
  background:#fff;
  box-shadow:0 6px 16px rgba(15,23,42,.04);
}
.tb-client-portal .tb-portal-session-notes{
  font-size:15px;
  line-height:1.55;
}
.tb-client-portal .tb-portal-session-summary{
  background:linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
}
.tb-client-portal .tb-portal-session-summary-title{
  margin-bottom:8px;
  font-size:18px;
  line-height:1.3;
  color:#0f172a;
}
.tb-client-portal .tb-portal-session-summary-content{
  font-size:15px;
  line-height:1.65;
  color:#1e293b;
}
.tb-client-portal .tb-portal-session-summary-content p:last-child,
.tb-client-portal .tb-portal-session-notes p:last-child{
  margin-bottom:0;
}

@media (max-width: 768px){
  .tb-client-portal .tb-portal-session-card{
    padding:12px;
    border-radius:16px;
  }
  .tb-client-portal .tb-portal-session-title{
    font-size:22px;
  }
  .tb-client-portal .tb-portal-session-meta{
    grid-template-columns:minmax(0,1fr) !important;
    gap:8px;
  }
  .tb-client-portal .tb-portal-session-field-value{
    min-height:44px;
    padding:9px 12px;
    border-radius:12px;
  }
  .tb-client-portal .tb-portal-session-box{
    padding:12px 14px;
    border-radius:14px;
  }
  .tb-client-portal .tb-portal-session-summary-title{
    font-size:16px;
    margin-bottom:6px;
  }
  .tb-client-portal .tb-portal-session-summary-content,
  .tb-client-portal .tb-portal-session-notes{
    font-size:14px;
    line-height:1.55;
  }
}


/* =========================================================
 Portal do Cliente — Sessão Terapêutica compacta/moderna
=========================================================*/
.tb-client-portal .tb-portal-session-card-compact{
  padding:16px 16px 14px;
}
.tb-client-portal .tb-portal-session-meta-compact{
  gap:8px;
}
.tb-client-portal .tb-portal-session-meta-pill label{
  margin-bottom:4px;
  font-size:12px;
  color:#64748b;
}
.tb-client-portal .tb-portal-session-meta-pill .tb-portal-session-field-value{
  min-height:auto;
  padding:10px 12px;
  border-radius:12px;
  font-size:14px;
  line-height:1.35;
  box-shadow:none;
}
.tb-client-portal .tb-portal-session-inline-note{
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:10px 12px;
  border:1px solid #e2e8f0;
  border-radius:12px;
  background:#fff;
}
.tb-client-portal .tb-portal-session-inline-note-soft{
  background:#f8fafc;
}
.tb-client-portal .tb-portal-session-inline-note-label{
  flex:0 0 auto;
  font-size:12px;
  font-weight:800;
  letter-spacing:.02em;
  text-transform:uppercase;
  color:#64748b;
}
.tb-client-portal .tb-portal-session-inline-note-value{
  font-size:14px;
  line-height:1.5;
  color:#0f172a;
}
.tb-client-portal .tb-portal-session-section-compact{
  margin-bottom:0;
}
.tb-client-portal .tb-portal-session-summary-card{
  padding:14px 15px;
  border:1px solid #e2e8f0;
  border-radius:16px;
  background:linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
}
.tb-client-portal .tb-portal-session-summary-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  flex-wrap:wrap;
}
.tb-client-portal .tb-portal-session-summary-subtitle{
  font-size:12px;
  color:#64748b;
}
.tb-client-portal .tb-portal-session-summary-preview{
  margin-top:8px;
  font-size:14px;
  line-height:1.65;
  color:#334155;
}
.tb-client-portal .tb-portal-session-details{
  margin-top:10px;
  border-top:1px solid #e2e8f0;
  padding-top:10px;
}
.tb-client-portal .tb-portal-session-details summary{
  cursor:pointer;
  list-style:none;
  font-size:13px;
  font-weight:700;
  color:#2563eb;
}
.tb-client-portal .tb-portal-session-details summary::-webkit-details-marker{
  display:none;
}
.tb-client-portal .tb-portal-session-details[open] summary{
  margin-bottom:4px;
}
@media (max-width: 1024px){
  .tb-client-portal .tb-portal-session-meta-compact{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}
@media (max-width: 768px){
  .tb-client-portal .tb-portal-session-card-compact{
    padding:13px 12px 12px;
  }
  .tb-client-portal .tb-portal-session-meta-compact{
    grid-template-columns:minmax(0,1fr) !important;
  }
  .tb-client-portal .tb-portal-session-summary-card{
    padding:12px 13px;
    border-radius:14px;
  }
  .tb-client-portal .tb-portal-session-inline-note{
    padding:9px 11px;
  }
}


/* =========================================================
 Portal do Cliente — Sessão Terapêutica ultra compacta
=========================================================*/
.tb-client-portal #tbPortalSession > .tb-card{
  padding:16px;
  border-radius:20px;
}
.tb-client-portal .tb-portal-session-card-compact{
  padding:14px;
  border-radius:20px;
}
.tb-client-portal .tb-portal-session-title{
  font-size:clamp(18px,1.8vw,22px);
}
.tb-client-portal .tb-portal-session-meta-compact{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}
.tb-client-portal .tb-portal-session-quick-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.tb-client-portal .tb-portal-session-action{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:38px;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid #dbe3f0;
  background:#fff;
  font-size:13px;
  font-weight:700;
  color:#0f172a;
  text-decoration:none;
}
.tb-client-portal button.tb-portal-session-action{cursor:pointer;}
.tb-client-portal .tb-portal-session-action-static{
  background:#f8fafc;
}
.tb-client-portal .tb-portal-session-summary-card-mini{
  padding:12px 14px;
  border-radius:14px;
}
.tb-client-portal .tb-portal-session-summary-card-mini .tb-portal-session-summary-title{
  margin-bottom:0;
  font-size:16px;
}
.tb-client-portal .tb-portal-session-summary-line{
  display:grid;
  grid-template-columns:104px minmax(0,1fr);
  gap:10px;
  margin-top:8px;
  align-items:start;
}
.tb-client-portal .tb-portal-session-summary-line-label{
  font-size:12px;
  font-weight:800;
  letter-spacing:.02em;
  text-transform:uppercase;
  color:#64748b;
}
.tb-client-portal .tb-portal-session-summary-line-value{
  font-size:14px;
  line-height:1.5;
  color:#334155;
}
.tb-client-portal .tb-portal-session-detail-block + .tb-portal-session-detail-block{
  margin-top:10px;
  padding-top:10px;
  border-top:1px solid #e2e8f0;
}
.tb-client-portal .tb-portal-session-detail-block b{
  display:block;
  margin-bottom:6px;
}
.tb-client-portal .tb-portal-session-detail-block p:last-child{
  margin-bottom:0;
}
@media (max-width: 768px){
  .tb-client-portal #tbPortalSession > .tb-card{
    padding:12px;
    border-radius:16px;
  }
  .tb-client-portal .tb-portal-session-card-compact{
    padding:12px;
    border-radius:16px;
  }
  .tb-client-portal .tb-portal-session-summary-line{
    grid-template-columns:minmax(0,1fr);
    gap:4px;
  }
  .tb-client-portal .tb-portal-session-action{
    width:100%;
    justify-content:center;
  }
}


/* =========================================================
 Portal do Cliente — ajustes compactos topo + tags coloridas
=========================================================*/
.tb-client-portal .tb-portal-session-meta-inline .tb-portal-session-field-value{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:44px;
  padding:10px 14px;
}
.tb-client-portal .tb-portal-session-meta-inline .tb-portal-session-inline-meta-label{
  font-size:12px;
  font-weight:800;
  letter-spacing:.02em;
  text-transform:uppercase;
  color:#64748b;
}
.tb-client-portal .tb-portal-session-meta-inline .tb-portal-session-inline-meta-value{
  font-size:14px;
  font-weight:700;
  color:#0f172a;
  text-align:right;
}
.tb-client-portal .tb-portal-session-meta-inline .tb-portal-session-meta-pill label{
  display:none;
}
.tb-client-portal .tb-portal-session-chip-status.is-confirmed,
.tb-client-portal .tb-portal-session-chip-status.is-attended{
  color:#166534;
  background:#ecfdf5;
  border-color:#86efac;
}
.tb-client-portal .tb-portal-session-chip-status.is-pending,
.tb-client-portal .tb-portal-session-chip-status.is-waiting{
  color:#92400e;
  background:#fffbeb;
  border-color:#fcd34d;
}
.tb-client-portal .tb-portal-session-chip-status.is-completed{
  color:#1d4ed8;
  background:#eff6ff;
  border-color:#93c5fd;
}
.tb-client-portal .tb-portal-session-chip-status.is-alternate,
.tb-client-portal .tb-portal-session-chip-status.is-cancelled-ok{
  color:#7c3aed;
  background:#f5f3ff;
  border-color:#c4b5fd;
}
.tb-client-portal .tb-portal-session-chip-status.is-declined,
.tb-client-portal .tb-portal-session-chip-status.is-no-show,
.tb-client-portal .tb-portal-session-chip-status.is-cancelled-late{
  color:#b91c1c;
  background:#fef2f2;
  border-color:#fca5a5;
}
@media (max-width: 768px){
  .tb-client-portal .tb-portal-session-meta-inline .tb-portal-session-field-value{
    min-height:42px;
    padding:9px 12px;
  }
  .tb-client-portal .tb-portal-session-meta-inline .tb-portal-session-inline-meta-value{
    font-size:13px;
  }
}


.tb-client-card-panel .tb-session-card--compact{gap:12px}
.tb-client-card-panel .tb-session-card-summary-lines{display:flex;flex-direction:column;gap:6px;margin-top:-2px}
.tb-client-card-panel .tb-session-card-summary-line{font-size:15px;line-height:1.45;color:#475569}
.tb-client-card-panel .tb-session-card-summary-line b{color:#0f172a}
.tb-client-card-panel .tb-session-card-details{border-top:1px solid #e2e8f0;padding-top:10px}
.tb-client-card-panel .tb-session-card-details summary{list-style:none;cursor:pointer;font-weight:800;color:#2563eb;display:inline-flex;align-items:center;gap:8px}
.tb-client-card-panel .tb-session-card-details summary::-webkit-details-marker{display:none}
.tb-client-card-panel .tb-session-card-details summary::after{content:'+';display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:999px;background:#eff6ff;color:#2563eb;font-size:14px;line-height:1}
.tb-client-card-panel .tb-session-card-details[open] summary::after{content:'−'}
.tb-client-card-panel .tb-session-card-details-body{padding-top:12px}
.tb-client-card-panel .tb-session-card-details .tb-session-card-meta{margin-bottom:2px}
@media (max-width: 767px){
  .tb-client-card-panel .tb-session-card-summary-line{font-size:14px}
  .tb-client-card-panel .tb-session-card-details{padding-top:8px}
}


/* refinamentos visuais terapeuta*/
.tb-btn-success{background:#22c55e;color:#fff;border-color:#22c55e;}
.tb-btn-success:hover{filter:brightness(.96);}
.tb-client-card-actions-toggle{background:#dcfce7;border-color:#86efac;color:#166534;font-weight:700;}
.tb-client-card-actions-toggle:hover{background:#bbf7d0;border-color:#4ade80;color:#14532d;}
.tb-whatsapp-template-editor{min-height:170px !important;height:170px !important;}
.tb-codebox{border:1px solid #cbd5e1;border-radius:18px;overflow:hidden;background:#0f172a;box-shadow:0 10px 30px rgba(2,6,23,.10);}
.tb-codebox-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;background:linear-gradient(180deg,#111827 0%,#0f172a 100%);border-bottom:1px solid rgba(148,163,184,.22);}
.tb-codebox-badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;border-radius:999px;background:#16a34a;color:#ecfdf5;font-size:11px;font-weight:800;letter-spacing:.08em;}
.tb-codebox-meta{font-size:12px;color:#cbd5e1;}
.tb-codearea,
.tb-codearea.tb-textarea{display:block;width:100%;border:0 !important;border-radius:0 !important;background:#0b1120 !important;color:#e2e8f0 !important;padding:16px 18px !important;font:600 14px/1.65 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace !important;letter-spacing:0 !important;white-space:pre !important;tab-size:2;box-shadow:none !important;resize:vertical;}
.tb-codearea:focus,
.tb-codearea.tb-textarea:focus{outline:none;box-shadow:inset 0 0 0 2px rgba(34,197,94,.45) !important;background:#0b1120 !important;color:#f8fafc !important;}
.tb-codearea::placeholder{color:#94a3b8;opacity:1;}
@media (max-width: 767px){
  .tb-codebox-toolbar{align-items:flex-start;flex-direction:column;}
}
.tb-clients-cards-grid .tb-client-card:nth-child(odd){background:linear-gradient(180deg,#f8fbff 0%,#edf4ff 100%);border-color:#d7e3f3;}
.tb-clients-cards-grid .tb-client-card:nth-child(even){background:linear-gradient(180deg,#eef4fb 0%,#e1ebf7 100%);border-color:#d0dceb;}
.tb-clients-cards-grid .tb-client-card:nth-child(even) .tb-pre{background:rgba(255,255,255,.70);}
body.tb-theme-dark .tb-clients-cards-grid .tb-client-card:nth-child(odd),
.tb-wrap.tb-theme-dark .tb-clients-cards-grid .tb-client-card:nth-child(odd){background:linear-gradient(180deg,rgba(15,23,42,.92) 0%,rgba(10,18,34,.98) 100%);border-color:rgba(148,163,184,.18);}
body.tb-theme-dark .tb-clients-cards-grid .tb-client-card:nth-child(even),
.tb-wrap.tb-theme-dark .tb-clients-cards-grid .tb-client-card:nth-child(even){background:linear-gradient(180deg,rgba(20,31,54,.96) 0%,rgba(11,19,35,.98) 100%);border-color:rgba(148,163,184,.22);}
.tb-clients-cards-grid .tb-client-card:nth-child(odd) .tb-pre{background:rgba(248,250,252,.9);}



/* Dark theme fixes cards da lista de clientes*/
.tb-wrap.tb-theme-dark .tb-clients-cards-grid .tb-client-card{
  background:linear-gradient(180deg,rgba(15,23,42,.72) 0%,rgba(8,15,35,.92) 100%);
  border-color:rgba(148,163,184,.22);
  box-shadow:0 14px 34px rgba(0,0,0,.24);
}
.tb-wrap.tb-theme-dark .tb-clients-cards-grid .tb-client-card:nth-child(odd),
.tb-wrap.tb-theme-dark .tb-clients-cards-grid .tb-client-card:nth-child(even){
  background:linear-gradient(180deg,rgba(15,23,42,.72) 0%,rgba(8,15,35,.92) 100%);
}
.tb-wrap.tb-theme-dark .tb-clients-cards-grid .tb-client-card:nth-child(odd) .tb-pre,
.tb-wrap.tb-theme-dark .tb-clients-cards-grid .tb-client-card:nth-child(even) .tb-pre{
  background:rgba(255,255,255,.05);
  border-color:rgba(148,163,184,.20);
  color:#e5e7eb;
}
.tb-wrap.tb-theme-dark .tb-client-card-code{color:#cbd5e1;opacity:.88;}
.tb-wrap.tb-theme-dark .tb-client-card-name{color:#ffffff;}
.tb-wrap.tb-theme-dark .tb-client-card-access{background:rgba(79,124,255,.16);color:#dbe7ff;}
.tb-wrap.tb-theme-dark .tb-client-card-grid .tb-pre b,
.tb-wrap.tb-theme-dark .tb-client-card-grid .tb-pre strong{color:#ffffff;}
.tb-wrap.tb-theme-dark .tb-client-card-grid .tb-pre .tb-muted,
.tb-wrap.tb-theme-dark .tb-client-card-grid .tb-pre div{color:inherit;}

/* =========================================================
 feedback visual nas abas do portal do cliente
 + correção de overflow na Sessão Terapêutica mobile
=========================================================*/
.tb-client-portal .tb-tabpane{
  scroll-margin-top:88px;
}
.tb-client-portal .tb-pane-activated{
  animation:tbPaneActivatedPulse 1.35s ease;
}
@keyframes tbPaneActivatedPulse{
  0%{box-shadow:0 0 0 0 rgba(34,197,94,.00);border-color:rgba(187,247,208,.00);}
  20%{box-shadow:0 0 0 4px rgba(34,197,94,.14);border-color:#86efac;}
  100%{box-shadow:0 10px 30px rgba(15,23,42,.04);border-color:inherit;}
}
.tb-client-portal .tb-portal-session-title,
.tb-client-portal .tb-portal-session-summary-line-value,
.tb-client-portal .tb-portal-session-inline-note-value,
.tb-client-portal .tb-portal-session-inline-meta-value,
.tb-client-portal .tb-portal-session-action,
.tb-client-portal .tb-portal-session-action-static{
  overflow-wrap:anywhere;
  word-break:break-word;
}
.tb-client-portal .tb-portal-session-meta-inline .tb-portal-session-meta-pill,
.tb-client-portal .tb-portal-session-meta-inline .tb-portal-session-field-value{
  min-width:0;
}
@media (max-width: 1024px){
  .tb-client-portal .tb-portal-session-meta-compact{
    grid-template-columns:minmax(0,1fr) !important;
  }
  .tb-client-portal .tb-portal-session-meta-inline .tb-portal-session-field-value{
    flex-direction:column;
    align-items:flex-start;
    justify-content:center;
    gap:4px;
    min-height:auto;
  }
  .tb-client-portal .tb-portal-session-meta-inline .tb-portal-session-inline-meta-value{
    width:100%;
    text-align:left;
    font-size:15px;
    line-height:1.35;
  }
}
@media (max-width: 768px){
  .tb-client-portal #tbPortalSession > .tb-card,
  .tb-client-portal .tb-portal-session-card-compact{
    padding-left:12px;
    padding-right:12px;
  }
  .tb-client-portal .tb-portal-session-title{
    font-size:clamp(16px,5vw,20px);
    line-height:1.2;
  }
  .tb-client-portal .tb-portal-session-chips{
    justify-content:flex-start !important;
  }
  .tb-client-portal .tb-portal-session-action,
  .tb-client-portal .tb-portal-session-action-static{
    width:100%;
    justify-content:center;
    text-align:center;
  }
}


.tb-client-portal .tb-tabs .tb-tab{cursor:pointer;}
.tb-client-portal .tb-tabs .tb-tab:active{transform:translateY(1px);}
.tb-client-portal .tb-portal-session-meta-inline{align-items:stretch;}
.tb-client-portal .tb-portal-session-meta-inline .tb-portal-session-inline-meta-label{display:block;}
.tb-client-portal .tb-portal-session-summary-card-mini,
.tb-client-portal .tb-portal-session-summary-line,
.tb-client-portal .tb-portal-session-detail-block{min-width:0;}
@media (max-width: 768px){
  .tb-client-portal .tb-portal-session-meta-inline{grid-template-columns:minmax(0,1fr) !important;}
  .tb-client-portal .tb-portal-session-meta-inline .tb-portal-session-meta-pill{width:100%;}
  .tb-client-portal .tb-portal-session-meta-inline .tb-portal-session-field-value{padding:10px 12px;overflow:hidden;}
  .tb-client-portal .tb-portal-session-inline-meta-label,
  .tb-client-portal .tb-portal-session-inline-meta-value{max-width:100%;}
  .tb-client-portal .tb-portal-session-summary-head{gap:8px;align-items:flex-start;flex-wrap:wrap;}
  .tb-client-portal .tb-portal-session-summary-subtitle{width:100%;text-align:left;}
}


/* =========================================================
 ajuste do botão Voltar no preview do cliente
 + correção de retorno ao portal do terapeuta
=========================================================*/
.tb-therapist-portal-view-anchor{
  display:block;
  width:100%;
  height:1px;
  scroll-margin-top:86px;
}
.tb-wrap .tb-pane-activated{
  animation:tbPaneActivatedPulse 1.35s ease;
}
.tb-client-portal .tb-client-portal-back-therapist{
  white-space:normal;
}
@media (max-width: 782px){
  .tb-therapist-portal-actions{
    width:100%;
    justify-content:flex-start;
  }
  .tb-therapist-top-tabs .tb-btn{
    width:100%;
    justify-content:flex-start;
  }
  .tb-client-portal .tb-client-portal-actions{
    width:100%;
    justify-content:flex-start;
    flex-wrap:wrap;
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:10px !important;
  }
  .tb-client-portal .tb-client-portal-actions .tb-btn,
  .tb-client-portal .tb-client-portal-actions a.tb-btn,
  .tb-client-portal .tb-client-portal-actions .tb-client-portal-logout{
    width:100% !important;
    min-width:0 !important;
    justify-content:center !important;
    text-align:center !important;
    white-space:nowrap !important;
  }
  .tb-client-portal .tb-client-portal-actions .tb-central-bell,
  .tb-client-portal .tb-client-portal-actions .tb-patient-bell,
  .tb-client-portal .tb-client-portal-actions .tb-patient-central-bell,
  .tb-client-portal .tb-client-portal-actions .tb-notification-bell{
    justify-self:end;
    align-self:center;
    margin-left:auto !important;
  }
}


/* =========================================================
 preview do terapeuta em 4 colunas + PWA sem reload forçado
=========================================================*/
.tb-client-portal .tb-client-portal-actions-preview .tb-client-portal-back-icon .tb-client-portal-btn-label{
  display:block;
}

@media (max-width: 782px){
  .tb-client-portal .tb-client-portal-actions.tb-client-portal-actions-preview{
    display:grid !important;
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
    gap:10px !important;
    width:100% !important;
    justify-content:stretch !important;
    align-items:stretch !important;
  }

  .tb-client-portal .tb-client-portal-actions.tb-client-portal-actions-preview .tb-btn,
  .tb-client-portal .tb-client-portal-actions.tb-client-portal-actions-preview a.tb-btn,
  .tb-client-portal .tb-client-portal-actions.tb-client-portal-actions-preview .tb-central-bell{
    width:100% !important;
    min-width:0 !important;
    min-height:58px !important;
    padding:10px 8px !important;
    justify-content:center !important;
    text-align:center !important;
    margin:0 !important;
    border-radius:14px !important;
  }

  .tb-client-portal .tb-client-portal-actions.tb-client-portal-actions-preview .tb-btn,
  .tb-client-portal .tb-client-portal-actions.tb-client-portal-actions-preview a.tb-btn{
    display:flex !important;
    flex-direction:column !important;
    gap:4px !important;
    white-space:normal !important;
    line-height:1.05 !important;
  }

  .tb-client-portal .tb-client-portal-actions.tb-client-portal-actions-preview .tb-btn .dashicons,
  .tb-client-portal .tb-client-portal-actions.tb-client-portal-actions-preview a.tb-btn .dashicons{
    margin:0 !important;
    width:18px !important;
    height:18px !important;
    font-size:18px !important;
  }

  .tb-client-portal .tb-client-portal-actions.tb-client-portal-actions-preview .tb-client-portal-btn-label{
    display:block;
    font-size:11px;
    line-height:1.1;
    font-weight:700;
  }

  .tb-client-portal .tb-client-portal-actions.tb-client-portal-actions-preview .tb-client-portal-back-icon .tb-client-portal-btn-label{
    display:block;
  }

  .tb-client-portal .tb-client-portal-actions.tb-client-portal-actions-preview .tb-central-bell{
    justify-self:stretch !important;
    align-self:stretch !important;
    width:100% !important;
    height:auto !important;
    min-height:58px !important;
    border-radius:14px !important;
  }

  .tb-client-portal .tb-client-portal-actions.tb-client-portal-actions-preview .tb-central-bell .dashicons{
    width:20px !important;
    height:20px !important;
    font-size:20px !important;
  }
}


/* ============================================================
 Mostrar/ocultar senha
 ============================================================*/
.tb-password-wrap{
  position:relative;
  display:block;
  width:100%;
}

.tb-password-wrap > .tb-input{
  width:100%;
  padding-right:48px !important;
}

.tb-password-toggle{
  position:absolute;
  right:12px;
  top:50%;
  transform:translateY(-50%);
  width:28px;
  height:28px;
  border:0;
  background:transparent;
  color:#64748b;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  padding:0;
  margin:0;
  z-index:2;
}

.tb-password-toggle:hover,
.tb-password-toggle:focus{
  color:#1e3a8a;
  outline:none;
}

.tb-password-toggle-icon{
  display:block;
  font-size:18px;
  line-height:1;
}

.tb-password-toggle-icon-hide{
  display:none;
}

.tb-password-wrap.is-visible .tb-password-toggle-icon-show{
  display:none;
}

.tb-password-wrap.is-visible .tb-password-toggle-icon-hide{
  display:block;
}


/* Mobile-only refinements*/
@media (max-width: 767px){
  .tb-topbar .tb-top-subtitle{display:none !important;}
  .tb-topbar{margin-bottom:10px;}
  .tb-topbar > div:first-child{min-width:0;}
  .tb-topbar .tb-top-title{font-size:18px;line-height:1.2;}
  .tb-topbar .tb-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;align-items:end;width:100%;}
  .tb-topbar .tb-theme-quick{grid-column:span 3;min-width:0;}
  .tb-topbar .tb-theme-quick .tb-muted{font-size:11px !important;margin-bottom:2px !important;}
  .tb-topbar .tb-theme-quick .tb-select{min-width:0 !important;width:100%;height:40px;padding:8px 10px;font-size:13px;}
  .tb-topbar #tbTopLogout{grid-column:span 1;justify-content:center;min-height:40px;padding:8px 10px;font-size:13px;white-space:nowrap;}
  .tb-topbar #tbTopLogout .dashicons{margin-right:0;}
  .tb-topbar #tbTopLogout{font-size:0;}
  .tb-topbar #tbTopLogout .dashicons:after{content:'';}
  .tb-topbar #tbTopLogout::after{content:'Sair';font-size:13px;margin-left:4px;vertical-align:middle;}

  .tb-finance-head{display:block;}
  .tb-finance-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:end;width:100%;}
  .tb-finance-filters > div{min-width:0;}
  .tb-finance-filters #tbFinApply{grid-column:1 / -1;width:100%;}
  .tb-finance-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
  .tb-finance-stat-card{min-width:0 !important;width:100%;}

  .tb-tutorial-badges{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:100%;}
  .tb-tutorial-badges .tb-central-chip{width:100%;text-align:center;justify-content:center;}

  .tb-profile-mobile-head{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:center;}
  .tb-profile-mobile-head > div{min-width:0;}
  .tb-profile-mobile-close{width:100%;justify-content:center;min-height:40px;}
}


/* Mobile/PWA refinements*/
.tb-sidebar-mobile-tools{display:none}
@media (max-width: 980px){
  .tb-topbar .tb-actions{display:none !important}
  .tb-sidebar-mobile-tools{display:grid;grid-template-columns:1fr;gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid var(--tb-color-border)}
  .tb-sidebar-mobile-theme .tb-select{width:100%;min-width:0}
  .tb-sidebar-mobile-logout{width:100%;justify-content:center}
}
@media (max-width: 980px){
  .tb-topbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;}
  .tb-topbar .tb-actions{display:flex !important;align-items:center;justify-content:flex-end;width:auto;flex:0 0 auto;}
  .tb-topbar .tb-theme-quick,
  .tb-topbar #tbTopLogout{display:none !important;}
  .tb-topbar #tbTherapistGoalBell{display:inline-flex !important;}
}
@media (max-width: 980px) and (orientation: landscape){
  .tb-wrap{padding:10px;border-radius:12px}
  .tb-mobilebar{padding:8px 10px;gap:10px}
  .tb-mobilebar-sub{display:none}
  .tb-mobilebar-title{font-size:14px;line-height:1.2}
  .tb-sidebar{width:min(62vw,340px)}
  #tbWorkspaceMain{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  #tbWorkspaceMain > .tb-tabpane{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .tb-card{min-width:0}
}
@media (max-width: 767px) and (orientation: landscape){
  .tb-wrap{padding:8px}
  .tb-mobilebar{margin-bottom:8px}
}


/* Dark theme fixes edição do cliente / jornada / sessões*/
.tb-wrap.tb-theme-dark .tb-client-card-panel > .tb-card,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-card,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-session-form-card{
  background:linear-gradient(180deg,rgba(15,23,42,.78) 0%,rgba(8,15,35,.96) 100%) !important;
  border-color:rgba(148,163,184,.22) !important;
  color:#e5e7eb !important;
  box-shadow:0 14px 34px rgba(0,0,0,.24);
}
.tb-wrap.tb-theme-dark .tb-client-card-panel b,
.tb-wrap.tb-theme-dark .tb-client-card-panel strong,
.tb-wrap.tb-theme-dark .tb-client-card-panel label,
.tb-wrap.tb-theme-dark .tb-client-card-panel [style*="font-weight:700"],
.tb-wrap.tb-theme-dark .tb-client-card-panel [style*="font-weight:800"]{
  color:#f8fafc;
}
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-muted,
.tb-wrap.tb-theme-dark .tb-client-card-panel p,
.tb-wrap.tb-theme-dark .tb-client-card-panel div,
.tb-wrap.tb-theme-dark .tb-client-card-panel span{
  color:inherit;
}
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-pre,
.tb-wrap.tb-theme-dark .tb-client-card-panel [style*="background:#f8fafc"],
.tb-wrap.tb-theme-dark .tb-client-card-panel [style*="background: #f8fafc"],
.tb-wrap.tb-theme-dark .tb-client-card-panel [style*="background:#fff"],
.tb-wrap.tb-theme-dark .tb-client-card-panel [style*="background: #fff"]{
  background:rgba(255,255,255,.05) !important;
  border-color:rgba(148,163,184,.20) !important;
  color:#e5e7eb !important;
}
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-input,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-textarea,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-select,
.tb-wrap.tb-theme-dark .tb-client-card-panel select{
  background:rgba(255,255,255,.06) !important;
  border-color:rgba(148,163,184,.24) !important;
  color:#f8fafc !important;
}
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-input::placeholder,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-textarea::placeholder{
  color:#94a3b8 !important;
}
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-btn{
  background:rgba(255,255,255,.06);
  border-color:rgba(148,163,184,.22);
  color:#f8fafc;
}
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-btn:hover{
  background:rgba(255,255,255,.10);
  border-color:rgba(96,165,250,.38);
}
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-btn.tb-btn-primary,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-btn-success{
  color:#fff !important;
}
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-chip,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-codebox,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-highlight,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-inline-notice{
  border-color:rgba(148,163,184,.22);
}
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-table,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-table th,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-table td{
  border-color:rgba(148,163,184,.18) !important;
}
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-table th{
  background:rgba(255,255,255,.08) !important;
  color:#f8fafc !important;
}
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-table td{
  background:rgba(255,255,255,.03) !important;
  color:#e5e7eb !important;
}
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-summary-grid .tb-pre > div:first-child,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-session-card-kicker,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-session-card-meta-label{
  color:#cbd5e1 !important;
}
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-summary-grid .tb-pre > div:last-child,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-session-card-title,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-session-card-meta-item strong,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-session-card-summary-line b{
  color:#f8fafc !important;
}
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-session-card,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-session-card-meta-item{
  background:rgba(255,255,255,.05) !important;
  border-color:rgba(148,163,184,.20) !important;
}
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-session-card-summary-line{
  color:#cbd5e1 !important;
}
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-session-card-details,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-session-card-details-body,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-session-card-actions{
  border-top-color:rgba(148,163,184,.18) !important;
}
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-session-card-details summary{
  color:#60a5fa !important;
}
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-session-card-details summary::after{
  background:rgba(96,165,250,.16) !important;
  color:#93c5fd !important;
}
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-session-empty{
  background:rgba(255,255,255,.04) !important;
  border:1px dashed rgba(148,163,184,.26) !important;
  color:#cbd5e1 !important;
}


/* verde institucional + dark da central/admin*/
:root{
  --tb-accent-green:#61ce70;
  --tb-accent-green-dark:#3fb85a;
  --tb-accent-green-soft:#eafaf0;
  --tb-accent-green-soft-dark:rgba(97,206,112,.14);
}

.tb-client-card-actions-toggle{
  background:var(--tb-accent-green-soft) !important;
  border-color:rgba(97,206,112,.48) !important;
  color:#177a35 !important;
  font-weight:800;
  box-shadow:0 10px 24px rgba(97,206,112,.14);
}
.tb-client-card-actions-toggle:hover{
  background:#d7f6df !important;
  border-color:rgba(63,184,90,.62) !important;
  color:#0f6a2d !important;
}

.tb-client-card-panel .tb-session-card{
  border-color:rgba(97,206,112,.22);
  box-shadow:0 14px 32px rgba(15,23,42,.06);
}
.tb-client-card-panel .tb-session-card-status,
.tb-client-card-panel .tb-session-card .tb-chip,
.tb-client-card-panel .tb-session-card .tb-session-status,
.tb-client-card-panel .tb-session-card .tb-status-chip{
  background:var(--tb-accent-green-soft) !important;
  border-color:rgba(97,206,112,.46) !important;
  color:#177a35 !important;
}
.tb-client-card-panel .tb-session-card-details summary{
  color:var(--tb-accent-green-dark) !important;
  font-weight:800;
}
.tb-client-card-panel .tb-session-card-details summary::after{
  background:var(--tb-accent-green-soft) !important;
  color:#177a35 !important;
}
.tb-client-card-panel .tb-session-card-actions .tb-btn,
.tb-client-card-panel .tb-client-sessions-actions .tb-btn.tb-btn-primary,
.tb-client-card-panel #tbSessSave,
.tb-client-card-panel #tbSessNew{
  border-color:rgba(97,206,112,.48);
}
.tb-client-card-panel .tb-session-card-actions .tb-btn.tb-btn-primary,
.tb-client-card-panel .tb-client-sessions-actions .tb-btn.tb-btn-primary,
.tb-client-card-panel #tbSessSave,
.tb-client-card-panel #tbSessNew{
  background:var(--tb-accent-green) !important;
  border-color:var(--tb-accent-green) !important;
  color:#fff !important;
  box-shadow:0 12px 28px rgba(97,206,112,.22);
}
.tb-client-card-panel .tb-session-card-actions .tb-btn.tb-btn-primary:hover,
.tb-client-card-panel .tb-client-sessions-actions .tb-btn.tb-btn-primary:hover,
.tb-client-card-panel #tbSessSave:hover,
.tb-client-card-panel #tbSessNew:hover{
  background:var(--tb-accent-green-dark) !important;
  border-color:var(--tb-accent-green-dark) !important;
}

.tb-wrap.tb-theme-dark .tb-client-card-actions-toggle{
  background:var(--tb-accent-green-soft-dark) !important;
  border-color:rgba(97,206,112,.42) !important;
  color:#86efac !important;
  box-shadow:0 14px 30px rgba(0,0,0,.20);
}
.tb-wrap.tb-theme-dark .tb-client-card-actions-toggle:hover{
  background:rgba(97,206,112,.22) !important;
  border-color:rgba(97,206,112,.60) !important;
  color:#dcfce7 !important;
}
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-session-card,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-session-card-meta-item{
  background:linear-gradient(180deg,rgba(17,24,39,.82) 0%,rgba(7,14,30,.96) 100%) !important;
  border-color:rgba(97,206,112,.20) !important;
  box-shadow:0 16px 34px rgba(0,0,0,.22);
}
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-session-card-status,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-session-card .tb-chip,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-session-card .tb-session-status,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-session-card .tb-status-chip{
  background:rgba(97,206,112,.16) !important;
  border:1px solid rgba(97,206,112,.42) !important;
  color:#bbf7d0 !important;
}
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-session-card-details,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-session-card-details-body,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-session-card-actions{
  border-top-color:rgba(97,206,112,.18) !important;
}
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-session-card-details summary{
  color:#86efac !important;
}
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-session-card-details summary::after{
  background:rgba(97,206,112,.18) !important;
  color:#bbf7d0 !important;
}
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-session-card-actions .tb-btn.tb-btn-primary,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-client-sessions-actions .tb-btn.tb-btn-primary,
.tb-wrap.tb-theme-dark .tb-client-card-panel #tbSessSave,
.tb-wrap.tb-theme-dark .tb-client-card-panel #tbSessNew,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-btn-success{
  background:linear-gradient(180deg,#61ce70 0%,#3fb85a 100%) !important;
  border-color:#61ce70 !important;
  color:#fff !important;
}

.tb-wrap.tb-theme-dark .tb-central-admin-card,
.tb-wrap.tb-theme-dark .tb-central-post-modern,
.tb-wrap.tb-theme-dark .tb-central-patient-shell,
.tb-wrap.tb-theme-dark .tb-tutorial-shell,
.tb-wrap.tb-theme-dark .tb-tutorial-card,
.tb-wrap.tb-theme-dark .tb-central-empty{
  background:linear-gradient(180deg,rgba(15,23,42,.82) 0%,rgba(7,14,30,.98) 100%) !important;
  border-color:rgba(148,163,184,.18) !important;
  color:#e5e7eb !important;
  box-shadow:0 16px 36px rgba(0,0,0,.22);
}
.tb-wrap.tb-theme-dark .tb-central-admin-title,
.tb-wrap.tb-theme-dark .tb-central-post-title,
.tb-wrap.tb-theme-dark .tb-tutorial-head h4,
.tb-wrap.tb-theme-dark .tb-central-content-unified,
.tb-wrap.tb-theme-dark .tb-central-desc,
.tb-wrap.tb-theme-dark .tb-central-admin-desc,
.tb-wrap.tb-theme-dark .tb-tutorial-head p,
.tb-wrap.tb-theme-dark .tb-central-empty,
.tb-wrap.tb-theme-dark .tb-central-admin-date,
.tb-wrap.tb-theme-dark .tb-central-post-date,
.tb-wrap.tb-theme-dark .tb-central-post-date-unified{
  color:#cbd5e1 !important;
}
.tb-wrap.tb-theme-dark .tb-central-admin-title,
.tb-wrap.tb-theme-dark .tb-central-post-title,
.tb-wrap.tb-theme-dark .tb-tutorial-head h4{
  color:#f8fafc !important;
}
.tb-wrap.tb-theme-dark .tb-central-admin-stats span,
.tb-wrap.tb-theme-dark .tb-central-filter,
.tb-wrap.tb-theme-dark .tb-central-hero-badge,
.tb-wrap.tb-theme-dark .tb-central-chip,
.tb-wrap.tb-theme-dark .tb-central-chip-read,
.tb-wrap.tb-theme-dark .tb-central-type,
.tb-wrap.tb-theme-dark .tb-central-minilabel,
.tb-wrap.tb-theme-dark .tb-tutorial-badges .tb-central-chip{
  background:rgba(97,206,112,.12) !important;
  border:1px solid rgba(97,206,112,.28) !important;
  color:#bbf7d0 !important;
}
.tb-wrap.tb-theme-dark .tb-central-filter:hover,
.tb-wrap.tb-theme-dark .tb-central-filter.is-active{
  background:linear-gradient(180deg,#61ce70 0%,#3fb85a 100%) !important;
  border-color:#61ce70 !important;
  color:#fff !important;
  box-shadow:0 16px 34px rgba(97,206,112,.18);
}
.tb-wrap.tb-theme-dark .tb-central-admin-media,
.tb-wrap.tb-theme-dark .tb-central-admin-media-placeholder,
.tb-wrap.tb-theme-dark .tb-central-cover-placeholder,
.tb-wrap.tb-theme-dark .tb-tutorial-body{
  background:rgba(255,255,255,.04) !important;
  border-color:rgba(148,163,184,.18) !important;
  color:#e5e7eb !important;
}
.tb-wrap.tb-theme-dark .tb-central-admin-actions .tb-btn.tb-btn-primary,
.tb-wrap.tb-theme-dark .tb-central-admin-actions .tb-btn-success,
.tb-wrap.tb-theme-dark .tb-central-video-inline .tb-central-video-launch-inline{
  background:linear-gradient(180deg,#61ce70 0%,#3fb85a 100%) !important;
  border-color:#61ce70 !important;
  color:#fff !important;
}
.tb-wrap.tb-theme-dark .tb-central-post-modern[data-central-category="avisos"] .tb-central-chip,
.tb-wrap.tb-theme-dark .tb-central-post-modern[data-central-category="noticias"] .tb-central-chip,
.tb-wrap.tb-theme-dark .tb-central-post-modern[data-central-category="videos"] .tb-central-chip,
.tb-wrap.tb-theme-dark .tb-central-post-modern[data-central-category="orientacoes"] .tb-central-chip,
.tb-wrap.tb-theme-dark .tb-central-post-modern[data-central-category="exercicios"] .tb-central-chip,
.tb-wrap.tb-theme-dark .tb-central-post-modern[data-central-category="conteudo-extra"] .tb-central-chip{
  background:rgba(97,206,112,.12) !important;
  color:#bbf7d0 !important;
}

/* cards responsivos para retornos emocionais do cliente*/
.tb-goal-feedback-list{display:grid;gap:12px;}
.tb-goal-feedback-card{
  border:1px solid #d7deea;
  border-radius:18px;
  padding:16px;
  background:#ffffff;
  box-shadow:0 10px 30px rgba(15,23,42,.05);
}
.tb-goal-feedback-card.is-completed{border-color:#61ce70;}
.tb-goal-feedback-card.is-late{border-color:#f59e0b;}
.tb-goal-feedback-status-badges{display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.tb-goal-feedback-badge{
  display:inline-flex;align-items:center;gap:6px;
  border-radius:999px;padding:8px 12px;font-size:12px;font-weight:700;
  background:#eef2ff;color:#3157d5;
}
.tb-goal-feedback-badge.is-completed{background:rgba(97,206,112,.14);color:#2f8f56;}
.tb-goal-feedback-badge.is-late{background:rgba(245,158,11,.15);color:#b56b00;}
.tb-goal-feedback-badge.is-pending{background:#eef2ff;color:#3157d5;}
.tb-goal-feedback-badge.is-points{background:#f8fafc;color:#1f2937;}
.tb-goal-feedback-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px;}
.tb-goal-feedback-meta-item{
  border:1px solid #e5e7eb;border-radius:14px;padding:12px;background:#f8fafc;
  display:flex;flex-direction:column;gap:6px;
}
.tb-goal-feedback-meta-item strong{font-size:16px;line-height:1.3;color:#0f172a;}
.tb-goal-feedback-notes{
  margin-top:12px;padding:14px 16px;border-radius:14px;border:1px solid #e5e7eb;
  background:#f8fafc;line-height:1.7;color:#1f2937;white-space:pre-wrap;
}
.tb-goal-feedback-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px;}
.tb-theme-dark .tb-goal-feedback-card,
body.tb-theme-dark .tb-goal-feedback-card{
  background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.015));
  border-color:rgba(255,255,255,.14);
  box-shadow:none;
}
.tb-theme-dark .tb-goal-feedback-meta-item,
body.tb-theme-dark .tb-goal-feedback-meta-item,
.tb-theme-dark .tb-goal-feedback-notes,
body.tb-theme-dark .tb-goal-feedback-notes{
  background:rgba(255,255,255,.04);
  border-color:rgba(255,255,255,.1);
  color:#e5e7eb;
}
.tb-theme-dark .tb-goal-feedback-meta-item strong,
body.tb-theme-dark .tb-goal-feedback-meta-item strong{color:#ffffff;}
.tb-theme-dark .tb-goal-feedback-badge.is-points,
body.tb-theme-dark .tb-goal-feedback-badge.is-points{background:rgba(255,255,255,.08);color:#f3f4f6;}
@media (max-width: 900px){
  .tb-goal-feedback-meta-grid,
  .tb-goal-feedback-review-grid{grid-template-columns:1fr;}
}


/* título Áudio Personalizado*/

.tb-goal-create-wrap{position:relative;display:flex;flex-direction:column;align-items:flex-end;gap:6px;}
.tb-goal-create-wrap.is-disabled{opacity:1;}
.tb-goal-create-popover{position:absolute;top:calc(100% + 8px);right:0;min-width:220px;padding:8px;border:1px solid #d7deea;border-radius:16px;background:#ffffff;box-shadow:0 18px 40px rgba(15,23,42,.12);display:grid;gap:6px;z-index:40;}
.tb-goal-create-option{border:1px solid #d7deea;background:#f8fafc;color:#0f172a;border-radius:12px;padding:10px 12px;text-align:left;font-weight:600;cursor:pointer;transition:background .18s ease,border-color .18s ease,transform .18s ease;}
.tb-goal-create-option:hover{background:#eef2ff;border-color:#c7d2fe;transform:translateY(-1px);}
.tb-wrap.tb-theme-dark .tb-goal-create-popover,
body.tb-theme-dark .tb-goal-create-popover{background:#0f172a;border-color:rgba(148,163,184,.22);box-shadow:0 18px 40px rgba(2,6,23,.45);}
.tb-wrap.tb-theme-dark .tb-goal-create-option,
body.tb-theme-dark .tb-goal-create-option{background:rgba(15,23,42,.82);border-color:rgba(148,163,184,.22);color:#f8fafc;}
.tb-wrap.tb-theme-dark .tb-goal-create-option:hover,
body.tb-theme-dark .tb-goal-create-option:hover{background:rgba(49,87,213,.16);border-color:rgba(99,102,241,.45);}
@media (max-width: 782px){
  .tb-goal-create-wrap{width:100%;align-items:stretch;}
  .tb-goal-create-wrap > .tb-btn{width:100%;justify-content:center;}
  .tb-goal-create-popover{position:static;min-width:0;width:100%;margin-top:8px;}
}

.tb-goals-stack{display:grid;gap:14px;}
.tb-goal-card{
  background:#ffffff;
  border:1px solid #d7deea;
  border-radius:22px;
  padding:18px;
  box-shadow:0 14px 36px rgba(15,23,42,.06);
}
.tb-goal-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  margin-bottom:14px;
}
.tb-goal-card-kicker{
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#64748b;
  font-weight:700;
}
.tb-goal-card-title{
  font-size:28px;
  line-height:1.15;
  font-weight:800;
  color:#0f172a;
  margin-top:6px;
}
.tb-goal-card-subtitle{
  font-size:14px;
  color:#475569;
  margin-top:6px;
}
.tb-goal-card-toggle{cursor:pointer;}
.tb-goal-card-head-actions{display:flex;align-items:center;gap:10px;margin-left:auto;}
.tb-goal-card-footer-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:16px;padding-top:14px;border-top:1px solid #d7deea;}
.tb-goal-card-footer-left{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.tb-goal-card-footer-right{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex:1 1 420px;flex-wrap:wrap;}
.tb-goal-card-save-msg{min-height:20px;min-width:180px;text-align:right;}
.tb-goal-card-remove-btn{border-color:#fecaca;color:#b91c1c;background:#fff5f5;}
.tb-goal-card-remove-btn:hover{border-color:#fca5a5;color:#991b1b;background:#fee2e2;}
.tb-goal-card-toggle-pill{
  width:34px;
  height:34px;
  border-radius:10px;
  border:1px solid #cbd5e1;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:transparent;
  color:#64748b;
  font-size:24px;
  font-weight:700;
  flex:0 0 auto;
}
.tb-goal-card-toggle-pill::before{content:'−';}
.tb-goal-card.is-collapsed .tb-goal-card-toggle-pill::before{content:'+';}
.tb-goal-card-body{display:block;}
.tb-goal-card.is-collapsed .tb-goal-card-body{display:none;}
.tb-goal-builder-layout{
  display:grid;
  grid-template-columns:minmax(0,1.65fr) minmax(280px,.95fr);
  gap:16px;
  align-items:start;
}
.tb-goal-section-card{
  border:1px solid #d7deea;
  border-radius:20px;
  padding:16px;
  background:#f8fafc;
}
.tb-goal-section-title{
  font-size:20px;
  line-height:1.2;
  font-weight:800;
  color:#0f172a;
}
.tb-goal-section-desc{
  color:#475569;
  margin-top:6px;
  line-height:1.6;
}
.tb-goal-form-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:14px;
}
.tb-goal-field-title,
.tb-goal-field-description,
.tb-goal-weekdays-row{
  grid-column:1 / -1;
}
.tb-goal-chip-option{
  min-height:54px;
  justify-content:flex-start;
  padding:0 14px;
}
.tb-goal-summary-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-top:14px;
}
.tb-goal-summary-item{
  border:1px solid #d7deea;
  border-radius:16px;
  padding:12px 14px;
  background:#ffffff;
  display:flex;
  flex-direction:column;
  gap:6px;
}
.tb-goal-summary-item span{
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:#64748b;
  font-weight:700;
}
.tb-goal-summary-item strong{
  font-size:18px;
  line-height:1.3;
  color:#0f172a;
}
@media (max-width: 1100px){
  .tb-goal-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width: 767px){
  .tb-goal-summary-grid{grid-template-columns:1fr;}
}
.tb-goal-feedback-section-inline{margin-top:16px;}
.tb-goal-feedback-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px;}
.tb-goal-feedback-empty{border:1px dashed #cbd5e1;border-radius:16px;padding:14px;background:#f8fafc;color:#64748b;}
.tb-goal-feedback-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:10px;
  flex-wrap:wrap;
}
.tb-goal-feedback-kicker{
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#64748b;
  font-weight:700;
}
.tb-goal-feedback-title{
  font-size:20px;
  line-height:1.2;
  font-weight:800;
  color:#0f172a;
  margin-top:4px;
}
.tb-goal-feedback-card-summary{
  list-style:none;
  cursor:pointer;
}
.tb-goal-feedback-card-summary::-webkit-details-marker{display:none;}
.tb-goal-feedback-summary-side{
  display:flex;
  align-items:center;
  gap:10px;
  margin-left:auto;
}
.tb-goal-feedback-summary-meta{
  margin-top:8px;
  font-size:13px;
  color:#64748b;
  font-weight:600;
}
.tb-goal-feedback-toggle{
  width:34px;
  height:34px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:rgba(97,206,112,.14);
  color:#2f8f56;
  font-size:24px;
  font-weight:700;
  flex:0 0 auto;
}
.tb-goal-feedback-toggle::before{content:'+';}
.tb-goal-feedback-card[open] .tb-goal-feedback-toggle::before{content:'−';}
.tb-goal-feedback-card-body{margin-top:12px;}
.tb-goal-feedback-split-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:12px;
  margin-top:12px;
}
.tb-goal-feedback-panel{
  border:1px solid #e5e7eb;
  border-radius:16px;
  padding:14px;
  background:#ffffff;
}
.tb-goal-feedback-panel-title{
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#2f8f56;
  font-weight:800;
  margin-bottom:8px;
}
.tb-goal-feedback-details{
  border:1px solid #d7deea;
  border-radius:16px;
  background:#f8fafc;
  overflow:hidden;
}
.tb-goal-feedback-details summary{
  list-style:none;
  cursor:pointer;
  padding:14px 16px;
  font-weight:800;
  color:#166534;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.tb-goal-feedback-details summary::-webkit-details-marker{display:none;}
.tb-goal-feedback-details summary::after{
  content:'+';
  width:28px;
  height:28px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:rgba(97,206,112,.14);
  color:#2f8f56;
  font-size:20px;
  font-weight:700;
}
.tb-goal-feedback-details[open] summary::after{content:'−';}
.tb-goal-feedback-details .tb-goal-feedback-review-grid{padding:0 16px 16px; margin-top:0;}
.tb-goal-feedback-details .tb-goal-feedback-review-grid > div:first-child,
.tb-goal-feedback-details .tb-goal-feedback-review-grid > div:nth-child(2){margin-top:4px;}

.tb-wrap.tb-theme-dark .tb-goal-card,
.tb-wrap.tb-theme-dark .tb-goal-section-card,
.tb-wrap.tb-theme-dark .tb-goal-summary-item,
.tb-wrap.tb-theme-dark .tb-goal-feedback-panel,
.tb-wrap.tb-theme-dark .tb-goal-feedback-details,
body.tb-theme-dark .tb-goal-card,
body.tb-theme-dark .tb-goal-section-card,
body.tb-theme-dark .tb-goal-summary-item,
body.tb-theme-dark .tb-goal-feedback-panel,
body.tb-theme-dark .tb-goal-feedback-details{
  background:linear-gradient(180deg,rgba(15,23,42,.82) 0%,rgba(7,14,30,.98) 100%) !important;
  border-color:rgba(148,163,184,.18) !important;
  color:#e5e7eb !important;
  box-shadow:none;
}
.tb-wrap.tb-theme-dark .tb-goal-card-title,
.tb-wrap.tb-theme-dark .tb-goal-section-title,
.tb-wrap.tb-theme-dark .tb-goal-summary-item strong,
.tb-wrap.tb-theme-dark .tb-goal-feedback-title,
body.tb-theme-dark .tb-goal-card-title,
body.tb-theme-dark .tb-goal-section-title,
body.tb-theme-dark .tb-goal-summary-item strong,
body.tb-theme-dark .tb-goal-feedback-title{color:#f8fafc !important;}
.tb-wrap.tb-theme-dark .tb-goal-card-kicker,
.tb-wrap.tb-theme-dark .tb-goal-card-subtitle,
.tb-wrap.tb-theme-dark .tb-goal-section-desc,
.tb-wrap.tb-theme-dark .tb-goal-summary-item span,
.tb-wrap.tb-theme-dark .tb-goal-feedback-kicker,
body.tb-theme-dark .tb-goal-card-kicker,
body.tb-theme-dark .tb-goal-card-subtitle,
body.tb-theme-dark .tb-goal-section-desc,
body.tb-theme-dark .tb-goal-summary-item span,
body.tb-theme-dark .tb-goal-feedback-kicker{color:#cbd5e1 !important;}
.tb-wrap.tb-theme-dark .tb-goal-feedback-summary-meta,
body.tb-theme-dark .tb-goal-feedback-summary-meta{color:#cbd5e1 !important;}
.tb-wrap.tb-theme-dark .tb-goal-feedback-toggle,
body.tb-theme-dark .tb-goal-feedback-toggle{background:rgba(97,206,112,.18) !important;color:#bbf7d0 !important;}
.tb-wrap.tb-theme-dark .tb-goal-card-toggle-pill,
body.tb-theme-dark .tb-goal-card-toggle-pill{background:transparent !important;border-color:rgba(148,163,184,.35) !important;color:#cbd5e1 !important;}
.tb-wrap.tb-theme-dark .tb-goal-card-remove-btn,
body.tb-theme-dark .tb-goal-card-remove-btn{background:rgba(127,29,29,.18) !important;border-color:rgba(248,113,113,.28) !important;color:#fecaca !important;}
.tb-wrap.tb-theme-dark .tb-goal-card-save-msg,
body.tb-theme-dark .tb-goal-card-save-msg{color:#cbd5e1 !important;}
.tb-wrap.tb-theme-dark .tb-goal-card-footer-actions,
body.tb-theme-dark .tb-goal-card-footer-actions{border-top-color:rgba(148,163,184,.18) !important;}
.tb-wrap.tb-theme-dark .tb-goal-feedback-empty,
body.tb-theme-dark .tb-goal-feedback-empty{background:linear-gradient(180deg,rgba(15,23,42,.82) 0%,rgba(7,14,30,.98) 100%) !important;border-color:rgba(148,163,184,.18) !important;color:#cbd5e1 !important;}
.tb-wrap.tb-theme-dark .tb-goal-feedback-details summary,
body.tb-theme-dark .tb-goal-feedback-details summary{color:#86efac !important;}
.tb-wrap.tb-theme-dark .tb-goal-feedback-details summary::after,
body.tb-theme-dark .tb-goal-feedback-details summary::after{background:rgba(97,206,112,.18) !important;color:#bbf7d0 !important;}

@media (max-width: 1100px){
  .tb-goal-builder-layout{grid-template-columns:1fr;}
}
@media (max-width: 900px){
  .tb-goal-form-grid{grid-template-columns:1fr;}
  .tb-goal-card-title{font-size:24px;}
}
@media (max-width: 640px){
  .tb-goal-card{padding:14px; border-radius:18px;}
  .tb-goal-section-card{padding:14px; border-radius:16px;}
  .tb-goal-card-title{font-size:22px;}
  .tb-goal-feedback-title{font-size:18px;}
  .tb-goal-feedback-summary-side{width:100%; justify-content:space-between;}
  .tb-goal-feedback-status-badges{width:100%;}
  .tb-goal-feedback-badge{justify-content:center;}
  .tb-goal-card-head-actions{width:100%; justify-content:space-between;}
}

/* portal do cliente: retorno do terapeuta com badges e devolutiva destacada*/
.tb-client-portal .tb-portal-feedback-wrap{padding:18px;}
.tb-client-portal .tb-portal-feedback-main-title{font-size:22px;line-height:1.2;font-weight:800;color:#0f172a;}
.tb-client-portal .tb-portal-feedback-main-subtitle{margin-top:6px;}
.tb-client-portal .tb-portal-feedback-list{margin-top:12px;display:grid;gap:12px;}
.tb-client-portal .tb-portal-feedback-item{border:1px solid #dbe4f0;border-radius:20px;background:#ffffff;}
.tb-client-portal .tb-portal-feedback-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;}
.tb-client-portal .tb-portal-feedback-goal-title{font-weight:800;font-size:20px;line-height:1.2;color:#0f172a;}
.tb-client-portal .tb-portal-feedback-badge-new{margin-left:8px;background:#fff7ed;border-color:#fdba74;color:#9a3412;}
.tb-client-portal .tb-portal-feedback-meta-line{margin-top:6px;line-height:1.6;}
.tb-client-portal .tb-portal-feedback-badges{display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.tb-client-portal .tb-portal-feedback-chip{justify-content:center;min-height:46px;padding:10px 14px;font-weight:800;}
.tb-client-portal .tb-portal-feedback-chip-status.is-completed{background:#ecfdf5;border-color:#a7f3d0;color:#047857;}
.tb-client-portal .tb-portal-feedback-chip-status.is-late{background:#fff7ed;border-color:#fdba74;color:#b45309;}
.tb-client-portal .tb-portal-feedback-chip-status.is-pending{background:#eef2ff;border-color:#c7d2fe;color:#3157d5;}
.tb-client-portal .tb-portal-feedback-chip-points{background:#f8fafc;border-color:#dbe4f0;color:#0f172a;}
.tb-client-portal .tb-portal-feedback-client-note{margin-top:12px;}
.tb-client-portal .tb-portal-feedback-client-text{margin-top:6px;line-height:1.8;white-space:pre-wrap;}
.tb-client-portal .tb-portal-feedback-review{margin-top:12px;padding:14px 16px;border:1px solid rgba(97,206,112,.35);border-radius:16px;background:rgba(97,206,112,.14);}
.tb-client-portal .tb-portal-feedback-review b{color:#166534;}
.tb-client-portal .tb-portal-feedback-review-text{margin-top:6px;line-height:1.8;white-space:pre-wrap;color:#14532d;}
.tb-client-portal .tb-portal-feedback-review-meta{margin-top:8px;color:#166534;}
body.tb-theme-dark .tb-client-portal .tb-portal-feedback-main-title,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-feedback-main-title,
body.tb-theme-dark .tb-client-portal .tb-portal-feedback-goal-title,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-feedback-goal-title{color:#f8fafc !important;}
body.tb-theme-dark .tb-client-portal .tb-portal-feedback-item,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-feedback-item{background:linear-gradient(180deg,rgba(15,23,42,.82) 0%,rgba(7,14,30,.98) 100%) !important;border-color:rgba(148,163,184,.18) !important;}
body.tb-theme-dark .tb-client-portal .tb-portal-feedback-chip-points,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-feedback-chip-points{background:rgba(255,255,255,.08) !important;border-color:rgba(255,255,255,.12) !important;color:#f8fafc !important;}
body.tb-theme-dark .tb-client-portal .tb-portal-feedback-review,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-feedback-review{background:rgba(97,206,112,.14) !important;border-color:rgba(97,206,112,.28) !important;}
body.tb-theme-dark .tb-client-portal .tb-portal-feedback-review b,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-feedback-review b,
body.tb-theme-dark .tb-client-portal .tb-portal-feedback-review-text,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-feedback-review-text,
body.tb-theme-dark .tb-client-portal .tb-portal-feedback-review-meta,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-feedback-review-meta{color:#dcfce7 !important;}
@media (max-width: 640px){
  .tb-client-portal .tb-portal-feedback-main-title{font-size:20px;}
  .tb-client-portal .tb-portal-feedback-goal-title{font-size:18px;}
  .tb-client-portal .tb-portal-feedback-badges{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;}
  .tb-client-portal .tb-portal-feedback-chip{width:100%;}
}


/* meta terapêutica em visualização + edição sob demanda*/
.tb-goal-builder-layout-single{grid-template-columns:minmax(0,1fr);}
.tb-goal-summary-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.tb-goal-summary-description{margin-top:14px;border:1px solid #d7deea;border-radius:16px;padding:14px;background:#ffffff;display:flex;flex-direction:column;gap:8px;}
.tb-goal-summary-description span{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#64748b;font-weight:700;}
.tb-goal-summary-description div{font-size:16px;line-height:1.7;color:#0f172a;white-space:pre-wrap;}
.tb-goal-summary-description.is-empty div{color:#64748b;}
.tb-goal-edit-panel{margin-top:0;}
.tb-wrap.tb-theme-dark .tb-goal-summary-description,
body.tb-theme-dark .tb-goal-summary-description{background:linear-gradient(180deg,rgba(15,23,42,.82) 0%,rgba(7,14,30,.98) 100%) !important;border-color:rgba(148,163,184,.18) !important;}
.tb-wrap.tb-theme-dark .tb-goal-summary-description span,
body.tb-theme-dark .tb-goal-summary-description span{color:#cbd5e1 !important;}
.tb-wrap.tb-theme-dark .tb-goal-summary-description div,
body.tb-theme-dark .tb-goal-summary-description div{color:#f8fafc !important;}
@media (max-width: 700px){
  .tb-goal-summary-head .tb-btn{width:100%;}
  .tb-goal-card-footer-actions,
  .tb-goal-card-footer-left,
  .tb-goal-card-footer-right{flex-direction:column;align-items:stretch;}
  .tb-goal-card-save-msg{text-align:left;min-width:0;}
  .tb-goal-card-footer-right .tb-btn,
  .tb-goal-card-footer-left .tb-btn{width:100%;justify-content:center;}
}


/* workspace do cliente com novo menu e sessões em cards*/
.tb-client-card.tb-client-card-compact{padding:14px 16px;cursor:default;transition:none;box-shadow:none;transform:none;}
.tb-client-card.tb-client-card-compact:hover,.tb-client-card.tb-client-card-compact:active{border-color:var(--tb-color-border);box-shadow:none;transform:none;filter:none;}
.tb-client-card.tb-client-card-compact:focus-visible{outline:none;}
.tb-client-card-compact .tb-client-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.tb-client-card-compact .tb-client-card-main{min-width:0;flex:1 1 auto;}
.tb-client-card-compact .tb-client-card-head-right{display:flex;align-items:center;gap:8px;flex:0 0 auto;}
.tb-client-card-compact .tb-client-card-code{margin-bottom:0;}
.tb-client-card-compact .tb-client-card-name{margin-bottom:0;line-height:1.06;}
.tb-client-card-compact .tb-client-card-meta{margin-top:4px;}
.tb-client-card-compact .tb-client-card-badges{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;align-items:stretch;}
.tb-client-card-compact .tb-client-card-alert{margin-top:8px;}
.tb-client-card.tb-client-card-compact,
.tb-client-card.tb-client-card-compact *,
.tb-client-card.tb-client-card-compact *:before,
.tb-client-card.tb-client-card-compact *:after{transition:none !important;}
@media (max-width: 767px){
  .tb-client-card.tb-client-card-compact{padding:14px;}
  .tb-client-card-compact .tb-client-card-head{flex-direction:column;align-items:stretch;}
  .tb-client-card-compact .tb-client-card-head-right{width:100%;justify-content:space-between;align-items:center;}
  .tb-client-card-compact .tb-client-card-badges{justify-content:flex-start;}
}

.tb-client-workspace-shell{width:100%;max-width:none;min-width:0;box-sizing:border-box;}
#tbClientWorkspaceRoot,
#tbClientWorkspaceRoot > .tb-client-workspace-shell,
#tbClientWorkspaceContent{width:100%;max-width:none;min-width:0;box-sizing:border-box;}
#tbClientWorkspaceContent{padding:0;background:transparent;}
#tbClientWorkspaceContent > .tb-card,
#tbClientWorkspaceContent > .tb-client-workspace-panel,
#tbClientWorkspaceContent > .tb-client-workspace-section{width:100%;max-width:none;box-sizing:border-box;}

.tb-client-workspace-header{margin-top:0;padding:16px 18px;}
.tb-client-workspace-header-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;flex-wrap:wrap;}
.tb-client-workspace-head-main{display:grid;gap:6px;min-width:0;}
.tb-client-workspace-kicker-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.tb-client-workspace-title{font-size:26px;font-weight:800;line-height:1.08;color:#0f172a;margin-top:0;}
.tb-client-workspace-head-actions{display:flex;gap:8px;flex-wrap:wrap;}
.tb-client-workspace-badges{display:flex;gap:8px;flex-wrap:wrap;align-items:stretch;margin-top:10px;}
.tb-client-workspace-badges-compact .tb-client-card-badge{min-height:38px;padding:8px 10px;border-radius:14px;font-size:12px;}
.tb-client-workspace-menu{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:12px;align-items:stretch;}
.tb-client-workspace-menu-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:40px;padding:9px 12px;border-radius:12px;box-shadow:none;text-align:center;line-height:1.2;font-size:13px;}
.tb-client-workspace-menu-btn.is-active{font-weight:800;}
.tb-client-workspace-menu-btn.is-disabled{opacity:.55;pointer-events:none;}
.tb-client-workspace-menu-btn.is-danger{border-color:#fecaca;color:#b91c1c;background:#fff5f5;}
#tbClientWorkspaceContent > .tb-card{margin-top:12px;}
.tb-client-workspace-section{border-radius:20px;}
@media (max-width: 1024px){
  .tb-client-workspace-menu{grid-template-columns:repeat(4,minmax(0,1fr));}
}
@media (max-width: 767px){
  .tb-client-workspace-title{font-size:22px;}
  .tb-client-workspace-header{padding:14px 12px;}
  .tb-client-workspace-kicker-row{gap:8px;}
  .tb-client-workspace-badges{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
  .tb-client-workspace-badges .tb-client-card-badge{width:100%;min-height:44px;height:auto;padding:10px 8px;line-height:1.25;white-space:normal;border-radius:16px;}
  .tb-client-workspace-menu{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
  .tb-client-workspace-menu-btn{display:flex;width:100%;text-align:center;min-height:46px;padding:10px 12px;border-radius:14px;line-height:1.2;gap:8px;}
  .tb-client-card-compact .tb-client-card-badges,
  .tb-client-card .tb-client-card-badges{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;}
  .tb-client-card-compact .tb-client-card-badges .tb-client-card-badge,
  .tb-client-card .tb-client-card-badges .tb-client-card-badge{width:100%;min-height:42px;height:auto;padding:10px 8px;line-height:1.2;white-space:normal;border-radius:16px;justify-content:center;text-align:center;}
  .tb-client-card-compact .tb-client-card-badges .tb-client-card-cycle,
  .tb-client-card .tb-client-card-badges .tb-client-card-cycle{grid-column:1 / -1;order:99;min-height:50px;line-height:1.3;white-space:normal;word-break:break-word;}
}


/* workspace do cliente: Sessão Terapêutica em cards modernos*/
#tbClientWorkspaceContent .tb-session-cards-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:8px;}
#tbClientWorkspaceContent .tb-session-card{background:#fff;border:1px solid rgba(97,206,112,.22);border-radius:20px;padding:18px;display:flex;flex-direction:column;gap:12px;box-shadow:0 12px 28px rgba(15,23,42,.06);min-width:0;}
#tbClientWorkspaceContent .tb-session-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap;}
#tbClientWorkspaceContent .tb-session-card-kicker{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#64748b;}
#tbClientWorkspaceContent .tb-session-card-title{margin:4px 0 0;font-size:19px;line-height:1.25;color:#0f172a;}
#tbClientWorkspaceContent .tb-session-card-status{display:inline-flex;align-items:center;justify-content:center;padding:7px 12px;border-radius:999px;font-size:12px;font-weight:800;border:1px solid transparent;}
#tbClientWorkspaceContent .tb-session-card-status.is-success{background:#ecfdf5;color:#047857;border-color:#a7f3d0;}
#tbClientWorkspaceContent .tb-session-card-status.is-danger{background:#fef2f2;color:#b91c1c;border-color:#fecaca;}
#tbClientWorkspaceContent .tb-session-card-status.is-neutral{background:#f8fafc;color:#475569;border-color:#cbd5e1;}
#tbClientWorkspaceContent .tb-session-card-summary-lines{display:grid;gap:8px;}
#tbClientWorkspaceContent .tb-session-card-summary-line{font-size:14px;line-height:1.45;color:#475569;}
#tbClientWorkspaceContent .tb-session-card-summary-line b{color:#0f172a;}
#tbClientWorkspaceContent .tb-session-card-details{border-top:1px solid #e2e8f0;padding-top:10px;margin-top:2px;}
#tbClientWorkspaceContent .tb-session-card-details summary{list-style:none;cursor:pointer;font-weight:800;color:var(--tb-accent-green-dark,#3fb85a);display:inline-flex;align-items:center;gap:8px;font-size:14px;}
#tbClientWorkspaceContent .tb-session-card-details summary::-webkit-details-marker{display:none;}
#tbClientWorkspaceContent .tb-session-card-details summary::after{content:'+';display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:999px;background:var(--tb-accent-green-soft,#eafaf0);color:#177a35;font-size:14px;line-height:1;}
#tbClientWorkspaceContent .tb-session-card-details[open] summary::after{content:'−';}
#tbClientWorkspaceContent .tb-session-card-details-body{padding-top:12px;}
#tbClientWorkspaceContent .tb-session-card-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:2px;}
#tbClientWorkspaceContent .tb-session-card-meta-item{padding:12px 14px;border:1px solid #e2e8f0;border-radius:14px;background:#f8fafc;min-width:0;}
#tbClientWorkspaceContent .tb-session-card-meta-label{display:block;font-size:12px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:#64748b;margin-bottom:6px;}
#tbClientWorkspaceContent .tb-session-card-meta-item strong{display:block;font-size:15px;line-height:1.35;color:#0f172a;word-break:break-word;}
#tbClientWorkspaceContent .tb-session-card-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
#tbClientWorkspaceContent .tb-session-card-actions .tb-btn{width:100%;justify-content:center;text-align:center;}
#tbClientWorkspaceContent .tb-client-sessions-actions{align-items:center;}
@media (max-width: 767px){
  #tbClientWorkspaceContent .tb-session-cards-grid{grid-template-columns:1fr;}
  #tbClientWorkspaceContent .tb-session-card{padding:14px;}
  #tbClientWorkspaceContent .tb-session-card-meta{grid-template-columns:1fr;}
  #tbClientWorkspaceContent .tb-session-card-actions{grid-template-columns:1fr;}
}


/* jornada dark, feedback portal e ajustes mobile*/
.tb-journey-config-title{display:inline-flex;align-items:center;gap:8px;font-size:18px;line-height:1.2;font-weight:800;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-config-panel,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-config-panel{background:linear-gradient(180deg,rgba(15,23,42,.86) 0%,rgba(7,14,30,.98) 100%) !important;border-color:rgba(148,163,184,.18) !important;box-shadow:0 16px 36px rgba(0,0,0,.20);}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-timeline-wrap,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-timeline-wrap,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-achievement-card,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-achievement-card{background:linear-gradient(180deg,rgba(15,23,42,.86) 0%,rgba(7,14,30,.98) 100%) !important;border-color:rgba(148,163,184,.18) !important;box-shadow:0 16px 36px rgba(0,0,0,.20);}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-config-panel summary,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-config-panel summary{color:#f8fafc !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-config-panel summary::after,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-config-panel summary::after{background:rgba(97,206,112,.16) !important;color:#bbf7d0 !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-timeline-title,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-events-title,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-achievement-main,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-timeline-title,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-events-title,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-achievement-main{color:#f8fafc !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-timeline-desc,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-timeline-date,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-event-copy span,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-timeline-empty,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-event-empty,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-events-wrap .tb-muted,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-achievement-card .tb-journey-summary-helper,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-timeline-desc,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-timeline-date,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-event-copy span,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-timeline-empty,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-event-empty,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-events-wrap .tb-muted,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-achievement-card .tb-journey-summary-helper{color:#cbd5e1 !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-timeline-card,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-event-tag,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-timeline-empty,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-event-empty,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-timeline-card,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-event-tag,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-timeline-empty,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-event-empty{background:rgba(15,23,42,.72) !important;border-color:rgba(148,163,184,.18) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-timeline-rail,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-timeline-rail{background:rgba(148,163,184,.24) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-event-icon,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-event-icon,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-timeline-meta span,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-timeline-meta span,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-timeline-stage-pill,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-timeline-stage-pill{background:rgba(37,99,235,.18) !important;color:#bfdbfe !important;border-color:rgba(59,130,246,.28) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-config-panel-body,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-config-panel-body .tb-muted,

.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-config-card,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-config-card{background:rgba(255,255,255,.05) !important;border-color:rgba(148,163,184,.20) !important;box-shadow:none !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-config-card-title,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-config-card-title{color:#f8fafc !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-bonus-top-card,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-bonus-top-card .tb-muted,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-gamification-bar-meta,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-config-panel-body,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-config-panel-body .tb-muted,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-bonus-top-card,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-bonus-top-card .tb-muted,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-gamification-bar-meta{color:#cbd5e1 !important;}

.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-config-card,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-config-card{background:rgba(255,255,255,.05) !important;border-color:rgba(148,163,184,.20) !important;box-shadow:none !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-config-card-title,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-config-card-title{color:#f8fafc !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-bonus-top-card,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-bonus-top-card{background:rgba(255,255,255,.05) !important;border-color:rgba(148,163,184,.20) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-gamification-bar-label,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-gamification-bar-value,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-gamification-bar-label,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-gamification-bar-value{color:#f8fafc !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-gamification-bar-track,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-gamification-bar-track{background:rgba(148,163,184,.18) !important;}
.tb-wrap.tb-theme-dark .tb-tutorial-shell h4,
.tb-wrap.tb-theme-dark .tb-tutorial-shell h3{color:#f8fafc !important;}
@media (max-width: 768px){
  #tbTherapistMini .tb-profileheader-between,
  .tb-client-portal .tb-profileheader,
  .tb-therapist-card .tb-profileheader{justify-content:center !important;}
  #tbTherapistMini .tb-profileheader-right,
  .tb-client-portal .tb-profileheader-right,
  .tb-therapist-card .tb-profileheader-right{width:100%;justify-content:center !important;}
  #tbTherapistMini .tb-access-badge,
  .tb-client-portal .tb-access-badge,
  .tb-therapist-card .tb-access-badge{margin:0 auto;justify-content:center;text-align:center;}
  #tbTherapistMini .tb-profileheader-links,
  .tb-client-portal .tb-profileheader-links,
  .tb-therapist-card .tb-profileheader-links{width:100%;justify-content:center !important;}
  .tb-tutorial-hero-stats .tb-central-hero-badge{padding:7px 10px !important;font-size:12px !important;gap:6px !important;}
  .tb-tutorial-hero-stats .tb-central-hero-badge .dashicons{font-size:15px !important;width:15px !important;height:15px !important;}
}


/* grid em 2 colunas para desafios terapêuticos no desktop*/
.tb-goals-stack{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;}
@media (max-width: 767px){
  .tb-goals-stack{grid-template-columns:1fr;}
}

/* ajuste do card de clientes sem botão duplicado*/
.tb-goal-card.is-awaiting-therapist{border-color:rgba(220,38,38,.28);box-shadow:0 10px 24px rgba(220,38,38,.10);}
.tb-goal-feedback-card.is-awaiting-therapist{border-color:rgba(220,38,38,.28);}
.tb-goal-feedback-badge.is-awaiting{background:#fef2f2;color:#b91c1c;}
.tb-client-workspace-menu-btn.has-notification{border-color:rgba(220,38,38,.28);box-shadow:0 10px 24px rgba(220,38,38,.10);}

/* metas do portal: compacto após registro e bloqueio após finalização*/
.tb-goal-portal-card.is-registered .tb-goal-portal-compact{
  padding:12px 14px;
  border:1px solid #dbeafe;
  border-radius:14px;
  background:#f8fbff;
}
.tb-goal-portal-card.is-finalized .tb-goal-portal-compact{
  border-color:#bbf7d0;
  background:#f0fdf4;
}
.tb-goal-portal-compact-status{font-weight:700;color:#0f172a;}
.tb-goal-portal-compact-meta,
.tb-goal-portal-compact-notes{color:#475569;line-height:1.5;}
.tb-goal-portal-edit-toggle{justify-content:center;}
body.tb-theme-dark .tb-goal-portal-card.is-registered .tb-goal-portal-compact,
.tb-wrap.tb-theme-dark .tb-goal-portal-card.is-registered .tb-goal-portal-compact{
  background:#172033;
  border-color:#334155;
}
body.tb-theme-dark .tb-goal-portal-card.is-finalized .tb-goal-portal-compact,
.tb-wrap.tb-theme-dark .tb-goal-portal-card.is-finalized .tb-goal-portal-compact{
  background:#0f2c1d;
  border-color:#166534;
}
body.tb-theme-dark .tb-goal-portal-compact-status,
.tb-wrap.tb-theme-dark .tb-goal-portal-compact-status,
body.tb-theme-dark .tb-goal-portal-compact-meta,
.tb-wrap.tb-theme-dark .tb-goal-portal-compact-meta,
body.tb-theme-dark .tb-goal-portal-compact-notes,
.tb-wrap.tb-theme-dark .tb-goal-portal-compact-notes{color:#e5e7eb;}


/* WhatsApp das metas e card de áudios bônus mais escutados*/
.tb-btn-whatsapp{display:inline-flex;align-items:center;gap:8px;}
.tb-btn-icon{display:inline-flex;align-items:center;justify-content:center;line-height:1;}
.tb-btn-icon-whatsapp .tb-icon-mask{width:16px;height:16px;background-color:currentColor;}
.tb-goal-summary-head .tb-btn-whatsapp{min-width:148px;justify-content:center;}
.tb-journey-summary-card-inner{width:100%;}


/* cards de áudios bônus com busca/filtro e card compacto*/
.tb-bonus-top-card{padding:14px 16px !important;}
.tb-bonus-top-card .tb-journey-summary-label{font-size:15px;line-height:1.2;}
.tb-bonus-top-card .tb-muted,
.tb-bonus-top-card .tb-journey-summary-helper{font-size:12px;line-height:1.35;}
.tb-bonus-top-card .tb-gamification-bars{gap:8px;}
.tb-bonus-top-card .tb-gamification-bar{grid-template-columns:minmax(0,220px) minmax(120px,1fr) 28px;gap:8px;align-items:center;min-height:clamp(72px,8vw,80px);padding:4px 0;}
.tb-bonus-top-card .tb-gamification-bar-label{font-size:13px;line-height:1.2;}
.tb-bonus-top-card .tb-gamification-bar-meta{font-size:11px;margin-top:2px;line-height:1.25;}
.tb-bonus-top-card .tb-gamification-bar-track{height:10px;}
.tb-bonus-top-card .tb-gamification-bar-value{font-size:13px;}
.tb-client-bonus-panel{border:1px solid #d7deea;border-radius:18px;padding:16px;background:#fff;}
.tb-bonus-audio-toolbar{display:grid;grid-template-columns:minmax(220px,1.2fr) repeat(2,minmax(180px,.7fr)) auto;gap:10px;align-items:center;}
.tb-bonus-audio-toolbar-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap;}
.tb-bonus-audio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
.tb-bonus-audio-card{position:relative;display:block;border:1px solid #d7deea;border-radius:18px;padding:14px;background:#fff;cursor:pointer;transition:border-color .2s ease, box-shadow .2s ease, transform .2s ease;min-height:160px;}
.tb-bonus-audio-card:hover{border-color:#8fb8f4;box-shadow:0 8px 20px rgba(15,23,42,.06);transform:translateY(-1px);}
.tb-bonus-audio-card input[type="checkbox"]{position:absolute;top:14px;right:14px;width:20px;height:20px;accent-color:#2e8b57;}
.tb-bonus-audio-card[data-selected="1"]{border-color:#8dc891;background:#f6fff7;}
.tb-bonus-audio-card-body{display:flex;gap:12px;align-items:flex-start;padding-right:34px;}
.tb-bonus-audio-card-cover{width:72px;height:112px;flex:0 0 72px;border-radius:14px;overflow:hidden;background:#f8fafc;border:1px solid #e5e7eb;display:flex;align-items:center;justify-content:center;}
.tb-bonus-audio-card-cover.is-placeholder{font-size:22px;}
.tb-bonus-audio-card-copy{min-width:0;display:flex;flex-direction:column;gap:6px;}
.tb-bonus-audio-card-title{font-size:16px;font-weight:800;line-height:1.2;color:#0f172a;}
.tb-bonus-audio-card-category{display:inline-flex;align-self:flex-start;padding:4px 10px;border-radius:999px;background:#eef4ff;color:#29407a;font-size:12px;font-weight:700;}
.tb-bonus-audio-card-desc{font-size:13px;line-height:1.4;color:#64748b;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.tb-bonus-audio-card-desc.is-empty{opacity:.85;font-style:italic;}
.tb-bonus-audio-card-actions{margin-top:4px;display:flex;align-items:center;}
.tb-bonus-audio-card-actions .tb-bonus-audio-more{position:relative;z-index:2;padding:8px 12px;line-height:1.2;}
.tb-bonus-audio-modal-copy{display:grid;gap:14px;}
.tb-bonus-audio-modal-section{padding:12px 14px;border:1px solid #d7deea;border-radius:14px;background:#f8fbff;}
.tb-bonus-audio-modal-label{font-size:12px;font-weight:800;letter-spacing:.03em;text-transform:uppercase;color:#29407a;margin-bottom:8px;}
.tb-bonus-audio-modal-text{font-size:14px;line-height:1.6;color:#334155;}
@media (max-width: 1100px){
  .tb-bonus-audio-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .tb-bonus-audio-toolbar{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width: 782px){
  .tb-bonus-audio-toolbar{grid-template-columns:1fr;}
  .tb-bonus-audio-toolbar-actions{justify-content:stretch;}
  .tb-bonus-audio-toolbar-actions .tb-btn{flex:1 1 auto;}
  .tb-bonus-audio-grid{grid-template-columns:1fr;}
  .tb-bonus-top-card .tb-gamification-bar{grid-template-columns:minmax(0,1fr);gap:6px;}
  .tb-bonus-top-card .tb-gamification-bar-track{order:3;}
  .tb-bonus-top-card .tb-gamification-bar-value{order:2;justify-self:flex-start;}
}


/* múltiplos ciclos por cliente: seletor e criação rápida na área do terapeuta*/
.tb-client-card-badge.tb-client-card-cycle{background:#eef6ff;color:#1d4ed8;}
.tb-client-cycle-bar{display:grid;grid-template-columns:minmax(200px,.9fr) minmax(520px,1.45fr);gap:12px;align-items:end;margin-top:14px;padding:14px 16px;border:1px solid #dbe7f3;border-radius:18px;background:linear-gradient(180deg,#f8fbff 0%,#ffffff 100%);}
.tb-client-cycle-bar-title{font-size:15px;font-weight:800;color:#0f172a;line-height:1.2;}
.tb-client-cycle-bar-helper{margin-top:4px;font-size:12px;line-height:1.4;color:#64748b;}
.tb-client-cycle-bar-actions{display:grid;grid-template-columns:minmax(240px,1fr) auto auto;gap:10px;align-items:end;}
.tb-client-cycle-bar-actions .tb-input{min-width:0;}
.tb-client-form-cycle-note{margin-top:12px;padding:12px 14px;border:1px solid #dbe7f3;border-radius:14px;background:#f8fbff;color:#334155;line-height:1.45;}
@media (max-width: 767px){
  .tb-client-cycle-bar{grid-template-columns:1fr;gap:10px;padding:12px;}
  .tb-client-cycle-bar-actions{grid-template-columns:1fr;}
}
body.tb-theme-dark .tb-client-card-badge.tb-client-card-cycle,
.tb-wrap.tb-theme-dark .tb-client-card-badge.tb-client-card-cycle{background:rgba(59,130,246,.18);color:#dbeafe;border-color:rgba(96,165,250,.24);}
body.tb-theme-dark .tb-client-cycle-bar,
.tb-wrap.tb-theme-dark .tb-client-cycle-bar{background:linear-gradient(180deg,rgba(15,23,42,.92) 0%,rgba(7,14,30,.98) 100%);border-color:rgba(148,163,184,.18);}
body.tb-theme-dark .tb-client-cycle-bar-title,
.tb-wrap.tb-theme-dark .tb-client-cycle-bar-title,
body.tb-theme-dark .tb-client-form-cycle-note,
.tb-wrap.tb-theme-dark .tb-client-form-cycle-note{color:#f8fafc;}
body.tb-theme-dark .tb-client-cycle-bar-helper,
.tb-wrap.tb-theme-dark .tb-client-cycle-bar-helper{color:#cbd5e1;}
body.tb-theme-dark .tb-client-cycle-bar-actions select.tb-input,
.tb-wrap.tb-theme-dark .tb-client-cycle-bar-actions select.tb-input{background-color:rgba(255,255,255,.05);border-color:rgba(148,163,184,.22);color:#f8fafc;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M3.25 5.25 7 9l3.75-3.75' stroke='%23cbd5e1' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");}
body.tb-theme-dark .tb-client-form-cycle-note,
.tb-wrap.tb-theme-dark .tb-client-form-cycle-note{background:rgba(255,255,255,.04);border-color:rgba(148,163,184,.18);}

.tb-client-backup-card{margin-top:12px;padding:18px 20px;border-radius:18px;border:1px solid #dbe7f3;background:linear-gradient(180deg,#f8fbff 0%,#ffffff 100%);box-shadow:0 14px 34px rgba(15,23,42,.06);display:flex;flex-direction:column;gap:14px;}
.tb-client-backup-card.is-restore-only{background:linear-gradient(180deg,#f8fbff 0%,#f4f8ff 100%);}
.tb-client-backup-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;}
.tb-client-backup-kicker{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#64748b;}
.tb-client-backup-title{margin-top:4px;font-size:18px;font-weight:800;line-height:1.2;color:#0f172a;}
.tb-client-backup-helper{margin-top:6px;font-size:13px;line-height:1.6;color:#475569;max-width:760px;}
.tb-client-backup-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
.tb-client-backup-upload-btn{justify-content:center;}
.tb-client-backup-feedback{min-height:20px;font-size:12px;}
@media (max-width: 767px){
  .tb-client-backup-card{padding:16px;border-radius:16px;}
  .tb-client-backup-actions{display:grid;grid-template-columns:1fr;}
  .tb-client-backup-actions .tb-btn,.tb-client-backup-actions .tb-file-btn{width:100%;justify-content:center;}
}
body.tb-theme-dark .tb-client-backup-card,
.tb-wrap.tb-theme-dark .tb-client-backup-card{background:linear-gradient(180deg,rgba(15,23,42,.92) 0%,rgba(7,14,30,.98) 100%);border-color:rgba(148,163,184,.18);box-shadow:none;}
body.tb-theme-dark .tb-client-backup-kicker,
.tb-wrap.tb-theme-dark .tb-client-backup-kicker{color:#94a3b8;}
body.tb-theme-dark .tb-client-backup-title,
.tb-wrap.tb-theme-dark .tb-client-backup-title{color:#f8fafc;}
body.tb-theme-dark .tb-client-backup-helper,
.tb-wrap.tb-theme-dark .tb-client-backup-helper,
body.tb-theme-dark .tb-client-backup-feedback,
.tb-wrap.tb-theme-dark .tb-client-backup-feedback{color:#cbd5e1;}

/* segurança extra para exclusão de cliente com backup obrigatório e confirmação EXCLUIR*/
.tb-wrap.tb-theme-dark .tb-client-workspace-title,
body.tb-theme-dark .tb-client-workspace-title,
.tb-wrap.tb-theme-dark .tb-client-card-name,
body.tb-theme-dark .tb-client-card-name{
  color:#ffffff !important;
}
.tb-wrap.tb-theme-dark .tb-client-workspace-header .tb-client-card-meta,
body.tb-theme-dark .tb-client-workspace-header .tb-client-card-meta{
  color:#cbd5e1 !important;
}
.tb-wrap.tb-theme-dark .tb-client-bonus-panel,
body.tb-theme-dark .tb-client-bonus-panel{
  background:linear-gradient(180deg,rgba(15,23,42,.92) 0%,rgba(7,14,30,.98) 100%) !important;
  border-color:rgba(148,163,184,.18) !important;
}
.tb-wrap.tb-theme-dark .tb-bonus-audio-card,
body.tb-theme-dark .tb-bonus-audio-card{
  background:rgba(255,255,255,.04) !important;
  border-color:rgba(148,163,184,.18) !important;
  box-shadow:none !important;
}
.tb-wrap.tb-theme-dark .tb-bonus-audio-card:hover,
body.tb-theme-dark .tb-bonus-audio-card:hover{
  border-color:rgba(96,165,250,.45) !important;
  background:rgba(255,255,255,.06) !important;
  box-shadow:0 10px 24px rgba(2,6,23,.32) !important;
}
.tb-wrap.tb-theme-dark .tb-bonus-audio-card[data-selected="1"],
body.tb-theme-dark .tb-bonus-audio-card[data-selected="1"]{
  background:rgba(97,206,112,.10) !important;
  border-color:rgba(97,206,112,.36) !important;
}
.tb-wrap.tb-theme-dark .tb-bonus-audio-card-cover,
body.tb-theme-dark .tb-bonus-audio-card-cover{
  background:rgba(255,255,255,.05) !important;
  border-color:rgba(148,163,184,.18) !important;
}
.tb-wrap.tb-theme-dark .tb-bonus-audio-card-title,
body.tb-theme-dark .tb-bonus-audio-card-title{
  color:#f8fafc !important;
}
.tb-wrap.tb-theme-dark .tb-bonus-audio-card-category,
body.tb-theme-dark .tb-bonus-audio-card-category{
  background:rgba(59,130,246,.16) !important;
  color:#dbeafe !important;
}
.tb-wrap.tb-theme-dark .tb-bonus-audio-card-desc,
body.tb-theme-dark .tb-bonus-audio-card-desc,
.tb-wrap.tb-theme-dark .tb-bonus-top-card .tb-muted,
.tb-wrap.tb-theme-dark .tb-bonus-top-card .tb-journey-summary-helper,
body.tb-theme-dark .tb-bonus-top-card .tb-muted,
body.tb-theme-dark .tb-bonus-top-card .tb-journey-summary-helper{
  color:#cbd5e1 !important;
}
.tb-wrap.tb-theme-dark .tb-bonus-audio-card-actions .tb-bonus-audio-more,
body.tb-theme-dark .tb-bonus-audio-card-actions .tb-bonus-audio-more{
  border-color:rgba(96,165,250,.3) !important;
  color:#dbeafe !important;
  background:rgba(59,130,246,.12) !important;
}
.tb-wrap.tb-theme-dark .tb-bonus-audio-modal-section,
body.tb-theme-dark .tb-bonus-audio-modal-section{
  background:rgba(255,255,255,.04) !important;
  border-color:rgba(148,163,184,.18) !important;
}
.tb-wrap.tb-theme-dark .tb-bonus-audio-modal-label,
body.tb-theme-dark .tb-bonus-audio-modal-label{
  color:#dbeafe !important;
}
.tb-wrap.tb-theme-dark .tb-bonus-audio-modal-text,
body.tb-theme-dark .tb-bonus-audio-modal-text{
  color:#e2e8f0 !important;
}
.tb-wrap.tb-theme-dark .tb-bonus-top-card .tb-journey-summary-label,
.tb-wrap.tb-theme-dark .tb-bonus-top-card .tb-gamification-bar-label,
.tb-wrap.tb-theme-dark .tb-bonus-top-card .tb-gamification-bar-value,
body.tb-theme-dark .tb-bonus-top-card .tb-journey-summary-label,
body.tb-theme-dark .tb-bonus-top-card .tb-gamification-bar-label,
body.tb-theme-dark .tb-bonus-top-card .tb-gamification-bar-value{
  color:#ffffff !important;
}
.tb-wrap.tb-theme-dark .tb-bonus-top-card .tb-gamification-bar-track,
body.tb-theme-dark .tb-bonus-top-card .tb-gamification-bar-track{
  background:rgba(148,163,184,.18) !important;
}
.tb-wrap.tb-theme-dark .tb-bonus-top-card .tb-gamification-bar-fill,
body.tb-theme-dark .tb-bonus-top-card .tb-gamification-bar-fill{
  background:#61ce70 !important;
}

/* resumo visual do ciclo atual para terapeuta e cliente*/
.tb-cycle-summary-card{
  margin-top:14px;
  border:1px solid #dbe7f3;
  background:linear-gradient(180deg,#f8fbff 0%,#ffffff 100%);
  box-shadow:0 14px 34px rgba(15,23,42,.06);
}
.tb-cycle-summary-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  margin-bottom:12px;
}
.tb-cycle-summary-title{
  font-size:16px;
  font-weight:800;
  color:#0f172a;
}
.tb-cycle-summary-helper{
  margin-top:4px;
}
.tb-cycle-summary-chip{
  align-self:flex-start;
  font-weight:700;
}
.tb-cycle-summary-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.tb-cycle-summary-item{
  min-height:74px;
  border:1px solid rgba(148,163,184,.18);
  border-radius:14px;
  padding:12px;
  background:rgba(248,250,252,.85);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:6px;
}
.tb-cycle-summary-item span{
  font-size:12px;
  color:#64748b;
  line-height:1.35;
}
.tb-cycle-summary-item strong{
  font-size:14px;
  line-height:1.45;
  color:#0f172a;
  word-break:break-word;
}

.tb-cycle-summary-item.is-code{background:linear-gradient(180deg,#eef4ff 0%,#ffffff 100%);border-color:#bfdbfe;}
.tb-cycle-summary-item.is-objective{background:linear-gradient(180deg,#effdf5 0%,#ffffff 100%);border-color:#86efac;}
.tb-cycle-summary-item.is-audio{background:linear-gradient(180deg,#faf5ff 0%,#ffffff 100%);border-color:#d8b4fe;}
.tb-cycle-summary-item.is-analysis{background:linear-gradient(180deg,#eff6ff 0%,#ffffff 100%);border-color:#93c5fd;}
.tb-cycle-summary-item.is-delivery{background:linear-gradient(180deg,#ecfeff 0%,#ffffff 100%);border-color:#67e8f9;}
.tb-cycle-summary-item.is-sessions{background:linear-gradient(180deg,#fff7ed 0%,#ffffff 100%);border-color:#fdba74;}
.tb-cycle-summary-item.is-bonus{background:linear-gradient(180deg,#fdf4ff 0%,#ffffff 100%);border-color:#f0abfc;}
.tb-cycle-summary-item.is-started{background:linear-gradient(180deg,#f8fafc 0%,#ffffff 100%);border-color:#cbd5e1;}
@media (max-width: 1080px){
  .tb-cycle-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width: 640px){
  .tb-cycle-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .tb-cycle-summary-item{min-height:auto;padding:10px;}
}
body.tb-theme-dark .tb-cycle-summary-card,
.tb-wrap.tb-theme-dark .tb-cycle-summary-card{
  background:linear-gradient(180deg,rgba(15,23,42,.92) 0%,rgba(7,14,30,.98) 100%);
  border-color:rgba(148,163,184,.18);
}
body.tb-theme-dark .tb-cycle-summary-title,
.tb-wrap.tb-theme-dark .tb-cycle-summary-title,
body.tb-theme-dark .tb-cycle-summary-chip,
.tb-wrap.tb-theme-dark .tb-cycle-summary-chip,
body.tb-theme-dark .tb-cycle-summary-item strong,
.tb-wrap.tb-theme-dark .tb-cycle-summary-item strong{
  color:#f8fafc !important;
}
body.tb-theme-dark .tb-cycle-summary-helper,
.tb-wrap.tb-theme-dark .tb-cycle-summary-helper,
body.tb-theme-dark .tb-cycle-summary-item span,
.tb-wrap.tb-theme-dark .tb-cycle-summary-item span{
  color:#cbd5e1 !important;
}
body.tb-theme-dark .tb-cycle-summary-item,
.tb-wrap.tb-theme-dark .tb-cycle-summary-item{
  background:rgba(255,255,255,.04);
  border-color:rgba(148,163,184,.18);
}
body.tb-theme-dark .tb-cycle-summary-item.is-code,
.tb-wrap.tb-theme-dark .tb-cycle-summary-item.is-code{background:linear-gradient(180deg,rgba(37,99,235,.18) 0%,rgba(255,255,255,.04) 100%);border-color:rgba(147,197,253,.28);}
body.tb-theme-dark .tb-cycle-summary-item.is-objective,
.tb-wrap.tb-theme-dark .tb-cycle-summary-item.is-objective{background:linear-gradient(180deg,rgba(22,163,74,.16) 0%,rgba(255,255,255,.04) 100%);border-color:rgba(134,239,172,.26);}
body.tb-theme-dark .tb-cycle-summary-item.is-audio,
.tb-wrap.tb-theme-dark .tb-cycle-summary-item.is-audio{background:linear-gradient(180deg,rgba(168,85,247,.16) 0%,rgba(255,255,255,.04) 100%);border-color:rgba(216,180,254,.26);}
body.tb-theme-dark .tb-cycle-summary-item.is-analysis,
.tb-wrap.tb-theme-dark .tb-cycle-summary-item.is-analysis{background:linear-gradient(180deg,rgba(59,130,246,.18) 0%,rgba(255,255,255,.04) 100%);border-color:rgba(147,197,253,.28);}
body.tb-theme-dark .tb-cycle-summary-item.is-delivery,
.tb-wrap.tb-theme-dark .tb-cycle-summary-item.is-delivery{background:linear-gradient(180deg,rgba(6,182,212,.16) 0%,rgba(255,255,255,.04) 100%);border-color:rgba(103,232,249,.26);}
body.tb-theme-dark .tb-cycle-summary-item.is-sessions,
.tb-wrap.tb-theme-dark .tb-cycle-summary-item.is-sessions{background:linear-gradient(180deg,rgba(249,115,22,.16) 0%,rgba(255,255,255,.04) 100%);border-color:rgba(253,186,116,.26);}
body.tb-theme-dark .tb-cycle-summary-item.is-bonus,
.tb-wrap.tb-theme-dark .tb-cycle-summary-item.is-bonus{background:linear-gradient(180deg,rgba(217,70,239,.14) 0%,rgba(255,255,255,.04) 100%);border-color:rgba(240,171,252,.26);}
body.tb-theme-dark .tb-cycle-summary-item.is-started,
.tb-wrap.tb-theme-dark .tb-cycle-summary-item.is-started{background:linear-gradient(180deg,rgba(148,163,184,.14) 0%,rgba(255,255,255,.04) 100%);border-color:rgba(203,213,225,.24);}

.tb-cycle-summary-card.is-setup-pending{border-color:#f59e0b;background:linear-gradient(180deg,#fff9ec 0%,#ffffff 100%);box-shadow:0 14px 34px rgba(245,158,11,.12);}
.tb-cycle-summary-setup-banner{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;margin-bottom:12px;padding:12px 14px;border:1px solid #fde68a;border-radius:14px;background:#fffbeb;color:#92400e;line-height:1.55;}
.tb-cycle-summary-setup-banner strong{font-size:13px;font-weight:800;color:#92400e;}
.tb-cycle-summary-setup-banner span{font-size:12px;color:#a16207;}

.tb-cycle-progress-row{display:flex;flex-direction:column;gap:8px;margin:12px 0 14px;}
.tb-cycle-progress-row.is-compact{margin:2px 0 12px;}
.tb-cycle-progress-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;}
.tb-cycle-progress-helper{font-size:12px;line-height:1.45;color:#64748b;}
.tb-cycle-progress-bar{position:relative;overflow:hidden;height:8px;border-radius:999px;background:rgba(148,163,184,.18);}
.tb-cycle-progress-fill{display:block;height:100%;border-radius:999px;transition:width .2s ease;}
.tb-cycle-progress-chip{font-weight:800;}
.tb-cycle-progress-chip.is-setup,.tb-cycle-progress-fill.is-setup{background:#f59e0b;color:#92400e;border-color:#fde68a;}
.tb-cycle-progress-chip.is-progress,.tb-cycle-progress-fill.is-progress{background:#2563eb;color:#1e3a8a;border-color:#bfdbfe;}
.tb-cycle-progress-chip.is-done,.tb-cycle-progress-fill.is-done{background:#16a34a;color:#166534;border-color:#86efac;}
body.tb-theme-dark .tb-cycle-summary-card.is-setup-pending,
.tb-wrap.tb-theme-dark .tb-cycle-summary-card.is-setup-pending{background:linear-gradient(180deg,rgba(69,39,0,.55) 0%,rgba(7,14,30,.98) 100%);border-color:rgba(245,158,11,.38);box-shadow:0 14px 34px rgba(245,158,11,.14);}
body.tb-theme-dark .tb-cycle-summary-setup-banner,
.tb-wrap.tb-theme-dark .tb-cycle-summary-setup-banner{background:rgba(245,158,11,.12);border-color:rgba(245,158,11,.35);color:#fde68a;}
body.tb-theme-dark .tb-cycle-summary-setup-banner strong,
.tb-wrap.tb-theme-dark .tb-cycle-summary-setup-banner strong{color:#fef3c7;}
body.tb-theme-dark .tb-cycle-summary-setup-banner span,
.tb-wrap.tb-theme-dark .tb-cycle-summary-setup-banner span{color:#fde68a;}

body.tb-theme-dark .tb-cycle-progress-helper,
.tb-wrap.tb-theme-dark .tb-cycle-progress-helper{color:#cbd5e1;}
body.tb-theme-dark .tb-cycle-progress-bar,
.tb-wrap.tb-theme-dark .tb-cycle-progress-bar{background:rgba(148,163,184,.16);}
body.tb-theme-dark .tb-cycle-progress-chip.is-setup,
.tb-wrap.tb-theme-dark .tb-cycle-progress-chip.is-setup{background:rgba(245,158,11,.14);border-color:rgba(245,158,11,.32);color:#fde68a;}
body.tb-theme-dark .tb-cycle-progress-chip.is-progress,
.tb-wrap.tb-theme-dark .tb-cycle-progress-chip.is-progress{background:rgba(37,99,235,.18);border-color:rgba(96,165,250,.32);color:#bfdbfe;}
body.tb-theme-dark .tb-cycle-progress-chip.is-done,
.tb-wrap.tb-theme-dark .tb-cycle-progress-chip.is-done{background:rgba(22,163,74,.16);border-color:rgba(74,222,128,.28);color:#bbf7d0;}

/* ajustes mobile em 2 colunas para terapeuta e cliente*/
.tb-cycle-history-section{margin-top:14px;padding:16px;border:1px solid #dbe7f3;border-radius:18px;background:linear-gradient(180deg,#f8fbff 0%,#ffffff 100%);}
.tb-cycle-history-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;margin-bottom:12px;}
.tb-cycle-history-section-title{font-size:16px;font-weight:800;color:#0f172a;line-height:1.2;}
.tb-cycle-history-section-helper{margin-top:4px;font-size:12px;line-height:1.5;color:#64748b;}
.tb-cycle-history-section-chip{font-weight:700;align-self:flex-start;}
.tb-cycle-history-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.tb-cycle-history-card{display:flex;flex-direction:column;gap:12px;padding:14px;border:1px solid rgba(148,163,184,.18);border-radius:16px;background:#fff;box-shadow:0 10px 26px rgba(15,23,42,.05);}
.tb-cycle-history-card.is-current{border-color:#86efac;box-shadow:0 16px 34px rgba(34,197,94,.10);background:linear-gradient(180deg,#f7fff8 0%,#ffffff 100%);}
.tb-cycle-history-card.is-setup-pending{border-color:#f59e0b;background:linear-gradient(180deg,#fff9ec 0%,#ffffff 100%);}
.tb-cycle-history-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;}
.tb-cycle-history-card-title{font-size:15px;font-weight:800;color:#0f172a;line-height:1.2;}
.tb-cycle-history-card-helper{margin-top:4px;font-size:12px;line-height:1.45;color:#64748b;}
.tb-cycle-history-card-badges{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;}
.tb-cycle-history-chip.is-current{background:#dcfce7;color:#166534;border-color:#86efac;}
.tb-cycle-history-chip.is-pending{background:#fffbeb;color:#92400e;border-color:#fde68a;}
.tb-cycle-history-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.tb-cycle-history-card-item{min-height:70px;padding:12px;border:1px solid rgba(148,163,184,.16);border-radius:14px;background:rgba(248,250,252,.9);display:flex;flex-direction:column;justify-content:space-between;gap:6px;}
.tb-cycle-history-card-item span{font-size:12px;color:#64748b;line-height:1.35;}
.tb-cycle-history-card-item strong{font-size:14px;line-height:1.45;color:#0f172a;word-break:break-word;}
.tb-cycle-history-card-footer{display:flex;justify-content:flex-end;align-items:center;gap:10px;}
.tb-cycle-history-link,.tb-cycle-history-open{min-width:148px;justify-content:center;}
@media (max-width: 980px){
  .tb-cycle-history-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width: 640px){
  .tb-cycle-history-section{padding:12px;}
  .tb-cycle-history-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
  .tb-cycle-history-card-grid{grid-template-columns:1fr;}
  .tb-cycle-history-card-footer > *{width:100%;}
}
body.tb-theme-dark .tb-cycle-history-section,
.tb-wrap.tb-theme-dark .tb-cycle-history-section,
body.tb-theme-dark .tb-cycle-history-card,
.tb-wrap.tb-theme-dark .tb-cycle-history-card{background:linear-gradient(180deg,rgba(15,23,42,.92) 0%,rgba(7,14,30,.98) 100%);border-color:rgba(148,163,184,.18);box-shadow:none;}
body.tb-theme-dark .tb-cycle-history-card.is-current,
.tb-wrap.tb-theme-dark .tb-cycle-history-card.is-current{background:linear-gradient(180deg,rgba(13,74,31,.36) 0%,rgba(7,14,30,.98) 100%);border-color:rgba(74,222,128,.35);box-shadow:0 16px 34px rgba(34,197,94,.08);}
body.tb-theme-dark .tb-cycle-history-card.is-setup-pending,
.tb-wrap.tb-theme-dark .tb-cycle-history-card.is-setup-pending{background:linear-gradient(180deg,rgba(69,39,0,.55) 0%,rgba(7,14,30,.98) 100%);border-color:rgba(245,158,11,.38);}
body.tb-theme-dark .tb-cycle-history-section-title,
.tb-wrap.tb-theme-dark .tb-cycle-history-section-title,
body.tb-theme-dark .tb-cycle-history-card-title,
.tb-wrap.tb-theme-dark .tb-cycle-history-card-title,
body.tb-theme-dark .tb-cycle-history-card-item strong,
.tb-wrap.tb-theme-dark .tb-cycle-history-card-item strong,
body.tb-theme-dark .tb-cycle-history-section-chip,
.tb-wrap.tb-theme-dark .tb-cycle-history-section-chip{color:#f8fafc !important;}
body.tb-theme-dark .tb-cycle-history-section-helper,
.tb-wrap.tb-theme-dark .tb-cycle-history-section-helper,
body.tb-theme-dark .tb-cycle-history-card-helper,
.tb-wrap.tb-theme-dark .tb-cycle-history-card-helper,
body.tb-theme-dark .tb-cycle-history-card-item span,
.tb-wrap.tb-theme-dark .tb-cycle-history-card-item span{color:#cbd5e1 !important;}
body.tb-theme-dark .tb-cycle-history-card-item,
.tb-wrap.tb-theme-dark .tb-cycle-history-card-item{background:rgba(255,255,255,.04);border-color:rgba(148,163,184,.18);}
body.tb-theme-dark .tb-cycle-history-chip.is-current,
.tb-wrap.tb-theme-dark .tb-cycle-history-chip.is-current{background:rgba(34,197,94,.16);border-color:rgba(74,222,128,.28);color:#bbf7d0;}
body.tb-theme-dark .tb-cycle-history-chip.is-pending,
.tb-wrap.tb-theme-dark .tb-cycle-history-chip.is-pending{background:rgba(245,158,11,.14);border-color:rgba(245,158,11,.32);color:#fde68a;}

/* fluxo rápido do novo ciclo: guia de configuração*/
.tb-cycle-setup-guide{border:1px solid #dbe7f3;border-radius:18px;background:linear-gradient(180deg,#f8fbff 0%,#ffffff 100%);}
.tb-cycle-setup-guide-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;}
.tb-cycle-setup-guide-title{font-size:16px;font-weight:800;color:#0f172a;line-height:1.2;}
.tb-cycle-setup-guide-helper{margin-top:4px;font-size:12px;line-height:1.5;color:#64748b;}
.tb-cycle-setup-guide-chip{background:#eef6ff;color:#1d4ed8;border-color:#bfdbfe;}
.tb-cycle-setup-guide-body{margin-top:12px;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,1fr);gap:12px;align-items:start;}
.tb-cycle-setup-guide-note{padding:12px 14px;border:1px solid #dbe7f3;border-radius:14px;background:#f8fbff;color:#334155;line-height:1.55;}
.tb-cycle-setup-guide-actions{display:grid;grid-template-columns:1fr;gap:10px;}
@media (max-width: 900px){
  .tb-cycle-setup-guide-body{grid-template-columns:1fr;}
}
body.tb-theme-dark .tb-cycle-setup-guide,
.tb-wrap.tb-theme-dark .tb-cycle-setup-guide{background:linear-gradient(180deg,rgba(15,23,42,.92) 0%,rgba(7,14,30,.98) 100%);border-color:rgba(148,163,184,.18);}
body.tb-theme-dark .tb-cycle-setup-guide-title,
.tb-wrap.tb-theme-dark .tb-cycle-setup-guide-title,
body.tb-theme-dark .tb-cycle-setup-guide-chip,
.tb-wrap.tb-theme-dark .tb-cycle-setup-guide-chip{color:#f8fafc;}
body.tb-theme-dark .tb-cycle-setup-guide-helper,
.tb-wrap.tb-theme-dark .tb-cycle-setup-guide-helper{color:#cbd5e1;}
body.tb-theme-dark .tb-cycle-setup-guide-note,
.tb-wrap.tb-theme-dark .tb-cycle-setup-guide-note{background:rgba(255,255,255,.04);border-color:rgba(148,163,184,.18);color:#e2e8f0;}


/* destaque do ciclo atual logo na entrada do portal do cliente*/
.tb-portal-cycle-focus-card{
  margin-top:14px;
  border:1px solid #dbe7f3;
  border-radius:20px;
  background:linear-gradient(135deg,#f8fbff 0%,#eef7ff 52%,#ffffff 100%);
  box-shadow:0 14px 36px rgba(15,23,42,.08);
}
.tb-portal-cycle-focus-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
}
.tb-portal-cycle-focus-eyebrow{
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#2563eb;
}
.tb-portal-cycle-focus-title{
  margin-top:4px;
  font-size:22px;
  line-height:1.25;
  font-weight:800;
  color:#0f172a;
}
.tb-portal-cycle-focus-helper{
  margin-top:6px;
  color:#475569;
  line-height:1.5;
}
.tb-portal-cycle-focus-chip{
  align-self:flex-start;
  background:#e0f2fe;
  color:#075985;
  border-color:#bae6fd;
  font-weight:800;
}
.tb-portal-cycle-focus-grid{
  margin-top:16px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.tb-portal-cycle-focus-item{
  display:flex;
  flex-direction:column;
  gap:10px;
  min-height:150px;
  border:1px solid rgba(148,163,184,.22);
  border-radius:18px;
  padding:16px;
  background:rgba(255,255,255,.78);
}
.tb-portal-cycle-focus-item.is-objective{
  background:linear-gradient(180deg,rgba(239,246,255,.95) 0%,rgba(255,255,255,.9) 100%);
}
.tb-portal-cycle-focus-item.is-report{
  background:linear-gradient(180deg,rgba(240,253,244,.92) 0%,rgba(255,255,255,.9) 100%);
}
.tb-portal-cycle-focus-item.is-audio{
  background:linear-gradient(180deg,rgba(250,245,255,.92) 0%,rgba(255,255,255,.9) 100%);
}
.tb-portal-cycle-focus-label{
  font-size:12px;
  font-weight:700;
  color:#475569;
  text-transform:uppercase;
  letter-spacing:.03em;
}
.tb-portal-cycle-focus-item strong{
  font-size:16px;
  line-height:1.55;
  color:#0f172a;
}
.tb-portal-cycle-focus-link{
  margin-top:auto;
  align-self:flex-start;
}
.tb-portal-cycle-focus-inline{
  margin-top:auto;
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  align-items:center;
}
.tb-portal-cycle-focus-footer{
  margin-top:14px;
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
}
.tb-portal-cycle-focus-stat{
  min-width:180px;
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:12px 14px;
  border-radius:14px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(148,163,184,.22);
}
.tb-portal-cycle-focus-stat span{
  font-size:12px;
  color:#475569;
}
.tb-portal-cycle-focus-stat strong{
  font-size:22px;
  line-height:1;
  color:#0f172a;
}
.tb-portal-cycle-focus-footer-link{
  margin-left:auto;
}
@media (max-width: 980px){
  .tb-portal-cycle-focus-grid{grid-template-columns:1fr;}
}
@media (max-width: 720px){
  .tb-portal-cycle-focus-title{font-size:18px;}
  .tb-portal-cycle-focus-footer{align-items:stretch;}
  .tb-portal-cycle-focus-stat{min-width:0;flex:1 1 100%;}
  .tb-portal-cycle-focus-footer-link{margin-left:0;width:100%;justify-content:center;}
}
body.tb-theme-dark .tb-portal-cycle-focus-card,
.tb-wrap.tb-theme-dark .tb-portal-cycle-focus-card{
  background:linear-gradient(180deg,rgba(15,23,42,.96) 0%,rgba(7,14,30,.98) 100%);
  border-color:rgba(148,163,184,.18);
  box-shadow:0 16px 38px rgba(2,6,23,.35);
}
body.tb-theme-dark .tb-portal-cycle-focus-title,
.tb-wrap.tb-theme-dark .tb-portal-cycle-focus-title,
body.tb-theme-dark .tb-portal-cycle-focus-item strong,
.tb-wrap.tb-theme-dark .tb-portal-cycle-focus-item strong,
body.tb-theme-dark .tb-portal-cycle-focus-stat strong,
.tb-wrap.tb-theme-dark .tb-portal-cycle-focus-stat strong,
body.tb-theme-dark .tb-portal-cycle-focus-chip,

.tb-portal-cycle-focus-card.is-setup-pending{border-color:#f59e0b;background:linear-gradient(180deg,#fff9ec 0%,#ffffff 100%);box-shadow:0 16px 38px rgba(245,158,11,.12);}
.tb-portal-cycle-focus-banner{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;margin-bottom:14px;padding:12px 14px;border:1px solid #fde68a;border-radius:14px;background:#fffbeb;color:#92400e;line-height:1.55;}
.tb-portal-cycle-focus-banner strong{font-size:13px;font-weight:800;color:#92400e;}
.tb-portal-cycle-focus-banner span{font-size:12px;color:#a16207;}
body.tb-theme-dark .tb-portal-cycle-focus-card.is-setup-pending,
.tb-wrap.tb-theme-dark .tb-portal-cycle-focus-card.is-setup-pending{background:linear-gradient(180deg,rgba(69,39,0,.55) 0%,rgba(7,14,30,.98) 100%);border-color:rgba(245,158,11,.38);box-shadow:0 16px 38px rgba(245,158,11,.14);}
body.tb-theme-dark .tb-portal-cycle-focus-banner,
.tb-wrap.tb-theme-dark .tb-portal-cycle-focus-banner{background:rgba(245,158,11,.12);border-color:rgba(245,158,11,.35);color:#fde68a;}
body.tb-theme-dark .tb-portal-cycle-focus-banner strong,
.tb-wrap.tb-theme-dark .tb-portal-cycle-focus-banner strong{color:#fef3c7;}
body.tb-theme-dark .tb-portal-cycle-focus-banner span,
.tb-wrap.tb-theme-dark .tb-portal-cycle-focus-banner span{color:#fde68a;}
.tb-wrap.tb-theme-dark .tb-portal-cycle-focus-chip{
  color:#f8fafc !important;
}
body.tb-theme-dark .tb-portal-cycle-focus-helper,
.tb-wrap.tb-theme-dark .tb-portal-cycle-focus-helper,
body.tb-theme-dark .tb-portal-cycle-focus-label,
.tb-wrap.tb-theme-dark .tb-portal-cycle-focus-label,
body.tb-theme-dark .tb-portal-cycle-focus-stat span,
.tb-wrap.tb-theme-dark .tb-portal-cycle-focus-stat span{
  color:#cbd5e1 !important;
}
body.tb-theme-dark .tb-portal-cycle-focus-item,
.tb-wrap.tb-theme-dark .tb-portal-cycle-focus-item,
body.tb-theme-dark .tb-portal-cycle-focus-stat,
.tb-wrap.tb-theme-dark .tb-portal-cycle-focus-stat{
  background:rgba(255,255,255,.04);
  border-color:rgba(148,163,184,.18);
}
body.tb-theme-dark .tb-portal-cycle-focus-eyebrow,
.tb-wrap.tb-theme-dark .tb-portal-cycle-focus-eyebrow{
  color:#93c5fd !important;
}
body.tb-theme-dark .tb-portal-cycle-focus-chip,

.tb-portal-cycle-focus-card.is-setup-pending{border-color:#f59e0b;background:linear-gradient(180deg,#fff9ec 0%,#ffffff 100%);box-shadow:0 16px 38px rgba(245,158,11,.12);}
.tb-portal-cycle-focus-banner{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;margin-bottom:14px;padding:12px 14px;border:1px solid #fde68a;border-radius:14px;background:#fffbeb;color:#92400e;line-height:1.55;}
.tb-portal-cycle-focus-banner strong{font-size:13px;font-weight:800;color:#92400e;}
.tb-portal-cycle-focus-banner span{font-size:12px;color:#a16207;}
body.tb-theme-dark .tb-portal-cycle-focus-card.is-setup-pending,
.tb-wrap.tb-theme-dark .tb-portal-cycle-focus-card.is-setup-pending{background:linear-gradient(180deg,rgba(69,39,0,.55) 0%,rgba(7,14,30,.98) 100%);border-color:rgba(245,158,11,.38);box-shadow:0 16px 38px rgba(245,158,11,.14);}
body.tb-theme-dark .tb-portal-cycle-focus-banner,
.tb-wrap.tb-theme-dark .tb-portal-cycle-focus-banner{background:rgba(245,158,11,.12);border-color:rgba(245,158,11,.35);color:#fde68a;}
body.tb-theme-dark .tb-portal-cycle-focus-banner strong,
.tb-wrap.tb-theme-dark .tb-portal-cycle-focus-banner strong{color:#fef3c7;}
body.tb-theme-dark .tb-portal-cycle-focus-banner span,
.tb-wrap.tb-theme-dark .tb-portal-cycle-focus-banner span{color:#fde68a;}
.tb-wrap.tb-theme-dark .tb-portal-cycle-focus-chip{
  background:rgba(59,130,246,.18);
  border-color:rgba(96,165,250,.35);
}


/* mobile: portal em 2 colunas nos menus + histórico de ciclos ajustado*/
.tb-client-cycle-collapsible{margin-top:14px;}
.tb-client-cycle-collapsible-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;}
.tb-client-cycle-collapsible-toggle{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid rgba(148,163,184,.18);border-radius:16px;background:#ffffff;color:#0f172a;text-align:left;font:inherit;cursor:pointer;box-shadow:0 8px 22px rgba(15,23,42,.04);min-width:0;}
.tb-client-cycle-collapsible-copy{display:flex;flex-direction:column;gap:4px;min-width:0;}
.tb-client-cycle-collapsible-title{font-size:15px;font-weight:800;line-height:1.2;color:#0f172a;}
.tb-client-cycle-collapsible-helper{font-size:12px;line-height:1.4;color:#64748b;}
.tb-client-cycle-quick-create{white-space:nowrap;min-height:48px;padding:0 18px;border-radius:16px;font-weight:800;box-shadow:0 10px 24px rgba(37,99,235,.16);}
.tb-client-cycle-collapsible-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px;}
.tb-client-cycle-toggle-pill{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:4px 8px;border-radius:999px;background:#f8fafc;border:1px solid #e2e8f0;color:#334155;font-size:11px;font-weight:700;line-height:1.1;}
.tb-client-cycle-toggle-pill.is-progress.is-success{background:#ecfdf5;border-color:#a7f3d0;color:#047857;}
.tb-client-cycle-toggle-pill.is-progress.is-warning{background:#fffbeb;border-color:#fde68a;color:#b45309;}
.tb-client-cycle-toggle-pill.is-progress.is-danger{background:#fef2f2;border-color:#fecaca;color:#b91c1c;}
.tb-client-cycle-toggle-pill.is-progress.is-neutral{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8;}
.tb-client-cycle-collapsible-icon{font-size:18px;width:18px;height:18px;transition:transform .2s ease;}
.tb-client-cycle-collapsible.is-open .tb-client-cycle-collapsible-icon{transform:rotate(180deg);}

.tb-client-cycle-collapsible.is-collapsed .tb-client-cycle-collapsible-body{display:none;}
.tb-client-cycle-collapsible.is-open .tb-client-cycle-collapsible-body{display:block;}

@media (max-width: 767px){
  .tb-client-cycle-collapsible-head{grid-template-columns:1fr;}
  .tb-client-cycle-collapsible-toggle{padding:12px 14px;}
  .tb-client-cycle-quick-create{width:100%;min-height:46px;}
  .tb-client-workspace-shell .tb-cycle-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .tb-client-workspace-shell .tb-cycle-history-grid{grid-template-columns:1fr !important;}
  .tb-client-workspace-shell .tb-cycle-history-card-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .tb-client-workspace-shell .tb-cycle-history-card-footer > *{width:100%;}
  .tb-client-portal .tb-cycle-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .tb-client-portal .tb-cycle-history-grid{grid-template-columns:1fr !important;}
  .tb-client-portal .tb-cycle-history-card-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .tb-client-portal .tb-client-tabs-modern{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
    overflow:visible !important;
  }
  .tb-client-portal .tb-client-tabs-modern .tb-tab{
    width:100% !important;
    min-width:0 !important;
    min-height:92px;
    padding:12px !important;
    flex-direction:column;
    align-items:flex-start !important;
    justify-content:flex-start !important;
    gap:8px !important;
  }
  .tb-client-portal .tb-client-tabs-modern .tb-tab .tb-tab-icon{
    width:32px;
    height:32px;
    min-width:32px;
    font-size:16px;
  }
  .tb-client-portal .tb-client-tabs-modern .tb-tab .tb-tab-label{
    width:100%;
    white-space:normal;
    word-break:break-word;
    font-size:13px;
    line-height:1.28;
  }
  .tb-client-portal .tb-client-tabs-modern .tb-tab .tb-tab-badge{
    top:10px;
    right:10px;
  }
}

body.tb-theme-dark .tb-client-cycle-collapsible-toggle,
.tb-wrap.tb-theme-dark .tb-client-cycle-collapsible-toggle{background:linear-gradient(180deg,rgba(15,23,42,.92) 0%,rgba(7,14,30,.98) 100%);border-color:rgba(148,163,184,.18);color:#f8fafc;box-shadow:none;}
body.tb-theme-dark .tb-client-cycle-collapsible-title,
.tb-wrap.tb-theme-dark .tb-client-cycle-collapsible-title{color:#f8fafc;}
body.tb-theme-dark .tb-client-cycle-collapsible-helper,
.tb-wrap.tb-theme-dark .tb-client-cycle-collapsible-helper,
body.tb-theme-dark .tb-client-cycle-collapsible-icon,
.tb-wrap.tb-theme-dark .tb-client-cycle-collapsible-icon{color:#cbd5e1;}
body.tb-theme-dark .tb-client-cycle-quick-create,
.tb-wrap.tb-theme-dark .tb-client-cycle-quick-create{box-shadow:0 12px 24px rgba(37,99,235,.22);}


/* colapsáveis independentes no portal do cliente*/
.tb-mobile-collapse{margin-top:14px;}
.tb-mobile-collapse-toggle{display:none;width:100%;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:1px solid rgba(148,163,184,.18);border-radius:16px;background:#ffffff;color:#0f172a;text-align:left;font:inherit;cursor:pointer;box-shadow:0 10px 26px rgba(15,23,42,.05);list-style:none;}
.tb-mobile-collapse-toggle::-webkit-details-marker{display:none;}
.tb-mobile-collapse > .tb-mobile-collapse-body{display:block;}
.tb-mobile-collapse-copy{display:flex;flex-direction:column;gap:4px;min-width:0;}
.tb-mobile-collapse-title{font-size:15px;font-weight:800;line-height:1.2;color:#0f172a;}
.tb-mobile-collapse-helper{font-size:12px;line-height:1.45;color:#64748b;}
.tb-mobile-collapse-icon{font-size:18px;width:18px;height:18px;transition:transform .2s ease;color:#64748b;}
.tb-mobile-collapse.is-open .tb-mobile-collapse-icon,
.tb-mobile-collapse[open] .tb-mobile-collapse-icon{transform:rotate(180deg);}
@media (max-width: 767px){
  .tb-mobile-collapse-toggle{display:flex;}
  .tb-mobile-collapse:not([open]) > .tb-mobile-collapse-body,
  .tb-mobile-collapse.is-collapsed > .tb-mobile-collapse-body{display:none;}
  .tb-mobile-collapse[open] > .tb-mobile-collapse-body,
  .tb-mobile-collapse.is-open > .tb-mobile-collapse-body{display:block;}
  .tb-mobile-collapse > .tb-mobile-collapse-body > .tb-card,
  .tb-mobile-collapse > .tb-mobile-collapse-body > .tb-cycle-history-section{margin-top:10px;}
}
body.tb-theme-dark .tb-mobile-collapse-toggle,
.tb-wrap.tb-theme-dark .tb-mobile-collapse-toggle{background:linear-gradient(180deg,rgba(15,23,42,.92) 0%,rgba(7,14,30,.98) 100%);border-color:rgba(148,163,184,.18);color:#f8fafc;box-shadow:none;}
body.tb-theme-dark .tb-mobile-collapse-title,
.tb-wrap.tb-theme-dark .tb-mobile-collapse-title{color:#f8fafc;}
body.tb-theme-dark .tb-mobile-collapse-helper,
.tb-wrap.tb-theme-dark .tb-mobile-collapse-helper,
body.tb-theme-dark .tb-mobile-collapse-icon,
.tb-wrap.tb-theme-dark .tb-mobile-collapse-icon{color:#cbd5e1;}


/* mobile terapeuta/cliente + código curto de ciclo*/
.tb-client-workspace-menu-btn.tb-client-workspace-edit-btn{
  background:#e8f7ea;
  border-color:#9dd9a4;
  color:#15803d;
  font-weight:800;
}
body.tb-theme-dark .tb-client-workspace-menu-btn.tb-client-workspace-edit-btn,
.tb-wrap.tb-theme-dark .tb-client-workspace-menu-btn.tb-client-workspace-edit-btn{
  background:rgba(22,163,74,.16);
  border-color:rgba(74,222,128,.35);
  color:#bbf7d0;
}
@media (max-width: 767px){
  .tb-client-workspace-menu-btn.tb-client-workspace-edit-btn{
    grid-column:1 / -1;
    width:100%;
  }
  .tb-client-portal .tb-mobile-collapse[data-mobile-collapse="portal-focus"]{
    display:none !important;
  }
  .tb-client-portal .tb-mobile-collapse.tb-mobile-collapse-portal{
    margin-bottom:10px;
  }
  .tb-client-portal .tb-mobile-collapse.tb-mobile-collapse-portal + .tb-tabpane{
    margin-top:10px;
  }
}
@media (max-width: 782px){
  .tb-client-portal .tb-client-portal-actions.tb-client-portal-actions-preview .tb-client-portal-back-icon .tb-client-portal-btn-label{
    display:block !important;
  }
}


/* card do cliente com fundo mais escuro*/
.tb-wrap.tb-theme-light .tb-client-card,
.tb-wrap.tb-theme-modern .tb-client-card{background:linear-gradient(180deg,#f3f7fd 0%,#e9f0fa 100%);border-color:#d8e2ef;}

/* mobile: validade e ciclos em 2 colunas no card do cliente*/
.tb-client-card-compact .tb-client-card-top-actions{align-self:stretch;}
.tb-client-card-compact .tb-client-card-open-btn{background:#e8f7ea;border-color:#9dd9a4;color:#15803d;box-shadow:none;}
.tb-client-card-compact .tb-client-card-open-btn:hover{background:#dcfce7;color:#166534;}
.tb-client-card-compact .tb-client-card-badges .tb-client-card-badge{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;padding:10px 12px;min-height:46px;height:auto;text-align:left;line-height:1.3;}
.tb-client-card-compact .tb-client-card-badges .tb-client-card-status{align-items:center;justify-content:center;text-align:center;}
.tb-client-card-compact .tb-client-card-badges .tb-client-card-badge-kicker{display:block;font-size:11px;font-weight:800;letter-spacing:.03em;text-transform:uppercase;opacity:.72;line-height:1.15;}
.tb-client-card-compact .tb-client-card-badges .tb-client-card-badge b{font-size:18px;line-height:1.1;}
.tb-client-card-compact .tb-client-card-badges .tb-client-card-badge small{display:block;font-size:13px;font-weight:700;line-height:1.25;opacity:.95;word-break:break-word;}
.tb-client-card-compact .tb-client-card-badges .tb-client-card-access b{font-size:16px;}
.tb-client-card-compact .tb-client-card-badges .tb-client-card-cycle b{font-size:16px;}
.tb-client-card-compact .tb-client-card-badges .tb-client-card-validity b,
.tb-client-card-compact .tb-client-card-badges .tb-client-card-validity.is-open b,
.tb-client-card-compact .tb-client-card-badges .tb-client-card-validity.is-expired b{font-size:15px;line-height:1.25;}
.tb-client-card-compact .tb-client-card-badges .tb-client-card-pending b{font-size:18px;}
@media (max-width: 767px){
  .tb-client-card.tb-client-card-compact{padding:16px 14px 14px;border-radius:22px;background:linear-gradient(180deg,#f2f6fc 0%,#e5edf8 100%);border:1px solid rgba(191,203,221,.95);box-shadow:0 14px 34px rgba(15,23,42,.08);}
  .tb-client-card-compact .tb-client-card-head{gap:14px;}
  .tb-client-card-compact .tb-client-card-main{padding-bottom:2px;border-bottom:1px solid rgba(203,213,225,.7);}
  .tb-client-card-compact .tb-client-card-name{font-size:20px;line-height:1.08;}
  .tb-client-card-compact .tb-client-card-meta{margin-top:8px;}
  .tb-client-card-compact .tb-client-card-head-right{width:100%;justify-content:stretch;align-items:stretch;}
  .tb-client-card-compact .tb-client-card-topline{display:flex;flex-direction:column;align-items:stretch;gap:10px;}
  .tb-client-card-compact .tb-client-card-badges{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;}
  .tb-client-card-compact .tb-client-card-badges .tb-client-card-badge{min-height:72px;border-radius:18px;padding:12px 14px;}
  .tb-client-card-compact .tb-client-card-badges .tb-client-card-status,
  .tb-client-card-compact .tb-client-card-badges .tb-client-card-pending{min-height:64px;align-items:center;justify-content:center;text-align:center;}
  .tb-client-card-compact .tb-client-card-badges .tb-client-card-validity,
  .tb-client-card-compact .tb-client-card-badges .tb-client-card-cycle{grid-column:auto;order:auto;min-height:72px;}
  .tb-client-card-compact .tb-client-card-badges .tb-client-card-cycle small{font-size:14px;line-height:1.2;}
  .tb-client-card-compact .tb-client-card-top-actions{width:100%;}
  .tb-client-card-compact .tb-client-card-open-btn-desktop{display:flex;width:100%;min-height:48px;padding:0 14px;font-size:15px;border-radius:16px;justify-content:center;text-align:center;}
}
body.tb-theme-dark .tb-client-card-compact .tb-client-card-open-btn,
.tb-wrap.tb-theme-dark .tb-client-card-compact .tb-client-card-open-btn{background:rgba(22,163,74,.16);border-color:rgba(74,222,128,.35);color:#bbf7d0;}
@media (max-width: 767px){
  body.tb-theme-dark .tb-client-card.tb-client-card-compact,
  .tb-wrap.tb-theme-dark .tb-client-card.tb-client-card-compact{background:linear-gradient(180deg,rgba(15,23,42,.92) 0%,rgba(7,14,30,.98) 100%);border-color:rgba(148,163,184,.18);box-shadow:none;}
  body.tb-theme-dark .tb-client-card-compact .tb-client-card-main,
  .tb-wrap.tb-theme-dark .tb-client-card-compact .tb-client-card-main{border-bottom-color:rgba(148,163,184,.18);}
  body.tb-theme-dark .tb-client-card-compact .tb-client-card-badges .tb-client-card-badge,
  .tb-wrap.tb-theme-dark .tb-client-card-compact .tb-client-card-badges .tb-client-card-badge{background:rgba(255,255,255,.04);border-color:rgba(148,163,184,.18);}
  body.tb-theme-dark .tb-client-card-compact .tb-client-card-badges .tb-client-card-status,
  .tb-wrap.tb-theme-dark .tb-client-card-compact .tb-client-card-badges .tb-client-card-status{color:#fff;}
  body.tb-theme-dark .tb-client-card-compact .tb-client-card-badges .tb-client-card-badge-kicker,
  .tb-wrap.tb-theme-dark .tb-client-card-compact .tb-client-card-badges .tb-client-card-badge-kicker{color:#cbd5e1;opacity:1;}
  body.tb-theme-dark .tb-client-card-compact .tb-client-card-badges .tb-client-card-badge b,
  body.tb-theme-dark .tb-client-card-compact .tb-client-card-badges .tb-client-card-badge small,
  .tb-wrap.tb-theme-dark .tb-client-card-compact .tb-client-card-badges .tb-client-card-badge b,
  .tb-wrap.tb-theme-dark .tb-client-card-compact .tb-client-card-badges .tb-client-card-badge small{color:#f8fafc;}
}


/* correção do fluxo de criação de ciclo e salvamento de sessão*/
.tb-wrap.tb-theme-light .tb-client-card,
.tb-wrap.tb-theme-modern .tb-client-card{
  background:linear-gradient(180deg,#dde7f2 0%,#d4e0ee 100%);
  border-color:#c4d2e2;
}
.tb-wrap.tb-theme-light .tb-client-card-compact .tb-client-card-badges .tb-client-card-badge:not(.tb-client-card-status):not(.tb-client-card-pending),
.tb-wrap.tb-theme-modern .tb-client-card-compact .tb-client-card-badges .tb-client-card-badge:not(.tb-client-card-status):not(.tb-client-card-pending){
  background:linear-gradient(180deg,#f8fbff 0%,#edf3ff 100%);
  border:1px solid rgba(170,186,208,.62);
  box-shadow:0 1px 0 rgba(255,255,255,.55) inset;
}
.tb-wrap.tb-theme-light .tb-client-card-compact .tb-client-card-badges .tb-client-card-validity,
.tb-wrap.tb-theme-modern .tb-client-card-compact .tb-client-card-badges .tb-client-card-validity{
  background:linear-gradient(180deg,#ecf8f0 0%,#dceddf 100%);
  border-color:rgba(125,177,136,.48);
  color:#166534;
}
.tb-wrap.tb-theme-light .tb-client-card-compact .tb-client-card-badges .tb-client-card-validity.is-open,
.tb-wrap.tb-theme-modern .tb-client-card-compact .tb-client-card-badges .tb-client-card-validity.is-open{
  background:linear-gradient(180deg,#eef6ff 0%,#dfeafb 100%);
  border-color:rgba(132,158,205,.52);
  color:#1d4ed8;
}
.tb-wrap.tb-theme-light .tb-client-card-compact .tb-client-card-badges .tb-client-card-validity.is-expired,
.tb-wrap.tb-theme-modern .tb-client-card-compact .tb-client-card-badges .tb-client-card-validity.is-expired{
  background:linear-gradient(180deg,#fff1f2 0%,#fee2e2 100%);
  border-color:rgba(239,68,68,.28);
  color:#b91c1c;
}
.tb-wrap.tb-theme-light .tb-client-card-compact .tb-client-card-badges .tb-client-card-cycle,
.tb-wrap.tb-theme-modern .tb-client-card-compact .tb-client-card-badges .tb-client-card-cycle{
  background:linear-gradient(180deg,#f3f7ff 0%,#e1ebff 100%);
  border-color:rgba(123,148,207,.5);
  color:#1d4ed8;
}

.tb-client-card-compact .tb-client-card-activity-card{margin-top:10px;padding:10px 12px;border-radius:16px;border:1px solid rgba(191,203,221,.95);background:linear-gradient(180deg,rgba(255,255,255,.82) 0%,rgba(247,250,255,.98) 100%);box-shadow:none;height:auto !important;min-height:0 !important;max-height:none !important;overflow:visible;white-space:normal;display:block;align-self:start;}
.tb-client-card-compact .tb-client-card-activity-card > *{white-space:normal;}
.tb-client-card-compact .tb-client-card-activity-card.is-empty{background:rgba(255,255,255,.74);}
.tb-client-card-compact .tb-client-card-activity-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:8px;}
.tb-client-card-compact .tb-client-card-activity-head > div{min-width:0;}
.tb-client-card-compact .tb-client-card-activity-title{font-size:14px;font-weight:800;line-height:1.15;color:#0f172a;}
.tb-client-card-compact .tb-client-card-activity-subtitle{margin-top:2px;font-size:10.5px;line-height:1.35;color:#64748b;}
.tb-client-card-compact .tb-client-card-activity-pill{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;padding:0 9px;border-radius:999px;background:#eef4ff;border:1px solid #c7d2fe;color:#29407a;font-size:11px;font-weight:800;flex:0 0 auto;}
.tb-client-card-compact .tb-client-card-activity-card .tb-client-card-activity-list{margin:0 auto;}
.tb-client-card-compact .tb-client-card-audio-monitor-card{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:16px;margin-bottom:8px;box-shadow:none;}
.tb-client-card-compact .tb-client-card-audio-monitor-copy{min-width:0;display:flex;flex-direction:column;gap:2px;}
.tb-client-card-compact .tb-client-card-audio-monitor-kicker{font-size:10.5px;line-height:1.2;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#64748b;}
.tb-client-card-compact .tb-client-card-audio-monitor-label{font-size:14px;line-height:1.2;color:#0f172a;word-break:break-word;}
.tb-client-card-compact .tb-client-card-audio-monitor-pill{padding:6px 10px;min-height:30px;font-size:10.5px;line-height:1.1;white-space:nowrap;}
.tb-client-card-compact .tb-client-card-activity-list{display:grid;gap:6px;}
.tb-client-card-compact .tb-client-card-activity-card.count-1 .tb-client-card-activity-list,
.tb-client-card-compact .tb-client-card-activity-card.count-2 .tb-client-card-activity-list,
.tb-client-card-compact .tb-client-card-activity-card.count-3 .tb-client-card-activity-list{align-items:start;}
.tb-client-card-compact .tb-client-card-activity-item{display:grid;grid-template-columns:28px minmax(0,1fr);gap:9px;align-items:flex-start;padding:8px 9px;border-radius:13px;border:1px solid rgba(214,224,238,.95);background:#fff;}
.tb-client-card-compact .tb-client-card-activity-item .tb-client-card-activity-time{grid-column:2;justify-self:start;margin-top:2px;font-size:11px;line-height:1.3;color:#64748b;font-weight:700;}
.tb-client-card-compact .tb-client-card-activity-icon{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:999px;font-size:14px;line-height:1;}
.tb-client-card-compact .tb-client-card-activity-copy{min-width:0;display:flex;flex-direction:column;gap:3px;}
.tb-client-card-compact .tb-client-card-activity-copy strong{font-size:13px;line-height:1.25;color:#0f172a;word-break:break-word;}
.tb-client-card-compact .tb-client-card-activity-detail{font-size:12px;line-height:1.35;color:#475569;word-break:break-word;}
.tb-client-card-compact .tb-client-card-activity-item.is-audio .tb-client-card-activity-icon{background:#dcfce7;color:#166534;}
.tb-client-card-compact .tb-client-card-activity-item.is-activity .tb-client-card-activity-icon{background:#eef2ff;color:#4338ca;}
.tb-client-card-compact .tb-client-card-activity-item.is-bonus .tb-client-card-activity-icon{background:#fff7ed;color:#c2410c;}
.tb-client-card-compact .tb-client-card-activity-item.is-audiobook .tb-client-card-activity-icon{background:#eff6ff;color:#1d4ed8;}
.tb-client-card-compact .tb-client-card-activity-item.is-neutral .tb-client-card-activity-icon{background:#e2e8f0;color:#475569;}
@media (min-width: 768px){
  .tb-client-card-compact .tb-client-card-activity-card{width:100%;}
  .tb-client-card-compact .tb-client-card-activity-card .tb-client-card-activity-list{margin:0;justify-content:start;}
  .tb-client-card-compact .tb-client-card-activity-list{grid-template-columns:repeat(3,minmax(0,1fr));}
  .tb-client-card-compact .tb-client-card-activity-card.count-1 .tb-client-card-activity-list{grid-template-columns:minmax(280px,420px);max-width:420px;}
  .tb-client-card-compact .tb-client-card-activity-card.count-2 .tb-client-card-activity-list{grid-template-columns:repeat(2,minmax(280px,420px));max-width:852px;}
  .tb-client-card-compact .tb-client-card-activity-card.count-3 .tb-client-card-activity-list{grid-template-columns:repeat(3,minmax(240px,1fr));max-width:1320px;}
  .tb-client-card-compact .tb-client-card-activity-item .tb-client-card-activity-time{justify-self:end;grid-column:1 / -1;margin-top:0;}
}
@media (max-width: 767px){
  .tb-client-card-compact .tb-client-card-activity-card{padding:9px 10px;border-radius:15px;margin-top:8px;height:auto !important;min-height:0 !important;max-height:none !important;overflow:visible;}
  .tb-client-card-compact .tb-client-card-activity-list{grid-template-columns:1fr;justify-content:center;}
  .tb-client-card-compact .tb-client-card-activity-head{margin-bottom:7px;gap:7px;}
  .tb-client-card-compact .tb-client-card-audio-monitor-card{padding:8px 9px;border-radius:13px;margin-bottom:7px;gap:8px;}
  .tb-client-card-compact .tb-client-card-audio-monitor-kicker{font-size:9.5px;}
  .tb-client-card-compact .tb-client-card-audio-monitor-label{font-size:12px;}
  .tb-client-card-compact .tb-client-card-audio-monitor-pill{padding:5px 8px;min-height:26px;font-size:9.5px;}
  .tb-client-card-compact .tb-client-card-activity-title{font-size:13px;}
  .tb-client-card-compact .tb-client-card-activity-subtitle{font-size:10px;line-height:1.3;}
  .tb-client-card-compact .tb-client-card-activity-pill{min-width:24px;height:24px;padding:0 8px;font-size:10.5px;}
  .tb-client-card-compact .tb-client-card-activity-list{gap:6px;}
  .tb-client-card-compact .tb-client-card-activity-item{padding:7px 8px;gap:8px;border-radius:12px;}
  .tb-client-card-compact .tb-client-card-activity-icon{width:26px;height:26px;font-size:12px;}
  .tb-client-card-compact .tb-client-card-activity-copy{gap:2px;}
  .tb-client-card-compact .tb-client-card-activity-copy strong{font-size:12px;line-height:1.2;}
  .tb-client-card-compact .tb-client-card-activity-detail{font-size:11px;line-height:1.3;}
  .tb-client-card-compact .tb-client-card-activity-item .tb-client-card-activity-time{margin-top:1px;font-size:10.5px;line-height:1.25;}
}
body.tb-theme-dark .tb-client-card-compact .tb-client-card-activity-card,
.tb-wrap.tb-theme-dark .tb-client-card-compact .tb-client-card-activity-card{background:rgba(15,23,42,.62);border-color:rgba(148,163,184,.18);}
body.tb-theme-dark .tb-client-card-compact .tb-client-card-activity-item,
.tb-wrap.tb-theme-dark .tb-client-card-compact .tb-client-card-activity-item{background:rgba(255,255,255,.03);border-color:rgba(148,163,184,.16);}
body.tb-theme-dark .tb-client-card-compact .tb-client-card-activity-title,
body.tb-theme-dark .tb-client-card-compact .tb-client-card-activity-copy strong,
body.tb-theme-dark .tb-client-card-compact .tb-client-card-audio-monitor-label,
.tb-wrap.tb-theme-dark .tb-client-card-compact .tb-client-card-activity-title,
.tb-wrap.tb-theme-dark .tb-client-card-compact .tb-client-card-activity-copy strong,
.tb-wrap.tb-theme-dark .tb-client-card-compact .tb-client-card-audio-monitor-label{color:#f8fafc;}
body.tb-theme-dark .tb-client-card-compact .tb-client-card-activity-subtitle,
body.tb-theme-dark .tb-client-card-compact .tb-client-card-activity-detail,
body.tb-theme-dark .tb-client-card-compact .tb-client-card-activity-time,
body.tb-theme-dark .tb-client-card-compact .tb-client-card-audio-monitor-kicker,
.tb-wrap.tb-theme-dark .tb-client-card-compact .tb-client-card-activity-subtitle,
.tb-wrap.tb-theme-dark .tb-client-card-compact .tb-client-card-activity-detail,
.tb-wrap.tb-theme-dark .tb-client-card-compact .tb-client-card-activity-time,
.tb-wrap.tb-theme-dark .tb-client-card-compact .tb-client-card-audio-monitor-kicker{color:#cbd5e1;}

.tb-wrap.tb-theme-light .tb-client-card-compact .tb-client-card-badges .tb-client-card-access,
.tb-wrap.tb-theme-modern .tb-client-card-compact .tb-client-card-badges .tb-client-card-access{
  background:linear-gradient(180deg,#f7f8ff 0%,#e9edff 100%);
  border-color:rgba(133,145,196,.42);
  color:#253263;
}
.tb-myq-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;max-width:420px;}
.tb-myq-actions .tb-myq-action-btn{width:100%;justify-content:center;text-align:center;}
@media (max-width: 767px){
  .tb-myq-header{align-items:stretch !important;}
  .tb-myq-actions{max-width:none;}
}


/* metas com auto-recuperação + portal garantido*/

.tb-client-workspace-menu-btn.tb-client-workspace-preview-btn{
  background:#ffffff;
  border-color:#93c5fd;
  color:#1d4ed8;
  font-weight:800;
}
.tb-client-workspace-menu-btn.tb-client-workspace-preview-btn:hover{
  background:#eff6ff;
  border-color:#60a5fa;
  color:#1d4ed8;
}
body.tb-theme-dark .tb-client-workspace-menu-btn.tb-client-workspace-preview-btn,
.tb-wrap.tb-theme-dark .tb-client-workspace-menu-btn.tb-client-workspace-preview-btn{
  background:rgba(37,99,235,.10);
  border-color:rgba(96,165,250,.45);
  color:#93c5fd;
}
.tb-cycle-history-chip.is-archived{background:#eef2ff;color:#4338ca;border-color:#c7d2fe;}
.tb-cycle-history-card-footer{flex-wrap:wrap;justify-content:flex-end;}
.tb-cycle-history-card-footer .tb-btn{min-width:132px;justify-content:center;}
.tb-cycle-history-delete{border-color:#fecaca;color:#b91c1c;background:#fff5f5;}
.tb-cycle-history-delete:hover{background:#fee2e2;color:#991b1b;}
.tb-cycle-history-archive{border-color:#dbeafe;color:#1d4ed8;background:#eff6ff;}
.tb-cycle-history-archive:hover{background:#dbeafe;color:#1d4ed8;}
body.tb-theme-dark .tb-cycle-history-chip.is-archived,
.tb-wrap.tb-theme-dark .tb-cycle-history-chip.is-archived{background:rgba(67,56,202,.18);border-color:rgba(129,140,248,.35);color:#c7d2fe;}
body.tb-theme-dark .tb-cycle-history-delete,
.tb-wrap.tb-theme-dark .tb-cycle-history-delete{background:rgba(127,29,29,.18);border-color:rgba(248,113,113,.28);color:#fca5a5;}
body.tb-theme-dark .tb-cycle-history-archive,
.tb-wrap.tb-theme-dark .tb-cycle-history-archive{background:rgba(30,64,175,.18);border-color:rgba(96,165,250,.28);color:#93c5fd;}



.tb-client-access-panel{margin-top:14px;border:1px solid #d7deea;border-radius:18px;padding:16px;background:#f8fafc;display:flex;flex-direction:column;gap:10px;}
.tb-client-access-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.tb-client-access-panel-kicker{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#64748b;font-weight:700;}
.tb-client-access-panel-period{font-size:20px;line-height:1.25;font-weight:800;color:#0f172a;margin-top:4px;}
.tb-client-access-panel-text{font-size:14px;line-height:1.6;color:#475569;}

.tb-client-cycle-bar-actions{display:grid;grid-template-columns:minmax(240px,1fr) auto auto;gap:10px;align-items:end;}
.tb-client-cycle-bar-actions .tb-input{min-width:0;grid-column:1 / 2;}
.tb-client-cycle-bar-actions select.tb-input{appearance:none;-webkit-appearance:none;min-height:48px;padding:11px 44px 11px 14px;border-radius:14px;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M3.25 5.25 7 9l3.75-3.75' stroke='%23526b84' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:14px;box-sizing:border-box;}
.tb-client-cycle-bar-actions select.tb-input::-ms-expand{display:none;}
#tbClientCycleSelect{min-width:240px;max-width:320px;width:100%;}

.tb-therapy-steps-tabs .tb-tab[data-tab="pre"]{border-color:#60a5fa;box-shadow:inset 0 0 0 1px rgba(96,165,250,.18);}
.tb-therapy-steps-tabs .tb-tab[data-tab="radar"]{border-color:#a78bfa;box-shadow:inset 0 0 0 1px rgba(167,139,250,.16);}
.tb-therapy-steps-tabs .tb-tab[data-tab="generator"]{border-color:#f59e0b;box-shadow:inset 0 0 0 1px rgba(245,158,11,.16);}
.tb-therapy-steps-tabs .tb-tab[data-tab="analysis"]{border-color:#14b8a6;box-shadow:inset 0 0 0 1px rgba(20,184,166,.14);}
.tb-therapy-steps-tabs .tb-tab[data-tab="review"]{border-color:#ec4899;box-shadow:inset 0 0 0 1px rgba(236,72,153,.14);}
.tb-therapy-steps-tabs .tb-tab[data-tab="delivery"]{border-color:#22c55e;box-shadow:inset 0 0 0 1px rgba(34,197,94,.14);}
.tb-therapy-steps-tabs .tb-tab.tb-tab-active[data-tab="pre"]{background:rgba(96,165,250,.10);}
.tb-therapy-steps-tabs .tb-tab.tb-tab-active[data-tab="radar"]{background:rgba(167,139,250,.10);}
.tb-therapy-steps-tabs .tb-tab.tb-tab-active[data-tab="generator"]{background:rgba(245,158,11,.12);}
.tb-therapy-steps-tabs .tb-tab.tb-tab-active[data-tab="analysis"]{background:rgba(20,184,166,.10);}
.tb-therapy-steps-tabs .tb-tab.tb-tab-active[data-tab="review"]{background:rgba(236,72,153,.10);}
.tb-therapy-steps-tabs .tb-tab.tb-tab-active[data-tab="delivery"]{background:rgba(34,197,94,.10);}

@media (max-width: 767px){
  .tb-client-card{padding:16px 14px;}
  .tb-client-workspace-header{padding:16px 14px !important;}
  .tb-client-workspace-shell .tb-therapist-card,
  .tb-client-portal .tb-therapist-card{
    padding:14px 14px !important;
    overflow:hidden;
  }
  .tb-client-workspace-shell .tb-therapist-card .tb-profileheader-left,
  .tb-client-portal .tb-therapist-card .tb-profileheader-left{
    min-width:0 !important;
    width:100% !important;
    display:grid !important;
    grid-template-columns:88px minmax(0,1fr);
    gap:12px !important;
    align-items:center !important;
  }
  .tb-client-workspace-shell .tb-therapist-card .tb-avatar,
  .tb-client-portal .tb-therapist-card .tb-avatar{
    width:88px !important;
    height:88px !important;
    min-width:88px !important;
    border-radius:16px !important;
    margin:0 !important;
    align-self:start !important;
  }
  .tb-client-workspace-shell .tb-therapist-card .tb-profileheader-text,
  .tb-client-portal .tb-therapist-card .tb-profileheader-text{
    min-width:0 !important;
    width:100% !important;
    max-width:none !important;
    padding:2px 2px 2px 0 !important;
    box-sizing:border-box !important;
    overflow-wrap:anywhere;
    word-break:break-word;
  }
  .tb-client-workspace-shell .tb-profileheader-text,
  .tb-client-portal .tb-profileheader-text{padding-right:0 !important;}
  .tb-client-workspace-shell .tb-profileheader-name,
  .tb-client-portal .tb-profileheader-name{line-height:1.2 !important;margin:0 0 4px !important;}
  .tb-client-workspace-shell .tb-profileheader-title,
  .tb-client-portal .tb-profileheader-title{margin-top:0 !important;line-height:1.3 !important;padding-inline:0 !important;}
  .tb-client-workspace-shell .tb-profileheader-bio,
  .tb-client-portal .tb-profileheader-bio{padding:4px 0 0 !important;line-height:1.5 !important;margin-top:2px !important;}
  .tb-client-workspace-shell .tb-therapist-card .tb-profileheader-links,
  .tb-client-portal .tb-therapist-card .tb-profileheader-links{
    padding:0;
    justify-content:flex-start !important;
    gap:8px !important;
    margin-top:12px !important;
  }
  .tb-client-access-panel{padding:14px;}
  .tb-client-cycle-bar-actions{grid-template-columns:repeat(2,minmax(0,1fr));}
  .tb-client-cycle-bar-actions .tb-input{grid-column:1 / -1;}
  .tb-client-cycle-collapsible-toggle{border-color:rgba(37,99,235,.28);box-shadow:0 0 0 3px rgba(37,99,235,.08), 0 12px 28px rgba(15,23,42,.06);}
}

body.tb-theme-dark .tb-btn-danger,
.tb-wrap.tb-theme-dark .tb-btn-danger{background:rgba(127,29,29,.18);border-color:rgba(248,113,113,.28);color:#fca5a5;}
body.tb-theme-dark .tb-btn-danger:hover,
.tb-wrap.tb-theme-dark .tb-btn-danger:hover{background:rgba(127,29,29,.28);color:#fecaca;}
body.tb-theme-dark .tb-client-access-panel,
.tb-wrap.tb-theme-dark .tb-client-access-panel{background:linear-gradient(180deg,rgba(15,23,42,.92) 0%,rgba(7,14,30,.98) 100%);border-color:rgba(148,163,184,.18);}
body.tb-theme-dark .tb-client-access-panel-kicker,
.tb-wrap.tb-theme-dark .tb-client-access-panel-kicker,
body.tb-theme-dark .tb-client-access-panel-text,
.tb-wrap.tb-theme-dark .tb-client-access-panel-text{color:#cbd5e1;}
body.tb-theme-dark .tb-client-access-panel-period,
.tb-wrap.tb-theme-dark .tb-client-access-panel-period{color:#f8fafc;}
body.tb-theme-dark .tb-therapy-steps-tabs .tb-tab[data-tab="pre"],
.tb-wrap.tb-theme-dark .tb-therapy-steps-tabs .tb-tab[data-tab="pre"]{border-color:rgba(96,165,250,.45);}
body.tb-theme-dark .tb-therapy-steps-tabs .tb-tab[data-tab="radar"],
.tb-wrap.tb-theme-dark .tb-therapy-steps-tabs .tb-tab[data-tab="radar"]{border-color:rgba(167,139,250,.45);}
body.tb-theme-dark .tb-therapy-steps-tabs .tb-tab[data-tab="generator"],
.tb-wrap.tb-theme-dark .tb-therapy-steps-tabs .tb-tab[data-tab="generator"]{border-color:rgba(245,158,11,.45);}
body.tb-theme-dark .tb-therapy-steps-tabs .tb-tab[data-tab="analysis"],
.tb-wrap.tb-theme-dark .tb-therapy-steps-tabs .tb-tab[data-tab="analysis"]{border-color:rgba(45,212,191,.45);}
body.tb-theme-dark .tb-therapy-steps-tabs .tb-tab[data-tab="review"],
.tb-wrap.tb-theme-dark .tb-therapy-steps-tabs .tb-tab[data-tab="review"]{border-color:rgba(244,114,182,.45);}
body.tb-theme-dark .tb-therapy-steps-tabs .tb-tab[data-tab="delivery"],
.tb-wrap.tb-theme-dark .tb-therapy-steps-tabs .tb-tab[data-tab="delivery"]{border-color:rgba(74,222,128,.45);}


/* validação visual do cliente + campo informativo*/
.tb-field-invalid,
.tb-input.tb-field-invalid,
.tb-textarea.tb-field-invalid,
select.tb-field-invalid{
  border-color:#dc2626 !important;
  box-shadow:0 0 0 3px rgba(220,38,38,.15) !important;
  background:#fff5f5 !important;
}
.tb-input-readonly{
  display:flex;
  align-items:center;
  min-height:42px;
  background:#f8fafc;
  color:#475569;
  cursor:default;
}
body.tb-theme-dark .tb-input-readonly,
.tb-wrap.tb-theme-dark .tb-input-readonly{
  background:#0f172a;
  color:#cbd5e1;
  border-color:#334155;
}

/* margem lateral dos cards de clientes no mobile*/
@media (max-width: 767px){
  #tbClientsCards,
  .tb-clients-cards-grid{
    padding-left:8px !important;
    padding-right:8px !important;
  }

  #tbClientsCards .tb-client-card,
  .tb-clients-cards-grid .tb-client-card{
    margin-left:0 !important;
    margin-right:0 !important;
    margin-bottom:14px !important;
    width:100% !important;
    border-left:1px solid #dbe4f0 !important;
    border-right:1px solid #dbe4f0 !important;
    border-radius:18px !important;
    box-shadow:none !important;
  }
}


/* =========================================================
 portal do cliente full width no mobile
 + botão instalar mais discreto no preview do terapeuta
=========================================================*/
@media (max-width: 768px){
  .tb-wrap.tb-client-portal{
    width:100vw !important;
    max-width:100vw !important;
    margin-top:0 !important;
    margin-bottom:0 !important;
    margin-left:calc(50% - 50vw) !important;
    margin-right:calc(50% - 50vw) !important;
    padding:0 !important;
    border-radius:0 !important;
  }

  .tb-wrap.tb-client-portal > .tb-card,
  .tb-client-portal > .tb-card{
    width:100vw !important;
    max-width:100vw !important;
    margin:0 !important;
    padding:18px 16px 24px !important;
    border-radius:0 !important;
    box-sizing:border-box !important;
  }
}

@media (max-width: 782px){
  .tb-client-portal .tb-client-portal-actions.tb-client-portal-actions-preview{
    grid-template-columns:repeat(3, minmax(0, 1fr)) auto !important;
  }

  .tb-client-portal .tb-client-portal-actions.tb-client-portal-actions-preview .tb-client-portal-install-btn-preview{
    grid-column:4 !important;
    grid-row:1 !important;
    width:46px !important;
    min-width:46px !important;
    height:46px !important;
    min-height:46px !important;
    padding:0 !important;
    border-radius:999px !important;
    justify-content:center !important;
    align-items:center !important;
    gap:0 !important;
    align-self:start !important;
    justify-self:end !important;
    background:#ffffff !important;
    border:1px solid #cbd5e1 !important;
    box-shadow:0 4px 14px rgba(15,23,42,.08) !important;
  }

  .tb-client-portal .tb-client-portal-actions.tb-client-portal-actions-preview .tb-client-portal-install-btn-preview .tb-client-portal-btn-label{
    display:none !important;
  }

  .tb-client-portal .tb-client-portal-actions.tb-client-portal-actions-preview .tb-client-portal-install-btn-preview .dashicons{
    width:18px !important;
    height:18px !important;
    font-size:18px !important;
    margin:0 !important;
  }
}

@media (max-width: 768px){
  #tbTherapistMini .tb-profileheader-text,
  .tb-therapist-card .tb-profileheader-text{
    padding-left:8px !important;
    padding-right:8px !important;
    box-sizing:border-box !important;
  }

  #tbTherapistMini .tb-profileheader-title,
  #tbTherapistMini .tb-profileheader-bio,
  .tb-therapist-card .tb-profileheader-title,
  .tb-therapist-card .tb-profileheader-bio{
    padding-left:8px !important;
    padding-right:8px !important;
    box-sizing:border-box !important;
  }
}

.tb-client-portal .tb-portal-proposal-shell{margin-top:14px;}
.tb-client-portal .tb-portal-proposal-list{display:grid;gap:14px;margin-top:14px;}
.tb-client-portal .tb-portal-proposal-item{border-radius:20px;border:1px solid #dbe4f0;background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);padding:18px 18px 16px;}
.tb-client-portal .tb-portal-proposal-item.status-approved{border-color:#86efac;background:linear-gradient(180deg,#f0fdf4 0%,#ecfdf5 100%);}
.tb-client-portal .tb-portal-proposal-item.status-review{border-color:#fdba74;background:linear-gradient(180deg,#fff7ed 0%,#fffbeb 100%);}
.tb-client-portal .tb-portal-proposal-item.status-viewed{border-color:#c7d2fe;background:linear-gradient(180deg,#eef2ff 0%,#f8faff 100%);}
.tb-client-portal .tb-portal-proposal-item.status-expired{border-color:#e5e7eb;background:linear-gradient(180deg,#f8fafc 0%,#f1f5f9 100%);opacity:.92;}
.tb-client-portal .tb-portal-proposal-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap;}
.tb-client-portal .tb-portal-proposal-title{font-size:20px;line-height:1.2;font-weight:800;color:#0f172a;}
.tb-client-portal .tb-portal-proposal-meta{margin-top:6px;line-height:1.5;}
.tb-client-portal .tb-portal-proposal-status{font-weight:800;}
.tb-client-portal .tb-portal-proposal-status.is-sent{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8;}
.tb-client-portal .tb-portal-proposal-status.is-viewed{background:#eef2ff;border-color:#c7d2fe;color:#4f46e5;}
.tb-client-portal .tb-portal-proposal-status.is-approved{background:#ecfdf5;border-color:#86efac;color:#166534;}
.tb-client-portal .tb-portal-proposal-status.is-review{background:#fff7ed;border-color:#fdba74;color:#c2410c;}
.tb-client-portal .tb-portal-proposal-status.is-expired{background:#f8fafc;border-color:#cbd5e1;color:#475569;}
.tb-client-portal .tb-portal-proposal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px;}
.tb-client-portal .tb-portal-proposal-mini{padding:12px 14px;border:1px solid #dbe4f0;border-radius:16px;background:rgba(255,255,255,.72);display:flex;flex-direction:column;gap:4px;}
.tb-client-portal .tb-portal-proposal-mini span{font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:#64748b;font-weight:700;}
.tb-client-portal .tb-portal-proposal-mini strong{font-size:17px;line-height:1.2;color:#0f172a;}
.tb-client-portal .tb-portal-proposal-block{margin-top:14px;padding:14px 16px;border:1px solid rgba(148,163,184,.22);border-radius:16px;background:rgba(255,255,255,.66);}
.tb-client-portal .tb-portal-proposal-bonus-list{margin:8px 0 0 18px;padding:0;display:grid;gap:6px;}
.tb-client-portal .tb-portal-proposal-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px;}
.tb-client-portal .tb-portal-proposal-form{margin-top:14px;padding-top:14px;border-top:1px dashed rgba(148,163,184,.32);}
body.tb-theme-dark .tb-client-portal .tb-portal-proposal-item,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-proposal-item{background:linear-gradient(180deg,rgba(15,23,42,.82) 0%,rgba(7,14,30,.98) 100%) !important;border-color:rgba(148,163,184,.2) !important;}
body.tb-theme-dark .tb-client-portal .tb-portal-proposal-title,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-proposal-title,
body.tb-theme-dark .tb-client-portal .tb-portal-proposal-mini strong,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-proposal-mini strong{color:#f8fafc !important;}
body.tb-theme-dark .tb-client-portal .tb-portal-proposal-mini,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-proposal-mini,
body.tb-theme-dark .tb-client-portal .tb-portal-proposal-block,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-proposal-block{background:rgba(255,255,255,.05) !important;border-color:rgba(255,255,255,.1) !important;}
@media (max-width: 980px){
  .tb-client-portal .tb-portal-proposal-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width: 960px){
  .tb-client-portal .tb-portal-proposal-grid{grid-template-columns:minmax(0,1fr);}
  .tb-client-portal .tb-portal-proposal-title{font-size:18px;}
}

/* =====================================================
 Financeiro > Propostas Terapêuticas
 Estúdio visual do terapeuta
=====================================================*/
.tb-finance-proposal-studio{padding:18px !important;background:linear-gradient(180deg,#f8fbff 0%,#ffffff 100%);overflow:hidden}
.tb-finance-proposal-hero{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;flex-wrap:wrap;padding:22px;border:1px solid #d9e8fb;border-radius:22px;background:linear-gradient(135deg,#17365c 0%,#24507c 55%,#3c7aa6 100%);color:#fff;box-shadow:0 18px 40px rgba(15,23,42,.12)}
.tb-finance-proposal-kicker{font-size:12px;letter-spacing:.08em;text-transform:uppercase;opacity:.82;margin-bottom:8px}
.tb-finance-proposal-hero-title{font-size:24px !important;line-height:1.15;margin:0;color:#fff}
.tb-finance-proposal-hero-copy{max-width:760px;color:rgba(255,255,255,.9)!important;margin-top:8px}
.tb-finance-proposal-hero-actions{display:flex;gap:10px;flex-wrap:wrap}
.tb-finance-proposal-hero .tb-btn{border-color:rgba(255,255,255,.28);background:rgba(255,255,255,.12);color:#fff}
.tb-finance-proposal-hero .tb-btn.tb-btn-primary{background:#fff;color:#16385b;border-color:#fff}
.tb-finance-proposal-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:14px}
.tb-finance-proposal-metric{border-radius:20px;padding:16px 18px;border:1px solid #d8e1ee;background:#fff;display:grid;gap:6px;box-shadow:0 8px 20px rgba(15,23,42,.04)}
.tb-finance-proposal-metric strong{font-size:28px;line-height:1.1;color:#122033}
.tb-finance-proposal-metric-label{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;color:#34506d}
.tb-finance-proposal-metric small{font-size:12px;color:#5a6c7e}
.tb-finance-proposal-metric.is-blue{background:linear-gradient(180deg,#edf5ff 0%,#ffffff 100%);border-color:#cfe1f8}
.tb-finance-proposal-metric.is-violet{background:linear-gradient(180deg,#f5efff 0%,#ffffff 100%);border-color:#ddd2fb}
.tb-finance-proposal-metric.is-green{background:linear-gradient(180deg,#edf9f1 0%,#ffffff 100%);border-color:#cce8d3}
.tb-finance-proposal-metric.is-amber{background:linear-gradient(180deg,#fff5e8 0%,#ffffff 100%);border-color:#f3d8b0}
.tb-finance-proposal-nav{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.tb-finance-proposal-navbtn{display:inline-flex;align-items:center;gap:8px;padding:12px 16px;border-radius:14px;border:1px solid #d7e3f0;background:#fff;font-weight:700;color:#1c3854;cursor:pointer}
.tb-finance-proposal-navbtn.is-active{background:#17365c;color:#fff;border-color:#17365c;box-shadow:0 10px 24px rgba(23,54,92,.18)}
.tb-finance-proposal-pane{display:none;margin-top:14px}
.tb-finance-proposal-pane.is-active{display:block}
.tb-finance-proposal-pane[data-pane="overview"] .tb-finance-proposal-split{grid-template-columns:1fr;align-items:start}
.tb-finance-proposal-pane[data-pane="overview"] .tb-finance-proposal-split .tb-finance-proposal-section-card{width:100%}
.tb-finance-proposal-split{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(280px,.95fr);gap:14px}
.tb-finance-proposal-split.is-template{grid-template-columns:minmax(0,1.7fr) minmax(280px,.9fr)}
.tb-finance-proposal-create-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(290px,.9fr);gap:14px}
.tb-finance-proposal-create-main,.tb-finance-proposal-side-stack{display:grid;gap:14px}
.tb-finance-proposal-create-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.tb-finance-proposal-section-card{border-radius:22px;padding:18px;border:1px solid #dde6f0;background:#fff;box-shadow:0 10px 26px rgba(15,23,42,.05)}
.tb-finance-proposal-section-card.is-blue{background:linear-gradient(180deg,#f1f7ff 0%,#ffffff 100%);border-color:#d6e6fb}
.tb-finance-proposal-section-card.is-violet{background:linear-gradient(180deg,#f6f2ff 0%,#ffffff 100%);border-color:#dfd6fb}
.tb-finance-proposal-section-card.is-green{background:linear-gradient(180deg,#eef9f2 0%,#ffffff 100%);border-color:#d0e7d9}
.tb-finance-proposal-section-card.is-amber{background:linear-gradient(180deg,#fff6ea 0%,#ffffff 100%);border-color:#efd8b8}
.tb-finance-proposal-section-card.is-neutral{background:linear-gradient(180deg,#f9fbfd 0%,#ffffff 100%);border-color:#dde6f0}
.tb-finance-proposal-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.tb-finance-proposal-section-title{font-size:18px;font-weight:900;color:#183653;line-height:1.2}
.tb-finance-proposal-section-copy{font-size:13px;color:#5f7387;margin-top:4px;line-height:1.55}
.tb-finance-proposal-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.tb-finance-proposal-form-grid label{font-weight:700;color:#26435f;display:block;margin:0 0 6px}
.tb-finance-proposal-form-grid .tb-input{border-radius:14px;min-height:46px;padding:11px 13px;background:#fff;border-color:#cfdceb;box-shadow:inset 0 1px 1px rgba(15,23,42,.02)}
.tb-finance-proposal-form-grid textarea.tb-input{min-height:120px;line-height:1.5}
.tb-finance-proposal-form-grid select.tb-input,
.tb-select-input{
  -webkit-appearance:none;
  appearance:none;
  padding-right:42px;
  background-color:#fff;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M3.25 5.25 7 9l3.75-3.75' stroke='%23526b84' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 14px center;
  background-size:14px 14px;
}
.tb-finance-proposal-form-grid select.tb-input::-ms-expand,
.tb-select-input::-ms-expand{display:none}
.tb-finance-package-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.tb-finance-proposal-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:14px}
.tb-finance-proposal-actions.is-vertical{flex-direction:column;align-items:stretch}
.tb-finance-proposal-actions.is-vertical .tb-btn{justify-content:center}
.tb-finance-proposal-actions .tb-muted{font-size:13px}
.tb-finance-proposal-tags{display:flex;gap:8px;flex-wrap:wrap}
.tb-finance-proposal-tag{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:#fff;border:1px solid #d7e3f0;color:#224260;font-weight:700;font-size:12px}
.tb-finance-proposal-note-box{margin-top:14px;padding:14px;border-radius:16px;background:rgba(255,255,255,.72);border:1px solid #d7e3f0;display:grid;gap:6px;color:#294764}
.tb-finance-proposal-flow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.tb-finance-proposal-flow-step{padding:14px;border-radius:18px;background:rgba(255,255,255,.82);border:1px solid #d9e8fb;display:grid;gap:6px}
.tb-finance-proposal-flow-step strong{color:#17365c;font-size:15px}
.tb-finance-proposal-flow-step small{color:#5a6e83;line-height:1.5}
.tb-finance-proposal-flow-number{width:34px;height:34px;border-radius:999px;background:#17365c;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:900}
.tb-finance-proposal-totalbox{display:grid;gap:10px;margin-top:4px}
.tb-finance-proposal-totalbox>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border-radius:16px;background:#fff;border:1px solid #dce7f2}
.tb-finance-proposal-totalbox span{font-weight:700;color:#3b556f}
.tb-finance-proposal-totalbox strong{font-size:20px;color:#17365c}
.tb-finance-proposal-bullets{display:grid;gap:8px;margin-top:12px;color:#50667c;line-height:1.55}
.tb-finance-proposal-list{display:grid;gap:12px}
.tb-finance-proposal-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:16px;border-radius:18px;background:#fff;border:1px solid #dbe4ef;align-items:flex-start}
.tb-finance-proposal-row.is-compact{padding:14px;background:rgba(255,255,255,.76)}
.tb-finance-proposal-row-title{font-size:16px;font-weight:900;color:#17365c;line-height:1.25}
.tb-finance-proposal-row-sub{margin-top:4px;color:#3f566f;font-weight:700}
.tb-finance-proposal-row-meta{margin-top:6px;color:#5d7084;font-size:12px;line-height:1.5}
.tb-finance-proposal-row-side{display:grid;gap:10px;justify-items:end;min-width:230px}
.tb-finance-proposal-row-buttons{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.tb-finance-proposal-status{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:999px;font-size:12px;font-weight:900;border:1px solid transparent}
.tb-finance-proposal-status.is-sent,.tb-finance-proposal-status.is-viewed{background:#eef5ff;color:#184e94;border-color:#d4e2fb}
.tb-finance-proposal-status.is-approved{background:#e9f7ec;color:#1e7a45;border-color:#cae5d1}
.tb-finance-proposal-status.is-review{background:#fff3e2;color:#9a5b00;border-color:#f2d4a0}
.tb-finance-proposal-status.is-expired{background:#f1f4f7;color:#5a6775;border-color:#dde3eb}
.tb-finance-proposal-status.is-draft{background:#f4f0ff;color:#6d42c7;border-color:#ddd2fb}
.tb-finance-proposal-empty{padding:20px;border-radius:18px;border:1px dashed #cfdae8;background:#fbfdff;color:#5c7087}
.tb-finance-proposal-sticky{position:sticky;top:14px}
.tb-finance-proposal-side-stack{align-content:start}
.tb-finance-proposal-create-side{min-width:0}
.tb-finance-proposal-mobile-overview{display:none}
.tb-finance-proposal-mobile-overview.is-visible{display:none}
.tb-finance-proposal-desktop-flow{display:block}
.tb-finance-mobile-collapse{margin-top:0}
.tb-finance-mobile-collapse .tb-mobile-collapse-body{margin-top:0}
.tb-finance-mobile-collapse .tb-finance-proposal-section-card{margin-top:10px}
.tb-finance-proposal-mobile-metrics-card .tb-finance-proposal-metrics{margin-top:0}
.tb-finance-proposal-pane .tb-finance-mobile-collapse-overview{margin-top:0}
@media (min-width: 768px){
  .tb-finance-mobile-collapse .tb-mobile-collapse-toggle{display:none !important}
  .tb-finance-mobile-collapse .tb-mobile-collapse-body{display:block !important}
  .tb-finance-mobile-collapse .tb-finance-proposal-section-card{margin-top:0}
}

@media (max-width: 960px){
  .tb-finance-proposal-metrics,
  .tb-finance-proposal-split,
  .tb-finance-proposal-create-layout,
  .tb-finance-proposal-create-two,
  .tb-finance-proposal-form-grid,
  .tb-finance-proposal-flow{grid-template-columns:1fr}
  .tb-finance-proposal-row{grid-template-columns:1fr}
  .tb-finance-proposal-row-side{min-width:0;justify-items:start}
  .tb-finance-proposal-row-buttons{justify-content:flex-start}
  .tb-finance-proposal-sticky{position:static}
  .tb-finance-proposal-studio>.tb-finance-proposal-metrics{display:none}
  .tb-finance-proposal-mobile-overview.is-visible{display:grid;gap:14px;margin-top:14px}
  .tb-finance-proposal-mobile-overview .tb-finance-proposal-metrics{display:grid;grid-template-columns:1fr;gap:12px;margin-top:0}
  .tb-finance-proposal-desktop-flow{display:none}
}

@media (max-width: 680px){
  .tb-finance-proposal-studio{padding:14px !important}
  .tb-finance-package-tools{display:grid;grid-template-columns:1fr;width:100%}
  .tb-finance-proposal-hero{padding:18px;border-radius:18px}
  .tb-finance-proposal-hero-title{font-size:21px !important}
  .tb-finance-proposal-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));position:relative;z-index:3}
  .tb-finance-proposal-navbtn{justify-content:center}
  .tb-finance-proposal-panes{position:relative;z-index:1}
  .tb-finance-proposal-pane{overflow:hidden}
  .tb-finance-proposal-split,
  .tb-finance-proposal-split.is-template,
  .tb-finance-proposal-create-layout,
  .tb-finance-proposal-create-two{display:flex;flex-direction:column;align-items:stretch;gap:14px}
  .tb-finance-proposal-split > *,
  .tb-finance-proposal-create-layout > *,
  .tb-finance-proposal-create-two > *{width:100%;max-width:100%;min-width:0}
  .tb-finance-proposal-split.is-template > .tb-finance-proposal-section-card:first-child{order:1}
  .tb-finance-proposal-side-stack{order:2;grid-template-columns:1fr}
  .tb-finance-proposal-form-grid{grid-template-columns:1fr}
  .tb-finance-proposal-flow{grid-template-columns:1fr}
  .tb-finance-proposal-form-grid .tb-col-span-2{grid-column:auto}
  .tb-finance-proposal-section-card{padding:15px;border-radius:18px}
  .tb-finance-proposal-row-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
  .tb-finance-proposal-row-buttons .tb-btn{justify-content:center}

  .tb-finance-mobile-collapse{margin-top:10px}
  .tb-finance-mobile-collapse .tb-mobile-collapse-toggle{
    padding:12px 14px;
    border-radius:18px;
    border-color:#d7e3f0;
    background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);
  }
  .tb-finance-mobile-collapse .tb-mobile-collapse-title{font-size:14px;color:#17365c}
  .tb-finance-mobile-collapse .tb-mobile-collapse-helper{font-size:11px;line-height:1.4}
  .tb-finance-mobile-collapse .tb-finance-proposal-section-card{padding:14px;border-radius:18px}
  .tb-finance-proposal-mobile-overview .tb-finance-proposal-flow,
  .tb-finance-proposal-mobile-overview .tb-finance-proposal-metrics.is-mobile{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .tb-finance-proposal-mobile-overview .tb-finance-proposal-flow-step{padding:12px;border-radius:16px;gap:5px}
  .tb-finance-proposal-mobile-overview .tb-finance-proposal-flow-step strong{font-size:14px;line-height:1.25}
  .tb-finance-proposal-mobile-overview .tb-finance-proposal-flow-step small{font-size:12px;line-height:1.45}
  .tb-finance-proposal-mobile-overview .tb-finance-proposal-flow-number{width:30px;height:30px;font-size:14px}
  .tb-finance-proposal-mobile-overview .tb-finance-proposal-metric{padding:13px 14px;border-radius:18px;gap:4px}
  .tb-finance-proposal-mobile-overview .tb-finance-proposal-metric strong{font-size:23px}
  .tb-finance-proposal-mobile-overview .tb-finance-proposal-metric-label{font-size:11px;line-height:1.3}
  .tb-finance-proposal-mobile-overview .tb-finance-proposal-metric small{font-size:11px;line-height:1.4}
  .tb-finance-proposal-mobile-metrics-card{padding:12px}
  .tb-finance-proposal-pane[data-pane="overview"] .tb-finance-mobile-collapse .tb-finance-proposal-tags{gap:8px}
  .tb-finance-proposal-pane[data-pane="overview"] .tb-finance-mobile-collapse .tb-finance-proposal-tag{font-size:11px;padding:7px 10px}
}

.tb-audiobook-stat-card{display:grid;gap:6px;padding:14px;border-radius:18px;background:linear-gradient(180deg,#f8fbff 0%,#ffffff 100%);border:1px solid #dbe7f3;min-height:124px}
.tb-audiobook-stat-label{font-size:12px;font-weight:700;color:#5f7287;text-transform:uppercase;letter-spacing:.04em}
.tb-audiobook-stat-value{font-size:28px;font-weight:900;color:#17365c;line-height:1.1}
.tb-audiobook-stat-helper{font-size:12px;color:#607487;line-height:1.5}
.tb-audiobook-therapist-summary-card{display:grid;gap:8px;padding:16px;border-radius:18px;background:linear-gradient(180deg,#eef6ff 0%,#ffffff 100%);border:1px solid #d4e4f7}
.tb-audiobook-therapist-summary-head{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:flex-start}
.tb-audiobook-therapist-summary-main{font-size:16px;font-weight:800;color:#17365c;line-height:1.35}
.tb-audiobook-therapist-summary-helper{font-size:13px;color:#5a7088;line-height:1.5}
.tb-audiobook-card.is-selected{border-color:#bfd8ff;box-shadow:0 10px 24px rgba(29,78,216,.08)}
.tb-audiobook-card-main{min-width:0;display:flex;gap:12px;align-items:flex-start}
.tb-audiobook-card-body{min-width:0;display:grid;gap:6px;flex:1}
.tb-audiobook-card-head{display:flex;gap:8px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap}
.tb-audiobook-card-title{font-weight:700;line-height:1.3}
.tb-audiobook-card-cover{width:84px;height:126px;flex:0 0 84px;border-radius:14px;overflow:hidden;background:#ffffff;border:1px solid #e5e7eb;display:flex;align-items:center;justify-content:center}
.tb-audiobook-card-cover.is-placeholder{background:#f1f5f9;font-size:28px;color:#64748b}
.tb-audiobook-card-description-wrap{position:relative;display:grid;gap:6px}
.tb-audiobook-card-description{line-height:1.55}
.tb-audiobook-desc-toggle{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;padding:4px 10px;border-radius:999px;border:1px solid #d6dfeb;background:#f8fbff;color:#36506d;font-size:11px;font-weight:700;line-height:1.2}
.tb-audiobook-desc-tooltip{display:block;position:static;padding:10px 12px;border-radius:14px;border:1px solid #d6dfeb;background:#ffffff;box-shadow:0 12px 28px rgba(15,23,42,.08);font-size:13px;line-height:1.6;color:#475569;white-space:pre-line}
.tb-audiobook-desc-tooltip[hidden]{display:none !important}
.tb-audiobook-card-actions-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:2px}
.tb-audiobook-card-actions-row .tb-btn{min-width:0}
.tb-audiobook-card-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:2px}
.tb-audiobook-card-stats .tb-chip{display:flex;align-items:center;justify-content:flex-start;width:100%;min-height:40px;white-space:normal;text-align:left;line-height:1.4}
.tb-audiobook-info-section + .tb-audiobook-info-section{margin-top:12px}
.tb-audiobook-status-chip{display:inline-flex;align-items:center;justify-content:center;padding:5px 10px;border-radius:999px;font-size:11px;font-weight:800;border:1px solid transparent;white-space:nowrap}
.tb-audiobook-status-chip.is-new{background:#eef2f7;color:#475569;border-color:#dbe3ec}
.tb-audiobook-status-chip.is-progress{background:#eff6ff;color:#1d4ed8;border-color:#cfe0fb}
.tb-audiobook-status-chip.is-done,.tb-audiobook-status-chip.is-completed{background:#eaf8ef;color:#1f7a45;border-color:#cfe9d6}
.tb-audiobook-therapist-item{display:grid;gap:6px;padding:14px;border-radius:16px;background:#fff;border:1px solid #e1e8f0}
.tb-audiobook-therapist-item-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;flex-wrap:wrap}
.tb-audiobook-therapist-item-meta{font-size:13px;color:#5c7086;line-height:1.55}
.tb-client-audiobook-panel .tb-audiobook-grid{grid-template-columns:1fr !important}

@media (max-width: 680px){
  .tb-audiobook-therapist-summary-head,
  .tb-audiobook-therapist-item-head{grid-template-columns:1fr;display:grid}
  .tb-audiobook-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .tb-audiobook-grid{grid-template-columns:1fr !important}
  .tb-audiobook-stat-value{font-size:24px}
  .tb-audiobook-card-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tb-audiobook-card-actions-row .tb-btn{width:100%;justify-content:center;text-align:center}
  .tb-client-audiobook-panel .tb-audiobook-card{grid-template-columns:1fr !important;gap:10px !important;padding:12px !important}
  .tb-client-audiobook-panel .tb-audiobook-check{margin:0 0 2px 0 !important;justify-self:flex-start}
  .tb-client-audiobook-panel .tb-audiobook-card-main{display:grid !important;grid-template-columns:1fr !important;gap:10px !important}
  .tb-client-audiobook-panel .tb-audiobook-card-cover{width:96px;height:144px;flex-basis:auto;justify-self:center;margin:0 auto}
  .tb-client-audiobook-panel .tb-audiobook-card-body{gap:5px !important}
  .tb-client-audiobook-panel .tb-audiobook-card-head{display:grid !important;grid-template-columns:1fr !important;gap:8px !important}
  .tb-client-audiobook-panel .tb-audiobook-card-title{font-size:15px;line-height:1.35}
  .tb-client-audiobook-panel .tb-audiobook-card-description{font-size:13px;line-height:1.5}
  .tb-client-audiobook-panel .tb-audiobook-desc-toggle{padding:4px 10px;font-size:11px}
  .tb-client-audiobook-panel .tb-audiobook-desc-tooltip{font-size:13px;line-height:1.55}
}


.tb-finance-proposal-hero-actions .tb-btn.is-active,
.tb-finance-proposal-navbtn.is-active{outline:0;box-shadow:0 10px 24px rgba(23,54,92,.18)}
.tb-finance-proposal-hero-actions .tb-btn.is-active{background:#fff;color:#16385b;border-color:#fff}


.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-focus-card,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-focus-card{background:linear-gradient(135deg,rgba(15,23,42,.92) 0%,rgba(30,41,59,.96) 100%) !important;border-color:rgba(148,163,184,.26) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-window-card,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-window-card{background:rgba(15,23,42,.88) !important;border-color:rgba(148,163,184,.24) !important;box-shadow:none !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-window-card.is-active,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-window-card.is-active{background:rgba(37,50,99,.34) !important;border-color:rgba(129,140,248,.42) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-window-card.is-warning,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-window-card.is-warning{background:rgba(120,53,15,.22) !important;border-color:rgba(245,158,11,.42) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-window-card.is-info,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-window-card.is-info{background:rgba(30,64,175,.18) !important;border-color:rgba(59,130,246,.34) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-window-card.is-success,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-window-card.is-success{background:rgba(20,83,45,.28) !important;border-color:rgba(34,197,94,.38) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-window-label,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-filter-field label,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-window-label,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-filter-field label{color:#cbd5e1 !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-window-value,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-window-value{color:#f8fafc !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-focus-card.is-success,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-focus-card.is-success{border-color:rgba(34,197,94,.38) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-focus-card.is-info,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-focus-card.is-info{border-color:rgba(59,130,246,.38) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-focus-card.is-warning,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-focus-card.is-warning{border-color:rgba(245,158,11,.42) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-board-wrap,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-board-wrap{border-top-color:rgba(148,163,184,.22) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-board-card,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-board-card,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-achievement-item,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-achievement-item,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-board-empty,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-board-empty{background:rgba(15,23,42,.92) !important;border-color:rgba(148,163,184,.24) !important;box-shadow:none !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-board-card.is-success,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-board-card.is-success,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-achievement-item.is-achieved,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-achievement-item.is-achieved{border-color:rgba(34,197,94,.38) !important;background:rgba(20,83,45,.28) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-board-card.is-info,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-board-card.is-info{border-color:rgba(59,130,246,.34) !important;background:rgba(30,64,175,.18) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-board-card.is-warning,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-board-card.is-warning{border-color:rgba(245,158,11,.42) !important;background:rgba(120,53,15,.22) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-board-title,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-achievement-title,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-board-title,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-achievement-title{color:#f8fafc !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-board-desc,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-board-kicker,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-board-empty,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-achievement-status,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-achievement-counter,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-board-desc,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-board-kicker,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-board-empty,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-achievement-status,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-achievement-counter{color:#cbd5e1 !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-board-meta span,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-board-meta span{background:rgba(30,41,59,.95) !important;border-color:rgba(148,163,184,.24) !important;color:#e2e8f0 !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-board-progress,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-achievement-progress,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-board-progress,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-achievement-progress{background:rgba(148,163,184,.18) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-focus-title,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-detail-title,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-focus-title,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-detail-title{color:#f8fafc !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-focus-desc,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-detail-section-text,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-focus-desc,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-detail-section-text{color:#cbd5e1 !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-focus-meta span,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-detail-meta span,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-focus-meta span,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-detail-meta span{background:rgba(37,99,235,.18) !important;border-color:rgba(59,130,246,.26) !important;color:#bfdbfe !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-detail-section,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-detail-section{background:rgba(15,23,42,.78) !important;border-color:rgba(148,163,184,.22) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-timeline-secondary,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-timeline-secondary{background:rgba(15,23,42,.92) !important;border-color:rgba(148,163,184,.32) !important;color:#e2e8f0 !important;}


@media (max-width: 560px){
  .tb-journey-boardgame-path{grid-template-columns:repeat(2,minmax(0,1fr));}
  .tb-journey-boardgame-step{min-height:116px;}
  .tb-journey-boardgame-guide-actions .tb-btn{width:100%;justify-content:center;}
  .tb-journey-surprise-grid{grid-template-columns:1fr;}
  .tb-journey-surprise-actions .tb-btn{width:100%;justify-content:center;}
}

.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-guide,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-guide{background:linear-gradient(180deg,rgba(15,23,42,.86) 0%,rgba(7,14,30,.98) 100%) !important;border-color:rgba(148,163,184,.18) !important;box-shadow:0 16px 36px rgba(0,0,0,.20);}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-score,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-guide-chips span,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-score,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-guide-chips span{background:rgba(37,99,235,.18) !important;border-color:rgba(59,130,246,.28) !important;color:#bfdbfe !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-title,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-guide-title,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-title,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-guide-title{color:#f8fafc !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-day,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-caption,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-note,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-guide-kicker,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-guide-text,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-guide-helper,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-day,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-caption,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-note,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-guide-kicker,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-guide-text,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-guide-helper{color:#cbd5e1 !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-step,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-step{background:rgba(15,23,42,.72) !important;border-color:rgba(148,163,184,.18) !important;color:#f8fafc !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-step.is-completed,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-step.is-completed{background:rgba(20,83,45,.55) !important;border-color:rgba(134,239,172,.45) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-step.is-current,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-step.is-current{background:rgba(30,41,59,.95) !important;border-color:rgba(96,165,250,.45) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-step.is-upcoming,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-step.is-upcoming{background:rgba(15,23,42,.55) !important;border-color:rgba(148,163,184,.18) !important;opacity:.9;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-step.is-attention,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-step.is-attention{background:rgba(120,53,15,.58) !important;border-color:rgba(252,211,77,.45) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-legend span,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-legend span{background:rgba(255,255,255,.05) !important;border-color:rgba(148,163,184,.18) !important;color:#cbd5e1 !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-track,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-bar,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-track,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-bar{background:rgba(148,163,184,.22) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-path::before,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-path::before{background:linear-gradient(90deg,rgba(59,130,246,.34) 0%,rgba(148,163,184,.18) 100%) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-surprise-card,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-surprise-card{background:rgba(15,23,42,.86) !important;border-color:rgba(148,163,184,.18) !important;box-shadow:0 16px 36px rgba(0,0,0,.20);}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-surprise-card.is-unlocked,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-surprise-card.is-unlocked{background:rgba(120,53,15,.58) !important;border-color:rgba(252,211,77,.45) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-surprise-card.is-locked,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-surprise-card.is-locked{background:rgba(15,23,42,.72) !important;border-color:rgba(148,163,184,.22) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-surprise-kicker,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-surprise-desc,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-surprise-kicker,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-surprise-desc{color:#cbd5e1 !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-surprise-title,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-surprise-title{color:#f8fafc !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-surprise-meta span,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-surprise-meta span{background:rgba(37,99,235,.18) !important;border-color:rgba(59,130,246,.28) !important;color:#bfdbfe !important;}


/* --------------------------------------------------------------------------*/
/* Performance safe mode (Safari / páginas densas)*/
/* --------------------------------------------------------------------------*/
.tb-wrap.tb-performance-safe.tb-theme-modern .tb-card,
.tb-wrap.tb-performance-safe.tb-theme-dark .tb-card,
.tb-wrap.tb-performance-safe .tb-central-video-card-caption,
.tb-wrap.tb-performance-safe .tb-sidebar,
.tb-wrap.tb-performance-safe .tb-modal-card,
.tb-wrap.tb-performance-safe .tb-client-card,
.tb-wrap.tb-performance-safe .tb-central-post-modern,
.tb-wrap.tb-performance-safe .tb-tutorial-card,
.tb-wrap.tb-performance-safe .tb-journey-board-card,
.tb-wrap.tb-performance-safe .tb-journey-achievement-item,
.tb-wrap.tb-performance-safe .tb-journey-surprise-card,
.tb-wrap.tb-performance-safe .tb-cycle-history-card,
.tb-wrap.tb-performance-safe .tb-portal-cycle-focus-card,
.tb-wrap.tb-performance-safe .tb-finance-proposal-hero,
.tb-wrap.tb-performance-safe .tb-finance-proposal-section-card{
  -webkit-backdrop-filter:none !important;
  backdrop-filter:none !important;
}

.tb-wrap.tb-performance-safe.tb-theme-modern .tb-card,
.tb-wrap.tb-performance-safe.tb-theme-modern .tb-sidebtn,
.tb-wrap.tb-performance-safe.tb-theme-modern .tb-client-card,
.tb-wrap.tb-performance-safe.tb-theme-modern .tb-central-post-modern,
.tb-wrap.tb-performance-safe.tb-theme-modern .tb-journey-board-card,
.tb-wrap.tb-performance-safe.tb-theme-modern .tb-journey-achievement-item,
.tb-wrap.tb-performance-safe.tb-theme-modern .tb-journey-surprise-card{
  background:rgba(255,255,255,.98) !important;
}

.tb-wrap.tb-performance-safe.tb-theme-dark .tb-card,
.tb-wrap.tb-performance-safe.tb-theme-dark .tb-sidebtn,
.tb-wrap.tb-performance-safe.tb-theme-dark .tb-client-card,
.tb-wrap.tb-performance-safe.tb-theme-dark .tb-central-post-modern,
.tb-wrap.tb-performance-safe.tb-theme-dark .tb-journey-board-card,
.tb-wrap.tb-performance-safe.tb-theme-dark .tb-journey-achievement-item,
.tb-wrap.tb-performance-safe.tb-theme-dark .tb-journey-surprise-card{
  background:rgba(15,23,42,.96) !important;
}

.tb-wrap.tb-performance-safe .tb-card,
.tb-wrap.tb-performance-safe .tb-client-card,
.tb-wrap.tb-performance-safe .tb-central-post-modern,
.tb-wrap.tb-performance-safe .tb-tutorial-card,
.tb-wrap.tb-performance-safe .tb-journey-board-card,
.tb-wrap.tb-performance-safe .tb-journey-achievement-item,
.tb-wrap.tb-performance-safe .tb-journey-surprise-card,
.tb-wrap.tb-performance-safe .tb-cycle-history-card,
.tb-wrap.tb-performance-safe .tb-portal-cycle-focus-card,
.tb-wrap.tb-performance-safe .tb-finance-proposal-hero,
.tb-wrap.tb-performance-safe .tb-finance-proposal-section-card,
.tb-wrap.tb-performance-safe .tb-central-item,
.tb-wrap.tb-performance-safe .tb-central-post,
.tb-wrap.tb-performance-safe .tb-audiobook-card,
.tb-wrap.tb-performance-safe .tb-bonus-audio-card{
  box-shadow:0 6px 16px rgba(15,23,42,.05) !important;
}

.tb-wrap.tb-performance-safe .tb-central-bell-alert{
  animation:none !important;
}

.tb-wrap.tb-performance-safe .tb-card,
.tb-wrap.tb-performance-safe .tb-client-card,
.tb-wrap.tb-performance-safe .tb-central-post,
.tb-wrap.tb-performance-safe .tb-central-post-modern,
.tb-wrap.tb-performance-safe .tb-tutorial-card,
.tb-wrap.tb-performance-safe .tb-journey-board-card,
.tb-wrap.tb-performance-safe .tb-journey-surprise-card,
.tb-wrap.tb-performance-safe .tb-cycle-history-card,
.tb-wrap.tb-performance-safe .tb-portal-cycle-focus-card{
  content-visibility:auto;
  contain-intrinsic-size:320px;
}

.tb-wrap.tb-performance-safe .tb-sidebtn,
.tb-wrap.tb-performance-safe .tb-btn,
.tb-wrap.tb-performance-safe .tb-client-card,
.tb-wrap.tb-performance-safe .tb-journey-achievement-item,
.tb-wrap.tb-performance-safe .tb-tutorial-card,
.tb-wrap.tb-performance-safe .tb-bonus-audio-card,
.tb-wrap.tb-performance-safe .tb-audiobook-card{
  transition:none !important;
}

/* Tabuleiro da jornada mais compacto*/
.tb-journey-boardgame-compact{padding:18px;display:grid;gap:14px;}
.tb-journey-boardgame-head-compact{align-items:center;gap:14px;}
.tb-journey-boardgame-head-main{display:grid;gap:4px;}
.tb-journey-boardgame-head-side{display:grid;gap:8px;justify-items:end;}
.tb-journey-boardgame-next{font-size:12px;line-height:1.4;color:#475569;text-align:right;}
.tb-journey-boardgame-path-compact{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;align-items:stretch;}
.tb-journey-boardgame-path-compact::before{top:23px;left:3%;right:3%;height:3px;}
.tb-journey-boardgame-step-compact{min-height:auto;padding:10px 10px 12px;gap:6px;justify-items:center;text-align:center;border-radius:18px;box-shadow:none;}
.tb-journey-boardgame-step-compact:hover{transform:translateY(-1px);box-shadow:none;}
.tb-journey-boardgame-step-compact .tb-journey-boardgame-badge,
.tb-journey-boardgame-step-compact .tb-journey-boardgame-caption,
.tb-journey-boardgame-step-compact .tb-journey-boardgame-track,
.tb-journey-boardgame-step-compact .tb-journey-boardgame-counter{display:none;}
.tb-journey-boardgame-step-compact .tb-journey-boardgame-icon{width:38px;height:38px;font-size:18px;}
.tb-journey-boardgame-step-compact .tb-journey-boardgame-day{font-size:11px;}
.tb-journey-boardgame-step-compact .tb-journey-boardgame-title{font-size:13px;line-height:1.25;max-width:100%;}
.tb-journey-boardgame-step-compact.is-current,
.tb-journey-boardgame-step-compact.is-attention{transform:translateY(-2px);box-shadow:0 12px 24px rgba(37,99,235,.10);}
.tb-journey-boardgame-step-compact.is-completed{background:#f0fdf4;border-color:#4ade80;}
.tb-journey-boardgame-step-compact.is-current{background:#eef2ff;border-color:#60a5fa;}
.tb-journey-boardgame-step-compact.is-upcoming{background:#f8fafc;border-color:#cbd5e1;}
.tb-journey-boardgame-step-compact.is-attention{background:#fff7ed;border-color:#f59e0b;}
.tb-journey-boardgame-detail{border:1px solid #d7deea;border-radius:20px;background:#f8fbff;padding:16px;display:grid;gap:12px;}
.tb-journey-boardgame-detail-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.tb-journey-boardgame-detail-title{font-size:18px;font-weight:800;line-height:1.25;color:#0f172a;}
.tb-journey-boardgame-detail-stage{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:999px;background:#eef2ff;border:1px solid #c7d2fe;color:#29407a;font-size:12px;font-weight:800;white-space:nowrap;}
.tb-journey-boardgame-detail-text{font-size:14px;line-height:1.6;color:#334155;}
.tb-journey-boardgame-detail-meta{display:flex;flex-wrap:wrap;gap:8px;}
.tb-journey-boardgame-detail-meta span{display:inline-flex;align-items:center;justify-content:center;padding:7px 10px;border-radius:999px;background:#fff;border:1px solid #d7deea;color:#475569;font-size:12px;font-weight:700;}
.tb-journey-boardgame-detail-track{display:grid;gap:8px;}
.tb-journey-boardgame-detail .tb-journey-boardgame-track{height:10px;}
.tb-journey-boardgame-detail .tb-journey-boardgame-counter{font-size:13px;}

@media (max-width: 1120px){
  .tb-journey-boardgame-path-compact{grid-template-columns:repeat(3,minmax(0,1fr));}
  .tb-journey-boardgame-path-compact::before{display:none;}
  .tb-journey-boardgame-head-side{justify-items:start;}
  .tb-journey-boardgame-next{text-align:left;}
}

@media (max-width: 680px){
  .tb-journey-boardgame-compact{padding:14px;}
  .tb-journey-boardgame-path-compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
  .tb-journey-boardgame-step-compact{padding:9px 8px 10px;}
  .tb-journey-boardgame-detail{padding:14px;}
  .tb-journey-boardgame-guide-actions .tb-btn{width:100%;justify-content:center;}
}

.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-detail,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-detail{background:rgba(15,23,42,.78) !important;border-color:rgba(148,163,184,.18) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-detail-title,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-detail-title{color:#f8fafc !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-detail-text,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-next,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-detail-text,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-next{color:#cbd5e1 !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-detail-meta span,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-detail-meta span{background:rgba(255,255,255,.05) !important;border-color:rgba(148,163,184,.18) !important;color:#cbd5e1 !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-detail-stage,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-detail-stage{background:rgba(37,99,235,.18) !important;border-color:rgba(59,130,246,.28) !important;color:#bfdbfe !important;}


/* Tabuleiro da jornada mais flat e sem sensação de card dentro de card*/
.tb-journey-boardgame-shell{gap:10px;}
.tb-journey-boardgame,.tb-journey-boardgame-guide{box-shadow:none;background:#fff;border-color:#e4eaf3;}
.tb-journey-boardgame-compact{gap:12px;}
.tb-journey-boardgame-bar{margin-top:8px;height:6px;}
.tb-journey-boardgame-bar span{height:6px;}
.tb-journey-boardgame-legend{margin-top:6px;gap:6px;}
.tb-journey-boardgame-legend span{padding:4px 8px;background:transparent;border-color:#dbe4f0;font-size:10px;}
.tb-journey-boardgame-path-compact{gap:6px;align-items:start;}
.tb-journey-boardgame-step-compact{min-height:auto;padding:0 6px 0;border:none;background:transparent !important;box-shadow:none !important;border-radius:0;gap:6px;justify-items:center;align-content:start;}
.tb-journey-boardgame-step-compact:hover,.tb-journey-boardgame-step-compact:focus-visible{transform:none;box-shadow:none;}
.tb-journey-boardgame-step-compact .tb-journey-boardgame-badge,
.tb-journey-boardgame-step-compact .tb-journey-boardgame-caption,
.tb-journey-boardgame-step-compact .tb-journey-boardgame-track,
.tb-journey-boardgame-step-compact .tb-journey-boardgame-counter{display:none;}
.tb-journey-boardgame-step-compact .tb-journey-boardgame-icon{width:42px;height:42px;background:#fff;border:1px solid #d7deea;box-shadow:0 2px 6px rgba(15,23,42,.04);}
.tb-journey-boardgame-step-compact .tb-journey-boardgame-day{font-size:11px;line-height:1.1;color:#64748b;}
.tb-journey-boardgame-step-compact .tb-journey-boardgame-title{font-size:12px;line-height:1.25;color:#64748b;font-weight:700;max-width:88px;}
.tb-journey-boardgame-step-compact.is-completed .tb-journey-boardgame-icon{background:#f0fdf4;border-color:#4ade80;}
.tb-journey-boardgame-step-compact.is-current .tb-journey-boardgame-icon{background:#eef2ff;border-color:#60a5fa;box-shadow:0 6px 16px rgba(37,99,235,.12);}
.tb-journey-boardgame-step-compact.is-attention .tb-journey-boardgame-icon{background:#fff7ed;border-color:#f59e0b;box-shadow:0 6px 16px rgba(245,158,11,.12);}
.tb-journey-boardgame-step-compact.is-completed .tb-journey-boardgame-day,
.tb-journey-boardgame-step-compact.is-completed .tb-journey-boardgame-title{color:#166534;}
.tb-journey-boardgame-step-compact.is-current .tb-journey-boardgame-day,
.tb-journey-boardgame-step-compact.is-current .tb-journey-boardgame-title{color:#1d4ed8;}
.tb-journey-boardgame-step-compact.is-attention .tb-journey-boardgame-day,
.tb-journey-boardgame-step-compact.is-attention .tb-journey-boardgame-title{color:#b45309;}
.tb-journey-boardgame-step-compact.is-upcoming .tb-journey-boardgame-icon{background:#f8fafc;border-color:#d7deea;}
.tb-journey-boardgame-detail{border:none;border-top:1px solid #e4eaf3;border-radius:0;background:transparent;padding:14px 0 0;gap:10px;}
.tb-journey-boardgame-detail-top{gap:10px;}
.tb-journey-boardgame-detail-title{font-size:17px;}
.tb-journey-boardgame-detail-stage{padding:6px 10px;background:transparent;border-color:#c7d2fe;}
.tb-journey-boardgame-detail-meta{gap:6px;}
.tb-journey-boardgame-detail-meta span{background:transparent;border-color:#e2e8f0;padding:6px 9px;}
.tb-journey-boardgame-detail-track{gap:6px;}
.tb-journey-boardgame-detail .tb-journey-boardgame-track{height:8px;}
.tb-journey-boardgame-note{margin-top:8px;padding:10px 12px;background:#fafcff;}
@media (max-width: 980px){
  .tb-journey-boardgame-step-compact{padding:0 4px;}
  .tb-journey-boardgame-step-compact .tb-journey-boardgame-title{max-width:none;}
}
@media (max-width: 640px){
  .tb-journey-boardgame-legend{display:none;}
  .tb-journey-boardgame-detail{padding-top:12px;}
}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-guide,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-guide{box-shadow:none !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-step-compact,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-step-compact{background:transparent !important;border:none !important;box-shadow:none !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-step-compact .tb-journey-boardgame-icon,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-step-compact .tb-journey-boardgame-icon{background:rgba(15,23,42,.86) !important;border-color:rgba(148,163,184,.22) !important;box-shadow:none !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-step-compact.is-completed .tb-journey-boardgame-icon,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-step-compact.is-completed .tb-journey-boardgame-icon{background:rgba(20,83,45,.62) !important;border-color:rgba(134,239,172,.45) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-step-compact.is-current .tb-journey-boardgame-icon,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-step-compact.is-current .tb-journey-boardgame-icon{background:rgba(37,99,235,.22) !important;border-color:rgba(96,165,250,.42) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-step-compact.is-attention .tb-journey-boardgame-icon,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-step-compact.is-attention .tb-journey-boardgame-icon{background:rgba(180,83,9,.28) !important;border-color:rgba(245,158,11,.40) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-detail,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-detail{background:transparent !important;border-top-color:rgba(148,163,184,.18) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-detail-meta span,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-detail-meta span{background:transparent !important;}

/* Programa Terapêutico com entrada única em Nova Atividade*/
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-section,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-section{background:transparent !important;border-color:rgba(148,163,184,.18) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-section[open],
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-section[open]{background:transparent !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-section-title,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-section-title{color:#f8fafc !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-section-helper,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-section-count,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-section-helper,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-section-count{color:#cbd5e1 !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-section-count,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-section-count{background:transparent !important;border-color:transparent !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-section-panel,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-section-panel{border-top-color:rgba(148,163,184,.14) !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-panel-empty,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-panel-empty{background:rgba(255,255,255,.03) !important;border-color:rgba(148,163,184,.18) !important;color:#cbd5e1 !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-history-wrap,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-history-wrap{border-top-color:rgba(148,163,184,.14) !important;}


/* Programa Terapêutico com Nova Atividade direta + Tabuleiro ainda mais flat*/
.tb-goal-create-wrap{display:flex;align-items:center;}
.tb-goal-create-wrap .tb-btn{min-width:0;}

.tb-journey-section-panel{padding-top:14px;}
.tb-journey-boardgame-shell{gap:6px;margin-top:8px;}
.tb-journey-boardgame{padding:12px 0 0;border:none;background:transparent;box-shadow:none;border-radius:0;}
.tb-journey-boardgame-head{padding:0 0 0 0;}
.tb-journey-boardgame-head-main .tb-journey-config-title{margin-bottom:0;}
.tb-journey-boardgame-head-side{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end;}
.tb-journey-boardgame-score{padding:6px 10px;font-size:11px;background:transparent;border-color:#d7deea;}
.tb-journey-boardgame-next{font-size:12px;color:#64748b;}
.tb-journey-boardgame-bar{margin-top:6px;height:4px;background:#e6edf6;}
.tb-journey-boardgame-bar span{height:4px;}
.tb-journey-boardgame-legend{display:none;}
.tb-journey-boardgame-path-compact{margin-top:10px;gap:4px;}
.tb-journey-boardgame-path::before{left:6%;right:6%;top:21px;height:2px;background:#e6edf6;}
.tb-journey-boardgame-step-compact{padding:0 2px;gap:4px;}
.tb-journey-boardgame-step-compact .tb-journey-boardgame-icon{width:36px;height:36px;font-size:15px;box-shadow:none;}
.tb-journey-boardgame-step-compact .tb-journey-boardgame-day{font-size:10px;}
.tb-journey-boardgame-step-compact .tb-journey-boardgame-title{font-size:11px;max-width:74px;}
.tb-journey-boardgame-detail{padding:10px 0 0;margin-top:8px;border-top:1px solid #edf2f8;gap:8px;}
.tb-journey-boardgame-detail-top{align-items:center;}
.tb-journey-boardgame-guide-kicker{display:none;}
.tb-journey-boardgame-detail-title{font-size:16px;}
.tb-journey-boardgame-detail-stage{padding:4px 8px;font-size:11px;}
.tb-journey-boardgame-detail-text{font-size:13px;line-height:1.5;color:#475569;}
.tb-journey-boardgame-detail-meta{gap:5px;}
.tb-journey-boardgame-detail-meta span{padding:5px 8px;font-size:11px;border-radius:999px;}
.tb-journey-boardgame-detail-track{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;}
.tb-journey-boardgame-detail .tb-journey-boardgame-track{height:6px;}
.tb-journey-boardgame-guide-helper{font-size:12px;line-height:1.45;}
.tb-journey-boardgame-guide-actions{gap:8px;}
.tb-journey-boardgame-guide-actions .tb-btn{padding-top:9px;padding-bottom:9px;}
.tb-journey-boardgame-note,.tb-journey-surprise-lane,.tb-journey-panel-empty{box-shadow:none;}

@media (max-width: 900px){
  .tb-journey-boardgame{padding-top:10px;}
  .tb-journey-boardgame-head-side{width:100%;justify-content:flex-start;}
  .tb-journey-boardgame-step-compact .tb-journey-boardgame-title{max-width:none;}
}

.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame{background:transparent !important;border:none !important;box-shadow:none !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-score,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-score{background:transparent !important;border-color:rgba(148,163,184,.22) !important;color:#cbd5e1 !important;}
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-boardgame-detail,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-boardgame-detail{border-top-color:rgba(148,163,184,.12) !important;}


@media (max-width: 1180px){
  .tb-journey-tabs{grid-template-columns:repeat(2,minmax(0,1fr));}
}

@media (max-width: 767px){
  .tb-journey-config-panel-body{padding-top:6px;}
  .tb-journey-config-card{padding:14px;border-radius:18px;}
  .tb-journey-config-card-title{font-size:15px;}
  .tb-journey-config-card-desc{font-size:14px;line-height:1.65;}
  .tb-journey-config-gate{font-size:13px;line-height:1.7;padding:12px;}
  .tb-journey-config-grid{grid-template-columns:1fr !important;gap:10px !important;}
  /* Mobile: painel de abas da Jornada do cliente em uma coluna para evitar cards espremidos.*/
  .tb-journey-sections-shell .tb-journey-tabs{grid-template-columns:1fr !important;gap:8px !important;}
  .tb-journey-tab{min-height:auto;padding:10px 10px;gap:8px;}
  .tb-journey-tab-icon{flex-basis:34px;width:34px;height:34px;font-size:16px;}
  .tb-journey-tab-title{font-size:12.5px;line-height:1.2;}
  .tb-journey-tab-meta{font-size:11px;}
  .tb-journey-config-grid > .tb-journey-chip-toggle{order:-1;}
  .tb-journey-config-grid .tb-input,
  .tb-journey-config-grid .tb-select,
  .tb-journey-config-grid select.tb-input{font-size:16px;}
  .tb-journey-source-checks{display:grid !important;grid-template-columns:1fr;gap:8px !important;}
  .tb-journey-config-card-smart .tb-pre{padding:12px;border-radius:14px;}
  .tb-goal-edit-panel .tb-goal-description,
  .tb-goal-edit-panel .tb-goal-clinical-focus{min-height:140px;}
}

.tb-goal-edit-panel .tb-goal-description,
.tb-goal-edit-panel .tb-goal-clinical-focus{min-height:140px;}

.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-config-gate,
.tb-wrap.tb-theme-dark .tb-client-card-panel .tb-journey-config-gate{background:rgba(255,255,255,.04) !important;border-color:rgba(148,163,184,.20) !important;color:#cbd5e1 !important;}

/* workspace fase 3: ciclo lazy + layout mais flat*/
.tb-client-workspace-shell[data-workspace-mode]{gap:0;}
.tb-client-workspace-shell .tb-client-workspace-header{position:relative;overflow:hidden;background:linear-gradient(180deg,rgba(255,255,255,.96) 0%,rgba(248,250,252,.92) 100%);}
.tb-client-workspace-shell .tb-client-workspace-menu{position:sticky;top:12px;z-index:9;padding-top:4px;background:linear-gradient(180deg,rgba(248,250,252,.98) 0%,rgba(248,250,252,.92) 70%,rgba(248,250,252,0) 100%);}
.tb-client-workspace-shell .tb-client-workspace-menu-btn{font-weight:700;}
.tb-client-workspace-shell .tb-client-workspace-menu-btn.is-active{box-shadow:0 0 0 2px rgba(37,50,99,.10) inset,0 8px 18px rgba(15,23,42,.08);}
.tb-client-workspace-shell #tbClientWorkspaceContent{margin-top:12px;}
.tb-client-workspace-shell #tbClientWorkspaceContent > .tb-card,
.tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-section{border-radius:18px;box-shadow:0 8px 22px rgba(15,23,42,.04);background:rgba(255,255,255,.92);border:1px solid rgba(148,163,184,.18);}
.tb-client-workspace-shell #tbClientWorkspaceContent .tb-card .tb-card,
.tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-section .tb-card{box-shadow:none;border-color:rgba(148,163,184,.18);background:rgba(255,255,255,.82);}
.tb-client-cycle-collapsible-body[data-loaded="0"]{min-height:0;}
.tb-client-cycle-collapsible-panels{display:grid;gap:12px;margin-top:12px;}

.tb-client-cycle-collapsible-panels.is-single{grid-template-columns:minmax(0,1fr);}
.tb-client-cycle-collapsible-panels.is-single > *{grid-column:1 / -1;min-width:0;width:100%;}
.tb-client-cycle-collapsible-panels.has-history > *{grid-column:1 / -1;min-width:0;width:100%;}
@media (min-width: 768px){
  .tb-client-cycle-collapsible-panels.has-history{grid-template-columns:minmax(0,1fr);align-items:start;}
  .tb-client-cycle-collapsible-panels.is-single{grid-template-columns:minmax(0,1fr);}
}
@media (max-width: 767px){
  .tb-client-workspace-shell .tb-client-workspace-menu{top:8px;}
}
body.tb-theme-dark .tb-client-workspace-shell .tb-client-workspace-menu,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell .tb-client-workspace-menu{background:linear-gradient(180deg,rgba(2,6,23,.96) 0%,rgba(2,6,23,.88) 70%,rgba(2,6,23,0) 100%);}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-card .tb-card,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-section .tb-card,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-card .tb-card,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-section .tb-card{background:rgba(15,23,42,.72);border-color:rgba(148,163,184,.16);}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent > .tb-card,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent > .tb-client-workspace-panel,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent > .tb-client-workspace-section,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent > .tb-card,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent > .tb-client-workspace-panel,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent > .tb-client-workspace-section{background:rgba(2,6,23,.72);border-color:rgba(148,163,184,.16);}


/* Workspace do cliente — fase 6: layout mais flat e menos card dentro de card*/
.tb-client-workspace-panel{
  margin-top:14px;
  padding:18px;
  border:1px solid rgba(148,163,184,.18);
  border-radius:18px;
  background:rgba(255,255,255,.92);
  box-shadow:0 8px 22px rgba(15,23,42,.04);
}
.tb-client-workspace-shell #tbClientWorkspaceContent > .tb-client-workspace-panel.tb-client-workspace-section{
  border-radius:18px;
  box-shadow:0 8px 22px rgba(15,23,42,.04);
}
.tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-panel .tb-card,
.tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-section .tb-card{
  box-shadow:none;
  border-color:rgba(148,163,184,.18);
  background:rgba(248,250,252,.72);
}
.tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-panel .tb-pre,
.tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-section .tb-pre{
  box-shadow:none;
  border-radius:16px;
  background:rgba(248,250,252,.82);
}
.tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-panel > :first-child,
.tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-section > :first-child{margin-top:0 !important;}
.tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-panel > :last-child,
.tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-section > :last-child{margin-bottom:0 !important;}
.tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-config-card,
.tb-client-workspace-shell #tbClientWorkspaceContent .tb-goal-card,
.tb-client-workspace-shell #tbClientWorkspaceContent .tb-bonus-audio-card,
.tb-client-workspace-shell #tbClientWorkspaceContent .tb-audiobook-card,
.tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card{
  box-shadow:none;
}
body.tb-theme-dark .tb-client-workspace-panel,
.tb-wrap.tb-theme-dark .tb-client-workspace-panel{
  background:rgba(2,6,23,.72);
  border-color:rgba(148,163,184,.16);
}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-panel .tb-card,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-panel .tb-pre,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-panel .tb-card,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-panel .tb-pre{
  background:rgba(15,23,42,.58);
  border-color:rgba(148,163,184,.16);
}
@media (max-width: 767px){
  .tb-client-workspace-panel{padding:14px;}
}


.tb-client-module-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid #e8edf5;}
.tb-client-module-head-copy{display:grid;gap:6px;min-width:0;}
.tb-client-module-title{font-size:17px;font-weight:800;line-height:1.2;color:#0f172a;}
.tb-client-module-desc{font-size:13px;line-height:1.55;color:#64748b;max-width:760px;}
.tb-client-module-head-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.tb-client-module-mini-badge{display:inline-flex;align-items:center;justify-content:center;padding:7px 11px;border-radius:999px;font-size:12px;font-weight:800;border:1px solid #d7deea;background:#f8fafc;color:#334155;}
.tb-client-module-mini-badge.is-success{background:#f0fdf4;border-color:#86efac;color:#166534;}
.tb-client-module-mini-badge.is-warning{background:#fffbeb;border-color:#fde68a;color:#92400e;}
.tb-client-module-callout{display:grid;gap:10px;margin-top:12px;padding:14px 16px;border:1px solid #d7deea;border-radius:16px;background:#f8fafc;}
.tb-client-module-callout.is-success{background:#f0fdf4;border-color:#86efac;}
.tb-client-module-callout.is-info{background:#f0f9ff;border-color:#7dd3fc;}
.tb-client-module-callout.is-warning{background:#fffbeb;border-color:#fde68a;}
.tb-client-module-callout-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;flex-wrap:wrap;}
.tb-client-module-callout-kicker{font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#475569;}
.tb-client-module-callout-title{font-size:18px;font-weight:800;line-height:1.2;color:#0f172a;margin-top:4px;}
.tb-client-module-callout-text{font-size:13px;line-height:1.55;color:#475569;}
.tb-client-module-callout-tags{display:flex;flex-wrap:wrap;gap:8px;}
.tb-client-module-callout-tags span{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;background:#fff;border:1px solid rgba(148,163,184,.24);font-size:12px;font-weight:700;color:#334155;}
.tb-client-module-callout-tags span.is-muted{background:rgba(255,255,255,.75);color:#64748b;}
.tb-client-module-chip{font-weight:800;}
.tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-section .tb-journey-summary-grid{gap:10px !important;}
.tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-section .tb-journey-summary-card{padding:12px 14px;}
.tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-section .tb-journey-timeline-head{align-items:flex-end;gap:12px;}
.tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-section .tb-journey-timeline-filters{gap:8px;}
.tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-section .tb-journey-filter-field{min-width:150px;}
.tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-section .tb-journey-config-panel{border-radius:16px;}
.tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-section .tb-journey-config-panel summary{padding:12px 14px;font-size:14px;}
.tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-section .tb-journey-config-panel-body{padding:0 14px 14px;}
.tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-section .tb-goal-card{padding:14px 15px;border-radius:16px;}
.tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-section .tb-goal-card-title{font-size:18px;}
.tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-section .tb-goal-card-subtitle{font-size:13px;line-height:1.5;}
body.tb-theme-dark .tb-client-module-title,.tb-wrap.tb-theme-dark .tb-client-module-title{color:#f8fafc;}
body.tb-theme-dark .tb-client-module-desc,.tb-wrap.tb-theme-dark .tb-client-module-desc{color:#cbd5e1;}
body.tb-theme-dark .tb-client-module-callout,.tb-wrap.tb-theme-dark .tb-client-module-callout{background:rgba(15,23,42,.56);border-color:rgba(148,163,184,.16);}
body.tb-theme-dark .tb-client-module-callout-tags span,.tb-wrap.tb-theme-dark .tb-client-module-callout-tags span{background:rgba(15,23,42,.58);border-color:rgba(148,163,184,.18);color:#e2e8f0;}
@media (max-width: 767px){
  .tb-client-module-head{margin-bottom:10px;padding-bottom:10px;}
  .tb-client-module-title{font-size:16px;}
  .tb-client-module-desc{font-size:12px;}
  .tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-section .tb-journey-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-section .tb-journey-summary-card.is-full{grid-column:1 / -1;}
}

.tb-client-module-chip-light{background:#fff;}
body.tb-theme-dark .tb-client-module-chip-light,
.tb-wrap.tb-theme-dark .tb-client-module-chip-light{background:rgba(255,255,255,.06);}

.tb-client-workspace-menu-btn .dashicons{font-size:16px;line-height:1;width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 16px;}
.tb-client-workspace-menu-btn span:last-child{display:inline-block;}
.tb-finance-proposal-row-buttons .tb-btn.is-danger{border-color:#fecaca;color:#b91c1c;background:#fff5f5;}
.tb-finance-proposal-row-buttons .tb-btn.is-danger:hover{border-color:#fca5a5;background:#fef2f2;color:#991b1b;}

.tb-client-capacity-badge{display:inline-flex;align-items:center;justify-content:space-between;gap:12px;min-width:190px;padding:10px 14px;border-radius:14px;border:1px solid rgba(59,130,246,.22);background:rgba(59,130,246,.08);color:#1d4ed8;line-height:1.1;}
.tb-client-capacity-badge .tb-client-capacity-copy{display:flex;flex-direction:column;justify-content:center;gap:4px;min-width:0;}
.tb-client-capacity-badge .tb-client-capacity-kicker{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;opacity:.78;}
.tb-client-capacity-badge b{font-size:22px;font-weight:800;color:#0f172a;flex:0 0 auto;}
.tb-client-capacity-badge small{font-size:12px;color:#475569;}
.tb-client-capacity-badge.is-full{background:rgba(148,163,184,.12);border-color:rgba(148,163,184,.3);color:#64748b;}
.tb-client-capacity-badge.is-full b,.tb-client-capacity-badge.is-full small{color:#64748b;}
.tb-btn.tb-btn-disabled,[disabled].tb-btn{opacity:.48;pointer-events:none;filter:saturate(.3);box-shadow:none;cursor:not-allowed;}
.tb-client-actions-toolbar{width:100%;justify-content:flex-end;}
.tb-client-actions-toolbar-item{flex:0 0 auto;}
@media (max-width: 767px){
  .tb-client-actions-toolbar{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;justify-content:center;gap:10px !important;width:100%;flex-direction:row !important;}
  .tb-client-actions-toolbar-item{display:flex;align-items:center;justify-content:center;text-align:center;width:100% !important;max-width:none;min-width:0;flex:0 0 auto;align-self:stretch;}
  .tb-client-actions-toolbar .tb-btn{display:flex;align-items:center;justify-content:center;min-height:72px;padding:12px 10px;font-size:14px;line-height:1.2;width:100%;}
  .tb-client-capacity-badge{min-width:0;width:100% !important;max-width:none;padding:10px 14px;align-items:center;text-align:left;border-radius:18px;min-height:72px;}
  .tb-client-capacity-badge .tb-client-capacity-copy{min-width:0;}
  .tb-client-capacity-badge .tb-client-capacity-kicker{white-space:normal;}
  .tb-client-capacity-badge b{font-size:20px;}
  .tb-client-capacity-badge small{font-size:11px;}
}


/* Alertas de novidades no portal do cliente*/
.tb-portal-alert-stack{
  display:grid;
  gap:12px;
  margin-top:14px;
}
.tb-portal-alert-card{
  display:grid;
  grid-template-columns:56px minmax(0,1fr) 28px;
  align-items:center;
  gap:14px;
  padding:16px 18px;
  border:1px solid #cbd5e1;
  border-radius:22px;
  background:#f8fafc;
  color:#0f172a;
  text-decoration:none;
  box-shadow:0 10px 24px rgba(15,23,42,.05);
}
.tb-portal-alert-card:hover{
  transform:translateY(-1px);
  box-shadow:0 14px 28px rgba(15,23,42,.08);
}
.tb-portal-alert-card.is-news,
.tb-portal-alert-card.is-video{
  border-color:#bfdbfe;
  background:#eff6ff;
}
.tb-portal-alert-card.is-warning{
  border-color:#fde68a;
  background:#fffbeb;
}
.tb-portal-alert-card.is-smart,
.tb-portal-alert-card.is-task{
  border-color:#bbf7d0;
  background:#f0fdf4;
}
.tb-portal-alert-icon{
  width:56px;
  height:56px;
  border-radius:18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(148,163,184,.24);
}
.tb-portal-alert-icon .dashicons{
  font-size:24px;
  width:24px;
  height:24px;
}
.tb-portal-alert-body{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.tb-portal-alert-badge{
  display:inline-flex;
  align-self:flex-start;
  padding:4px 10px;
  border-radius:999px;
  background:rgba(37,99,235,.10);
  color:#1d4ed8;
  font-size:12px;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.tb-portal-alert-card.is-warning .tb-portal-alert-badge{
  background:rgba(217,119,6,.12);
  color:#b45309;
}
.tb-portal-alert-card.is-smart .tb-portal-alert-badge,
.tb-portal-alert-card.is-task .tb-portal-alert-badge{
  background:rgba(4,120,87,.12);
  color:#047857;
}
.tb-portal-alert-title{
  font-size:18px;
  font-weight:800;
  line-height:1.25;
}
.tb-portal-alert-text{
  font-size:16px;
  font-weight:700;
  line-height:1.35;
}
.tb-portal-alert-helper{
  color:#475569;
  font-size:13px;
  line-height:1.45;
}
.tb-portal-alert-arrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#64748b;
}
@media (max-width: 767px){
  .tb-portal-alert-card{
    grid-template-columns:48px minmax(0,1fr) 22px;
    gap:12px;
    padding:14px 14px;
    border-radius:20px;
  }
  .tb-portal-alert-icon{
    width:48px;
    height:48px;
    border-radius:16px;
  }
  .tb-portal-alert-title{
    font-size:16px;
  }
  .tb-portal-alert-text{
    font-size:15px;
  }
  .tb-portal-alert-helper{
    font-size:12px;
  }
}

/* Lista de clientes colapsável*/
.tb-client-summary-accordion{display:flex;flex-direction:column;gap:12px}
.tb-client-summary-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-radius:18px;border:1px solid #dbe4f0;background:linear-gradient(180deg,#f8fbff 0%,#edf4ff 100%);color:#0f172a;text-align:left;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.tb-client-summary-toggle:hover{border-color:#93c5fd;box-shadow:0 10px 24px rgba(37,99,235,.08)}
.tb-client-summary-toggle:focus-visible{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.16)}
.tb-client-summary-toggle-copy{display:flex;flex-direction:column;gap:4px}
.tb-client-summary-toggle-copy b{font-size:16px;line-height:1.2}
.tb-client-summary-toggle-copy small{font-size:13px;color:#64748b}
.tb-client-summary-toggle-icon,.tb-client-card-toggle-icon{position:relative;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:999px;background:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8;flex:0 0 34px}
.tb-client-summary-toggle-icon::before,.tb-client-card-toggle-icon::before{content:'+';font-size:22px;line-height:1;font-weight:500}
.tb-client-summary-toggle.is-open .tb-client-summary-toggle-icon::before,.tb-client-card.is-expanded .tb-client-card-toggle-icon::before{content:'−'}
.tb-client-summary-panel{display:flex;flex-direction:column;gap:0}
.tb-client-summary-panel[hidden]{display:none !important}
.tb-client-card-accordion{padding:0;overflow:hidden;border-radius:0;box-shadow:none}
.tb-client-card-toggle{width:100%;padding:14px 16px;border:0;background:transparent;text-align:left;cursor:pointer}
.tb-client-card-toggle:hover{background:rgba(255,255,255,.28)}
.tb-client-card-toggle:focus-visible{outline:none;box-shadow:inset 0 0 0 2px rgba(37,99,235,.20)}
.tb-client-card-accordion .tb-client-card-head{margin:0}
.tb-client-card-accordion-panel{padding:0 16px 16px;border-top:1px solid rgba(148,163,184,.18)}
.tb-client-card-accordion-panel[hidden]{display:none !important}
.tb-client-card-accordion-panel.is-open{display:block}
.tb-client-accordion-body-inner{display:flex;flex-direction:column;gap:12px;padding-top:14px}
.tb-client-accordion-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.tb-client-accordion-info-card{display:flex;flex-direction:column;gap:6px;padding:12px 14px;border-radius:16px;border:1px solid rgba(148,163,184,.22);background:#f8fafc;min-height:110px}
.tb-client-accordion-info-card.is-open{background:#eff6ff;border-color:#bfdbfe}
.tb-client-accordion-info-card.is-expired,.tb-client-accordion-info-card.is-risk{background:#fff1f2;border-color:#fecdd3}
.tb-client-accordion-info-card.is-warning{background:#fffbeb;border-color:#fde68a}
.tb-client-accordion-info-card.is-cycle{background:#f8fafc;border-color:#dbe4f0}
.tb-client-accordion-info-card.is-journey{background:#f0fdf4;border-color:#bbf7d0}
.tb-client-accordion-info-title{font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#64748b}
.tb-client-accordion-info-value{font-size:15px;font-weight:800;line-height:1.3;color:#0f172a}
.tb-client-accordion-info-helper{font-size:12px;line-height:1.45;color:#475569}
.tb-client-card-head--accordion-clean{align-items:center;gap:12px}
.tb-client-card-main--accordion-clean{display:flex;flex-direction:column;gap:6px;min-width:0}
.tb-client-card-name-row--accordion-clean{display:block}
.tb-client-card-meta--accordion-clean{font-size:13px;color:#64748b}
.tb-client-card-head-right--accordion-clean{display:flex;align-items:center;justify-content:center;align-self:center}
.tb-client-accordion-actions{display:flex;gap:8px;flex-wrap:wrap}
.tb-client-accordion-empty{margin:0}
.tb-client-card.is-expanded{box-shadow:none;border-color:#bfd2ea}
.tb-client-summary-panel .tb-client-card-accordion + .tb-client-card-accordion{margin-top:-1px}
.tb-client-summary-panel .tb-client-card-accordion:first-child{border-top-left-radius:18px;border-top-right-radius:18px}
.tb-client-summary-panel .tb-client-card-accordion:last-child{border-bottom-left-radius:18px;border-bottom-right-radius:18px}
body.tb-theme-dark .tb-client-accordion-info-card,
.tb-wrap.tb-theme-dark .tb-client-accordion-info-card{background:rgba(15,23,42,.86);border-color:rgba(148,163,184,.16)}
body.tb-theme-dark .tb-client-accordion-info-card.is-open,
.tb-wrap.tb-theme-dark .tb-client-accordion-info-card.is-open{background:rgba(29,78,216,.18);border-color:rgba(96,165,250,.28)}
body.tb-theme-dark .tb-client-accordion-info-card.is-expired,
body.tb-theme-dark .tb-client-accordion-info-card.is-risk,
.tb-wrap.tb-theme-dark .tb-client-accordion-info-card.is-expired,
.tb-wrap.tb-theme-dark .tb-client-accordion-info-card.is-risk{background:rgba(127,29,29,.22);border-color:rgba(248,113,113,.24)}
body.tb-theme-dark .tb-client-accordion-info-card.is-warning,
.tb-wrap.tb-theme-dark .tb-client-accordion-info-card.is-warning{background:rgba(120,53,15,.22);border-color:rgba(251,191,36,.22)}
body.tb-theme-dark .tb-client-accordion-info-card.is-journey,
.tb-wrap.tb-theme-dark .tb-client-accordion-info-card.is-journey{background:rgba(6,78,59,.22);border-color:rgba(52,211,153,.2)}
body.tb-theme-dark .tb-client-accordion-info-title,
body.tb-theme-dark .tb-client-card-meta--accordion-clean,
.tb-wrap.tb-theme-dark .tb-client-accordion-info-title,
.tb-wrap.tb-theme-dark .tb-client-card-meta--accordion-clean{color:#cbd5e1}
body.tb-theme-dark .tb-client-accordion-info-value,
body.tb-theme-dark .tb-client-accordion-info-helper,
.tb-wrap.tb-theme-dark .tb-client-accordion-info-value,
.tb-wrap.tb-theme-dark .tb-client-accordion-info-helper{color:#e5eefc}
@media (max-width: 900px){
  .tb-client-summary-toggle,
  .tb-client-card-toggle{padding:14px}
  .tb-client-card-accordion-panel{padding:0 14px 14px}
  .tb-client-accordion-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tb-client-accordion-info-card{min-height:0}
  .tb-client-accordion-actions{flex-direction:column}
  .tb-client-accordion-actions .tb-btn,
  .tb-client-accordion-actions a.tb-btn{width:100%;justify-content:center;text-align:center}
}
@media (max-width: 560px){
  .tb-client-accordion-summary-grid{grid-template-columns:1fr}
  .tb-client-card-head--accordion-clean{align-items:flex-start}
  .tb-client-card-head-right--accordion-clean{align-self:flex-start}
  .tb-client-card-meta--accordion-clean{font-size:12px;line-height:1.45}
}
body.tb-theme-dark .tb-client-summary-toggle,
.tb-wrap.tb-theme-dark .tb-client-summary-toggle{background:linear-gradient(180deg,rgba(15,23,42,.92) 0%,rgba(10,18,34,.98) 100%);border-color:rgba(148,163,184,.18);color:#e5eefc}
body.tb-theme-dark .tb-client-summary-toggle-copy small,
.tb-wrap.tb-theme-dark .tb-client-summary-toggle-copy small{color:#cbd5e1}
body.tb-theme-dark .tb-client-summary-toggle-icon,
body.tb-theme-dark .tb-client-card-toggle-icon,
.tb-wrap.tb-theme-dark .tb-client-summary-toggle-icon,
.tb-wrap.tb-theme-dark .tb-client-card-toggle-icon{background:rgba(30,41,59,.92);border-color:rgba(96,165,250,.28);color:#bfdbfe}
body.tb-theme-dark .tb-client-card-toggle:hover,
.tb-wrap.tb-theme-dark .tb-client-card-toggle:hover{background:rgba(148,163,184,.06)}
body.tb-theme-dark .tb-client-card-accordion-panel,
.tb-wrap.tb-theme-dark .tb-client-card-accordion-panel{border-top-color:rgba(148,163,184,.16)}

/* lista de clientes no layout enxuto do acordeon de referência*/
#tbClientsCards.tb-clients-cards-grid{
  gap:0;
  border:1px solid #d8e2f0;
  border-radius:22px;
  overflow:hidden;
  background:#ffffff;
}
#tbClientsCards .tb-client-card-accordion{
  border:0;
  border-top:1px solid #d8e2f0;
  border-radius:0;
  background:#ffffff;
  box-shadow:none;
  padding:0;
  margin:0 !important;
}
#tbClientsCards .tb-client-card-accordion:first-child{border-top:0;}
#tbClientsCards .tb-client-card-accordion:nth-child(odd),
#tbClientsCards .tb-client-card-accordion:nth-child(even){background:#ffffff;border-color:#d8e2f0;}
#tbClientsCards .tb-client-card-accordion:nth-child(odd) .tb-pre,
#tbClientsCards .tb-client-card-accordion:nth-child(even) .tb-pre{background:#f8fafc;}
#tbClientsCards .tb-client-card-accordion.is-expanded{box-shadow:none;border-color:#d8e2f0;}

#tbClientsCards .tb-client-list-row-toggle{padding:0;background:transparent;}
#tbClientsCards .tb-client-list-row-toggle:hover{background:#f8fafc;}
#tbClientsCards .tb-client-list-row-toggle:focus-visible{outline:none;box-shadow:inset 0 0 0 2px rgba(37,99,235,.14);}
#tbClientsCards .tb-client-list-row-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:12px 18px;
}
#tbClientsCards .tb-client-list-row-main{min-width:0;flex:1 1 auto;}
#tbClientsCards .tb-client-list-row-main .tb-client-card-name{
  font-size:18px;
  line-height:1.2;
  margin:0;
  color:#0f172a;
}
#tbClientsCards .tb-client-list-row-meta{
  margin-top:6px;
  font-size:13px;
  line-height:1.45;
  color:#64748b;
}
#tbClientsCards .tb-client-list-row-aside{
  display:flex;
  align-items:center;
  gap:14px;
  flex:0 0 auto;
}

#tbClientsCards .tb-client-card.has-therapist-alert{
  border-color:rgba(220,38,38,.35);
  box-shadow:0 16px 34px rgba(220,38,38,.10), 0 10px 26px rgba(15,23,42,.06);
}
#tbClientsCards .tb-client-list-alert-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid #fecaca;
  background:#fef2f2;
  color:#b91c1c;
  font-size:13px;
  font-weight:800;
  line-height:1;
  white-space:nowrap;
}
#tbClientsCards .tb-client-list-alert-badge .dashicons{
  width:16px;
  height:16px;
  font-size:16px;
  line-height:16px;
}

#tbClientsCards .tb-client-list-status{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:8px 14px;
  border-radius:999px;
  border:1px solid transparent;
  font-size:14px;
  font-weight:700;
  line-height:1;
  white-space:nowrap;
}
#tbClientsCards .tb-client-list-status.is-neutral{
  background:#fff7ed;
  border-color:#fed7aa;
  color:#ea580c;
}
#tbClientsCards .tb-client-list-status.is-healthy{
  background:#ecfdf5;
  border-color:#a7f3d0;
  color:#059669;
}
#tbClientsCards .tb-client-list-status.is-warning{
  background:#fffbeb;
  border-color:#fde68a;
  color:#b45309;
}
#tbClientsCards .tb-client-list-status.is-risk{
  background:#fef2f2;
  border-color:#fecaca;
  color:#dc2626;
}
#tbClientsCards .tb-client-card-toggle-icon{
  width:34px;
  height:34px;
  flex:0 0 34px;
}
#tbClientsCards .tb-client-card-accordion-panel{
  padding:0 18px 18px;
  border-top:1px solid #e5edf5;
  background:#fcfdff;
}
#tbClientsCards .tb-client-accordion-body-flat{padding-top:14px;gap:14px;}
#tbClientsCards .tb-client-accordion-summary-list{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:0;
  border:1px solid #e5edf5;
  border-radius:18px;
  overflow:hidden;
  background:#ffffff;
}
#tbClientsCards .tb-client-accordion-summary-item{
  min-width:0;
  padding:14px 16px;
  border-right:1px solid #e5edf5;
}
#tbClientsCards .tb-client-accordion-summary-item:last-child{border-right:0;}
#tbClientsCards .tb-client-accordion-summary-copy{display:flex;flex-direction:column;gap:4px;min-width:0;}
#tbClientsCards .tb-client-accordion-summary-title{
  font-size:11px;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:#64748b;
}
#tbClientsCards .tb-client-accordion-summary-value{
  font-size:15px;
  font-weight:800;
  line-height:1.3;
  color:#0f172a;
}
#tbClientsCards .tb-client-accordion-summary-helper{
  font-size:12px;
  line-height:1.45;
  color:#64748b;
}
#tbClientsCards .tb-client-accordion-summary-item.is-open{background:#eff6ff;}
#tbClientsCards .tb-client-accordion-summary-item.is-expired,
#tbClientsCards .tb-client-accordion-summary-item.is-risk{background:#fff1f2;}
#tbClientsCards .tb-client-accordion-summary-item.is-warning{background:#fffbeb;}
#tbClientsCards .tb-client-accordion-summary-item.is-journey{background:#f0fdf4;}
/* Acordeon da lista de clientes: alerta visual por dias sem escuta do áudio principal.*/
#tbClientsCards .tb-client-accordion-summary-item.is-journey.is-audio-warning{
  background:#fffbeb;
  border-color:#fde68a;
}
#tbClientsCards .tb-client-accordion-summary-item.is-journey.is-audio-risk{
  background:#fff1f2;
  border-color:#fecaca;
}
#tbClientsCards .tb-client-accordion-summary-item.is-journey.is-audio-inactive{
  background:#f1f5f9;
  border-color:#cbd5e1;
}
#tbClientsCards .tb-client-accordion-summary-item.is-cycle{background:#f8fafc;}

@media (max-width: 900px){
  #tbClientsCards .tb-client-list-row-inner{padding:12px 14px;}
  #tbClientsCards .tb-client-card-accordion-panel{padding:0 14px 14px;}
  #tbClientsCards .tb-client-accordion-summary-list{grid-template-columns:repeat(2,minmax(0,1fr));}
  #tbClientsCards .tb-client-accordion-summary-item:nth-child(2n){border-right:0;}
  #tbClientsCards .tb-client-accordion-summary-item:nth-child(n+3){border-top:1px solid #e5edf5;}
}
@media (max-width: 640px){
  #tbClientsCards.tb-clients-cards-grid{border-radius:20px;}
  #tbClientsCards .tb-client-list-row-inner{
    align-items:stretch;
    flex-direction:column;
    gap:12px;
  }
  #tbClientsCards .tb-client-list-row-main,
  #tbClientsCards .tb-client-list-row-main .tb-client-card-name,
  #tbClientsCards .tb-client-list-row-meta{
    width:100%;
    max-width:100%;
    min-width:0;
    overflow-wrap:anywhere;
    word-break:normal;
  }
  #tbClientsCards .tb-client-list-row-aside{
    width:100%;
    gap:10px;
    justify-content:space-between;
    align-items:center;
    flex-wrap:nowrap;
  }
  
#tbClientsCards .tb-client-card.has-therapist-alert{
  border-color:rgba(220,38,38,.35);
  box-shadow:0 16px 34px rgba(220,38,38,.10), 0 10px 26px rgba(15,23,42,.06);
}
#tbClientsCards .tb-client-list-alert-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid #fecaca;
  background:#fef2f2;
  color:#b91c1c;
  font-size:13px;
  font-weight:800;
  line-height:1;
  white-space:nowrap;
}
#tbClientsCards .tb-client-list-alert-badge .dashicons{
  width:16px;
  height:16px;
  font-size:16px;
  line-height:16px;
}

#tbClientsCards .tb-client-list-status{
    font-size:13px;
    padding:8px 12px;
    white-space:normal;
    text-align:center;
  }
  #tbClientsCards .tb-client-card-toggle-icon{margin-left:auto;}
  #tbClientsCards .tb-client-list-row-main .tb-client-card-name{font-size:16px;}
  #tbClientsCards .tb-client-list-row-meta{font-size:12px;}
  #tbClientsCards .tb-client-accordion-summary-list{grid-template-columns:1fr;}
  #tbClientsCards .tb-client-accordion-summary-item{border-right:0;border-top:1px solid #e5edf5;}
  #tbClientsCards .tb-client-accordion-summary-item:first-child{border-top:0;}
}

body.tb-theme-dark #tbClientsCards.tb-clients-cards-grid,
.tb-wrap.tb-theme-dark #tbClientsCards.tb-clients-cards-grid{
  background:rgba(15,23,42,.96);
  border-color:rgba(148,163,184,.18);
}
body.tb-theme-dark #tbClientsCards .tb-client-card-accordion,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-card-accordion,
body.tb-theme-dark #tbClientsCards .tb-client-card-accordion:nth-child(odd),
body.tb-theme-dark #tbClientsCards .tb-client-card-accordion:nth-child(even),
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-card-accordion:nth-child(odd),
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-card-accordion:nth-child(even){
  background:rgba(15,23,42,.96);
  border-color:rgba(148,163,184,.18);
}
body.tb-theme-dark #tbClientsCards .tb-client-list-row-toggle:hover,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-list-row-toggle:hover{background:rgba(255,255,255,.03);}
body.tb-theme-dark #tbClientsCards .tb-client-list-row-main .tb-client-card-name,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-list-row-main .tb-client-card-name{color:#f8fafc;}
body.tb-theme-dark #tbClientsCards .tb-client-list-row-meta,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-list-row-meta,
body.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-title,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-title,
body.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-helper,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-helper{color:#cbd5e1;}
body.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel{background:rgba(8,15,35,.92);border-top-color:rgba(148,163,184,.14);}
body.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-list,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-list{background:rgba(15,23,42,.82);border-color:rgba(148,163,184,.16);}
body.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-item,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-item{border-color:rgba(148,163,184,.16);}
body.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-value,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-value{color:#f8fafc;}


/* ajustes mobile da toolbar de clientes*/
@media (max-width: 767px){
  .tb-client-actions-toolbar .tb-client-actions-toolbar-item[href*="tb_export_clients_xls"]{display:none !important;}

  #tbClientsCards .tb-client-accordion-summary-list{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  #tbClientsCards .tb-client-accordion-summary-item{
    border-right:1px solid #e5edf5;
    border-top:0;
  }

  #tbClientsCards .tb-client-accordion-summary-item:nth-child(2n){
    border-right:0;
  }

  #tbClientsCards .tb-client-accordion-summary-item:nth-child(n+3){
    border-top:1px solid #e5edf5;
  }

  #tbClientsCards .tb-client-accordion-summary-item.is-cycle{
    grid-column:auto;
  }
}

body.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-item,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-item{
  border-color:rgba(148,163,184,.16);
}


/* compatibilidade completa do dark na lista de clientes*/
body.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-item.is-open,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-item.is-open{
  background:rgba(37,99,235,.16);
  border-color:rgba(96,165,250,.24);
}
body.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-item.is-expired,
body.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-item.is-risk,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-item.is-expired,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-item.is-risk{
  background:rgba(127,29,29,.22);
  border-color:rgba(248,113,113,.22);
}
body.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-item.is-warning,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-item.is-warning{
  background:rgba(120,53,15,.24);
  border-color:rgba(251,191,36,.22);
}
body.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-item.is-journey,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-item.is-journey{
  background:rgba(6,95,70,.22);
  border-color:rgba(52,211,153,.22);
}
body.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-item.is-journey.is-audio-warning,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-item.is-journey.is-audio-warning{
  background:rgba(120,53,15,.24);
  border-color:rgba(251,191,36,.22);
}
body.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-item.is-journey.is-audio-risk,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-item.is-journey.is-audio-risk{
  background:rgba(127,29,29,.22);
  border-color:rgba(248,113,113,.22);
}
body.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-item.is-journey.is-audio-inactive,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-item.is-journey.is-audio-inactive{
  background:rgba(51,65,85,.26);
  border-color:rgba(148,163,184,.22);
}
body.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-item.is-cycle,
body.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-item.is-neutral,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-item.is-cycle,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-item.is-neutral{
  background:rgba(15,23,42,.92);
  border-color:rgba(148,163,184,.18);
}

body.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-pre,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-pre{
  background:rgba(15,23,42,.88) !important;
  border-color:rgba(148,163,184,.18) !important;
  color:#e5eefc !important;
  box-shadow:none;
}
body.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-pre .tb-muted,
body.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-pre small,
body.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-pre .tb-client-card-activity-subtitle,
body.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-pre .tb-client-card-activity-detail,
body.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-pre .tb-client-card-activity-time,
body.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-pre .tb-client-card-audio-monitor-kicker,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-pre .tb-muted,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-pre small,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-pre .tb-client-card-activity-subtitle,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-pre .tb-client-card-activity-detail,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-pre .tb-client-card-activity-time,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-pre .tb-client-card-audio-monitor-kicker{
  color:#cbd5e1 !important;
}
body.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-pre strong,
body.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-pre b,
body.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-pre .tb-client-card-activity-title,
body.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-pre .tb-client-card-audio-monitor-label,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-pre strong,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-pre b,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-pre .tb-client-card-activity-title,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-pre .tb-client-card-audio-monitor-label{
  color:#f8fafc !important;
}
body.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-client-card-activity-item,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-client-card-activity-item{
  background:rgba(255,255,255,.04) !important;
  border-color:rgba(148,163,184,.18) !important;
}
body.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-client-card-activity-pill,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-client-card-activity-pill{
  background:rgba(30,41,59,.92) !important;
  border-color:rgba(96,165,250,.26) !important;
  color:#dbeafe !important;
}

body.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-journey-audio-monitor-card.is-success,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-journey-audio-monitor-card.is-success{
  background:rgba(6,95,70,.18) !important;
  border-color:rgba(74,222,128,.32) !important;
}
body.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-journey-audio-monitor-card.is-warning,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-journey-audio-monitor-card.is-warning{
  background:rgba(120,53,15,.22) !important;
  border-color:rgba(251,191,36,.28) !important;
}
body.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-journey-audio-monitor-card.is-danger,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-journey-audio-monitor-card.is-danger{
  background:rgba(127,29,29,.22) !important;
  border-color:rgba(248,113,113,.28) !important;
}
body.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-journey-audio-monitor-card.is-neutral,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-journey-audio-monitor-card.is-neutral{
  background:rgba(15,23,42,.9) !important;
  border-color:rgba(148,163,184,.18) !important;
}
body.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-journey-audio-monitor-pill,
.tb-wrap.tb-theme-dark #tbClientsCards .tb-client-card-accordion-panel .tb-journey-audio-monitor-pill{
  background:rgba(255,255,255,.08) !important;
  border-color:rgba(148,163,184,.22) !important;
  color:#f8fafc !important;
}

body.tb-theme-dark .tb-client-capacity-badge,
.tb-wrap.tb-theme-dark .tb-client-capacity-badge{
  background:rgba(15,23,42,.84);
  border-color:rgba(148,163,184,.22);
  color:#cbd5e1;
}
body.tb-theme-dark .tb-client-capacity-badge b,
.tb-wrap.tb-theme-dark .tb-client-capacity-badge b{color:#f8fafc;}
body.tb-theme-dark .tb-client-capacity-badge small,
.tb-wrap.tb-theme-dark .tb-client-capacity-badge small{color:#cbd5e1;}
body.tb-theme-dark .tb-client-capacity-badge.is-full,
.tb-wrap.tb-theme-dark .tb-client-capacity-badge.is-full{
  background:rgba(30,41,59,.92);
  border-color:rgba(148,163,184,.24);
  color:#cbd5e1;
}
body.tb-theme-dark .tb-client-capacity-badge.is-full b,
body.tb-theme-dark .tb-client-capacity-badge.is-full small,
.tb-wrap.tb-theme-dark .tb-client-capacity-badge.is-full b,
.tb-wrap.tb-theme-dark .tb-client-capacity-badge.is-full small{color:#e2e8f0;}

body.tb-theme-dark .tb-central-bell,
.tb-wrap.tb-theme-dark .tb-central-bell{
  background:rgba(15,23,42,.88);
  border-color:rgba(148,163,184,.22);
  color:#e2e8f0;
  box-shadow:0 10px 28px rgba(2,6,23,.28);
}
body.tb-theme-dark .tb-central-bell-read,
.tb-wrap.tb-theme-dark .tb-central-bell-read{
  background:rgba(6,95,70,.18);
  border-color:rgba(74,222,128,.28);
  color:#86efac;
}

@media (max-width: 767px){
  body.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-item:nth-child(n+3),
  .tb-wrap.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-item:nth-child(n+3){
    border-top-color:rgba(148,163,184,.18);
  }
  body.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-item:nth-child(2n),
  .tb-wrap.tb-theme-dark #tbClientsCards .tb-client-accordion-summary-item:nth-child(2n){
    border-right-color:rgba(148,163,184,.18);
  }
}

/* =========================================================
 compatibilidade visual ampliada do tema dark
 Corrige contraste em Jornada, Financeiro, Audiolivros,
 Sessões e cartões de Áudios Bônus.
=========================================================*/

/* Helper local para evitar repetir seletor longo*/
body.tb-theme-dark,
.tb-wrap.tb-theme-dark{}

/* ---------- Jornada terapêutica / módulos do workspace ----------*/
body.tb-theme-dark .tb-client-module-head,
.tb-wrap.tb-theme-dark .tb-client-module-head,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-section .tb-client-module-head,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-section .tb-client-module-head{
  border-bottom-color:rgba(148,163,184,.18) !important;
}
body.tb-theme-dark .tb-client-module-mini-badge,
.tb-wrap.tb-theme-dark .tb-client-module-mini-badge{
  background:rgba(255,255,255,.06) !important;
  border-color:rgba(148,163,184,.22) !important;
  color:#e2e8f0 !important;
}
body.tb-theme-dark .tb-client-module-mini-badge.is-success,
.tb-wrap.tb-theme-dark .tb-client-module-mini-badge.is-success{
  background:rgba(34,197,94,.14) !important;
  border-color:rgba(74,222,128,.36) !important;
  color:#dcfce7 !important;
}
body.tb-theme-dark .tb-client-module-mini-badge.is-warning,
.tb-wrap.tb-theme-dark .tb-client-module-mini-badge.is-warning{
  background:rgba(245,158,11,.14) !important;
  border-color:rgba(251,191,36,.34) !important;
  color:#fde68a !important;
}
body.tb-theme-dark .tb-client-module-callout,
.tb-wrap.tb-theme-dark .tb-client-module-callout{
  background:linear-gradient(180deg,rgba(10,20,40,.92) 0%,rgba(6,14,30,.98) 100%) !important;
  border-color:rgba(148,163,184,.20) !important;
}
body.tb-theme-dark .tb-client-module-callout.is-success,
.tb-wrap.tb-theme-dark .tb-client-module-callout.is-success{
  background:linear-gradient(180deg,rgba(8,39,24,.92) 0%,rgba(6,26,18,.98) 100%) !important;
  border-color:rgba(74,222,128,.30) !important;
}
body.tb-theme-dark .tb-client-module-callout.is-info,
.tb-wrap.tb-theme-dark .tb-client-module-callout.is-info{
  background:linear-gradient(180deg,rgba(8,26,50,.94) 0%,rgba(5,16,32,.98) 100%) !important;
  border-color:rgba(96,165,250,.34) !important;
}
body.tb-theme-dark .tb-client-module-callout.is-warning,
.tb-wrap.tb-theme-dark .tb-client-module-callout.is-warning{
  background:linear-gradient(180deg,rgba(54,35,8,.92) 0%,rgba(35,22,5,.98) 100%) !important;
  border-color:rgba(251,191,36,.32) !important;
}
body.tb-theme-dark .tb-client-module-callout-kicker,
.tb-wrap.tb-theme-dark .tb-client-module-callout-kicker{
  color:#cbd5e1 !important;
}
body.tb-theme-dark .tb-client-module-callout-title,
.tb-wrap.tb-theme-dark .tb-client-module-callout-title{
  color:#f8fafc !important;
}
body.tb-theme-dark .tb-client-module-callout-text,
.tb-wrap.tb-theme-dark .tb-client-module-callout-text,
body.tb-theme-dark .tb-client-module-callout .tb-muted,
.tb-wrap.tb-theme-dark .tb-client-module-callout .tb-muted{
  color:#cbd5e1 !important;
}
body.tb-theme-dark .tb-client-module-callout.is-success .tb-client-module-callout-text,
.tb-wrap.tb-theme-dark .tb-client-module-callout.is-success .tb-client-module-callout-text{
  color:#dcfce7 !important;
}
body.tb-theme-dark .tb-client-module-callout.is-info .tb-client-module-callout-text,
.tb-wrap.tb-theme-dark .tb-client-module-callout.is-info .tb-client-module-callout-text{
  color:#bfdbfe !important;
}
body.tb-theme-dark .tb-client-module-callout.is-warning .tb-client-module-callout-text,
.tb-wrap.tb-theme-dark .tb-client-module-callout.is-warning .tb-client-module-callout-text{
  color:#fde68a !important;
}
body.tb-theme-dark .tb-client-module-callout-tags span,
.tb-wrap.tb-theme-dark .tb-client-module-callout-tags span{
  background:rgba(255,255,255,.06) !important;
  border-color:rgba(148,163,184,.22) !important;
  color:#e2e8f0 !important;
}
body.tb-theme-dark .tb-client-module-callout-tags span.is-muted,
.tb-wrap.tb-theme-dark .tb-client-module-callout-tags span.is-muted{
  background:rgba(255,255,255,.04) !important;
  color:#cbd5e1 !important;
}
body.tb-theme-dark .tb-client-module-chip-light,
.tb-wrap.tb-theme-dark .tb-client-module-chip-light{
  background:rgba(255,255,255,.06) !important;
  color:#e2e8f0 !important;
}

body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-summary-card,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-summary-card,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-summary-card .tb-pre,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-summary-card .tb-pre{
  background:linear-gradient(180deg,rgba(15,23,42,.84) 0%,rgba(7,14,30,.98) 100%) !important;
  border-color:rgba(148,163,184,.18) !important;
}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-summary-label,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-summary-label,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-summary-helper,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-summary-helper{
  color:#cbd5e1 !important;
}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-summary-value,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-summary-value,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-audio-monitor-main,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-audio-monitor-main,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-achievement-main,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-achievement-main{
  color:#f8fafc !important;
}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-audio-monitor-card,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-audio-monitor-card{
  background:linear-gradient(180deg,rgba(15,23,42,.90) 0%,rgba(7,14,30,.98) 100%) !important;
}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-audio-monitor-card.is-neutral,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-audio-monitor-card.is-neutral{
  border-color:rgba(148,163,184,.24) !important;
  background:linear-gradient(180deg,rgba(15,23,42,.90) 0%,rgba(7,14,30,.98) 100%) !important;
}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-audio-monitor-card.is-success,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-audio-monitor-card.is-success{
  background:linear-gradient(180deg,rgba(8,39,24,.92) 0%,rgba(6,26,18,.98) 100%) !important;
  border-color:rgba(74,222,128,.30) !important;
}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-audio-monitor-card.is-warning,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-audio-monitor-card.is-warning{
  background:linear-gradient(180deg,rgba(54,35,8,.92) 0%,rgba(35,22,5,.98) 100%) !important;
  border-color:rgba(251,191,36,.32) !important;
}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-audio-monitor-card.is-danger,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-audio-monitor-card.is-danger{
  background:linear-gradient(180deg,rgba(60,18,18,.92) 0%,rgba(36,10,10,.98) 100%) !important;
  border-color:rgba(248,113,113,.32) !important;
}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-audio-monitor-pill,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-audio-monitor-pill{
  background:rgba(255,255,255,.08) !important;
  border-color:rgba(148,163,184,.22) !important;
  color:#f8fafc !important;
}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-config-card-desc,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-config-card-desc,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-config-gate,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-config-gate,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-config-intro,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-config-intro,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-filter-field label,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-filter-field label{
  color:#cbd5e1 !important;
}

/* ---------- Sessão terapêutica no workspace do terapeuta ----------*/
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card-meta-item,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card-meta-item{
  background:linear-gradient(180deg,rgba(15,23,42,.82) 0%,rgba(7,14,30,.98) 100%) !important;
  border-color:rgba(148,163,184,.20) !important;
  box-shadow:none !important;
}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card-kicker,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card-kicker,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card-meta-label,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card-meta-label,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card-summary-line,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card-summary-line{
  color:#cbd5e1 !important;
}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card-title,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card-title,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card-meta-item strong,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card-meta-item strong,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card-summary-line b,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card-summary-line b{
  color:#f8fafc !important;
}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card-details,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card-details,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card-actions,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card-actions,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card-details-body,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card-details-body{
  border-top-color:rgba(148,163,184,.18) !important;
}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card-status.is-neutral,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card-status.is-neutral{
  background:rgba(255,255,255,.08) !important;
  border-color:rgba(148,163,184,.22) !important;
  color:#e2e8f0 !important;
}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card-status.is-success,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card-status.is-success{
  background:rgba(34,197,94,.14) !important;
  border-color:rgba(74,222,128,.36) !important;
  color:#dcfce7 !important;
}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card-status.is-danger,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card-status.is-danger{
  background:rgba(239,68,68,.14) !important;
  border-color:rgba(248,113,113,.34) !important;
  color:#fecaca !important;
}

/* ---------- Portal do cliente / sessão terapêutica ----------*/
body.tb-theme-dark .tb-client-portal .tb-portal-session-card,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-session-card,
body.tb-theme-dark .tb-client-portal #tbPortalSession > .tb-card,
.tb-wrap.tb-theme-dark .tb-client-portal #tbPortalSession > .tb-card,
body.tb-theme-dark .tb-client-portal .tb-portal-session-summary-card,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-session-summary-card,
body.tb-theme-dark .tb-client-portal .tb-portal-session-inline-note,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-session-inline-note,
body.tb-theme-dark .tb-client-portal .tb-portal-session-box,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-session-box,
body.tb-theme-dark .tb-client-portal .tb-portal-session-field-value,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-session-field-value,
body.tb-theme-dark .tb-client-portal .tb-portal-session-action,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-session-action{
  background:linear-gradient(180deg,rgba(15,23,42,.84) 0%,rgba(7,14,30,.98) 100%) !important;
  border-color:rgba(148,163,184,.20) !important;
  color:#e5e7eb !important;
  box-shadow:none !important;
}
body.tb-theme-dark .tb-client-portal .tb-portal-session-title,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-session-title,
body.tb-theme-dark .tb-client-portal .tb-portal-session-summary-title,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-session-summary-title,
body.tb-theme-dark .tb-client-portal .tb-portal-session-inline-note-value,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-session-inline-note-value,
body.tb-theme-dark .tb-client-portal .tb-portal-session-summary-line-value,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-session-summary-line-value{
  color:#f8fafc !important;
}
body.tb-theme-dark .tb-client-portal .tb-portal-session-kicker,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-session-kicker,
body.tb-theme-dark .tb-client-portal .tb-portal-session-meta-item label,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-session-meta-item label,
body.tb-theme-dark .tb-client-portal .tb-portal-session-section > label,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-session-section > label,
body.tb-theme-dark .tb-client-portal .tb-portal-session-inline-note-label,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-session-inline-note-label,
body.tb-theme-dark .tb-client-portal .tb-portal-session-summary-subtitle,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-session-summary-subtitle,
body.tb-theme-dark .tb-client-portal .tb-portal-session-summary-preview,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-session-summary-preview,
body.tb-theme-dark .tb-client-portal .tb-portal-session-summary-line-label,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-session-summary-line-label,
body.tb-theme-dark .tb-client-portal .tb-portal-session-notes,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-session-notes,
body.tb-theme-dark .tb-client-portal .tb-portal-session-summary-content,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-session-summary-content{
  color:#cbd5e1 !important;
}
body.tb-theme-dark .tb-client-portal .tb-portal-session-chip,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-session-chip{
  background:rgba(255,255,255,.08) !important;
  border-color:rgba(148,163,184,.22) !important;
  color:#e2e8f0 !important;
}
body.tb-theme-dark .tb-client-portal .tb-portal-session-details,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-session-details,
body.tb-theme-dark .tb-client-portal .tb-portal-session-detail-block + .tb-portal-session-detail-block,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-session-detail-block + .tb-portal-session-detail-block{
  border-top-color:rgba(148,163,184,.18) !important;
}
body.tb-theme-dark .tb-client-portal .tb-portal-session-details summary,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-session-details summary,
body.tb-theme-dark .tb-client-portal .tb-portal-session-field-link a,
.tb-wrap.tb-theme-dark .tb-client-portal .tb-portal-session-field-link a{
  color:#93c5fd !important;
}

/* ---------- Financeiro / propostas terapêuticas ----------*/
body.tb-theme-dark .tb-finance-proposal-studio,
.tb-wrap.tb-theme-dark .tb-finance-proposal-studio{
  background:linear-gradient(180deg,rgba(8,19,42,.96) 0%,rgba(4,12,28,.98) 100%) !important;
}
body.tb-theme-dark .tb-finance-proposal-hero,
.tb-wrap.tb-theme-dark .tb-finance-proposal-hero{
  background:linear-gradient(135deg,#183a66 0%,#204b7c 45%,#27598b 100%) !important;
  border-color:rgba(191,219,254,.22) !important;
  box-shadow:0 18px 40px rgba(2,6,23,.34) !important;
}
body.tb-theme-dark .tb-finance-proposal-metric,
.tb-wrap.tb-theme-dark .tb-finance-proposal-metric,
body.tb-theme-dark .tb-finance-proposal-section-card,
.tb-wrap.tb-theme-dark .tb-finance-proposal-section-card,
body.tb-theme-dark .tb-finance-proposal-row,
.tb-wrap.tb-theme-dark .tb-finance-proposal-row,
body.tb-theme-dark .tb-finance-proposal-row.is-compact,
.tb-wrap.tb-theme-dark .tb-finance-proposal-row.is-compact,
body.tb-theme-dark .tb-finance-proposal-note-box,
.tb-wrap.tb-theme-dark .tb-finance-proposal-note-box,
body.tb-theme-dark .tb-finance-proposal-flow-step,
.tb-wrap.tb-theme-dark .tb-finance-proposal-flow-step,
body.tb-theme-dark .tb-finance-proposal-totalbox > div,
.tb-wrap.tb-theme-dark .tb-finance-proposal-totalbox > div,
body.tb-theme-dark .tb-finance-proposal-tag,
.tb-wrap.tb-theme-dark .tb-finance-proposal-tag,
body.tb-theme-dark .tb-finance-proposal-empty,
.tb-wrap.tb-theme-dark .tb-finance-proposal-empty,
body.tb-theme-dark .tb-finance-mobile-collapse .tb-mobile-collapse-toggle,
.tb-wrap.tb-theme-dark .tb-finance-mobile-collapse .tb-mobile-collapse-toggle{
  background:linear-gradient(180deg,rgba(15,23,42,.84) 0%,rgba(7,14,30,.98) 100%) !important;
  border-color:rgba(148,163,184,.20) !important;
  color:#e5e7eb !important;
  box-shadow:none !important;
}
body.tb-theme-dark .tb-finance-proposal-section-card.is-blue,
.tb-wrap.tb-theme-dark .tb-finance-proposal-section-card.is-blue,
body.tb-theme-dark .tb-finance-proposal-metric.is-blue,
.tb-wrap.tb-theme-dark .tb-finance-proposal-metric.is-blue{
  background:linear-gradient(180deg,rgba(16,35,66,.96) 0%,rgba(8,18,36,.98) 100%) !important;
  border-color:rgba(96,165,250,.24) !important;
}
body.tb-theme-dark .tb-finance-proposal-section-card.is-violet,
.tb-wrap.tb-theme-dark .tb-finance-proposal-section-card.is-violet,
body.tb-theme-dark .tb-finance-proposal-metric.is-violet,
.tb-wrap.tb-theme-dark .tb-finance-proposal-metric.is-violet{
  background:linear-gradient(180deg,rgba(36,25,66,.96) 0%,rgba(18,10,36,.98) 100%) !important;
  border-color:rgba(167,139,250,.24) !important;
}
body.tb-theme-dark .tb-finance-proposal-section-card.is-green,
.tb-wrap.tb-theme-dark .tb-finance-proposal-section-card.is-green,
body.tb-theme-dark .tb-finance-proposal-metric.is-green,
.tb-wrap.tb-theme-dark .tb-finance-proposal-metric.is-green{
  background:linear-gradient(180deg,rgba(12,39,28,.96) 0%,rgba(7,24,18,.98) 100%) !important;
  border-color:rgba(74,222,128,.24) !important;
}
body.tb-theme-dark .tb-finance-proposal-section-card.is-amber,
.tb-wrap.tb-theme-dark .tb-finance-proposal-section-card.is-amber,
body.tb-theme-dark .tb-finance-proposal-metric.is-amber,
.tb-wrap.tb-theme-dark .tb-finance-proposal-metric.is-amber{
  background:linear-gradient(180deg,rgba(52,34,10,.96) 0%,rgba(32,20,6,.98) 100%) !important;
  border-color:rgba(251,191,36,.24) !important;
}
body.tb-theme-dark .tb-finance-proposal-section-card.is-neutral,
.tb-wrap.tb-theme-dark .tb-finance-proposal-section-card.is-neutral{
  background:linear-gradient(180deg,rgba(15,23,42,.84) 0%,rgba(7,14,30,.98) 100%) !important;
}
body.tb-theme-dark .tb-finance-proposal-metric strong,
.tb-wrap.tb-theme-dark .tb-finance-proposal-metric strong,
body.tb-theme-dark .tb-finance-proposal-section-title,
.tb-wrap.tb-theme-dark .tb-finance-proposal-section-title,
body.tb-theme-dark .tb-finance-proposal-row-title,
.tb-wrap.tb-theme-dark .tb-finance-proposal-row-title,
body.tb-theme-dark .tb-finance-proposal-totalbox strong,
.tb-wrap.tb-theme-dark .tb-finance-proposal-totalbox strong,
body.tb-theme-dark .tb-finance-proposal-flow-step strong,
.tb-wrap.tb-theme-dark .tb-finance-proposal-flow-step strong,
body.tb-theme-dark .tb-finance-mobile-collapse .tb-mobile-collapse-title,
.tb-wrap.tb-theme-dark .tb-finance-mobile-collapse .tb-mobile-collapse-title{
  color:#f8fafc !important;
}
body.tb-theme-dark .tb-finance-proposal-metric-label,
.tb-wrap.tb-theme-dark .tb-finance-proposal-metric-label,
body.tb-theme-dark .tb-finance-proposal-section-copy,
.tb-wrap.tb-theme-dark .tb-finance-proposal-section-copy,
body.tb-theme-dark .tb-finance-proposal-row-sub,
.tb-wrap.tb-theme-dark .tb-finance-proposal-row-sub,
body.tb-theme-dark .tb-finance-proposal-row-meta,
.tb-wrap.tb-theme-dark .tb-finance-proposal-row-meta,
body.tb-theme-dark .tb-finance-proposal-metric small,
.tb-wrap.tb-theme-dark .tb-finance-proposal-metric small,
body.tb-theme-dark .tb-finance-proposal-totalbox span,
.tb-wrap.tb-theme-dark .tb-finance-proposal-totalbox span,
body.tb-theme-dark .tb-finance-proposal-note-box,
.tb-wrap.tb-theme-dark .tb-finance-proposal-note-box,
body.tb-theme-dark .tb-finance-proposal-bullets,
.tb-wrap.tb-theme-dark .tb-finance-proposal-bullets,
body.tb-theme-dark .tb-finance-proposal-flow-step small,
.tb-wrap.tb-theme-dark .tb-finance-proposal-flow-step small,
body.tb-theme-dark .tb-finance-mobile-collapse .tb-mobile-collapse-helper,
.tb-wrap.tb-theme-dark .tb-finance-mobile-collapse .tb-mobile-collapse-helper{
  color:#cbd5e1 !important;
}
body.tb-theme-dark .tb-finance-proposal-navbtn,
.tb-wrap.tb-theme-dark .tb-finance-proposal-navbtn{
  background:rgba(255,255,255,.06) !important;
  border-color:rgba(148,163,184,.22) !important;
  color:#e2e8f0 !important;
}
body.tb-theme-dark .tb-finance-proposal-navbtn.is-active,
.tb-wrap.tb-theme-dark .tb-finance-proposal-navbtn.is-active,
body.tb-theme-dark .tb-finance-proposal-hero-actions .tb-btn.is-active,
.tb-wrap.tb-theme-dark .tb-finance-proposal-hero-actions .tb-btn.is-active{
  background:#1d4ed8 !important;
  border-color:#3b82f6 !important;
  color:#ffffff !important;
  box-shadow:0 10px 24px rgba(29,78,216,.24) !important;
}
body.tb-theme-dark .tb-finance-proposal-form-grid label,
.tb-wrap.tb-theme-dark .tb-finance-proposal-form-grid label{
  color:#e2e8f0 !important;
}
body.tb-theme-dark .tb-finance-proposal-form-grid .tb-input,
.tb-wrap.tb-theme-dark .tb-finance-proposal-form-grid .tb-input,
body.tb-theme-dark .tb-finance-proposal-form-grid textarea.tb-input,
.tb-wrap.tb-theme-dark .tb-finance-proposal-form-grid textarea.tb-input,
body.tb-theme-dark .tb-finance-proposal-form-grid select.tb-input,
.tb-wrap.tb-theme-dark .tb-finance-proposal-form-grid select.tb-input{
  background:rgba(255,255,255,.06) !important;
  border-color:rgba(148,163,184,.24) !important;
  color:#f8fafc !important;
  box-shadow:none !important;
}
body.tb-theme-dark .tb-finance-proposal-form-grid .tb-input::placeholder,
.tb-wrap.tb-theme-dark .tb-finance-proposal-form-grid .tb-input::placeholder,
body.tb-theme-dark .tb-finance-proposal-form-grid textarea.tb-input::placeholder,
.tb-wrap.tb-theme-dark .tb-finance-proposal-form-grid textarea.tb-input::placeholder{
  color:#94a3b8 !important;
}
body.tb-theme-dark .tb-finance-proposal-status.is-sent,
.tb-wrap.tb-theme-dark .tb-finance-proposal-status.is-sent,
body.tb-theme-dark .tb-finance-proposal-status.is-viewed,
.tb-wrap.tb-theme-dark .tb-finance-proposal-status.is-viewed{background:rgba(59,130,246,.16) !important;border-color:rgba(96,165,250,.34) !important;color:#dbeafe !important;}
body.tb-theme-dark .tb-finance-proposal-status.is-approved,
.tb-wrap.tb-theme-dark .tb-finance-proposal-status.is-approved{background:rgba(34,197,94,.14) !important;border-color:rgba(74,222,128,.34) !important;color:#dcfce7 !important;}
body.tb-theme-dark .tb-finance-proposal-status.is-review,
.tb-wrap.tb-theme-dark .tb-finance-proposal-status.is-review{background:rgba(245,158,11,.14) !important;border-color:rgba(251,191,36,.34) !important;color:#fde68a !important;}
body.tb-theme-dark .tb-finance-proposal-status.is-expired,
.tb-wrap.tb-theme-dark .tb-finance-proposal-status.is-expired,
body.tb-theme-dark .tb-finance-proposal-status.is-draft,
.tb-wrap.tb-theme-dark .tb-finance-proposal-status.is-draft{background:rgba(255,255,255,.08) !important;border-color:rgba(148,163,184,.22) !important;color:#e2e8f0 !important;}
body.tb-theme-dark .tb-finance-proposal-flow-number,
.tb-wrap.tb-theme-dark .tb-finance-proposal-flow-number{
  background:#1e3a5f !important;
  color:#ffffff !important;
}
body.tb-theme-dark .tb-finance-proposal-row-buttons .tb-btn.is-danger,
.tb-wrap.tb-theme-dark .tb-finance-proposal-row-buttons .tb-btn.is-danger{
  background:rgba(127,29,29,.22) !important;
  border-color:rgba(248,113,113,.30) !important;
  color:#fecaca !important;
}

/* ---------- Audiolivros ----------*/
body.tb-theme-dark .tb-client-audiobook-panel,
.tb-wrap.tb-theme-dark .tb-client-audiobook-panel,
body.tb-theme-dark .tb-audiobook-therapist-summary-card,
.tb-wrap.tb-theme-dark .tb-audiobook-therapist-summary-card,
body.tb-theme-dark .tb-audiobook-stat-card,
.tb-wrap.tb-theme-dark .tb-audiobook-stat-card,
body.tb-theme-dark .tb-audiobook-card,
.tb-wrap.tb-theme-dark .tb-audiobook-card,
body.tb-theme-dark .tb-audiobook-therapist-item,
.tb-wrap.tb-theme-dark .tb-audiobook-therapist-item,
body.tb-theme-dark .tb-audiobook-desc-tooltip,
.tb-wrap.tb-theme-dark .tb-audiobook-desc-tooltip{
  background:linear-gradient(180deg,rgba(15,23,42,.84) 0%,rgba(7,14,30,.98) 100%) !important;
  border-color:rgba(148,163,184,.20) !important;
  color:#e5e7eb !important;
  box-shadow:none !important;
}
body.tb-theme-dark .tb-audiobook-stat-label,
.tb-wrap.tb-theme-dark .tb-audiobook-stat-label,
body.tb-theme-dark .tb-audiobook-stat-helper,
.tb-wrap.tb-theme-dark .tb-audiobook-stat-helper,
body.tb-theme-dark .tb-audiobook-therapist-summary-helper,
.tb-wrap.tb-theme-dark .tb-audiobook-therapist-summary-helper,
body.tb-theme-dark .tb-audiobook-card-description,
.tb-wrap.tb-theme-dark .tb-audiobook-card-description,
body.tb-theme-dark .tb-audiobook-therapist-item-meta,
.tb-wrap.tb-theme-dark .tb-audiobook-therapist-item-meta,
body.tb-theme-dark .tb-audiobook-desc-tooltip,
.tb-wrap.tb-theme-dark .tb-audiobook-desc-tooltip{
  color:#cbd5e1 !important;
}
body.tb-theme-dark .tb-audiobook-stat-value,
.tb-wrap.tb-theme-dark .tb-audiobook-stat-value,
body.tb-theme-dark .tb-audiobook-therapist-summary-main,
.tb-wrap.tb-theme-dark .tb-audiobook-therapist-summary-main,
body.tb-theme-dark .tb-audiobook-card-title,
.tb-wrap.tb-theme-dark .tb-audiobook-card-title{
  color:#f8fafc !important;
}
body.tb-theme-dark .tb-audiobook-card-cover,
.tb-wrap.tb-theme-dark .tb-audiobook-card-cover{
  background:rgba(255,255,255,.05) !important;
  border-color:rgba(148,163,184,.20) !important;
}
body.tb-theme-dark .tb-audiobook-desc-toggle,
.tb-wrap.tb-theme-dark .tb-audiobook-desc-toggle{
  background:rgba(59,130,246,.12) !important;
  border-color:rgba(96,165,250,.28) !important;
  color:#dbeafe !important;
}
body.tb-theme-dark .tb-audiobook-status-chip.is-new,
.tb-wrap.tb-theme-dark .tb-audiobook-status-chip.is-new{background:rgba(255,255,255,.08) !important;border-color:rgba(148,163,184,.22) !important;color:#e2e8f0 !important;}
body.tb-theme-dark .tb-audiobook-status-chip.is-progress,
.tb-wrap.tb-theme-dark .tb-audiobook-status-chip.is-progress{background:rgba(59,130,246,.14) !important;border-color:rgba(96,165,250,.34) !important;color:#dbeafe !important;}
body.tb-theme-dark .tb-audiobook-status-chip.is-done,
.tb-wrap.tb-theme-dark .tb-audiobook-status-chip.is-done,
body.tb-theme-dark .tb-audiobook-status-chip.is-completed,
.tb-wrap.tb-theme-dark .tb-audiobook-status-chip.is-completed{background:rgba(34,197,94,.14) !important;border-color:rgba(74,222,128,.34) !important;color:#dcfce7 !important;}
body.tb-theme-dark .tb-audiobook-card-stats .tb-chip,
.tb-wrap.tb-theme-dark .tb-audiobook-card-stats .tb-chip{
  background:rgba(255,255,255,.06) !important;
  border-color:rgba(148,163,184,.22) !important;
  color:#e2e8f0 !important;
}

/* ---------- Áudios bônus ----------*/
.tb-bonus-audio-card-cover img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center center;
}
body.tb-theme-dark .tb-bonus-audio-card-cover img,
.tb-wrap.tb-theme-dark .tb-bonus-audio-card-cover img{
  background:transparent !important;
}

/* Garantia extra para textos herdados com inline style no dark*/
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent [style*="color:#0f172a"],
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent [style*="color:#0f172a"]{color:#f8fafc !important;}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent [style*="color:#475569"],
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent [style*="color:#475569"],
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent [style*="color:#64748b"],
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent [style*="color:#64748b"]{color:#cbd5e1 !important;}


/* =========================================================
 dark theme: timeline/configuração, financeiro,
 audiolivros, sessão terapêutica e cover dos áudios bônus
=========================================================*/
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-panel .tb-muted,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-panel .tb-muted,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-panel small,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-panel small{
  color:#cbd5e1 !important;
}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-module-title,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-module-title,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-panel > label,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-panel > label,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-panel > label b,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-panel > label b,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-panel h2,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-panel h2,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-panel h3,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-panel h3,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-panel h4,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-client-workspace-panel h4{
  color:#f8fafc !important;
}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-timeline-wrap .tb-input,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-timeline-wrap .tb-input,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-config-panel .tb-input,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-config-panel .tb-input,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-timeline-wrap select,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-timeline-wrap select,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-config-panel select,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-config-panel select{
  background:rgba(255,255,255,.06) !important;
  border-color:rgba(148,163,184,.24) !important;
  color:#f8fafc !important;
  box-shadow:none !important;
}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-timeline-wrap .tb-input::placeholder,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-timeline-wrap .tb-input::placeholder,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-config-panel .tb-input::placeholder,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-config-panel .tb-input::placeholder{
  color:#94a3b8 !important;
}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-source-checks .tb-chip,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-source-checks .tb-chip{
  background:rgba(255,255,255,.05) !important;
  border-color:rgba(148,163,184,.22) !important;
  color:#e2e8f0 !important;
}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-config-card .tb-pre,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-config-card .tb-pre{
  background:rgba(255,255,255,.04) !important;
  border-color:rgba(148,163,184,.22) !important;
  color:#e2e8f0 !important;
}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-config-card .tb-pre b,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-config-card .tb-pre b,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-config-card .tb-pre strong,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-config-card .tb-pre strong{
  color:#f8fafc !important;
}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-section.is-info .tb-journey-section-summary,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-section.is-info .tb-journey-section-summary{
  background:linear-gradient(180deg,rgba(15,23,42,.74) 0%,rgba(7,14,30,.96) 100%) !important;
}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-section.is-success .tb-journey-section-summary,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-section.is-success .tb-journey-section-summary{
  background:linear-gradient(180deg,rgba(8,39,24,.70) 0%,rgba(6,26,18,.96) 100%) !important;
}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-section.is-warning .tb-journey-section-summary,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-section.is-warning .tb-journey-section-summary{
  background:linear-gradient(180deg,rgba(54,35,8,.70) 0%,rgba(35,22,5,.96) 100%) !important;
}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-section-caret::before,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-section-caret::after,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-section-caret::before,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-journey-section-caret::after{
  background:#94a3b8 !important;
}
body.tb-theme-dark .tb-finance-proposal-studio .tb-pre,
.tb-wrap.tb-theme-dark .tb-finance-proposal-studio .tb-pre,
body.tb-theme-dark .tb-finance-proposal-mobile-metrics-card,
.tb-wrap.tb-theme-dark .tb-finance-proposal-mobile-metrics-card,
body.tb-theme-dark .tb-finance-mobile-collapse .tb-finance-proposal-section-card,
.tb-wrap.tb-theme-dark .tb-finance-mobile-collapse .tb-finance-proposal-section-card{
  background:linear-gradient(180deg,rgba(15,23,42,.84) 0%,rgba(7,14,30,.98) 100%) !important;
  border-color:rgba(148,163,184,.20) !important;
  color:#e5e7eb !important;
}
body.tb-theme-dark .tb-finance-proposal-studio .tb-muted,
.tb-wrap.tb-theme-dark .tb-finance-proposal-studio .tb-muted,
body.tb-theme-dark .tb-finance-proposal-studio small,
.tb-wrap.tb-theme-dark .tb-finance-proposal-studio small{
  color:#cbd5e1 !important;
}
body.tb-theme-dark .tb-finance-proposal-studio .tb-btn:not(.tb-btn-primary),
.tb-wrap.tb-theme-dark .tb-finance-proposal-studio .tb-btn:not(.tb-btn-primary){
  background:rgba(255,255,255,.06) !important;
  border-color:rgba(148,163,184,.24) !important;
  color:#e2e8f0 !important;
}
body.tb-theme-dark .tb-client-audiobook-panel .tb-pre,
.tb-wrap.tb-theme-dark .tb-client-audiobook-panel .tb-pre,
body.tb-theme-dark .tb-client-audiobook-panel .tb-chip,
.tb-wrap.tb-theme-dark .tb-client-audiobook-panel .tb-chip{
  background:rgba(255,255,255,.06) !important;
  border-color:rgba(148,163,184,.22) !important;
  color:#e2e8f0 !important;
}
body.tb-theme-dark .tb-client-audiobook-panel .tb-muted,
.tb-wrap.tb-theme-dark .tb-client-audiobook-panel .tb-muted,
body.tb-theme-dark .tb-client-audiobook-panel small,
.tb-wrap.tb-theme-dark .tb-client-audiobook-panel small,
body.tb-theme-dark .tb-client-audiobook-panel label,
.tb-wrap.tb-theme-dark .tb-client-audiobook-panel label{
  color:#cbd5e1 !important;
}
body.tb-theme-dark .tb-client-audiobook-panel b,
.tb-wrap.tb-theme-dark .tb-client-audiobook-panel b,
body.tb-theme-dark .tb-client-audiobook-panel strong,
.tb-wrap.tb-theme-dark .tb-client-audiobook-panel strong{
  color:#f8fafc !important;
}
body.tb-theme-dark .tb-client-audiobook-panel .tb-audiobook-check input,
.tb-wrap.tb-theme-dark .tb-client-audiobook-panel .tb-audiobook-check input{
  accent-color:#60a5fa;
}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-card .tb-btn:not(.tb-btn-primary),
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-card .tb-btn:not(.tb-btn-primary),
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-pre .tb-btn:not(.tb-btn-primary),
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-pre .tb-btn:not(.tb-btn-primary){
  background:rgba(255,255,255,.06) !important;
  border-color:rgba(148,163,184,.24) !important;
  color:#e2e8f0 !important;
}
.tb-bonus-audio-card-cover{width:84px;height:126px;flex:0 0 84px;}
@media (max-width: 782px){
  .tb-bonus-audio-card-cover{width:88px;height:132px;flex-basis:88px;}
}

/* relatório final do ciclo*/
.tb-final-report-panel{
  border:1px solid var(--tb-border,#d8deea);
  border-radius:18px;
  background:var(--tb-surface,#fff);
}
.tb-final-report-summary,.tb-final-report-preview{width:100%;}
.tb-final-report-metrics{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(140px,1fr));
  gap:12px;
}
.tb-final-report-metric,
.tb-final-report-card{
  border:1px solid var(--tb-border,#d8deea);
  border-radius:14px;
  padding:12px 14px;
  background:rgba(37,50,99,.03);
}
.tb-final-report-metric span,
.tb-final-report-card span{
  display:block;
  font-size:12px;
  color:var(--tb-muted,#64748b);
  margin-bottom:4px;
}
.tb-final-report-metric strong,
.tb-final-report-card strong{
  display:block;
  font-size:16px;
  color:var(--tb-text,#111827);
}
.tb-final-report-scope{
  border:1px solid var(--tb-border,#d8deea);
  border-radius:18px;
  padding:18px;
  background:var(--tb-surface,#fff);
}
.tb-final-report-header h1,
.tb-final-report-section h2,
.tb-final-report-section h3{color:#253263;}
.tb-final-report-kicker{font-size:12px;color:var(--tb-muted,#64748b);margin-bottom:6px;}
.tb-final-report-meta-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:8px 18px;
}
.tb-final-report-section{margin-top:18px;clear:both;}
.tb-final-report-section::after{content:"";display:block;clear:both;}
.tb-final-report-section-headkeep{break-inside:avoid;page-break-inside:avoid;}
.tb-final-report-section-headkeep h2,.tb-final-report-section-headkeep b{margin-bottom:0;display:block;}
.tb-final-report-journey-start{break-inside:avoid;page-break-inside:avoid;}
.tb-final-report-rows{display:flex;flex-direction:column;gap:12px;}
.tb-final-report-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start;break-inside:avoid;page-break-inside:avoid;}
.tb-final-report-row-full{grid-template-columns:1fr;}
.tb-final-report-row-cell{min-width:0;break-inside:avoid;page-break-inside:avoid;}
.tb-final-report-row-cell-empty{visibility:hidden;}
.tb-final-report-section-dense{margin-top:16px;}
.tb-final-report-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.tb-final-report-columns-2,
.tb-final-report-achievements{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  align-items:start;
}
.tb-final-report-columns-2-cards{
  gap:14px;
}
.tb-final-report-metrics-table{
  width:100%;
  display:table !important;
  border-collapse:separate;
  border-spacing:8px;
  table-layout:fixed;
  margin:0 0 4px;
}
.tb-final-report-metrics-table tbody{display:table-row-group !important;}
.tb-final-report-metrics-table tr{display:table-row !important;}
.tb-final-report-metrics-table td{
  display:table-cell !important;
  vertical-align:top;
  width:25%;
  padding:0;
}
.tb-final-report-metrics-table-cols-6 td{width:16.66%;}
.tb-final-report-metrics-table-cols-5 td{width:20%;}
.tb-final-report-metrics-table-cols-4 td{width:25%;}
.tb-final-report-metrics-table-cols-3 td{width:33.33%;}
.tb-final-report-metrics-table-cols-2 td{width:50%;}
.tb-final-report-card-compact{
  min-height:88px;
}
.tb-final-report-metrics-table-cols-6 .tb-final-report-card-compact{
  min-height:74px;
}
.tb-final-report-metrics-table-cols-6 .tb-final-report-card span{
  font-size:11px;
}
.tb-final-report-metrics-table-cols-6 .tb-final-report-card strong{
  font-size:14px;
}
.tb-final-report-page-shell{
  border-bottom:1px solid var(--tb-border,#d8deea);
  padding-bottom:12px;
  margin-bottom:16px;
}
.tb-final-report-timeline{display:grid;gap:12px;}
.tb-final-report-timeline-item{
  display:grid;
  grid-template-columns:160px 1fr;
  gap:14px;
  border-left:4px solid #253263;
  padding:10px 0 10px 14px;
}
.tb-final-report-timeline-date{font-size:12px;color:var(--tb-muted,#64748b);font-weight:600;}
.tb-final-report-timeline-body strong{display:block;margin-bottom:4px;}
.tb-final-report-session,
.tb-final-report-radar-area{
  border:1px solid var(--tb-border,#d8deea);
  border-radius:16px;
  padding:14px;
  margin-top:12px;
  background:rgba(255,255,255,.5);
  box-sizing:border-box;
  overflow:hidden;
  break-inside:avoid;
  page-break-inside:avoid;
}
.tb-final-report-qna{margin-top:10px;}
.tb-final-report-qna strong{display:block;margin-bottom:4px;}
.tb-final-report-rich{margin-top:10px;}
.tb-final-report-list ul{margin:8px 0 0 18px;}
.tb-final-report-list li{break-inside:avoid;page-break-inside:avoid;}
.tb-final-report-list-columns ul{column-count:2;column-gap:24px;}
.tb-final-report-row-cell-session > .tb-final-report-session,.tb-final-report-row-cell-feedback > .tb-final-report-feedback-card,.tb-final-report-row-cell-timeline > .tb-final-report-timeline-item,.tb-final-report-row-cell-journey > .tb-final-report-journey-card{margin-top:0;margin-bottom:0;}
.tb-final-report-feedback-group{margin-top:14px;}
.tb-final-report-feedback-head strong{display:block;color:#253263;}
.tb-final-report-columns-2-cards > .tb-final-report-session,
.tb-final-report-columns-2-cards > .tb-final-report-feedback-card{margin-top:0;}
.tb-final-report-feedback-columns > .tb-final-report-feedback-card{display:block;}
.tb-final-report-feedback-card{margin-top:0;}
.tb-final-report-journey-stage{margin-top:12px;break-inside:avoid;page-break-inside:avoid;}
.tb-final-report-journey-stage-title{font-size:14px;font-weight:700;color:#253263;border-bottom:1px solid var(--tb-border,#d8deea);padding-bottom:6px;margin-bottom:10px;}
.tb-final-report-journey-stage-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.tb-final-report-journey-card{border:1px solid var(--tb-border,#d8deea);border-radius:16px;padding:12px;background:rgba(248,251,255,.92);break-inside:avoid;page-break-inside:avoid;}
.tb-final-report-journey-card-top{display:flex;gap:10px;align-items:flex-start;}
.tb-final-report-journey-icon{flex:0 0 44px;width:44px;height:44px;border-radius:14px;border:1px solid var(--tb-border,#d8deea);background:#eef4fb;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.tb-final-report-journey-icon img{width:100%;height:100%;display:block;object-fit:cover;}
.tb-final-report-journey-icon span{display:block;font-size:22px;line-height:1;}
.tb-final-report-journey-head{min-width:0;flex:1;}
.tb-final-report-journey-title{font-weight:700;color:#253263;line-height:1.3;}
.tb-final-report-journey-status{display:inline-block;margin-top:4px;padding:4px 8px;border-radius:999px;font-size:12px;font-weight:600;background:#e5e7eb;color:#334155;}
.tb-final-report-journey-status.is-completed{background:#dcfce7;color:#166534;}
.tb-final-report-journey-status.is-in_progress{background:#dbeafe;color:#1d4ed8;}
.tb-final-report-journey-status.is-attention{background:#fef3c7;color:#92400e;}
.tb-final-report-journey-status.is-pending{background:#e5e7eb;color:#475569;}
.tb-final-report-journey-description{margin-top:10px;line-height:1.45;overflow-wrap:anywhere;}
.tb-final-report-journey-meta{margin-top:8px;font-size:12px;color:#475569;line-height:1.4;overflow-wrap:anywhere;}
.tb-final-report-journey-progress{margin-top:10px;height:8px;border-radius:999px;background:#e2e8f0;overflow:hidden;}
.tb-final-report-journey-progress span{display:block;height:100%;background:#253263;}
.tb-final-report-breakable,
.tb-final-report-qna p,
.tb-final-report-qna strong,
.tb-final-report-rich,
.tb-final-report-rich p,
.tb-final-report-list li,
.tb-final-report-timeline-body p{overflow-wrap:anywhere;word-break:normal;}
.tb-final-report-section h2,.tb-final-report-section h3{page-break-after:avoid;break-after:avoid;}
.tb-final-report-rich p,.tb-final-report-section p,.tb-final-report-timeline-body p{orphans:3;widows:3;}
.tb-final-report-session,.tb-final-report-feedback-card,.tb-final-report-timeline-item,.tb-final-report-achievement,.tb-final-report-journey-card{box-sizing:border-box;}
.tb-final-report-achievement{
  border:1px solid var(--tb-border,#d8deea);
  border-radius:16px;
  padding:12px;
  background:rgba(248,251,255,.9);
  display:flex;
  gap:12px;
  align-items:flex-start;
}
.tb-final-report-achievement-media{flex:0 0 56px;width:56px;height:56px;border-radius:16px;border:1px solid var(--tb-border,#d8deea);background:#eef4fb;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.tb-final-report-achievement-media img{width:100%;height:100%;display:block;object-fit:cover;}
.tb-final-report-achievement-media span{display:block;font-size:28px;line-height:1;}
.tb-final-report-achievement-body{min-width:0;flex:1;}
.tb-final-report-achievement-head strong{display:block;color:#253263;margin-bottom:4px;}
.tb-final-report-achievement-head span{display:inline-block;font-size:12px;color:var(--tb-muted,#64748b);margin-bottom:6px;}
.tb-final-report-achievement-meta{font-size:12px;color:#334155;margin-top:6px;}
.tb-final-report-timeline{display:grid;gap:12px;}
.tb-final-report-timeline-grid .tb-final-report-row{grid-template-columns:repeat(2,minmax(0,1fr));}
.tb-final-report-legal{
  border-top:1px solid var(--tb-border,#d8deea);
  padding-top:12px;
}
.tb-theme-dark .tb-final-report-panel,
.tb-theme-dark .tb-final-report-scope,
.tb-theme-dark .tb-final-report-session,
.tb-theme-dark .tb-final-report-radar-area,
.tb-theme-dark .tb-final-report-metric,
.tb-theme-dark .tb-final-report-card{
  background:rgba(15,23,42,.7);
  border-color:rgba(148,163,184,.25);
}
.tb-theme-dark .tb-final-report-kicker,
.tb-theme-dark .tb-final-report-metric span,
.tb-theme-dark .tb-final-report-card span,
.tb-theme-dark .tb-final-report-achievement-head span,
.tb-theme-dark .tb-final-report-timeline-date{color:#94a3b8;}
.tb-theme-dark .tb-final-report-metric strong,
.tb-theme-dark .tb-final-report-card strong,
.tb-theme-dark .tb-final-report-achievement-head strong,
.tb-theme-dark .tb-final-report-scope,
.tb-theme-dark .tb-final-report-scope p,
.tb-theme-dark .tb-final-report-scope li{color:#e5e7eb;}
.tb-theme-dark .tb-final-report-achievement,
.tb-theme-dark .tb-final-report-journey-card{background:rgba(15,23,42,.7);border-color:rgba(148,163,184,.25);}
.tb-theme-dark .tb-final-report-journey-title,
.tb-theme-dark .tb-final-report-feedback-head strong{color:#e5e7eb;}
.tb-theme-dark .tb-final-report-journey-meta{color:#94a3b8;}
@media (max-width: 782px){
  .tb-final-report-timeline-item{grid-template-columns:1fr;gap:6px;}
  .tb-final-report-meta-grid,
  .tb-final-report-metrics{grid-template-columns:1fr;}
  .tb-final-report-grid,
  .tb-final-report-columns-2,
  .tb-final-report-achievements,
  .tb-final-report-timeline,
  .tb-final-report-journey-stage-grid,
  .tb-final-report-row{grid-template-columns:1fr;}
  .tb-final-report-list-columns ul{column-count:1;}
  .tb-final-report-metrics-table,
  .tb-final-report-metrics-table tbody,
  .tb-final-report-metrics-table tr,
  .tb-final-report-metrics-table td{display:block;width:100% !important;}
  .tb-final-report-metrics-table{border-spacing:0;}
  .tb-final-report-metrics-table td{margin-bottom:12px;}
}

/* PDF relatório completo: layout por linhas estáveis para evitar cortes em quebra de página*/
.tb-final-report-rows{display:block;width:100%;}
.tb-final-report-row{display:table;width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0 0;margin:0 0 12px;break-inside:avoid;page-break-inside:avoid;}
.tb-final-report-row-cell{display:table-cell;float:none !important;vertical-align:top;width:50%;padding-right:12px;box-sizing:border-box;break-inside:avoid;page-break-inside:avoid;}
.tb-final-report-row-cell + .tb-final-report-row-cell{padding-right:0;padding-left:12px;}
.tb-final-report-row-full{display:block;}
.tb-final-report-row-full .tb-final-report-row-cell,.tb-final-report-row-cell-full{display:block;width:100%;padding-left:0;padding-right:0;}
.tb-final-report-achievements{display:block;width:100%;}
.tb-final-report-achievement{width:auto;float:none;margin:0;}
.tb-final-report-row-cell-achievement > .tb-final-report-achievement,.tb-final-report-row-cell-session > .tb-final-report-session,.tb-final-report-row-cell-feedback > .tb-final-report-feedback-card,.tb-final-report-row-cell-timeline > .tb-final-report-timeline-item,.tb-final-report-row-cell-journey > .tb-final-report-journey-card{margin-top:0 !important;margin-bottom:0 !important;}
.tb-final-report-row-cell-empty{visibility:hidden !important;padding-left:0;padding-right:0;}

.tb-activity-template-modal-card{width:min(100%,1080px);max-width:1080px;display:flex;flex-direction:column;}
.tb-activity-template-modal-body{display:flex;flex-direction:column;min-height:0;flex:1 1 auto;overflow:auto;}
.tb-activity-template-toolbar{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(220px,1fr);gap:12px;margin-top:4px;}
.tb-activity-template-layout{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:16px;margin-top:14px;align-items:start;}
.tb-activity-template-list{display:grid;gap:10px;max-height:460px;overflow:auto;padding-right:4px;}
.tb-activity-template-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:14px;padding-top:14px;border-top:1px solid #e2e8f0;}
.tb-activity-template-footer-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end;}
.tb-activity-template-toggle-preview{display:none;}
.tb-activity-template-item{display:flex;flex-direction:column;align-items:flex-start;gap:6px;width:100%;padding:14px 16px;border:1px solid #d7deea;border-radius:16px;background:#ffffff;color:#0f172a;text-align:left;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;}
.tb-activity-template-item:hover,.tb-activity-template-item:focus-visible{border-color:#61ce70;box-shadow:0 10px 24px rgba(15,23,42,.08);outline:none;transform:translateY(-1px);}
.tb-activity-template-item.is-selected{border-color:#61ce70;background:#f6fff8;box-shadow:0 12px 28px rgba(97,206,112,.16);}
.tb-activity-template-item-title{font-size:15px;font-weight:800;line-height:1.35;}
.tb-activity-template-item-meta{font-size:13px;line-height:1.5;color:#64748b;}
.tb-activity-template-preview{min-height:420px;}
.tb-activity-template-preview-card,.tb-activity-template-preview-empty{border:1px solid #d7deea;border-radius:18px;background:#f8fafc;padding:18px;}
.tb-activity-template-preview-empty{display:flex;align-items:center;justify-content:center;min-height:220px;color:#64748b;text-align:center;}
.tb-activity-template-preview-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:12px;}
.tb-activity-template-links,.tb-goal-summary-links,.tb-goal-template-origin{margin-top:14px;padding:12px 14px;border-radius:14px;background:#ffffff;border:1px solid #d7deea;}
.tb-activity-template-links span,.tb-goal-summary-links span{display:block;font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#64748b;margin-bottom:8px;}
.tb-goal-template-origin{font-size:13px;font-weight:700;color:#166534;background:#f0fdf4;border-color:#bbf7d0;}
.tb-goal-summary-links a,.tb-activity-template-links a{overflow-wrap:anywhere;word-break:break-word;}
.tb-wrap.tb-theme-dark .tb-activity-template-item,
body.tb-theme-dark .tb-activity-template-item,
.tb-wrap.tb-theme-dark .tb-activity-template-preview-card,
body.tb-theme-dark .tb-activity-template-preview-card,
.tb-wrap.tb-theme-dark .tb-activity-template-preview-empty,
body.tb-theme-dark .tb-activity-template-preview-empty,
.tb-wrap.tb-theme-dark .tb-activity-template-links,
body.tb-theme-dark .tb-activity-template-links,
.tb-wrap.tb-theme-dark .tb-goal-summary-links,
body.tb-theme-dark .tb-goal-summary-links,
.tb-wrap.tb-theme-dark .tb-goal-template-origin,
body.tb-theme-dark .tb-goal-template-origin{background:linear-gradient(180deg,rgba(15,23,42,.9) 0%,rgba(7,14,30,.98) 100%) !important;border-color:rgba(148,163,184,.18) !important;color:#e5edf8 !important;}
.tb-wrap.tb-theme-dark .tb-activity-template-item.is-selected,
body.tb-theme-dark .tb-activity-template-item.is-selected{border-color:rgba(97,206,112,.55) !important;box-shadow:0 12px 28px rgba(0,0,0,.24) !important;}
.tb-wrap.tb-theme-dark .tb-activity-template-item-meta,
body.tb-theme-dark .tb-activity-template-item-meta,
.tb-wrap.tb-theme-dark .tb-activity-template-preview-empty,
body.tb-theme-dark .tb-activity-template-preview-empty,
.tb-wrap.tb-theme-dark .tb-activity-template-links span,
body.tb-theme-dark .tb-activity-template-links span,
.tb-wrap.tb-theme-dark .tb-goal-summary-links span,
body.tb-theme-dark .tb-goal-summary-links span{color:#cbd5e1 !important;}
.tb-wrap.tb-theme-dark .tb-goal-template-origin,
body.tb-theme-dark .tb-goal-template-origin{color:#bbf7d0 !important;}
@media (max-width: 960px){
  .tb-activity-template-layout{grid-template-columns:1fr;}
  .tb-activity-template-preview{min-height:0;}
}
@media (max-width: 640px){
  .tb-activity-template-toolbar{grid-template-columns:1fr;}
  .tb-activity-template-modal-card{padding:12px;width:100%;max-width:none;height:calc(100dvh - 20px);max-height:calc(100dvh - 20px);border-radius:18px;}
  .tb-activity-template-modal-body{overflow:auto;}
  .tb-activity-template-layout{grid-template-columns:1fr;gap:12px;}
  .tb-activity-template-list{max-height:none;overflow:visible;padding-right:0;}
  #tbActivityTemplateModal.tb-activity-template-preview-collapsed .tb-activity-template-preview{display:none;}
  .tb-activity-template-footer{position:relative;z-index:2;background:#fff;padding-bottom:calc(env(safe-area-inset-bottom, 0px) + 2px);}
  .tb-activity-template-status{width:100%;}
  .tb-activity-template-footer-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%;}
  .tb-activity-template-footer-actions .tb-btn{width:100%;justify-content:center;}
  .tb-activity-template-toggle-preview{display:inline-flex;grid-column:1 / -1;}
}


.tb-goal-routine-board-wrap.is-empty{display:none;}
.tb-goal-routine-board{display:grid;gap:14px;margin-top:2px;}
.tb-goal-routine-board-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.tb-goal-routine-board-kicker{font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#64748b;}
.tb-goal-routine-board-title{margin-top:4px;font-size:20px;font-weight:800;line-height:1.2;color:#0f172a;}
.tb-goal-routine-board-desc{margin-top:6px;font-size:14px;line-height:1.55;color:#475569;max-width:760px;}
.tb-goal-routine-board-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.tb-goal-routine-board-card{display:grid;gap:12px;padding:16px 18px;border:1px solid #d7deea;border-radius:20px;background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%);box-shadow:0 12px 28px rgba(15,23,42,.05);}
.tb-goal-routine-board-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;}
.tb-goal-routine-board-card-title{font-size:16px;font-weight:800;line-height:1.3;color:#0f172a;}
.tb-goal-routine-board-card-meta{margin-top:4px;font-size:13px;line-height:1.5;color:#475569;}
.tb-goal-routine-board-counter{display:inline-flex;align-items:center;justify-content:center;padding:7px 10px;border-radius:999px;background:#eef2ff;border:1px solid #c7d2fe;color:#29407a;font-size:12px;font-weight:800;white-space:nowrap;}
.tb-goal-routine-board-track,.tb-goal-routine-quick-track{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.tb-goal-routine-board-step,.tb-goal-routine-mini-step{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;padding:0 10px;border-radius:999px;border:1px solid #d7deea;background:#ffffff;color:#475569;font-size:12px;font-weight:800;box-sizing:border-box;}
.tb-goal-routine-mini-step{min-width:28px;height:28px;padding:0 8px;font-size:11px;}
.tb-goal-routine-board-step.is-completed,.tb-goal-routine-mini-step.is-completed{background:#dcfce7;border-color:#86efac;color:#166534;}
.tb-goal-routine-board-step.is-active,.tb-goal-routine-mini-step.is-active{background:#dbeafe;border-color:#93c5fd;color:#1d4ed8;}
.tb-goal-routine-board-step.is-ready,.tb-goal-routine-mini-step.is-ready{background:#eef2ff;border-color:#c7d2fe;color:#29407a;}
.tb-goal-routine-board-step.is-locked,.tb-goal-routine-mini-step.is-locked{background:#f8fafc;border-style:dashed;color:#64748b;}
.tb-goal-routine-board-helper,.tb-goal-routine-quick-helper{font-size:13px;line-height:1.55;color:#475569;}
.tb-goal-manual-release-box{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:12px;padding:12px 14px;border-radius:16px;border:1px solid #d7deea;background:#fffaf0;}
.tb-goal-manual-release-box.is-done{background:#f0fdf4;border-color:#86efac;}
.tb-goal-manual-release-title{font-size:13px;font-weight:800;line-height:1.35;color:#0f172a;}
.tb-goal-manual-release-desc{margin-top:4px;font-size:12px;line-height:1.5;color:#475569;max-width:620px;}
.tb-goal-manual-release-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.tb-goal-routine-quick-slot{display:grid;gap:10px;}
.tb-goal-routine-quick{display:grid;gap:10px;margin-top:2px;padding:13px 14px;border-radius:16px;border:1px solid #d7deea;background:#fff;}
.tb-goal-routine-quick-head{display:flex;gap:8px;flex-wrap:wrap;align-items:center;}
.tb-goal-routine-chip{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;background:#f8fafc;border:1px solid #d7deea;color:#334155;font-size:12px;font-weight:700;}
.tb-goal-routine-chip.is-state{background:#eef2ff;border-color:#c7d2fe;color:#29407a;}
.tb-program-portal-routine-wrap{margin-top:14px;display:grid;gap:12px;}
.tb-program-portal-routine-head{display:grid;gap:6px;}
.tb-program-portal-routine-title{font-size:18px;font-weight:800;line-height:1.25;color:#0f172a;}
.tb-program-portal-routine-desc{font-size:14px;line-height:1.55;color:#475569;}
.tb-goal-portal-routine-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px;}
.tb-goal-portal-routine-chip{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;border:1px solid #d7deea;background:#fff;color:#334155;font-size:12px;font-weight:700;}
.tb-goal-portal-routine-chip.is-state{background:#eef2ff;border-color:#c7d2fe;color:#29407a;}
.tb-goal-portal-routine-track{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px;}
@media (max-width: 960px){
  .tb-goal-routine-board-grid{grid-template-columns:1fr;}
}
@media (max-width: 782px){
  .tb-goal-routine-board-card{padding:14px;}
  .tb-goal-routine-board-title{font-size:18px;}
}

.tb-wrap.tb-theme-dark .tb-journey-timeline-badge,
body.tb-theme-dark .tb-journey-timeline-badge{background:rgba(15,23,42,.92) !important;border-color:rgba(148,163,184,.28) !important;color:#e2e8f0 !important;}
.tb-wrap.tb-theme-dark .tb-journey-timeline-badge.is-info,
body.tb-theme-dark .tb-journey-timeline-badge.is-info{background:rgba(37,99,235,.18) !important;border-color:rgba(59,130,246,.28) !important;color:#bfdbfe !important;}
.tb-wrap.tb-theme-dark .tb-journey-timeline-badge.is-active,
body.tb-theme-dark .tb-journey-timeline-badge.is-active{background:rgba(29,78,216,.24) !important;border-color:rgba(96,165,250,.3) !important;color:#bfdbfe !important;}
.tb-wrap.tb-theme-dark .tb-journey-timeline-badge.is-completed,
body.tb-theme-dark .tb-journey-timeline-badge.is-completed{background:rgba(22,101,52,.28) !important;border-color:rgba(74,222,128,.3) !important;color:#bbf7d0 !important;}
.tb-wrap.tb-theme-dark .tb-journey-timeline-badge.is-warning,
body.tb-theme-dark .tb-journey-timeline-badge.is-warning{background:rgba(146,64,14,.38) !important;border-color:rgba(252,211,77,.28) !important;color:#fde68a !important;}
.tb-wrap.tb-theme-dark .tb-goal-manual-release-box,
body.tb-theme-dark .tb-goal-manual-release-box{background:rgba(146,64,14,.24) !important;border-color:rgba(252,211,77,.24) !important;}
.tb-wrap.tb-theme-dark .tb-goal-manual-release-box.is-done,
body.tb-theme-dark .tb-goal-manual-release-box.is-done{background:rgba(22,101,52,.24) !important;border-color:rgba(74,222,128,.24) !important;}
.tb-wrap.tb-theme-dark .tb-goal-manual-release-title,
body.tb-theme-dark .tb-goal-manual-release-title,
.tb-wrap.tb-theme-dark .tb-goal-manual-release-desc,
body.tb-theme-dark .tb-goal-manual-release-desc{color:#e2e8f0 !important;}
.tb-wrap.tb-theme-dark .tb-goal-routine-board-card,
body.tb-theme-dark .tb-goal-routine-board-card,
.tb-wrap.tb-theme-dark .tb-goal-routine-quick,
body.tb-theme-dark .tb-goal-routine-quick,
.tb-wrap.tb-theme-dark .tb-goal-portal-routine-chip,
body.tb-theme-dark .tb-goal-portal-routine-chip,
.tb-wrap.tb-theme-dark .tb-goal-routine-chip,
body.tb-theme-dark .tb-goal-routine-chip{background:linear-gradient(180deg,rgba(15,23,42,.92) 0%,rgba(7,14,30,.98) 100%);border-color:rgba(148,163,184,.18);color:#e5edf8;}
.tb-wrap.tb-theme-dark .tb-goal-routine-board-title,
body.tb-theme-dark .tb-goal-routine-board-title,
.tb-wrap.tb-theme-dark .tb-goal-routine-board-card-title,
body.tb-theme-dark .tb-goal-routine-board-card-title,
.tb-wrap.tb-theme-dark .tb-program-portal-routine-title,
body.tb-theme-dark .tb-program-portal-routine-title{color:#ffffff;}
.tb-wrap.tb-theme-dark .tb-goal-routine-board-desc,
body.tb-theme-dark .tb-goal-routine-board-desc,
.tb-wrap.tb-theme-dark .tb-goal-routine-board-card-meta,
body.tb-theme-dark .tb-goal-routine-board-card-meta,
.tb-wrap.tb-theme-dark .tb-goal-routine-board-helper,
body.tb-theme-dark .tb-goal-routine-board-helper,
.tb-wrap.tb-theme-dark .tb-goal-routine-quick-helper,
body.tb-theme-dark .tb-goal-routine-quick-helper,
.tb-wrap.tb-theme-dark .tb-program-portal-routine-desc,
body.tb-theme-dark .tb-program-portal-routine-desc{color:#cbd5e1;}
.tb-wrap.tb-theme-dark .tb-goal-routine-board-step,
body.tb-theme-dark .tb-goal-routine-board-step,
.tb-wrap.tb-theme-dark .tb-goal-routine-mini-step,
body.tb-theme-dark .tb-goal-routine-mini-step{background:rgba(15,23,42,.88);border-color:rgba(148,163,184,.18);color:#cbd5e1;}

.tb-goal-therapeutic-band-preset-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;}
.tb-goal-therapeutic-band-preset-helper{margin-top:8px;font-size:12px;line-height:1.5;color:#64748b;}
.tb-wrap.tb-theme-dark .tb-goal-therapeutic-band-preset-helper,
body.tb-theme-dark .tb-goal-therapeutic-band-preset-helper{color:#cbd5e1 !important;}
@media (max-width: 640px){
  .tb-goal-therapeutic-band-preset-row{grid-template-columns:1fr;}
}


.tb-goal-field-helper{font-size:12px;line-height:1.45;color:#64748b;margin:4px 0 8px;}
.tb-goal-activity-clinical-preset-helper,.tb-goal-therapeutic-band-preset-helper{font-size:12px;line-height:1.45;color:#64748b;margin-top:8px;}


.tb-client-portal .tb-delivery-player-mobile.is-consent-jump,
.tb-client-portal .tb-delivery-player-desktop.is-consent-jump{
  cursor:pointer;
}

.tb-client-portal .tb-delivery-player-mobile.is-consent-jump .tb-pre,
.tb-client-portal .tb-delivery-player-desktop.is-consent-jump .tb-pre{
  transition: box-shadow .25s ease, transform .25s ease, border-color .25s ease;
}

.tb-client-portal .tb-delivery-player-mobile.is-consent-jump:hover .tb-pre,
.tb-client-portal .tb-delivery-player-mobile.is-consent-jump:focus .tb-pre,
.tb-client-portal .tb-delivery-player-desktop.is-consent-jump:hover .tb-pre,
.tb-client-portal .tb-delivery-player-desktop.is-consent-jump:focus .tb-pre{
  border-color:#f59e0b;
  box-shadow:0 0 0 3px rgba(245,158,11,.16);
  transform:translateY(-1px);
}

.tb-client-portal .tb-consent-scroll-target{
  transition: box-shadow .25s ease, border-color .25s ease;
}

.tb-client-portal .tb-consent-scroll-target.is-scroll-highlight{
  border-color:#60a5fa !important;
  box-shadow:0 0 0 4px rgba(96,165,250,.18);
}


/* =========================================================
 Portal do Cliente mobile: Sair + Instalar app lado a lado + base push PWA
=========================================================*/
@media (max-width: 768px){
  .tb-client-portal .tb-client-portal-actions:not(.tb-client-portal-actions-preview){
    display:flex !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    justify-content:flex-end !important;
    width:100% !important;
    gap:8px !important;
  }

  .tb-client-portal .tb-client-portal-actions:not(.tb-client-portal-actions-preview) .tb-client-portal-logout,
  .tb-client-portal .tb-client-portal-actions:not(.tb-client-portal-actions-preview) .tb-client-portal-install-btn-mobile{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    flex:1 1 0 !important;
    min-width:0 !important;
    width:auto !important;
    min-height:46px !important;
    padding:8px 10px !important;
    border-radius:12px !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    font-size:12px !important;
    line-height:1 !important;
    gap:6px !important;
  }

  .tb-client-portal .tb-client-portal-actions:not(.tb-client-portal-actions-preview) .tb-client-portal-logout{
    order:1 !important;
  }

  .tb-client-portal .tb-client-portal-actions:not(.tb-client-portal-actions-preview) .tb-client-portal-install-btn-mobile{
    order:2 !important;
  }

  .tb-client-portal .tb-client-portal-actions:not(.tb-client-portal-actions-preview) .tb-central-bell,
  .tb-client-portal .tb-client-portal-actions:not(.tb-client-portal-actions-preview) .tb-patient-bell,
  .tb-client-portal .tb-client-portal-actions:not(.tb-client-portal-actions-preview) .tb-patient-central-bell,
  .tb-client-portal .tb-client-portal-actions:not(.tb-client-portal-actions-preview) .tb-notification-bell{
    order:3 !important;
    flex:0 0 48px !important;
    width:48px !important;
    height:48px !important;
    min-width:48px !important;
    min-height:48px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:999px !important;
    align-self:center !important;
  }

  .tb-client-portal .tb-client-portal-actions:not(.tb-client-portal-actions-preview) .tb-btn .dashicons,
  .tb-client-portal .tb-client-portal-actions:not(.tb-client-portal-actions-preview) a.tb-btn .dashicons{
    width:14px !important;
    height:14px !important;
    font-size:14px !important;
    margin:0 !important;
  }

  .tb-client-portal .tb-client-portal-actions:not(.tb-client-portal-actions-preview) .tb-client-portal-btn-label{
    display:inline-block !important;
    min-width:0 !important;
    font-size:12px !important;
    line-height:1.05 !important;
    font-weight:700 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }
}


/* =========================================================
 Portal do Cliente: menu hambúrguer + popup push + correção de duplicidade
=========================================================*/
body.tb-client-menu-open{
  overflow:hidden;
}

.tb-client-portal .tb-client-mobilebar{
  display:none;
  align-items:center;
  gap:12px;
  margin:0 0 12px 0;
}

.tb-client-portal .tb-client-mobilebar .tb-mobilebar-text{
  flex:1 1 auto;
  min-width:0;
}

.tb-client-portal .tb-client-mobilebar .tb-mobilebar-title{
  font-size:16px;
}

.tb-client-portal .tb-client-mobilebar .tb-mobilebar-sub{
  display:block;
}

.tb-client-mobilebar-actions{
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:8px;
}

.tb-client-portal .tb-client-portal-topbar{
  display:block !important;
}

.tb-client-portal .tb-client-portal-install-row,
.tb-client-portal .tb-client-portal-install-btn-desktop,
.tb-client-portal .tb-client-portal-install-btn-mobile{
  display:none !important;
}

.tb-client-portal .tb-client-portal-header-menu{
  width:100%;
}

.tb-client-portal .tb-client-portal-actions-menu{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
}

.tb-client-portal .tb-client-portal-actions-menu .tb-central-bell,
.tb-client-mobilebar-actions .tb-central-bell{
  margin-left:0;
}

.tb-client-menu-toggle{
  width:46px;
  height:46px;
  border-radius:14px;
}

.tb-client-menu-overlay{
  position:fixed;
  inset:0;
  z-index:100110;
  background:rgba(15,23,42,.42);
  display:none;
  pointer-events:none;
  opacity:0;
}

.tb-client-menu-overlay.is-open{
  display:block;
  pointer-events:auto;
  opacity:1;
}

.tb-client-menu-drawer{
  position:fixed;
  top:0;
  right:0;
  bottom:0;
  z-index:100111;
  width:min(84vw,320px);
  min-width:0;
  padding:18px 14px 24px;
  background:var(--tb-color-bg,#ffffff);
  border-left:1px solid var(--tb-color-border,#e6eaf2);
  box-shadow:0 18px 50px rgba(15,23,42,.18);
  transform:translateX(110%);
  transition:transform .24s ease, visibility .24s ease;
  visibility:hidden;
  overflow:auto;
}

.tb-client-menu-drawer.is-open{
  transform:translateX(0);
  visibility:visible;
}

.tb-client-menu-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}

.tb-client-menu-title{
  font-size:18px;
  font-weight:900;
  line-height:1.15;
  color:var(--tb-color-text,#0f172a);
}

.tb-client-menu-subtitle{
  margin-top:4px;
  font-size:12px;
  line-height:1.35;
  opacity:.74;
}

.tb-client-menu-close{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:38px;
  height:38px;
  border:1px solid #d7deea;
  background:#fff;
  border-radius:12px;
  cursor:pointer;
  font-size:24px;
  line-height:1;
  color:inherit;
  flex:0 0 auto;
}

.tb-client-menu-nav{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
}

.tb-client-menu-tab{
  justify-content:space-between;
  margin-bottom:0;
}

.tb-client-menu-tab.is-disabled{
  opacity:.58;
  cursor:not-allowed;
}

.tb-client-menu-tab-main{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-width:0;
}

.tb-client-menu-tab-icon{
  font-size:18px;
  width:18px;
  height:18px;
  line-height:18px;
}

.tb-client-menu-tab-label{
  min-width:0;
}

.tb-client-menu-tab-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:24px;
  height:24px;
  padding:0 8px;
  border-radius:999px;
  background:color-mix(in srgb, var(--tb-color-primary,#243c84) 14%, #ffffff);
  color:var(--tb-color-primary,#243c84);
  font-size:12px;
  font-weight:800;
}

.tb-client-menu-divider{
  height:1px;
  margin:14px 0;
  background:var(--tb-color-border,#e6eaf2);
}

.tb-client-menu-actions{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
}

.tb-client-menu-actions .tb-btn,
.tb-client-menu-actions a.tb-btn{
  width:100%;
  justify-content:center;
  min-height:44px;
}

.tb-client-menu-actions .tb-btn .dashicons,
.tb-client-menu-actions a.tb-btn .dashicons{
  margin-right:6px;
}

.tb-push-enable-btn-client-menu{
  width:100%;
  margin-top:0;
  justify-content:center;
}

.tb-push-prompt-backdrop{
  position:fixed;
  inset:0;
  z-index:100120;
  background:rgba(15,23,42,.52);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
}

.tb-push-prompt{
  position:relative;
  width:min(460px,100%);
  background:#fff;
  border-radius:20px;
  padding:24px 18px 20px;
  box-shadow:0 20px 60px rgba(15,23,42,.24);
  color:#0f172a;
}

.tb-push-prompt-close{
  position:absolute;
  top:18px;
  right:18px;
  width:44px;
  height:44px;
  border:1px solid #cbd5e1;
  border-radius:14px;
  background:#fff;
  color:#0f172a;
  font-size:28px;
  line-height:1;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(15,23,42,.08);
}

.tb-push-prompt-close:hover,
.tb-push-prompt-close:focus-visible{
  border-color:#94a3b8;
  outline:none;
}

.tb-push-prompt-heading{
  display:flex;
  align-items:center;
  gap:12px;
  padding-right:58px;
  margin-bottom:12px;
}

.tb-push-prompt-icon{
  flex:0 0 auto;
  width:52px;
  height:52px;
  border-radius:16px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#fff7ed;
  color:#c2410c;
}

.tb-push-prompt-icon .dashicons{
  font-size:24px;
  width:24px;
  height:24px;
}

.tb-push-prompt h3{
  margin:0;
  font-size:20px;
  line-height:1.15;
}

.tb-push-prompt p{
  margin:0;
  font-size:15px;
  line-height:1.5;
  color:#334155;
}

.tb-push-prompt-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:10px;
  margin-top:16px;
}

.tb-push-prompt-actions-single{
  justify-content:flex-end;
}

@media (max-width: 980px){
  .tb-client-portal .tb-client-mobilebar{
    display:flex;
  }

  .tb-client-portal .tb-client-portal-topbar{
    display:none !important;
  }
}

@media (max-width: 768px){
  .tb-client-portal .tb-client-mobilebar{
    gap:8px;
    padding:8px 10px;
    margin-bottom:8px;
  }

  .tb-client-portal .tb-client-mobilebar .tb-mobilebar-title{
    font-size:14px;
    line-height:1.2;
  }

  .tb-client-menu-toggle{
    width:42px;
    height:42px;
    padding:0 10px;
  }

  .tb-client-menu-drawer{
    width:min(92vw,340px);
    padding:16px 14px 20px;
  }

  .tb-push-prompt-backdrop{
    padding:12px;
  }

  .tb-push-prompt{
    border-radius:18px;
    padding:64px 14px 16px;
  }

  .tb-push-prompt-close{
    top:14px;
    right:14px;
    width:40px;
    height:40px;
    border-radius:12px;
    font-size:24px;
  }

  .tb-push-prompt h3{
    font-size:18px;
  }

  .tb-push-prompt p{
    font-size:14px;
  }

  .tb-push-prompt-actions .tb-btn{
    flex:1 1 100%;
    justify-content:center;
  }
}


/* =========================================================
 PUSH DO TERAPEUTA – REVISÃO VISUAL
 =========================================================*/
.tb-push-shell{border-color:#dbe7f3;background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);}
.tb-push-shell-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;flex-wrap:wrap;}
.tb-push-shell-kicker{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#2563eb;}
.tb-push-shell-badges{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
.tb-push-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px;}
.tb-push-metric-card{padding:14px 16px;border:1px solid #dbe7f3;border-radius:18px;background:#f8fafc;box-shadow:0 10px 30px rgba(15,23,42,.04);}
.tb-push-metric-card.is-success{background:#ecfdf5;border-color:#bbf7d0;}
.tb-push-metric-card.is-info{background:#eff6ff;border-color:#bfdbfe;}
.tb-push-metric-label{font-size:13px;font-weight:700;color:#475569;}
.tb-push-metric-value{font-size:30px;line-height:1.05;font-weight:800;color:#0f172a;margin-top:8px;}
.tb-push-metric-foot{font-size:12px;color:#64748b;margin-top:6px;}
.tb-push-composer{margin-top:16px;padding:18px;border:1px solid #dbeafe;border-radius:22px;background:linear-gradient(180deg,#eff6ff 0%,#f8fbff 100%);box-shadow:0 14px 36px rgba(37,99,235,.08);}
.tb-push-composer-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap;}
.tb-push-inline-note,.tb-push-inline-alert{display:flex;gap:8px;align-items:flex-start;padding:12px 14px;border-radius:16px;border:1px solid #dbe7f3;background:#fff;color:#334155;}
.tb-push-inline-alert.is-warning{border-color:#fed7aa;background:#fff7ed;color:#9a3412;}
.tb-push-template-wrap{margin-top:14px;}
.tb-push-template-title{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#2563eb;margin-bottom:8px;}
.tb-push-template-list{display:flex;gap:10px;flex-wrap:wrap;}
.tb-push-template-btn{display:inline-flex;align-items:center;gap:8px;border-radius:999px;}
.tb-push-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px;}
.tb-push-textarea{min-height:118px;resize:vertical;}
.tb-push-counter{float:right;font-size:12px;font-weight:700;color:#64748b;}
.tb-push-composer-footer{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;margin-top:14px;}
.tb-push-check{display:flex;gap:10px;align-items:center;}
.tb-push-current-target{display:flex;gap:8px;align-items:flex-start;margin-top:12px;padding:12px 14px;border:1px solid #bfdbfe;border-radius:16px;background:#ffffff;color:#1e3a8a;font-size:13px;font-weight:700;}
.tb-push-status{margin-top:10px;padding:0;min-height:20px;font-size:13px;font-weight:700;color:#475569;}
.tb-push-status.is-loading{color:#1d4ed8;}
.tb-push-status.is-success{color:#166534;}
.tb-push-status.is-error{color:#b91c1c;}
.tb-push-clients-block{margin-top:18px;}
.tb-push-client-tools{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;margin-top:14px;}
.tb-push-filter-group{display:flex;gap:8px;flex-wrap:wrap;align-items:center;}
.tb-push-filter-btn{border-radius:999px;}
.tb-push-filter-btn.is-active{box-shadow:0 0 0 2px rgba(37,99,235,.18) inset;}
.tb-push-search-wrap{display:flex;gap:8px;align-items:center;padding:0 12px;border:1px solid #dbe7f3;border-radius:999px;background:#fff;min-width:min(100%,320px);}
.tb-push-search-wrap .dashicons{color:#64748b;}
.tb-push-search-wrap .tb-input{border:0 !important;box-shadow:none !important;background:transparent !important;padding-left:0;padding-right:0;}
.tb-push-search-wrap .tb-input:focus{outline:none;box-shadow:none !important;}
.tb-push-client-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-top:12px;}
.tb-push-client-card{border-color:#dbe7f3;box-shadow:0 10px 28px rgba(15,23,42,.04);}
.tb-push-client-title{font-weight:800;color:#0f172a;}
.tb-push-client-meta{display:flex;gap:8px;align-items:flex-start;margin-top:8px;font-size:12px;color:#64748b;}
.tb-push-chip{font-weight:700;}
.tb-push-chip.is-success{background:#ecfdf5;color:#166534;border-color:#bbf7d0;}
.tb-push-chip.is-warning{background:#fff7ed;color:#9a3412;border-color:#fdba74;}
.tb-push-use-client{border-radius:999px;}
.tb-push-empty{margin-top:12px;padding:14px 16px;border:1px dashed #cbd5e1;border-radius:16px;background:#f8fafc;color:#64748b;font-weight:700;text-align:center;}
body.admin-color-light .tb-wrap.tb-theme-dark .tb-push-shell{background:linear-gradient(180deg,#0f172a 0%,#111827 100%);border-color:#334155;}
body.admin-color-light .tb-wrap.tb-theme-dark .tb-push-metric-card{background:#111827;border-color:#334155;box-shadow:none;}
body.admin-color-light .tb-wrap.tb-theme-dark .tb-push-metric-card.is-success{background:#0f2d1e;border-color:#166534;}
body.admin-color-light .tb-wrap.tb-theme-dark .tb-push-metric-card.is-info{background:#10253f;border-color:#1d4ed8;}
body.admin-color-light .tb-wrap.tb-theme-dark .tb-push-metric-label,
body.admin-color-light .tb-wrap.tb-theme-dark .tb-push-metric-foot,
body.admin-color-light .tb-wrap.tb-theme-dark .tb-push-client-meta,
body.admin-color-light .tb-wrap.tb-theme-dark .tb-push-counter,
body.admin-color-light .tb-wrap.tb-theme-dark .tb-push-status{color:#cbd5e1;}
body.admin-color-light .tb-wrap.tb-theme-dark .tb-push-metric-value,
body.admin-color-light .tb-wrap.tb-theme-dark .tb-push-client-title{color:#f8fafc;}
body.admin-color-light .tb-wrap.tb-theme-dark .tb-push-composer{background:linear-gradient(180deg,#10253f 0%,#0f172a 100%);border-color:#1d4ed8;box-shadow:none;}
body.admin-color-light .tb-wrap.tb-theme-dark .tb-push-inline-note,
body.admin-color-light .tb-wrap.tb-theme-dark .tb-push-inline-alert{background:#111827;border-color:#334155;color:#e2e8f0;}
body.admin-color-light .tb-wrap.tb-theme-dark .tb-push-current-target{background:#111827;border-color:#1d4ed8;color:#bfdbfe;}
body.admin-color-light .tb-wrap.tb-theme-dark .tb-push-search-wrap{background:#111827;border-color:#334155;}
body.admin-color-light .tb-wrap.tb-theme-dark .tb-push-search-wrap .dashicons{color:#cbd5e1;}
body.admin-color-light .tb-wrap.tb-theme-dark .tb-push-empty{background:#111827;border-color:#334155;color:#cbd5e1;}
body.admin-color-light .tb-wrap.tb-theme-dark .tb-push-inline-alert.is-warning{border-color:#9a3412;background:#26170d;color:#fdba74;}
body.admin-color-light .tb-wrap.tb-theme-dark .tb-push-client-card{background:#0f172a;border-color:#334155;box-shadow:none;}
@media (max-width: 900px){
  .tb-push-metrics,.tb-push-form-grid{grid-template-columns:1fr;}
}
@media (max-width: 640px){
  .tb-push-composer{padding:14px;}
  .tb-push-shell-badges,.tb-push-template-list,.tb-push-client-tools{width:100%;}
  .tb-push-template-btn,.tb-push-use-client,.tb-push-filter-btn{width:100%;justify-content:center;}
  .tb-push-filter-group,.tb-push-search-wrap{width:100%;}
  .tb-push-composer-footer{align-items:stretch;}
}

.tb-report-accordion{border:1px solid #dbeafe;border-radius:16px;background:#fff;overflow:hidden;}
.tb-report-accordion summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;background:#f8fafc;color:#253263;}
.tb-report-accordion summary::-webkit-details-marker{display:none;}
.tb-report-accordion summary span{display:flex;flex-direction:column;gap:4px;}
.tb-report-accordion summary strong{font-size:16px;line-height:1.3;}
.tb-report-accordion summary small{color:#64748b;line-height:1.45;}
.tb-report-accordion summary::after{content:'+';font-size:24px;line-height:1;color:#64748b;flex:0 0 auto;}
.tb-report-accordion[open] summary::after{content:'–';}
.tb-report-accordion-body{padding:16px 18px 18px;border-top:1px solid #dbeafe;background:#fff;}
.tb-report-accordion-client{border-color:#cbd5e1;}
.tb-report-accordion-client summary{background:#f8fafc;}
body.tb-theme-dark .tb-report-accordion, .tb-wrap.tb-theme-dark .tb-report-accordion{background:#111827;border-color:rgba(148,163,184,.24);}
body.tb-theme-dark .tb-report-accordion summary, .tb-wrap.tb-theme-dark .tb-report-accordion summary{background:#0f172a;color:#e5eefc;}
body.tb-theme-dark .tb-report-accordion summary small, .tb-wrap.tb-theme-dark .tb-report-accordion summary small{color:#94a3b8;}
body.tb-theme-dark .tb-report-accordion-body, .tb-wrap.tb-theme-dark .tb-report-accordion-body{background:#111827;border-top-color:rgba(148,163,184,.24);}
@media (max-width: 782px){
  .tb-report-accordion summary{padding:14px 16px;}
  .tb-report-accordion-body{padding:14px 16px 16px;}
}

@media (max-width:768px){
  .tb-client-portal #tbPortalAnalysis .tb-report-font-controls .tb-btn{
    width:auto !important;
    max-width:none !important;
    flex:0 0 auto !important;
    min-width:48px !important;
    padding:8px 10px !important;
    justify-content:center !important;
  }
}


body.tb-therapist-notification-open{overflow:hidden;}
.tb-therapist-notification-overlay{
  position:fixed;
  inset:0;
  background:rgba(15,23,42,.45);
  opacity:0;
  pointer-events:none;
  transition:opacity .2s ease;
  z-index:99990;
}
.tb-therapist-notification-overlay.is-open{
  opacity:1;
  pointer-events:auto;
}
.tb-therapist-notification-drawer{
  position:fixed;
  top:0;
  right:0;
  width:min(460px, calc(100vw - 18px));
  height:100vh;
  background:#ffffff;
  box-shadow:-16px 0 40px rgba(15,23,42,.22);
  border-left:1px solid #d8e2f0;
  transform:translateX(104%);
  transition:transform .24s ease;
  z-index:99991;
  display:flex;
  flex-direction:column;
}
.tb-therapist-notification-drawer.is-open{transform:translateX(0);}
.tb-therapist-notification-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  padding:20px 20px 16px;
  border-bottom:1px solid #e5edf5;
  background:#f8fbff;
}
.tb-therapist-notification-kicker{
  font-size:11px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:#64748b;
  margin-bottom:6px;
}
.tb-therapist-notification-head h3{
  margin:0;
  font-size:24px;
  line-height:1.1;
  color:#0f172a;
}
.tb-therapist-notification-head p{
  margin:8px 0 0;
  font-size:13px;
  line-height:1.5;
  color:#64748b;
}
.tb-therapist-notification-head-actions{
  display:flex;
  align-items:center;
  gap:8px;
  flex:0 0 auto;
}
.tb-therapist-notification-close{
  width:42px;
  height:42px;
  border-radius:999px;
  border:1px solid #c7d2fe;
  background:#ffffff;
  color:#253263;
  font-size:24px;
  line-height:1;
  cursor:pointer;
}
.tb-therapist-notification-body{
  flex:1 1 auto;
  min-height:0;
  overflow:auto;
  padding:18px;
}
.tb-therapist-notification-loading,
.tb-therapist-notification-empty{
  border:1px dashed #cbd5e1;
  border-radius:18px;
  background:#f8fafc;
  padding:16px;
  color:#475569;
  font-size:14px;
  line-height:1.55;
}
.tb-therapist-notification-empty b{
  display:block;
  margin-bottom:6px;
  color:#0f172a;
}
.tb-therapist-notification-list{
  display:flex;
  flex-direction:column;
  gap:12px;
}
.tb-therapist-notification-item{
  display:flex;
  align-items:flex-start;
  gap:12px;
  border:1px solid #d8e2f0;
  border-radius:20px;
  background:#ffffff;
  padding:14px;
  box-shadow:0 12px 30px rgba(15,23,42,.06);
}
.tb-therapist-notification-item-icon{
  width:42px;
  height:42px;
  border-radius:14px;
  background:#eff6ff;
  color:#1d4ed8;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 42px;
}
.tb-therapist-notification-item.type-review .tb-therapist-notification-item-icon{background:#ecfdf5;color:#059669;}
.tb-therapist-notification-item.type-session .tb-therapist-notification-item-icon{background:#fff7ed;color:#ea580c;}
.tb-therapist-notification-item.type-program .tb-therapist-notification-item-icon{background:#f5f3ff;color:#7c3aed;}
.tb-therapist-notification-item.type-finance .tb-therapist-notification-item-icon{background:#fef3c7;color:#b45309;}
.tb-therapist-notification-item-copy{min-width:0;flex:1 1 auto;}
.tb-therapist-notification-item-topline{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  margin-bottom:8px;
}
.tb-therapist-notification-pill,
.tb-therapist-notification-time{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:4px 10px;
  font-size:12px;
  line-height:1.2;
}
.tb-therapist-notification-pill{
  background:#eff6ff;
  color:#1d4ed8;
  font-weight:700;
}
.tb-therapist-notification-pill.is-cycle{background:#eef2ff;color:#4338ca;}
.tb-therapist-notification-time{background:#f8fafc;color:#64748b;}
.tb-therapist-notification-item h4{
  margin:0;
  font-size:17px;
  line-height:1.35;
  color:#0f172a;
}
.tb-therapist-notification-item p{
  margin:8px 0 0;
  font-size:13px;
  line-height:1.55;
  color:#475569;
}
.tb-therapist-notification-actions{
  margin-top:12px;
  display:flex;
  justify-content:flex-start;
}
@media (max-width: 640px){
  .tb-therapist-notification-drawer{width:100vw;border-left:0;}
  .tb-therapist-notification-head{padding:16px 16px 14px;}
  .tb-therapist-notification-head h3{font-size:22px;}
  .tb-therapist-notification-body{padding:14px;}
  .tb-therapist-notification-item{padding:12px;border-radius:18px;}
}
body.tb-theme-dark .tb-therapist-notification-drawer,
.tb-wrap.tb-theme-dark .tb-therapist-notification-drawer{
  background:#0f172a;
  border-left-color:rgba(148,163,184,.18);
}
body.tb-theme-dark .tb-therapist-notification-head,
.tb-wrap.tb-theme-dark .tb-therapist-notification-head{
  background:rgba(15,23,42,.98);
  border-bottom-color:rgba(148,163,184,.18);
}
body.tb-theme-dark .tb-therapist-notification-head h3,
.tb-wrap.tb-theme-dark .tb-therapist-notification-head h3,
body.tb-theme-dark .tb-therapist-notification-item h4,
.tb-wrap.tb-theme-dark .tb-therapist-notification-item h4{color:#f8fafc;}
body.tb-theme-dark .tb-therapist-notification-head p,
.tb-wrap.tb-theme-dark .tb-therapist-notification-head p,
body.tb-theme-dark .tb-therapist-notification-time,
.tb-wrap.tb-theme-dark .tb-therapist-notification-time,
body.tb-theme-dark .tb-therapist-notification-item p,
.tb-wrap.tb-theme-dark .tb-therapist-notification-item p{color:#cbd5e1;}
body.tb-theme-dark .tb-therapist-notification-close,
.tb-wrap.tb-theme-dark .tb-therapist-notification-close{
  background:rgba(15,23,42,.9);
  border-color:rgba(148,163,184,.24);
  color:#f8fafc;
}
body.tb-theme-dark .tb-therapist-notification-item,
.tb-wrap.tb-theme-dark .tb-therapist-notification-item,
body.tb-theme-dark .tb-therapist-notification-loading,
.tb-wrap.tb-theme-dark .tb-therapist-notification-loading,
body.tb-theme-dark .tb-therapist-notification-empty,
.tb-wrap.tb-theme-dark .tb-therapist-notification-empty{
  background:rgba(15,23,42,.84);
  border-color:rgba(148,163,184,.18);
  color:#cbd5e1;
}


/* Views standalone abaixo do card do terapeuta, na mesma coluna principal*/
#tbViewProfile,
#tbViewQuestions,
#tbViewTutorials{
  width:100%;
  max-width:none;
  min-width:0;
  box-sizing:border-box;
  margin-top:12px;
  clear:both;
}

#tbMyProfileRoot,
#tbMyQuestionsRoot,
#tbViewTutorials .tb-tutorial-shell{
  width:100%;
  max-width:none !important;
  min-width:0;
  box-sizing:border-box;
}

#tbViewProfile .tb-card,
#tbViewQuestions .tb-card,
#tbViewTutorials .tb-card,
#tbViewTutorials .tb-tutorial-shell,
#tbViewProfile .tb-view-card-full,
#tbViewQuestions .tb-view-card-full{
  width:100%;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
  box-sizing:border-box;
  align-self:stretch;
}

.tb-content > #tbTherapistMini + #tbViewProfile,
.tb-content > #tbTherapistMini + #tbViewQuestions,
.tb-content > #tbTherapistMini + #tbViewTutorials{
  margin-top:12px;
}


/* Fullpage real + views do terapeuta logo abaixo do card*/
#tbAppRoot.tb-wrap,
.tb-wrap.tb-app-fullpage,
.tb-wrap.tb-client-portal{
  width:100%;
  max-width:none !important;
  margin:0 !important;
  padding:18px 24px;
  border-radius:0;
  min-height:100vh;
  box-sizing:border-box;
}

.tb-wrap.tb-app-fullpage .tb-layout,
#tbAppRoot.tb-wrap .tb-layout{
  width:100%;
  max-width:none;
  align-items:flex-start;
}

.tb-wrap.tb-app-fullpage .tb-content,
#tbAppRoot.tb-wrap .tb-content{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  min-width:0;
  width:100%;
}

#tbTherapistMini{
  width:100%;
  max-width:none;
  flex:0 0 auto;
}

#tbViewProfile,
#tbViewQuestions,
#tbViewTutorials{
  width:100%;
  max-width:none !important;
  min-width:0;
  box-sizing:border-box;
  margin-top:12px;
  flex:0 0 auto;
}

#tbViewProfile .tb-card,
#tbViewQuestions .tb-card,
#tbViewTutorials .tb-card,
#tbMyProfileRoot,
#tbMyQuestionsRoot,
#tbViewTutorials .tb-tutorial-shell{
  width:100%;
  max-width:none !important;
  min-width:0;
  margin-left:0 !important;
  margin-right:0 !important;
  box-sizing:border-box;
}

#tbViewClients,
#tbViewClients > .tb-card,
#tbClientsCards,
#tbClientsCards.tb-clients-cards-grid{
  width:100%;
  max-width:none !important;
  min-width:0;
  box-sizing:border-box;
  margin-left:0 !important;
  margin-right:0 !important;
  align-self:stretch;
}

.tb-content > #tbTherapistMini + #tbViewClients{
  margin-top:12px;
}

@media (max-width: 782px){
  #tbAppRoot.tb-wrap,
  .tb-wrap.tb-app-fullpage,
  .tb-wrap.tb-client-portal{
    padding:14px;
  }
}


/* fullpage real do workspace do cliente + alinhamento da view de clientes*/
.tb-client-workspace-shell,
.tb-client-workspace-shell *{min-width:0;}
#tbViewClients .tb-card,
#tbViewClients .tb-client-card,
#tbViewClients .tb-client-list-shell,
#tbViewClients .tb-client-table-wrap{width:100%;max-width:none !important;box-sizing:border-box;}

@media (max-width: 767px){
  #tbViewClients,
  #tbViewClients > .tb-card,
  #tbClientWorkspaceRoot,
  #tbClientWorkspaceRoot > .tb-client-workspace-shell,
  #tbClientWorkspaceContent{width:100%;max-width:none !important;}
  .tb-client-workspace-shell .tb-client-workspace-header,
  .tb-client-workspace-shell #tbClientWorkspaceContent > .tb-card,
  .tb-client-workspace-shell #tbClientWorkspaceContent > .tb-client-workspace-panel,
  .tb-client-workspace-shell #tbClientWorkspaceContent > .tb-client-workspace-section{border-radius:16px;}
}

/* abas da jornada com mais cor, destaque visual e hierarquia por seção*/

/* ciclo nativo dentro do workspace do cliente*/
.tb-client-workspace-cycle-native{margin-top:12px;}
.tb-client-workspace-cycle-native > .tb-card:first-child,
.tb-client-workspace-cycle-native #tbWorkspaceProfile{display:none !important;}
.tb-client-workspace-cycle-native .tb-tabs.tb-therapy-steps-tabs{margin-top:0;}
.tb-client-workspace-cycle-native .tb-tabpane > .tb-card{margin-top:12px;}
.tb-client-workspace-cycle-native #tbWorkspaceMain{margin-top:0;}
.tb-client-workspace-shell[data-workspace-mode="cycle"] .tb-client-workspace-menu{position:static;top:auto;}


/* Correções resumo do ciclo + editores therapist/client*/
.tb-cycle-summary-item strong{
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.tb-client-portal-shell-content{
  width:100%;
  max-width:1200px;
  margin:0 auto;
  box-sizing:border-box;
}
.tb-client-portal-shell-content > .tb-card,
.tb-client-portal-shell-content > .tb-client-portal,
.tb-client-portal-shell-content .tb-client-portal > .tb-card{
  max-width:1200px;
  margin-left:auto;
  margin-right:auto;
  box-sizing:border-box;
}

#tbTabAnalysis #wp-tbAnalysisText-wrap,
#tbTabAnalysis #wp-tbPreAnalysisText-wrap,
#tbTabDelivery #wp-tbDeliveryObjective-wrap,
#tbTabDelivery #wp-tbDeliveryUsage-wrap,
#tbTabDelivery #wp-tbDeliveryTechniques-wrap,
#tbTabDelivery #wp-tbDeliveryArchetypes-wrap,
#tbTabDelivery #wp-tbDeliveryScript-wrap,
#tbTabDelivery #wp-tbDeliveryLegal-wrap{
  position:relative;
  z-index:2;
}
#tbTabAnalysis .mce-edit-area iframe,
#tbTabDelivery .mce-edit-area iframe,
#tbTabAnalysis .wp-editor-area,
#tbTabDelivery .wp-editor-area,
#tbTabAnalysis .mce-container,
#tbTabDelivery .mce-container,
#tbTabAnalysis .mce-container-body,
#tbTabDelivery .mce-container-body,
#tbTabAnalysis .mce-top-part,
#tbTabDelivery .mce-top-part{
  pointer-events:auto !important;
}


/* Fallback robusto: quando TinyMCE é inicializado oculto, forçamos o textarea HTML a ficar editável*/
.tb-editor-force-html textarea.wp-editor-area,
#tbTabAnalysis .tb-editor-force-html textarea.wp-editor-area,
#tbTabDelivery .tb-editor-force-html textarea.wp-editor-area{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  min-height:260px !important;
  width:100% !important;
  pointer-events:auto !important;
  background:#fff !important;
  color:#111827 !important;
  padding:14px !important;
  border:0 !important;
  resize:vertical !important;
}
#tbTabAnalysis .tb-editor-force-html .mce-tinymce,
#tbTabDelivery .tb-editor-force-html .mce-tinymce{
  display:none !important;
}
#tbTabAnalysis .tb-editor-force-html .quicktags-toolbar,
#tbTabDelivery .tb-editor-force-html .quicktags-toolbar{
  display:block !important;
}
.tb-cycle-summary-item{
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

/* Editor rico nativo TerapiaBinaural — substitui TinyMCE nas abas dinâmicas 4 e 6*/
.tb-native-rich{
  width:100%;
  border:1px solid rgba(148,163,184,.38);
  border-radius:12px;
  overflow:hidden;
  background:#fff;
  box-sizing:border-box;
  position:relative;
  z-index:5;
}
.tb-native-rich-toolbar{
  display:flex;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
  padding:8px 10px;
  background:#f8fafc;
  border-bottom:1px solid rgba(148,163,184,.35);
}
.tb-native-rich-select,
.tb-native-rich-btn{
  height:34px;
  border:1px solid rgba(148,163,184,.45);
  border-radius:8px;
  background:#fff;
  color:#1f2937;
  font-size:13px;
  line-height:1;
  padding:0 10px;
  cursor:pointer;
}
.tb-native-rich-btn:hover,
.tb-native-rich-select:hover{
  background:#eef4ff;
  border-color:#93c5fd;
}
.tb-native-rich-area{
  min-height:300px;
  padding:16px;
  background:#fff;
  color:#111827;
  font-size:15px;
  line-height:1.75;
  outline:none;
  cursor:text;
  white-space:normal;
  overflow:auto;
  word-break:break-word;
  overflow-wrap:anywhere;
  pointer-events:auto !important;
  user-select:text;
}
#tbTabAnalysis .tb-native-rich-area{
  min-height:460px;
}
#tbTabDelivery .tb-native-rich-area{
  min-height:210px;
}
.tb-native-rich-area:focus{
  box-shadow:inset 0 0 0 2px rgba(37,99,235,.22);
}
.tb-native-rich-area p{margin:0 0 12px;}
.tb-native-rich-area h1,
.tb-native-rich-area h2,
.tb-native-rich-area h3{color:#253263;line-height:1.25;margin:0 0 12px;}
.tb-native-rich-area h1{font-size:24px;}
.tb-native-rich-area h2{font-size:20px;}
.tb-native-rich-area h3{font-size:17px;}
.tb-native-rich-area ul,
.tb-native-rich-area ol{margin:0 0 14px 24px;padding:0;}
.tb-native-rich-area blockquote{
  margin:12px 0;
  padding:10px 14px;
  border-left:4px solid #253263;
  background:#f8fbff;
  border-radius:10px;
}
.tb-native-rich-source-wrap,
.tb-native-rich-source-textarea{
  display:none !important;
}
@media (max-width: 760px){
  .tb-native-rich-toolbar{gap:5px;padding:7px;}
  .tb-native-rich-select,.tb-native-rich-btn{height:32px;font-size:12px;padding:0 8px;}
  .tb-native-rich-area{min-height:260px;padding:13px;font-size:14px;}
}


/* TerapiaBinaural — Editor nativo rico para áreas dinâmicas do cliente/ciclo.*/
.tb-native-rich-editor-wrap{border:1px solid #cfe0f5;border-radius:14px;background:#fff;overflow:hidden;box-shadow:0 8px 22px rgba(37,50,99,.05);}
.tb-native-rich-toolbar{display:flex;flex-wrap:wrap;gap:6px;padding:8px;background:#f8fbff;border-bottom:1px solid #dbeafe;}
.tb-native-rich-btn{border:1px solid #cfe0f5;background:#fff;color:#253263;border-radius:9px;padding:6px 10px;font-size:12px;font-weight:700;cursor:pointer;line-height:1.2;}
.tb-native-rich-btn:hover{background:#eef6ff;}
.tb-native-rich-editor{width:100%;box-sizing:border-box;padding:18px;outline:none;overflow:auto;color:#111827;font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.7;white-space:normal;pointer-events:auto!important;user-select:text;-webkit-user-select:text;}
.tb-native-rich-editor:focus{box-shadow:inset 0 0 0 2px rgba(37,99,235,.16);}
.tb-native-rich-editor p{margin:0 0 12px;}.tb-native-rich-editor h1{font-size:24px;line-height:1.25;margin:0 0 14px;color:#253263;font-weight:800;}.tb-native-rich-editor h2{font-size:20px;line-height:1.3;margin:18px 0 10px;color:#253263;font-weight:800;}.tb-native-rich-editor h3{font-size:17px;line-height:1.35;margin:16px 0 8px;color:#253263;font-weight:800;}.tb-native-rich-editor ul,.tb-native-rich-editor ol{padding-left:24px;margin:0 0 14px;}.tb-native-rich-editor blockquote{border-left:4px solid #253263;background:#f8fbff;border-radius:10px;margin:14px 0;padding:12px 16px;}.tb-native-rich-hidden{display:none!important;}

.tb-wp-editor-replaced-by-native{display:none!important;}
.tb-native-rich-editor-wrap-upgraded + .wp-editor-wrap{display:none!important;}

/* Mobile: mini-card do terapeuta no final da página, acima do rodapé*/
@media (max-width: 782px){
  #tbTherapistMiniBottom{
    display:block !important;
    width:100%;
    order:998;
    margin:18px 0 0 0 !important;
  }
  #tbTherapistMiniBottom > #tbTherapistMini{
    display:block !important;
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
  }
  .tb-system-footer{
    order:999;
  }
}

/* Mobile: força o mini-card no rodapé do conteúdo, acima do footer, sem arrastar outras views*/
@media (max-width: 782px){
  .tb-content > #tbTherapistMini{
    display:none !important;
  }
  #tbTherapistMiniBottom{
    display:block !important;
    width:100% !important;
    max-width:none !important;
    clear:both;
    margin:18px 0 0 0 !important;
  }
  #tbTherapistMiniBottom > #tbTherapistMini{
    display:block !important;
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
  }
  #tbTherapistMiniBottom + .tb-system-footer,
  .tb-system-footer{
    margin-top:14px !important;
  }
}

/* Mobile: respiro seguro na edição do cliente e botão de push contextual*/
.tb-client-form-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;}
.tb-client-workspace-push-btn,.tb-client-edit-push-btn{border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8;}
.tb-client-workspace-push-btn:hover,.tb-client-edit-push-btn:hover{background:#dbeafe;color:#1e40af;}
@media (max-width: 782px){
  #tbClientWorkspaceRoot{padding-left:14px !important;padding-right:14px !important;box-sizing:border-box;}
  .tb-client-workspace-shell{padding-left:2px;padding-right:2px;box-sizing:border-box;}
  .tb-client-workspace-header{padding:16px 14px !important;border-radius:18px;margin-left:0;margin-right:0;}
  #tbClientWorkspaceContent{padding-left:0 !important;padding-right:0 !important;box-sizing:border-box;}
  #tbClientWorkspaceContent > .tb-card,
  #tbClientWorkspaceContent > .tb-client-workspace-panel,
  #tbClientWorkspaceContent > .tb-client-workspace-section,
  .tb-client-workspace-panel{padding:16px 14px !important;border-radius:18px;margin-left:0;margin-right:0;box-sizing:border-box;}
  #tbClientWorkspaceContent .tb-card{padding:15px 14px;box-sizing:border-box;}
  .tb-client-edit-grid,
  #tbClientWorkspaceContent .tb-grid{grid-template-columns:1fr !important;gap:12px !important;}
  #tbClientWorkspaceContent label{display:block;margin-bottom:6px;line-height:1.35;}
  #tbClientWorkspaceContent .tb-input,
  #tbClientWorkspaceContent .tb-textarea,
  #tbClientWorkspaceContent select,
  #tbClientWorkspaceContent textarea,
  #tbClientWorkspaceContent input[type="text"],
  #tbClientWorkspaceContent input[type="email"],
  #tbClientWorkspaceContent input[type="tel"],
  #tbClientWorkspaceContent input[type="date"]{width:100%;max-width:100%;box-sizing:border-box;}
  #tbClientWorkspaceContent .tb-row{gap:10px;}
  #tbClientWorkspaceContent .tb-row.tb-row-between{align-items:flex-start;}
  .tb-client-form-head-actions{width:100%;justify-content:flex-start;margin-top:4px;}
  .tb-client-form-head-actions .tb-btn,
  #tbClientWorkspaceContent #tbClientSave{width:100%;justify-content:center;}
  .tb-client-workspace-push-btn{order:8;}
}
@media (max-width: 420px){
  #tbClientWorkspaceRoot{padding-left:12px !important;padding-right:12px !important;}
  #tbClientWorkspaceContent > .tb-card,
  #tbClientWorkspaceContent > .tb-client-workspace-panel,
  #tbClientWorkspaceContent > .tb-client-workspace-section,
  .tb-client-workspace-panel{padding:15px 12px !important;}
}

/* Mobile: correção real da tela Clientes > editar cliente.
 Escopo limitado à view de clientes para não afetar portal do cliente, relatórios, players ou fullpage desktop.*/
@media (max-width: 782px){
  #tbViewClients{width:100% !important;max-width:100% !important;padding-left:16px !important;padding-right:16px !important;box-sizing:border-box !important;overflow-x:hidden !important;}
  #tbViewClients > h1,#tbViewClients > h2,#tbViewClients > h3,#tbViewClients > p,#tbViewClients .tb-view-title,#tbViewClients .tb-section-title{margin-left:0 !important;margin-right:0 !important;line-height:1.22 !important;overflow-wrap:anywhere;}
  #tbViewClients .tb-card,#tbViewClients .tb-pre,#tbViewClients .tb-client-card,#tbViewClients .tb-client-card-panel,#tbViewClients #tbClientFormWrap{max-width:100% !important;box-sizing:border-box !important;}
  #tbViewClients .tb-client-card{padding:16px !important;margin-left:0 !important;margin-right:0 !important;border-radius:18px !important;}
  #tbViewClients .tb-client-card-panel.is-open,#tbViewClients .tb-client-card-panel{padding:0 !important;margin-top:14px !important;overflow:visible !important;}
  #tbViewClients .tb-client-card-panel > .tb-card,#tbViewClients #tbClientFormWrap > .tb-card{padding:16px !important;border-radius:18px !important;margin-left:0 !important;margin-right:0 !important;}
  #tbViewClients .tb-row,#tbViewClients .tb-row-between{gap:10px !important;min-width:0 !important;}
  #tbViewClients .tb-grid,#tbViewClients .tb-client-edit-grid,#tbViewClients .tb-client-card-panel .tb-grid,#tbViewClients #tbClientFormWrap .tb-grid{grid-template-columns:1fr !important;gap:12px !important;}
  #tbViewClients label,#tbViewClients .tb-muted,#tbViewClients .tb-client-card-code,#tbViewClients .tb-client-card-meta{overflow-wrap:anywhere;}
  #tbViewClients .tb-input,#tbViewClients .tb-textarea,#tbViewClients select,#tbViewClients textarea,#tbViewClients input[type="text"],#tbViewClients input[type="email"],#tbViewClients input[type="tel"],#tbViewClients input[type="date"],#tbViewClients input[type="url"]{width:100% !important;max-width:100% !important;box-sizing:border-box !important;}
  #tbViewClients .tb-client-form-head-actions{width:100% !important;justify-content:flex-start !important;gap:8px !important;}
  #tbViewClients .tb-client-form-head-actions .tb-btn,#tbViewClients #tbClientSave,#tbViewClients .tb-client-card-actions .tb-btn,#tbViewClients .tb-client-card-actions a.tb-btn{width:100% !important;justify-content:center !important;text-align:center !important;}
}
@media (max-width: 420px){
  #tbViewClients{padding-left:14px !important;padding-right:14px !important;}
  #tbViewClients .tb-client-card,#tbViewClients .tb-client-card-panel > .tb-card,#tbViewClients #tbClientFormWrap > .tb-card{padding:14px !important;}
}

/* Mobile Elementor: margem real no container do shortcode do Painel do Terapeuta.
 O Elementor estava deixando o widget do shortcode encostado na viewport; por isso o padding aplicado
 apenas em #tbViewClients não aparecia no fluxo Clientes > Editar Cliente.*/
@media (max-width: 782px){
  .elementor-element.elementor-element-c11d4bc.elementor-widget__width-inherit.elementor-widget.elementor-widget-shortcode,
  .elementor-element-c11d4bc.elementor-widget-shortcode,
  .elementor-element-c11d4bc .elementor-widget-container{
    width:100% !important;
    max-width:100vw !important;
    min-width:0 !important;
    box-sizing:border-box !important;
    overflow-x:hidden !important;
  }
  .elementor-element-c11d4bc .elementor-widget-container{
    padding-left:14px !important;
    padding-right:14px !important;
  }
  .elementor-element-c11d4bc #tbAppRoot.tb-wrap.tb-app-fullpage,
  .elementor-element-c11d4bc .tb-wrap.tb-app-fullpage{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
    box-sizing:border-box !important;
    overflow-x:hidden !important;
  }
  .elementor-element-c11d4bc .tb-layout,
  .elementor-element-c11d4bc .tb-main,
  .elementor-element-c11d4bc .tb-content,
  .elementor-element-c11d4bc #tbViewClients{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
    overflow-x:hidden !important;
  }
  .elementor-element-c11d4bc #tbViewClients{
    padding-left:0 !important;
    padding-right:0 !important;
  }
  .elementor-element-c11d4bc #tbViewClients > .tb-card,
  .elementor-element-c11d4bc #tbViewClients .tb-client-card,
  .elementor-element-c11d4bc #tbViewClients .tb-client-card-panel > .tb-card,
  .elementor-element-c11d4bc #tbViewClients #tbClientFormWrap > .tb-card{
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
    box-sizing:border-box !important;
  }
}
@media (max-width: 420px){
  .elementor-element-c11d4bc .elementor-widget-container{
    padding-left:12px !important;
    padding-right:12px !important;
  }
}


/* Mobile: margem estrutural no título superior e centralização do workspace do cliente.*/
@media (max-width: 782px){
  html,body{overflow-x:hidden !important;}
  #tbAppRoot .tb-title.tb-top-title,.tb-wrap .tb-title.tb-top-title,.elementor-widget-shortcode .tb-title.tb-top-title,.elementor-element-c11d4bc .tb-title.tb-top-title{display:block !important;width:auto !important;max-width:calc(100vw - 32px) !important;margin-left:16px !important;margin-right:16px !important;padding-left:0 !important;padding-right:0 !important;box-sizing:border-box !important;line-height:1.22 !important;overflow-wrap:anywhere !important;}
  #tbClientWorkspaceRoot,.elementor-element-c11d4bc #tbClientWorkspaceRoot,.elementor-widget-shortcode #tbClientWorkspaceRoot{display:block !important;width:calc(100% - 32px) !important;max-width:calc(100vw - 32px) !important;min-width:0 !important;margin-left:auto !important;margin-right:auto !important;padding-left:0 !important;padding-right:0 !important;box-sizing:border-box !important;overflow-x:hidden !important;}
  #tbClientWorkspaceRoot > .tb-client-workspace-shell,.elementor-element-c11d4bc #tbClientWorkspaceRoot > .tb-client-workspace-shell,.elementor-widget-shortcode #tbClientWorkspaceRoot > .tb-client-workspace-shell{width:100% !important;max-width:100% !important;min-width:0 !important;margin-left:auto !important;margin-right:auto !important;padding-left:0 !important;padding-right:0 !important;box-sizing:border-box !important;}
  #tbClientWorkspaceRoot .tb-client-workspace-header,#tbClientWorkspaceRoot #tbClientWorkspaceContent > .tb-card,#tbClientWorkspaceRoot #tbClientWorkspaceContent > .tb-client-workspace-panel,#tbClientWorkspaceRoot #tbClientWorkspaceContent > .tb-client-workspace-section,#tbClientWorkspaceRoot .tb-client-workspace-panel{width:100% !important;max-width:100% !important;margin-left:0 !important;margin-right:0 !important;box-sizing:border-box !important;}
  #tbViewClients{width:calc(100% - 32px) !important;max-width:calc(100vw - 32px) !important;margin-left:auto !important;margin-right:auto !important;padding-left:0 !important;padding-right:0 !important;box-sizing:border-box !important;}
}
@media (max-width: 420px){
  #tbAppRoot .tb-title.tb-top-title,.tb-wrap .tb-title.tb-top-title,.elementor-widget-shortcode .tb-title.tb-top-title,.elementor-element-c11d4bc .tb-title.tb-top-title{max-width:calc(100vw - 28px) !important;margin-left:14px !important;margin-right:14px !important;}
  #tbClientWorkspaceRoot,.elementor-element-c11d4bc #tbClientWorkspaceRoot,.elementor-widget-shortcode #tbClientWorkspaceRoot,#tbViewClients{width:calc(100% - 28px) !important;max-width:calc(100vw - 28px) !important;}
}

/* Mobile: margem global do conteúdo do workspace do cliente e correção das ações fora da tela.
 Correção focada em #tbClientWorkspaceRoot e .tb-actions sem alterar desktop, players, relatórios ou dados.*/
@media (max-width: 782px){
  #tbClientWorkspaceRoot,
  .elementor-element-c11d4bc #tbClientWorkspaceRoot,
  .elementor-widget-shortcode #tbClientWorkspaceRoot{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:16px !important;
    padding-right:16px !important;
    box-sizing:border-box !important;
    overflow-x:hidden !important;
  }

  #tbClientWorkspaceRoot *,
  #tbClientWorkspaceRoot *::before,
  #tbClientWorkspaceRoot *::after{
    box-sizing:border-box !important;
    max-width:100%;
  }

  #tbClientWorkspaceRoot > *,
  #tbClientWorkspaceRoot .tb-client-workspace-shell,
  #tbClientWorkspaceRoot .tb-client-workspace-header,
  #tbClientWorkspaceRoot #tbClientWorkspaceContent,
  #tbClientWorkspaceRoot #tbClientWorkspaceContent > *,
  #tbClientWorkspaceRoot .tb-card,
  #tbClientWorkspaceRoot .tb-pre,
  #tbClientWorkspaceRoot .tb-client-card,
  #tbClientWorkspaceRoot .tb-client-workspace-panel,
  #tbClientWorkspaceRoot .tb-client-workspace-section{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
  }

  #tbClientWorkspaceRoot .tb-card,
  #tbClientWorkspaceRoot .tb-pre,
  #tbClientWorkspaceRoot .tb-client-workspace-panel,
  #tbClientWorkspaceRoot .tb-client-workspace-section{
    padding-left:16px !important;
    padding-right:16px !important;
  }

  #tbClientWorkspaceRoot .tb-row,
  #tbClientWorkspaceRoot .tb-row-between,
  #tbClientWorkspaceRoot .tb-grid{
    min-width:0 !important;
    max-width:100% !important;
  }

  #tbClientWorkspaceRoot .tb-actions,
  #tbClientWorkspaceRoot .tb-client-card-actions,
  #tbClientWorkspaceRoot .tb-client-form-head-actions,
  #tbClientWorkspaceRoot .tb-stage-actions,
  #tbClientWorkspaceRoot .tb-report-actions{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    gap:10px !important;
    margin-left:0 !important;
    margin-right:0 !important;
    overflow:visible !important;
  }

  #tbClientWorkspaceRoot .tb-actions .tb-btn,
  #tbClientWorkspaceRoot .tb-actions button,
  #tbClientWorkspaceRoot .tb-actions a,
  #tbClientWorkspaceRoot .tb-client-card-actions .tb-btn,
  #tbClientWorkspaceRoot .tb-client-form-head-actions .tb-btn,
  #tbClientWorkspaceRoot .tb-stage-actions .tb-btn,
  #tbClientWorkspaceRoot .tb-report-actions .tb-btn{
    flex:1 1 100% !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    white-space:normal !important;
    text-align:center !important;
    justify-content:center !important;
    overflow-wrap:anywhere !important;
  }

  #tbClientWorkspaceRoot input,
  #tbClientWorkspaceRoot select,
  #tbClientWorkspaceRoot textarea,
  #tbClientWorkspaceRoot .tb-input,
  #tbClientWorkspaceRoot .tb-textarea{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }
}
@media (max-width: 420px){
  #tbClientWorkspaceRoot,
  .elementor-element-c11d4bc #tbClientWorkspaceRoot,
  .elementor-widget-shortcode #tbClientWorkspaceRoot{
    padding-left:14px !important;
    padding-right:14px !important;
  }
  #tbClientWorkspaceRoot .tb-card,
  #tbClientWorkspaceRoot .tb-pre,
  #tbClientWorkspaceRoot .tb-client-workspace-panel,
  #tbClientWorkspaceRoot .tb-client-workspace-section{
    padding-left:14px !important;
    padding-right:14px !important;
  }
}

/* Mobile: correção final do topo e do sino dentro de .tb-actions.
 O problema real estava na combinação do título com margem lateral + .tb-actions em coluna auto,
 fazendo o sino sair da largura útil do viewport em algumas páginas do Elementor.*/
@media (max-width: 980px){
  .tb-wrap .tb-topbar,
  .elementor-widget-shortcode .tb-wrap .tb-topbar,
  .elementor-element-c11d4bc .tb-wrap .tb-topbar{
    width:100% !important;
    max-width:100vw !important;
    min-width:0 !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    align-items:center !important;
    gap:8px !important;
    padding-left:14px !important;
    padding-right:14px !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
  }

  .tb-wrap .tb-topbar > div:first-child,
  .elementor-widget-shortcode .tb-wrap .tb-topbar > div:first-child,
  .elementor-element-c11d4bc .tb-wrap .tb-topbar > div:first-child{
    min-width:0 !important;
    max-width:100% !important;
    overflow:hidden !important;
  }

  .tb-wrap .tb-topbar .tb-title.tb-top-title,
  .elementor-widget-shortcode .tb-wrap .tb-topbar .tb-title.tb-top-title,
  .elementor-element-c11d4bc .tb-wrap .tb-topbar .tb-title.tb-top-title{
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
    box-sizing:border-box !important;
    overflow-wrap:anywhere !important;
  }

  .tb-wrap .tb-topbar .tb-actions,
  .elementor-widget-shortcode .tb-wrap .tb-topbar .tb-actions,
  .elementor-element-c11d4bc .tb-wrap .tb-topbar .tb-actions{
    width:auto !important;
    max-width:52px !important;
    min-width:44px !important;
    flex:0 0 auto !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:0 !important;
    margin:0 !important;
    padding:0 !important;
    box-sizing:border-box !important;
    overflow:visible !important;
  }

  .tb-wrap .tb-topbar .tb-actions > *:not(#tbTherapistGoalBell),
  .elementor-widget-shortcode .tb-wrap .tb-topbar .tb-actions > *:not(#tbTherapistGoalBell),
  .elementor-element-c11d4bc .tb-wrap .tb-topbar .tb-actions > *:not(#tbTherapistGoalBell){
    display:none !important;
  }

  .tb-wrap .tb-topbar #tbTherapistGoalBell,
  .elementor-widget-shortcode .tb-wrap .tb-topbar #tbTherapistGoalBell,
  .elementor-element-c11d4bc .tb-wrap .tb-topbar #tbTherapistGoalBell{
    position:relative !important;
    display:inline-flex !important;
    width:42px !important;
    max-width:42px !important;
    min-width:42px !important;
    height:42px !important;
    flex:0 0 42px !important;
    align-items:center !important;
    justify-content:center !important;
    margin:0 !important;
    padding:0 !important;
    transform:none !important;
    box-sizing:border-box !important;
  }

  .tb-wrap .tb-topbar #tbTherapistGoalBell .tb-central-bell-badge,
  .elementor-widget-shortcode .tb-wrap .tb-topbar #tbTherapistGoalBell .tb-central-bell-badge,
  .elementor-element-c11d4bc .tb-wrap .tb-topbar #tbTherapistGoalBell .tb-central-bell-badge{
    right:-3px !important;
    top:-5px !important;
  }
}

@media (max-width: 420px){
  .tb-wrap .tb-topbar,
  .elementor-widget-shortcode .tb-wrap .tb-topbar,
  .elementor-element-c11d4bc .tb-wrap .tb-topbar{
    padding-left:12px !important;
    padding-right:12px !important;
  }
}

/* Mobile: contenção definitiva da barra superior no Elementor.*/
@media (max-width: 980px){
  .elementor-widget-shortcode,
  .elementor-widget-shortcode .elementor-widget-container,
  .elementor-element-c11d4bc,
  .elementor-element-c11d4bc .elementor-widget-container{max-width:100% !important;overflow-x:hidden !important;box-sizing:border-box !important;}
  .tb-wrap,.elementor-widget-shortcode .tb-wrap,.elementor-element-c11d4bc .tb-wrap,#tbAppRoot,#tbClientWorkspaceRoot{width:100% !important;max-width:100% !important;min-width:0 !important;overflow-x:hidden !important;box-sizing:border-box !important;}
  .tb-wrap .tb-topbar,.elementor-widget-shortcode .tb-wrap .tb-topbar,.elementor-element-c11d4bc .tb-wrap .tb-topbar{width:calc(100% - 28px) !important;max-width:calc(100% - 28px) !important;min-width:0 !important;margin:0 auto 12px auto !important;padding:10px 0 4px 0 !important;display:grid !important;grid-template-columns:minmax(0,1fr) 44px !important;align-items:center !important;justify-content:center !important;column-gap:8px !important;box-sizing:border-box !important;transform:none !important;left:auto !important;right:auto !important;position:relative !important;overflow:visible !important;}
  .tb-wrap .tb-topbar > div:first-child,.elementor-widget-shortcode .tb-wrap .tb-topbar > div:first-child,.elementor-element-c11d4bc .tb-wrap .tb-topbar > div:first-child{min-width:0 !important;width:100% !important;max-width:100% !important;box-sizing:border-box !important;overflow:hidden !important;}
  .tb-wrap .tb-topbar .tb-title.tb-top-title,.elementor-widget-shortcode .tb-wrap .tb-topbar .tb-title.tb-top-title,.elementor-element-c11d4bc .tb-wrap .tb-topbar .tb-title.tb-top-title{display:block !important;width:100% !important;max-width:100% !important;margin:0 !important;padding:0 !important;line-height:1.18 !important;white-space:normal !important;overflow-wrap:anywhere !important;word-break:break-word !important;box-sizing:border-box !important;}
  .tb-wrap .tb-topbar .tb-actions,.elementor-widget-shortcode .tb-wrap .tb-topbar .tb-actions,.elementor-element-c11d4bc .tb-wrap .tb-topbar .tb-actions{display:flex !important;width:44px !important;max-width:44px !important;min-width:44px !important;flex:0 0 44px !important;align-items:center !important;justify-content:center !important;justify-self:end !important;align-self:center !important;gap:0 !important;margin:0 !important;padding:0 !important;box-sizing:border-box !important;transform:none !important;position:relative !important;overflow:visible !important;}
  .tb-wrap .tb-topbar .tb-actions > *:not(#tbTherapistGoalBell),.elementor-widget-shortcode .tb-wrap .tb-topbar .tb-actions > *:not(#tbTherapistGoalBell),.elementor-element-c11d4bc .tb-wrap .tb-topbar .tb-actions > *:not(#tbTherapistGoalBell){display:none !important;}
  .tb-wrap .tb-topbar .tb-actions #tbTherapistGoalBell,.elementor-widget-shortcode .tb-wrap .tb-topbar .tb-actions #tbTherapistGoalBell,.elementor-element-c11d4bc .tb-wrap .tb-topbar .tb-actions #tbTherapistGoalBell{display:inline-flex !important;width:40px !important;height:40px !important;min-width:40px !important;max-width:40px !important;flex:0 0 40px !important;margin:0 !important;padding:0 !important;align-items:center !important;justify-content:center !important;box-sizing:border-box !important;transform:none !important;position:relative !important;right:auto !important;left:auto !important;}
  .tb-wrap .tb-topbar #tbTherapistGoalBell .tb-central-bell-badge,.elementor-widget-shortcode .tb-wrap .tb-topbar #tbTherapistGoalBell .tb-central-bell-badge,.elementor-element-c11d4bc .tb-wrap .tb-topbar #tbTherapistGoalBell .tb-central-bell-badge{top:-5px !important;right:-4px !important;}
}
@media (max-width: 420px){.tb-wrap .tb-topbar,.elementor-widget-shortcode .tb-wrap .tb-topbar,.elementor-element-c11d4bc .tb-wrap .tb-topbar{width:calc(100% - 24px) !important;max-width:calc(100% - 24px) !important;}}

/* Mobile: organiza ações do cliente sem estourar a tela.*/
@media (max-width: 767px){
  #tbClientWorkspaceRoot .tb-client-workspace-menu{
    width:100% !important;
    max-width:100% !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    align-items:stretch !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
  }
  #tbClientWorkspaceRoot .tb-client-workspace-menu-btn{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    box-sizing:border-box !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
    word-break:normal !important;
  }
  #tbClientWorkspaceRoot .tb-client-workspace-preview-btn{order:70 !important;}
  #tbClientWorkspaceRoot .tb-client-workspace-push-btn{order:71 !important;}
  #tbClientWorkspaceRoot #tbClientWorkspaceFinalReport{order:80 !important;}
  #tbClientWorkspaceRoot .tb-client-workspace-edit-btn{order:98 !important;}
  #tbClientWorkspaceRoot #tbClientWorkspaceDelete{order:99 !important;}
}

/* Ficha de Anamnese em menu próprio do terapeuta.*/
@media (max-width: 782px){
  #tbViewAnamnesis,
  #tbViewAnamnesis .tb-anamnesis-menu-card{
    width:100%;
    max-width:100%;
    box-sizing:border-box;
  }
  #tbViewAnamnesis .tb-anamnesis-menu-card{
    margin-left:auto;
    margin-right:auto;
    padding-left:16px;
    padding-right:16px;
  }
  #tbViewAnamnesis .tb-row{
    max-width:100%;
  }
}

/* Ficha de Anamnese: tela própria com lista por cliente.*/
.tb-anamnesis-menu-shell{width:min(1280px,100%);max-width:1280px;margin:0 auto;box-sizing:border-box;}
.tb-anamnesis-menu-head{gap:14px;align-items:flex-start;flex-wrap:wrap;}
.tb-anamnesis-menu-titlebox{min-width:240px;flex:1;}
.tb-anamnesis-official-link{margin-top:14px;border:1px solid rgba(37,50,99,.14);background:linear-gradient(135deg,#ffffff 0%,#f8fafc 100%);}
.tb-anamnesis-official-link .tb-input{margin-top:10px;width:100%;max-width:860px;background:#fff;}
.tb-anamnesis-actions-row{gap:8px;flex-wrap:wrap;margin-top:12px;}
.tb-anamnesis-warning{border-color:rgba(220,38,38,.18)!important;background:rgba(220,38,38,.05)!important;}
.tb-anamnesis-warning b{color:#b91c1c;}
.tb-anamnesis-client-panel{margin-top:16px;border:1px solid rgba(37,50,99,.12);border-radius:22px;padding:16px;background:rgba(255,255,255,.74);box-sizing:border-box;}
.tb-anamnesis-client-head{gap:12px;align-items:flex-start;flex-wrap:wrap;margin-bottom:12px;}
.tb-anamnesis-client-list{display:grid;gap:12px;}
.tb-anamnesis-client-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid rgba(148,163,184,.24);border-radius:18px;padding:14px;background:#fff;box-shadow:0 10px 26px rgba(37,50,99,.06);box-sizing:border-box;}
.tb-anamnesis-client-name{font-weight:900;color:#253263;font-size:15px;margin-bottom:4px;}
.tb-anamnesis-client-main .tb-input{width:100%;margin-top:8px;background:#fff;}
.tb-anamnesis-client-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap;}
.tb-anamnesis-empty{border:1px dashed rgba(37,50,99,.18);background:rgba(255,255,255,.82);}
@media (max-width:782px){
  #tbViewAnamnesis{width:100%;box-sizing:border-box;padding:0 14px;}
  .tb-anamnesis-menu-shell{max-width:100%;padding:16px!important;border-radius:20px!important;}
  .tb-anamnesis-client-panel{padding:12px;border-radius:18px;}
  .tb-anamnesis-client-card{grid-template-columns:1fr;padding:12px;border-radius:16px;}
  .tb-anamnesis-client-actions{justify-content:flex-start;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;}
  .tb-anamnesis-client-actions .tb-btn,.tb-anamnesis-actions-row .tb-btn{width:100%;justify-content:center;text-align:center;box-sizing:border-box;}
  .tb-anamnesis-actions-row{display:grid;grid-template-columns:1fr;}
}


/* Pipeline visual da Ficha de Anamnese no menu do terapeuta.*/
.tb-anamnesis-client-topline{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:4px;
}
.tb-anamnesis-status{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:26px;
  padding:5px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:900;
  line-height:1;
  border:1px solid rgba(37,50,99,.12);
  background:rgba(37,50,99,.06);
  color:#253263;
  white-space:nowrap;
}
.tb-anamnesis-status-sent{background:rgba(37,50,99,.08);color:#253263;border-color:rgba(37,50,99,.16);}
.tb-anamnesis-status-responded{background:rgba(22,163,74,.10);color:#166534;border-color:rgba(22,163,74,.20);}
.tb-anamnesis-status-in_review{background:rgba(245,158,11,.14);color:#92400e;border-color:rgba(245,158,11,.28);}
.tb-anamnesis-submitted{margin-top:4px;}
.tb-anamnesis-pipeline-actions{
  display:flex;
  gap:8px;
  align-items:center;
  flex-wrap:wrap;
  margin-top:10px;
}
.tb-anamnesis-pipeline-actions .tb-btn-mini{
  min-height:34px;
  padding:7px 10px;
  font-size:12px;
  border-radius:999px;
}
@media (max-width:782px){
  .tb-anamnesis-client-topline{align-items:flex-start;}
  .tb-anamnesis-status{width:auto;max-width:100%;}
  .tb-anamnesis-pipeline-actions{
    display:grid;
    grid-template-columns:1fr;
    width:100%;
  }
  .tb-anamnesis-pipeline-actions .tb-btn{
    width:100%;
    justify-content:center;
    text-align:center;
  }
}

/* Jornada: editor da atividade em modal seguro no mobile*/
@media (max-width: 767px){
  .tb-goal-card.is-editing{position:relative;z-index:100000;}
  .tb-goal-card.is-editing::before{content:"";position:fixed;inset:0;z-index:100000;background:rgba(15,23,42,.58);backdrop-filter:saturate(120%) blur(2px);}
  .tb-goal-card.is-editing .tb-goal-edit-panel{position:fixed !important;z-index:100001;left:12px;right:12px;top:max(12px, env(safe-area-inset-top));bottom:96px;display:block !important;width:auto !important;max-width:none !important;margin:0 !important;padding:14px !important;overflow-y:auto;-webkit-overflow-scrolling:touch;border-radius:20px 20px 14px 14px;background:#fff !important;box-shadow:0 20px 60px rgba(15,23,42,.38);border:1px solid rgba(203,213,225,.95);}
  .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-summary-head{position:sticky;top:-14px;z-index:2;margin:-14px -14px 12px;padding:14px;background:#fff;border-bottom:1px solid #e5e7eb;border-radius:20px 20px 0 0;}
  .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-summary-head .tb-btn{width:auto;min-width:120px;justify-content:center;}
  .tb-goal-card.is-editing .tb-goal-form-grid{grid-template-columns:1fr !important;gap:12px !important;padding-bottom:10px;}
  .tb-goal-card.is-editing .tb-goal-edit-panel .tb-input,.tb-goal-card.is-editing .tb-goal-edit-panel .tb-textarea,.tb-goal-card.is-editing .tb-goal-edit-panel select{width:100% !important;max-width:100% !important;font-size:16px;box-sizing:border-box;}
  .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-description,.tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-important-links,.tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-clinical-focus{min-height:132px;}
  .tb-goal-card.is-editing .tb-goal-card-footer-actions{position:fixed;z-index:100002;left:12px;right:12px;bottom:max(12px, env(safe-area-inset-bottom));display:flex !important;align-items:stretch;justify-content:space-between;gap:10px;margin:0 !important;padding:12px !important;border:1px solid rgba(203,213,225,.95);border-radius:14px 14px 20px 20px;background:#fff;box-shadow:0 16px 42px rgba(15,23,42,.28);}
  .tb-goal-card.is-editing .tb-goal-card-footer-right{display:grid !important;grid-template-columns:1fr;gap:8px;width:100%;flex:1 1 auto;}
  .tb-goal-card.is-editing .tb-goal-card-save-msg{min-height:18px;min-width:0;text-align:left;font-size:12px;line-height:1.35;order:3;}
  .tb-goal-card.is-editing .tbGoalSaveMeta{display:inline-flex !important;visibility:visible !important;opacity:1 !important;width:100%;justify-content:center;order:1;}
  .tb-goal-card.is-editing .tbRemoveGoal{width:100%;justify-content:center;order:2;}
  body.tb-theme-dark .tb-goal-card.is-editing .tb-goal-edit-panel,.tb-wrap.tb-theme-dark .tb-goal-card.is-editing .tb-goal-edit-panel,body.tb-theme-dark .tb-goal-card.is-editing .tb-goal-card-footer-actions,.tb-wrap.tb-theme-dark .tb-goal-card.is-editing .tb-goal-card-footer-actions,body.tb-theme-dark .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-summary-head,.tb-wrap.tb-theme-dark .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-summary-head{background:#0f172a !important;color:#e5e7eb !important;border-color:rgba(148,163,184,.30) !important;}
}

/* Mobile: chip de ativação da Jornada sem estouro lateral*/
@media (max-width: 767px){
  #tbClientWorkspaceRoot .tb-journey-config-grid > .tb-chip.tb-journey-chip-toggle,
  #tbClientWorkspaceRoot .tb-chip.tb-journey-chip-toggle{
    display:grid !important;
    grid-template-columns:auto minmax(0,1fr) !important;
    align-items:flex-start !important;
    justify-content:start !important;
    gap:10px !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
    padding:14px 16px !important;
    overflow:hidden !important;
    white-space:normal !important;
    text-align:left !important;
    line-height:1.45 !important;
  }

  #tbClientWorkspaceRoot .tb-chip.tb-journey-chip-toggle input{
    margin:4px 0 0 !important;
    flex:0 0 auto !important;
    width:18px !important;
    height:18px !important;
  }

  #tbClientWorkspaceRoot .tb-journey-config-grid,
  #tbClientWorkspaceRoot .tb-journey-config-card,
  #tbClientWorkspaceRoot .tb-journey-config-field{
    min-width:0 !important;
    max-width:100% !important;
    box-sizing:border-box !important;
  }
}

/* Anamnese mais compacta no menu próprio*/
.tb-anamnesis-official-link{padding:14px 16px !important;border-radius:18px !important;min-height:0 !important;}
.tb-anamnesis-official-link .tb-input{margin-top:8px !important;min-height:42px !important;}
.tb-anamnesis-actions-row{margin-top:10px !important;gap:8px !important;}
@media (max-width: 782px){
  .tb-anamnesis-official-link{padding:12px !important;margin-top:10px !important;}
  .tb-anamnesis-official-link .tb-muted{margin-top:2px !important;line-height:1.35 !important;}
  .tb-anamnesis-actions-row .tb-btn{width:100%;justify-content:center;}
}

/* Programação Comportamental: detalhe abre dentro do próprio card, sem modal/iframe visual*/
.tb-goal-card-mini-desc{margin-top:8px;color:#475569;font-size:13px;line-height:1.45;max-width:760px;}
.tb-goal-card-mini-dates{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;font-size:12px;font-weight:800;color:#64748b;}
.tb-goal-card-mini-dates span{display:inline-flex;border:1px solid #dbe4f0;border-radius:999px;padding:5px 9px;background:#f8fafc;}
.tb-goal-card:not(.is-collapsed)::before{display:none !important;content:none !important;}
.tb-goal-card:not(.is-collapsed) .tb-goal-card-body{display:block !important;position:static !important;z-index:auto !important;left:auto !important;right:auto !important;top:auto !important;bottom:auto !important;transform:none !important;width:auto !important;max-width:100% !important;max-height:none !important;overflow:visible !important;margin-top:14px;padding:0 !important;background:transparent !important;border:0 !important;border-radius:0 !important;box-shadow:none !important;}
.tb-goal-card:not(.is-collapsed) .tb-goal-card-footer-actions{position:static !important;margin-top:16px !important;margin-left:0 !important;margin-right:0 !important;margin-bottom:0 !important;padding-top:14px !important;border-radius:0 !important;background:transparent !important;box-shadow:none !important;}
.tb-goal-card.is-collapsed .tb-goal-card-body{display:none !important;}
.tb-goal-card-close{border-color:#cbd5e1;background:#fff;}
@media (max-width: 720px){
  .tb-goal-card-head{align-items:flex-start !important;gap:12px;}
  .tb-goal-card-head-actions{width:auto !important;min-width:46px;justify-content:flex-end !important;}
}

/* Configuração da Jornada como popup quando a aba Configuração está ativa*/
.tb-journey-sections-shell[data-journey-active-tab="config"]::before{content:"";position:fixed;inset:0;z-index:100000;background:rgba(15,23,42,.58);backdrop-filter:saturate(120%) blur(2px);}
.tb-journey-sections-shell[data-journey-active-tab="config"] .tb-journey-tabpane[data-journey-pane="config"].is-active{position:fixed;z-index:100001;left:50%;top:50%;transform:translate(-50%,-50%);width:min(880px,calc(100vw - 32px));max-height:calc(100vh - 44px);overflow:auto;-webkit-overflow-scrolling:touch;background:#fff;border:1px solid #d7deea;border-radius:22px;box-shadow:0 24px 70px rgba(15,23,42,.35);padding:16px;display:block !important;}
.tb-journey-sections-shell[data-journey-active-tab="config"] .tb-journey-config-panel{margin:0 !important;}
@media (max-width: 782px){
  .tb-journey-sections-shell[data-journey-active-tab="config"] .tb-journey-tabpane[data-journey-pane="config"].is-active{left:10px;right:10px;top:max(10px,env(safe-area-inset-top));bottom:max(10px,env(safe-area-inset-bottom));transform:none;width:auto;max-height:none;padding:12px;border-radius:20px;}
  .tb-journey-sections-shell[data-journey-active-tab="config"] .tb-journey-config-grid{grid-template-columns:1fr !important;}
}

/* Jornada: cabeçalho e fechamento seguro da popup de Configuração*/
.tb-journey-sections-shell[data-journey-active-tab="config"] .tb-journey-config-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:-4px 0 14px;padding:0 0 12px;border-bottom:1px solid #e5e7eb;}
.tb-journey-config-close{flex:0 0 auto;padding:8px 12px !important;border-radius:999px !important;font-weight:800 !important;}
@media (max-width:782px){.tb-journey-sections-shell[data-journey-active-tab="config"] .tb-journey-config-panel-head{position:sticky;top:-12px;z-index:3;background:#fff;margin:-12px -12px 12px;padding:12px;border-radius:20px 20px 0 0;}.tb-journey-config-close{padding:7px 10px !important;font-size:12px !important;}}

/* Anamnese: link oficial mais compacto*/
.tb-pre.tb-anamnesis-official-link{padding:8px 10px !important;margin-top:8px !important;border-radius:12px !important;line-height:1.25 !important;}
.tb-pre.tb-anamnesis-official-link b{display:block !important;font-size:13px !important;line-height:1.2 !important;margin:0 !important;}
.tb-pre.tb-anamnesis-official-link .tb-muted{margin-top:2px !important;font-size:12px !important;line-height:1.25 !important;}
.tb-pre.tb-anamnesis-official-link .tb-input{margin-top:6px !important;min-height:34px !important;height:34px !important;padding:6px 9px !important;font-size:12px !important;border-radius:10px !important;}
.tb-pre.tb-anamnesis-official-link .tb-anamnesis-actions-row{margin-top:6px !important;gap:6px !important;}
.tb-pre.tb-anamnesis-official-link .tb-anamnesis-actions-row .tb-btn{min-height:32px !important;padding:6px 10px !important;font-size:12px !important;border-radius:10px !important;}
@media (max-width:782px){.tb-pre.tb-anamnesis-official-link{padding:8px !important;margin-top:8px !important;}.tb-pre.tb-anamnesis-official-link .tb-input{height:32px !important;min-height:32px !important;}.tb-pre.tb-anamnesis-official-link .tb-anamnesis-actions-row .tb-btn{width:auto !important;flex:1 1 140px !important;}}

/* Anamnese: card moderno para o link oficial*/
.tb-pre.tb-anamnesis-official-link{
  position:relative !important;
  overflow:hidden !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) !important;
  gap:10px !important;
  margin-top:14px !important;
  padding:18px !important;
  border:1px solid rgba(37,50,99,.12) !important;
  border-radius:22px !important;
  background:linear-gradient(135deg,#ffffff 0%,#f8fbff 58%,#eef6ff 100%) !important;
  box-shadow:0 18px 45px rgba(15,23,42,.08) !important;
  line-height:1.35 !important;
}
.tb-pre.tb-anamnesis-official-link::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:6px;
  background:linear-gradient(180deg,#253263,#52b6ff);
}
.tb-pre.tb-anamnesis-official-link::after{
  content:"🔗";
  position:absolute;
  right:16px;
  top:14px;
  width:38px;
  height:38px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:14px;
  background:rgba(37,50,99,.08);
  font-size:18px;
}
.tb-pre.tb-anamnesis-official-link b{
  display:block !important;
  padding-right:52px !important;
  margin:0 !important;
  color:#253263 !important;
  font-size:15px !important;
  line-height:1.22 !important;
  letter-spacing:-.01em !important;
}
.tb-pre.tb-anamnesis-official-link .tb-muted{
  max-width:760px !important;
  margin-top:-4px !important;
  padding-right:52px !important;
  color:#64748b !important;
  font-size:12.5px !important;
  line-height:1.4 !important;
}
.tb-pre.tb-anamnesis-official-link .tb-input{
  width:100% !important;
  max-width:none !important;
  min-height:42px !important;
  height:42px !important;
  margin-top:0 !important;
  padding:9px 12px !important;
  border:1px solid rgba(37,50,99,.14) !important;
  border-radius:14px !important;
  background:rgba(255,255,255,.92) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8) !important;
  color:#253263 !important;
  font-size:13px !important;
  font-weight:700 !important;
}
.tb-pre.tb-anamnesis-official-link .tb-anamnesis-actions-row{
  margin-top:0 !important;
  gap:8px !important;
  align-items:center !important;
}
.tb-pre.tb-anamnesis-official-link .tb-anamnesis-actions-row .tb-btn{
  min-height:36px !important;
  padding:8px 13px !important;
  border-radius:999px !important;
  font-size:12.5px !important;
  font-weight:800 !important;
}
.tb-pre.tb-anamnesis-official-link.tb-anamnesis-warning::before{background:linear-gradient(180deg,#dc2626,#f59e0b);}
.tb-pre.tb-anamnesis-official-link.tb-anamnesis-warning::after{content:"⚠️";background:rgba(220,38,38,.08);}
@media (max-width:782px){
  .tb-pre.tb-anamnesis-official-link{padding:16px 14px 14px 16px !important;border-radius:20px !important;margin-top:12px !important;}
  .tb-pre.tb-anamnesis-official-link::after{right:12px;top:12px;width:34px;height:34px;border-radius:12px;font-size:16px;}
  .tb-pre.tb-anamnesis-official-link b,.tb-pre.tb-anamnesis-official-link .tb-muted{padding-right:44px !important;}
  .tb-pre.tb-anamnesis-official-link .tb-input{height:40px !important;min-height:40px !important;font-size:12px !important;}
  .tb-pre.tb-anamnesis-official-link .tb-anamnesis-actions-row .tb-btn{width:auto !important;flex:1 1 150px !important;justify-content:center !important;}
}

/* Programação Comportamental: editor de atividade em tela cheia real da página, sem aparência de popup*/
body:has(.tb-goal-card.is-editing){overflow:hidden !important;}
.tb-goal-card.is-editing{position:fixed !important;z-index:2147483000 !important;inset:0 !important;width:100vw !important;height:100dvh !important;max-width:none !important;max-height:none !important;margin:0 !important;padding:0 !important;border-radius:0 !important;border:0 !important;background:#f6f8fb !important;box-shadow:none !important;overflow:auto !important;-webkit-overflow-scrolling:touch;}
.tb-goal-card.is-editing::before{display:none !important;content:none !important;}
.tb-goal-card.is-editing > .tb-goal-card-head{display:none !important;}
.tb-goal-card.is-editing .tb-goal-card-body{display:block !important;position:static !important;width:100% !important;max-width:none !important;margin:0 !important;padding:0 !important;background:transparent !important;border:0 !important;box-shadow:none !important;}
.tb-goal-card.is-editing .tb-goal-summary-view{display:none !important;}
.tb-goal-card.is-editing .tb-goal-edit-panel{display:block !important;position:static !important;width:min(1180px, calc(100vw - 32px)) !important;max-width:1180px !important;margin:16px auto 110px !important;padding:18px !important;overflow:visible !important;border-radius:22px !important;background:#fff !important;border:1px solid #dbe4f0 !important;box-shadow:0 16px 42px rgba(15,23,42,.10) !important;}
.tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-summary-head{position:sticky !important;top:0 !important;z-index:3 !important;margin:-18px -18px 16px !important;padding:16px 18px !important;background:#fff !important;border-bottom:1px solid #e5e7eb !important;border-radius:22px 22px 0 0 !important;}
.tb-goal-card.is-editing .tb-goal-card-footer-actions{position:fixed !important;z-index:2147483001 !important;left:50% !important;right:auto !important;bottom:max(12px, env(safe-area-inset-bottom)) !important;transform:translateX(-50%) !important;width:min(1180px, calc(100vw - 32px)) !important;display:flex !important;align-items:center !important;justify-content:space-between !important;gap:12px !important;margin:0 !important;padding:12px 14px !important;border:1px solid #dbe4f0 !important;border-radius:18px !important;background:#fff !important;box-shadow:0 18px 44px rgba(15,23,42,.18) !important;}
body.tb-theme-dark .tb-goal-card.is-editing,.tb-wrap.tb-theme-dark .tb-goal-card.is-editing{background:#020617 !important;}
body.tb-theme-dark .tb-goal-card.is-editing .tb-goal-edit-panel,.tb-wrap.tb-theme-dark .tb-goal-card.is-editing .tb-goal-edit-panel,body.tb-theme-dark .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-summary-head,.tb-wrap.tb-theme-dark .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-summary-head,body.tb-theme-dark .tb-goal-card.is-editing .tb-goal-card-footer-actions,.tb-wrap.tb-theme-dark .tb-goal-card.is-editing .tb-goal-card-footer-actions{background:#0f172a !important;color:#e5e7eb !important;border-color:rgba(148,163,184,.30) !important;}
@media (max-width:720px){.tb-goal-card.is-editing .tb-goal-edit-panel{width:100% !important;margin:0 0 132px !important;border-radius:0 !important;border-left:0 !important;border-right:0 !important;padding:14px !important;}.tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-summary-head{margin:-14px -14px 14px !important;padding:14px !important;border-radius:0 !important;}.tb-goal-card.is-editing .tb-goal-card-footer-actions{left:8px !important;right:8px !important;bottom:max(8px, env(safe-area-inset-bottom)) !important;transform:none !important;width:auto !important;flex-direction:column !important;align-items:stretch !important;}}

/* Programação Comportamental: card-botão com editor em popup limpo*/
body.tb-goal-editor-open{overflow:hidden !important;}
.tb-goal-card{transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;}
.tb-goal-card:not(.is-editing) .tb-goal-card-head{cursor:pointer;}
.tb-goal-card:not(.is-editing) .tb-goal-card-head:hover{transform:translateY(-1px);}
.tb-goal-card-open-pill{display:inline-flex;align-items:center;justify-content:center;min-width:74px;min-height:34px;padding:7px 12px;border-radius:999px;border:1px solid rgba(37,50,99,.16);background:#253263;color:#fff;font-size:12px;font-weight:900;line-height:1;box-shadow:0 8px 18px rgba(37,50,99,.16);}
.tb-goal-card-toggle-pill{display:none !important;}
.tb-goal-card-body{display:none !important;}
.tb-goal-card.is-editing{position:relative !important;z-index:2147483000 !important;inset:auto !important;width:auto !important;height:auto !important;max-width:none !important;max-height:none !important;margin:0 0 14px !important;padding:16px !important;border-radius:22px !important;border:1px solid #dbe4f0 !important;background:#fff !important;box-shadow:0 10px 28px rgba(15,23,42,.08) !important;overflow:visible !important;}
.tb-goal-card.is-editing::before{content:"" !important;display:block !important;position:fixed !important;inset:0 !important;z-index:2147483000 !important;background:rgba(15,23,42,.62) !important;backdrop-filter:blur(3px) saturate(120%) !important;}
.tb-goal-card.is-editing > .tb-goal-card-head{display:flex !important;}
.tb-goal-card.is-editing .tb-goal-card-body{display:block !important;position:fixed !important;z-index:2147483001 !important;left:50% !important;top:50% !important;bottom:auto !important;right:auto !important;transform:translate(-50%,-50%) !important;width:min(1120px, calc(100vw - 34px)) !important;max-width:1120px !important;max-height:calc(100dvh - 34px) !important;margin:0 !important;padding:0 !important;overflow:auto !important;-webkit-overflow-scrolling:touch !important;border:1px solid rgba(203,213,225,.95) !important;border-radius:24px !important;background:#fff !important;box-shadow:0 28px 80px rgba(15,23,42,.42) !important;}
.tb-goal-card.is-editing .tb-goal-summary-view,.tb-goal-card.is-editing .tb-goal-feedback-section{display:none !important;}
.tb-goal-card.is-editing .tb-goal-edit-panel{display:block !important;position:static !important;width:100% !important;max-width:none !important;margin:0 !important;padding:18px 18px 0 !important;overflow:visible !important;border:0 !important;border-radius:24px 24px 0 0 !important;background:#fff !important;box-shadow:none !important;}
.tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-summary-head{position:sticky !important;top:0 !important;z-index:5 !important;margin:-18px -18px 18px !important;padding:18px !important;display:flex !important;align-items:flex-start !important;gap:12px !important;background:#fff !important;border-bottom:1px solid #e5e7eb !important;border-radius:24px 24px 0 0 !important;box-shadow:0 10px 22px rgba(15,23,42,.05) !important;}
.tb-goal-card.is-editing .tb-goal-form-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:14px !important;}
.tb-goal-card.is-editing .tb-goal-field-description{grid-column:1 / -1 !important;}
.tb-goal-card.is-editing .tb-goal-card-footer-actions{position:sticky !important;z-index:6 !important;left:auto !important;right:auto !important;bottom:0 !important;transform:none !important;width:auto !important;margin:18px 0 0 !important;padding:14px 18px !important;border:0 !important;border-top:1px solid #e5e7eb !important;border-radius:0 0 24px 24px !important;background:#fff !important;box-shadow:0 -12px 24px rgba(15,23,42,.06) !important;}
.tb-goal-card.is-editing .tb-goal-card-footer-right{display:flex !important;align-items:center !important;justify-content:flex-end !important;gap:10px !important;flex-wrap:wrap !important;width:100% !important;}
.tb-goal-card.is-editing .tbGoalSaveMeta{display:inline-flex !important;visibility:visible !important;opacity:1 !important;min-width:220px !important;justify-content:center !important;}
.tb-goal-card.is-editing .tbRemoveGoal{min-width:180px !important;justify-content:center !important;}
.tb-goal-card.is-editing .tb-goal-card-save-msg{flex:1 1 220px !important;min-width:0 !important;text-align:left !important;font-size:12px !important;}
.tb-wrap.tb-theme-dark .tb-goal-card.is-editing,.tb-wrap.tb-theme-dark .tb-goal-card.is-editing .tb-goal-card-body,.tb-wrap.tb-theme-dark .tb-goal-card.is-editing .tb-goal-edit-panel,.tb-wrap.tb-theme-dark .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-summary-head,.tb-wrap.tb-theme-dark .tb-goal-card.is-editing .tb-goal-card-footer-actions,body.tb-theme-dark .tb-goal-card.is-editing,body.tb-theme-dark .tb-goal-card.is-editing .tb-goal-card-body,body.tb-theme-dark .tb-goal-card.is-editing .tb-goal-edit-panel,body.tb-theme-dark .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-summary-head,body.tb-theme-dark .tb-goal-card.is-editing .tb-goal-card-footer-actions{background:#0f172a !important;color:#e5e7eb !important;border-color:rgba(148,163,184,.30) !important;}
@media (max-width:720px){
  .tb-goal-card{padding:13px !important;border-radius:18px !important;}
  .tb-goal-card-head{align-items:flex-start !important;gap:10px !important;}
  .tb-goal-card-head-actions{width:auto !important;min-width:74px !important;justify-content:flex-end !important;margin-left:8px !important;}
  .tb-goal-card-open-pill{min-width:66px;min-height:32px;padding:7px 10px;font-size:11px;}
  .tb-goal-card-mini-desc{font-size:12px !important;line-height:1.35 !important;}
  .tb-goal-card-mini-dates{gap:6px !important;}
  .tb-goal-card-mini-dates span{padding:4px 7px !important;font-size:11px !important;}
  .tb-goal-card.is-editing .tb-goal-card-body{left:8px !important;right:8px !important;top:max(8px, env(safe-area-inset-top)) !important;bottom:max(8px, env(safe-area-inset-bottom)) !important;transform:none !important;width:auto !important;max-width:none !important;max-height:none !important;border-radius:20px !important;}
  .tb-goal-card.is-editing .tb-goal-edit-panel{padding:14px 14px 0 !important;border-radius:20px 20px 0 0 !important;}
  .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-summary-head{margin:-14px -14px 14px !important;padding:14px !important;border-radius:20px 20px 0 0 !important;}
  .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-summary-head .tb-btn{width:auto !important;min-width:112px !important;padding:8px 11px !important;font-size:12px !important;}
  .tb-goal-card.is-editing .tb-goal-form-grid{grid-template-columns:1fr !important;gap:12px !important;}
  .tb-goal-card.is-editing .tb-goal-card-footer-actions{padding:12px 14px !important;border-radius:0 0 20px 20px !important;}
  .tb-goal-card.is-editing .tb-goal-card-footer-right{display:grid !important;grid-template-columns:1fr !important;gap:9px !important;}
  .tb-goal-card.is-editing .tbGoalSaveMeta,.tb-goal-card.is-editing .tbRemoveGoal{width:100% !important;min-width:0 !important;}
}

/* Programação Comportamental: editor real em tela cheia, sem card expandido/iframe visual*/
body.tb-goal-editor-open,
body.tb-goal-editor-open html{overflow:hidden !important;}
body.tb-goal-editor-open .tb-wrap,
body.tb-goal-editor-open .tb-app,
body.tb-goal-editor-open .tb-therapist-shell,
body.tb-goal-editor-open .tb-client-workspace-shell,
body.tb-goal-editor-open #tbClientWorkspaceContent,
body.tb-goal-editor-open .tb-client-workspace-section,
body.tb-goal-editor-open .tb-card{transform:none !important;filter:none !important;perspective:none !important;contain:unset !important;overflow:visible !important;}
body.tb-goal-editor-open .tb-goal-card:not(.is-editing){display:none !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing{position:static !important;z-index:auto !important;margin:0 !important;padding:0 !important;border:0 !important;background:transparent !important;box-shadow:none !important;overflow:visible !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing::before{content:"" !important;position:fixed !important;inset:0 !important;z-index:2147483500 !important;background:rgba(15,23,42,.68) !important;backdrop-filter:blur(4px) saturate(120%) !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing > .tb-goal-card-head{display:none !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing > .tb-goal-card-body{display:block !important;position:fixed !important;z-index:2147483501 !important;inset:clamp(8px,2vw,22px) !important;width:auto !important;height:auto !important;max-width:none !important;max-height:none !important;margin:0 !important;padding:0 !important;transform:none !important;overflow:auto !important;-webkit-overflow-scrolling:touch !important;border:1px solid rgba(219,228,240,.96) !important;border-radius:24px !important;background:#fff !important;box-shadow:0 28px 90px rgba(15,23,42,.48) !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-summary-view,
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-feedback-section{display:none !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-builder-layout,
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-form-shell{display:block !important;width:100% !important;max-width:none !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-edit-panel{display:block !important;position:static !important;width:100% !important;max-width:none !important;margin:0 !important;padding:20px 20px 0 !important;overflow:visible !important;border:0 !important;border-radius:24px 24px 0 0 !important;background:#fff !important;box-shadow:none !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-summary-head{position:sticky !important;top:0 !important;z-index:10 !important;margin:-20px -20px 20px !important;padding:18px 20px !important;display:flex !important;align-items:flex-start !important;justify-content:space-between !important;gap:14px !important;background:#fff !important;border-bottom:1px solid #e5e7eb !important;border-radius:24px 24px 0 0 !important;box-shadow:0 10px 22px rgba(15,23,42,.06) !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-section-title{font-size:26px !important;line-height:1.12 !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-section-desc{font-size:15px !important;line-height:1.45 !important;max-width:760px !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-form-grid{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:14px !important;align-items:start !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-field-description,
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-weekdays-row{grid-column:1 / -1 !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-edit-panel input,
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-edit-panel select,
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-edit-panel textarea{box-sizing:border-box !important;width:100% !important;max-width:100% !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-card-footer-actions{position:sticky !important;z-index:11 !important;left:auto !important;right:auto !important;bottom:0 !important;display:flex !important;align-items:center !important;justify-content:flex-end !important;gap:12px !important;width:auto !important;margin:18px 0 0 !important;padding:14px 20px !important;border:0 !important;border-top:1px solid #e5e7eb !important;border-radius:0 0 24px 24px !important;background:#fff !important;box-shadow:0 -12px 24px rgba(15,23,42,.06) !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-card-footer-right{display:flex !important;align-items:center !important;justify-content:flex-end !important;gap:10px !important;flex-wrap:wrap !important;width:100% !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing .tbGoalSaveMeta{display:inline-flex !important;visibility:visible !important;opacity:1 !important;min-width:220px !important;justify-content:center !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing .tbRemoveGoal{min-width:180px !important;justify-content:center !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-card-save-msg{flex:1 1 220px !important;min-width:0 !important;text-align:left !important;font-size:12px !important;}
.tb-wrap.tb-theme-dark body.tb-goal-editor-open .tb-goal-card.is-editing > .tb-goal-card-body,
body.tb-theme-dark.tb-goal-editor-open .tb-goal-card.is-editing > .tb-goal-card-body,
body.tb-theme-dark.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-edit-panel,
body.tb-theme-dark.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-summary-head,
body.tb-theme-dark.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-card-footer-actions{background:#0f172a !important;color:#e5e7eb !important;border-color:rgba(148,163,184,.30) !important;}
@media (max-width:720px){
  body.tb-goal-editor-open .tb-goal-card.is-editing > .tb-goal-card-body{inset:0 !important;border-radius:0 !important;border-left:0 !important;border-right:0 !important;}
  body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-edit-panel{padding:14px 14px 0 !important;border-radius:0 !important;}
  body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-summary-head{margin:-14px -14px 14px !important;padding:14px !important;border-radius:0 !important;align-items:flex-start !important;}
  body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-section-title{font-size:22px !important;}
  body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-section-desc{font-size:13px !important;}
  body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-form-grid{grid-template-columns:1fr !important;gap:12px !important;}
  body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-card-footer-actions{padding:12px 14px !important;border-radius:0 !important;}
  body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-card-footer-right{display:grid !important;grid-template-columns:1fr !important;align-items:stretch !important;}
  body.tb-goal-editor-open .tb-goal-card.is-editing .tbGoalSaveMeta,
  body.tb-goal-editor-open .tb-goal-card.is-editing .tbRemoveGoal{width:100% !important;min-width:0 !important;}
}

/* Programação Comportamental: card como botão e modal real acima do site*/
.tb-goal-card{cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;}
.tb-goal-card:not(.is-editing):hover{transform:translateY(-1px);box-shadow:0 14px 34px rgba(15,23,42,.10);}
.tb-goal-card .tb-goal-card-head{cursor:pointer;}
.tb-goal-card-open-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:8px 12px;background:#253263;color:#fff;font-weight:800;font-size:12px;white-space:nowrap;box-shadow:0 8px 18px rgba(37,50,99,.18);}
.tb-goal-card-body{cursor:auto;}
body.tb-goal-editor-open{overflow:hidden !important;}
body.tb-goal-editor-open .tb-goal-card:not(.is-editing){display:block !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing{position:fixed !important;z-index:2147483600 !important;inset:0 !important;width:100vw !important;height:100dvh !important;max-width:none !important;max-height:none !important;margin:0 !important;padding:0 !important;border:0 !important;border-radius:0 !important;background:rgba(15,23,42,.66) !important;box-shadow:none !important;overflow:hidden !important;cursor:auto !important;contain:unset !important;transform:none !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing::before{display:none !important;content:none !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing > .tb-goal-card-head{display:none !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing > .tb-goal-card-body{display:block !important;position:absolute !important;z-index:2147483601 !important;left:clamp(12px,2vw,28px) !important;right:clamp(12px,2vw,28px) !important;top:max(12px,env(safe-area-inset-top)) !important;bottom:max(12px,env(safe-area-inset-bottom)) !important;width:auto !important;height:auto !important;max-width:none !important;max-height:none !important;margin:0 !important;padding:0 !important;overflow:auto !important;-webkit-overflow-scrolling:touch !important;background:#fff !important;border:1px solid rgba(219,228,240,.96) !important;border-radius:24px !important;box-shadow:0 30px 90px rgba(15,23,42,.46) !important;transform:none !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-summary-view,
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-feedback-section{display:none !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-builder-layout,
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-form-shell{display:block !important;width:100% !important;max-width:none !important;margin:0 !important;padding:0 !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-edit-panel{display:block !important;position:static !important;width:100% !important;max-width:1180px !important;margin:0 auto !important;padding:22px 22px 0 !important;overflow:visible !important;background:#fff !important;border:0 !important;border-radius:24px 24px 0 0 !important;box-shadow:none !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-summary-head{position:sticky !important;top:0 !important;z-index:20 !important;margin:-22px -22px 22px !important;padding:18px 22px !important;display:flex !important;align-items:flex-start !important;justify-content:space-between !important;gap:14px !important;background:#fff !important;border-bottom:1px solid #e5e7eb !important;border-radius:24px 24px 0 0 !important;box-shadow:0 12px 24px rgba(15,23,42,.06) !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-section-title{font-size:26px !important;line-height:1.12 !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-section-desc{font-size:15px !important;line-height:1.45 !important;max-width:760px !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-form-grid{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:14px !important;align-items:start !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-field-description,
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-weekdays-row{grid-column:1 / -1 !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-edit-panel input,
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-edit-panel select,
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-edit-panel textarea{box-sizing:border-box !important;width:100% !important;max-width:100% !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-card-footer-actions{position:sticky !important;z-index:21 !important;bottom:0 !important;display:flex !important;align-items:center !important;justify-content:flex-end !important;gap:12px !important;width:auto !important;max-width:1180px !important;margin:18px auto 0 !important;padding:14px 22px !important;border:0 !important;border-top:1px solid #e5e7eb !important;border-radius:0 0 24px 24px !important;background:#fff !important;box-shadow:0 -12px 24px rgba(15,23,42,.06) !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-card-footer-right{display:flex !important;align-items:center !important;justify-content:flex-end !important;gap:10px !important;flex-wrap:wrap !important;width:100% !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing .tbGoalSaveMeta{display:inline-flex !important;visibility:visible !important;opacity:1 !important;min-width:220px !important;justify-content:center !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing .tbRemoveGoal{min-width:180px !important;justify-content:center !important;}
body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-card-save-msg{flex:1 1 220px !important;min-width:0 !important;text-align:left !important;font-size:12px !important;}
body.tb-theme-dark.tb-goal-editor-open .tb-goal-card.is-editing > .tb-goal-card-body,
body.tb-theme-dark.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-edit-panel,
body.tb-theme-dark.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-summary-head,
body.tb-theme-dark.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-card-footer-actions,
.tb-wrap.tb-theme-dark .tb-goal-card.is-editing > .tb-goal-card-body,
.tb-wrap.tb-theme-dark .tb-goal-card.is-editing .tb-goal-edit-panel,
.tb-wrap.tb-theme-dark .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-summary-head,
.tb-wrap.tb-theme-dark .tb-goal-card.is-editing .tb-goal-card-footer-actions{background:#0f172a !important;color:#e5e7eb !important;border-color:rgba(148,163,184,.30) !important;}
@media (max-width: 720px){
  body.tb-goal-editor-open .tb-goal-card.is-editing > .tb-goal-card-body{left:0 !important;right:0 !important;top:0 !important;bottom:0 !important;border-radius:0 !important;border-left:0 !important;border-right:0 !important;}
  body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-edit-panel{padding:14px 14px 0 !important;border-radius:0 !important;}
  body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-summary-head{margin:-14px -14px 14px !important;padding:14px !important;border-radius:0 !important;flex-direction:column !important;align-items:stretch !important;}
  body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-section-title{font-size:24px !important;}
  body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-section-desc{font-size:14px !important;}
  body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-form-grid{grid-template-columns:1fr !important;gap:12px !important;}
  body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-card-footer-actions{border-radius:0 !important;margin-top:14px !important;padding:12px 14px !important;}
  body.tb-goal-editor-open .tb-goal-card.is-editing .tb-goal-card-footer-right{display:grid !important;grid-template-columns:1fr !important;gap:9px !important;}
  body.tb-goal-editor-open .tb-goal-card.is-editing .tbGoalSaveMeta,
  body.tb-goal-editor-open .tb-goal-card.is-editing .tbRemoveGoal{width:100% !important;min-width:0 !important;}
}

/* Programação Comportamental: editor em modal real fora do card/lista*/
body.tb-goal-editor-open{overflow:hidden !important;}
.tb-goal-card-placeholder{min-height:96px;border:1px dashed #cbd5e1;border-radius:18px;background:rgba(248,250,252,.72);}
.tb-goal-editor-modal{display:none;position:fixed;inset:0;z-index:2147483600;}
.tb-goal-editor-modal.is-open{display:block;}
.tb-goal-editor-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.62);backdrop-filter:saturate(120%) blur(3px);}
.tb-goal-editor-dialog{position:absolute;inset:24px;display:flex;justify-content:center;align-items:stretch;pointer-events:none;}
.tb-goal-editor-modal-content{width:min(1180px,100%);max-height:100%;overflow:auto;-webkit-overflow-scrolling:touch;pointer-events:auto;background:#f8fafc;border-radius:24px;box-shadow:0 28px 90px rgba(15,23,42,.42);}
#tbGoalEditorModal .tb-goal-card.is-editing{position:static !important;inset:auto !important;width:100% !important;height:auto !important;min-height:100% !important;max-width:none !important;margin:0 !important;padding:0 !important;border:0 !important;border-radius:24px !important;background:#f8fafc !important;box-shadow:none !important;overflow:visible !important;}
#tbGoalEditorModal .tb-goal-card.is-editing::before{display:none !important;content:none !important;}
#tbGoalEditorModal .tb-goal-card.is-editing > .tb-goal-card-head{display:none !important;}
#tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-card-body{display:block !important;position:static !important;width:100% !important;margin:0 !important;padding:0 !important;background:transparent !important;border:0 !important;box-shadow:none !important;}
#tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-summary-view{display:none !important;}
#tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-edit-panel{display:block !important;position:static !important;width:auto !important;max-width:none !important;margin:0 !important;padding:22px !important;overflow:visible !important;border-radius:24px !important;background:#fff !important;border:1px solid #dbe4f0 !important;box-shadow:none !important;}
#tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-summary-head{position:sticky !important;top:0 !important;z-index:4 !important;margin:-22px -22px 18px !important;padding:18px 22px !important;background:#fff !important;border-bottom:1px solid #e5e7eb !important;border-radius:24px 24px 0 0 !important;}
#tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-card-footer-actions{position:sticky !important;bottom:0 !important;z-index:4 !important;left:auto !important;right:auto !important;transform:none !important;width:auto !important;display:flex !important;align-items:center !important;justify-content:space-between !important;gap:12px !important;margin:18px -22px -22px !important;padding:14px 22px !important;border:0 !important;border-top:1px solid #e5e7eb !important;border-radius:0 0 24px 24px !important;background:#fff !important;box-shadow:0 -14px 34px rgba(15,23,42,.08) !important;}
#tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-form-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:14px !important;}
@media (max-width:720px){.tb-goal-editor-dialog{inset:0;}.tb-goal-editor-modal-content{width:100%;border-radius:0;}#tbGoalEditorModal .tb-goal-card.is-editing{border-radius:0 !important;}#tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-edit-panel{border-radius:0 !important;border-left:0 !important;border-right:0 !important;padding:14px !important;}#tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-summary-head{margin:-14px -14px 14px !important;padding:14px !important;border-radius:0 !important;}#tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-form-grid{grid-template-columns:1fr !important;}#tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-card-footer-actions{margin:14px -14px -14px !important;padding:12px 14px max(12px, env(safe-area-inset-bottom)) !important;flex-direction:column !important;align-items:stretch !important;border-radius:0 !important;}#tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-card-footer-right{display:grid !important;grid-template-columns:1fr !important;gap:8px !important;width:100% !important;}#tbGoalEditorModal .tb-goal-card.is-editing .tbGoalSaveMeta,#tbGoalEditorModal .tb-goal-card.is-editing .tbRemoveGoal{width:100% !important;justify-content:center !important;}}

/* Programação Comportamental: modal mobile sem deslocamento lateral e chips responsivos*/
body.tb-goal-editor-open,body.tb-goal-editor-open #page,body.tb-goal-editor-open .site,body.tb-goal-editor-open .tb-wrap{overflow-x:hidden !important;}
#tbGoalEditorModal,#tbGoalEditorModal *{box-sizing:border-box !important;}
#tbGoalEditorModal .tb-goal-editor-modal-content,#tbGoalEditorModal .tb-goal-card.is-editing,#tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-card-body,#tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-edit-panel,#tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-form-grid,#tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-form-grid > *,#tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-field{min-width:0 !important;max-width:100% !important;}
#tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-edit-panel input:not([type="checkbox"]):not([type="radio"]),#tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-edit-panel select,#tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-edit-panel textarea{display:block !important;width:100% !important;max-width:100% !important;min-width:0 !important;}
#tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-chip-option{width:100% !important;max-width:100% !important;min-width:0 !important;white-space:normal !important;overflow:hidden !important;text-align:left !important;line-height:1.45 !important;word-break:normal !important;overflow-wrap:anywhere !important;}
#tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-chip-option input[type="checkbox"]{flex:0 0 auto !important;width:18px !important;height:18px !important;min-width:18px !important;max-width:18px !important;}
@media (max-width:720px){
  #tbGoalEditorModal{width:100vw !important;max-width:100vw !important;overflow:hidden !important;}
  #tbGoalEditorModal .tb-goal-editor-dialog{inset:0 !important;width:100vw !important;max-width:100vw !important;min-width:0 !important;overflow:hidden !important;}
  #tbGoalEditorModal .tb-goal-editor-modal-content{width:100vw !important;max-width:100vw !important;height:100dvh !important;max-height:100dvh !important;overflow-y:auto !important;overflow-x:hidden !important;-webkit-overflow-scrolling:touch !important;border-radius:0 !important;}
  #tbGoalEditorModal .tb-goal-card.is-editing{width:100% !important;max-width:100% !important;min-height:100dvh !important;overflow:visible !important;}
  #tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-edit-panel{width:100% !important;max-width:100% !important;margin:0 !important;padding:14px !important;overflow:visible !important;}
  #tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-summary-head{width:auto !important;max-width:none !important;min-width:0 !important;margin:-14px -14px 14px !important;padding:calc(12px + env(safe-area-inset-top)) 14px 14px !important;display:grid !important;grid-template-columns:1fr !important;gap:10px !important;overflow:hidden !important;}
  #tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-section-title{font-size:22px !important;line-height:1.14 !important;max-width:100% !important;overflow-wrap:anywhere !important;}
  #tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-section-desc{font-size:14px !important;line-height:1.45 !important;max-width:100% !important;overflow-wrap:break-word !important;}
  #tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-edit-cancel{width:100% !important;justify-content:center !important;}
  #tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-form-grid{display:grid !important;grid-template-columns:minmax(0,1fr) !important;gap:12px !important;width:100% !important;max-width:100% !important;overflow:hidden !important;}
  #tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-form-grid > *,#tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-field{width:100% !important;max-width:100% !important;grid-column:1 / -1 !important;overflow:hidden !important;}
  #tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-chip-option{display:grid !important;grid-template-columns:22px minmax(0,1fr) !important;align-items:start !important;justify-content:start !important;column-gap:10px !important;row-gap:4px !important;min-height:0 !important;padding:13px 14px !important;border-radius:18px !important;}
  #tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-chip-option input[type="checkbox"]{margin:2px 0 0 !important;justify-self:start !important;}
  #tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-weekdays-wrap{display:grid !important;grid-template-columns:1fr !important;gap:8px !important;width:100% !important;max-width:100% !important;}
  #tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-card-footer-actions{position:sticky !important;bottom:0 !important;width:auto !important;max-width:none !important;margin:14px -14px -14px !important;padding:12px 14px calc(12px + env(safe-area-inset-bottom)) !important;overflow:hidden !important;}
}

/* Programação Comportamental: correção definitiva do scroll/touch do editor no mobile
 Mantém o editor fora do card/lista e faz o scroll acontecer no painel do modal, sem camadas por cima.*/
body.tb-goal-editor-open{
  overflow:hidden !important;
  touch-action:none !important;
}
#tbGoalEditorModal{
  position:fixed !important;
  inset:0 !important;
  width:100vw !important;
  height:100dvh !important;
  max-width:100vw !important;
  max-height:100dvh !important;
  overflow:hidden !important;
  z-index:2147483600 !important;
}
#tbGoalEditorModal .tb-goal-editor-backdrop{
  position:fixed !important;
  inset:0 !important;
  z-index:0 !important;
}
#tbGoalEditorModal .tb-goal-editor-dialog{
  position:fixed !important;
  z-index:1 !important;
  pointer-events:auto !important;
  overflow:hidden !important;
}
#tbGoalEditorModal .tb-goal-editor-modal-content{
  position:relative !important;
  z-index:2 !important;
  pointer-events:auto !important;
  overscroll-behavior:contain !important;
  touch-action:pan-y !important;
}
#tbGoalEditorModal .tb-goal-card.is-editing,
#tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-card-body,
#tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-edit-panel{
  touch-action:pan-y !important;
}
@media (max-width:720px){
  #tbGoalEditorModal .tb-goal-editor-dialog{
    inset:0 !important;
    width:100vw !important;
    height:100dvh !important;
    max-width:100vw !important;
    max-height:100dvh !important;
    display:block !important;
  }
  #tbGoalEditorModal .tb-goal-editor-modal-content{
    position:fixed !important;
    inset:0 !important;
    width:100vw !important;
    height:100dvh !important;
    max-width:100vw !important;
    max-height:100dvh !important;
    overflow-y:scroll !important;
    overflow-x:hidden !important;
    -webkit-overflow-scrolling:touch !important;
    border-radius:0 !important;
    background:#fff !important;
  }
  #tbGoalEditorModal .tb-goal-card.is-editing{
    min-height:auto !important;
    height:auto !important;
    overflow:visible !important;
    background:#fff !important;
  }
  #tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-edit-panel{
    display:block !important;
    position:relative !important;
    width:100% !important;
    max-width:100% !important;
    min-height:auto !important;
    margin:0 !important;
    padding:14px 14px calc(24px + env(safe-area-inset-bottom)) !important;
    overflow:visible !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    background:#fff !important;
  }
  /* No mobile, header e rodapé deixam de ser sticky/fixed para não criar camada invisível sobre o formulário.*/
  #tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-summary-head,
  #tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-card-footer-actions{
    position:relative !important;
    top:auto !important;
    bottom:auto !important;
    left:auto !important;
    right:auto !important;
    z-index:1 !important;
    transform:none !important;
    width:auto !important;
    max-width:none !important;
    pointer-events:auto !important;
  }
  #tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-edit-panel .tb-goal-summary-head{
    margin:-14px -14px 14px !important;
    padding:calc(12px + env(safe-area-inset-top)) 14px 14px !important;
    border-radius:0 !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    gap:10px !important;
  }
  #tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-card-footer-actions{
    margin:18px -14px calc(-24px - env(safe-area-inset-bottom)) !important;
    padding:12px 14px calc(16px + env(safe-area-inset-bottom)) !important;
    border-radius:0 !important;
    box-shadow:0 -10px 24px rgba(15,23,42,.08) !important;
  }
  #tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-form-grid,
  #tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-field,
  #tbGoalEditorModal .tb-goal-card.is-editing .tb-goal-chip-option{
    pointer-events:auto !important;
    touch-action:pan-y !important;
  }
}
/* ajuste fino: o body fica travado, mas sem bloquear gesto vertical dentro do modal.*/
body.tb-goal-editor-open{touch-action:auto !important;}

/* Jornada: configuração em modal real + preservação visual mobile*/
.tb-modal.tb-modal-journey-config{position:fixed !important;inset:0 !important;z-index:2147483500 !important;display:flex !important;align-items:center !important;justify-content:center !important;padding:18px !important;box-sizing:border-box !important;overflow:hidden !important;}
.tb-modal.tb-modal-journey-config .tb-modal-backdrop{position:absolute !important;inset:0 !important;background:rgba(15,23,42,.62) !important;backdrop-filter:saturate(120%) blur(3px) !important;}
.tb-modal.tb-modal-journey-config .tb-modal-card{position:relative !important;z-index:1 !important;width:min(980px,100%) !important;max-height:calc(100dvh - 36px) !important;display:flex !important;flex-direction:column !important;overflow:hidden !important;border-radius:24px !important;}
.tb-modal.tb-modal-journey-config .tb-modal-body{overflow-y:auto !important;overflow-x:hidden !important;-webkit-overflow-scrolling:touch !important;overscroll-behavior:contain !important;padding:18px !important;}
.tb-journey-config-modal-shell,.tb-journey-config-modal-shell *{box-sizing:border-box !important;max-width:100%;}
.tb-journey-config-modal-shell .tb-journey-config-panel{border:0 !important;box-shadow:none !important;overflow:visible !important;}
.tb-journey-config-modal-shell .tb-journey-config-panel-head{position:static !important;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px;}
.tb-journey-config-modal-shell .tb-journey-config-panel-body{padding:0 !important;}
.tb-journey-config-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:16px;padding-top:14px;border-top:1px solid #e5e7eb;}
.tb-journey-config-modal-footer #tbJourneyConfigModalMsg{margin-right:auto;}
@media (max-width:720px){
  .tb-modal.tb-modal-journey-config{padding:0 !important;align-items:stretch !important;justify-content:stretch !important;}
  .tb-modal.tb-modal-journey-config .tb-modal-card{width:100vw !important;height:100dvh !important;max-height:100dvh !important;border-radius:0 !important;}
  .tb-modal.tb-modal-journey-config .tb-modal-body{padding:14px !important;touch-action:pan-y !important;}
  .tb-journey-config-modal-shell .tb-journey-config-grid{grid-template-columns:1fr !important;}
  .tb-journey-config-modal-shell .tb-journey-chip-toggle,.tb-journey-config-modal-shell .tb-journey-source-checks .tb-chip{display:grid !important;grid-template-columns:22px minmax(0,1fr) !important;align-items:start !important;width:100% !important;white-space:normal !important;overflow-wrap:anywhere !important;}
  .tb-journey-config-modal-shell .tb-journey-chip-toggle input,.tb-journey-config-modal-shell .tb-journey-source-checks .tb-chip input{margin:2px 0 0 !important;}
  .tb-journey-config-modal-footer{display:grid !important;grid-template-columns:1fr !important;align-items:stretch !important;}
  .tb-journey-config-modal-footer #tbJourneyConfigModalMsg{margin-right:0 !important;}
  .tb-journey-config-modal-footer .tb-btn{width:100%;justify-content:center;}
}
/* Push: adiciona destinos Áudios Bônus e Audiolivros no envio ao cliente.*/
/* Portal do cliente: remove arredondamento do container principal no tema moderno.*/
.tb-wrap.tb-theme-modern.tb-client-portal{border-radius:0 !important;}
/* Corrige fechamento/reabertura da popup Configuração da Jornada no mobile e limpa classes especiais do modal.*/


/* Mobile Push: corrige camada/toque bloqueando selects, checkbox e seleção de clientes.*/
@media (max-width: 782px){
  .tb-push-shell,
  .tb-push-shell *,
  .tb-push-composer,
  .tb-push-composer *,
  .tb-push-clients-block,
  .tb-push-clients-block *{
    pointer-events:auto !important;
    box-sizing:border-box !important;
    max-width:100% !important;
  }
  .tb-push-shell{
    position:relative !important;
    z-index:30 !important;
    overflow:visible !important;
    touch-action:pan-y !important;
  }
  .tb-push-composer{
    position:relative !important;
    z-index:40 !important;
    overflow:visible !important;
    touch-action:pan-y !important;
  }
  .tb-push-form-grid,
  .tb-push-form-grid > div,
  .tb-push-composer-footer,
  .tb-push-current-target,
  .tb-push-client-tools,
  .tb-push-client-grid,
  .tb-push-client-card{
    position:relative !important;
    z-index:41 !important;
    width:100% !important;
    min-width:0 !important;
  }
  #tbTherapistPushTarget,
  #tbTherapistPushTargetTab,
  #tbTherapistPushTitle,
  #tbTherapistPushBody,
  #tbTherapistPushSearch,
  #tbTherapistPushRequireInteraction,
  .tb-push-filter-btn,
  .tb-push-use-client,
  #tbTherapistPushSubmit{
    position:relative !important;
    z-index:45 !important;
    pointer-events:auto !important;
    touch-action:manipulation !important;
    -webkit-user-select:auto !important;
    user-select:auto !important;
  }
  #tbTherapistPushTarget,
  #tbTherapistPushTargetTab{
    display:block !important;
    width:100% !important;
    min-height:48px !important;
    appearance:auto !important;
    -webkit-appearance:menulist !important;
  }
  .tb-push-check{
    display:grid !important;
    grid-template-columns:26px minmax(0,1fr) !important;
    align-items:start !important;
    gap:10px !important;
    width:100% !important;
    padding:10px 0 !important;
    margin:0 !important;
    line-height:1.35 !important;
    cursor:pointer !important;
    touch-action:manipulation !important;
    position:relative !important;
    z-index:46 !important;
  }
  .tb-push-check input[type="checkbox"]{
    width:22px !important;
    height:22px !important;
    min-width:22px !important;
    margin:2px 0 0 !important;
    appearance:auto !important;
    -webkit-appearance:checkbox !important;
    pointer-events:auto !important;
  }
  .tb-push-check span{
    min-width:0 !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
    pointer-events:none !important;
  }
  .tb-push-composer-footer .tb-row{
    width:100% !important;
    justify-content:flex-start !important;
  }
  .tb-push-filter-group{
    display:grid !important;
    grid-template-columns:1fr !important;
    width:100% !important;
  }
}

/* Dashboard premium da Jornada Sináptica no portal do cliente.
 * Mantém a navegação existente por abas e melhora apenas o layout visual/responsivo.
*/
.tb-portal-journey-sections{--tb-portal-journey-radius:22px;--tb-portal-journey-border:rgba(148,163,184,.22);--tb-portal-journey-shadow:0 18px 40px rgba(15,23,42,.07);border-top:0 !important;padding-top:0 !important;}
.tb-portal-journey-sections .tb-journey-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
.tb-portal-journey-sections .tb-journey-tab{min-height:104px;border-radius:var(--tb-portal-journey-radius);padding:16px;background:linear-gradient(145deg,#ffffff 0%,#f8fbff 100%);border-color:var(--tb-portal-journey-border);box-shadow:var(--tb-portal-journey-shadow);}
.tb-portal-journey-sections .tb-journey-tab-icon{flex-basis:42px;width:42px;height:42px;font-size:19px;}
.tb-portal-journey-sections .tb-journey-tab-title{font-size:14px;line-height:1.18;}
.tb-portal-journey-sections .tb-journey-tab-meta{font-size:11px;line-height:1.32;}
.tb-portal-journey-sections .tb-journey-tabpanes{margin-top:2px;}
.tb-portal-journey-sections .tb-journey-tabpane.is-active{border:1px solid rgba(215,222,234,.82);border-radius:22px;background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);box-shadow:0 16px 34px rgba(15,23,42,.06);padding:14px;}
.tb-portal-journey-sections .tb-journey-section{border:1px solid rgba(215,222,234,.9);border-radius:18px;background:#fff;overflow:hidden;box-shadow:0 10px 22px rgba(15,23,42,.035);}
.tb-portal-journey-sections .tb-journey-section + .tb-journey-section{margin-top:10px;}
.tb-portal-journey-sections .tb-journey-section-summary{padding:14px 16px;}
.tb-portal-journey-sections .tb-journey-section-panel{padding:0 16px 16px;}
@media (max-width:782px){
  /* Portal do cliente: Jornada Sináptica em uma coluna no mobile.*/
  .tb-journey-sections-shell.tb-portal-journey-sections{display:grid !important;grid-template-columns:minmax(0,1fr) !important;gap:12px !important;margin-top:12px !important;width:100% !important;max-width:100% !important;overflow-x:hidden !important;}
  .tb-journey-sections-shell.tb-portal-journey-sections > .tb-journey-tabs,
  .tb-journey-sections-shell.tb-portal-journey-sections > .tb-journey-tabpanes{min-width:0 !important;width:100% !important;}
  .tb-journey-sections-shell.tb-portal-journey-sections .tb-journey-tabs{display:grid !important;grid-template-columns:1fr !important;gap:9px !important;align-items:stretch !important;}
  .tb-journey-sections-shell.tb-portal-journey-sections .tb-journey-tab{min-width:0 !important;min-height:86px !important;padding:11px 10px 12px !important;gap:8px !important;border-radius:18px !important;flex-direction:column !important;align-items:flex-start !important;justify-content:space-between !important;}
  .tb-journey-sections-shell.tb-portal-journey-sections .tb-journey-tab-icon{flex:0 0 32px !important;width:32px !important;height:32px !important;font-size:16px !important;box-shadow:0 8px 18px color-mix(in srgb,var(--tb-journey-accent,#253263) 22%,transparent) !important;}
  .tb-journey-sections-shell.tb-portal-journey-sections .tb-journey-tab-copy{gap:2px !important;width:100% !important;}
  .tb-journey-sections-shell.tb-portal-journey-sections .tb-journey-tab-title{font-size:12.5px !important;line-height:1.18 !important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
  .tb-journey-sections-shell.tb-portal-journey-sections .tb-journey-tab-meta{font-size:10.5px !important;line-height:1.2 !important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .tb-journey-sections-shell.tb-portal-journey-sections .tb-journey-tabpanes{min-width:0 !important;}
  .tb-journey-sections-shell.tb-portal-journey-sections .tb-journey-tabpane.is-active{padding:10px !important;border-radius:18px !important;}
  .tb-journey-sections-shell.tb-portal-journey-sections .tb-journey-section{border-radius:16px !important;}
  .tb-journey-sections-shell.tb-portal-journey-sections .tb-journey-section-summary{padding:12px !important;}
  .tb-journey-sections-shell.tb-portal-journey-sections .tb-journey-section-panel{padding:0 12px 12px !important;}
  .tb-journey-sections-shell.tb-portal-journey-sections .tb-journey-tabpane.is-active > .tb-grid,
  .tb-journey-sections-shell.tb-portal-journey-sections .tb-journey-tabpane.is-active .tb-gamification-medals-grid{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:10px !important;}
  .tb-journey-sections-shell.tb-portal-journey-sections .tb-journey-tabpane.is-active .tb-pre,
  .tb-journey-sections-shell.tb-portal-journey-sections .tb-journey-tabpane.is-active .tb-card{min-width:0 !important;max-width:100% !important;}
}
@media (max-width:380px){
  .tb-journey-sections-shell.tb-portal-journey-sections .tb-journey-tabs,
  .tb-journey-sections-shell.tb-portal-journey-sections .tb-journey-tabpane.is-active > .tb-grid,
  .tb-journey-sections-shell.tb-portal-journey-sections .tb-journey-tabpane.is-active .tb-gamification-medals-grid{grid-template-columns:1fr !important;}
}

/* Portal do cliente: Medalhas e Conquistas em 2 colunas no mobile.*/
@media (max-width:782px){
  .tb-journey-sections-shell.tb-portal-journey-sections .tb-journey-tabpanes .tb-journey-achievement-grid{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
  }
  .tb-journey-sections-shell.tb-portal-journey-sections .tb-journey-tabpanes .tb-journey-achievement-item{
    min-width:0 !important;
    max-width:100% !important;
  }
}
@media (max-width:380px){
  .tb-journey-sections-shell.tb-portal-journey-sections .tb-journey-tabpanes .tb-journey-achievement-grid{
    grid-template-columns:1fr !important;
  }
}


/* Portal do cliente: correção visual da Jornada Sináptica no mobile e modo dark.
 * Corrige a aba ativa que ficava clara por sobrescrita do bloco premium do portal.
 * Reforça contraste de textos, cards, botões, contornos e sombras no tema escuro.
*/
.tb-portal-journey-sections .tb-journey-tab.tb-tab-active{
  background:linear-gradient(135deg,color-mix(in srgb,var(--tb-journey-accent,#253263) 88%,#3b82f6 12%) 0%,var(--tb-journey-accent,#253263) 100%) !important;
  border-color:color-mix(in srgb,var(--tb-journey-accent,#253263) 68%,#ffffff) !important;
  box-shadow:0 18px 30px color-mix(in srgb,var(--tb-journey-accent,#253263) 24%,transparent) !important;
}
.tb-portal-journey-sections .tb-journey-tab.tb-tab-active .tb-journey-tab-title,
.tb-portal-journey-sections .tb-journey-tab.tb-tab-active .tb-journey-tab-meta{color:#ffffff !important;text-shadow:0 1px 2px rgba(15,23,42,.22);}
.tb-portal-journey-sections .tb-journey-tab.tb-tab-active .tb-journey-tab-icon{background:#ffffff !important;color:var(--tb-journey-accent,#253263) !important;}

.tb-wrap.tb-theme-dark .tb-portal-journey-sections,
body.tb-theme-dark .tb-portal-journey-sections{
  --tb-portal-journey-border:rgba(148,163,184,.26);
  --tb-portal-journey-shadow:0 18px 42px rgba(0,0,0,.34);
}
.tb-wrap.tb-theme-dark .tb-portal-journey-sections .tb-journey-tab,
body.tb-theme-dark .tb-portal-journey-sections .tb-journey-tab{
  background:linear-gradient(145deg,rgba(15,23,42,.96) 0%,rgba(30,41,59,.92) 100%) !important;
  border-color:rgba(148,163,184,.24) !important;
  box-shadow:0 16px 34px rgba(0,0,0,.32) !important;
}
.tb-wrap.tb-theme-dark .tb-portal-journey-sections .tb-journey-tab-title,
body.tb-theme-dark .tb-portal-journey-sections .tb-journey-tab-title{color:#f8fafc !important;}
.tb-wrap.tb-theme-dark .tb-portal-journey-sections .tb-journey-tab-meta,
body.tb-theme-dark .tb-portal-journey-sections .tb-journey-tab-meta{color:#bfdbfe !important;opacity:.98 !important;}
.tb-wrap.tb-theme-dark .tb-portal-journey-sections .tb-journey-tab.tb-tab-active,
body.tb-theme-dark .tb-portal-journey-sections .tb-journey-tab.tb-tab-active{
  background:linear-gradient(135deg,color-mix(in srgb,var(--tb-journey-accent,#2563eb) 88%,#60a5fa 12%) 0%,var(--tb-journey-accent,#2563eb) 100%) !important;
  border-color:rgba(191,219,254,.45) !important;
  box-shadow:0 20px 42px color-mix(in srgb,var(--tb-journey-accent,#2563eb) 32%,rgba(0,0,0,.50)) !important;
}
.tb-wrap.tb-theme-dark .tb-portal-journey-sections .tb-journey-tab.tb-tab-active .tb-journey-tab-title,
.tb-wrap.tb-theme-dark .tb-portal-journey-sections .tb-journey-tab.tb-tab-active .tb-journey-tab-meta,
body.tb-theme-dark .tb-portal-journey-sections .tb-journey-tab.tb-tab-active .tb-journey-tab-title,
body.tb-theme-dark .tb-portal-journey-sections .tb-journey-tab.tb-tab-active .tb-journey-tab-meta{color:#ffffff !important;}
.tb-wrap.tb-theme-dark .tb-portal-journey-sections .tb-journey-tabpane.is-active,
body.tb-theme-dark .tb-portal-journey-sections .tb-journey-tabpane.is-active,
.tb-wrap.tb-theme-dark .tb-portal-journey-sections .tb-journey-section,
body.tb-theme-dark .tb-portal-journey-sections .tb-journey-section,
.tb-wrap.tb-theme-dark .tb-journey-timeline-wrap,
body.tb-theme-dark .tb-journey-timeline-wrap,
.tb-wrap.tb-theme-dark .tb-journey-achievement-card,
body.tb-theme-dark .tb-journey-achievement-card{
  background:linear-gradient(180deg,rgba(15,23,42,.96) 0%,rgba(2,6,23,.92) 100%) !important;
  border-color:rgba(148,163,184,.24) !important;
  box-shadow:0 16px 36px rgba(0,0,0,.30) !important;
}
.tb-wrap.tb-theme-dark .tb-portal-journey-sections .tb-journey-section[open],
body.tb-theme-dark .tb-portal-journey-sections .tb-journey-section[open]{background:rgba(15,23,42,.98) !important;}
.tb-wrap.tb-theme-dark .tb-journey-achievement-main,
.tb-wrap.tb-theme-dark .tb-gamification-bar-label,
.tb-wrap.tb-theme-dark .tb-gamification-bar-value,
.tb-wrap.tb-theme-dark .tb-journey-focus-title,
.tb-wrap.tb-theme-dark .tb-journey-boardgame-title,
.tb-wrap.tb-theme-dark .tb-journey-boardgame-guide-title,
body.tb-theme-dark .tb-journey-achievement-main,
body.tb-theme-dark .tb-gamification-bar-label,
body.tb-theme-dark .tb-gamification-bar-value,
body.tb-theme-dark .tb-journey-focus-title,
body.tb-theme-dark .tb-journey-boardgame-title,
body.tb-theme-dark .tb-journey-boardgame-guide-title{color:#f8fafc !important;}
.tb-wrap.tb-theme-dark .tb-journey-focus-desc,
.tb-wrap.tb-theme-dark .tb-journey-boardgame-guide-text,
.tb-wrap.tb-theme-dark .tb-journey-boardgame-guide-helper,
.tb-wrap.tb-theme-dark .tb-gamification-bar-meta,
body.tb-theme-dark .tb-journey-focus-desc,
body.tb-theme-dark .tb-journey-boardgame-guide-text,
body.tb-theme-dark .tb-journey-boardgame-guide-helper,
body.tb-theme-dark .tb-gamification-bar-meta{color:#cbd5e1 !important;}
.tb-wrap.tb-theme-dark .tb-journey-focus-label,
.tb-wrap.tb-theme-dark .tb-journey-boardgame-kicker,
.tb-wrap.tb-theme-dark .tb-journey-boardgame-guide-kicker,
body.tb-theme-dark .tb-journey-focus-label,
body.tb-theme-dark .tb-journey-boardgame-kicker,
body.tb-theme-dark .tb-journey-boardgame-guide-kicker{color:#93c5fd !important;}
.tb-wrap.tb-theme-dark .tb-journey-focus-card,
body.tb-theme-dark .tb-journey-focus-card{background:linear-gradient(135deg,rgba(30,41,59,.95) 0%,rgba(15,23,42,.96) 100%) !important;border-color:rgba(96,165,250,.28) !important;}
.tb-wrap.tb-theme-dark .tb-journey-focus-meta span,
.tb-wrap.tb-theme-dark .tb-journey-boardgame-guide-chips span,
body.tb-theme-dark .tb-journey-focus-meta span,
body.tb-theme-dark .tb-journey-boardgame-guide-chips span{background:rgba(30,41,59,.86) !important;border-color:rgba(148,163,184,.28) !important;color:#dbeafe !important;}
.tb-wrap.tb-theme-dark .tb-gamification-bar-track,
.tb-wrap.tb-theme-dark .tb-journey-focus-progress,
.tb-wrap.tb-theme-dark .tb-journey-boardgame-track,
body.tb-theme-dark .tb-gamification-bar-track,
body.tb-theme-dark .tb-journey-focus-progress,
body.tb-theme-dark .tb-journey-boardgame-track{background:rgba(148,163,184,.24) !important;}
.tb-wrap.tb-theme-dark .tb-gamification-bar-fill,
.tb-wrap.tb-theme-dark .tb-journey-focus-progress span,
.tb-wrap.tb-theme-dark .tb-journey-boardgame-track span,
body.tb-theme-dark .tb-gamification-bar-fill,
body.tb-theme-dark .tb-journey-focus-progress span,
body.tb-theme-dark .tb-journey-boardgame-track span{background:#60a5fa !important;}

@media (max-width:782px){
  .tb-journey-sections-shell.tb-portal-journey-sections .tb-journey-tab.tb-tab-active{
    background:linear-gradient(135deg,color-mix(in srgb,var(--tb-journey-accent,#253263) 88%,#3b82f6 12%) 0%,var(--tb-journey-accent,#253263) 100%) !important;
  }
}


/* Correção definitiva de contraste no modo dark da Jornada Sináptica.
 * Reforça os seletores no final do arquivo para vencer fundos claros e cores inline antigas.
 * Não altera o tema claro nem a estrutura terapêutica/dados salvos.
*/
body.tb-theme-dark .tb-client-workspace-section,
.tb-wrap.tb-theme-dark .tb-client-workspace-section,
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent{
  color:#e5e7eb !important;
}
body.tb-theme-dark #tbClientWorkspaceContent .tb-card,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-card,
body.tb-theme-dark #tbClientWorkspaceContent .tb-pre,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-pre,
body.tb-theme-dark #tbClientWorkspaceContent .tb-client-workspace-section,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-client-workspace-section,
body.tb-theme-dark #tbClientWorkspaceContent .tb-journey-tabpane.is-active,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-tabpane.is-active,
body.tb-theme-dark #tbClientWorkspaceContent .tb-journey-config-panel,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-config-panel,
body.tb-theme-dark #tbClientWorkspaceContent .tb-journey-config-card,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-config-card,
body.tb-theme-dark #tbClientWorkspaceContent .tb-journey-config-shell,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-config-shell,
body.tb-theme-dark #tbClientWorkspaceContent .tb-journey-section,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-section,
body.tb-theme-dark #tbClientWorkspaceContent .tb-journey-history-wrap,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-history-wrap,
body.tb-theme-dark #tbClientWorkspaceContent .tb-journey-summary-card,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-summary-card{
  background:linear-gradient(180deg,rgba(15,23,42,.96) 0%,rgba(2,6,23,.94) 100%) !important;
  border-color:rgba(148,163,184,.24) !important;
  color:#e5e7eb !important;
  box-shadow:0 18px 42px rgba(0,0,0,.34) !important;
}
body.tb-theme-dark #tbClientWorkspaceContent .tb-client-module-callout,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-client-module-callout{
  background:linear-gradient(180deg,rgba(8,26,50,.96) 0%,rgba(5,13,28,.98) 100%) !important;
  border-color:rgba(96,165,250,.38) !important;
  color:#e5e7eb !important;
}
body.tb-theme-dark #tbClientWorkspaceContent .tb-client-module-callout.is-success,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-client-module-callout.is-success{
  background:linear-gradient(180deg,rgba(8,43,27,.96) 0%,rgba(5,24,18,.98) 100%) !important;
  border-color:rgba(74,222,128,.38) !important;
}
body.tb-theme-dark #tbClientWorkspaceContent .tb-client-module-callout.is-warning,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-client-module-callout.is-warning{
  background:linear-gradient(180deg,rgba(60,39,8,.96) 0%,rgba(34,21,4,.98) 100%) !important;
  border-color:rgba(251,191,36,.38) !important;
}
body.tb-theme-dark #tbClientWorkspaceContent .tb-client-module-title,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-client-module-title,
body.tb-theme-dark #tbClientWorkspaceContent .tb-client-module-callout-title,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-client-module-callout-title,
body.tb-theme-dark #tbClientWorkspaceContent .tb-journey-config-card-title,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-config-card-title,
body.tb-theme-dark #tbClientWorkspaceContent .tb-journey-events-title,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-events-title,
body.tb-theme-dark #tbClientWorkspaceContent h1,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent h1,
body.tb-theme-dark #tbClientWorkspaceContent h2,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent h2,
body.tb-theme-dark #tbClientWorkspaceContent h3,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent h3,
body.tb-theme-dark #tbClientWorkspaceContent strong,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent strong,
body.tb-theme-dark #tbClientWorkspaceContent b,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent b{
  color:#f8fafc !important;
}
body.tb-theme-dark #tbClientWorkspaceContent .tb-muted,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-muted,
body.tb-theme-dark #tbClientWorkspaceContent .tb-client-module-desc,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-client-module-desc,
body.tb-theme-dark #tbClientWorkspaceContent .tb-client-module-callout-text,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-client-module-callout-text,
body.tb-theme-dark #tbClientWorkspaceContent p,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent p,
body.tb-theme-dark #tbClientWorkspaceContent span,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent span,
body.tb-theme-dark #tbClientWorkspaceContent div,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent div{
  color:#cbd5e1;
}
body.tb-theme-dark #tbClientWorkspaceContent .tb-client-module-callout-kicker,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-client-module-callout-kicker{
  color:#93c5fd !important;
}
body.tb-theme-dark #tbClientWorkspaceContent .tb-chip,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-chip,
body.tb-theme-dark #tbClientWorkspaceContent .tb-client-module-chip,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-client-module-chip,
body.tb-theme-dark #tbClientWorkspaceContent .tb-client-module-callout-tags span,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-client-module-callout-tags span{
  background:rgba(15,23,42,.72) !important;
  border-color:rgba(148,163,184,.28) !important;
  color:#e2e8f0 !important;
}
body.tb-theme-dark #tbClientWorkspaceContent .tb-input,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-input,
body.tb-theme-dark #tbClientWorkspaceContent .tb-select,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-select,
body.tb-theme-dark #tbClientWorkspaceContent .tb-textarea,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-textarea{
  background:rgba(2,6,23,.82) !important;
  border-color:rgba(148,163,184,.30) !important;
  color:#f8fafc !important;
}
body.tb-theme-dark #tbClientWorkspaceContent .tb-btn,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-btn,
body.tb-theme-dark #tbClientWorkspaceContent button:not(.tb-tab),
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent button:not(.tb-tab){
  background:rgba(15,23,42,.88) !important;
  border-color:rgba(148,163,184,.32) !important;
  color:#e5e7eb !important;
}
body.tb-theme-dark #tbClientWorkspaceContent .tb-btn-primary,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-btn-primary{
  background:linear-gradient(135deg,#2563eb 0%,#1d4ed8 100%) !important;
  border-color:rgba(191,219,254,.42) !important;
  color:#ffffff !important;
}
body.tb-theme-dark #tbClientWorkspaceContent .tb-journey-tab,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-tab{
  background:linear-gradient(145deg,rgba(15,23,42,.98) 0%,rgba(30,41,59,.94) 100%) !important;
  border-color:rgba(148,163,184,.30) !important;
  color:#e5e7eb !important;
}
body.tb-theme-dark #tbClientWorkspaceContent .tb-journey-tab.tb-tab-active,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-tab.tb-tab-active{
  background:linear-gradient(135deg,#2563eb 0%,#1d4ed8 100%) !important;
  border-color:rgba(191,219,254,.48) !important;
  color:#ffffff !important;
}
body.tb-theme-dark #tbClientWorkspaceContent .tb-journey-tab.tb-tab-active * ,
.tb-wrap.tb-theme-dark #tbClientWorkspaceContent .tb-journey-tab.tb-tab-active *{
  color:#ffffff !important;
}

/* correção de escopo dos avisos do terapeuta + escolha de horários pelo cliente*/
.tb-portal-session-choice-box{
  display:grid;
  gap:10px;
  padding:12px;
  border:1px solid rgba(37,50,99,.14);
  border-radius:16px;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,252,.98));
  box-shadow:0 10px 24px rgba(15,23,42,.06);
}
.tb-portal-session-choice-title{
  font-weight:800;
  color:#253263;
  font-size:14px;
}
.tb-portal-session-choice-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
.tb-portal-session-choice-card{
  display:flex;
  align-items:flex-start;
  gap:8px;
  min-height:64px;
  padding:10px;
  border:1px solid #dbe3ef;
  border-radius:14px;
  background:#fff;
  cursor:pointer;
  transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.tb-portal-session-choice-card:hover,
.tb-portal-session-choice-card:focus-within{
  border-color:#253263;
  box-shadow:0 8px 18px rgba(37,50,99,.12);
  transform:translateY(-1px);
}
.tb-portal-session-choice-card input{
  margin-top:2px;
  flex:0 0 auto;
}
.tb-portal-session-choice-card span{
  display:grid;
  gap:3px;
  min-width:0;
}
.tb-portal-session-choice-card strong{
  color:#253263;
  font-size:13px;
  line-height:1.2;
}
.tb-portal-session-choice-card small{
  color:#475569;
  font-size:12px;
  line-height:1.35;
}
@media (max-width: 782px){
  .tb-portal-session-choice-grid{
    grid-template-columns:repeat(1,minmax(0,1fr));
  }
  .tb-portal-session-choice-card{
    min-height:auto;
  }
}

/* Gadgets operacionais na lista de clientes*/
.tb-client-list-gadgets{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;min-width:0;}
.tb-client-list-gadget{display:inline-flex;flex-direction:column;gap:1px;max-width:210px;padding:6px 10px;border-radius:12px;border:1px solid rgba(37,50,99,.14);background:#fff;box-shadow:0 8px 20px rgba(15,23,42,.06);font-size:11px;line-height:1.15;text-align:left;color:#253263;}
.tb-client-list-gadget-kicker{font-size:9px;text-transform:uppercase;letter-spacing:.06em;font-weight:800;color:#64748b;}
.tb-client-list-gadget b{font-size:12px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#111827;}
.tb-client-list-gadget small{font-size:10px;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.tb-client-list-gadget.is-activity{background:#f8fafc;border-color:rgba(37,50,99,.18);}
.tb-client-list-gadget.is-session.is-next{background:#ecfdf5;border-color:rgba(16,185,129,.32);}
.tb-client-list-gadget.is-session.is-history{background:#fff7ed;border-color:rgba(251,146,60,.35);}
.tb-client-accordion-summary-item.is-session{border-color:rgba(16,185,129,.28);background:rgba(236,253,245,.75);}
@media (max-width: 760px){
  .tb-client-list-row-inner{align-items:flex-start;}
  .tb-client-list-row-aside{align-items:flex-end;gap:6px;}
  .tb-client-list-gadgets{width:100%;justify-content:flex-end;}
  .tb-client-list-gadget{max-width:160px;padding:5px 8px;}
}

/* Ajuste final: na lista, somente o próximo agendamento fica visível como gadget principal.*/
.tb-client-list-gadget.is-session.is-next{
  display:inline-flex;
  flex-direction:row;
  align-items:center;
  gap:6px;
  max-width:100%;
  min-height:34px;
  padding:7px 12px;
  border-radius:999px;
  border:1px solid rgba(16,185,129,.32);
  background:#ecfdf5;
  color:#047857;
  box-shadow:none;
  font-size:12px;
  line-height:1.15;
  font-weight:800;
  white-space:nowrap;
}
.tb-client-list-gadget.is-session.is-next .dashicons{font-size:16px;width:16px;height:16px;line-height:16px;color:inherit;}
.tb-client-list-gadget.is-session.is-next span:not(.dashicons){white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
@media (max-width: 780px){
  .tb-client-list-gadget.is-session.is-next{max-width:100%;white-space:normal;border-radius:14px;}
  .tb-client-list-gadget.is-session.is-next span:not(.dashicons){white-space:normal;}
}


/* Notificação compacta: uma única bolinha vermelha na lista do cliente.*/
#tbClientsCards .tb-client-list-alert-badge.is-dot-only{
  width:12px;
  height:12px;
  min-width:12px;
  padding:0;
  border-radius:999px;
  border:2px solid #fff;
  background:#dc2626;
  color:transparent;
  font-size:0;
  line-height:0;
  box-shadow:0 0 0 3px rgba(220,38,38,.18), 0 6px 14px rgba(220,38,38,.25);
  overflow:hidden;
}
#tbClientsCards .tb-client-list-alert-badge.is-dot-only::after{
  content:'';
  display:block;
  width:100%;
  height:100%;
  border-radius:inherit;
  background:inherit;
}

/* Ajustes de layout para alternativas de agendamento e gadgets mobile.*/
.tb-session-alt-toggle{
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  gap:8px;
  width:auto;
  max-width:100%;
  margin:0;
  color:#0f172a;
  font-weight:700;
  line-height:1.25;
  text-align:left;
}
.tb-session-alt-toggle input[type="checkbox"]{
  flex:0 0 auto;
  margin:0;
}
.tb-session-alt-toggle span{
  display:inline-block;
  min-width:0;
}
@media (max-width: 760px){
  #tbClientsCards .tb-client-list-row-aside{
    flex-wrap:wrap;
    align-items:center;
  }
  #tbClientsCards .tb-client-list-gadgets{
    order:1;
    width:100%;
    justify-content:flex-start;
  }
  #tbClientsCards .tb-client-list-alert-badge,
  #tbClientsCards .tb-client-list-status,
  #tbClientsCards .tb-client-card-toggle-icon{
    order:2;
  }
}
@media (max-width: 640px){
  .tb-session-alt-toggle{
    display:flex;
    width:100%;
    align-items:center;
  }
}


/* Confirmação final de sessão no card e notificação apenas em Agendamento.*/
.tb-client-workspace-menu-btn .tb-inline-badge-dot{
  min-width:10px;
  width:10px;
  height:10px;
  padding:0;
  margin-left:6px;
  border-radius:999px;
  font-size:0;
  line-height:0;
  box-shadow:0 0 0 4px rgba(220,38,38,.12);
}
.tb-therapist-notification-pill.is-location{
  background:#fef2f2;
  color:#991b1b;
  border-color:#fecaca;
}

/* Agendamento pendente com destaque laranja e confirmação moderna.*/
.tb-client-list-gadget.is-session.is-next.is-pending{
  border-color:rgba(251,146,60,.46);
  background:#fff7ed;
  color:#c2410c;
}
.tb-client-list-gadget.is-session.is-next.is-confirmed{
  border-color:rgba(16,185,129,.32);
  background:#ecfdf5;
  color:#047857;
}
.tb-btn.tb-btn-session-confirm{
  background:linear-gradient(135deg,#fb923c 0%,#f97316 48%,#ea580c 100%);
  border:0;
  color:#fff;
  box-shadow:0 14px 30px rgba(249,115,22,.28);
  font-weight:800;
}
.tb-btn.tb-btn-session-confirm:hover,
.tb-btn.tb-btn-session-confirm:focus{
  background:linear-gradient(135deg,#fdba74 0%,#fb923c 48%,#f97316 100%);
  color:#fff;
  transform:translateY(-1px);
  box-shadow:0 18px 36px rgba(249,115,22,.34);
}
@media (max-width:640px){
  #tbClientsCards.tb-clients-cards-grid{
    border:0 !important;
    box-shadow:none !important;
  }
}

/* Jornada do cliente no mobile em uma coluna.
 * Mantém o desktop intacto e força apenas o grid mobile das abas da jornada para 1 coluna.
*/
@media (max-width: 782px){
  .tb-journey-sections-shell.tb-portal-journey-sections .tb-journey-tabs,
  .tb-journey-sections-shell .tb-journey-tabs{
    grid-template-columns:1fr !important;
  }
}


/* Mobile: mantém redução de rótulos e ícones do mapa Radar 7D para não estourar o card no celular.*/
@media (max-width: 640px){
  .tb-radar-stage{
    width: min(100%, var(--tb-radar-display-width, 720px));
    max-width: 100%;
  }
  .tb-radar-tag{
    font-size: clamp(12px, 3.25vw, 17px) !important;
    gap: 3px !important;
    max-width: 34vw;
    line-height: 1.05;
    word-break: normal;
    overflow-wrap: normal;
  }
  .tb-radar-tag-text{
    line-height: 1.05 !important;
    white-space: normal;
  }
  .tb-radar-tag-icon{
    width: clamp(15px, 4.2vw, 21px) !important;
    height: clamp(15px, 4.2vw, 21px) !important;
  }
}

/* Agenda/Sessões: destaque visual para horários escolhidos pelo cliente aguardando confirmação do terapeuta.*/
#tbClientWorkspaceContent .tb-session-card-status.is-warning{
  background:#fff7ed;
  color:#c2410c;
  border-color:#fed7aa;
}
body.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card-status.is-warning,
.tb-wrap.tb-theme-dark .tb-client-workspace-shell #tbClientWorkspaceContent .tb-session-card-status.is-warning{
  background:rgba(249,115,22,.18);
  color:#fdba74;
  border-color:rgba(251,146,60,.42);
}

/* Mobile terapeuta: força as etapas do Ciclo de Atendimento em duas colunas.
 * Correção específica para os botões 1º Pré-Diagnóstico, 2º Radar 7D, etc.
 * Mantém o contrato legado: altera somente apresentação visual, sem mudar dados, metas ou shortcodes.
*/
@media (max-width: 782px){
  .tb-wrap #tbWorkspaceMain > .tb-tabs.tb-therapy-steps-tabs,
  .tb-wrap .tb-client-workspace-shell #tbWorkspaceMain > .tb-tabs.tb-therapy-steps-tabs,
  .tb-wrap .tb-therapy-steps-tabs,
  html[data-tb-react-layoutshell="ready"] .tb-wrap #tbWorkspaceMain > .tb-tabs.tb-therapy-steps-tabs,
  html[data-tb-react-layoutshell="ready"] .tb-wrap .tb-therapy-steps-tabs{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
    width:100% !important;
    max-width:100% !important;
    overflow:visible !important;
    padding:0 !important;
    margin:12px 0 14px !important;
    box-sizing:border-box !important;
  }
  .tb-wrap #tbWorkspaceMain > .tb-tabs.tb-therapy-steps-tabs > .tb-tab,
  .tb-wrap .tb-therapy-steps-tabs > .tb-tab,
  html[data-tb-react-layoutshell="ready"] .tb-wrap #tbWorkspaceMain > .tb-tabs.tb-therapy-steps-tabs > .tb-tab,
  html[data-tb-react-layoutshell="ready"] .tb-wrap .tb-therapy-steps-tabs > .tb-tab{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    min-height:58px !important;
    margin:0 !important;
    padding:10px 9px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:8px !important;
    white-space:normal !important;
    text-align:left !important;
    line-height:1.16 !important;
    font-size:clamp(12px,3.45vw,14px) !important;
    box-sizing:border-box !important;
  }
}
@media (max-width: 360px){
  .tb-wrap #tbWorkspaceMain > .tb-tabs.tb-therapy-steps-tabs > .tb-tab,
  .tb-wrap .tb-therapy-steps-tabs > .tb-tab{
    min-height:54px !important;
    padding:9px 7px !important;
    gap:6px !important;
    font-size:12px !important;
  }
}

/* Base global mobile/desktop.
 * Reforço CSS legado para garantir largura útil no celular antes/depois do JS
 * progressivo carregar. Apenas apresentação visual; não altera regras de negócio.
*/
@media (max-width:980px){
  body:has(.tb-wrap),
  body:has(.tb-client-portal-shell){
    overflow-x:hidden;
  }

  .tb-client-portal-shell,
  .tb-client-portal-shell-content,
  .tb-wrap.tb-client-portal,
  .tb-wrap.tb-app-fullpage,
  .tb-wrap:has(#tbWorkspaceMain),
  .tb-wrap:has(#tbClientWorkspaceContent){
    width:100dvw !important;
    max-width:100dvw !important;
    min-width:0 !important;
    margin-left:calc(50% - 50dvw) !important;
    margin-right:calc(50% - 50dvw) !important;
    padding-left:clamp(6px,2.2vw,10px) !important;
    padding-right:clamp(6px,2.2vw,10px) !important;
    border-left:0 !important;
    border-right:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    box-sizing:border-box !important;
    overflow-x:hidden !important;
  }

  @supports not (width:100dvw){
    .tb-client-portal-shell,
    .tb-client-portal-shell-content,
    .tb-wrap.tb-client-portal,
    .tb-wrap.tb-app-fullpage,
    .tb-wrap:has(#tbWorkspaceMain),
    .tb-wrap:has(#tbClientWorkspaceContent){
      width:100vw !important;
      max-width:100vw !important;
      margin-left:calc(50% - 50vw) !important;
      margin-right:calc(50% - 50vw) !important;
    }
  }

  .tb-wrap :where(.tb-layout,.tb-main,.tb-content,#tbWorkspaceMain,#tbClientWorkspaceContent,.tb-client-workspace-shell,.tb-client-card-panel,.tb-client-portal-shell,.tb-client-portal-shell-content),
  .tb-wrap :where(.tb-card,.tb-pre,.tb-area-card,.tb-client-card,.tb-session-card,.tb-goal-card,.tb-journey-card,.tb-bonus-audio-card,.tb-audiobook-card){
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }

  .tb-wrap :where(img,svg,video,iframe,canvas,table){
    max-width:100% !important;
  }

  .tb-wrap #tbWorkspaceMain > .tb-tabs.tb-therapy-steps-tabs,
  .tb-wrap .tb-client-workspace-shell #tbWorkspaceMain > .tb-tabs.tb-therapy-steps-tabs,
  .tb-wrap .tb-therapy-steps-tabs{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
    width:100% !important;
    max-width:100% !important;
    overflow:visible !important;
    padding:0 !important;
    margin:12px 0 14px !important;
    box-sizing:border-box !important;
  }

  .tb-wrap #tbWorkspaceMain > .tb-tabs.tb-therapy-steps-tabs > .tb-tab,
  .tb-wrap .tb-therapy-steps-tabs > .tb-tab{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    min-height:56px !important;
    margin:0 !important;
    padding:10px 8px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:8px !important;
    white-space:normal !important;
    text-align:left !important;
    line-height:1.15 !important;
    font-size:clamp(12px,3.2vw,14px) !important;
    overflow-wrap:anywhere;
    box-sizing:border-box !important;
  }

  .tb-client-portal .tb-client-tabs-modern,
  .tb-client-portal .tb-client-menu-actions,
  .tb-client-portal .tb-client-workspace-menu{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:9px !important;
    width:100% !important;
    max-width:100% !important;
  }

  .tb-client-portal .tb-client-tabs-modern .tb-tab,
  .tb-client-portal .tb-client-menu-tab,
  .tb-client-portal .tb-client-workspace-menu-btn{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    min-height:52px !important;
    padding:10px 8px !important;
    justify-content:flex-start !important;
    text-align:left !important;
    white-space:normal !important;
    line-height:1.14 !important;
    font-size:clamp(12px,3.25vw,14px) !important;
    box-sizing:border-box !important;
  }
}
@media (max-width:360px){
  .tb-wrap .tb-therapy-steps-tabs,
  .tb-client-portal .tb-client-tabs-modern,
  .tb-client-portal .tb-client-menu-actions,
  .tb-client-portal .tb-client-workspace-menu{gap:7px !important;}
  .tb-wrap .tb-therapy-steps-tabs > .tb-tab,
  .tb-client-portal .tb-client-tabs-modern .tb-tab,
  .tb-client-portal .tb-client-menu-tab,
  .tb-client-portal .tb-client-workspace-menu-btn{
    min-height:50px !important;
    padding:8px 7px !important;
    font-size:12px !important;
  }
}

/* Fallback sem :has para navegadores/WebViews que ignoram seletores avançados.*/
@media (max-width:980px){
  .tb-wrap{
    width:100dvw !important;
    max-width:100dvw !important;
    min-width:0 !important;
    margin-left:calc(50% - 50dvw) !important;
    margin-right:calc(50% - 50dvw) !important;
    padding-left:clamp(6px,2.2vw,10px) !important;
    padding-right:clamp(6px,2.2vw,10px) !important;
    border-left:0 !important;
    border-right:0 !important;
    border-radius:0 !important;
    box-sizing:border-box !important;
    overflow-x:hidden !important;
  }
  @supports not (width:100dvw){
    .tb-wrap{
      width:100vw !important;
      max-width:100vw !important;
      margin-left:calc(50% - 50vw) !important;
      margin-right:calc(50% - 50vw) !important;
    }
  }
}

@media (min-width:981px){
  .tb-wrap:has(#tbWorkspaceMain),
  .tb-wrap.tb-client-portal,
  html[data-tb-react-layoutshell="ready"] .tb-wrap.tb-r7d-layout-shell{
    max-width:min(1440px, calc(100vw - 32px));
  }
}

/* Portal do Cliente completo: reforço mobile/desktop antes do JS progressivo carregar.
 * Preserva o HTML legado e melhora encaixe de abas, cards e conteúdos no celular.
*/
@media (max-width: 782px){
  .tb-wrap.tb-client-portal{
    width:100dvw !important;
    max-width:100dvw !important;
    margin-left:calc(50% - 50dvw) !important;
    margin-right:calc(50% - 50dvw) !important;
    padding-left:6px !important;
    padding-right:6px !important;
    border-left:0 !important;
    border-right:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    overflow-x:hidden !important;
    box-sizing:border-box !important;
  }
  @supports not (width:100dvw){
    .tb-wrap.tb-client-portal{
      width:100vw !important;
      max-width:100vw !important;
      margin-left:calc(50% - 50vw) !important;
      margin-right:calc(50% - 50vw) !important;
    }
  }
  .tb-client-portal .tb-client-tabs-modern{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:8px !important;
    width:100% !important;
    max-width:100% !important;
    overflow:visible !important;
  }
  .tb-client-portal .tb-client-tabs-modern .tb-tab{
    min-width:0 !important;
    width:100% !important;
    max-width:100% !important;
    min-height:52px !important;
    padding:9px 8px !important;
    line-height:1.12 !important;
    white-space:normal !important;
    box-sizing:border-box !important;
  }
  .tb-client-portal .tb-tabpane,
  .tb-client-portal .tb-card,
  .tb-client-portal .tb-pre,
  .tb-client-portal .tb-report-content,
  .tb-client-portal .tb-analysis-html,
  .tb-client-portal .tb-delivery-grid,
  .tb-client-portal .tb-bonus-spotify-list,
  .tb-client-portal .tb-audiobook-portal-list{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
    overflow-x:hidden !important;
  }
}

/* Programação Comportamental no Portal do Cliente: ocupa melhor o mobile sem depender de JS do terapeuta.*/
.tb-client-portal .tb-goal-portal-card,
.tb-wrap.tb-client-portal .tb-goal-portal-card{
  box-sizing:border-box;
  width:100%;
  max-width:100%;
  border-radius:18px !important;
  overflow:hidden;
}
.tb-client-portal .tb-goal-portal-head,
.tb-wrap.tb-client-portal .tb-goal-portal-head{
  min-width:0;
}
.tb-client-portal .tb-goal-portal-head > div:first-child,
.tb-wrap.tb-client-portal .tb-goal-portal-head > div:first-child{
  min-width:0;
  flex:1 1 260px;
}
.tb-client-portal .tb-gamification-goal-title,
.tb-wrap.tb-client-portal .tb-gamification-goal-title{
  overflow-wrap:anywhere;
}
.tb-client-portal .tb-goal-form-grid,
.tb-wrap.tb-client-portal .tb-goal-form-grid{
  width:100%;
  max-width:100%;
}
.tb-client-portal .tb-goal-portal-form textarea,
.tb-client-portal .tb-goal-portal-form select,
.tb-client-portal .tb-goal-portal-form input,
.tb-wrap.tb-client-portal .tb-goal-portal-form textarea,
.tb-wrap.tb-client-portal .tb-goal-portal-form select,
.tb-wrap.tb-client-portal .tb-goal-portal-form input{
  box-sizing:border-box;
  width:100%;
  max-width:100%;
}
.tb-client-portal .tb-goal-portal-form textarea[name="tb_goal_notes"],
.tb-wrap.tb-client-portal .tb-goal-portal-form textarea[name="tb_goal_notes"]{
  min-height:112px;
  resize:vertical;
}
@media (max-width:720px){
  .tb-client-portal .tb-goals-grid,
  .tb-wrap.tb-client-portal .tb-goals-grid,
  .tb-client-portal .tb-gamification-two-grid,
  .tb-wrap.tb-client-portal .tb-gamification-two-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
  }
  .tb-client-portal .tb-goal-portal-card,
  .tb-wrap.tb-client-portal .tb-goal-portal-card{
    padding:14px !important;
    margin-left:0 !important;
    margin-right:0 !important;
  }
  .tb-client-portal .tb-goal-portal-head,
  .tb-wrap.tb-client-portal .tb-goal-portal-head{
    flex-direction:column;
    align-items:stretch !important;
  }
  .tb-client-portal .tb-goal-portal-head > div:last-child,
  .tb-wrap.tb-client-portal .tb-goal-portal-head > div:last-child{
    width:100%;
    justify-content:space-between !important;
  }
  .tb-client-portal .tb-goal-portal-edit-toggle,
  .tb-wrap.tb-client-portal .tb-goal-portal-edit-toggle,
  .tb-client-portal .tb-goal-portal-form .tb-btn,
  .tb-wrap.tb-client-portal .tb-goal-portal-form .tb-btn{
    width:100%;
    justify-content:center;
  }
}

/* Agenda/Sessões: acabamento mobile e status claro sem confundir com Ciclo de Atendimento.*/
.tb-client-card-panel .tb-session-card[data-schedule-status="awaiting_therapist"],
.tb-client-card-panel .tb-session-card[data-schedule-status="alternate_selected"]{
  border-color:rgba(249,115,22,.42) !important;
  box-shadow:0 14px 32px rgba(249,115,22,.14) !important;
}
.tb-client-card-panel .tb-session-card[data-schedule-status="confirmed"]{
  border-color:rgba(16,185,129,.34) !important;
  box-shadow:0 12px 28px rgba(16,185,129,.10) !important;
}
.tb-client-card-panel .tb-session-card[data-schedule-status="pending"],
.tb-client-card-panel .tb-session-card[data-schedule-status="sent"],
.tb-client-card-panel .tb-session-card[data-schedule-status="draft"]{
  border-color:rgba(37,99,235,.24) !important;
}
.tb-client-sessions-actions #tbClientSessionsActionsExtra,
.tb-client-sessions-actions #tbClientSessionsActionsExtra .tb-btn{
  display:inline-flex;
  align-items:center;
}
.tb-session-next-hint{
  border:1px solid rgba(37,99,235,.18);
  background:#eff6ff;
  color:#1d4ed8;
  border-radius:16px;
  padding:10px 12px;
  font-weight:800;
}
.tb-portal-session-card-compact{
  max-width:100%;
  box-sizing:border-box;
  overflow:hidden;
}
.tb-portal-session-quick-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.tb-portal-session-action{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-height:38px;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid rgba(37,50,99,.14);
  background:#fff;
  color:#253263;
  font-weight:800;
  text-decoration:none;
}
.tb-portal-session-response-form .tb-btn[name="tb_portal_session_action"][value="confirm"],
.tb-portal-session-response-form .tb-btn[name="tb_portal_session_action"][value="choose_alt"]{
  background:linear-gradient(135deg,#fb923c 0%,#f97316 52%,#ea580c 100%);
  color:#fff;
  border-color:#f97316;
  box-shadow:0 14px 30px rgba(249,115,22,.24);
}
@media (max-width:782px){
  .tb-client-sessions-actions{
    justify-content:stretch !important;
  }
  .tb-client-sessions-actions #tbClientSessionsActionsExtra,
  .tb-client-sessions-actions #tbClientSessionsActionsExtra .tb-btn,
  .tb-client-sessions-actions > .tb-btn{
    width:100%;
    justify-content:center;
  }
  .tb-portal-session-meta.tb-portal-session-meta-inline{
    grid-template-columns:1fr !important;
  }
  .tb-portal-session-header{
    display:grid !important;
    grid-template-columns:1fr !important;
  }
  .tb-portal-session-chips,
  .tb-portal-session-quick-actions{
    justify-content:flex-start !important;
  }
  .tb-portal-session-action,
  .tb-portal-session-response-form .tb-btn{
    width:100%;
  }
}

/* Notificações e badges por área: chips clicáveis e foco no local correto.*/
.tb-client-list-alert-chip.is-clickable{cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,outline-color .16s ease}
.tb-client-list-alert-chip.is-clickable:hover,.tb-client-list-alert-chip.is-clickable:focus{transform:translateY(-1px);box-shadow:0 8px 18px rgba(15,23,42,.12);outline:2px solid rgba(37,50,99,.16);outline-offset:2px}
.tb-client-workspace-menu-btn.has-notification{position:relative;border-color:#fecaca!important;box-shadow:0 10px 28px rgba(185,28,28,.12)}
.tb-client-workspace-menu-btn.has-notification .tb-inline-badge-dot{margin-left:auto;flex:0 0 auto}

/* Correções mobile de layout, menu, badges, reflexões e botões longos.
 Preserva HTML legado, eventos AJAX, shortcodes, metas, relatórios e backups.*/
@media (max-width: 980px){
  .tb-sidebar,
  #tbTherapistSidebar{
    padding-top: max(26px, calc(env(safe-area-inset-top, 0px) + 22px)) !important;
    scroll-padding-top: max(28px, calc(env(safe-area-inset-top, 0px) + 24px)) !important;
  }
  #tbTherapistSidebar .tb-sidebar-head{
    margin-top:0 !important;
    padding-top:0 !important;
  }
  #tbTherapistSidebar #tbNavClients{
    margin-top:8px !important;
  }
}

@media (max-width: 767px){
  .tb-client-workspace-badges.tb-client-workspace-badges-compact{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:6px !important;
    width:100% !important;
  }
  .tb-client-workspace-badges.tb-client-workspace-badges-compact .tb-client-card-badge{
    min-width:0 !important;
    width:100% !important;
    min-height:36px !important;
    padding:7px 5px !important;
    justify-content:center !important;
    text-align:center !important;
    font-size:clamp(9.5px,2.55vw,11px) !important;
    line-height:1.12 !important;
    overflow-wrap:anywhere !important;
  }
  .tb-client-workspace-badges.tb-client-workspace-badges-compact .tb-client-card-cycle{
    grid-column:auto !important;
    order:initial !important;
    min-height:36px !important;
  }
}

#tbSavePre,
.tb-ds-scope #tbSavePre.tb-btn,
html[data-tb-react-designsystem="ready"] .tb-ds-scope #tbSavePre.tb-ds-button,
html[data-tb-react-designsystem="ready"] .tb-ds-scope .tb-btn-primary.tb-ds-button[data-tb-ds-action="success"]{
  background:#16a34a !important;
  border-color:#16a34a !important;
  color:#ffffff !important;
  box-shadow:0 10px 22px rgba(22,163,74,.22) !important;
}
#tbSavePre:hover,
html[data-tb-react-designsystem="ready"] .tb-ds-scope #tbSavePre.tb-ds-button:hover,
html[data-tb-react-designsystem="ready"] .tb-ds-scope .tb-btn-primary.tb-ds-button[data-tb-ds-action="success"]:hover{
  background:#15803d !important;
  border-color:#15803d !important;
  color:#ffffff !important;
}

@media (max-width: 560px){
  .tb-area-card .tb-area-top{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
  }
  .tb-area-card .tb-area-actions{
    width:100% !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) 44px !important;
    gap:8px !important;
    align-items:stretch !important;
  }
  .tb-area-card .tb-area-actions .tb-btn[data-reflect],
  .tb-area-card .tb-area-actions [data-reflect]{
    width:100% !important;
    min-width:0 !important;
    min-height:44px !important;
    justify-content:center !important;
    text-align:center !important;
    white-space:normal !important;
    line-height:1.15 !important;
  }
  .tb-area-card .tb-area-actions .tb-help,
  .tb-area-card .tb-area-actions [data-help]{
    width:44px !important;
    min-width:44px !important;
    height:44px !important;
    min-height:44px !important;
    align-self:stretch !important;
  }
}

@media (max-width: 782px){
  .tb-anamnesis-client-actions{
    display:grid !important;
    grid-template-columns:minmax(62px,.85fr) minmax(60px,.75fr) minmax(104px,1.5fr) !important;
    gap:8px !important;
    width:100% !important;
    align-items:stretch !important;
  }
  .tb-anamnesis-client-actions .tb-btn,
  .tb-anamnesis-actions-row .tb-btn{
    min-width:0 !important;
    width:100% !important;
    min-height:42px !important;
    padding-left:8px !important;
    padding-right:8px !important;
    justify-content:center !important;
    text-align:center !important;
    white-space:normal !important;
    line-height:1.14 !important;
    overflow-wrap:anywhere !important;
  }
  .tb-anamnesis-client-actions a[href*="wa.me"],
  .tb-anamnesis-client-actions a[href*="whatsapp"]{
    font-weight:800 !important;
  }
}
@media (max-width: 380px){
  .tb-anamnesis-client-actions{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .tb-anamnesis-client-actions a[href*="wa.me"],
  .tb-anamnesis-client-actions a[href*="whatsapp"]{
    grid-column:1 / -1 !important;
  }
}

/* Correções solicitadas: mobile seguro, botões do workspace, termo do áudio e popups por etapas.*/
@media (min-width:981px){
  .tb-sidebar .tb-sidebar-close,
  #tbMobileMenuClose{
    display:none!important;
    visibility:hidden!important;
  }
}
@media (max-width:980px){
  .tb-sidebar,
  #tbTherapistSidebar,
  html[data-tb-react-navigationshell="ready"] .tb-navigation-drawer-therapist{
    padding-top:max(44px, calc(env(safe-area-inset-top, 0px) + 38px))!important;
  }
  #tbTherapistSidebar #tbNavClients,
  .tb-navigation-drawer-therapist #tbNavClients,
  .tb-navigation-drawer-therapist .tb-sidebtn:first-of-type{
    margin-top:14px!important;
  }
}
@media (max-width:767px){
  .tb-client-workspace-badges.tb-client-workspace-badges-compact{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:6px!important;
  }
  .tb-client-workspace-badges.tb-client-workspace-badges-compact .tb-client-card-badge{
    min-width:0!important;
    width:100%!important;
    justify-content:center!important;
    text-align:center!important;
    overflow-wrap:anywhere!important;
  }
}
.tb-client-workspace-menu.tb-cycle-workspace-actions-grid #tbClientWorkspaceFinalReport,
.tb-client-workspace-menu #tbClientWorkspaceFinalReport{
  order:90!important;
}
.tb-client-workspace-menu.tb-cycle-workspace-actions-grid #tbClientWorkspaceDelete,
.tb-client-workspace-menu #tbClientWorkspaceDelete{
  order:91!important;
}
.tb-client-workspace-menu.tb-cycle-workspace-actions-grid a[href*="tb_audio_consent_receipt"],
.tb-client-workspace-menu.tb-cycle-workspace-actions-grid .tb-client-workspace-menu-btn[href*="tb_audio_consent_receipt"]{
  order:92!important;
}
.tb-audio-consent-workspace-section .tb-audio-consent-status-card{
  display:grid;
  grid-template-columns:52px minmax(0,1fr);
  gap:14px;
  align-items:start;
  border:1px solid #bbf7d0;
  background:#f0fdf4;
  color:#14532d;
  border-radius:18px;
  padding:14px;
}
.tb-audio-consent-workspace-section .tb-audio-consent-status-icon{
  width:44px;
  height:44px;
  border-radius:14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#16a34a;
  color:#fff;
}
.tb-audio-consent-workspace-section .tb-audio-consent-status-title,
.tb-audio-consent-workspace-section .tb-audio-consent-terms-title{
  font-weight:900;
  color:#253263;
  line-height:1.2;
}
.tb-audio-consent-workspace-section .tb-audio-consent-terms-scroll{
  border-radius:18px!important;
  border-color:#dbe4f0!important;
}
@media (max-width:560px){
  .tb-audio-consent-workspace-section .tb-audio-consent-status-card{
    grid-template-columns:1fr;
  }
}

/* Popups de Agendamento e Programação: estrutura por etapas e rolagem interna confiável.*/
.tb-modal-steps-rail{
  display:grid;
  gap:10px;
  align-content:start;
  padding:16px;
  background:linear-gradient(180deg,#eef4ff 0%,#f8fafc 100%);
  border-right:1px solid rgba(37,50,99,.12);
  color:#253263;
  box-sizing:border-box;
}
.tb-modal-steps-rail-title{
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#667085;
}
.tb-modal-step-chip{
  display:flex;
  align-items:center;
  gap:9px;
  width:100%;
  min-height:38px;
  padding:8px 10px;
  border:1px solid rgba(37,50,99,.14);
  border-radius:14px;
  background:#fff;
  color:#253263;
  font-size:12px;
  font-weight:850;
  line-height:1.2;
  text-align:left;
  box-sizing:border-box;
}
.tb-modal-step-chip span:first-child{
  width:20px;
  height:20px;
  min-width:20px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:#253263;
  color:#fff;
  font-size:11px;
}
#tbGoalEditorModal.tb-modal-steps-ready .tb-goal-editor-modal-content{
  display:grid!important;
  grid-template-columns:minmax(190px,250px) minmax(0,1fr)!important;
  align-items:stretch!important;
  overflow:hidden!important;
}
#tbGoalEditorModal.tb-modal-steps-ready .tb-modal-steps-rail{
  grid-column:1!important;
  grid-row:1!important;
  height:100%!important;
  overflow:auto!important;
}
#tbGoalEditorModal.tb-modal-steps-ready .tb-goal-card.is-editing{
  grid-column:2!important;
  min-width:0!important;
  max-height:100%!important;
  overflow:auto!important;
  -webkit-overflow-scrolling:touch!important;
}
#tbGoalEditorModal.tb-modal-steps-ready .tb-goal-card.is-editing .tb-goal-edit-panel{
  min-height:100%!important;
}
#tbClientSessionForm.tb-session-form-modal-shell{
  position:fixed!important;
  inset:0!important;
  z-index:2147483300!important;
  padding:clamp(10px,2vw,20px)!important;
  background:rgba(15,23,42,.58)!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
#tbClientSessionForm.tb-session-form-modal-shell .tb-session-form-card{
  width:min(1160px,100%)!important;
  height:calc(100dvh - 40px)!important;
  max-height:calc(100dvh - 40px)!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:minmax(190px,250px) minmax(0,1fr)!important;
  align-items:start!important;
  overflow:auto!important;
  -webkit-overflow-scrolling:touch!important;
  border-radius:24px!important;
  box-shadow:0 28px 80px rgba(15,23,42,.45)!important;
}
#tbClientSessionForm.tb-session-form-modal-shell .tb-session-form-card > .tb-modal-steps-rail{
  position:sticky!important;
  top:0!important;
  height:calc(100dvh - 40px)!important;
  overflow:auto!important;
  grid-column:1!important;
  grid-row:1 / span 20!important;
}
#tbClientSessionForm.tb-session-form-modal-shell .tb-session-form-card > :not(.tb-modal-steps-rail){
  grid-column:2!important;
  min-width:0!important;
  margin-left:16px!important;
  margin-right:16px!important;
}
#tbClientSessionForm.tb-session-form-modal-shell .tb-session-form-card > :last-child{
  margin-bottom:16px!important;
}
@media (max-width:720px){
  #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-editor-modal-content{
    grid-template-columns:1fr!important;
    width:100dvw!important;
    height:100dvh!important;
  }
  #tbGoalEditorModal.tb-modal-steps-ready .tb-modal-steps-rail{
    grid-column:1!important;
    height:auto!important;
    max-height:92px!important;
    display:flex!important;
    gap:8px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding:10px calc(10px + env(safe-area-inset-right)) 10px calc(10px + env(safe-area-inset-left))!important;
    border-right:0!important;
    border-bottom:1px solid rgba(37,50,99,.12)!important;
  }
  #tbGoalEditorModal.tb-modal-steps-ready .tb-modal-steps-rail-title{display:none!important;}
  #tbGoalEditorModal.tb-modal-steps-ready .tb-modal-step-chip{min-width:132px!important;white-space:normal!important;}
  #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-card.is-editing{
    grid-column:1!important;
    height:calc(100dvh - 92px)!important;
  }
  #tbClientSessionForm.tb-session-form-modal-shell{
    padding:0!important;
  }
  #tbClientSessionForm.tb-session-form-modal-shell .tb-session-form-card{
    width:100dvw!important;
    max-width:100dvw!important;
    height:100dvh!important;
    max-height:100dvh!important;
    border-radius:0!important;
    grid-template-columns:1fr!important;
    overflow:auto!important;
  }
  #tbClientSessionForm.tb-session-form-modal-shell .tb-session-form-card > .tb-modal-steps-rail{
    grid-column:1!important;
    grid-row:auto!important;
    position:sticky!important;
    top:0!important;
    z-index:4!important;
    height:auto!important;
    max-height:92px!important;
    display:flex!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    border-right:0!important;
    border-bottom:1px solid rgba(37,50,99,.12)!important;
    padding:10px calc(10px + env(safe-area-inset-right)) 10px calc(10px + env(safe-area-inset-left))!important;
  }
  #tbClientSessionForm.tb-session-form-modal-shell .tb-session-form-card > .tb-modal-steps-rail .tb-modal-steps-rail-title{display:none!important;}
  #tbClientSessionForm.tb-session-form-modal-shell .tb-session-form-card > .tb-modal-steps-rail .tb-modal-step-chip{min-width:132px!important;}
  #tbClientSessionForm.tb-session-form-modal-shell .tb-session-form-card > :not(.tb-modal-steps-rail){
    grid-column:1!important;
    margin-left:12px!important;
    margin-right:12px!important;
  }
  #tbClientSessionForm.tb-session-form-modal-shell .tb-session-form-card > .tb-row:last-child{
    position:sticky!important;
    bottom:0!important;
    z-index:3!important;
    margin-left:0!important;
    margin-right:0!important;
    padding:12px calc(12px + env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom)) calc(12px + env(safe-area-inset-left))!important;
    background:#fff!important;
    border-top:1px solid rgba(37,50,99,.12)!important;
  }
}

/* Ajustes finos mobile/desktop solicitados: workspace, aprovação, abas, cards e perfil.*/
.tb-portal-hold-btn.is-approved-disabled,
.tb-portal-hold-btn[disabled],
.tb-portal-hold-btn[aria-disabled="true"]{
  opacity:.45!important;
  filter:grayscale(.55) saturate(.35)!important;
  cursor:not-allowed!important;
  pointer-events:none!important;
  background:#f1f5f9!important;
  border-color:#cbd5e1!important;
  color:#64748b!important;
  box-shadow:none!important;
}
.tb-portal-hold-btn.is-approved-disabled .tb-portal-hold-fill,
.tb-portal-hold-btn[disabled] .tb-portal-hold-fill,
.tb-portal-hold-btn[aria-disabled="true"] .tb-portal-hold-fill{display:none!important;}

@media (max-width:767px){
  #tbClientWorkspaceRoot .tb-client-workspace-menu.tb-cycle-workspace-actions-grid,
  #tbClientWorkspaceRoot .tb-client-workspace-menu{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    align-items:stretch!important;
  }
  #tbClientWorkspaceRoot .tb-client-workspace-menu #tbClientWorkspaceFinalReport,
  #tbClientWorkspaceRoot .tb-client-workspace-menu.tb-cycle-workspace-actions-grid #tbClientWorkspaceFinalReport{
    order:96!important;
    grid-column:auto!important;
  }
  #tbClientWorkspaceRoot .tb-client-workspace-menu #tbClientWorkspaceDelete,
  #tbClientWorkspaceRoot .tb-client-workspace-menu.tb-cycle-workspace-actions-grid #tbClientWorkspaceDelete{
    order:97!important;
    grid-column:auto!important;
  }
  #tbClientWorkspaceRoot .tb-client-workspace-menu .tb-client-workspace-edit-btn,
  #tbClientWorkspaceRoot .tb-client-workspace-menu.tb-cycle-workspace-actions-grid .tb-client-workspace-edit-btn{
    order:95!important;
  }
  #tbClientWorkspaceRoot .tb-client-workspace-menu a[href*="tb_audio_consent_receipt"],
  #tbClientWorkspaceRoot .tb-client-workspace-menu .tb-client-workspace-menu-btn[href*="tb_audio_consent_receipt"]{
    order:98!important;
    grid-column:1 / -1!important;
  }
  #tbClientWorkspaceRoot .tb-client-card-badge.tb-client-card-cycle,
  #tbClientsCards .tb-client-card-badge.tb-client-card-cycle{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    gap:4px!important;
    line-height:1.12!important;
    white-space:normal!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    min-height:32px!important;
    padding:7px 8px!important;
  }
}

.tb-client-portal.tb-cpd-portal-enhanced .tb-client-tabs-modern.tb-cpd-tabs-grid .tb-tab{
  border-radius:12px!important;
  justify-content:center!important;
  text-align:center!important;
  align-items:center!important;
  gap:8px!important;
}
.tb-client-portal.tb-cpd-portal-enhanced .tb-client-tabs-modern.tb-cpd-tabs-grid .tb-tab .tb-tab-label,
.tb-client-portal.tb-cpd-portal-enhanced .tb-client-tabs-modern.tb-cpd-tabs-grid .tb-tab span:not(.dashicons){
  text-align:center!important;
}
.tb-client-portal.tb-cpd-portal-enhanced .tb-client-tabs-modern.tb-cpd-tabs-grid .tb-tab .tb-tab-icon,
.tb-client-portal.tb-cpd-portal-enhanced .tb-client-tabs-modern.tb-cpd-tabs-grid .tb-tab :where(.tb-tab-icon,.dashicons):first-child{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  width:auto!important;
  height:auto!important;
  min-width:18px!important;
  padding:0!important;
  opacity:1!important;
  visibility:visible!important;
}
.tb-client-portal.tb-cpd-portal-enhanced .tb-client-tabs-modern.tb-cpd-tabs-grid .tb-tab.tb-tab-active{
  background:#253263!important;
  border-color:#253263!important;
  color:#ffffff!important;
  box-shadow:0 14px 30px rgba(37,50,99,.22)!important;
}
.tb-client-portal.tb-cpd-portal-enhanced .tb-client-tabs-modern.tb-cpd-tabs-grid .tb-tab.tb-tab-active,
.tb-client-portal.tb-cpd-portal-enhanced .tb-client-tabs-modern.tb-cpd-tabs-grid .tb-tab.tb-tab-active .tb-tab-label,
.tb-client-portal.tb-cpd-portal-enhanced .tb-client-tabs-modern.tb-cpd-tabs-grid .tb-tab.tb-tab-active .tb-tab-icon,
.tb-client-portal.tb-cpd-portal-enhanced .tb-client-tabs-modern.tb-cpd-tabs-grid .tb-tab.tb-tab-active .dashicons,
.tb-client-portal.tb-cpd-portal-enhanced .tb-client-tabs-modern.tb-cpd-tabs-grid .tb-tab.tb-tab-active span{
  color:#ffffff!important;
}
@media (max-width:782px){
  .tb-client-portal.tb-cpd-portal-enhanced .tb-client-tabs-modern.tb-cpd-tabs-grid .tb-tab{
    min-height:54px!important;
    border-radius:10px!important;
    padding:9px 8px!important;
  }
}

@media (max-width:767px){
  .tb-profileheader.tb-profileheader-between,
  .tb-profileheader.tb-profileheader-between .tb-profileheader-left{
    display:grid!important;
    grid-template-columns:1fr!important;
    justify-items:center!important;
    align-items:center!important;
    text-align:center!important;
    gap:12px!important;
    width:100%!important;
  }
  .tb-profileheader.tb-profileheader-between .tb-profileheader-text,
  .tb-profileheader.tb-profileheader-between .tb-profileheader-name,
  .tb-profileheader.tb-profileheader-between .tb-profileheader-title,
  .tb-profileheader.tb-profileheader-between .tb-profileheader-bio,
  .tb-profileheader.tb-profileheader-between .tb-profileheader-links,
  .tb-profileheader.tb-profileheader-between .tb-profileheader-right{
    text-align:center!important;
    justify-content:center!important;
    justify-items:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
    max-width:100%!important;
  }
  .tb-profileheader.tb-profileheader-between .tb-avatar,
  .tb-profileheader.tb-profileheader-between img{
    margin-left:auto!important;
    margin-right:auto!important;
  }
  #tbClientsCards .tb-client-accordion-summary-title{
    font-size:9.5px!important;
    line-height:1.08!important;
    letter-spacing:.018em!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important;
  }
}

/* Fallback global: evita filtros/raízes duplicadas da Jornada Sináptica caso o PWA carregue HTML legado em cache.*/
.tb-journey-primary-root + .tb-journey-primary-root,
.tb-journey-primary-root[data-tb-react-module="journey-panel-primary"] ~ .tb-journey-primary-root[data-tb-react-module="journey-panel-primary"]{
  display:none!important;
}
.tb-journey-primary-filters{
  display:none!important;
}

/* Fallback global: remove a raiz duplicada do antigo painel "Próximo passo" no Portal do Cliente.*/
#tbClientPortalDashboardRoot,
.tb-client-portal-dashboard-root{
  display:none!important;
}

/* Fallback global das etapas reais dos popups de Agendamento e Programação.
 * Repetido no app.css para proteger o fluxo caso o PWA entregue cache parcial do modal-shell.css.
*/
html[data-tb-react-modalshell="ready"] .tb-modal-step-panel[hidden]{display:none!important;}
html[data-tb-react-modalshell="ready"] .tb-modal-step-chip{appearance:none!important;cursor:pointer!important;}
html[data-tb-react-modalshell="ready"] .tb-modal-step-chip.is-active,
html[data-tb-react-modalshell="ready"] .tb-modal-step-chip[aria-current="step"]{background:#253263!important;border-color:#253263!important;color:#fff!important;}
html[data-tb-react-modalshell="ready"] .tb-modal-step-chip.is-active span:first-child,
html[data-tb-react-modalshell="ready"] .tb-modal-step-chip[aria-current="step"] span:first-child{background:#fff!important;color:#253263!important;}
html[data-tb-react-modalshell="ready"] .tb-modal-step-workspace{min-height:0!important;overflow:auto!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;}
html[data-tb-react-modalshell="ready"] .tb-modal-step-panel{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;align-content:start!important;}
html[data-tb-react-modalshell="ready"] .tb-modal-step-actions{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;flex-wrap:wrap!important;background:linear-gradient(180deg,rgba(255,255,255,.92),#fff 42%)!important;border-top:1px solid rgba(37,50,99,.12)!important;z-index:8!important;}
html[data-tb-react-modalshell="ready"] .tb-modal-step-nav{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;margin-right:auto!important;}
html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-session-form-card{overflow:hidden!important;padding:0!important;}
html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-workspace[data-tb-step-workspace="session"]{grid-column:2!important;min-height:0!important;overflow:auto!important;margin:12px 16px 0!important;padding:0 0 18px!important;}
html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-actions{grid-column:2!important;position:sticky!important;bottom:0!important;margin:0 16px 16px!important;padding:12px 0 0!important;}
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-card.is-editing{overflow:hidden!important;display:flex!important;flex-direction:column!important;}
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-form-grid.tb-modal-step-form-grid{display:flex!important;flex-direction:column!important;overflow:hidden!important;min-height:0!important;}
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-modal-step-workspace[data-tb-step-workspace="program"]{flex:1 1 auto!important;min-height:0!important;overflow:auto!important;padding:12px 0 18px!important;}
@media (max-width:720px){
  html[data-tb-react-modalshell="ready"] .tb-modal-step-panel{grid-template-columns:1fr!important;}
  html[data-tb-react-modalshell="ready"] .tb-modal-step-actions,
  html[data-tb-react-modalshell="ready"] .tb-modal-step-nav{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important;}
  html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-workspace[data-tb-step-workspace="session"],
  html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-actions{grid-column:1!important;margin-left:12px!important;margin-right:12px!important;}
}

html[data-tb-react-modalshell="ready"] .tb-modal-step-panel > .tb-modal-step-wide{grid-column:1 / -1!important;}
html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-session-form-card > .tb-row.tb-modal-step-actions:last-child{grid-column:2!important;position:sticky!important;bottom:0!important;margin:0 16px 16px!important;padding:12px 0 0!important;background:linear-gradient(180deg,rgba(255,255,255,.92),#fff 42%)!important;border-top:1px solid rgba(37,50,99,.12)!important;}
@media (max-width:720px){html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-session-form-card > .tb-row.tb-modal-step-actions:last-child{grid-column:1!important;margin-left:12px!important;margin-right:12px!important;margin-bottom:max(10px, env(safe-area-inset-bottom))!important;}}
/* Refinamento visual das popups de Programação e Agendamento.
 * Objetivo: remover efeito de iframe/área presa, proteger rodapé e igualar padrão visual.
*/
html[data-tb-react-modalshell="ready"] .tb-session-modal-fixed-host-reset{
  transform:none!important;
  filter:none!important;
  -webkit-filter:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  perspective:none!important;
  contain:initial!important;
  will-change:auto!important;
  isolation:auto!important;
  overflow:visible!important;
}
body.tb-session-step-modal-active{
  overflow:hidden!important;
  overscroll-behavior:contain!important;
}
html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell{
  position:fixed!important;
  inset:0!important;
  width:100dvw!important;
  height:100dvh!important;
  z-index:2147483500!important;
  padding:clamp(12px,2vw,24px)!important;
  background:rgba(15,23,42,.62)!important;
  backdrop-filter:saturate(120%) blur(4px)!important;
  -webkit-backdrop-filter:saturate(120%) blur(4px)!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-session-form-card,
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-editor-modal-content{
  width:min(1180px,calc(100dvw - 32px))!important;
  height:min(820px,calc(100dvh - 32px))!important;
  max-width:calc(100dvw - 32px)!important;
  max-height:calc(100dvh - 32px)!important;
  margin:0 auto!important;
  background:#fff!important;
  border:1px solid rgba(37,50,99,.12)!important;
  border-radius:24px!important;
  box-shadow:0 30px 90px rgba(15,23,42,.42)!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-session-form-card{
  display:grid!important;
  grid-template-columns:minmax(190px,236px) minmax(0,1fr)!important;
  grid-template-rows:auto auto minmax(0,1fr) auto!important;
  align-items:stretch!important;
  padding:0!important;
}
html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-session-form-card > .tb-modal-steps-rail,
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-editor-modal-content > .tb-modal-steps-rail{
  grid-column:1!important;
  grid-row:1 / -1!important;
  width:100%!important;
  min-width:0!important;
  height:100%!important;
  padding:18px 16px!important;
  overflow:auto!important;
  background:linear-gradient(180deg,#f3f7ff 0%,#eef4ff 45%,#f8fafc 100%)!important;
  border-right:1px solid rgba(37,50,99,.12)!important;
  border-bottom:0!important;
}
html[data-tb-react-modalshell="ready"] .tb-modal-steps-rail-title{
  margin:0 0 6px!important;
  color:#667085!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
html[data-tb-react-modalshell="ready"] .tb-modal-step-chip{
  min-height:42px!important;
  border-radius:13px!important;
  border:1px solid rgba(37,50,99,.14)!important;
  background:#fff!important;
  box-shadow:0 8px 20px rgba(15,23,42,.04)!important;
}
html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-static{
  grid-column:2!important;
  min-width:0!important;
  margin-left:18px!important;
  margin-right:18px!important;
}
html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-cycle-note{
  margin-top:18px!important;
  padding:12px 14px!important;
  border:1px solid rgba(37,50,99,.10)!important;
  border-radius:15px!important;
  background:#f8fbff!important;
  color:#334155!important;
}
html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-header{
  margin-top:10px!important;
  padding:0!important;
  align-items:center!important;
}
html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-header > b{
  font-size:18px!important;
  color:#111827!important;
}
html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell #tbSessClose,
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-editor-close,
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready [data-tb-goal-close="1"]{
  border:1px solid rgba(37,50,99,.16)!important;
  background:#fff!important;
  color:#111827!important;
  border-radius:12px!important;
  min-height:40px!important;
  padding:9px 14px!important;
  box-shadow:0 8px 20px rgba(15,23,42,.04)!important;
}
html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-workspace[data-tb-step-workspace="session"]{
  grid-column:2!important;
  grid-row:3!important;
  min-height:0!important;
  overflow:auto!important;
  margin:14px 18px 0!important;
  padding:0 2px 18px!important;
  -webkit-overflow-scrolling:touch!important;
}
html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-panel{
  align-content:start!important;
  gap:14px!important;
  padding:2px 0!important;
}
html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-panel > *{
  margin-top:0!important;
}
html[data-tb-react-modalshell="ready"] .tb-modal-step-panel label{
  display:block!important;
  margin:0 0 6px!important;
  color:#334155!important;
  font-size:13px!important;
  font-weight:800!important;
}
html[data-tb-react-modalshell="ready"] .tb-modal-step-panel :where(.tb-input,.tb-textarea,select,input[type="text"],input[type="url"],input[type="datetime-local"]){
  width:100%!important;
  min-height:42px!important;
  border:1px solid rgba(37,50,99,.16)!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#334155!important;
  box-shadow:none!important;
  box-sizing:border-box!important;
}
html[data-tb-react-modalshell="ready"] .tb-modal-step-panel textarea.tb-textarea{
  min-height:118px!important;
  resize:vertical!important;
}
html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-actions,
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-card-footer-actions.tb-modal-step-actions{
  position:relative!important;
  grid-column:2!important;
  grid-row:4!important;
  bottom:auto!important;
  margin:0!important;
  padding:14px 18px calc(14px + env(safe-area-inset-bottom))!important;
  background:linear-gradient(180deg,rgba(255,255,255,.94) 0%,#fff 46%)!important;
  border-top:1px solid rgba(37,50,99,.12)!important;
  box-sizing:border-box!important;
  overflow:visible!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  flex-wrap:wrap!important;
}
html[data-tb-react-modalshell="ready"] .tb-modal-step-actions :where(button,.tb-btn,a){
  min-height:42px!important;
  border-radius:12px!important;
  box-sizing:border-box!important;
  white-space:normal!important;
  text-align:center!important;
}
html[data-tb-react-modalshell="ready"] .tb-modal-step-nav{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  flex-wrap:wrap!important;
  margin-right:auto!important;
}
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready{
  position:fixed!important;
  inset:0!important;
  z-index:2147483400!important;
  overflow:hidden!important;
}
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-editor-dialog{
  inset:0!important;
  width:100dvw!important;
  height:100dvh!important;
  max-width:100dvw!important;
  max-height:100dvh!important;
  padding:clamp(12px,2vw,24px)!important;
  box-sizing:border-box!important;
}
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-card.is-editing{
  min-width:0!important;
  height:100%!important;
  max-height:100%!important;
  overflow:hidden!important;
}
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-modal-step-workspace[data-tb-step-workspace="program"]{
  padding:14px 18px 18px!important;
}
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-card-footer-actions.tb-modal-step-actions{
  grid-column:auto!important;
  flex:0 0 auto!important;
}
@media (max-width:720px){
  html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell,
  html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-editor-dialog{
    padding:0!important;
  }
  html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-session-form-card,
  html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-editor-modal-content{
    width:100dvw!important;
    max-width:100dvw!important;
    height:100dvh!important;
    max-height:100dvh!important;
    border-radius:0!important;
    border-left:0!important;
    border-right:0!important;
  }
  html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-session-form-card,
  html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-editor-modal-content{
    grid-template-columns:1fr!important;
    grid-template-rows:auto auto auto minmax(0,1fr) auto!important;
  }
  html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-session-form-card > .tb-modal-steps-rail,
  html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-editor-modal-content > .tb-modal-steps-rail{
    grid-column:1!important;
    grid-row:1!important;
    height:auto!important;
    max-height:86px!important;
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:8px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding:10px calc(10px + env(safe-area-inset-right)) 10px calc(10px + env(safe-area-inset-left))!important;
    border-right:0!important;
    border-bottom:1px solid rgba(37,50,99,.12)!important;
  }
  html[data-tb-react-modalshell="ready"] .tb-modal-steps-rail-title{display:none!important;}
  html[data-tb-react-modalshell="ready"] .tb-modal-step-chip{
    min-width:128px!important;
    width:auto!important;
  }
  html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-static,
  html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-workspace[data-tb-step-workspace="session"],
  html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-actions{
    grid-column:1!important;
    margin-left:12px!important;
    margin-right:12px!important;
  }
  html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-cycle-note{grid-row:2!important;margin-top:12px!important;}
  html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-header{grid-row:3!important;}
  html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-workspace[data-tb-step-workspace="session"]{
    grid-row:4!important;
    margin-top:12px!important;
    padding-bottom:14px!important;
  }
  html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-actions,
  html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-card-footer-actions.tb-modal-step-actions{
    grid-row:5!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
    padding:10px calc(12px + env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) calc(12px + env(safe-area-inset-left))!important;
  }
  html[data-tb-react-modalshell="ready"] .tb-modal-step-nav{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    width:100%!important;
    grid-column:1 / -1!important;
  }
  html[data-tb-react-modalshell="ready"] .tb-modal-step-actions :where(button,.tb-btn,a){
    width:100%!important;
    justify-content:center!important;
  }
  html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-card.is-editing{
    grid-column:1!important;
    height:100%!important;
    min-height:0!important;
  }
  html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-modal-step-workspace[data-tb-step-workspace="program"]{
    padding:12px!important;
  }
}

/* Padronização final das popups de Agendamento e Programação.
 * Mantém handlers e dados legados; corrige layout mobile/desktop, X no topo e rodapé seguro.
*/
html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell,
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready{
  --tb-modal-blue:#253263;
  --tb-modal-border:rgba(37,50,99,.14);
  --tb-modal-muted:#667085;
  --tb-modal-text:#111827;
  --tb-modal-soft:#f6f9ff;
  --tb-modal-danger:#b91c1c;
  --tb-modal-danger-soft:#fff5f5;
}
html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-session-form-card,
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-editor-modal-content{
  width:min(1180px,calc(100dvw - 32px))!important;
  height:min(780px,calc(100dvh - 32px))!important;
  min-height:min(620px,calc(100dvh - 32px))!important;
  background:#fff!important;
  border:1px solid var(--tb-modal-border)!important;
  border-radius:22px!important;
  box-shadow:0 32px 90px rgba(15,23,42,.38)!important;
  overflow:hidden!important;
}
html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-session-form-card,
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-editor-modal-content{
  grid-template-columns:minmax(188px,236px) minmax(0,1fr)!important;
}
html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-session-form-card > .tb-modal-steps-rail,
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-editor-modal-content > .tb-modal-steps-rail{
  padding:18px 16px!important;
  background:linear-gradient(180deg,#f3f7ff 0%,#eef4ff 52%,#f8fafc 100%)!important;
  border-right:1px solid rgba(37,50,99,.12)!important;
}
html[data-tb-react-modalshell="ready"] .tb-modal-step-chip{
  min-height:40px!important;
  padding:8px 10px!important;
  border-radius:13px!important;
  font-size:12px!important;
  box-shadow:0 8px 18px rgba(15,23,42,.04)!important;
}
html[data-tb-react-modalshell="ready"] .tb-modal-step-chip.is-active,
html[data-tb-react-modalshell="ready"] .tb-modal-step-chip[aria-current="step"]{
  background:var(--tb-modal-blue)!important;
  border-color:var(--tb-modal-blue)!important;
  color:#fff!important;
}
html[data-tb-react-modalshell="ready"] .tb-modal-step-chip.is-active span:first-child,
html[data-tb-react-modalshell="ready"] .tb-modal-step-chip[aria-current="step"] span:first-child{
  background:#fff!important;
  color:var(--tb-modal-blue)!important;
}
html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-header,
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-edit-panel .tb-goal-summary-head{
  min-height:88px!important;
  padding:20px 24px!important;
  margin:0!important;
  border-bottom:1px solid rgba(37,50,99,.10)!important;
  background:#fff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  position:relative!important;
}
html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-header > b,
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-edit-panel .tb-goal-section-title{
  display:block!important;
  margin:0!important;
  color:var(--tb-modal-text)!important;
  font-size:25px!important;
  line-height:1.15!important;
  font-weight:900!important;
  letter-spacing:-.02em!important;
}
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-edit-panel .tb-goal-section-desc{
  color:#475569!important;
  font-size:15px!important;
  line-height:1.45!important;
  margin-top:6px!important;
}
html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-cycle-note{
  margin:18px 24px 0!important;
  padding:12px 14px!important;
  border:1px solid rgba(37,50,99,.10)!important;
  border-radius:15px!important;
  background:#f8fbff!important;
  color:#334155!important;
}
html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-workspace[data-tb-step-workspace="session"],
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-modal-step-workspace[data-tb-step-workspace="program"]{
  overflow:auto!important;
  -webkit-overflow-scrolling:touch!important;
  padding:18px 24px 24px!important;
  min-height:0!important;
}
html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-workspace[data-tb-step-workspace="session"]{
  margin:0!important;
}
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-form-grid.tb-modal-step-form-grid{
  min-height:0!important;
  flex:1 1 auto!important;
}
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-modal-step-panel,
html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-panel{
  gap:16px!important;
  align-content:start!important;
}
html[data-tb-react-modalshell="ready"] .tb-modal-step-panel :where(.tb-input,.tb-textarea,select,input[type="text"],input[type="url"],input[type="date"],input[type="time"],input[type="datetime-local"],input[type="number"]){
  min-height:42px!important;
  border-radius:12px!important;
  border:1px solid rgba(37,50,99,.16)!important;
  background:#fff!important;
  box-shadow:none!important;
}
html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell #tbSessClose,
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-edit-cancel{
  flex:0 0 auto!important;
  border:1px solid rgba(37,50,99,.18)!important;
  background:#fff!important;
  color:var(--tb-modal-text)!important;
  border-radius:12px!important;
  min-height:42px!important;
  padding:9px 14px!important;
  box-shadow:0 8px 20px rgba(15,23,42,.04)!important;
}
html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-actions,
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-card-footer-actions.tb-modal-step-actions{
  flex:0 0 auto!important;
  position:relative!important;
  bottom:auto!important;
  margin:0!important;
  padding:14px 24px calc(14px + env(safe-area-inset-bottom))!important;
  background:linear-gradient(180deg,rgba(255,255,255,.96) 0%,#fff 42%)!important;
  border-top:1px solid rgba(37,50,99,.12)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  overflow:visible!important;
}
html[data-tb-react-modalshell="ready"] .tb-modal-step-nav{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  margin-right:auto!important;
}
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-card-footer-right{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  flex-wrap:wrap!important;
  margin-left:auto!important;
}
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tbGoalSaveMeta{
  min-width:220px!important;
}
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tbRemoveGoal{
  min-width:180px!important;
  border:1px solid rgba(185,28,28,.24)!important;
  background:var(--tb-modal-danger-soft)!important;
  color:var(--tb-modal-danger)!important;
}
@media (max-width:720px){
  html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell,
  html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-editor-dialog{
    padding:0!important;
  }
  html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-session-form-card,
  html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-editor-modal-content{
    width:100dvw!important;
    max-width:100dvw!important;
    height:100dvh!important;
    min-height:100dvh!important;
    max-height:100dvh!important;
    border-radius:0!important;
    border-left:0!important;
    border-right:0!important;
    grid-template-columns:1fr!important;
    grid-template-rows:auto auto minmax(0,1fr) auto!important;
  }
  html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-session-form-card > .tb-modal-steps-rail,
  html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-editor-modal-content > .tb-modal-steps-rail{
    grid-column:1!important;
    grid-row:1!important;
    width:100%!important;
    height:auto!important;
    max-height:82px!important;
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:8px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding:10px calc(12px + env(safe-area-inset-right)) 10px calc(12px + env(safe-area-inset-left))!important;
    border-right:0!important;
    border-bottom:1px solid rgba(37,50,99,.12)!important;
    scrollbar-width:thin!important;
  }
  html[data-tb-react-modalshell="ready"] .tb-modal-steps-rail-title{
    display:none!important;
  }
  html[data-tb-react-modalshell="ready"] .tb-modal-step-chip{
    min-width:132px!important;
    min-height:48px!important;
    padding:9px 11px!important;
    border-radius:16px!important;
    font-size:13px!important;
    white-space:nowrap!important;
  }
  html[data-tb-react-modalshell="ready"] .tb-modal-step-chip span:first-child{
    width:26px!important;
    height:26px!important;
    min-width:26px!important;
    font-size:12px!important;
  }
  html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-header,
  html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-edit-panel .tb-goal-summary-head{
    grid-column:1!important;
    grid-row:2!important;
    min-height:auto!important;
    padding:18px calc(54px + env(safe-area-inset-right)) 16px calc(18px + env(safe-area-inset-left))!important;
    border-bottom:1px solid rgba(37,50,99,.10)!important;
    align-items:flex-start!important;
  }
  html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-header > b,
  html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-edit-panel .tb-goal-section-title{
    font-size:24px!important;
    line-height:1.14!important;
  }
  html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-edit-panel .tb-goal-section-desc{
    font-size:15px!important;
    line-height:1.45!important;
  }
  html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell #tbSessClose,
  html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-edit-cancel{
    position:absolute!important;
    top:14px!important;
    right:calc(14px + env(safe-area-inset-right))!important;
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    min-height:38px!important;
    padding:0!important;
    border-radius:999px!important;
    font-size:0!important;
    line-height:1!important;
    color:transparent!important;
    overflow:hidden!important;
  }
  html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell #tbSessClose::before,
  html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-edit-cancel::before{
    content:"×";
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    height:100%!important;
    color:#253263!important;
    font-size:28px!important;
    font-weight:500!important;
    line-height:1!important;
  }
  html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-cycle-note{
    display:none!important;
  }
  html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-workspace[data-tb-step-workspace="session"],
  html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-modal-step-workspace[data-tb-step-workspace="program"]{
    grid-column:1!important;
    grid-row:3!important;
    margin:0!important;
    padding:16px calc(18px + env(safe-area-inset-right)) 18px calc(18px + env(safe-area-inset-left))!important;
    overflow:auto!important;
  }
  html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-card.is-editing{
    grid-column:1!important;
    height:100%!important;
    min-height:0!important;
  }
  html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-card.is-editing .tb-goal-card-body,
  html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-builder-layout,
  html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-form-shell,
  html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-edit-panel,
  html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-form-grid.tb-modal-step-form-grid{
    min-height:0!important;
    height:100%!important;
  }
  html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-actions,
  html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-card-footer-actions.tb-modal-step-actions{
    grid-column:1!important;
    grid-row:4!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    padding:12px calc(18px + env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) calc(18px + env(safe-area-inset-left))!important;
  }
  html[data-tb-react-modalshell="ready"] .tb-modal-step-nav{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
    width:100%!important;
    margin:0!important;
  }
  html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-card-footer-right{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
    width:100%!important;
    margin:0!important;
  }
  html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-card-footer-right .tb-goal-card-save-msg{
    grid-column:1 / -1!important;
    order:3!important;
    font-size:13px!important;
    line-height:1.35!important;
  }
  html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tbGoalSaveMeta,
  html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tbRemoveGoal{
    min-width:0!important;
    width:100%!important;
    min-height:50px!important;
    justify-content:center!important;
    font-size:16px!important;
  }
  html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell .tb-modal-step-actions > :not(.tb-modal-step-nav){
    width:100%!important;
  }
  html[data-tb-react-modalshell="ready"] .tb-modal-step-actions :where(button,.tb-btn,a){
    width:100%!important;
    justify-content:center!important;
    text-align:center!important;
  }
}

/* Compatibilidade iPhone/iOS Safari para Agendamento de Sessão.
 * O formulário de sessão pode ser renderizado em portal no <body> para escapar de containers com overflow/transform.
 * Mantém os mesmos campos e handlers; apenas corrige viewport, scroll e área segura no mobile.
*/
html[data-tb-react-modalshell="ready"] [data-tb-session-portal="1"].tb-session-form-modal-shell{
  position:fixed!important;
  top:0!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  width:100vw!important;
  height:var(--tb-ios-vh, 100vh)!important;
  max-width:100vw!important;
  max-height:var(--tb-ios-vh, 100vh)!important;
  z-index:2147483600!important;
  padding:0!important;
  margin:0!important;
  overflow:hidden!important;
  background:rgba(15,23,42,.62)!important;
  box-sizing:border-box!important;
  -webkit-transform:translateZ(0)!important;
  transform:translateZ(0)!important;
  overscroll-behavior:contain!important;
}
html[data-tb-react-modalshell="ready"] [data-tb-session-portal="1"].tb-session-form-modal-shell .tb-session-form-card{
  position:relative!important;
  width:100vw!important;
  max-width:100vw!important;
  height:var(--tb-ios-vh, 100vh)!important;
  min-height:var(--tb-ios-vh, 100vh)!important;
  max-height:var(--tb-ios-vh, 100vh)!important;
  margin:0!important;
  padding:0!important;
  border-radius:0!important;
  background:#fff!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  grid-template-rows:auto auto minmax(0,1fr) auto!important;
  overflow:hidden!important;
  box-shadow:none!important;
  -webkit-overflow-scrolling:touch!important;
  box-sizing:border-box!important;
}
html[data-tb-react-modalshell="ready"] [data-tb-session-portal="1"].tb-session-form-modal-shell .tb-session-form-card > .tb-modal-steps-rail{
  grid-column:1!important;
  grid-row:1!important;
  position:relative!important;
  top:auto!important;
  z-index:5!important;
  width:100%!important;
  min-width:0!important;
  height:auto!important;
  max-height:76px!important;
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:8px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:10px calc(12px + env(safe-area-inset-right)) 10px calc(12px + env(safe-area-inset-left))!important;
  border-right:0!important;
  border-bottom:1px solid rgba(37,50,99,.12)!important;
  background:#f4f7ff!important;
  -webkit-overflow-scrolling:touch!important;
  box-sizing:border-box!important;
}
html[data-tb-react-modalshell="ready"] [data-tb-session-portal="1"].tb-session-form-modal-shell .tb-modal-steps-rail-title{display:none!important;}
html[data-tb-react-modalshell="ready"] [data-tb-session-portal="1"].tb-session-form-modal-shell .tb-modal-step-chip{
  flex:0 0 auto!important;
  min-width:118px!important;
  width:auto!important;
  min-height:44px!important;
  padding:8px 10px!important;
  border-radius:14px!important;
  white-space:nowrap!important;
  font-size:13px!important;
}
html[data-tb-react-modalshell="ready"] [data-tb-session-portal="1"].tb-session-form-modal-shell .tb-modal-step-chip span:first-child{
  width:24px!important;
  height:24px!important;
  min-width:24px!important;
}
html[data-tb-react-modalshell="ready"] [data-tb-session-portal="1"].tb-session-form-modal-shell .tb-modal-step-header{
  grid-column:1!important;
  grid-row:2!important;
  margin:0!important;
  padding:16px calc(56px + env(safe-area-inset-right)) 14px calc(18px + env(safe-area-inset-left))!important;
  min-height:auto!important;
  border-bottom:1px solid rgba(37,50,99,.10)!important;
  background:#fff!important;
  box-sizing:border-box!important;
}
html[data-tb-react-modalshell="ready"] [data-tb-session-portal="1"].tb-session-form-modal-shell .tb-modal-step-header > b{
  font-size:22px!important;
  line-height:1.15!important;
}
html[data-tb-react-modalshell="ready"] [data-tb-session-portal="1"].tb-session-form-modal-shell #tbSessClose{
  position:absolute!important;
  top:12px!important;
  right:calc(12px + env(safe-area-inset-right))!important;
  z-index:8!important;
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  min-height:38px!important;
  padding:0!important;
  border-radius:999px!important;
  font-size:0!important;
  line-height:1!important;
  color:transparent!important;
  overflow:hidden!important;
  background:#fff!important;
  border:1px solid rgba(37,50,99,.18)!important;
}
html[data-tb-react-modalshell="ready"] [data-tb-session-portal="1"].tb-session-form-modal-shell #tbSessClose::before{
  content:"×";
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:100%!important;
  color:#253263!important;
  font-size:28px!important;
  font-weight:500!important;
}
html[data-tb-react-modalshell="ready"] [data-tb-session-portal="1"].tb-session-form-modal-shell .tb-modal-step-cycle-note{display:none!important;}
html[data-tb-react-modalshell="ready"] [data-tb-session-portal="1"].tb-session-form-modal-shell .tb-modal-step-workspace[data-tb-step-workspace="session"]{
  grid-column:1!important;
  grid-row:3!important;
  min-height:0!important;
  height:auto!important;
  margin:0!important;
  padding:16px calc(18px + env(safe-area-inset-right)) 18px calc(18px + env(safe-area-inset-left))!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior:contain!important;
  background:#fff!important;
  box-sizing:border-box!important;
}
html[data-tb-react-modalshell="ready"] [data-tb-session-portal="1"].tb-session-form-modal-shell .tb-modal-step-panel{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:14px!important;
  align-content:start!important;
}
html[data-tb-react-modalshell="ready"] [data-tb-session-portal="1"].tb-session-form-modal-shell .tb-modal-step-panel[hidden]{display:none!important;}
html[data-tb-react-modalshell="ready"] [data-tb-session-portal="1"].tb-session-form-modal-shell .tb-modal-step-panel > *{
  min-width:0!important;
  max-width:100%!important;
}
html[data-tb-react-modalshell="ready"] [data-tb-session-portal="1"].tb-session-form-modal-shell .tb-modal-step-actions{
  grid-column:1!important;
  grid-row:4!important;
  min-height:0!important;
  margin:0!important;
  padding:12px calc(18px + env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom)) calc(18px + env(safe-area-inset-left))!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:10px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.96),#fff 42%)!important;
  border-top:1px solid rgba(37,50,99,.12)!important;
  box-sizing:border-box!important;
  overflow:visible!important;
}
html[data-tb-react-modalshell="ready"] [data-tb-session-portal="1"].tb-session-form-modal-shell .tb-modal-step-nav{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px!important;
  width:100%!important;
  margin:0!important;
}
html[data-tb-react-modalshell="ready"] [data-tb-session-portal="1"].tb-session-form-modal-shell .tb-modal-step-actions > :not(.tb-modal-step-nav){
  width:100%!important;
}
html[data-tb-react-modalshell="ready"] [data-tb-session-portal="1"].tb-session-form-modal-shell .tb-modal-step-actions :where(button,.tb-btn,a){
  min-height:46px!important;
  width:100%!important;
  justify-content:center!important;
  text-align:center!important;
}
@media (min-width:721px){
  html[data-tb-react-modalshell="ready"] [data-tb-session-portal="1"].tb-session-form-modal-shell{
    padding:clamp(12px,2vw,24px)!important;
  }
  html[data-tb-react-modalshell="ready"] [data-tb-session-portal="1"].tb-session-form-modal-shell .tb-session-form-card{
    width:min(1180px,calc(100vw - 32px))!important;
    height:min(820px,calc(var(--tb-ios-vh, 100vh) - 32px))!important;
    min-height:0!important;
    max-height:calc(var(--tb-ios-vh, 100vh) - 32px)!important;
    margin:0 auto!important;
    border-radius:24px!important;
    box-shadow:0 28px 80px rgba(15,23,42,.45)!important;
    grid-template-columns:minmax(190px,250px) minmax(0,1fr)!important;
    grid-template-rows:auto minmax(0,1fr) auto!important;
  }
}

/* Performance mobile: evita repintura pesada durante digitação em popups.*/
body.tb-modal-shell-active #tbClientSessionForm.tb-session-form-modal-shell,
body.tb-modal-shell-active .tb-goal-editor-backdrop,
body.tb-modal-shell-active .tb-goal-card.is-editing::before,
body.tb-session-step-modal-active #tbClientSessionForm.tb-session-form-modal-shell,
body.tb-goal-editor-open .tb-goal-card.is-editing::before{
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready :where(input, textarea, select),
html[data-tb-react-modalshell="ready"] #tbClientSessionForm.tb-session-form-modal-shell :where(input, textarea, select){
  will-change:auto!important;
  transform:none!important;
}

/* Estabilização das popups durante digitação no iPhone/mobile.
 * Evita autosave visual, outline animado e transições que faziam partes da janela piscar.
*/
#tbGoalEditorModal .tb-goal-card-dirty{
  outline:0!important;
  outline-offset:0!important;
}
body.tb-goal-user-typing #tbGoalEditorModal :where(.tb-goal-card.is-editing,.tb-goal-editor-modal-content,.tb-modal-step-panel,.tb-modal-step-workspace,.tb-goal-form-grid,.tb-goal-field,.tb-input,.tb-textarea,textarea,input,select),
body.tb-session-step-modal-active #tbClientSessionForm.tb-session-form-modal-shell :where(.tb-session-form-card,.tb-modal-step-panel,.tb-modal-step-workspace,.tb-modal-step-actions){
  transition:none!important;
  animation:none!important;
}

/* Programação Comportamental: alinhamento dos checkboxes da etapa Jornada/Revisão.
 * Corrige chips desalinhados sem alterar campos, classes, payloads ou handlers legados.
*/
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-modal-step-panel .tb-goal-chip-option,
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-form-grid.tb-modal-step-form-grid > .tb-goal-chip-option{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:12px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:54px!important;
  padding:13px 16px!important;
  margin:0!important;
  border:1px solid rgba(37,50,99,.14)!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 8px 18px rgba(15,23,42,.035)!important;
  color:#253263!important;
  font-size:15px!important;
  font-weight:800!important;
  line-height:1.32!important;
  letter-spacing:0!important;
  text-align:left!important;
  white-space:normal!important;
  overflow:visible!important;
  overflow-wrap:anywhere!important;
  box-sizing:border-box!important;
}
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-chip-option input[type="checkbox"]{
  appearance:auto!important;
  -webkit-appearance:checkbox!important;
  position:static!important;
  display:block!important;
  flex:0 0 20px!important;
  width:20px!important;
  height:20px!important;
  min-width:20px!important;
  min-height:20px!important;
  max-width:20px!important;
  max-height:20px!important;
  margin:0!important;
  padding:0!important;
  inset:auto!important;
  transform:none!important;
  justify-self:auto!important;
  align-self:center!important;
  vertical-align:middle!important;
  accent-color:#1976f3!important;
  box-shadow:none!important;
}
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-chip-option:hover{
  border-color:rgba(37,50,99,.24)!important;
  background:#f8fbff!important;
}
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-chip-option:has(input[type="checkbox"]:checked){
  border-color:rgba(25,118,243,.28)!important;
  background:linear-gradient(180deg,#ffffff 0%,#f7fbff 100%)!important;
}
html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-modal-step-panel .tb-goal-chip-option:focus-within{
  outline:2px solid rgba(25,118,243,.18)!important;
  outline-offset:2px!important;
}
@media (max-width:720px){
  html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-modal-step-panel .tb-goal-chip-option,
  html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-form-grid.tb-modal-step-form-grid > .tb-goal-chip-option{
    min-height:52px!important;
    padding:13px 14px!important;
    border-radius:16px!important;
    font-size:14px!important;
  }
  html[data-tb-react-modalshell="ready"] #tbGoalEditorModal.tb-modal-steps-ready .tb-goal-chip-option input[type="checkbox"]{
    flex-basis:19px!important;
    width:19px!important;
    height:19px!important;
    min-width:19px!important;
    min-height:19px!important;
    max-width:19px!important;
    max-height:19px!important;
  }
}

/* Alertas com origem visível: remove bolinha sem contexto e sinaliza o card certo.*/
#tbClientsCards .tb-client-list-alert-chips{
  display:inline-flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
#tbClientsCards .tb-client-list-alert-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:32px;
  padding:7px 11px;
  border-radius:999px;
  border:1px solid #fecaca;
  background:#fff7f7;
  color:#b91c1c;
  font-size:12px;
  font-weight:900;
  line-height:1;
  white-space:nowrap;
}
#tbClientsCards .tb-client-list-alert-chip .dashicons{
  width:15px;
  height:15px;
  font-size:15px;
  line-height:15px;
}
#tbClientsCards .tb-client-list-alert-chip.is-sessions{border-color:#fed7aa;background:#fff7ed;color:#c2410c;}
#tbClientsCards .tb-client-list-alert-chip.is-programs{border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8;}
#tbClientsCards .tb-client-list-alert-chip.is-journey{border-color:#bbf7d0;background:#f0fdf4;color:#047857;}
#tbClientsCards .tb-client-list-alert-chip.is-cycle{border-color:#e9d5ff;background:#faf5ff;color:#6d28d9;}
#tbClientsCards .tb-client-list-alert-chip.is-audio_consent{border-color:#c7d2fe;background:#eef2ff;color:#3730a3;}

.tb-client-card-panel .tb-session-card.is-awaiting-therapist,
#tbClientWorkspaceContent .tb-session-card.is-awaiting-therapist{
  border-color:#fb923c !important;
  background:linear-gradient(180deg,#fff7ed 0%,#ffffff 42%) !important;
  box-shadow:0 18px 38px rgba(249,115,22,.16), 0 10px 24px rgba(15,23,42,.06) !important;
}
.tb-session-card-alert-ribbon,
.tb-goal-card-alert-ribbon{
  display:inline-flex;
  align-items:center;
  gap:8px;
  width:max-content;
  max-width:100%;
  padding:8px 12px;
  border-radius:999px;
  font-size:12px;
  font-weight:900;
  letter-spacing:.01em;
  line-height:1.25;
  box-sizing:border-box;
}
.tb-session-card-alert-ribbon{
  border:1px solid #fed7aa;
  background:#ffedd5;
  color:#c2410c;
}
.tb-goal-card-alert-ribbon{
  margin:0 0 10px;
  border:1px solid #fecaca;
  background:#fef2f2;
  color:#b91c1c;
}
.tb-session-card-alert-ribbon .dashicons,
.tb-goal-card-alert-ribbon .dashicons{
  width:15px;
  height:15px;
  font-size:15px;
  line-height:15px;
}
.tb-goal-card.is-awaiting-therapist{
  border-color:#fecaca !important;
  background:linear-gradient(180deg,#fff7f7 0%,#ffffff 38%) !important;
  box-shadow:0 16px 36px rgba(220,38,38,.12), 0 10px 24px rgba(15,23,42,.06) !important;
}
.tb-session-card-inline-alert{
  border-color:#fed7aa !important;
  background:#fff7ed !important;
  color:#c2410c !important;
  font-weight:800;
}
@media (max-width: 640px){
  #tbClientsCards .tb-client-list-alert-chips{justify-content:flex-start;width:100%;}
  #tbClientsCards .tb-client-list-alert-chip{flex:1 1 auto;min-width:0;white-space:normal;line-height:1.2;}
  .tb-session-card-alert-ribbon,
  .tb-goal-card-alert-ribbon{width:100%;justify-content:center;text-align:center;border-radius:16px;}
}

/* Workspace do cliente: ordem mobile/desktop dos botões finais da grade.
 Mantém Relatório ao lado de Push, Termo ao lado de Excluir e Editar Cliente como último botão.*/
#tbClientWorkspaceRoot .tb-client-workspace-menu .tb-client-workspace-push-btn,
#tbClientWorkspaceRoot .tb-client-workspace-menu.tb-cycle-workspace-actions-grid .tb-client-workspace-push-btn{
  order:80!important;
}
#tbClientWorkspaceRoot .tb-client-workspace-menu #tbClientWorkspaceFinalReport,
#tbClientWorkspaceRoot .tb-client-workspace-menu.tb-cycle-workspace-actions-grid #tbClientWorkspaceFinalReport{
  order:81!important;
  grid-column:auto!important;
}
#tbClientWorkspaceRoot .tb-client-workspace-menu #tbClientWorkspaceDelete,
#tbClientWorkspaceRoot .tb-client-workspace-menu.tb-cycle-workspace-actions-grid #tbClientWorkspaceDelete{
  order:82!important;
  grid-column:auto!important;
}
#tbClientWorkspaceRoot .tb-client-workspace-menu .tb-client-workspace-receipt-btn,
#tbClientWorkspaceRoot .tb-client-workspace-menu.tb-cycle-workspace-actions-grid .tb-client-workspace-receipt-btn,
#tbClientWorkspaceRoot .tb-client-workspace-menu a[href*="tb_audio_consent_receipt"],
#tbClientWorkspaceRoot .tb-client-workspace-menu .tb-client-workspace-menu-btn[href*="tb_audio_consent_receipt"]{
  order:83!important;
  grid-column:auto!important;
}
#tbClientWorkspaceRoot .tb-client-workspace-menu .tb-client-workspace-edit-btn,
#tbClientWorkspaceRoot .tb-client-workspace-menu.tb-cycle-workspace-actions-grid .tb-client-workspace-edit-btn{
  order:84!important;
}
@media (max-width:782px){
  #tbClientWorkspaceRoot .tb-client-workspace-menu .tb-client-workspace-edit-btn,
  #tbClientWorkspaceRoot .tb-client-workspace-menu.tb-cycle-workspace-actions-grid .tb-client-workspace-edit-btn{
    grid-column:1 / -1!important;
  }
}


/* Retorno seguro em páginas imprimíveis de termo/relatório e ícone moderno do menu do terapeuta.*/
.tb-return-toolbar{
  max-width:980px;
  margin:16px auto 12px;
  padding:12px 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  flex-wrap:wrap;
  border:1px solid #d7deea;
  border-radius:16px;
  background:#ffffff;
  box-shadow:0 10px 28px rgba(15,23,42,.08);
  box-sizing:border-box;
}
.tb-return-toolbar .tb-btn{
  min-height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  text-decoration:none;
}
.tb-return-toolbar-back{
  border-color:#cbd5e1!important;
  background:#fff!important;
  color:#253263!important;
}
.tb-hamburger.tb-hamburger-modern{
  width:46px;
  height:46px;
  padding:0;
  align-items:center;
  justify-content:center;
  border-radius:16px;
  background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%);
  box-shadow:0 10px 22px rgba(37,50,99,.10);
}
.tb-hamburger.tb-hamburger-modern .tb-hamburger-modern-icon{
  width:24px;
  height:24px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:transparent;
}
.tb-hamburger.tb-hamburger-modern .tb-hamburger-modern-icon svg{
  width:24px;
  height:24px;
  display:block;
}
.tb-hamburger.tb-hamburger-modern .tb-hamburger-modern-icon path{
  fill:none;
  stroke:currentColor;
  stroke-width:2.25;
  stroke-linecap:round;
  stroke-linejoin:round;
}
@media (max-width: 640px){
  .tb-return-toolbar{margin:10px 12px;padding:10px;border-radius:14px;}
  .tb-return-toolbar .tb-btn{width:100%;}
}
@media print{
  .tb-return-toolbar,.no-print{display:none!important;}
}

/* Loader inicial do PWA/WebApp.
 * Evita a exposição do layout parcialmente montado no iPhone/PWA enquanto os módulos carregam.*/
.tb-pwa-boot-loader{
  position:fixed;
  inset:0;
  z-index:2147483000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  box-sizing:border-box;
  background:linear-gradient(180deg,#253263 0%,#1f2b57 100%);
  color:#fff;
  opacity:1;
  visibility:visible;
  transition:opacity .28s ease,visibility .28s ease;
  -webkit-font-smoothing:antialiased;
}
.tb-pwa-boot-loader.is-leaving{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}
.tb-pwa-boot-loader-card{
  width:min(360px,100%);
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:14px;
  text-align:center;
}
.tb-pwa-boot-loader-logo{
  display:block;
  width:auto;
  max-width:230px;
  max-height:88px;
  object-fit:contain;
  background:#fff;
  border-radius:22px;
  padding:16px;
  box-sizing:border-box;
  box-shadow:0 18px 48px rgba(15,23,42,.22);
}
.tb-pwa-boot-loader-brand{
  font-size:22px;
  line-height:1.2;
  font-weight:900;
}
.tb-pwa-boot-loader-copy{
  display:flex;
  flex-direction:column;
  gap:4px;
}
.tb-pwa-boot-loader-copy strong{
  font-size:16px;
  line-height:1.25;
  font-weight:900;
}
.tb-pwa-boot-loader-copy span{
  font-size:13px;
  line-height:1.4;
  color:rgba(255,255,255,.78);
}
.tb-pwa-boot-loader-track{
  width:min(300px,86vw);
  height:8px;
  border-radius:999px;
  overflow:hidden;
  background:rgba(255,255,255,.18);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);
}
.tb-pwa-boot-loader-track span{
  display:block;
  width:45%;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,#61ce70 0%,#93e7a0 100%);
  animation:tbPwaBootProgress 1.15s ease-in-out infinite;
}
@keyframes tbPwaBootProgress{
  0%{transform:translateX(-110%);}
  55%{transform:translateX(65%);}
  100%{transform:translateX(250%);}
}
@media (prefers-reduced-motion:reduce){
  .tb-pwa-boot-loader,.tb-pwa-boot-loader-track span{transition:none;animation:none;}
  .tb-pwa-boot-loader-track span{width:100%;}
}
@media (max-width:767px){
  .tb-pwa-boot-loader{padding:22px;align-items:center;}
  .tb-pwa-boot-loader-logo{max-width:230px;max-height:92px;border-radius:24px;padding:18px;}
  .tb-pwa-boot-loader-copy strong{font-size:17px;}
}

/* Ícone no botão Novo Cliente da Lista de Clientes.*/
.tb-client-new-btn{
  gap:8px;
}
.tb-client-new-btn .dashicons{
  width:18px;
  height:18px;
  font-size:18px;
  line-height:1;
}
@media (max-width:767px){
  .tb-client-new-btn{gap:9px;}
  .tb-client-new-btn .dashicons{width:20px;height:20px;font-size:20px;}
}

/* Mobile: margem segura nas etapas do Ciclo de Atendimento.
 * Mantém a grade em 2 colunas, mas devolve respiro lateral para não encostar
 * na borda azul/viewport do celular. Apenas apresentação visual.*/
@media (max-width: 782px){
  #tbClientWorkspaceRoot .tb-tabs.tb-therapy-steps-tabs.tb-cycle-step-tabs-grid,
  #tbClientWorkspaceRoot #tbWorkspaceMain > .tb-tabs.tb-therapy-steps-tabs.tb-cycle-step-tabs-grid,
  .tb-wrap #tbWorkspaceMain > .tb-tabs.tb-therapy-steps-tabs.tb-cycle-step-tabs-grid,
  .tb-wrap .tb-client-workspace-shell #tbWorkspaceMain > .tb-tabs.tb-therapy-steps-tabs.tb-cycle-step-tabs-grid{
    width:calc(100% - 20px) !important;
    max-width:calc(100% - 20px) !important;
    margin:12px auto 14px !important;
    padding:0 !important;
    box-sizing:border-box !important;
  }
}

/* Portal do Cliente: modo leitura compacta do Relatório das Análises.
 * Reduz as margens aninhadas: card da aba > acordeon > corpo do relatório.
 * O objetivo é ganhar área útil para texto no mobile sem quebrar desktop/PDF.*/
@media (max-width: 782px){
  .tb-client-portal #tbPortalAnalysis.tb-tabpane{
    width:100% !important;
    max-width:100% !important;
    padding-left:0 !important;
    padding-right:0 !important;
    box-sizing:border-box !important;
  }

  .tb-client-portal #tbPortalAnalysis .tb-card.tb-client-report-reader{
    margin-left:0 !important;
    margin-right:0 !important;
    padding:12px 8px !important;
    border-radius:14px !important;
    box-sizing:border-box !important;
  }

  .tb-client-portal #tbPortalAnalysis .tb-row.tb-row-between{
    gap:10px !important;
  }

  .tb-client-portal #tbPortalAnalysis .tb-report-accordion-group{
    margin-top:10px !important;
    gap:8px !important;
  }

  .tb-client-portal #tbPortalAnalysis .tb-report-accordion,
  .tb-client-portal #tbPortalAnalysis .tb-report-accordion-client{
    border-radius:13px !important;
  }

  .tb-client-portal #tbPortalAnalysis .tb-report-accordion summary{
    padding:11px 10px !important;
    gap:8px !important;
  }

  .tb-client-portal #tbPortalAnalysis .tb-report-accordion summary strong{
    font-size:15px !important;
  }

  .tb-client-portal #tbPortalAnalysis .tb-report-accordion summary small{
    font-size:12px !important;
    line-height:1.3 !important;
  }

  .tb-client-portal #tbPortalAnalysis .tb-report-accordion-body{
    padding:10px 7px 12px !important;
  }

  .tb-client-portal #tbPortalAnalysis .tb-analysis-html.tb-report-content,
  .tb-client-portal #tbPortalAnalysis .tb-report-reader-body,
  .tb-client-portal #tbPortalAnalysis .tb-preanalysis-rich-body{
    margin:0 !important;
    padding:0 !important;
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
  }

  .tb-client-portal #tbPortalAnalysis .tb-analysis-html.tb-report-content :where(p,li),
  .tb-client-portal #tbPortalAnalysis .tb-report-reader-body :where(p,li){
    font-size:var(--tb-report-reader-size, 16px) !important;
    line-height:1.72 !important;
  }

  .tb-client-portal #tbPortalAnalysis .tb-report-reader-action-note{
    margin:12px 0 0 !important;
    padding:10px !important;
    border-radius:12px !important;
  }

  .tb-client-portal #tbPortalAnalysis .tb-report-radar-top img{
    width:100% !important;
    max-width:100% !important;
  }
}

@media (max-width: 380px){
  #tbClientWorkspaceRoot .tb-tabs.tb-therapy-steps-tabs.tb-cycle-step-tabs-grid,
  #tbClientWorkspaceRoot #tbWorkspaceMain > .tb-tabs.tb-therapy-steps-tabs.tb-cycle-step-tabs-grid,
  .tb-wrap #tbWorkspaceMain > .tb-tabs.tb-therapy-steps-tabs.tb-cycle-step-tabs-grid,
  .tb-wrap .tb-client-workspace-shell #tbWorkspaceMain > .tb-tabs.tb-therapy-steps-tabs.tb-cycle-step-tabs-grid{
    width:calc(100% - 14px) !important;
    max-width:calc(100% - 14px) !important;
  }

  .tb-client-portal #tbPortalAnalysis .tb-card.tb-client-report-reader{
    padding-left:6px !important;
    padding-right:6px !important;
  }

  .tb-client-portal #tbPortalAnalysis .tb-report-accordion-body{
    padding-left:6px !important;
    padding-right:6px !important;
  }
}

/* Mobile: grade do workspace do cliente com Editar Cliente no fim.
 * Mantém Notificação Push ao lado de Gerar Relatório, Excluir ao lado do Termo
 * e centraliza o botão Editar Cliente como último item da grade.
*/
@media (max-width:782px){
  body .tb-wrap #tbClientWorkspaceRoot .tb-client-workspace-menu.tb-cycle-workspace-actions-grid,
  body #tbClientWorkspaceRoot .tb-client-workspace-menu.tb-cycle-workspace-actions-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body .tb-wrap #tbClientWorkspaceRoot .tb-client-workspace-menu.tb-cycle-workspace-actions-grid .tb-client-workspace-push-btn,
  body #tbClientWorkspaceRoot .tb-client-workspace-menu.tb-cycle-workspace-actions-grid .tb-client-workspace-push-btn{
    order:70!important;
    grid-column:auto!important;
  }
  body .tb-wrap #tbClientWorkspaceRoot .tb-client-workspace-menu.tb-cycle-workspace-actions-grid #tbClientWorkspaceFinalReport,
  body #tbClientWorkspaceRoot .tb-client-workspace-menu.tb-cycle-workspace-actions-grid #tbClientWorkspaceFinalReport{
    order:71!important;
    grid-column:auto!important;
  }
  body .tb-wrap #tbClientWorkspaceRoot .tb-client-workspace-menu.tb-cycle-workspace-actions-grid #tbClientWorkspaceDelete,
  body #tbClientWorkspaceRoot .tb-client-workspace-menu.tb-cycle-workspace-actions-grid #tbClientWorkspaceDelete{
    order:72!important;
    grid-column:auto!important;
  }
  body .tb-wrap #tbClientWorkspaceRoot .tb-client-workspace-menu.tb-cycle-workspace-actions-grid .tb-client-workspace-receipt-btn,
  body #tbClientWorkspaceRoot .tb-client-workspace-menu.tb-cycle-workspace-actions-grid .tb-client-workspace-receipt-btn,
  body .tb-wrap #tbClientWorkspaceRoot .tb-client-workspace-menu.tb-cycle-workspace-actions-grid a[href*="tb_audio_consent_receipt"],
  body #tbClientWorkspaceRoot .tb-client-workspace-menu.tb-cycle-workspace-actions-grid a[href*="tb_audio_consent_receipt"]{
    order:73!important;
    grid-column:auto!important;
  }
  body .tb-wrap #tbClientWorkspaceRoot .tb-client-workspace-menu.tb-cycle-workspace-actions-grid .tb-client-workspace-edit-btn,
  body #tbClientWorkspaceRoot .tb-client-workspace-menu.tb-cycle-workspace-actions-grid .tb-client-workspace-edit-btn{
    order:74!important;
    grid-column:1 / -1!important;
    justify-content:center!important;
    text-align:center!important;
  }
  body .tb-wrap #tbClientWorkspaceRoot .tb-client-workspace-menu.tb-cycle-workspace-actions-grid .tb-client-workspace-edit-btn > span:not(.dashicons),
  body #tbClientWorkspaceRoot .tb-client-workspace-menu.tb-cycle-workspace-actions-grid .tb-client-workspace-edit-btn > span:not(.dashicons){
    text-align:center!important;
  }
}

/* Barra superior padronizada para documentos imprimíveis no mobile/desktop.
 * Unifica Termo de Ciência e Relatório Completo quando abertos fora do portal/PWA.*/
.tb-printable-document-page{
  background:#f3f6fb;
}
.tb-return-toolbar.tb-print-action-bar,
.tb-print-action-bar{
  max-width:980px;
  margin:0 auto 12px;
  padding:12px 14px;
  position:sticky;
  top:0;
  z-index:99999;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:nowrap;
  border:1px solid #d7deea;
  border-top:0;
  border-radius:0 0 18px 18px;
  background:#ffffff;
  box-shadow:0 12px 30px rgba(15,23,42,.10);
  box-sizing:border-box;
}
.tb-print-action-copy{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:3px;
  color:#253263;
}
.tb-print-action-copy strong{
  font-size:14px;
  line-height:1.2;
  font-weight:800;
}
.tb-print-action-copy span{
  font-size:12px;
  line-height:1.35;
  color:#64748b;
}
.tb-print-action-buttons,
.tb-return-toolbar .tb-print-action-buttons{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex:0 0 auto;
}
.tb-return-toolbar.tb-print-action-bar .tb-btn,
.tb-print-action-bar .tb-btn,
.tb-print-action-bar .tb-pdf-fallback-button{
  min-height:46px;
  padding:11px 16px;
  border-radius:14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  font-size:14px;
  line-height:1.15;
  font-weight:800;
  text-decoration:none!important;
  white-space:nowrap;
  box-sizing:border-box;
}
.tb-return-toolbar.tb-print-action-bar .tb-return-toolbar-back,
.tb-print-action-bar .tb-return-toolbar-back,
.tb-print-action-bar .tb-pdf-fallback-back{
  border:1px solid #cbd5e1!important;
  background:#ffffff!important;
  color:#253263!important;
}
.tb-return-toolbar.tb-print-action-bar .tb-btn-primary,
.tb-print-action-bar .tb-btn-primary,
.tb-print-action-bar .tb-pdf-fallback-button:not(.tb-pdf-fallback-back){
  border-color:#2f4cff!important;
  background:#2f4cff!important;
  color:#ffffff!important;
}
@media (max-width:640px){
  .tb-return-toolbar.tb-print-action-bar,
  .tb-print-action-bar{
    width:100%;
    max-width:none;
    margin:0 0 10px;
    padding:calc(10px + env(safe-area-inset-top,0px)) 10px 10px;
    border-left:0;
    border-right:0;
    border-radius:0;
    display:block;
  }
  .tb-print-action-copy{
    margin:0 0 8px;
  }
  .tb-print-action-copy strong{
    font-size:13px;
  }
  .tb-print-action-copy span{
    font-size:11.5px;
  }
  .tb-print-action-buttons,
  .tb-return-toolbar .tb-print-action-buttons{
    width:100%;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
  }
  .tb-return-toolbar.tb-print-action-bar .tb-btn,
  .tb-print-action-bar .tb-btn,
  .tb-print-action-bar .tb-pdf-fallback-button{
    width:100%!important;
    min-height:52px;
    padding:12px 10px;
    border-radius:16px;
    font-size:14px;
  }
}
@media print{
  .tb-print-action-bar,
  .tb-return-toolbar.tb-print-action-bar{display:none!important;}
}

/* Mobile: área útil maior no Relatório de Análise Radar 7D dentro do acordeon.
 * Remove o contorno interno que criava uma terceira margem visual no Portal do Cliente.
*/
@media (max-width: 782px){
  .tb-client-portal #tbPortalAnalysis .tb-report-accordion,
  .tb-client-portal #tbPortalAnalysis .tb-report-accordion-client{
    border-color:rgba(255,255,255,0)!important;
    box-shadow:none!important;
  }
  .tb-client-portal #tbPortalAnalysis .tb-report-accordion[open],
  .tb-client-portal #tbPortalAnalysis .tb-report-accordion-client[open]{
    border-color:rgba(255,255,255,0)!important;
  }
  .tb-client-portal #tbPortalAnalysis .tb-report-accordion-body{
    border-top-color:rgba(255,255,255,0)!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  .tb-client-portal #tbPortalAnalysis .tb-analysis-html.tb-report-content,
  .tb-client-portal #tbPortalAnalysis .tb-report-reader-body{
    border:0!important;
    box-shadow:none!important;
    padding-left:0!important;
    padding-right:0!important;
  }
}

/* v2.5.74 — Jornada Sináptica: mobile em 2 colunas para medalhas/conquistas e marcos do tabuleiro.
 * Mantém as abas do Portal em uma coluna, mas impede que cards internos voltem para 1 coluna em telas pequenas.
 */
@media (max-width: 782px){
  .tb-client-portal .tb-portal-journey-sections .tb-gamification-medals-grid,
  .tb-wrap.tb-client-portal .tb-portal-journey-sections .tb-gamification-medals-grid,
  .tb-client-portal .tb-portal-journey-sections .tb-journey-achievement-grid,
  .tb-wrap.tb-client-portal .tb-portal-journey-sections .tb-journey-achievement-grid,
  .tb-client-portal .tb-portal-journey-sections .tb-gamification-two-grid,
  .tb-wrap.tb-client-portal .tb-portal-journey-sections .tb-gamification-two-grid{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
    width:100% !important;
    max-width:100% !important;
  }
  .tb-client-portal .tb-portal-journey-sections .tb-gamification-medals-grid > *,
  .tb-wrap.tb-client-portal .tb-portal-journey-sections .tb-gamification-medals-grid > *,
  .tb-client-portal .tb-portal-journey-sections .tb-journey-achievement-grid > *,
  .tb-wrap.tb-client-portal .tb-portal-journey-sections .tb-journey-achievement-grid > *,
  .tb-client-portal .tb-portal-journey-sections .tb-gamification-two-grid > *,
  .tb-wrap.tb-client-portal .tb-portal-journey-sections .tb-gamification-two-grid > *{
    min-width:0 !important;
    max-width:100% !important;
    overflow-wrap:anywhere;
  }
  .tb-client-portal .tb-portal-journey-sections .tb-journey-boardgame-path,
  .tb-wrap.tb-client-portal .tb-portal-journey-sections .tb-journey-boardgame-path,
  .tb-client-portal .tb-portal-journey-sections .tb-journey-boardgame-path-compact,
  .tb-wrap.tb-client-portal .tb-portal-journey-sections .tb-journey-boardgame-path-compact,
  .tb-client-portal #tbPortalJourney .tb-journey-boardgame-path,
  .tb-wrap.tb-client-portal #tbPortalJourney .tb-journey-boardgame-path,
  .tb-client-portal #tbPortalJourney .tb-journey-boardgame-path-compact,
  .tb-wrap.tb-client-portal #tbPortalJourney .tb-journey-boardgame-path-compact{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:8px !important;
  }
  .tb-client-portal .tb-portal-journey-sections .tb-journey-boardgame-path::before,
  .tb-wrap.tb-client-portal .tb-portal-journey-sections .tb-journey-boardgame-path::before,
  .tb-client-portal .tb-portal-journey-sections .tb-journey-boardgame-path-compact::before,
  .tb-wrap.tb-client-portal .tb-portal-journey-sections .tb-journey-boardgame-path-compact::before,
  .tb-client-portal #tbPortalJourney .tb-journey-boardgame-path::before,
  .tb-wrap.tb-client-portal #tbPortalJourney .tb-journey-boardgame-path::before,
  .tb-client-portal #tbPortalJourney .tb-journey-boardgame-path-compact::before,
  .tb-wrap.tb-client-portal #tbPortalJourney .tb-journey-boardgame-path-compact::before{
    display:none !important;
  }
}

/* v2.5.74 — Financeiro: feedback visual durante exclusão de propostas. */
.tb-finance-proposal-row.is-deleting{
  opacity:.58;
  pointer-events:none;
  filter:saturate(.75);
}
.tb-finance-proposal-row-buttons .tb-btn[disabled].is-danger{
  cursor:not-allowed;
  opacity:.62;
  background:#f8fafc;
  border-color:#d7deea;
  color:#64748b;
}


/* v2.5.74 — Jornada Sináptica: refinamento mobile solicitado.
 * 1) No tabuleiro compacto, o ícone ganha coluna própria dentro de cada marco.
 * 2) Em blocos tb-journey-history-wrap.tb-journey-v2542-card, os cards internos ficam em 2 colunas no mobile.
 */
@media (max-width: 782px){
  .tb-client-portal .tb-portal-journey-sections .tb-journey-boardgame-path-compact .tb-journey-boardgame-step-compact,
  .tb-wrap.tb-client-portal .tb-portal-journey-sections .tb-journey-boardgame-path-compact .tb-journey-boardgame-step-compact,
  .tb-client-portal #tbPortalJourney .tb-journey-boardgame-path-compact .tb-journey-boardgame-step-compact,
  .tb-wrap.tb-client-portal #tbPortalJourney .tb-journey-boardgame-path-compact .tb-journey-boardgame-step-compact,
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-boardgame-path-compact .tb-journey-boardgame-step-compact{
    display:grid !important;
    grid-template-columns:42px minmax(0,1fr) !important;
    grid-template-rows:auto auto !important;
    align-items:center !important;
    justify-items:stretch !important;
    column-gap:8px !important;
    row-gap:2px !important;
    text-align:left !important;
    padding:8px 6px !important;
    min-height:58px !important;
  }
  .tb-client-portal .tb-portal-journey-sections .tb-journey-boardgame-path-compact .tb-journey-boardgame-icon,
  .tb-wrap.tb-client-portal .tb-portal-journey-sections .tb-journey-boardgame-path-compact .tb-journey-boardgame-icon,
  .tb-client-portal #tbPortalJourney .tb-journey-boardgame-path-compact .tb-journey-boardgame-icon,
  .tb-wrap.tb-client-portal #tbPortalJourney .tb-journey-boardgame-path-compact .tb-journey-boardgame-icon,
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-boardgame-path-compact .tb-journey-boardgame-icon{
    grid-column:1 !important;
    grid-row:1 / span 2 !important;
    align-self:center !important;
    justify-self:center !important;
    width:36px !important;
    height:36px !important;
  }
  .tb-client-portal .tb-portal-journey-sections .tb-journey-boardgame-path-compact .tb-journey-boardgame-day,
  .tb-wrap.tb-client-portal .tb-portal-journey-sections .tb-journey-boardgame-path-compact .tb-journey-boardgame-day,
  .tb-client-portal #tbPortalJourney .tb-journey-boardgame-path-compact .tb-journey-boardgame-day,
  .tb-wrap.tb-client-portal #tbPortalJourney .tb-journey-boardgame-path-compact .tb-journey-boardgame-day,
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-boardgame-path-compact .tb-journey-boardgame-day{
    grid-column:2 !important;
    grid-row:1 !important;
    text-align:left !important;
    max-width:100% !important;
  }
  .tb-client-portal .tb-portal-journey-sections .tb-journey-boardgame-path-compact .tb-journey-boardgame-title,
  .tb-wrap.tb-client-portal .tb-portal-journey-sections .tb-journey-boardgame-path-compact .tb-journey-boardgame-title,
  .tb-client-portal #tbPortalJourney .tb-journey-boardgame-path-compact .tb-journey-boardgame-title,
  .tb-wrap.tb-client-portal #tbPortalJourney .tb-journey-boardgame-path-compact .tb-journey-boardgame-title,
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-boardgame-path-compact .tb-journey-boardgame-title{
    grid-column:2 !important;
    grid-row:2 !important;
    text-align:left !important;
    max-width:100% !important;
    overflow-wrap:anywhere !important;
  }
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-history-wrap.tb-journey-v2542-card .tb-journey-achievement-grid,
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-history-wrap.tb-journey-v2542-card .tb-gamification-medals-grid,
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-history-wrap.tb-journey-v2542-card .tb-gamification-two-grid,
  .tb-client-portal .tb-journey-history-wrap.tb-journey-v2542-card .tb-journey-achievement-grid,
  .tb-client-portal .tb-journey-history-wrap.tb-journey-v2542-card .tb-gamification-medals-grid,
  .tb-client-portal .tb-journey-history-wrap.tb-journey-v2542-card .tb-gamification-two-grid{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
  }
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-history-wrap.tb-journey-v2542-card .tb-journey-achievement-grid > *,
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-history-wrap.tb-journey-v2542-card .tb-gamification-medals-grid > *,
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-history-wrap.tb-journey-v2542-card .tb-gamification-two-grid > *,
  .tb-client-portal .tb-journey-history-wrap.tb-journey-v2542-card .tb-journey-achievement-grid > *,
  .tb-client-portal .tb-journey-history-wrap.tb-journey-v2542-card .tb-gamification-medals-grid > *,
  .tb-client-portal .tb-journey-history-wrap.tb-journey-v2542-card .tb-gamification-two-grid > *{
    min-width:0 !important;
    max-width:100% !important;
    overflow-wrap:anywhere !important;
  }
}

@media (max-width: 560px){
  .tb-client-portal .tb-portal-journey-sections .tb-journey-boardgame-path-compact .tb-journey-boardgame-step-compact,
  .tb-wrap.tb-client-portal .tb-portal-journey-sections .tb-journey-boardgame-path-compact .tb-journey-boardgame-step-compact,
  .tb-client-portal #tbPortalJourney .tb-journey-boardgame-path-compact .tb-journey-boardgame-step-compact,
  .tb-wrap.tb-client-portal #tbPortalJourney .tb-journey-boardgame-path-compact .tb-journey-boardgame-step-compact,
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-boardgame-path-compact .tb-journey-boardgame-step-compact{
    grid-template-columns:38px minmax(0,1fr) !important;
    column-gap:7px !important;
  }
}


/* v2.5.74 — Últimos registros dentro do histórico da Jornada também em 2 colunas no mobile. */
@media (max-width: 782px){
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-history-wrap.tb-journey-v2542-card{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
  }
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-history-wrap.tb-journey-v2542-card > .tb-journey-events-title,
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-history-wrap.tb-journey-v2542-card > .tb-muted,
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-history-wrap.tb-journey-v2542-card > .tb-journey-timeline-stage,
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-history-wrap.tb-journey-v2542-card > .tb-journey-timeline-empty,
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-history-wrap.tb-journey-v2542-card > .tb-journey-board-empty,
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-history-wrap.tb-journey-v2542-card > .tb-journey-achievement-grid,
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-history-wrap.tb-journey-v2542-card > .tb-gamification-medals-grid,
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-history-wrap.tb-journey-v2542-card > .tb-gamification-two-grid,
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-history-wrap.tb-journey-v2542-card > .tb-list{
    grid-column:1 / -1 !important;
  }
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-history-wrap.tb-journey-v2542-card > .tb-journey-timeline-item.is-recent-event{
    grid-template-columns:minmax(0,1fr) !important;
    gap:6px !important;
    min-width:0 !important;
  }
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-history-wrap.tb-journey-v2542-card > .tb-journey-timeline-item.is-recent-event .tb-journey-timeline-rail{
    display:none !important;
  }
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-history-wrap.tb-journey-v2542-card > .tb-journey-timeline-item.is-recent-event .tb-journey-timeline-dot{
    width:32px !important;
    height:32px !important;
    border-radius:12px !important;
    font-size:14px !important;
  }
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-history-wrap.tb-journey-v2542-card > .tb-journey-timeline-item.is-recent-event .tb-journey-timeline-card{
    padding:10px !important;
    border-radius:14px !important;
  }
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-history-wrap.tb-journey-v2542-card > .tb-journey-timeline-item.is-recent-event .tb-journey-timeline-card-top,
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-history-wrap.tb-journey-v2542-card > .tb-journey-timeline-item.is-recent-event .tb-journey-timeline-meta{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:6px !important;
  }
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-history-wrap.tb-journey-v2542-card > .tb-journey-timeline-item.is-recent-event .tb-journey-timeline-status,
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-history-wrap.tb-journey-v2542-card > .tb-journey-timeline-item.is-recent-event .tb-journey-timeline-date,
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-history-wrap.tb-journey-v2542-card > .tb-journey-timeline-item.is-recent-event .tb-journey-timeline-meta span,
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-history-wrap.tb-journey-v2542-card > .tb-journey-timeline-item.is-recent-event .tb-journey-timeline-secondary{
    width:100% !important;
    justify-content:center !important;
    text-align:center !important;
  }
}

/* v2.5.74 — Correção específica do Tabuleiro da Jornada no mobile/tablet.
 * O breakpoint anterior ainda permitia 3 colunas em alguns PWAs/tablets.
 * Aqui cada marco/medalha ocupa uma célula da grade de 2 colunas e o ícone fica em coluna própria dentro do marco.
 */
@media (max-width: 1120px){
  .tb-journey-boardgame-path.tb-journey-boardgame-path-compact,
  .tb-client-portal .tb-journey-boardgame-path.tb-journey-boardgame-path-compact,
  .tb-wrap.tb-client-portal .tb-journey-boardgame-path.tb-journey-boardgame-path-compact,
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-boardgame-path.tb-journey-boardgame-path-compact{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
    align-items:stretch !important;
  }
  .tb-journey-boardgame-path.tb-journey-boardgame-path-compact::before,
  .tb-client-portal .tb-journey-boardgame-path.tb-journey-boardgame-path-compact::before,
  .tb-wrap.tb-client-portal .tb-journey-boardgame-path.tb-journey-boardgame-path-compact::before,
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-boardgame-path.tb-journey-boardgame-path-compact::before{
    display:none !important;
  }
  .tb-journey-boardgame-path.tb-journey-boardgame-path-compact > .tb-journey-boardgame-step-compact,
  .tb-client-portal .tb-journey-boardgame-path.tb-journey-boardgame-path-compact > .tb-journey-boardgame-step-compact,
  .tb-wrap.tb-client-portal .tb-journey-boardgame-path.tb-journey-boardgame-path-compact > .tb-journey-boardgame-step-compact,
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-boardgame-path.tb-journey-boardgame-path-compact > .tb-journey-boardgame-step-compact{
    display:grid !important;
    grid-template-columns:42px minmax(0,1fr) !important;
    grid-template-rows:auto auto !important;
    column-gap:8px !important;
    row-gap:2px !important;
    align-items:center !important;
    justify-items:stretch !important;
    text-align:left !important;
    min-width:0 !important;
    min-height:58px !important;
    padding:8px 6px !important;
  }
  .tb-journey-boardgame-path.tb-journey-boardgame-path-compact > .tb-journey-boardgame-step-compact .tb-journey-boardgame-icon,
  .tb-client-portal .tb-journey-boardgame-path.tb-journey-boardgame-path-compact > .tb-journey-boardgame-step-compact .tb-journey-boardgame-icon,
  .tb-wrap.tb-client-portal .tb-journey-boardgame-path.tb-journey-boardgame-path-compact > .tb-journey-boardgame-step-compact .tb-journey-boardgame-icon,
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-boardgame-path.tb-journey-boardgame-path-compact > .tb-journey-boardgame-step-compact .tb-journey-boardgame-icon{
    grid-column:1 !important;
    grid-row:1 / span 2 !important;
    align-self:center !important;
    justify-self:center !important;
    width:36px !important;
    height:36px !important;
  }
  .tb-journey-boardgame-path.tb-journey-boardgame-path-compact > .tb-journey-boardgame-step-compact .tb-journey-boardgame-day,
  .tb-client-portal .tb-journey-boardgame-path.tb-journey-boardgame-path-compact > .tb-journey-boardgame-step-compact .tb-journey-boardgame-day,
  .tb-wrap.tb-client-portal .tb-journey-boardgame-path.tb-journey-boardgame-path-compact > .tb-journey-boardgame-step-compact .tb-journey-boardgame-day,
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-boardgame-path.tb-journey-boardgame-path-compact > .tb-journey-boardgame-step-compact .tb-journey-boardgame-day{
    grid-column:2 !important;
    grid-row:1 !important;
    text-align:left !important;
    max-width:100% !important;
    min-width:0 !important;
  }
  .tb-journey-boardgame-path.tb-journey-boardgame-path-compact > .tb-journey-boardgame-step-compact .tb-journey-boardgame-title,
  .tb-client-portal .tb-journey-boardgame-path.tb-journey-boardgame-path-compact > .tb-journey-boardgame-step-compact .tb-journey-boardgame-title,
  .tb-wrap.tb-client-portal .tb-journey-boardgame-path.tb-journey-boardgame-path-compact > .tb-journey-boardgame-step-compact .tb-journey-boardgame-title,
  .tb-journey-primary-mounted.tb-journey-v2542-shell .tb-journey-boardgame-path.tb-journey-boardgame-path-compact > .tb-journey-boardgame-step-compact .tb-journey-boardgame-title{
    grid-column:2 !important;
    grid-row:2 !important;
    text-align:left !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow-wrap:anywhere !important;
  }
}
