@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}}
