@property --leaf-sway{
  syntax:"<angle>";
  initial-value:0deg;
  inherits:false;
}

:root{
  --tropic-bg:#f7f8ef;
  --tropic-bg-2:#eef3e7;
  --tropic-card:#fffef8;
  --tropic-border:#dfe8d7;
  --tropic-ink:#213c2c;
  --tropic-ink-2:#5d715f;
  --tropic-ink-3:#8d9d8f;
  --tropic-green:#2f7a4f;
  --tropic-green-2:#5aa774;
  --tropic-gold:#c98f2b;
  --tropic-shadow:0 18px 48px rgba(47,122,79,.12);
  --bg:var(--tropic-bg);
  --bg-2:var(--tropic-bg-2);
  --card:rgba(255,254,248,.78);
  --card2:rgba(255,255,255,.62);
  --surface:#fffef8;
  --border:var(--tropic-border);
  --border-hover:rgba(47,122,79,.34);
  --ink:var(--tropic-ink);
  --ink-2:var(--tropic-ink-2);
  --ink-3:var(--tropic-ink-3);
  --ink-dim:rgba(93,113,95,.78);
  --ink-faint:rgba(93,113,95,.56);
  --indigo:var(--tropic-green);
  --purple:var(--tropic-green-2);
  --cyan:var(--tropic-gold);
  --pink:#d28f7c;
  --amber:var(--tropic-gold);
  --green:#37b26c;
  --neon-indigo:var(--tropic-green);
  --neon-cyan:var(--tropic-gold);
  --neon-purple:var(--tropic-green-2);
  --brand-grad:linear-gradient(135deg,#2f7a4f,#5aa774 58%,#c98f2b);
  --text-grad:linear-gradient(135deg,#244c35,#3f8e5e 52%,#c98f2b);
  --glow:0 14px 32px rgba(47,122,79,.14);
  --primary:#3f8e5e;
  --primary-dark:#2f7a4f;
  --primary-light:#e6f2e8;
  --header-gradient:linear-gradient(135deg,#2f7a4f,#5aa774);
  --text-primary:#213c2c;
  --text-secondary:#6a7a6c;
  --text-tertiary:#9aaa9c;
}

html{
  background:var(--tropic-bg);
  position:relative;
}

html::before{
  content:"";
  position:fixed;
  inset:-2vh -2vw;
  z-index:1;
  pointer-events:none;
  opacity:.58;
  background:url("tropical-plants.svg?v=2") center / 100% 100% no-repeat;
  filter:saturate(1.04);
  animation:tropicalBreath 9s ease-in-out infinite alternate;
  display:none;
}

body{
  background:
    url("tropical-plants.svg?v=2") fixed center / 124% 100% no-repeat,
    linear-gradient(180deg,rgba(247,248,239,.96),rgba(238,243,231,.94)) !important;
  color:var(--tropic-ink);
  position:relative;
  isolation:isolate;
}

body::before,
body::after{
  content:"";
  position:fixed;
  z-index:1;
  pointer-events:none;
  filter:saturate(1.04);
}

body::before{
  display:none;
}

body::after{
  inset:0;
  opacity:.55;
  background:
    linear-gradient(rgba(47,122,79,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(47,122,79,.035) 1px,transparent 1px);
  background-size:72px 72px;
  mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,#000 30%,transparent 80%);
  -webkit-mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,#000 30%,transparent 80%);
}

body > *{
  position:relative;
  z-index:2;
}

@keyframes tropicalBreath{
  from{transform:scale(1) translateY(0)}
  to{transform:scale(1.015) translateY(-6px)}
}

.doc-header,
.topbar{
  background:rgba(247,248,239,.9) !important;
  border-bottom:1px solid var(--tropic-border) !important;
  box-shadow:0 8px 28px rgba(47,122,79,.06);
}

.doc-title,
.topbar .brand,
.topbar .brand b{
  color:var(--tropic-ink) !important;
  -webkit-text-fill-color:initial !important;
}

.back,
.backlink{
  color:var(--tropic-ink-2) !important;
  border-color:var(--tropic-border) !important;
  background:rgba(255,255,255,.45) !important;
}

.back:hover,
.backlink:hover{
  color:var(--tropic-green) !important;
  border-color:rgba(47,122,79,.34) !important;
  box-shadow:0 10px 24px rgba(47,122,79,.12) !important;
}

.doc-meta h1,
.hero h1{
  background:linear-gradient(135deg,#244c35,#3f8e5e 58%,#c98f2b) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
}

.hero::before{
  background:
    radial-gradient(circle at 34% 54%,rgba(47,122,79,.16),transparent 62%),
    radial-gradient(circle at 68% 42%,rgba(201,143,43,.10),transparent 58%) !important;
  filter:blur(28px) saturate(1.02) !important;
  opacity:1 !important;
}

.hero .kicker{
  color:var(--tropic-gold) !important;
  border-color:rgba(201,143,43,.34) !important;
  background:rgba(201,143,43,.07) !important;
}

.doc-meta .subtitle,
.hero .sub,
.meta-chip,
.model-pill{
  color:var(--tropic-ink-2) !important;
}

.section,
h1.section,
h2.section,
h3.section{
  color:var(--tropic-green) !important;
}

.card,
.persona-card,
.analysis-card,
.insight-card,
.bubble,
.panel,
.table-wrap,
.page-item,
.report,
.conv-card{
  background:rgba(255,254,248,.78) !important;
  border-color:var(--tropic-border) !important;
  box-shadow:var(--tropic-shadow);
}

table{
  background:rgba(255,254,248,.74) !important;
  border-color:var(--tropic-border) !important;
}

th{
  background:rgba(47,122,79,.08) !important;
  color:var(--tropic-green) !important;
}

td,
p,
li,
.bubble,
.msg-text{
  color:var(--tropic-ink-2);
}

strong,
.persona-card .p-name,
.section-title{
  color:var(--tropic-ink);
}

a,
.tab-item.active,
.btn-ghost{
  color:var(--tropic-green) !important;
}

.btn-primary,
.tab.active{
  background:linear-gradient(135deg,#2f7a4f,#5aa774) !important;
  color:#fff !important;
}

.phone{
  box-shadow:0 28px 80px rgba(47,122,79,.18),0 0 0 1px rgba(47,122,79,.10) !important;
}

@media(max-width:640px){
  html::before{opacity:.34;background-size:150% 100%;background-position:center top}
  body{background-size:134% 100%,auto !important}
  body::after{opacity:.38}
}
