/* ============================================================================
   coach-forest-bloom.css — "Forest Bloom · soft green" (approved 2026-11-05)
   The DEFAULT coach look. LOOK ONLY: no markup, ids, data-*, handlers or APIs.
   Scope: every rule hangs off html.fb-on, which coach-forest-bloom.js sets ONLY
   when the coach palette is the default green (no [data-palette] or "green").
   A coach on mono / blue / pink / warm never gets this layer.
   Source of truth: claude-review/2026-11-05-forest-bloom/coach-bloom-light/fb-coach.js
   ========================================================================== */

/* ---- tokens (green palette only) ---------------------------------------- */
html.fb-on:root{
  --fb-forest:#263D30; --fb-deep:#16291E; --fb-lime:#C9E46B; --fb-glow:rgba(201,228,107,.75);
  --fb-ink:#1F2A23; --fb-muted:rgba(38,61,48,.55); --fb-line:rgba(38,61,48,.08);
  --fb-glass:linear-gradient(160deg,rgba(255,255,255,.8),rgba(255,255,255,.58) 60%,rgba(240,247,226,.55));
  --fb-seg:rgba(255,255,255,.66);
  --fb-glass-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 18px 36px -24px rgba(24,52,36,.22);
  --fb-slab:radial-gradient(70% 90% at 0% 100%,#3F7A55,transparent),radial-gradient(60% 80% at 100% 0%,rgba(201,228,107,.45),transparent),linear-gradient(135deg,#1F3528,#263D30 50%,#2F5A40);
  --fb-slab-shadow:inset 0 1px 0 rgba(226,242,170,.6),inset 0 0 0 1px rgba(201,228,107,.25),0 28px 46px -24px rgba(14,46,30,.7);
  --fb-solid:radial-gradient(120% 140% at 30% 0%,#3B6A4D,#263D30 55%,#1A2E22);
  --fb-solid-shadow:inset 0 1px 0 rgba(226,242,170,.45),0 0 0 1px rgba(201,228,107,.2),0 12px 26px -12px rgba(14,46,30,.7);
  --fb-tile:radial-gradient(120% 120% at 20% 10%,#3E6A4E,#263D30 55%,#16291E);
  --fb-tile-cream:radial-gradient(120% 120% at 20% 10%,#F4FAE0,#DCEBB0);
  /* static bloom paint for full-screen sheets that must stay opaque over the tab */
  --fb-paint:radial-gradient(70% 38% at 0% 0%,rgba(224,239,184,.95),transparent 72%),radial-gradient(60% 34% at 100% 36%,rgba(201,227,210,.9),transparent 72%),radial-gradient(70% 38% at 0% 78%,rgba(227,239,210,.9),transparent 72%),radial-gradient(50% 28% at 100% 100%,rgba(181,214,192,.6),transparent 72%),#E9F2E1;
  /* palette tokens re-tuned to the approved values */
  --bg:#E9F2E1; --primary:#263D30; --accent:#C9E46B; --on-accent:#263D30; --line:rgba(38,61,48,.09);
}

/* ---- the background field (one per document; injected by the js) --------- */
html.fb-on{background:#E9F2E1!important} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
html.fb-on body{background:transparent!important}
html.fb-on .fbf{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;
  background:radial-gradient(60% 50% at 20% 20%,#F1F6E4,transparent),radial-gradient(50% 50% at 85% 80%,#EAF3EC,transparent),#E9F2E1} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
html.fb-on .fbf i{position:absolute;border-radius:50%;filter:blur(60px);animation:fbdrift 20s ease-in-out infinite alternate;opacity:.85}
html.fb-on .fbf i:nth-child(1){width:380px;height:380px;left:-150px;top:-120px;background:#E0EFB8} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
html.fb-on .fbf i:nth-child(2){width:300px;height:300px;right:-140px;top:230px;background:#C9E3D2;animation-duration:25s;animation-direction:alternate-reverse} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
html.fb-on .fbf i:nth-child(3){width:340px;height:340px;left:-110px;top:560px;background:#E3EFD2;animation-duration:29s} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
html.fb-on .fbf i:nth-child(4){width:230px;height:230px;right:-70px;bottom:-60px;background:#B5D6C0;opacity:.6;animation-duration:33s;animation-direction:alternate-reverse} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
html.fb-on .fbf .aur{position:absolute;left:-40%;top:-40%;width:180%;height:180%;filter:blur(64px);opacity:.3;mix-blend-mode:soft-light;
  background:conic-gradient(from 0deg,transparent,rgba(201,228,107,.6) 50deg,transparent 110deg,rgba(143,194,160,.5) 190deg,transparent 250deg,rgba(226,242,170,.55) 310deg,transparent);animation:fbspin 40s linear infinite} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
html.fb-on .fbf .hud{position:absolute;inset:0;background-image:radial-gradient(circle,rgba(38,61,48,.08) .8px,transparent 1.2px);background-size:18px 18px;
  -webkit-mask-image:radial-gradient(120% 55% at 50% 0%,#000,transparent 70%);mask-image:radial-gradient(120% 55% at 50% 0%,#000,transparent 70%)}
html.fb-on .fbf .grain{position:absolute;inset:0;opacity:.07;mix-blend-mode:multiply;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
@keyframes fbdrift{0%{transform:translate(0,0) scale(1)}50%{transform:translate(26px,-20px) scale(1.1)}100%{transform:translate(-22px,24px) scale(.95)}}
@keyframes fbspin{to{transform:rotate(360deg)}}
@keyframes fbsheen{0%{background-position:130% 0}55%,100%{background-position:-60% 0}}

/* page containers go see-through so the field shows (they used to paint var(--bg)) */
html.fb-on .shell,html.fb-on .topspace,html.fb-on .scroll,html.fb-on #home.view,
html.fb-on .csh-frame,html.fb-on .csh-tab-loading{background:transparent!important}

/* ============================== SHELL: dock + AI orb ======================= */
html.fb-on .csh-nav{background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(248,250,242,.76))!important; /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
  -webkit-backdrop-filter:blur(26px) saturate(1.5)!important;backdrop-filter:blur(26px) saturate(1.5)!important;
  border-radius:999px!important;border:0!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 22px 40px -20px rgba(16,40,26,.45)!important} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
html.fb-on .csh-nav::before{background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(201,228,107,.55) 28%,rgba(255,255,255,.2) 52%,rgba(143,194,160,.4) 78%,rgba(255,255,255,.9))!important; /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
  padding:1px;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
html.fb-on .csh-nav-item{color:rgba(38,61,48,.55)!important;font-weight:600!important;border-radius:999px!important; /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
  transition:transform .5s cubic-bezier(.34,1.56,.64,1),color .3s!important}
html.fb-on .csh-nav-item.active{color:#E6F5B0!important;transform:translateY(-8px)} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
html.fb-on .csh-nav-item.active svg{filter:drop-shadow(0 0 5px rgba(201,228,107,.8))}
html.fb-on .csh-lens{border-radius:999px!important;top:4px!important;bottom:4px!important;
  background:radial-gradient(120% 120% at 30% 0%,#3B6A4D,#263D30 60%,#1A2E22)!important; /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
  transform:translateY(-8px) scale(1.08);
  box-shadow:0 0 0 1px rgba(201,228,107,.55),0 0 24px -2px var(--fb-glow),0 14px 24px -10px rgba(14,36,24,.6)!important} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
html.fb-on .csh-nbadge{background:var(--fb-lime)!important;color:var(--fb-forest)!important}
/* the AI orb = the prototype's lime FAB orb with its spinning ring */
html.fb-on .cai-orb{width:70px!important;height:70px!important;border-radius:50%!important;
  background:radial-gradient(circle at 35% 30%,#F4FCD6,#C9E46B 52%,#86AE34)!important; /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
  box-shadow:0 0 0 4px rgba(255,255,255,.55),0 0 34px rgba(201,228,107,.85),0 16px 28px -12px rgba(14,46,30,.6)!important} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
html.fb-on .cai-orb .cai-aur{display:none!important}
html.fb-on .cai-orb > svg{fill:var(--fb-forest)!important;filter:none!important}
html.fb-on .cai-orb::before{content:"";position:absolute;inset:-7px;border-radius:50%;pointer-events:none;
  background:conic-gradient(from 0deg,#C9E46B,#8FC2A0,#263D30,#C9E46B); /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
  -webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 calc(100% - 1.5px));mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 calc(100% - 1.5px));
  animation:fbspin 6s linear infinite}
html.fb-on .cai-orb .cai-lk{box-shadow:0 0 0 2px #fff!important} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
html.fb-on .cai-sheet{background:var(--fb-paint)!important}
html.fb-on .cai-tile,html.fb-on .cai-ai,html.fb-on .cai-card,html.fb-on .cai-typing{background:var(--fb-glass)!important;box-shadow:var(--fb-glass-shadow)!important}
html.fb-on .cai-me,html.fb-on .cai-cta:not(.cai-danger),html.fb-on .cai-spark{background:var(--fb-solid)!important;box-shadow:var(--fb-solid-shadow)!important}
html.fb-on .cai-veil{background:rgba(14,34,22,.28)!important;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */

/* ============================== shared chrome =============================== */
/* icon buttons: forest solid = glowing forest orb · plain = frosted glass */
html.fb-on .hv2-plus,html.fb-on .hv2-av,html.fb-on .cv2-ib.solid,html.fb-on .lv2-ib.solid,html.fb-on .iv2-ib.solid,html.fb-on .lh-ib.solid{
  background:var(--fb-solid)!important;box-shadow:var(--fb-solid-shadow)!important;color:var(--fb-lime)!important}
html.fb-on .hv2-plus svg,html.fb-on .cv2-ib.solid svg,html.fb-on .lv2-ib.solid svg,html.fb-on .iv2-ib.solid svg,html.fb-on .lh-ib.solid svg{stroke:var(--fb-lime)!important}
html.fb-on .cv2-ib:not(.solid),html.fb-on .lv2-ib:not(.solid),html.fb-on .iv2-ib:not(.solid),html.fb-on .lh-ib:not(.solid),html.fb-on .chome .bell,html.fb-on .coach-acct-btn{
  background:rgba(255,255,255,.4)!important;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px); /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.7)!important;border:0!important;border-radius:50%!important} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
html.fb-on .coach-acct-btn{width:44px!important;height:44px!important;color:var(--fb-forest)!important}
/* section labels / meta text */
html.fb-on .chome>.subline,html.fb-on .chome .sec-head .link,html.fb-on .cv3-h span,html.fb-on .lv2-sec span{color:var(--fb-muted)!important}
html.fb-on .chome .sec-head h2,html.fb-on .chome .hv2-studio h2,html.fb-on .cv3-h b,html.fb-on .lv2-sec h2,html.fb-on #home .lh-sec h2{font-weight:500!important;font-size:21px!important;letter-spacing:-.02em!important}
/* toast */
html.fb-on #toast,html.fb-on .toast{background:rgba(255,255,255,.88)!important;color:var(--fb-forest)!important;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 14px 30px -14px rgba(14,36,24,.4)!important} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
/* scrims + bottom sheets */
html.fb-on .hv2-scrim,html.fb-on .coach-sb-overlay,html.fb-on .cw2-scrim{background:rgba(14,34,22,.28)!important;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
html.fb-on .hv2-sheet{background:linear-gradient(170deg,rgba(255,255,253,.95),rgba(249,251,244,.92))!important; /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
  -webkit-backdrop-filter:blur(30px) saturate(1.4);backdrop-filter:blur(30px) saturate(1.4);
  left:8px!important;right:8px!important;bottom:8px!important;border-radius:40px!important;box-shadow:0 30px 60px -20px rgba(14,36,24,.45)!important} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
html.fb-on .hv2-opt i{background:rgba(255,255,255,.7)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.9),0 6px 14px -10px rgba(14,36,24,.4)} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
/* account drawer: styled in coach-shared.js itself since 2026-11-05 (Forest Bloom sidebar) */

/* ============================== glass cards ================================= */
html.fb-on .chome .stack,html.fb-on .chome>.hv3-studio,html.fb-on #convList:not(:empty),html.fb-on .chub-ai,html.fb-on .chub-rows,html.fb-on .lh-next{
  position:relative;background:var(--fb-glass)!important;-webkit-backdrop-filter:blur(22px) saturate(1.35);backdrop-filter:blur(22px) saturate(1.35);
  box-shadow:var(--fb-glass-shadow)!important;border:0!important}
html.fb-on .chome .stack::after,html.fb-on .chome>.hv3-studio::after,html.fb-on .chub-ai::after,html.fb-on .chub-rows::after,html.fb-on .lh-next::after{
  content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;
  background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(201,228,107,.55) 28%,rgba(255,255,255,.2) 52%,rgba(143,194,160,.4) 78%,rgba(255,255,255,.9)); /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
html.fb-on .chome .stack,html.fb-on .chome>.hv3-studio{margin:6px 14px 0!important;padding:2px 14px!important;border-radius:30px!important;overflow:visible!important}
html.fb-on .chome .stack:empty{display:none}
html.fb-on .chome .stack .row,html.fb-on .chome .hv3-row{border-color:var(--fb-line)!important}
html.fb-on .chome .stack .row+.row{border-top:1px solid var(--fb-line)!important}

/* rows that are siblings under a heading (no wrapper): glass SEGMENTS that read as one card */
html.fb-on #clientList .client-row,html.fb-on #lv2Home .lv2-row,html.fb-on #sec-messages .iv4-groups{
  background:var(--fb-seg)!important;-webkit-backdrop-filter:blur(22px) saturate(1.35);backdrop-filter:blur(22px) saturate(1.35);
  margin:0 -6px!important;padding-left:14px!important;padding-right:14px!important;width:calc(100% + 12px)!important;box-sizing:border-box!important;
  border-radius:0!important;border-bottom:1px solid var(--fb-line)!important;box-shadow:inset 1px 0 0 rgba(255,255,255,.8),inset -1px 0 0 rgba(255,255,255,.8)!important} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
html.fb-on #clientList .cv3-h+.client-row,html.fb-on #clientList>.client-row:first-child,
html.fb-on #lv2Home .lv2-sec+.lv2-row,html.fb-on #sec-messages .iv4-groups{border-top-left-radius:30px!important;border-top-right-radius:30px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95),inset 1px 0 0 rgba(255,255,255,.8),inset -1px 0 0 rgba(255,255,255,.8)!important} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
html.fb-on #clientList .client-row:has(+ .cv3-h),html.fb-on #clientList .client-row:last-child,
html.fb-on #lv2Home .lv2-row:has(+ .lv2-sec),html.fb-on #lv2Home .lv2-row:has(+ :not(.lv2-row)),html.fb-on #lv2Home .lv2-row:last-child{
  border-bottom:0!important;border-bottom-left-radius:30px!important;border-bottom-right-radius:30px!important;
  box-shadow:inset 1px 0 0 rgba(255,255,255,.8),inset -1px 0 0 rgba(255,255,255,.8),0 18px 36px -24px rgba(24,52,36,.22)!important} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
html.fb-on #clientList .cv3-h+.client-row:has(+ .cv3-h),html.fb-on #clientList .cv3-h+.client-row:last-child,
html.fb-on #lv2Home .lv2-sec+.lv2-row:has(+ .lv2-sec),html.fb-on #lv2Home .lv2-sec+.lv2-row:last-child{border-radius:30px!important;
  box-shadow:var(--fb-glass-shadow),inset 0 0 0 1px rgba(255,255,255,.7)!important} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
/* inbox: groups row + the conversation list read as one card */
html.fb-on #sec-messages .iv4-groups{margin:6px 14px 0!important;width:calc(100% - 28px)!important;border-bottom:1px solid var(--fb-line)!important}
html.fb-on #sec-messages .iv4-groups+#convList:not(:empty){border-top-left-radius:0!important;border-top-right-radius:0!important}
html.fb-on #convList:not(:empty){margin:0 14px!important;padding:0 14px!important;border-radius:0 0 30px 30px!important}
html.fb-on #sec-messages>#convList:first-child{border-radius:30px!important}
html.fb-on #convList .conv-row{border-bottom-color:var(--fb-line)!important}
html.fb-on #convList .conv-row:last-child{border-bottom:0!important}

/* tiles (forest + cream) and avatars */
html.fb-on .hv3-tile:not(.cream),html.fb-on .lv2-th.tile:not(.cream),html.fb-on .chub-t:not(.c){background:var(--fb-tile)!important;box-shadow:inset 0 1px 0 rgba(226,242,170,.5),0 0 18px -6px var(--fb-glow)!important} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
html.fb-on .hv3-tile:not(.cream) svg,html.fb-on .lv2-th.tile:not(.cream) svg,html.fb-on .chub-t:not(.c) svg{filter:drop-shadow(0 0 6px rgba(201,228,107,.7))}
html.fb-on .hv3-tile.cream,html.fb-on .lv2-th.tile.cream,html.fb-on .chub-t.c,html.fb-on .iv4-groups .t{background:var(--fb-tile-cream)!important}
html.fb-on .lv2-th:not(.tile){border-radius:20px!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.5),0 10px 22px -14px rgba(14,36,24,.6)!important} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
html.fb-on .chome .stack .row .av.sm,html.fb-on .client-row .cl-av,html.fb-on .conv-av,html.fb-on .cf-av{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 0 0 3px rgba(255,255,255,.55),0 10px 20px -12px rgba(14,36,24,.5)!important} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
html.fb-on .client-row .cl-dot{box-shadow:0 0 0 3px #fff!important;border:0!important} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */

/* forest slabs: home pulse · Lab promise · client AI bar */
html.fb-on .chome .snap,html.fb-on .lh-promise,html.fb-on .cf-askai{position:relative;overflow:hidden;isolation:isolate;
  background:var(--fb-slab)!important;box-shadow:var(--fb-slab-shadow)!important;border:0!important}
html.fb-on .chome .snap,html.fb-on .lh-promise{border-radius:30px!important}
html.fb-on .cf-askai{border-radius:999px!important}
html.fb-on .chome .snap::after,html.fb-on .lh-promise::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:linear-gradient(115deg,transparent 30%,rgba(236,250,190,.22) 45%,transparent 60%);background-size:250% 100%;animation:fbsheen 7s cubic-bezier(.16,1,.3,1) infinite} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
html.fb-on .chome .snap .spill .v{font-size:40px!important;letter-spacing:-.04em!important}
html.fb-on .chome .snap .spill.alert .v{color:var(--fb-lime)!important;text-shadow:0 0 18px rgba(201,228,107,.7)}
html.fb-on .chome .snap .spill+.spill{border-left-color:rgba(201,228,107,.18)!important} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
html.fb-on .lh-promise h3 em{text-shadow:0 0 20px rgba(201,228,107,.5)}
html.fb-on .cf-askai-ic{background:rgba(201,228,107,.16)!important} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */

/* chips + underline tabs */
html.fb-on .cfq button{background:var(--fb-glass)!important;border:0!important;border-radius:999px!important;box-shadow:var(--fb-glass-shadow)!important}
html.fb-on .fpill.active::after,html.fb-on .stab.active::after{background:var(--fb-lime)!important;box-shadow:0 0 10px var(--fb-glow)}
html.fb-on .stab.active .tab-badge{background:var(--fb-lime)!important;color:var(--fb-forest)!important}
html.fb-on .chome .row .rev,html.fb-on .lh-next .go{box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 8px 20px -8px rgba(160,200,60,.8)} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
html.fb-on .lh-next .go{background:var(--fb-solid)!important}

/* ============================== client detail =============================== */
html.fb-on .detail-sheet{background:var(--fb-paint)!important}
html.fb-on .detail-sheet .main-panel{background:transparent!important}
html.fb-on .detail-sheet .sh-header{background:rgba(233,242,225,.72)!important;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)} /* skin-ok: Forest Bloom is scoped to html.fb-on (green palette only) — fixed brand values by design */
html.fb-on .chub-ai{border-radius:28px!important}
html.fb-on .chub-rows{border-radius:30px!important;padding:2px 14px!important;margin:0 -6px!important}
html.fb-on .chub-row{border-bottom-color:var(--fb-line)!important}
html.fb-on .chub-rows .chub-row:last-child{border-bottom:0!important}

/* ============================== Lab ========================================= */
html.fb-on .lh-next{border-radius:24px!important;overflow:hidden!important}
html.fb-on .lh-promise .lh-steps>div{background:rgba(255,255,255,.08)!important;box-shadow:inset 0 1px 0 rgba(226,242,170,.18)} /* skin-ok: palette-scoped Forest Bloom */
html.fb-on .lh-promise .bar i,html.fb-on .lh-promise .bar>*{box-shadow:0 0 10px var(--fb-glow)}

@media (prefers-reduced-motion:reduce){
  html.fb-on .fbf i,html.fb-on .fbf .aur,html.fb-on .chome .snap::after,html.fb-on .lh-promise::after,html.fb-on .cai-orb::before{animation:none}
}
