@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap");
:root{
  --tfm-green:#7ED957;
  --tfm-green-dark:#1F7A3A;
  --tfm-black:#06110A;
  --tfm-ink:#121812;
  --tfm-soft:#F3F7F1;
}
.tfm-saas-body{font-family:Inter,system-ui,sans-serif;background:#f5f7f3!important;}
.tfm-saas-shell .vesta-sidebar{background:linear-gradient(180deg,#030805 0%,#06110A 55%,#020402 100%);border-right:1px solid rgba(126,217,87,.12)}
.tfm-saas-shell .vesta-sidebar__logo-mark{background:linear-gradient(135deg,var(--tfm-green),#43b929);color:#06110A;font-weight:900;border-radius:16px;box-shadow:0 18px 48px rgba(126,217,87,.24)}
.tfm-saas-shell .vesta-sidebar__brand-copy strong{color:#fff}.tfm-saas-shell .vesta-sidebar__brand-copy span{color:#9ecf90}
.tfm-saas-shell .vesta-sidebar__item.is-active{background:rgba(126,217,87,.14);color:var(--tfm-green)}
.tfm-saas-shell .vesta-sidebar__item:hover{background:rgba(126,217,87,.08)}
.tfm-saas-shell .vesta-topbar{background:rgba(255,255,255,.9);backdrop-filter:blur(16px)}
.tfm-saas-shell .vesta-button--primary{background:linear-gradient(135deg,var(--tfm-green),#49b82d);color:#07110B;border:0;font-weight:800;box-shadow:0 12px 26px rgba(80,190,52,.24)}
.tfm-vesta-page{max-width:none;padding:24px 28px 40px}.tfm-page-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-bottom:20px}.tfm-page-heading span{display:block;color:#4aa02c;text-transform:uppercase;font-size:12px;font-weight:900;letter-spacing:.08em}.tfm-page-heading h1{font-size:34px;line-height:1.05;margin:6px 0 8px;color:#101510;letter-spacing:-.04em}.tfm-page-heading p{margin:0;color:#627064;max-width:760px}.tfm-hero-panel{display:grid;grid-template-columns:minmax(0,1fr) 160px;gap:22px;align-items:center;background:radial-gradient(circle at 78% 14%,rgba(126,217,87,.24),transparent 34%),linear-gradient(135deg,#06110A,#0d2a16);color:#fff;border-radius:28px;padding:32px;margin-bottom:20px;box-shadow:0 24px 80px rgba(6,17,10,.16);overflow:hidden}.tfm-hero-panel span{text-transform:uppercase;color:var(--tfm-green);font-size:12px;font-weight:900;letter-spacing:.12em}.tfm-hero-panel h2{font-size:38px;line-height:1;margin:8px 0 12px;letter-spacing:-.05em;max-width:780px}.tfm-hero-panel p{max-width:720px;color:#cfe5ca;margin:0}.tfm-hero-orb{width:136px;height:136px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--tfm-green),#4ebe2e);color:#07110B;font-weight:900;font-size:34px;box-shadow:0 20px 60px rgba(126,217,87,.28)}
.tfm-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:18px 0}.tfm-v-card{background:#fff;border:1px solid #e6eee2;border-radius:22px;padding:20px;box-shadow:0 16px 38px rgba(7,17,11,.05)}.tfm-v-card span{font-size:12px;color:#6b776d;font-weight:800;text-transform:uppercase}.tfm-v-card strong{display:block;font-size:28px;color:#101510;margin:8px 0 2px;letter-spacing:-.04em}.tfm-v-card small{color:#7b867c}.tfm-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:18px 0}.tfm-row{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid #eef1ec}.tfm-row:last-child{border-bottom:0}.tfm-row strong{display:block;color:#151a15}.tfm-row small{display:block;color:#7a857b;margin-top:3px}.tfm-row span{font-weight:800;color:#2d7f19}.tfm-mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.tfm-mini-stats div{background:#f5f9f2;border-radius:16px;padding:14px}.tfm-mini-stats span{display:block;color:#7a867b;font-size:12px}.tfm-mini-stats b{font-size:22px;color:#142114}.tfm-bars{height:160px;background:linear-gradient(180deg,#f7faf5,#eef5eb);border-radius:18px;margin-top:16px;padding:18px;display:flex;align-items:flex-end;gap:10px;overflow:hidden}.tfm-bars span{display:block;flex:1;min-height:26px;border-radius:999px 999px 8px 8px;background:linear-gradient(180deg,var(--tfm-green),#2e8f19);position:relative}.tfm-bars-large{height:280px}.tfm-bars span em{position:absolute;bottom:-24px;left:50%;transform:translateX(-50%);font-size:10px;color:#68766b;white-space:nowrap}.tfm-form label{display:block;font-weight:800;color:#1a231b;margin-bottom:12px}.tfm-form input,.tfm-form textarea,.tfm-form select{width:100%;border:1px solid #dfe8da;border-radius:14px;padding:12px 14px;background:#fff;margin-top:6px;min-height:44px}.tfm-form select[multiple]{min-height:110px}.tfm-form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.tfm-check{display:flex!important;align-items:center;gap:10px}.tfm-check input{width:auto;min-height:0;margin:0}.tfm-table{width:100%;border-collapse:collapse;font-size:14px}.tfm-table th{text-align:left;color:#607063;background:#f3f8f0;padding:12px;border-bottom:1px solid #e5eee0}.tfm-table td{padding:12px;border-bottom:1px solid #eef2eb;color:#273027;vertical-align:top}.tfm-table tr:hover td{background:#fbfdf9}.tfm-package-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}.tfm-package,.tfm-export{background:#fff;border:1px solid #e3eddf;border-radius:22px;padding:18px;box-shadow:0 12px 30px rgba(7,17,11,.04)}.tfm-package span,.tfm-video span,.tfm-meal small{color:#4aa02c;text-transform:uppercase;font-weight:900;font-size:11px;letter-spacing:.06em}.tfm-package h3{margin:8px 0 8px}.tfm-package strong{display:block;font-size:28px;margin-bottom:8px}.tfm-package p{color:#627064;min-height:42px}.tfm-package small{display:block;color:#7d887e;margin-bottom:14px}.tfm-video-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.tfm-video{border:1px solid #e4ecdf;border-radius:22px;overflow:hidden;background:#fff;box-shadow:0 14px 34px rgba(7,17,11,.05)}.tfm-video img,.tfm-video__placeholder{width:100%;height:140px;object-fit:cover;background:linear-gradient(135deg,#07110B,#143A1F);color:var(--tfm-green);display:grid;place-items:center;font-weight:900}.tfm-video span,.tfm-video h4,.tfm-video p,.tfm-video a{margin-left:16px;margin-right:16px}.tfm-video span{display:block;margin-top:14px}.tfm-video h4{margin-top:8px;margin-bottom:6px}.tfm-video p{color:#657166;min-height:44px}.tfm-video a{margin-bottom:16px}.tfm-meal{background:#fbfdf9;border:1px solid #e4ecdf;border-radius:20px;padding:16px;margin-bottom:14px}.tfm-meal strong{font-size:18px;display:block}.tfm-meal p{color:#627064}.tfm-meal ul{padding-left:18px;margin-bottom:0}.tfm-profile{display:flex;align-items:center;gap:18px}.tfm-avatar{width:76px;height:76px;border-radius:24px;background:linear-gradient(135deg,var(--tfm-green),#4ebe2e);display:grid;place-items:center;font-size:30px;font-weight:900;color:#07110B}.tfm-empty{padding:34px;max-width:720px}.tfm-empty h3{font-size:28px;margin-top:0}
@media(max-width:900px){.tfm-vesta-page{padding:18px}.tfm-page-heading{display:block}.tfm-page-heading h1{font-size:28px}.tfm-hero-panel{grid-template-columns:1fr;padding:24px}.tfm-hero-panel h2{font-size:30px}.tfm-hero-orb{display:none}.tfm-kpis,.tfm-grid-2{grid-template-columns:1fr}.tfm-form-grid{grid-template-columns:1fr}.tfm-mini-stats{grid-template-columns:1fr}.tfm-table{display:block;overflow-x:auto;white-space:nowrap}}

/* v1.8.1 menu/module wiring polish */
.tfm-drawer-actions{display:grid;gap:12px}.tfm-drawer-action{display:block;padding:16px;border-radius:18px;background:rgba(126,217,87,.1);border:1px solid rgba(126,217,87,.18);text-decoration:none;color:inherit}.tfm-drawer-action strong{display:block;color:#fff;margin-bottom:4px}.tfm-drawer-action span{display:block;color:rgba(255,255,255,.68);font-size:13px}.tfm-subscription-status{display:grid;gap:8px}.tfm-subscription-status strong{font-size:24px}.tfm-subscription-status span{display:inline-flex;width:max-content;border-radius:999px;padding:6px 10px;background:rgba(126,217,87,.14);color:#4bb729;font-weight:800;text-transform:uppercase;font-size:11px}.tfm-row p{margin:6px 0 0;color:var(--vesta-muted,#6b7280);font-size:13px}


/* Transform with Danny: enforce Inter globally for all plugin-rendered UI. */
:root{--vesta-font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--tfm-font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;}
body.tfm-saas-body, body.vesta-app-body, body.vesta-auth-body,
.tfm-app, .tfm-app *, .tfm-saas, .tfm-saas *, .tfm-admin-wrap, .tfm-admin-wrap *,
.vesta-shell, .vesta-shell *, .vesta-app, .vesta-app *, .vesta-page, .vesta-page *,
.tfm-dashboard, .tfm-dashboard *, .tfm-panel, .tfm-panel *, .tfm-card, .tfm-card *{font-family:var(--tfm-font)!important;}
.tfm-app button,.tfm-app input,.tfm-app textarea,.tfm-app select,
.tfm-saas button,.tfm-saas input,.tfm-saas textarea,.tfm-saas select,
.tfm-admin-wrap button,.tfm-admin-wrap input,.tfm-admin-wrap textarea,.tfm-admin-wrap select,
.vesta-shell button,.vesta-shell input,.vesta-shell textarea,.vesta-shell select{font-family:var(--tfm-font)!important;}

/* v1.8.6 — Content typography compact pass
   Keep sidebar/topbar style, reduce only workspace content bulk. */
.tfm-vesta-page{
  font-size:14px!important;
  line-height:1.5!important;
  font-weight:400!important;
  letter-spacing:-0.01em;
}
.tfm-vesta-page p,
.tfm-vesta-page small,
.tfm-vesta-page li,
.tfm-vesta-page td,
.tfm-vesta-page th,
.tfm-vesta-page input,
.tfm-vesta-page textarea,
.tfm-vesta-page select{
  font-size:14px!important;
  line-height:1.45!important;
  font-weight:400!important;
}
.tfm-vesta-page .tfm-page-heading span,
.tfm-vesta-page .tfm-hero-panel span,
.tfm-vesta-page .tfm-v-card span,
.tfm-vesta-page .tfm-package span,
.tfm-vesta-page .tfm-video span,
.tfm-vesta-page .tfm-meal small{
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:.08em!important;
}
.tfm-vesta-page .tfm-page-heading h1{
  font-size:30px!important;
  line-height:1.12!important;
  font-weight:500!important;
  letter-spacing:-.04em!important;
  margin:4px 0 6px!important;
}
.tfm-vesta-page .tfm-page-heading p{
  font-size:16px!important;
  line-height:1.45!important;
  font-weight:400!important;
  max-width:780px!important;
}
.tfm-vesta-page .tfm-hero-panel{
  padding:26px 30px!important;
  border-radius:24px!important;
}
.tfm-vesta-page .tfm-hero-panel h2{
  font-size:32px!important;
  line-height:1.05!important;
  font-weight:500!important;
  letter-spacing:-.045em!important;
}
.tfm-vesta-page .tfm-hero-panel p{
  font-size:16px!important;
  line-height:1.45!important;
  font-weight:400!important;
}
.tfm-vesta-page .tfm-hero-orb{
  width:118px!important;
  height:118px!important;
  font-size:28px!important;
  font-weight:750!important;
}
.tfm-vesta-page .tfm-v-card{
  padding:18px 20px!important;
  border-radius:20px!important;
}
.tfm-vesta-page .tfm-v-card strong{
  font-size:24px!important;
  font-weight:500!important;
  line-height:1.05!important;
  letter-spacing:-.035em!important;
}
.tfm-vesta-page .tfm-v-card small{
  font-size:13px!important;
  color:#7a857b!important;
}
.tfm-vesta-page .vesta-card__header h3,
.tfm-vesta-page .tfm-panel h3,
.tfm-vesta-page .tfm-package h3,
.tfm-vesta-page .tfm-video h4,
.tfm-vesta-page .tfm-meal strong{
  font-size:16px!important;
  line-height:1.25!important;
  font-weight:500!important;
  letter-spacing:-.02em!important;
}
.tfm-vesta-page .vesta-card__header a,
.tfm-vesta-page .vesta-card__header button{
  font-size:14px!important;
  font-weight:500!important;
}
.tfm-vesta-page .tfm-row strong{
  font-size:15px!important;
  font-weight:500!important;
  line-height:1.25!important;
}
.tfm-vesta-page .tfm-row small{
  font-size:13px!important;
  font-weight:400!important;
}
.tfm-vesta-page .tfm-row span{
  font-size:15px!important;
  font-weight:600!important;
}
.tfm-vesta-page .tfm-form label{
  font-size:14px!important;
  line-height:1.35!important;
  font-weight:600!important;
  margin-bottom:10px!important;
}
.tfm-vesta-page .tfm-form input,
.tfm-vesta-page .tfm-form textarea,
.tfm-vesta-page .tfm-form select{
  min-height:42px!important;
  padding:10px 12px!important;
  border-radius:13px!important;
}
.tfm-vesta-page .vesta-button,
.tfm-vesta-page .tfm-primary,
.tfm-vesta-page button,
.tfm-vesta-page input[type="submit"]{
  font-size:14px!important;
  line-height:1.15!important;
  font-weight:650!important;
  min-height:40px!important;
  padding:10px 16px!important;
  border-radius:12px!important;
}
.tfm-vesta-page .tfm-package strong{
  font-size:24px!important;
  font-weight:500!important;
  letter-spacing:-.035em!important;
}
.tfm-vesta-page .tfm-package p,
.tfm-vesta-page .tfm-video p,
.tfm-vesta-page .tfm-meal p{
  font-size:14px!important;
  font-weight:400!important;
  line-height:1.45!important;
}
.tfm-vesta-page .tfm-empty h3{
  font-size:22px!important;
  font-weight:500!important;
}
.tfm-vesta-page .tfm-table th{
  font-size:12px!important;
  font-weight:650!important;
}
.tfm-vesta-page .tfm-table td{
  font-size:13px!important;
}
@media(max-width:900px){
  .tfm-vesta-page .tfm-page-heading h1{font-size:26px!important;}
  .tfm-vesta-page .tfm-page-heading p{font-size:15px!important;}
  .tfm-vesta-page .tfm-hero-panel h2{font-size:27px!important;}
}

/* v1.8.9 — Workspace UX rebuild: remove developer-looking hero and make desktop/mobile feel like an app dashboard. */
.tfm-vesta-page{
  --tfm-card-radius:18px;
  background:linear-gradient(180deg,#f7faf5 0%,#f3f7f1 100%);
}
.tfm-vesta-page .tfm-page-heading{
  margin-bottom:14px!important;
  align-items:center!important;
}
.tfm-vesta-page .tfm-page-heading h1{
  font-size:28px!important;
  font-weight:560!important;
  letter-spacing:-.035em!important;
}
.tfm-vesta-page .tfm-page-heading p{
  font-size:14.5px!important;
  color:#667468!important;
  max-width:760px!important;
}
.tfm-command-panel{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(240px,340px);
  gap:18px;
  align-items:stretch;
  margin:12px 0 16px;
}
.tfm-command-panel__copy,
.tfm-command-panel__metrics{
  border:1px solid #deead9;
  border-radius:var(--tfm-card-radius);
  background:#fff;
  box-shadow:0 14px 36px rgba(7,17,11,.045);
}
.tfm-command-panel__copy{
  padding:22px 24px;
  background:radial-gradient(circle at 86% 20%,rgba(126,217,87,.16),transparent 34%),linear-gradient(135deg,#07110B,#12371d);
  color:#fff;
}
.tfm-command-panel__copy span{
  display:block;
  color:var(--tfm-green);
  font-size:11px!important;
  line-height:1.2!important;
  font-weight:700!important;
  text-transform:uppercase;
  letter-spacing:.1em;
  margin-bottom:8px;
}
.tfm-command-panel__copy h2{
  margin:0 0 8px;
  font-size:24px!important;
  line-height:1.1!important;
  font-weight:560!important;
  letter-spacing:-.04em!important;
  max-width:740px;
}
.tfm-command-panel__copy p{
  max-width:780px;
  color:#cfe2cc!important;
  font-size:14px!important;
  line-height:1.48!important;
  margin:0!important;
}
.tfm-command-panel__metrics{
  display:grid;
  grid-template-columns:1fr 1fr;
  padding:18px;
  gap:12px;
}
.tfm-command-panel__metrics div{
  background:#f4faef;
  border:1px solid #dff0d7;
  border-radius:16px;
  padding:14px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.tfm-command-panel__metrics b{
  font-size:26px!important;
  line-height:1!important;
  font-weight:560!important;
  color:#173817;
}
.tfm-command-panel__metrics span{
  margin-top:6px;
  font-size:12.5px!important;
  line-height:1.35!important;
  color:#607063;
}
.tfm-kpis--compact{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px!important;
  margin:12px 0 16px!important;
}
.tfm-kpis--compact .tfm-v-card{
  min-height:116px;
  padding:17px 18px!important;
}
.tfm-kpis--compact .tfm-v-card strong{
  font-size:24px!important;
}
.tfm-quick-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:12px;
  margin:0 0 16px;
}
.tfm-action-tile{
  display:block;
  text-decoration:none;
  color:#172017;
  background:#fff;
  border:1px solid #e0eadb;
  border-radius:16px;
  padding:15px;
  box-shadow:0 10px 26px rgba(7,17,11,.035);
  min-height:86px;
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.tfm-action-tile:hover{
  transform:translateY(-2px);
  border-color:#bfe8ae;
  box-shadow:0 16px 34px rgba(7,17,11,.075);
}
.tfm-action-tile strong{
  display:block;
  font-size:14px!important;
  line-height:1.2!important;
  font-weight:620!important;
  margin-bottom:5px;
}
.tfm-action-tile span{
  display:block;
  font-size:12.5px!important;
  line-height:1.35!important;
  color:#6b786d;
}
.tfm-dashboard-layout{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(330px,.75fr);
  gap:16px;
  align-items:start;
}
.tfm-dashboard-main,
.tfm-dashboard-side{
  display:grid;
  gap:16px;
}
.tfm-ops-card .vesta-card__body{padding-top:14px!important;}
.tfm-health-bars{display:grid;gap:13px;}
.tfm-health-bars div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;}
.tfm-health-bars span{font-size:13px!important;color:#667468!important;}
.tfm-health-bars b{font-size:14px!important;font-weight:650!important;color:#172017!important;}
.tfm-health-bars em{grid-column:1 / -1;height:8px;background:#ecf4e8;border-radius:999px;overflow:hidden;display:block;}
.tfm-health-bars i{display:block;height:100%;background:linear-gradient(90deg,var(--tfm-green),#44b72c);border-radius:999px;}
.tfm-row--clean{padding:12px 0!important;}
.tfm-row--clean strong{font-size:14px!important;font-weight:560!important;}
.tfm-row--clean small{font-size:12.5px!important;color:#758177!important;}
.tfm-row--clean span{font-size:13.5px!important;font-weight:650!important;color:#22771b!important;}
.tfm-empty-inline{padding:18px;border-radius:14px;background:#f7faf5;border:1px dashed #d6e6d0;color:#68766b;}
.tfm-empty-inline strong{display:block;color:#1b241c;font-size:14px!important;font-weight:600!important;margin-bottom:4px;}
.tfm-empty-inline span{font-size:13px!important;line-height:1.4!important;}
.tfm-content-status{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.tfm-content-status div{background:#f4faef;border:1px solid #dcefd4;border-radius:14px;padding:14px;}
.tfm-content-status b{display:block;font-size:22px!important;font-weight:560!important;color:#173817;}
.tfm-content-status span{display:block;font-size:12.5px!important;color:#657266;line-height:1.35;}
.tfm-vesta-page .tfm-hero-panel{display:none!important;}

@media(max-width:1180px){
  .tfm-quick-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
  .tfm-dashboard-layout{grid-template-columns:1fr;}
}
@media(max-width:767px){
  .tfm-vesta-page{padding:16px 14px 86px!important;}
  .tfm-vesta-page .tfm-page-heading{display:block!important;margin-bottom:12px!important;}
  .tfm-vesta-page .tfm-page-heading h1{font-size:25px!important;line-height:1.08!important;margin-bottom:6px!important;}
  .tfm-vesta-page .tfm-page-heading p{font-size:13.5px!important;line-height:1.42!important;}
  .tfm-vesta-page .tfm-page-heading .vesta-button{margin-top:12px!important;width:100%;justify-content:center;}
  .tfm-command-panel{grid-template-columns:1fr;gap:12px;margin:8px 0 12px;}
  .tfm-command-panel__copy{padding:18px;border-radius:20px;}
  .tfm-command-panel__copy h2{font-size:20px!important;line-height:1.13!important;}
  .tfm-command-panel__copy p{font-size:13px!important;}
  .tfm-command-panel__metrics{padding:12px;border-radius:18px;}
  .tfm-command-panel__metrics b{font-size:22px!important;}
  .tfm-kpis--compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px!important;}
  .tfm-kpis--compact .tfm-v-card{min-height:96px;padding:14px!important;border-radius:16px!important;}
  .tfm-kpis--compact .tfm-v-card strong{font-size:22px!important;}
  .tfm-kpis--compact .tfm-v-card small{font-size:12px!important;}
  .tfm-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
  .tfm-action-tile{min-height:80px;padding:13px;border-radius:15px;}
  .tfm-action-tile strong{font-size:13.5px!important;}
  .tfm-action-tile span{font-size:12px!important;}
  .tfm-dashboard-layout{gap:12px;}
  .tfm-dashboard-main,.tfm-dashboard-side{gap:12px;}
  .tfm-content-status{grid-template-columns:1fr;}
  .tfm-vesta-page .vesta-card{border-radius:16px!important;}
  .tfm-vesta-page .vesta-card__header{padding:15px 15px 0!important;}
  .tfm-vesta-page .vesta-card__body{padding:13px 15px 15px!important;}
}

/* v1.8.19 real analytics rebuild - no oversized fake chart blocks */
.tfm-analytics-board{display:grid;grid-template-columns:.85fr 1fr 1fr;gap:16px;margin:18px 0}.tfm-goal-card .vesta-card__body{display:grid;gap:14px}.tfm-ring-card{display:flex;align-items:center;gap:14px;padding:14px;border:1px solid #e5eee0;background:#fbfdf9;border-radius:18px}.tfm-ring{width:74px;height:74px;border-radius:50%;background:conic-gradient(var(--tfm-green) calc(var(--pct)*1%),#e8efe4 0);display:grid;place-items:center;position:relative;flex:0 0 auto}.tfm-ring:after{content:'';position:absolute;inset:8px;background:#fff;border-radius:50%}.tfm-ring span{position:relative;z-index:1;font-weight:850;color:#07110b;font-size:16px}.tfm-ring-card strong{display:block;font-size:15px;color:#111b12}.tfm-ring-card small{display:block;color:#758075;font-size:12px;margin-top:3px}.tfm-insight-card .vesta-card__body{min-height:0}.tfm-insight-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px}.tfm-insight-row>div{background:#f6faf3;border:1px solid #e6eee2;border-radius:16px;padding:12px}.tfm-insight-row span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#758075;font-weight:750}.tfm-insight-row strong{display:block;font-size:18px;margin-top:5px;color:#101510}.tfm-trend-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(86px,1fr));gap:10px}.tfm-trend-dot{border:1px solid #e5eee0;background:linear-gradient(180deg,#fff,#f8fbf6);border-radius:16px;padding:12px;min-height:72px;display:flex;flex-direction:column;justify-content:space-between}.tfm-trend-dot b{font-size:16px;color:#21751a}.tfm-trend-dot span{font-size:11px;color:#778176}.tfm-smart-empty{border:1px dashed #cfdcc9;background:#f8fbf6;border-radius:18px;padding:18px;display:grid;gap:4px;color:#637064}.tfm-smart-empty strong{color:#101510}.tfm-log-card{margin-top:18px}.tfm-table--compact th,.tfm-table--compact td{padding:10px 12px}.tfm-grid-2--balanced{align-items:start}.tfm-onboarding-dashboard{display:grid;grid-template-columns:1.1fr .9fr;gap:16px;margin:18px 0}.tfm-onboarding-hero{background:linear-gradient(135deg,#07110b,#173a20);color:#fff;border-radius:24px;padding:26px}.tfm-onboarding-hero span{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--tfm-green);font-weight:850}.tfm-onboarding-hero h2{font-size:30px;line-height:1.05;margin:10px 0;color:#fff}.tfm-onboarding-hero p{color:#dbe7dc;margin:0}.tfm-onboarding-steps{display:grid;gap:10px}.tfm-onboarding-steps>div{display:grid;grid-template-columns:38px 1fr;column-gap:12px;align-items:center;background:#fff;border:1px solid #e5eee0;border-radius:18px;padding:14px}.tfm-onboarding-steps b{grid-row:span 2;width:34px;height:34px;border-radius:12px;background:var(--tfm-green);display:grid;place-items:center;color:#07110b}.tfm-onboarding-steps strong{font-size:15px}.tfm-onboarding-steps span{font-size:13px;color:#778176}.tfm-bars,.tfm-bars-large,.tfm-chart-placeholder{display:none!important}
@media(max-width:960px){.tfm-analytics-board,.tfm-onboarding-dashboard{grid-template-columns:1fr}.tfm-insight-row{grid-template-columns:1fr}.tfm-trend-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.tfm-onboarding-hero h2{font-size:24px}}

/* v1.8.25 Members workspace drawer rebuild */
.tfm-members-workspace{display:grid;gap:22px}.tfm-member-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.tfm-member-kpis article{background:#fff;border:1px solid rgba(7,17,11,.08);border-radius:22px;padding:18px 20px;box-shadow:0 16px 40px rgba(7,17,11,.05)}.tfm-member-kpis span{display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#607062;font-weight:750}.tfm-member-kpis strong{display:block;font-size:30px;line-height:1.05;margin:10px 0 4px;color:#08120b;font-weight:650}.tfm-member-kpis small{display:block;color:#758176;font-size:13px}.tfm-members-card{overflow:hidden}.tfm-members-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 24px;border-bottom:1px solid rgba(7,17,11,.08)}.tfm-members-toolbar h3{margin:0;font-size:20px;font-weight:650;color:#0b130d}.tfm-members-toolbar p{margin:4px 0 0;color:#728074;font-size:14px}.tfm-members-actions{display:flex;align-items:center;gap:10px}.tfm-member-search{width:min(380px,40vw);height:44px;border-radius:999px;border:1px solid rgba(7,17,11,.12);background:#fff;padding:0 16px;font-size:14px;outline:none}.tfm-member-search:focus{border-color:#7ed957;box-shadow:0 0 0 4px rgba(126,217,87,.16)}.tfm-member-table-wrap{overflow:auto}.tfm-members-table{width:100%;border-collapse:separate;border-spacing:0}.tfm-members-table th{background:#f1f7ee;color:#607062;text-transform:uppercase;letter-spacing:.12em;font-size:11px;text-align:left;padding:14px 18px;font-weight:800}.tfm-members-table td{padding:16px 18px;border-bottom:1px solid rgba(7,17,11,.07);vertical-align:middle;color:#162018}.tfm-members-table tr{cursor:pointer;transition:background .15s ease}.tfm-members-table tbody tr:hover{background:#fbfef9}.tfm-members-table td small,.tfm-members-table td span+small{display:block;color:#748075;font-size:12px;margin-top:3px}.tfm-member-identity{display:flex;align-items:center;gap:12px}.tfm-member-avatar{width:38px;height:38px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#62d53f;color:#06100a;font-weight:800;flex:0 0 auto}.tfm-member-avatar-lg{width:58px;height:58px;font-size:22px}.tfm-status-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:750;background:#eef3ef;color:#647066}.tfm-status-active{background:rgba(126,217,87,.18);color:#237017}.tfm-status-pending{background:#fff7d6;color:#8b6500}.tfm-status-expired,.tfm-status-suspended{background:#ffe9e9;color:#a12b2b}.tfm-view-member{border:1px solid rgba(7,17,11,.12);background:#fff;border-radius:999px;padding:8px 13px;font-weight:700;cursor:pointer}.tfm-view-member:hover{background:#07110b;color:#fff}.tfm-member-empty{padding:42px 24px;display:grid;gap:10px;place-items:center;text-align:center}.tfm-member-empty strong{font-size:22px}.tfm-member-empty span{max-width:560px;color:#6f7c71}.tfm-member-drawer-overlay{position:fixed;inset:0;background:rgba(7,17,11,.36);opacity:0;visibility:hidden;transition:.2s ease;z-index:9997}.tfm-member-drawer{position:fixed;top:0;right:0;width:min(540px,100vw);height:100vh;background:#fff;box-shadow:-30px 0 70px rgba(7,17,11,.18);transform:translateX(105%);transition:.24s ease;z-index:9998;display:flex;flex-direction:column}.tfm-member-drawer.is-open{transform:translateX(0)}.tfm-member-drawer-overlay.is-open{opacity:1;visibility:visible}.tfm-member-drawer-close{position:absolute;top:16px;right:16px;width:38px;height:38px;border-radius:999px;border:1px solid rgba(7,17,11,.1);background:#f7faf6;font-size:24px;line-height:1;cursor:pointer;z-index:2}.tfm-member-drawer-body{height:100%;overflow:auto;padding:26px}.tfm-member-drawer-head{display:flex;align-items:center;gap:14px;padding-right:42px;margin-bottom:18px}.tfm-member-drawer-head small{display:block;color:#2f9224;text-transform:uppercase;font-size:11px;letter-spacing:.12em;font-weight:800}.tfm-member-drawer-head h2{margin:3px 0;font-size:24px;line-height:1.1;font-weight:700}.tfm-member-drawer-head p{margin:0;color:#6e786f}.tfm-member-drawer-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0 18px}.tfm-member-drawer-stats article{background:#f4faf1;border:1px solid rgba(126,217,87,.2);border-radius:18px;padding:14px}.tfm-member-drawer-stats span{display:block;font-size:11px;color:#607062;text-transform:uppercase;letter-spacing:.1em;font-weight:800}.tfm-member-drawer-stats strong{display:block;margin-top:6px;font-size:16px;line-height:1.2}.tfm-drawer-section{border:1px solid rgba(7,17,11,.08);border-radius:20px;padding:18px;margin-bottom:14px;background:#fff}.tfm-drawer-section h4{margin:0 0 12px;font-size:15px;font-weight:750}.tfm-drawer-section dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}.tfm-drawer-section dt{font-size:11px;color:#6c776d;text-transform:uppercase;letter-spacing:.1em;font-weight:800}.tfm-drawer-section dd{margin:3px 0 0;color:#101912;font-weight:600;word-break:break-word}.tfm-drawer-section p{margin:10px 0 0;color:#6e786f}.tfm-drawer-form{display:grid;gap:12px}.tfm-drawer-form select{width:100%;height:44px;border-radius:14px;border:1px solid rgba(7,17,11,.12);padding:0 12px;background:#fff}.tfm-drawer-actions-row{display:flex;gap:8px;flex-wrap:wrap}.tfm-drawer-actions-row a{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:10px 13px;background:#07110b;color:#fff;text-decoration:none;font-weight:700;font-size:13px}.tfm-member-drawer-empty{display:grid;place-items:center;height:100%;color:#6e786f;text-align:center}.tfm-member-drawer-empty strong{color:#101912;font-size:20px}@media(max-width:900px){.tfm-member-kpis{grid-template-columns:repeat(2,1fr)}.tfm-members-toolbar{align-items:stretch;flex-direction:column}.tfm-members-actions{flex-direction:column;align-items:stretch}.tfm-member-search{width:100%}.tfm-members-table{min-width:760px}.tfm-member-drawer-body{padding:22px 18px}.tfm-drawer-section dl{grid-template-columns:1fr}}@media(max-width:560px){.tfm-member-kpis{grid-template-columns:1fr}.tfm-member-drawer{width:100vw}.tfm-member-drawer-stats{grid-template-columns:1fr}.tfm-member-drawer-head h2{font-size:21px}}

/* v1.8.26 proper members workspace rebuild - isolated clean layout */
.tfm-members-v2,
.tfm-members-v2 *{box-sizing:border-box}
.tfm-members-v2{display:grid!important;gap:18px!important;width:100%!important;max-width:100%!important;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;color:#101912!important}
.tfm-members-v2__stats{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;margin:10px 0 2px!important}
.tfm-members-v2__stat{display:block!important;background:#fff!important;border:1px solid rgba(7,17,11,.08)!important;border-radius:20px!important;padding:16px 18px!important;box-shadow:0 14px 38px rgba(7,17,11,.045)!important;min-height:112px!important}
.tfm-members-v2__stat span{display:block!important;font-size:11px!important;line-height:1.2!important;letter-spacing:.12em!important;text-transform:uppercase!important;color:#617064!important;font-weight:760!important;margin:0!important}
.tfm-members-v2__stat strong{display:block!important;font-size:28px!important;line-height:1!important;font-weight:640!important;color:#07110b!important;margin:12px 0 6px!important}
.tfm-members-v2__stat small{display:block!important;font-size:12.5px!important;line-height:1.35!important;color:#748076!important;margin:0!important}
.tfm-members-v2__layout{display:grid!important;grid-template-columns:minmax(0,1fr) 390px!important;gap:16px!important;align-items:start!important;width:100%!important}
.tfm-members-v2__main,.tfm-members-v2__drawer{background:#fff!important;border:1px solid rgba(7,17,11,.08)!important;border-radius:22px!important;box-shadow:0 18px 45px rgba(7,17,11,.045)!important;overflow:hidden!important;min-width:0!important}
.tfm-members-v2__drawer{position:sticky!important;top:96px!important;min-height:520px!important;max-height:calc(100vh - 120px)!important;overflow:auto!important;padding:18px!important}
.tfm-members-v2__toolbar{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;padding:20px 22px!important;border-bottom:1px solid rgba(7,17,11,.08)!important;background:linear-gradient(180deg,#fff,#fbfdf9)!important}
.tfm-members-v2__toolbar h3{font-size:20px!important;line-height:1.15!important;font-weight:650!important;color:#111a13!important;margin:0!important}
.tfm-members-v2__toolbar p{font-size:13.5px!important;line-height:1.4!important;color:#6d786f!important;margin:5px 0 0!important}
.tfm-members-v2__actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;min-width:0!important}
.tfm-member-search-v2,.tfm-member-filter-v2{height:42px!important;border:1px solid rgba(7,17,11,.12)!important;background:#fff!important;border-radius:999px!important;box-shadow:none!important;outline:none!important;font-size:13.5px!important;line-height:1!important;color:#152018!important;padding:0 14px!important;font-weight:450!important;min-width:0!important}
.tfm-member-search-v2{width:280px!important;max-width:34vw!important}
.tfm-member-filter-v2{width:132px!important;appearance:auto!important;-webkit-appearance:auto!important}
.tfm-member-search-v2:focus,.tfm-member-filter-v2:focus{border-color:#7ed957!important;box-shadow:0 0 0 4px rgba(126,217,87,.14)!important}
.tfm-members-v2__table-wrap{width:100%!important;overflow:auto!important}
.tfm-members-v2__table{width:100%!important;border-collapse:separate!important;border-spacing:0!important;margin:0!important;table-layout:auto!important}
.tfm-members-v2__table thead th{background:#f2f8ef!important;color:#5e6f60!important;text-align:left!important;text-transform:uppercase!important;letter-spacing:.12em!important;font-size:10.5px!important;line-height:1.2!important;font-weight:800!important;padding:13px 16px!important;border:0!important;white-space:nowrap!important}
.tfm-members-v2__table tbody td{padding:15px 16px!important;border:0!important;border-bottom:1px solid rgba(7,17,11,.07)!important;vertical-align:middle!important;color:#18221a!important;font-size:13.5px!important;line-height:1.35!important;background:#fff!important}
.tfm-members-v2__table tbody tr{cursor:pointer!important;transition:background .16s ease, box-shadow .16s ease!important}
.tfm-members-v2__table tbody tr:hover td,.tfm-members-v2__table tbody tr.is-active td{background:#fbfef9!important}
.tfm-members-v2__table td b,.tfm-members-v2__table td strong{display:block!important;font-size:13.8px!important;font-weight:620!important;color:#101912!important;line-height:1.25!important;margin:0!important}
.tfm-members-v2__table td small{display:block!important;font-size:12px!important;line-height:1.3!important;color:#778178!important;margin:3px 0 0!important;font-weight:420!important}
.tfm-members-v2__identity{display:flex!important;align-items:center!important;gap:11px!important;min-width:190px!important}
.tfm-members-v2__avatar{width:36px!important;height:36px!important;border-radius:999px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;background:#65d847!important;color:#07110b!important;font-size:14px!important;font-weight:800!important;flex:0 0 auto!important;box-shadow:0 8px 22px rgba(101,216,71,.22)!important}
.tfm-members-v2__avatar--lg{width:58px!important;height:58px!important;font-size:22px!important}
.tfm-members-v2__pill{display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:6px 10px!important;border-radius:999px!important;background:#eef3ef!important;color:#627064!important;font-size:11.5px!important;font-weight:720!important;line-height:1!important;white-space:nowrap!important}
.tfm-members-v2__pill--active{background:rgba(126,217,87,.18)!important;color:#237017!important}
.tfm-members-v2__pill--pending{background:#fff7d6!important;color:#806300!important}
.tfm-members-v2__pill--expired,.tfm-members-v2__pill--suspended{background:#ffeaea!important;color:#9e2a2a!important}
.tfm-members-v2__view{border:1px solid rgba(7,17,11,.12)!important;background:#fff!important;color:#101912!important;border-radius:999px!important;padding:8px 12px!important;font-size:12.5px!important;font-weight:700!important;line-height:1!important;cursor:pointer!important;white-space:nowrap!important}
.tfm-members-v2__view:hover{background:#07110b!important;color:#fff!important}
.tfm-members-v2__empty{min-height:340px!important;padding:42px 24px!important;display:grid!important;place-items:center!important;text-align:center!important;gap:10px!important;background:#fff!important}
.tfm-members-v2__empty-icon{width:54px!important;height:54px!important;border-radius:18px!important;background:#f0faec!important;display:grid!important;place-items:center!important;font-size:24px!important;color:#237017!important}
.tfm-members-v2__empty strong{font-size:20px!important;line-height:1.2!important;font-weight:650!important;margin:0!important;color:#101912!important}
.tfm-members-v2__empty span{font-size:13.5px!important;line-height:1.45!important;color:#6e786f!important;max-width:520px!important}
.tfm-members-v2__drawer-empty{height:480px!important;display:grid!important;place-items:center!important;text-align:center!important;gap:6px!important;color:#6e786f!important;padding:24px!important}
.tfm-members-v2__drawer-empty strong{display:block!important;color:#101912!important;font-size:18px!important;font-weight:650!important;margin:0!important}
.tfm-members-v2__drawer-empty span{display:block!important;font-size:13.5px!important;line-height:1.45!important;max-width:280px!important;margin:0!important}
.tfm-member-profile-v2{display:grid!important;gap:14px!important}
.tfm-member-profile-v2__head{display:flex!important;align-items:center!important;gap:13px!important;padding-bottom:14px!important;border-bottom:1px solid rgba(7,17,11,.08)!important}
.tfm-member-profile-v2__head small{display:block!important;font-size:10.5px!important;letter-spacing:.12em!important;text-transform:uppercase!important;color:#2f9224!important;font-weight:820!important;margin:0!important}
.tfm-member-profile-v2__head h2{font-size:22px!important;line-height:1.08!important;font-weight:680!important;margin:3px 0!important;color:#101912!important}
.tfm-member-profile-v2__head p{font-size:13px!important;line-height:1.3!important;color:#6f7a70!important;margin:0!important;word-break:break-word!important}
.tfm-member-profile-v2__mini{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:9px!important}
.tfm-member-profile-v2__mini article{background:#f4faf1!important;border:1px solid rgba(126,217,87,.22)!important;border-radius:16px!important;padding:12px!important;min-width:0!important}
.tfm-member-profile-v2__mini span,.tfm-member-profile-v2__dl span{display:block!important;font-size:10.5px!important;letter-spacing:.1em!important;text-transform:uppercase!important;color:#6a766b!important;font-weight:800!important;margin:0 0 5px!important}
.tfm-member-profile-v2__mini strong{display:block!important;font-size:14px!important;line-height:1.2!important;font-weight:680!important;color:#101912!important;word-break:break-word!important}
.tfm-member-profile-v2__section{border:1px solid rgba(7,17,11,.08)!important;border-radius:18px!important;padding:15px!important;background:#fff!important;margin:0!important}
.tfm-member-profile-v2__section h4{font-size:14px!important;line-height:1.2!important;font-weight:700!important;color:#101912!important;margin:0 0 12px!important}
.tfm-member-profile-v2__dl{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
.tfm-member-profile-v2__dl strong{display:block!important;font-size:13px!important;line-height:1.3!important;font-weight:580!important;color:#151f17!important;word-break:break-word!important}
.tfm-member-profile-v2__section p{font-size:13px!important;line-height:1.45!important;color:#657166!important;margin:12px 0 0!important}
.tfm-member-profile-v2__form{display:grid!important;gap:12px!important;margin:0!important}
.tfm-member-profile-v2__form label{display:grid!important;gap:6px!important;font-size:12px!important;font-weight:650!important;color:#101912!important;margin:0!important}
.tfm-member-profile-v2__form select{width:100%!important;height:42px!important;border-radius:13px!important;border:1px solid rgba(7,17,11,.12)!important;background:#fff!important;padding:0 12px!important;font-size:13px!important;color:#101912!important;appearance:auto!important;-webkit-appearance:auto!important}
.tfm-member-profile-v2__actions{display:flex!important;gap:8px!important;flex-wrap:wrap!important}
.tfm-member-profile-v2__actions a{display:inline-flex!important;align-items:center!important;justify-content:center!important;border-radius:999px!important;background:#07110b!important;color:#fff!important;text-decoration:none!important;padding:9px 12px!important;font-size:12.5px!important;font-weight:700!important;line-height:1!important}
@media(max-width:1180px){.tfm-members-v2__layout{grid-template-columns:1fr!important}.tfm-members-v2__drawer{position:relative!important;top:auto!important;max-height:none!important;min-height:280px!important}.tfm-members-v2__stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}.tfm-members-v2__actions{justify-content:flex-start!important;flex-wrap:wrap!important}.tfm-member-search-v2{max-width:none!important;width:280px!important}}
@media(max-width:760px){.tfm-members-v2{gap:14px!important}.tfm-members-v2__stats{grid-template-columns:1fr!important;gap:10px!important}.tfm-members-v2__stat{min-height:92px!important;border-radius:16px!important;padding:14px!important}.tfm-members-v2__stat strong{font-size:24px!important}.tfm-members-v2__toolbar{display:grid!important;padding:16px!important;border-radius:0!important}.tfm-members-v2__actions{display:grid!important;grid-template-columns:1fr!important;width:100%!important}.tfm-member-search-v2,.tfm-member-filter-v2{width:100%!important;max-width:none!important}.tfm-members-v2__table{min-width:760px!important}.tfm-members-v2__main,.tfm-members-v2__drawer{border-radius:16px!important}.tfm-member-profile-v2__mini,.tfm-member-profile-v2__dl{grid-template-columns:1fr!important}.tfm-member-profile-v2__head h2{font-size:20px!important}}
