:root{
  --forest-ink:#132d26;
  --forest-canopy:#245a49;
  --forest-moss:#7f9e67;
  --forest-sun:#e7f58f;
  --forest-mist:#eff3ea;
  --forest-paper:#fbfaf5;
  --forest-line:#dce5dc;
}

body{background:var(--forest-paper)}
.membership-shell{background:var(--forest-paper)}
.membership-story,.auth-story{
  background-image:linear-gradient(145deg,rgba(8,37,30,.68),rgba(13,47,38,.2)),url('assets/auth-forest-tyndall.svg');
  background-position:center;
  background-size:cover;
}
.membership-story:before,.auth-story:before{opacity:.72}
.membership-panel{background:linear-gradient(140deg,#fbfaf5 0%,#f4f6ef 100%)}
.membership-card{width:min(460px,100%);border-color:rgba(36,90,73,.12);box-shadow:0 28px 90px rgba(19,45,38,.11)}
.seedling-mark{font:inherit}.seedling-mark svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.membership-card .eyebrow{color:#708a80}
.membership-card h2{color:var(--forest-ink)}
.membership-card .auth-copy{font-size:14px;color:#68756f}
.membership-card label{font-size:12px;color:#56655f}
.membership-card input,.membership-card textarea{font-size:15px;background:#fff;border-color:#d5ddd7}
.membership-card input:focus,.membership-card textarea:focus{border-color:var(--forest-canopy);box-shadow:0 0 0 3px rgba(36,90,73,.11)}
.membership-card form>button,.founder-enter{background:var(--forest-ink);min-height:50px;font-size:14px}
.membership-card form>button:hover,.founder-enter:hover{background:var(--forest-canopy)}

.first-arrival{margin-top:20px;padding-top:20px;gap:12px}
.first-arrival>div:first-child{display:grid;gap:5px}
.first-arrival>div:first-child b{font-size:14px;color:var(--forest-ink)}
.first-arrival>div:first-child span{font-size:12px;color:#7a8781}
.first-visit-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:0}
.first-visit-actions[hidden]{display:none}
.first-visit-actions a,.first-visit-actions button{
  min-height:76px;padding:14px 15px;border:1px solid var(--forest-line);border-radius:14px;background:#fff;color:var(--forest-ink);
  display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;place-items:initial;text-align:left;text-decoration:none;cursor:pointer;
}
.first-visit-actions a{background:var(--forest-mist);border-color:#b9cdbf}
.first-visit-actions strong{font-size:13px;line-height:1.4}
.first-visit-actions small{grid-column:1/2;margin-top:4px;color:#7b8781;font-size:10px;line-height:1.4}
.first-visit-actions em{grid-column:2;grid-row:1/3;align-self:center;font-style:normal;color:var(--forest-moss);font-size:17px}
.first-visit-actions a:hover,.first-visit-actions button:hover{border-color:var(--forest-canopy);transform:translateY(-1px)}
.invite-paste{padding:13px;border-radius:13px;background:var(--forest-mist);border:1px solid #cddbcf}
.invite-paste[hidden]{display:none}
.invite-paste>label{display:block;margin-bottom:7px;font-size:11px;color:#617068}
.invite-paste>div{display:grid;grid-template-columns:1fr auto;gap:7px}
.invite-paste input{height:44px;min-width:0}
.invite-paste button{border:0;border-radius:9px;padding:0 16px;background:var(--forest-canopy);color:#fff;font:600 12px var(--sans)}
.entry-hint{margin:0;padding:10px 12px;border-radius:9px;background:#f5eee9;color:#8f5148;font-size:11px;line-height:1.65}
.auth-message{min-height:0;margin-top:0}
.auth-message:not(:empty){display:block;margin-top:12px;padding:10px 12px;border-radius:9px;background:#eef5ec;color:#3f6757;font-size:12px}
.auth-message.error:not(:empty){background:#f8ece8;color:#9b4f45}

.registration-progress{display:flex;align-items:center;gap:9px;margin-bottom:28px;color:#98a39e;font-size:11px}
.registration-progress span{display:flex;align-items:center;gap:6px;white-space:nowrap}
.registration-progress b{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#e7ebe5;color:#7a8781;font-size:10px}
.registration-progress span.active{color:var(--forest-ink);font-weight:600}
.registration-progress span.active b,.registration-progress span.done b{background:var(--forest-sun);color:var(--forest-ink)}
.registration-progress i{height:1px;flex:1;background:#dce3dd}
.founder-window{margin:-4px 0 18px;padding:12px 13px;border-radius:12px;background:var(--forest-mist);display:grid;grid-template-columns:auto 1fr;align-items:center;gap:3px 10px}
.founder-window span{grid-row:1/3;padding:5px 7px;border-radius:7px;background:var(--forest-sun);color:var(--forest-ink);font-size:9px;font-weight:700}
.founder-window b{font-size:12px;color:var(--forest-ink)}
.founder-window small{font-size:9px;color:#7d8a84}
.founder-help{font-size:11px;line-height:1.6}
.founder-back{font-size:11px}

button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid rgba(127,158,103,.38);outline-offset:2px}

@media(max-width:760px){
  .membership-story,.auth-story{min-height:205px;height:205px;padding:22px 22px;background-position:center 27%}
  .membership-story .auth-brand,.auth-story .auth-brand{font-size:20px}
  .membership-story .auth-brand span,.auth-story .auth-brand span{width:34px;height:34px;border-radius:10px}
  .membership-story .story-copy,.auth-story>div{margin-top:auto}
  .membership-story .story-copy p,.auth-story>div>p{display:none}
  .membership-story h1,.auth-story h1{font-size:26px;line-height:1.34;margin:0 0 4px;letter-spacing:-.5px}
  .membership-story blockquote,.membership-story>small,.auth-story blockquote,.auth-story>small{display:none}
  .membership-panel,.auth-panel{padding:0 14px 28px;margin-top:-18px}
  .membership-card,.auth-card{padding:24px 22px 22px;border-radius:22px}
  .seedling-mark{width:43px;height:43px;border-radius:13px}
  .seedling-mark svg{width:24px;height:24px}
  .membership-card .eyebrow{margin-top:18px}
  .membership-card h2{font-size:27px}
  .membership-card .auth-copy{margin:10px 0 20px;line-height:1.65}
  .membership-card input,.membership-card form>button{height:48px}
  .first-visit-actions{grid-template-columns:1fr}
  .first-visit-actions a,.first-visit-actions button{min-height:66px;padding:12px 14px}
  .invite-paste>div{grid-template-columns:1fr}
  .invite-paste button{height:44px}
  .registration-progress{margin-bottom:22px}
  .founder-card .seedling-mark{display:none}
  .founder-card .eyebrow{margin-top:0}
}

@media(max-width:380px){
  .membership-story,.auth-story{height:178px;min-height:178px}
  .membership-story h1,.auth-story h1{font-size:23px}
  .membership-card,.auth-card{padding-left:19px;padding-right:19px}
}

@media(prefers-reduced-motion:reduce){.first-visit-actions a,.first-visit-actions button{transition:none;transform:none!important}}
