/* leafactivity design system — visual layer only (loaded last). Fonts: Inter + Poppins, SIL OFL 1.1 */
@font-face{font-family:"LT Inter";src:url(fonts/Inter-var.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"LT Poppins";src:url(fonts/Poppins-SemiBold.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"LT Poppins";src:url(fonts/Poppins-Bold.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"LT Poppins";src:url(fonts/Poppins-ExtraBold.woff2) format("woff2");font-weight:800 900;font-display:swap}
:root{
  --lt-leaf:#16a34a; --lt-leaf-2:#22c55e; --lt-deep:#052e1a; --lt-deep-2:#0b3d24;
  --lt-a1:#16a34a; --lt-a2:#0ea5e9; --lt-a3:#84cc16; /* per-app mesh colors */
  --lt-surface:rgba(255,255,255,.82); --lt-border:rgba(15,40,25,.08);
  --lt-shadow:0 1px 2px rgba(5,46,26,.06),0 8px 24px -6px rgba(5,46,26,.14);
  --lt-shadow-lg:0 2px 4px rgba(5,46,26,.06),0 18px 40px -10px rgba(5,46,26,.25);
  --lt-r:20px; --lt-ease:cubic-bezier(.2,.8,.2,1);
  --lt-font:"LT Inter",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --lt-display:"LT Poppins","LT Inter",system-ui,sans-serif;
  --lt-noise:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .05 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  --lt-header:linear-gradient(135deg,#04261a 0%,#0b4a2c 55%,#11663a 100%);
}
html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
html,body{background-color:#f3f8f4}
body{font-family:var(--lt-font)!important;letter-spacing:-.006em;
  background-image:var(--lt-noise),
   radial-gradient(60vmax 50vmax at 0% 0%,color-mix(in srgb,var(--lt-a1) 22%,transparent),transparent 60%),
   radial-gradient(55vmax 45vmax at 100% 10%,color-mix(in srgb,var(--lt-a2) 16%,transparent),transparent 60%),
   radial-gradient(70vmax 50vmax at 50% 105%,color-mix(in srgb,var(--lt-a3) 18%,transparent),transparent 65%),
   linear-gradient(180deg,#f6fbf7 0%,#eef6f1 100%)!important;
  background-attachment:fixed!important;background-repeat:repeat,no-repeat,no-repeat,no-repeat,no-repeat!important}
button,input,select,textarea{font-family:inherit}
h1,h2,h3,.hero h1{font-family:var(--lt-display);letter-spacing:-.02em}
h1{font-weight:800}
::selection{background:color-mix(in srgb,var(--lt-leaf) 30%,transparent)}
/* cards */
.card,.summary.soft,.section.card,.job-card,.mapcard,.crew-card,.tier,.est,.item,.box,.authbox,.mbox,.modal>div{
  border-radius:var(--lt-r)!important;border:1px solid var(--lt-border)!important;
  box-shadow:var(--lt-shadow)!important;transition:transform .25s var(--lt-ease),box-shadow .25s var(--lt-ease)}
.card,.job-card,.mapcard,.crew-card,.tier,.est,.item,.box,.authbox{background:var(--lt-surface)!important;
  -webkit-backdrop-filter:blur(14px) saturate(1.4);backdrop-filter:blur(14px) saturate(1.4)}
@media (hover:hover){.card:hover,.tier:hover,.est:hover{box-shadow:var(--lt-shadow-lg)!important}}
/* buttons */
.btn{border-radius:14px!important;font-weight:650;letter-spacing:.005em;
  transition:transform .15s var(--lt-ease),box-shadow .2s var(--lt-ease),filter .2s}
.btn:not(.ghost):not(.alt):not(.dark):not(.gold){background:linear-gradient(135deg,var(--lt-leaf-2),var(--lt-leaf) 55%,#15803d)!important;color:#fff!important;
  box-shadow:0 1px 0 rgba(255,255,255,.25) inset,0 8px 20px -8px color-mix(in srgb,var(--lt-leaf) 80%,transparent)!important;border:0!important}
.btn.ghost,.btn.alt{background:rgba(255,255,255,.7)!important;border:1px solid color-mix(in srgb,var(--lt-leaf) 35%,transparent)!important;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.btn.dark{background:linear-gradient(135deg,#0b2e1d,#123f29)!important;color:#fff!important}
.btn.gold{background:linear-gradient(135deg,#fde68a,#f59e0b)!important;color:#3b2500!important;border:0!important}
@media (hover:hover){.btn:hover{transform:translateY(-1px);filter:brightness(1.04)}}
.btn:active{transform:translateY(1px) scale(.99)!important}
/* inputs */
.input,input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),select,textarea{
  border-radius:14px!important;border:1px solid rgba(15,40,25,.14)!important;background:rgba(255,255,255,.9)!important;
  transition:border-color .2s,box-shadow .2s}
.input:focus,input:focus,select:focus,textarea:focus{outline:none!important;border-color:var(--lt-leaf)!important;
  box-shadow:0 0 0 4px color-mix(in srgb,var(--lt-leaf) 20%,transparent)!important}
:focus-visible{outline:3px solid color-mix(in srgb,var(--lt-leaf) 70%,#fff)!important;outline-offset:2px}
/* chips / pills */
.chip,.pill,.letters a,.chips a,.tag,.badge{border-radius:999px!important;transition:all .2s var(--lt-ease)}
.chip,.letters a,.chips a{background:rgba(255,255,255,.75)!important;border:1px solid rgba(15,40,25,.1)!important;box-shadow:0 1px 2px rgba(5,46,26,.06)}
.chip.on,.letters a.on,.chips a.on{background:linear-gradient(135deg,var(--lt-leaf-2),var(--lt-leaf))!important;color:#fff!important;border-color:transparent!important;
  box-shadow:0 6px 14px -6px color-mix(in srgb,var(--lt-leaf) 80%,transparent)!important}
/* sheets / toast */
.sheet{border-radius:26px 26px 0 0!important;box-shadow:0 -20px 50px -10px rgba(0,0,0,.3)!important}
.sheet-bg,.overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.toast{border-radius:16px!important;box-shadow:var(--lt-shadow-lg)!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
/* entrance micro-animation */
@keyframes ltRise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.card,.summary,.job-card,.tier,.est,.hero,.mapcard{animation:ltRise .5s var(--lt-ease) both}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
html body .band input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),html body .band select{background:rgba(255,255,255,.12)!important;color:inherit!important;border-color:rgba(255,255,255,.3)!important}
.disp,.hero h1.disp{font-family:inherit}
