:root{
  --bg:#0f1412;
  --panel:#17201b;
  --panel-2:#1e2a23;
  --text:#edf3ee;
  --muted:#b7c4bc;
  --line:rgba(255,255,255,0.08);
  --green:#7ea27d;
  --gold:#d8b76a;
  --danger:#d27d7d;
  --shadow:0 10px 30px rgba(0,0,0,0.25);
  --radius:18px;
}
*{box-sizing:border-box}

html,body{margin:0;padding:0;background-color:#0f1412;background-image:linear-gradient(180deg,#0e1412,#111915 30%,#0f1512);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100%;}
body{position:relative;min-height:100vh;min-height:100dvh;-webkit-text-size-adjust:100%;padding-top:env(safe-area-inset-top,0px);padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px);padding-bottom:env(safe-area-inset-bottom,0px);}
body::before{content:"";position:fixed;top:0;left:0;right:0;height:calc(env(safe-area-inset-top,0px) + 20px);background:#0f1412;background-image:linear-gradient(180deg,#0e1412,#111915 30%,#0f1512);z-index:0;pointer-events:none;}

a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
input,select,textarea{
  width:100%;padding:14px 14px;border-radius:14px;border:1px solid var(--line);
  background:#121a16;color:var(--text)
}
textarea{resize:vertical}
label{display:grid;gap:8px}
small,.small{font-size:.875rem}
.app-shell{position:relative;z-index:1;max-width:760px;margin:0 auto;padding:18px 18px calc(96px + env(safe-area-inset-bottom,0px))}
.topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:8px 0 18px;flex-wrap:wrap}
.brand{display:inline-flex;align-items:center;text-decoration:none}
.brand img {
  display: block;
  height: auto;
  width: clamp(140px, 42vw, 220px);
  max-width: calc(100vw - 72px);
}
.topbar-actions{display:flex;align-items:center;gap:12px}
.content{display:grid;gap:16px}
.card,.auth-card,.metric-card,.choice-card,.pricing-card{
  background:rgba(23,32,27,.92);backdrop-filter:blur(10px);border:1px solid var(--line);
  border-radius:var(--radius);box-shadow:var(--shadow)
}
.card,.auth-card,.pricing-card{padding:20px}
.auth-card{margin:24px auto 0;max-width:480px}
.hero{padding:24px}

body.is-guest .app-shell{max-width:560px;padding-top:24px}
body.is-guest .topbar{justify-content:center;padding:20px 0 10px}
body.is-guest .topbar-actions{display:none}
body.is-guest .brand img{width:clamp(150px, 44vw, 210px);max-width:100%}
body.is-guest .content{gap:14px}
.auth-card .btn{width:100%}
.auth-card .muted:last-child{text-align:center}
.home-actions-head{margin-bottom:12px}
.metric-card{padding:18px}
.metric-label,.eyebrow{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
h1,h2,h3,p{margin:0}
h1{font-size:1.8rem;line-height:1.1}
h2{font-size:1.2rem}
h3{font-size:1rem}
.muted{color:var(--muted)}
.stack-sm>*+*{margin-top:8px}
.stack-md>*+*{margin-top:12px}
.stack-lg>*+*{margin-top:16px}
.stack-xl>*+*{margin-top:24px}
.btn{
  display:inline-flex;justify-content:center;align-items:center;gap:8px;border:none;
  border-radius:14px;padding:14px 16px;font-weight:650;cursor:pointer;min-height:48px
}
.btn-sm{min-height:40px;padding:10px 12px;font-size:.92rem}
.btn-primary{background:linear-gradient(180deg,#93b08f,#789574);color:#101611}
.btn-secondary{background:#26352d;color:var(--text);border:1px solid var(--line)}
.btn-ghost{background:transparent;color:var(--muted);border:1px solid var(--line)}
.btn[disabled]{opacity:.55;cursor:not-allowed}
.text-link{color:#d8e9d8}
.flash{padding:14px 16px;border-radius:14px;margin-bottom:12px}
.flash-success{background:rgba(126,162,125,.18);border:1px solid rgba(126,162,125,.3)}
.flash-error{background:rgba(210,125,125,.12);border:1px solid rgba(210,125,125,.25)}
.tabbar{
  position:fixed;left:50%;transform:translateX(-50%);bottom:calc(14px + env(safe-area-inset-bottom,0px));width:min(760px,calc(100% - 24px));
  display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:8px;border:1px solid var(--line);
  border-radius:18px;background:rgba(18,26,22,.96);backdrop-filter:blur(16px)
}
.tab{padding:12px 14px;border-radius:12px;text-align:center;color:var(--muted)}
.tab.active{background:#223029;color:var(--text)}
.totals-grid,.choice-grid,.split-grid,.form-grid,.checkbox-grid{display:grid;gap:12px}
.totals-grid{grid-template-columns:repeat(3,1fr)}
.choice-grid,.split-grid,.form-grid{grid-template-columns:1fr}
.metric-card strong{display:block;font-size:1.7rem;margin-top:6px;color:var(--gold)}
.choice-card{padding:22px;display:grid;gap:10px}
.choice-label{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.badge{display:inline-flex;align-items:center;justify-content:center;padding:7px 10px;border-radius:999px;background:#223029;border:1px solid var(--line)}
.badge.subtle{background:transparent}
.action-row{display:flex;flex-wrap:wrap;gap:12px}
.activity-list,.seed-list{display:grid;gap:12px}
.activity-row,.seed-card{
  display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:14px 0;border-top:1px solid var(--line)
}
.activity-list .activity-row:first-child,.seed-list .seed-card:first-child{border-top:none;padding-top:0}
.activity-meta{white-space:nowrap;color:var(--gold);font-weight:650}
.seed-card{flex-direction:column;padding:16px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,0.02)}
.seed-main{display:grid;gap:6px}
.seed-actions{display:flex;flex-wrap:wrap;gap:8px}
.plant-summary{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:12px}
.plant-column{text-align:center;display:grid;gap:8px;justify-items:center}
.plant-node{width:28px;height:28px;border-radius:999px;border:2px solid var(--line)}
.plant-node.planted{background:#4c6a50}
.plant-node.active{background:#769b73}
.plant-node.harvested{background:#d0af64}
.plant-stem{height:3px;background:linear-gradient(90deg,#4c6a50,#769b73,#d0af64);border-radius:999px;width:100%}
.inline-card,.inline-notice,.trial-banner{
  display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;
  background:rgba(255,255,255,0.04);border:1px solid var(--line)
}
.inline-notice.success{background:rgba(126,162,125,.16)}
.trial-banner{margin-top:8px}
.checkbox-row{display:flex;align-items:flex-start;gap:10px}
.checkbox-row input{width:auto;margin-top:3px}
.check-pill{
  display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--line);
  border-radius:14px;background:#121a16
}
.check-pill input{width:auto}
.plain-list{margin:0;padding-left:18px;color:var(--muted)}
.empty-state{padding:20px;border:1px dashed var(--line);border-radius:14px;color:var(--muted)}
.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.pricing-price{display:block;font-size:1.8rem;color:var(--gold);margin-top:4px}
.divider{height:1px;background:var(--line)}
.hidden{display:none !important}
.inset{background:#121915}
@media (max-width:640px){
  .totals-grid{grid-template-columns:1fr}
  .plant-summary{grid-template-columns:1fr;justify-items:center}
  .plant-stem{width:3px;height:28px}
}






.label-row,.helper-row{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}

.metric-card .label-row{
  justify-content:space-between;
  align-items:center;
}

.help-trigger,.help-close{
  border:none;
  cursor:pointer;
}

.help-trigger{
  width:24px;
  height:24px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  border:1px solid var(--line);
  background:#223029;
  color:var(--text);
  font-weight:700;
  line-height:1;
  flex:0 0 auto;
}

.help-modal-backdrop[hidden],
.help-modal[hidden]{
  display:none !important;
}

.help-modal-backdrop{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.48);
  z-index:10000;
}

.help-modal{
  position:fixed;
  inset:0;
  z-index:10001;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:16px;
}

.help-modal-card{
  position:relative;
  width:min(320px, calc(100vw - 32px));
  max-height:calc(100vh - 48px);
  overflow:auto;
  padding:18px 16px 14px;
  border-radius:16px;
  border:1px solid var(--line);
  background:rgba(18,26,22,.99);
  box-shadow:0 18px 50px rgba(0,0,0,.45);
}

.help-modal-card p{
  color:var(--muted);
  font-size:.92rem;
  line-height:1.4;
  margin-top:8px;
}

.help-close{
  position:absolute;
  top:8px;
  right:8px;
  width:30px;
  height:30px;
  border-radius:999px;
  background:#223029;
  color:var(--text);
  font-size:20px;
}

.tabbar-4{grid-template-columns:repeat(4,1fr)}
.wrap-card{flex-wrap:wrap}
.leaderboard-list{display:grid;gap:12px}
.leaderboard-row{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,0.02)}
.leaderboard-row.is-self{border-color:rgba(216,183,106,.45);background:rgba(216,183,106,.08)}
.leaderboard-rank{width:44px;height:44px;border-radius:999px;display:flex;align-items:center;justify-content:center;background:#223029;border:1px solid var(--line);font-weight:700}
.leaderboard-main,.leaderboard-metrics{display:grid;gap:4px}
.leaderboard-metrics{text-align:right}
.friend-request-row{align-items:center}
@media (max-width:640px){.leaderboard-row{grid-template-columns:auto 1fr;}.leaderboard-metrics{grid-column:1 / -1;text-align:left}}

.insights-hero{
  background:
    radial-gradient(circle at top right, rgba(216,183,106,.18), transparent 32%),
    radial-gradient(circle at top left, rgba(126,162,125,.12), transparent 30%),
    rgba(23,32,27,.92);
}
.insights-metrics-grid,.insights-two-up{display:grid;gap:12px}
.insights-metrics-grid{grid-template-columns:repeat(2,1fr)}
.metric-card-premium{
  background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
  position:relative; overflow:hidden;
}
.metric-card-premium::after{
  content:"";position:absolute;inset:auto -10% -40% auto;width:120px;height:120px;border-radius:999px;
  background:radial-gradient(circle, rgba(216,183,106,.13), transparent 68%);
}
.metric-foot{margin-top:8px}
.chart-card{
  background:linear-gradient(180deg, rgba(216,183,106,.08), rgba(255,255,255,.02) 18%, rgba(255,255,255,.015));
}
.chart-value-block{display:grid;gap:4px;text-align:right}
.chart-value-block strong{font-size:1.2rem;color:var(--gold)}
.insight-chart-shell{display:grid;gap:14px}
.insight-line-chart{width:100%;height:auto;display:block}
.chart-baseline{stroke:rgba(255,255,255,.1);stroke-width:1}
.chart-line{fill:none;stroke:#d8b76a;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 4px 12px rgba(216,183,106,.28))}
.chart-point{fill:#111915;stroke:#93b08f;stroke-width:3}
.chart-point.current{fill:#d8b76a;stroke:#fff1c9;stroke-width:4}
.chart-label-row{display:grid;grid-template-columns:repeat(8,1fr);gap:6px;color:var(--muted);font-size:.8rem;text-align:center}
.funnel-card,.source-card,.mix-card,.top-seed-card,.guidance-card{background:rgba(23,32,27,.94)}
.funnel-stage-list,.source-list,.guidance-list{display:grid;gap:14px}
.funnel-stage,.source-row{
  padding:14px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.02)
}
.funnel-stage-top,.source-row-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:10px}
.funnel-stage-count{font-size:1.4rem;font-weight:700;color:var(--gold)}
.funnel-bar-track,.source-bar-track,.mix-track{height:12px;border-radius:999px;background:rgba(255,255,255,.06);overflow:hidden}
.funnel-bar-fill{
  height:100%;border-radius:999px;
  background:linear-gradient(90deg,#7ea27d,#d8b76a)
}
.source-bar-fill{
  height:100%;border-radius:999px;
  background:linear-gradient(90deg,#93b08f,#d8b76a)
}
.mix-track{display:flex;height:14px}
.mix-now{background:linear-gradient(90deg,#7ea27d,#93b08f)}
.mix-seed{background:linear-gradient(90deg,#c6a25d,#e1c987)}
.mix-legend{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.mix-swatch{display:inline-block;width:12px;height:12px;border-radius:999px;margin-right:8px;vertical-align:middle}
.mix-now-swatch{background:#8fb08c}
.mix-seed-swatch{background:#d8b76a}
.top-seed-block{
  min-height:100%;justify-content:space-between;padding:8px 0
}
.top-seed-title{font-size:1.1rem}
.top-seed-value{font-size:2rem;font-weight:800;color:var(--gold)}
.guidance-item{
  display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:flex-start;padding:14px 0;border-top:1px solid var(--line)
}
.guidance-item:first-child{padding-top:0;border-top:none}
.guidance-item p{color:var(--text);line-height:1.45}
.guidance-dot{
  width:12px;height:12px;border-radius:999px;background:linear-gradient(180deg,#d8b76a,#93b08f);margin-top:5px;box-shadow:0 0 0 6px rgba(216,183,106,.08)
}
@media (min-width:641px){
  .insights-two-up{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  .insights-metrics-grid,.mix-legend{grid-template-columns:1fr}
  .chart-label-row{grid-template-columns:repeat(4,1fr)}
  .chart-label-row span:nth-child(n+5){display:none}
}

.chart-card-hero{padding-top:22px}
.insights-metrics-grid-bottom{margin-top:4px}
.chart-label-row-12{grid-template-columns:repeat(12,1fr)}
@media (max-width:640px){
  .chart-label-row-12{grid-template-columns:repeat(6,1fr)}
  .chart-label-row-12 span:nth-child(odd){display:none}
}


.chart-head-wrap{align-items:center}
.chart-range-tabs{
  display:flex;flex-wrap:wrap;gap:8px;padding:6px;background:rgba(255,255,255,.04);
  border:1px solid var(--line);border-radius:16px;width:max-content;max-width:100%
}
.chart-range-tab{
  padding:10px 14px;border-radius:12px;color:var(--muted);background:transparent;border:1px solid transparent;
  font-weight:650;font-size:.92rem;appearance:none;cursor:pointer
}
.chart-range-tab.active{
  color:var(--text);background:#223029;border-color:rgba(216,183,106,.24);box-shadow:inset 0 0 0 1px rgba(216,183,106,.12)
}
.chart-range-tab:hover{color:var(--text)}
@media (max-width:640px){
  .chart-range-tabs{width:100%}
  .chart-range-tab{flex:1 1 calc(50% - 8px);text-align:center}
}

.brand-subtle{
  margin-top:4px;
  opacity:.78;
}

.home-shell{display:grid;gap:16px}
.home-dashboard{
  padding:20px;
  background:
    radial-gradient(circle at top right, rgba(216,183,106,.14), transparent 28%),
    radial-gradient(circle at top left, rgba(126,162,125,.12), transparent 30%),
    rgba(23,32,27,.94);
}
.home-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap}
.home-head h1{font-size:1.55rem;letter-spacing:-0.02em}
.home-head-meta{padding-bottom:4px}
.home-snapshot-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:12px}
.snapshot-card{
  padding:18px;
  border-radius:18px;
  border:1px solid var(--line);
  background:linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.018));
  min-height:122px;
  display:grid;
  align-content:space-between;
  gap:10px;
}
.snapshot-card strong{font-size:1.8rem;line-height:1.02;letter-spacing:-0.03em}
.snapshot-card-primary{
  background:linear-gradient(180deg, rgba(147,176,143,.16), rgba(255,255,255,.03));
}
.snapshot-foot{min-height:18px}
.compact-between{justify-content:space-between;align-items:center}
.inset-card{
  border:1px solid var(--line);
  border-radius:18px;
  background:rgba(15,21,18,.55);
  padding:16px;
}
.home-actions-head{margin-bottom:10px}
.home-actions-head h2{font-size:1.1rem}
.home-action-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.action-tile{
  position:relative;
  display:grid;
  gap:5px;
  padding:16px 18px 18px;
  border-radius:20px;
  border:1px solid rgba(126,162,125,.24);
  background:linear-gradient(180deg, rgba(39,57,47,.96), rgba(27,37,31,.96));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.06),
    inset 0 -1px 0 rgba(0,0,0,.18),
    0 10px 24px rgba(0,0,0,.16);
  min-height:112px;
  transition:transform .15s ease, border-color .15s ease, box-shadow .15s ease, background .15s ease;
}
.action-tile::after{
  content:"→";
  position:absolute;
  right:16px;
  top:14px;
  font-size:1rem;
  line-height:1;
  color:rgba(255,255,255,.62);
}
.action-tile:hover,.action-tile:active{
  transform:translateY(-1px);
  border-color:rgba(216,183,106,.34);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    inset 0 -1px 0 rgba(0,0,0,.24),
    0 14px 28px rgba(0,0,0,.20);
}
.action-tile strong{font-size:1.18rem;letter-spacing:-0.02em;line-height:1.1}
.action-tile span:last-child{color:rgba(234,240,234,.78);font-size:.9rem;line-height:1.28;max-width:16ch}
.action-kicker{font-size:.76rem;text-transform:uppercase;letter-spacing:.1em;color:rgba(234,240,234,.62)}
.action-tile-primary{
  border-color:rgba(147,176,143,.42);
  background:linear-gradient(180deg, rgba(158,187,150,.92), rgba(132,160,126,.92));
  color:#132016;
}
.action-tile-primary::after{color:rgba(19,32,22,.62)}
.action-tile-primary .action-kicker,
.action-tile-primary span:last-child{color:rgba(19,32,22,.72)}
.home-story-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:16px}
.focus-card,.flow-card{min-height:100%}
.focus-card h2{font-size:1.08rem;line-height:1.35}
.focus-pill-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.focus-pill{
  padding:14px;
  border-radius:16px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.03);
  display:grid;gap:6px;
}
.focus-pill strong{font-size:1.35rem}
.focus-highlight{
  padding:14px;
  border-radius:16px;
  background:rgba(216,183,106,.08);
  border:1px solid rgba(216,183,106,.18);
  display:grid;gap:5px;
}
.pipeline-row{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:10px;align-items:center}
.pipeline-step{
  display:grid;justify-items:center;gap:8px;padding:14px 10px;border-radius:16px;
  background:rgba(255,255,255,.03);border:1px solid var(--line);text-align:center;
}
.pipeline-step strong{font-size:1.4rem}
.pipeline-link{height:3px;width:24px;border-radius:999px;background:linear-gradient(90deg, rgba(126,162,125,.25), rgba(216,183,106,.35))}
.trial-strip{
  display:flex;justify-content:space-between;align-items:center;gap:12px;
  padding:16px 18px;
}
.activity-row{padding:14px 0;border-bottom:1px solid rgba(255,255,255,.06)}
.activity-row:last-child{border-bottom:none;padding-bottom:0}

@media (max-width:640px){
  .topbar{padding-bottom:14px}
  .brand img{width:clamp(126px, 38vw, 180px)}
  .brand-subtle{display:none}
  .home-dashboard{padding:18px}
  .home-head h1{font-size:1.38rem}
  .home-snapshot-grid,
  .home-story-grid,
  .home-action-grid,
  .focus-pill-row{grid-template-columns:1fr}
  .snapshot-card{min-height:unset}
  .action-tile{min-height:unset;padding:15px 16px 16px}
  .pipeline-row{grid-template-columns:1fr;justify-items:center}
  .pipeline-link{width:3px;height:18px}
  .trial-strip{align-items:flex-start;flex-direction:column}
  .topbar-actions{gap:10px}
}

.onboarding-shell{
  background:
    radial-gradient(circle at top right, rgba(216,183,106,.12), transparent 28%),
    radial-gradient(circle at top left, rgba(126,162,125,.10), transparent 26%),
    rgba(23,32,27,.94);
}
.onboarding-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.onboarding-progress{display:flex;gap:8px;align-items:center;padding-top:4px}
.onboarding-dot{
  width:10px;height:10px;border-radius:999px;background:rgba(255,255,255,.18);
  border:1px solid rgba(255,255,255,.08);transition:all .18s ease;
}
.onboarding-dot.active{width:26px;background:linear-gradient(180deg,#93b08f,#789574)}
.onboarding-panel{
  padding:18px;border-radius:18px;border:1px solid var(--line);
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.015));
}
.onboarding-examples{margin-top:4px}
.onboarding-example{
  padding:18px;border-radius:18px;border:1px solid var(--line);background:rgba(255,255,255,.02);
}
.onboarding-example.good{box-shadow:inset 0 0 0 1px rgba(126,162,125,.12)}
.onboarding-example.bad{box-shadow:inset 0 0 0 1px rgba(216,183,106,.08)}
.onboarding-actions{display:flex;justify-content:space-between;gap:12px;padding-top:4px}
.onboarding-actions .btn{flex:1}
@media (max-width:640px){
  .onboarding-top{display:grid;gap:12px}
  .onboarding-actions{display:grid;grid-template-columns:1fr 1fr}
  .onboarding-actions [data-onboarding-submit]{grid-column:1 / -1}
}

@media (max-width:640px){
  body.is-guest .app-shell{padding-top:16px}
  .auth-card{margin-top:16px;padding:18px}
  .home-actions-head{margin-bottom:14px}
}

.btn-danger{background:linear-gradient(180deg,#d89292,#bf6e6e);color:#1b0e0e}
.inline-notice.danger{background:rgba(210,125,125,.12);border:1px solid rgba(210,125,125,.25)}
.danger-zone{padding-top:4px}
.prose-card h2{margin-top:8px;font-size:1.05rem}
.prose-card p + h2{margin-top:12px}
.feature-list{display:grid;gap:10px}
.feature-row{display:grid;grid-template-columns:14px 1fr;gap:10px;color:var(--muted)}

/* v1.3.21: icon-only bottom navigation */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.tabbar.tabbar-4{grid-template-columns:repeat(4,1fr);gap:10px;padding:10px;border-radius:24px;background:rgba(16,25,20,.96);box-shadow:0 18px 44px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.05)}
.tab{min-height:58px;padding:10px 8px;border-radius:18px;display:flex;align-items:center;justify-content:center;color:#fff;opacity:.78;position:relative;transition:opacity .16s ease,background .16s ease,transform .16s ease,box-shadow .16s ease}
.tab svg{width:30px;height:30px;display:block;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 2px 6px rgba(0,0,0,.28))}
.tab.active{color:#fff;opacity:1;background:linear-gradient(180deg,rgba(126,162,125,.42),rgba(70,103,77,.34));box-shadow:inset 0 1px 0 rgba(255,255,255,.13),0 10px 24px rgba(81,128,77,.2)}
.tab:active{transform:scale(.98)}
@media (max-width:520px){.tabbar.tabbar-4{width:calc(100% - 24px);bottom:calc(10px + env(safe-area-inset-bottom,0px));padding:9px}.tab{min-height:54px}.tab svg{width:28px;height:28px}}

/* v1.3.21: full visual polish + zen garden system */
:root{
  --bg:#07110e;
  --bg2:#0b1712;
  --panel:#0f1b16;
  --panel-2:#16261d;
  --glass:rgba(12,25,19,.82);
  --glass-2:rgba(22,38,29,.78);
  --text:#f5faf6;
  --muted:#bcc8c0;
  --line:rgba(255,255,255,.105);
  --green:#69cf58;
  --green-soft:#9dcc91;
  --gold:#e0bd65;
  --sand:#d7c09b;
  --shadow:0 22px 70px rgba(0,0,0,.42);
  --radius:24px;
}
html,body{
  background-color:#07110e;
  background-image:
    radial-gradient(circle at 78% -10%, rgba(105,207,88,.13), transparent 34%),
    radial-gradient(circle at 15% 8%, rgba(224,189,101,.09), transparent 28%),
    linear-gradient(180deg,#07100d 0%,#0b1712 34%,#07110e 100%);
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text",Inter,"Segoe UI",system-ui,sans-serif;
  letter-spacing:-.01em;
}
body::before{background:#07110e;background-image:linear-gradient(180deg,#07100d,#0b1712);z-index:0}
.app-shell{max-width:760px;padding:18px 18px calc(104px + env(safe-area-inset-bottom,0px))}
.topbar{align-items:center;padding:10px 0 22px;gap:12px;flex-wrap:nowrap}
.brand img{width:clamp(150px,39vw,210px);filter:drop-shadow(0 4px 9px rgba(0,0,0,.45))}
.topbar-actions{gap:13px;font-size:1rem;white-space:nowrap}
.topbar .text-link{color:rgba(245,250,246,.92);font-weight:520}
.badge.subtle{padding:11px 17px;border-radius:999px;background:rgba(0,0,0,.12);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.card,.auth-card,.metric-card,.choice-card,.pricing-card{
  background:linear-gradient(180deg,rgba(22,38,29,.86),rgba(10,22,17,.84));
  border:1px solid var(--line);
  box-shadow:var(--shadow), inset 0 1px 0 rgba(255,255,255,.045);
  border-radius:24px;
}
.card,.auth-card,.pricing-card{padding:22px}
h1{font-size:clamp(1.85rem,6vw,2.65rem);letter-spacing:-.055em;line-height:1.02;font-weight:800}
h2{font-size:1.25rem;letter-spacing:-.035em;font-weight:760}
h3{letter-spacing:-.025em}.muted{color:rgba(229,238,231,.76);line-height:1.45}.eyebrow,.metric-label{letter-spacing:.15em;color:rgba(225,235,227,.7);font-weight:650}.btn{border-radius:18px;font-weight:760;box-shadow:inset 0 1px 0 rgba(255,255,255,.13)}.btn-primary{background:linear-gradient(180deg,#a7d09d 0%,#61b655 100%);color:#07120d;box-shadow:0 14px 28px rgba(80,166,67,.25),inset 0 1px 0 rgba(255,255,255,.25)}.btn-secondary{background:rgba(17,31,23,.78);border:1px solid rgba(255,255,255,.12)}.btn-block{width:100%}.btn-xl{min-height:68px;font-size:1.15rem}.plus-mark{font-size:2rem;font-weight:360;margin-right:auto;line-height:0}.help-trigger{width:42px;height:42px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.09);font-size:1.45rem;color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}.content{gap:18px}.compact-between{align-items:center}.garden-page{display:grid;gap:18px}.garden-hero{position:relative;overflow:hidden;padding:22px 18px 18px;background:linear-gradient(180deg,rgba(5,20,15,.92),rgba(7,18,14,.9));border:none;box-shadow:none}.garden-hero::before{content:"";position:absolute;inset:-20% -15% auto auto;width:320px;height:320px;background:radial-gradient(circle,rgba(79,167,68,.13),transparent 64%);pointer-events:none}.garden-eyebrow{color:#69cf58}.garden-hero > *{position:relative;z-index:1}.garden-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.garden-stat{min-height:130px;display:grid;align-content:center;justify-items:center;text-align:center;gap:8px;padding:16px 10px;border-radius:18px;background:rgba(14,27,22,.84);border:1px solid rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}.garden-stat-icon{display:flex;align-items:center;justify-content:center;height:32px;min-width:32px;color:#69cf58;font-size:1.8rem;line-height:1}.garden-stat-icon.money{border:2px solid #69cf58;border-radius:999px;font-size:1.25rem;font-weight:760}.garden-stat-icon.harvest{color:#e0bd65;font-size:1.5rem}.garden-stat strong{font-size:1.55rem;letter-spacing:-.04em}.garden-stat span:last-child{font-size:.9rem;color:rgba(229,238,231,.74);line-height:1.2}.zen-garden-card{border-radius:22px;overflow:hidden;border:1px solid rgba(255,255,255,.09);background:#17221a;box-shadow:0 18px 46px rgba(0,0,0,.34)}.zen-garden-bg{position:relative;height:min(84vw,430px);min-height:330px;overflow:hidden;background:linear-gradient(180deg,#1a2b1f 0%,#283420 18%,#bba783 22%,#d7c09b 100%)}.zen-garden-bg::before{content:"";position:absolute;inset:22% -10% -6%;background:repeating-radial-gradient(ellipse at 34% 48%,rgba(89,70,45,.36) 0 2px,transparent 3px 17px),repeating-radial-gradient(ellipse at 72% 62%,rgba(89,70,45,.24) 0 2px,transparent 4px 19px);opacity:.72;mix-blend-mode:multiply}.zen-garden-bg::after{content:"";position:absolute;left:0;right:0;top:0;height:38%;background:radial-gradient(circle at 20% 52%,#274128 0 13%,transparent 14%),radial-gradient(circle at 78% 25%,#3b5630 0 19%,transparent 20%),radial-gradient(circle at 93% 54%,#263827 0 13%,transparent 14%);filter:blur(1px);opacity:.92}.zen-ring{position:absolute;border:2px solid rgba(94,72,45,.28);border-radius:50%;transform:scaleX(1.55);z-index:1}.ring-one{left:14%;top:43%;width:190px;height:95px}.ring-two{right:11%;bottom:11%;width:220px;height:108px}.ring-three{left:39%;bottom:21%;width:165px;height:78px}.zen-rock{position:absolute;z-index:2;border-radius:50% 44% 48% 42%;background:linear-gradient(145deg,#596259,#222b24);box-shadow:0 12px 18px rgba(0,0,0,.27)}.rock-one{left:7%;bottom:30%;width:52px;height:37px}.rock-two{right:8%;bottom:25%;width:62px;height:42px}.rock-three{left:67%;top:34%;width:47px;height:31px}.zen-lantern{position:absolute;left:6%;top:31%;z-index:4;width:52px;height:64px;border-radius:16px 16px 8px 8px;background:linear-gradient(180deg,#70786d,#2c342d);box-shadow:0 15px 24px rgba(0,0,0,.3)}.zen-lantern::before{content:"";position:absolute;left:9px;right:9px;top:-12px;height:14px;border-radius:50% 50% 0 0;background:#3a443b}.zen-lantern span{position:absolute;inset:22px 16px 15px;border-radius:6px;background:radial-gradient(circle,#ffd36a,rgba(224,128,43,.56) 56%,transparent 70%);box-shadow:0 0 18px rgba(255,187,77,.75)}.zen-bonsai{position:absolute;right:10%;top:28%;z-index:4;width:110px;height:100px}.zen-bonsai::before{content:"";position:absolute;left:50%;bottom:0;width:14px;height:76px;background:linear-gradient(90deg,#3d2717,#6c4324);border-radius:20px;transform:translateX(-50%) rotate(8deg)}.zen-bonsai::after{content:"";position:absolute;left:0;top:0;width:112px;height:68px;border-radius:50%;background:radial-gradient(circle at 30% 50%,#426c37 0 22%,transparent 23%),radial-gradient(circle at 57% 33%,#5a8644 0 25%,transparent 26%),radial-gradient(circle at 72% 58%,#375a31 0 24%,transparent 25%)}.garden-plant{position:absolute;left:var(--x);top:var(--y);z-index:6;width:76px;height:92px;transform:translate(-50%,-70%);display:block}.plant-shadow{position:absolute;left:10px;right:10px;bottom:4px;height:14px;border-radius:50%;background:rgba(41,24,12,.32);filter:blur(2px)}.plant-mound{position:absolute;left:16px;right:16px;bottom:8px;height:28px;border-radius:50%;background:radial-gradient(circle at 50% 35%,#5c3b22,#2a190e 78%);box-shadow:0 8px 8px rgba(0,0,0,.22)}.plant-sprout{position:absolute;left:50%;bottom:25px;width:9px;height:50px;border-radius:999px;background:linear-gradient(180deg,#78d765,#357c35);transform:translateX(-50%);filter:drop-shadow(0 6px 5px rgba(0,0,0,.2))}.plant-sprout i,.plant-sprout b,.plant-sprout em{position:absolute;display:block;background:linear-gradient(135deg,#9fdb83,#4e9f45);border-radius:100% 0 100% 0;content:""}.plant-sprout i{width:25px;height:15px;left:-24px;top:7px;transform:rotate(18deg)}.plant-sprout b{width:27px;height:17px;right:-25px;top:2px;transform:scaleX(-1) rotate(12deg)}.plant-sprout em{width:22px;height:14px;right:-19px;top:24px;transform:scaleX(-1) rotate(-20deg)}.plant-value{position:absolute;left:50%;bottom:-9px;transform:translateX(-50%);padding:4px 8px;border-radius:999px;background:rgba(13,17,14,.82);color:#fff;font-weight:800;font-size:.78rem;box-shadow:0 5px 14px rgba(0,0,0,.28);white-space:nowrap}.garden-plant.is-planted .plant-sprout{height:30px}.garden-plant.is-planted .plant-sprout em{display:none}.garden-plant.is-dormant{opacity:.54;filter:saturate(.55)}.garden-plant.is-dormant .plant-sprout{height:14px;background:#7d8e74}.garden-plant.is-dormant .plant-sprout i,.garden-plant.is-dormant .plant-sprout b,.garden-plant.is-dormant .plant-sprout em{display:none}.garden-plant.is-flowering .plant-sprout::after{content:"";position:absolute;left:50%;top:-12px;width:24px;height:24px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle,#ffe1a3 0 14%,#ee8bb0 15% 39%,#e86d99 40% 64%,transparent 65%);box-shadow:0 0 12px rgba(232,109,153,.38)}.garden-plant.is-large .plant-sprout{height:68px;width:11px}.garden-plant.is-large .plant-sprout i{width:34px;height:20px;left:-33px}.garden-plant.is-large .plant-sprout b{width:35px;height:21px;right:-33px}.garden-plant.is-large .plant-sprout em{width:28px;height:17px;right:-26px;top:33px}.garden-empty-visual{position:absolute;z-index:8;left:50%;top:61%;transform:translate(-50%,-50%);width:min(82%,330px);display:grid;gap:6px;text-align:center;padding:18px;border-radius:20px;background:rgba(7,17,14,.72);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.12)}.garden-empty-visual span{color:rgba(245,250,246,.72)}.recent-garden-card{background:rgba(9,19,15,.72)}.garden-seed-list{display:grid;gap:12px}.garden-seed-row{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:16px;border-radius:18px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.075)}.garden-seed-row span:nth-child(2){display:grid;gap:4px}.seed-row-icon{width:38px;height:38px;border-radius:999px;display:flex;align-items:center;justify-content:center;background:rgba(105,207,88,.13);box-shadow:inset 0 0 0 1px rgba(105,207,88,.24)}.seed-row-icon.is-dormant{filter:saturate(.3);opacity:.7}.seed-row-value{color:#69cf58;font-weight:800}.seed-detail-visual{padding:0;overflow:hidden;background:#07110e;border:none;box-shadow:none}.seed-back{position:absolute;z-index:5;margin:18px;font-weight:700}.seed-photo-illusion{position:relative;height:360px;overflow:hidden;background:linear-gradient(180deg,#1d341e 0,#2a3f24 22%,#d7c09b 46%,#b79e78 100%)}.seed-photo-illusion::before{content:"";position:absolute;inset:30% -20% -10%;background:repeating-radial-gradient(ellipse at 50% 40%,rgba(89,70,45,.34) 0 3px,transparent 4px 24px);transform:scaleX(1.45);opacity:.8}.detail-ring{position:absolute;border:2px solid rgba(94,72,45,.32);border-radius:50%;transform:scaleX(1.65)}.detail-ring-one{left:15%;top:43%;width:300px;height:150px}.detail-ring-two{right:11%;bottom:11%;width:260px;height:125px}.detail-rock{position:absolute;border-radius:50% 43% 52% 45%;background:linear-gradient(145deg,#697262,#27312a);box-shadow:0 15px 26px rgba(0,0,0,.28)}.detail-rock-one{left:7%;top:18%;width:82px;height:57px}.detail-rock-two{right:10%;top:23%;width:105px;height:64px}.detail-sprout{position:absolute;left:50%;top:54%;z-index:3;width:14px;height:120px;border-radius:999px;background:linear-gradient(180deg,#87da72,#347e33);transform:translate(-50%,-50%);filter:drop-shadow(0 10px 11px rgba(0,0,0,.25))}.detail-sprout i,.detail-sprout b,.detail-sprout em{position:absolute;display:block;background:linear-gradient(135deg,#aae08c,#4b9b42);border-radius:100% 0 100% 0}.detail-sprout i{width:62px;height:37px;left:-60px;top:18px;transform:rotate(15deg)}.detail-sprout b{width:66px;height:39px;right:-64px;top:2px;transform:scaleX(-1) rotate(11deg)}.detail-sprout em{width:44px;height:28px;right:-47px;top:55px;transform:scaleX(-1) rotate(-17deg)}.detail-sprout.is-planted{height:70px}.detail-sprout.is-dormant{height:30px;filter:saturate(.4);opacity:.58}.detail-sprout.is-dormant i,.detail-sprout.is-dormant b,.detail-sprout.is-dormant em{display:none}.detail-sprout.is-flowering::after{content:"";position:absolute;left:50%;top:-29px;width:52px;height:52px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle,#ffe1a3 0 12%,#ee8bb0 14% 39%,#e86d99 40% 64%,transparent 65%)}.detail-sprout.is-large{height:145px}.seed-detail-card{margin-top:-46px;position:relative;z-index:4}.seed-detail-icon{font-size:2rem}.seed-status-badge{color:#7be269;background:rgba(105,207,88,.13)}.detail-data-list{display:grid;gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.detail-data-list div{display:flex;justify-content:space-between;gap:14px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.08)}.detail-data-list div:last-child{border-bottom:none}.detail-data-list span{color:rgba(245,250,246,.7)}.growth-track{height:13px;border-radius:999px;background:rgba(255,255,255,.1);overflow:hidden}.growth-track span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#69cf58,#9dcc91);box-shadow:0 0 14px rgba(105,207,88,.3)}.seed-detail-actions{display:grid;gap:12px}.tabbar.tabbar-4{background:rgba(8,17,13,.9);border-color:rgba(255,255,255,.11);border-radius:26px;box-shadow:0 18px 44px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.05)}.tab.active{background:radial-gradient(circle at 50% 12%,rgba(128,199,101,.45),rgba(67,105,62,.42) 62%,rgba(34,54,40,.34));box-shadow:0 10px 26px rgba(105,207,88,.22),inset 0 1px 0 rgba(255,255,255,.12)}
@media (max-width:640px){
  .app-shell{padding-left:16px;padding-right:16px}.topbar{gap:10px}.topbar-actions{font-size:.98rem;gap:10px}.topbar .badge.subtle{padding:10px 14px}.garden-hero{margin-left:-16px;margin-right:-16px;border-radius:0;padding-left:16px;padding-right:16px}.garden-metrics{grid-template-columns:repeat(3,1fr);gap:10px}.garden-stat{min-height:122px;padding:13px 6px}.garden-stat strong{font-size:1.35rem}.garden-stat span:last-child{font-size:.82rem}.zen-garden-bg{height:395px;min-height:395px}.garden-plant{width:66px;height:82px}.plant-value{font-size:.72rem}.btn-xl{min-height:64px}.seed-photo-illusion{height:350px}.seed-detail-card{margin-top:-38px}.detail-data-list div{font-size:.96rem}.tabbar.tabbar-4{bottom:calc(8px + env(safe-area-inset-bottom,0px))}
}
@media (max-width:390px){.topbar-actions{gap:8px;font-size:.9rem}.brand img{width:132px}.garden-stat strong{font-size:1.18rem}.garden-stat span:last-child{font-size:.77rem}.zen-garden-bg{height:370px;min-height:370px}}

/* v1.3.21: premium garden rebuild — less cartoon, more app-store polished */
.garden-hero{
  padding-top:20px;
  background:
    radial-gradient(circle at 82% 3%,rgba(105,207,88,.11),transparent 34%),
    linear-gradient(180deg,rgba(6,19,15,.98),rgba(6,16,13,.94));
}
.garden-hero .section-head{margin-bottom:2px}
.garden-hero > .muted{max-width:560px;font-size:1.02rem;color:rgba(238,246,240,.76)}
.garden-metrics{gap:12px;margin-top:4px}
.garden-stat{
  min-height:112px;
  border-radius:20px;
  background:linear-gradient(180deg,rgba(17,35,27,.92),rgba(8,22,17,.92));
  border-color:rgba(255,255,255,.12);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 14px 28px rgba(0,0,0,.18);
}
.garden-stat-icon svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.garden-stat-icon-seed{filter:drop-shadow(0 0 10px rgba(105,207,88,.22))}
.garden-stat-icon.money{width:42px;height:42px;font-size:1.7rem;line-height:1;border-width:2.5px;text-shadow:0 0 12px rgba(105,207,88,.22)}
.garden-stat-icon.harvest svg{width:35px;height:35px;stroke:#e0bd65}
.garden-stat strong{font-size:1.8rem;color:#f8fff8;line-height:1}
.garden-stat span:last-child{font-size:.88rem;color:rgba(239,248,241,.72)}

.zen-garden-card{
  border-radius:28px;
  background:#07110e;
  border-color:rgba(255,255,255,.12);
  box-shadow:0 24px 58px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.07);
}
.zen-garden-bg{
  height:min(92vw,510px);
  min-height:430px;
  isolation:isolate;
  background:
    linear-gradient(180deg,rgba(4,13,10,.3) 0 3%,transparent 12%),
    radial-gradient(ellipse at 50% 106%,rgba(35,22,10,.20),transparent 48%),
    linear-gradient(180deg,#07100d 0%,#0b1c13 22%,#23381f 29%,#bda886 30%,#e3cea8 100%);
}
.zen-garden-bg::before{
  inset:28% -28% -7%;
  background:
    repeating-radial-gradient(ellipse at 32% 50%,rgba(72,55,34,.42) 0 2px,transparent 3px 13px),
    repeating-radial-gradient(ellipse at 76% 69%,rgba(76,58,36,.33) 0 2px,transparent 4px 15px),
    repeating-linear-gradient(157deg,rgba(101,80,51,.16) 0 1px,transparent 1px 28px);
  opacity:.62;
  filter:blur(.15px);
  transform:perspective(360px) rotateX(16deg) scaleX(1.05);
  transform-origin:50% 0;
  z-index:1;
}
.zen-garden-bg::after{
  height:34%;
  background:
    radial-gradient(ellipse at 18% 82%,rgba(22,47,29,.96) 0 14%,transparent 14.5%),
    radial-gradient(ellipse at 82% 34%,rgba(62,89,45,.98) 0 22%,transparent 22.5%),
    radial-gradient(ellipse at 97% 76%,rgba(23,46,29,.95) 0 16%,transparent 16.5%),
    linear-gradient(180deg,#07100d,#0b1b13 70%,rgba(11,27,19,0));
  filter:blur(10px);
  transform:scale(1.04);
  opacity:.96;
  z-index:0;
}
.zen-ring{
  border-width:1.5px;
  border-color:rgba(88,68,42,.23);
  box-shadow:0 0 0 10px rgba(100,77,47,.045),0 0 0 22px rgba(100,77,47,.035),0 0 0 34px rgba(100,77,47,.025);
  z-index:2;
}
.ring-one{left:5%;top:52%;width:215px;height:104px}.ring-two{right:2%;bottom:7%;width:270px;height:132px}.ring-three{left:33%;bottom:24%;width:205px;height:94px}
.zen-rock{z-index:4;filter:drop-shadow(0 12px 12px rgba(0,0,0,.28));background:linear-gradient(145deg,#6e776b 0%,#3e4a41 52%,#18221d 100%)}
.rock-one{left:8%;bottom:30%;width:66px;height:43px}.rock-two{right:10%;bottom:25%;width:79px;height:49px}.rock-three{left:69%;top:37%;width:54px;height:35px}
.zen-lantern{
  left:6%;top:30%;width:58px;height:74px;border-radius:18px 18px 10px 10px;
  background:linear-gradient(180deg,#7e887b,#384139 58%,#1d2922);
  box-shadow:0 18px 26px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.12);
  z-index:5;
}
.zen-lantern::before{left:10px;right:10px;top:-13px;background:#39473d}
.zen-lantern span{inset:25px 16px 17px;filter:blur(.2px)}
.zen-bonsai{right:9%;top:33%;transform:scale(.92);z-index:5;filter:drop-shadow(0 15px 12px rgba(0,0,0,.25))}
.zen-bonsai::before{width:13px;height:82px;background:linear-gradient(90deg,#332013,#7b4b29 62%,#3b2516)}
.zen-bonsai::after{filter:drop-shadow(0 5px 6px rgba(0,0,0,.18))}

.garden-plant{
  z-index:8;
  width:88px;height:110px;
  transform:translate(-50%,-74%);
  transition:transform .15s ease,filter .15s ease;
}
.garden-plant:active{transform:translate(-50%,-74%) scale(.98)}
.plant-shadow{left:14px;right:14px;bottom:7px;height:17px;background:rgba(25,15,7,.29);filter:blur(3px)}
.plant-mound{left:18px;right:18px;bottom:10px;height:31px;background:radial-gradient(circle at 52% 26%,#6c4528 0 22%,#3c2111 62%,#1e120a 100%);box-shadow:0 10px 12px rgba(0,0,0,.25)}
.plant-sprout{bottom:33px;width:10px;height:54px;background:linear-gradient(180deg,#86e06f 0%,#58bf50 48%,#2f8134 100%);box-shadow:inset 1px 0 0 rgba(255,255,255,.15)}
.plant-sprout i,.plant-sprout b,.plant-sprout em{background:linear-gradient(135deg,#b6e998 0%,#74cb61 54%,#388d38 100%);box-shadow:0 5px 7px rgba(0,0,0,.15)}
.plant-sprout i{width:31px;height:18px;left:-31px;top:9px}.plant-sprout b{width:33px;height:20px;right:-32px;top:3px}.plant-sprout em{width:28px;height:16px;right:-27px;top:29px}
.plant-value{bottom:-8px;padding:5px 10px;border-radius:12px;background:rgba(7,12,10,.88);font-size:.8rem;box-shadow:0 8px 18px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.08)}
.garden-plant.is-planted .plant-sprout{height:38px}.garden-plant.is-planted .plant-sprout i{width:25px;height:15px;left:-25px}.garden-plant.is-planted .plant-sprout b{width:27px;height:16px;right:-26px}.garden-plant.is-planted .plant-sprout em{display:none}
.garden-plant.is-large{transform:translate(-50%,-78%) scale(1.08)}.garden-plant.is-large .plant-sprout{height:80px;width:12px}.garden-plant.is-flowering .plant-sprout::after{top:-16px;width:32px;height:32px;background:radial-gradient(circle,#ffe9a7 0 12%,#ffaec8 13% 31%,#ef7da5 32% 57%,transparent 58%);filter:drop-shadow(0 0 8px rgba(239,125,165,.32))}
.garden-plant.is-dormant{opacity:.45;filter:saturate(.4) blur(.1px)}
.garden-empty-visual{top:58%;background:rgba(7,17,14,.78);box-shadow:0 16px 42px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.08)}

.recent-garden-card{border-radius:24px;background:linear-gradient(180deg,rgba(10,22,17,.9),rgba(7,17,14,.86))}
.garden-seed-row{background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025));border-color:rgba(255,255,255,.1);box-shadow:0 12px 28px rgba(0,0,0,.15)}
@media (max-width:640px){
  .garden-hero{padding-top:18px}
  .garden-stat{min-height:108px;border-radius:18px}
  .zen-garden-bg{height:450px;min-height:450px}
  .garden-plant{width:76px;height:96px}
  .ring-one{left:2%;top:54%;width:190px;height:94px}.ring-two{right:-11%;bottom:7%;width:250px;height:124px}.ring-three{left:30%;bottom:27%;width:190px;height:86px}
  .zen-bonsai{right:5%;top:34%;transform:scale(.82)}
  .zen-lantern{left:7%;top:31%;transform:scale(.88)}
  .rock-one{left:8%;bottom:31%}.rock-two{right:9%;bottom:25%}.rock-three{left:66%;top:38%}
}
@media (max-width:390px){.zen-garden-bg{height:420px;min-height:420px}.garden-stat{min-height:100px}.garden-stat-icon.money{width:38px;height:38px;font-size:1.5rem}.garden-stat strong{font-size:1.36rem}}

/* v1.3.21: photographic garden, dirt-mound seed state, labels, edit affordance */
.photo-garden-card{
  border-radius:28px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 26px 70px rgba(0,0,0,.46), inset 0 1px 0 rgba(255,255,255,.08);
  background:#07110e;
}
.photo-garden-bg{
  height:min(118vw,680px);
  min-height:520px;
  background-image:linear-gradient(180deg,rgba(2,10,7,.34),rgba(2,10,7,.02) 42%,rgba(2,10,7,.22)),url('/assets/img/zen-garden-photo.jpg?v=1.3.21');
  background-size:cover;
  background-position:center center;
  isolation:isolate;
}
.photo-garden-bg::before,
.photo-garden-bg::after{display:none!important}
.garden-photo-head{
  position:absolute;
  z-index:20;
  left:22px;
  right:22px;
  top:22px;
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
  pointer-events:none;
}
.garden-photo-head h2{font-size:2rem;line-height:1;margin:0 0 8px;text-shadow:0 3px 20px rgba(0,0,0,.55)}
.garden-photo-head p{margin:0;max-width:250px;color:rgba(248,252,248,.82);font-size:1rem;line-height:1.35;text-shadow:0 2px 14px rgba(0,0,0,.55)}
.garden-mini-add{
  pointer-events:auto;
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:12px 16px;
  border-radius:18px;
  background:rgba(8,18,14,.64);
  border:1px solid rgba(255,255,255,.18);
  color:#84e26f;
  font-weight:850;
  backdrop-filter:blur(12px);
  box-shadow:0 12px 26px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.08);
  white-space:nowrap;
}
.garden-mini-add span{font-size:1.55rem;line-height:.7;font-weight:350}
.photo-plant{
  width:118px;
  height:138px;
  z-index:15;
  transform:translate(-50%,-76%);
}
.photo-plant:active{transform:translate(-50%,-76%) scale(.985)}
.photo-plant .plant-shadow{
  left:22px;right:22px;bottom:28px;height:20px;
  background:rgba(0,0,0,.38);
  filter:blur(8px);
}
.photo-plant .plant-mound{
  left:30px;right:30px;bottom:34px;height:30px;
  border-radius:52% 48% 45% 55%;
  background:radial-gradient(circle at 46% 22%,#735238 0 18%,#4b301e 42%,#26150c 83%);
  box-shadow:0 12px 13px rgba(0,0,0,.36), inset 0 2px 8px rgba(255,255,255,.08);
}
.photo-plant .plant-sprout{
  bottom:56px;
  height:62px;
  width:10px;
  background:linear-gradient(180deg,#a3e875 0%,#4fb24a 46%,#2c7733 100%);
  filter:drop-shadow(0 8px 8px rgba(0,0,0,.32));
}
.photo-plant .plant-sprout i,
.photo-plant .plant-sprout b,
.photo-plant .plant-sprout em{
  background:linear-gradient(135deg,#c5ed93 0%,#65bc55 54%,#2f7e35 100%);
  box-shadow:inset 0 1px 3px rgba(255,255,255,.22), 0 4px 8px rgba(0,0,0,.18);
}
.photo-plant .plant-sprout i{width:36px;height:20px;left:-36px;top:12px}
.photo-plant .plant-sprout b{width:38px;height:22px;right:-38px;top:2px}
.photo-plant .plant-sprout em{width:30px;height:18px;right:-30px;top:36px}
.photo-plant .plant-sprout small,
.photo-plant .plant-sprout strong{
  display:none;
  position:absolute;
  width:12px;height:12px;border-radius:50%;
  background:radial-gradient(circle at 35% 30%,#ffdf7b 0 18%,#e84b25 45%,#a42117 100%);
  box-shadow:0 5px 8px rgba(0,0,0,.22);
}
.photo-plant.is-planted{height:104px;transform:translate(-50%,-58%)}
.photo-plant.is-planted .plant-shadow{bottom:34px}
.photo-plant.is-planted .plant-mound{left:25px;right:25px;bottom:38px;height:34px}
.photo-plant.is-planted .plant-sprout{display:none}
.photo-plant.is-planted .plant-label-card{bottom:-2px}
.photo-plant.is-flowering .plant-sprout,
.photo-plant.is-large .plant-sprout{height:84px;width:12px;bottom:58px}
.photo-plant.is-flowering .plant-sprout::after{display:none!important}
.photo-plant.is-flowering .plant-sprout small,
.photo-plant.is-flowering .plant-sprout strong,
.photo-plant.is-large .plant-sprout small,
.photo-plant.is-large .plant-sprout strong{display:block}
.photo-plant .plant-sprout small{left:-16px;top:28px}
.photo-plant .plant-sprout strong{right:-18px;top:46px}
.photo-plant.is-large{transform:translate(-50%,-78%) scale(1.12)}
.photo-plant.is-large .plant-sprout small{left:-22px;top:24px;width:14px;height:14px}
.photo-plant.is-large .plant-sprout strong{right:-23px;top:49px;width:14px;height:14px}
.photo-plant.is-dormant{opacity:.62;filter:saturate(.58)}
.photo-plant.is-dormant .plant-sprout{height:30px;background:#7d8a71}
.photo-plant.is-dormant .plant-sprout i,.photo-plant.is-dormant .plant-sprout b,.photo-plant.is-dormant .plant-sprout em{display:none}
.plant-label-card{
  position:absolute;
  left:50%;
  bottom:-12px;
  transform:translateX(-50%);
  min-width:124px;
  max-width:158px;
  padding:9px 42px 9px 12px;
  border-radius:14px;
  background:rgba(8,11,9,.72);
  border:1px solid rgba(255,255,255,.18);
  backdrop-filter:blur(10px);
  color:#fff;
  box-shadow:0 14px 26px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.08);
}
.plant-label-title{
  display:block;
  font-size:.82rem;
  font-weight:850;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  letter-spacing:-.01em;
}
.plant-label-meta{
  display:block;
  margin-top:2px;
  font-size:.72rem;
  color:#8de874;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.photo-plant.is-planted .plant-label-meta{color:#d7c095}
.photo-plant.is-dormant .plant-label-meta{color:#9bb7df}
.plant-edit-icon{
  position:absolute;
  right:8px;
  top:50%;
  transform:translateY(-50%);
  width:30px;height:30px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.18);
  color:rgba(255,255,255,.86);
  background:rgba(255,255,255,.06);
  font-size:.95rem;
}
.seed-edit-link{margin-left:auto;white-space:nowrap}
@media (max-width:520px){
  .photo-garden-bg{height:620px;min-height:520px;background-position:center center}
  .garden-photo-head{left:18px;right:18px;top:18px}
  .garden-photo-head h2{font-size:1.55rem}
  .garden-photo-head p{font-size:.92rem;max-width:190px}
  .garden-mini-add{padding:10px 12px;font-size:.86rem;border-radius:15px}
  .photo-plant{width:106px;height:128px}
  .plant-label-card{min-width:112px;max-width:142px;padding:8px 38px 8px 10px}
  .plant-label-title{font-size:.76rem}.plant-label-meta{font-size:.68rem}
}
@media (max-width:390px){.photo-garden-bg{height:580px;min-height:500px}.garden-mini-add{font-size:0;width:44px;height:44px;padding:0;justify-content:center}.garden-mini-add span{font-size:1.7rem}}


/* v1.3.21: full-app clean zen garden fix
   Uses a clean no-plant sand background. All visible plants now come from seed data only. */
.photo-garden-bg{
  background-image:
    linear-gradient(180deg, rgba(2,10,7,.25), rgba(2,10,7,.02) 35%, rgba(2,10,7,.18) 100%),
    url('/assets/img/zen-garden-clean.jpg?v=1.3.21') !important;
  background-size: cover !important;
  background-position: center center !important;
  filter:none !important;
}
.photo-garden-bg::before,
.photo-garden-bg::after,
.zen-garden-bg::after{
  display:none !important;
}
.photo-garden-card{ background:#07120e; }
.photo-plant{ filter: drop-shadow(0 14px 18px rgba(0,0,0,.28)); }
.photo-plant .plant-label-card{
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}
.photo-plant.is-planted .plant-sprout{ display:none !important; }
.photo-plant.is-planted .plant-mound{
  left:13px;
  right:13px;
  bottom:12px;
  height:34px;
  background: radial-gradient(circle at 50% 27%, #7a5433 0%, #4d2e1b 48%, #24140c 100%);
  box-shadow: 0 12px 14px rgba(0,0,0,.32), inset 0 4px 8px rgba(255,255,255,.08);
}
.plant-label-card{ max-width:178px; }


/* v1.3.21: COMPLETE clean zen garden rebuild
   Full app preserved. The background is now a clean no-plant sand stage.
   All plants/labels come only from seed data. */
.photo-garden-card{
  border-radius:28px !important;
  overflow:hidden !important;
  background:#06110d !important;
  border:1px solid rgba(255,255,255,.12) !important;
}
.photo-garden-bg{
  height:min(112vw,640px) !important;
  min-height:500px !important;
  background-image:
    linear-gradient(180deg, rgba(3,12,8,.66) 0%, rgba(3,12,8,.36) 18%, rgba(3,12,8,.04) 38%, rgba(3,12,8,.10) 72%, rgba(3,12,8,.38) 100%),
    url('/assets/img/zen-garden-clean-v1321.jpg?v=1.3.21') !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  filter:none !important;
}
.photo-garden-bg::before,
.photo-garden-bg::after,
.zen-garden-bg::before,
.zen-garden-bg::after{
  display:none !important;
}
.garden-photo-head{
  top:20px !important;
  left:20px !important;
  right:20px !important;
}
.garden-photo-head h2{
  font-size:1.95rem !important;
  letter-spacing:-.045em !important;
  text-shadow:0 3px 18px rgba(0,0,0,.55) !important;
}
.garden-photo-head p{
  max-width:225px !important;
  font-size:.98rem !important;
  text-shadow:0 3px 14px rgba(0,0,0,.58) !important;
}
.garden-mini-add{
  background:rgba(6,16,12,.76) !important;
  border:1px solid rgba(255,255,255,.18) !important;
  box-shadow:0 14px 28px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.08) !important;
}
.photo-plant{
  width:112px !important;
  height:138px !important;
  z-index:12 !important;
  transform:translate(-50%,-70%) !important;
  filter:drop-shadow(0 18px 18px rgba(0,0,0,.24)) !important;
}
.photo-plant.is-planted{
  height:92px !important;
  transform:translate(-50%,-48%) !important;
}
.photo-plant .plant-shadow{
  left:24px !important;
  right:24px !important;
  bottom:26px !important;
  height:18px !important;
  background:rgba(0,0,0,.34) !important;
  filter:blur(7px) !important;
}
.photo-plant .plant-mound{
  left:29px !important;
  right:29px !important;
  bottom:33px !important;
  height:32px !important;
  border-radius:55% 45% 46% 54% !important;
  background:
    radial-gradient(circle at 45% 25%, rgba(139,93,52,.98) 0 16%, rgba(87,52,28,.98) 44%, rgba(39,22,12,.98) 86%) !important;
  box-shadow:0 12px 14px rgba(0,0,0,.32), inset 0 5px 8px rgba(255,255,255,.07) !important;
}
.photo-plant.is-planted .plant-mound{
  left:16px !important;
  right:16px !important;
  bottom:24px !important;
  height:38px !important;
}
.photo-plant.is-planted .plant-sprout{display:none !important;}
.photo-plant .plant-sprout{
  bottom:58px !important;
  height:66px !important;
  width:10px !important;
  border-radius:999px !important;
  background:linear-gradient(180deg,#a8ec83 0%,#56b84d 54%,#287534 100%) !important;
}
.photo-plant .plant-sprout i,
.photo-plant .plant-sprout b,
.photo-plant .plant-sprout em{
  border-radius:100% 0 100% 0 !important;
  background:linear-gradient(135deg,#c6ee9a 0%,#6ec65a 55%,#2f8134 100%) !important;
}
.photo-plant.is-large,
.photo-plant.is-flowering{
  transform:translate(-50%,-74%) scale(1.08) !important;
}
.photo-plant.is-dormant{
  opacity:.55 !important;
  filter:saturate(.45) drop-shadow(0 15px 16px rgba(0,0,0,.18)) !important;
}
.plant-label-card{
  bottom:-10px !important;
  min-width:124px !important;
  max-width:168px !important;
  border-radius:15px !important;
  padding:9px 42px 9px 12px !important;
  background:rgba(5,9,7,.76) !important;
  border:1px solid rgba(255,255,255,.20) !important;
  box-shadow:0 14px 26px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.09) !important;
  backdrop-filter:blur(12px) !important;
  -webkit-backdrop-filter:blur(12px) !important;
}
.photo-plant.is-planted .plant-label-card{bottom:-10px !important;}
.plant-label-title{
  font-size:.78rem !important;
  line-height:1.05 !important;
}
.plant-label-meta{
  font-size:.68rem !important;
}
.plant-edit-icon{
  width:30px !important;
  height:30px !important;
  border-radius:10px !important;
}
@media (max-width:520px){
  .photo-garden-bg{
    height:560px !important;
    min-height:500px !important;
    background-position:center center !important;
  }
  .garden-photo-head h2{font-size:1.48rem !important;}
  .garden-photo-head p{font-size:.9rem !important;max-width:180px !important;}
  .garden-mini-add{font-size:.84rem !important;padding:10px 12px !important;}
  .photo-plant{width:102px !important;height:126px !important;}
  .plant-label-card{min-width:110px !important;max-width:138px !important;}
}
@media (max-width:390px){
  .photo-garden-bg{height:530px !important;min-height:480px !important;}
  .garden-mini-add{font-size:0 !important;width:44px !important;height:44px !important;padding:0 !important;justify-content:center !important;}
}

/* v1.3.22: clean photographic zen garden background
   Uses the new no-plant, no-text background generated for the Garden stage. */
.photo-garden-bg{
  background-image:
    linear-gradient(180deg, rgba(3,12,8,.62) 0%, rgba(3,12,8,.28) 18%, rgba(3,12,8,.02) 40%, rgba(3,12,8,.10) 72%, rgba(3,12,8,.35) 100%),
    url('/assets/img/garden-bg-clean-v1322.jpg?v=1.3.77') !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  filter:none !important;
}
.photo-garden-bg::before,
.photo-garden-bg::after,
.zen-garden-bg::before,
.zen-garden-bg::after{
  display:none !important;
}
.photo-garden-card{
  background:#06110d !important;
}
@media (max-width:520px){
  .photo-garden-bg{
    background-position:center center !important;
  }
}


/* v1.3.24: AI plant asset replacement
   Replaces CSS-built plant shapes with PNG plant stage assets.
   Fruit only appears when seed_stage_class() returns is-fruit, which requires expected_value > 0. */
.photo-plant{
  width:132px !important;
  height:154px !important;
  display:block;
  overflow:visible;
  transform:translate(-50%,-70%) !important;
}

.photo-plant .plant-mound,
.photo-plant .plant-sprout{
  display:none !important;
}

.photo-plant .plant-asset{
  position:absolute;
  left:50%;
  bottom:28px;
  width:118px;
  max-width:none;
  height:auto;
  transform:translateX(-50%);
  object-fit:contain;
  filter:drop-shadow(0 14px 12px rgba(0,0,0,.36));
  pointer-events:none;
}

.photo-plant.is-planted .plant-asset{
  width:88px;
  bottom:42px;
}

.photo-plant.is-growing .plant-asset{
  width:96px;
  bottom:34px;
}

.photo-plant.is-fruit .plant-asset{
  width:124px;
  bottom:30px;
}

.photo-plant.is-dormant{
  opacity:.82;
  filter:saturate(.65);
}

.photo-plant.is-dormant .plant-asset{
  width:90px;
  bottom:38px;
}

.photo-plant .plant-shadow{
  position:absolute;
  left:28px !important;
  right:28px !important;
  bottom:35px !important;
  height:20px !important;
  border-radius:50% !important;
  background:rgba(0,0,0,.34) !important;
  filter:blur(8px) !important;
}

.photo-plant.is-planted .plant-shadow,
.photo-plant.is-dormant .plant-shadow{
  left:34px !important;
  right:34px !important;
}

.photo-plant.is-fruit{
  transform:translate(-50%,-75%) scale(1.04) !important;
}

.photo-plant.is-planted{
  transform:translate(-50%,-57%) !important;
}

.photo-plant.is-dormant{
  transform:translate(-50%,-58%) !important;
}

.photo-plant .plant-label-card{
  bottom:-14px !important;
  z-index:5;
}

.photo-plant.is-planted .plant-label-card,
.photo-plant.is-dormant .plant-label-card{
  bottom:0 !important;
}

@media (max-width:520px){
  .photo-plant{
    width:118px !important;
    height:142px !important;
  }
  .photo-plant .plant-asset{width:104px;}
  .photo-plant.is-planted .plant-asset{width:78px;}
  .photo-plant.is-growing .plant-asset{width:86px;}
  .photo-plant.is-fruit .plant-asset{width:112px;}
  .photo-plant.is-dormant .plant-asset{width:78px;}
}


/* v1.3.24: transparent AI plant asset cleanup */
.photo-plant .plant-asset{
  display:block;
  object-fit:contain;
  object-position:center bottom;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  filter:drop-shadow(0 13px 12px rgba(0,0,0,.28));
}
.photo-plant .plant-sprout,
.photo-plant .plant-mound{
  display:none !important;
}
.photo-plant.is-planted .plant-asset{width:86px;}
.photo-plant.is-growing .plant-asset{width:96px;}
.photo-plant.is-fruit .plant-asset{width:126px;}
.photo-plant.is-dormant .plant-asset{width:86px;opacity:.72;filter:saturate(.58) drop-shadow(0 10px 10px rgba(0,0,0,.22));}

/* v1.3.26: Compact garden labels. */
.photo-plant .plant-label-card,
.photo-plant .plant-label-card.plant-label-compact{
  min-width:0 !important;
  max-width:116px !important;
  width:auto !important;
  padding:6px 28px 6px 9px !important;
  border-radius:12px !important;
  background:rgba(8,11,9,.66) !important;
  border:1px solid rgba(255,255,255,.15) !important;
  box-shadow:0 10px 18px rgba(0,0,0,.26), inset 0 1px 0 rgba(255,255,255,.06) !important;
  backdrop-filter:blur(8px) !important;
  bottom:-30px !important;
  z-index:8 !important;
}
.photo-plant.is-planted .plant-label-card,
.photo-plant.is-dormant .plant-label-card{bottom:-30px !important;}
.photo-plant .plant-label-title{
  font-size:.72rem !important;
  line-height:1.05 !important;
  font-weight:800 !important;
  max-width:78px !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  letter-spacing:-.01em !important;
}
.photo-plant .plant-label-meta{display:none !important;}
.photo-plant .plant-edit-icon{
  position:absolute !important;
  right:5px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  width:20px !important;
  height:20px !important;
  border-radius:8px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:.75rem !important;
  line-height:1 !important;
  color:rgba(245,250,246,.88) !important;
  background:rgba(255,255,255,.08) !important;
  border:1px solid rgba(255,255,255,.16) !important;
}
.photo-plant.is-planted{transform:translate(-50%,-69%) !important;}
.photo-plant.is-planted .plant-asset{width:68px !important;}
@media (max-width:520px){
  .photo-plant .plant-label-card,
  .photo-plant .plant-label-card.plant-label-compact{
    max-width:108px !important;
    padding:6px 26px 6px 8px !important;
    bottom:-28px !important;
  }
  .photo-plant.is-planted .plant-label-card,
  .photo-plant.is-dormant .plant-label-card{bottom:-28px !important;}
  .photo-plant .plant-label-title{font-size:.68rem !important;max-width:72px !important;}
  .photo-plant .plant-edit-icon{width:19px !important;height:19px !important;font-size:.7rem !important;}
}

/* v1.3.26: tighten garden labels and update seed-detail art to match garden. */
.photo-plant .plant-label-card,
.photo-plant .plant-label-card.plant-label-compact{
  bottom:-16px !important;
  max-width:104px !important;
  padding:5px 25px 5px 8px !important;
  border-radius:11px !important;
  background:rgba(8,11,9,.62) !important;
}
.photo-plant.is-planted .plant-label-card,
.photo-plant.is-dormant .plant-label-card{
  bottom:-16px !important;
}
.photo-plant .plant-label-title{
  font-size:.66rem !important;
  max-width:68px !important;
}
.photo-plant .plant-edit-icon{
  right:4px !important;
  width:18px !important;
  height:18px !important;
  border-radius:7px !important;
  font-size:.66rem !important;
}

.seed-photo-illusion.seed-photo-garden{
  height:360px !important;
  position:relative !important;
  overflow:hidden !important;
  background-image:
    linear-gradient(180deg, rgba(3,12,8,.58) 0%, rgba(3,12,8,.22) 30%, rgba(3,12,8,.06) 56%, rgba(3,12,8,.28) 100%),
    url('/assets/img/garden-bg-clean-v1322.jpg?v=1.3.77') !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  filter:none !important;
}
.seed-photo-illusion.seed-photo-garden::before,
.seed-photo-illusion.seed-photo-garden::after{
  display:none !important;
}
.seed-photo-illusion.seed-photo-garden .detail-ring,
.seed-photo-illusion.seed-photo-garden .detail-rock,
.seed-photo-illusion.seed-photo-garden .detail-sprout{
  display:none !important;
}
.detail-plant-asset{
  position:absolute;
  left:50%;
  bottom:34px;
  width:150px;
  max-width:none;
  height:auto;
  transform:translateX(-50%);
  object-fit:contain;
  filter:drop-shadow(0 18px 16px rgba(0,0,0,.36));
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.detail-plant-asset.is-planted{
  width:120px;
  bottom:60px;
}
.detail-plant-asset.is-growing{
  width:142px;
  bottom:48px;
}
.detail-plant-asset.is-fruit{
  width:176px;
  bottom:40px;
}
.detail-plant-asset.is-dormant{
  width:122px;
  bottom:54px;
  opacity:.78;
  filter:saturate(.6) drop-shadow(0 14px 14px rgba(0,0,0,.30));
}
@media (max-width:520px){
  .photo-plant .plant-label-card,
  .photo-plant .plant-label-card.plant-label-compact{
    bottom:-14px !important;
    max-width:98px !important;
    padding:5px 24px 5px 8px !important;
  }
  .photo-plant.is-planted .plant-label-card,
  .photo-plant.is-dormant .plant-label-card{bottom:-14px !important;}
  .photo-plant .plant-label-title{font-size:.64rem !important;max-width:62px !important;}
  .seed-photo-illusion.seed-photo-garden{height:330px !important;}
  .detail-plant-asset.is-fruit{width:158px;}
  .detail-plant-asset.is-growing{width:130px;}
  .detail-plant-asset.is-planted,.detail-plant-asset.is-dormant{width:112px;}
}



/* v1.3.55 — action-first home redesign */
.home-action-shell{
  gap:16px;
}

.home-action-hero{
  position:relative;
  overflow:hidden;
  padding:24px;
  border-radius:28px;
  background:
    radial-gradient(circle at 88% 12%, rgba(142, 255, 131, .16), transparent 28%),
    radial-gradient(circle at 8% 0%, rgba(216, 183, 106, .10), transparent 26%),
    linear-gradient(180deg, rgba(25,39,30,.98), rgba(11,23,17,.98));
  border-color:rgba(155,185,150,.20);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.06),
    0 18px 42px rgba(0,0,0,.25);
}

.home-action-top{
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:flex-start;
  margin-bottom:22px;
}

.home-week-total{
  font-size:clamp(3.8rem, 12vw, 5.7rem);
  line-height:.88;
  font-weight:850;
  letter-spacing:-.07em;
  color:var(--text);
  margin-top:8px;
}

.home-action-subtitle{
  margin:14px 0 0;
  font-size:1.25rem;
  line-height:1.28;
  color:rgba(234,240,234,.72);
  font-weight:650;
}

.home-help{
  flex:0 0 auto;
  margin-top:4px;
}

.home-primary-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin-top:12px;
}

.home-choice{
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  min-height:188px;
  padding:20px;
  border-radius:26px;
  border:1px solid rgba(255,255,255,.12);
  overflow:hidden;
  text-decoration:none;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.10),
    inset 0 -1px 0 rgba(0,0,0,.22),
    0 14px 28px rgba(0,0,0,.22);
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}

.home-choice:active,
.home-choice:hover{
  transform:translateY(-2px);
  border-color:rgba(255,255,255,.22);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.12),
    inset 0 -1px 0 rgba(0,0,0,.26),
    0 18px 34px rgba(0,0,0,.28);
}

.home-choice-money{
  background:
    radial-gradient(circle at 84% 16%, rgba(255,255,255,.18), transparent 30%),
    linear-gradient(145deg, #a8cf98, #5f945e 55%, #355c3d);
  color:#07120b;
}

.home-choice-seed{
  background:
    radial-gradient(circle at 84% 16%, rgba(171,255,148,.16), transparent 30%),
    linear-gradient(145deg, #294d35, #173424 55%, #0e2118);
  color:var(--text);
}

.home-choice-icon{
  width:52px;
  height:52px;
  border-radius:18px;
  display:grid;
  place-items:center;
  margin-bottom:18px;
}

.home-choice-money .home-choice-icon{
  background:rgba(8,20,11,.16);
  color:#07120b;
}

.home-choice-seed .home-choice-icon{
  background:rgba(151,255,135,.14);
  color:#98ff85;
}

.home-choice-icon svg{
  width:31px;
  height:31px;
  fill:none;
  stroke:currentColor;
  stroke-width:2.2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.home-choice-copy{
  display:grid;
  gap:8px;
  padding-right:26px;
}

.home-choice-copy strong{
  font-size:clamp(1.28rem, 4.2vw, 1.72rem);
  line-height:1.02;
  letter-spacing:-.045em;
}

.home-choice-copy span{
  font-size:.96rem;
  line-height:1.28;
  font-weight:650;
}

.home-choice-money .home-choice-copy span{
  color:rgba(7,18,11,.72);
}

.home-choice-seed .home-choice-copy span{
  color:rgba(234,240,234,.72);
}

.home-choice-arrow{
  position:absolute;
  right:18px;
  bottom:16px;
  font-size:1.45rem;
  line-height:1;
  opacity:.78;
}

.home-secondary-links{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:16px;
}

.home-secondary-links a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:0 16px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.045);
  color:rgba(234,240,234,.86);
  text-decoration:none;
  font-weight:750;
}

.home-mini-stats{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
}

.home-mini-card{
  min-height:86px;
  border:1px solid var(--line);
  border-radius:22px;
  background:rgba(18,29,22,.72);
  display:grid;
  align-content:center;
  gap:6px;
  padding:16px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}

.home-mini-card span{
  color:rgba(234,240,234,.62);
  font-weight:750;
  font-size:.82rem;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.home-mini-card strong{
  font-size:1.42rem;
  line-height:1;
  letter-spacing:-.03em;
}

.home-recent-card{
  padding:18px;
}

.home-recent-card h2{
  font-size:1.2rem;
}

.home-activity-row{
  padding:14px 0;
}

.home-empty{
  padding:18px;
  border-radius:18px;
}

@media (max-width:720px){
  .home-action-hero{
    padding:22px;
    border-radius:26px;
  }

  .home-primary-actions{
    grid-template-columns:1fr;
    gap:12px;
  }

  .home-choice{
    min-height:132px;
    padding:18px;
    flex-direction:row;
    align-items:center;
    justify-content:flex-start;
    gap:16px;
  }

  .home-choice-icon{
    margin:0;
    width:54px;
    height:54px;
    flex:0 0 54px;
  }

  .home-choice-copy{
    padding-right:28px;
  }

  .home-choice-copy strong{
    font-size:1.48rem;
  }

  .home-choice-arrow{
    right:18px;
    bottom:auto;
    top:50%;
    transform:translateY(-50%);
  }
}

@media (max-width:440px){
  .home-action-hero{
    padding:20px 18px;
  }

  .home-week-total{
    font-size:3.65rem;
  }

  .home-action-subtitle{
    font-size:1.08rem;
  }

  .home-choice{
    min-height:122px;
    border-radius:24px;
    padding:16px;
  }

  .home-choice-copy strong{
    font-size:1.34rem;
  }

  .home-choice-copy span{
    font-size:.88rem;
  }

  .home-mini-stats{
    gap:8px;
  }

  .home-mini-card{
    padding:12px 10px;
    border-radius:18px;
    min-height:76px;
  }

  .home-mini-card strong{
    font-size:1.22rem;
  }

  .home-mini-card span{
    font-size:.72rem;
  }
}

/* v1.3.55 — follow-up tracker language + watering flow */


/* v1.3.30: cleaner garden layout and readable labels */
.garden-plot-item{position:absolute;inset:0;z-index:5}
.garden-plot-item .garden-plant{
  left:var(--plant-x) !important;
  top:var(--plant-y) !important;
}
.photo-plant .plant-label-card,
.photo-plant .plant-label-card.plant-label-compact{
  display:none !important;
}
.garden-plot-label{
  position:absolute;
  left:var(--label-x);
  top:var(--label-y);
  transform:translate(-50%,-50%);
  z-index:12;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  min-width:92px;
  max-width:122px;
  padding:8px 10px;
  border-radius:14px;
  background:rgba(13,18,15,.78);
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 12px 22px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.05);
  color:#f7fbf7;
  text-decoration:none;
  backdrop-filter:blur(8px);
}
.garden-plot-label-title{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
  font-size:.78rem;
  line-height:1.15;
  font-weight:800;
  letter-spacing:-.01em;
  word-break:break-word;
}
.garden-visual-summary{
  position:absolute;
  left:50%;
  bottom:12px;
  transform:translateX(-50%);
  z-index:14;
  width:calc(100% - 32px);
  text-align:center;
  font-size:.74rem;
  color:rgba(245,249,245,.82);
  background:rgba(8,12,10,.56);
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  padding:7px 12px;
  backdrop-filter:blur(6px);
}
.photo-garden-bg{
  height:680px !important;
  min-height:680px !important;
}
.photo-plant{
  width:100px !important;
  height:122px !important;
}
.photo-plant .plant-asset{
  filter:drop-shadow(0 10px 11px rgba(0,0,0,.2));
}
.photo-plant.is-growing .plant-asset{width:84px !important;}
.photo-plant.is-fruit .plant-asset{width:104px !important;}
.photo-plant.is-planted .plant-asset{width:64px !important;}
.photo-plant.is-dormant .plant-asset{width:64px !important;}
.photo-plant.is-planted{transform:translate(-50%,-68%) !important;}
.photo-plant.is-dormant{transform:translate(-50%,-69%) !important;}
.photo-plant.is-fruit{transform:translate(-50%,-76%) !important;}
.photo-plant.is-growing{transform:translate(-50%,-74%) !important;}
@media (max-width:520px){
  .photo-garden-bg{
    height:640px !important;
    min-height:640px !important;
  }
  .garden-photo-head{
    gap:14px !important;
  }
  .garden-photo-head p{
    max-width:170px !important;
  }
  .photo-plant{
    width:88px !important;
    height:112px !important;
  }
  .photo-plant.is-growing .plant-asset{width:78px !important;}
  .photo-plant.is-fruit .plant-asset{width:96px !important;}
  .photo-plant.is-planted .plant-asset,
  .photo-plant.is-dormant .plant-asset{width:58px !important;}
  .garden-plot-label{
    min-width:84px;
    max-width:108px;
    padding:7px 8px;
    border-radius:12px;
  }
  .garden-plot-label-title{
    font-size:.72rem;
    line-height:1.1;
  }
  .garden-visual-summary{
    width:calc(100% - 24px);
    font-size:.7rem;
    bottom:10px;
  }
}


/* v1.3.31: swipeable row garden pages */
.garden-swipe-hint{
  position:absolute;
  left:16px;
  right:16px;
  top:92px;
  z-index:14;
  text-align:center;
  font-size:.74rem;
  color:rgba(247,251,247,.82);
  background:rgba(9,14,11,.52);
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  padding:7px 10px;
  backdrop-filter:blur(6px);
}
.garden-pages-scroll{
  position:absolute;
  left:0;
  right:0;
  top:128px;
  bottom:18px;
  z-index:8;
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:100%;
  overflow-x:auto;
  overscroll-behavior-x:contain;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
}
.garden-pages-scroll::-webkit-scrollbar{display:none;}
.garden-page-panel{
  position:relative;
  scroll-snap-align:start;
  padding:18px 18px 8px;
}
.garden-page-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:94px;
  padding:7px 12px;
  border-radius:999px;
  background:rgba(12,18,14,.78);
  border:1px solid rgba(255,255,255,.16);
  color:#f7fbf7;
  font-size:.75rem;
  font-weight:800;
  box-shadow:0 10px 18px rgba(0,0,0,.18);
  margin-bottom:12px;
}
.garden-grid{
  height:100%;
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  grid-template-rows:repeat(2, minmax(0, 1fr));
  column-gap:10px;
  row-gap:12px;
  align-items:end;
}
.garden-grid-cell{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
}
.garden-grid-plant{
  position:relative !important;
  left:auto !important;
  top:auto !important;
  transform:none !important;
  width:100% !important;
  max-width:116px;
  height:120px !important;
  display:flex !important;
  align-items:flex-end;
  justify-content:center;
}
.garden-grid-plant .plant-shadow{bottom:22px !important;}
.garden-grid-plant .plant-asset{position:relative; left:auto; bottom:auto;}
.garden-grid-label{
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  min-height:42px;
  width:100%;
  max-width:122px;
  padding:7px 8px;
  border-radius:14px;
  background:rgba(13,18,15,.78);
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 12px 22px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.05);
  color:#f7fbf7;
  text-decoration:none;
  backdrop-filter:blur(8px);
}
.garden-grid-label-title{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
  font-size:.78rem;
  line-height:1.15;
  font-weight:800;
  letter-spacing:-.01em;
  word-break:break-word;
}
.garden-page-dots{
  position:absolute;
  left:50%;
  bottom:12px;
  transform:translateX(-50%);
  z-index:14;
  display:flex;
  align-items:center;
  gap:6px;
}
.garden-page-dot{
  width:8px;
  height:8px;
  border-radius:999px;
  background:rgba(255,255,255,.35);
  box-shadow:0 1px 4px rgba(0,0,0,.18);
}
.garden-page-dot.is-active{
  width:18px;
  background:rgba(142,222,111,.88);
}
.garden-plot-item,
.garden-plot-label,
.garden-visual-summary{display:none !important;}
.photo-garden-bg{
  height:700px !important;
  min-height:700px !important;
}
.photo-plant{
  width:100px !important;
  height:118px !important;
}
.photo-plant.is-growing .plant-asset{width:82px !important;}
.photo-plant.is-fruit .plant-asset{width:104px !important;}
.photo-plant.is-planted .plant-asset{width:60px !important;}
.photo-plant.is-dormant .plant-asset{width:60px !important;}
.photo-plant.is-growing,
.photo-plant.is-fruit,
.photo-plant.is-planted,
.photo-plant.is-dormant{transform:none !important;}
@media (max-width:520px){
  .photo-garden-bg{
    height:650px !important;
    min-height:650px !important;
  }
  .garden-swipe-hint{
    top:88px;
    font-size:.7rem;
    left:12px;
    right:12px;
  }
  .garden-pages-scroll{
    top:122px;
    bottom:16px;
  }
  .garden-page-panel{
    padding:14px 12px 8px;
  }
  .garden-grid{
    column-gap:6px;
    row-gap:10px;
  }
  .garden-grid-plant{
    max-width:92px;
    height:104px !important;
  }
  .photo-plant.is-growing .plant-asset{width:72px !important;}
  .photo-plant.is-fruit .plant-asset{width:90px !important;}
  .photo-plant.is-planted .plant-asset,
  .photo-plant.is-dormant .plant-asset{width:52px !important;}
  .garden-grid-label{
    max-width:102px;
    min-height:38px;
    padding:6px 7px;
    border-radius:12px;
  }
  .garden-grid-label-title{
    font-size:.7rem;
    line-height:1.08;
  }
}


/* v1.3.32: locked vertical garden pages */
.photo-garden-card{
  overflow:hidden;
}
.garden-swipe-banner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:0 0 12px;
  padding:10px 12px;
  border-radius:14px;
  background:rgba(12,18,14,.72);
  border:1px solid rgba(255,255,255,.12);
  color:#f6fbf6;
  font-size:.78rem;
}
.garden-swipe-banner strong{
  white-space:nowrap;
  font-size:.8rem;
}
.photo-garden-bg{
  overflow:hidden !important;
  height:720px !important;
  min-height:720px !important;
}
.garden-photo-head{
  z-index:4 !important;
}
.garden-swipe-hint{display:none !important;}
.garden-pages-viewport{
  position:absolute;
  left:0;
  right:0;
  top:110px;
  bottom:18px;
  overflow:hidden;
  z-index:8;
}
.garden-pages-scroll{
  position:absolute;
  inset:0;
  display:flex;
  flex-wrap:nowrap;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-x:contain;
  scrollbar-width:none;
}
.garden-pages-scroll::-webkit-scrollbar{display:none;}
.garden-page-panel{
  flex:0 0 100%;
  min-width:100%;
  max-width:100%;
  height:100%;
  box-sizing:border-box;
  scroll-snap-align:start;
  padding:16px 16px 10px;
}
.vertical-garden-grid{
  grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  grid-template-rows:repeat(3, minmax(0,1fr)) !important;
  column-gap:16px !important;
  row-gap:12px !important;
  align-items:end;
}
.garden-grid-cell{
  gap:6px;
}
.garden-grid-plant{
  max-width:128px;
  height:132px !important;
}
.garden-grid-label{
  max-width:128px;
  min-height:40px;
}
.garden-grid-label-title{
  font-size:.76rem;
}
.garden-page-dots{
  bottom:10px;
}
.photo-plant{
  width:100px !important;
  height:122px !important;
}
.photo-plant.is-growing .plant-asset{width:80px !important;}
.photo-plant.is-fruit .plant-asset{width:100px !important;}
.photo-plant.is-planted .plant-asset,
.photo-plant.is-dormant .plant-asset{width:58px !important;}
@media (max-width:520px){
  .garden-swipe-banner{
    flex-direction:column;
    align-items:flex-start;
    gap:4px;
    padding:9px 10px;
    font-size:.72rem;
  }
  .photo-garden-bg{
    height:670px !important;
    min-height:670px !important;
  }
  .garden-pages-viewport{
    top:104px;
    bottom:16px;
  }
  .garden-page-panel{
    padding:12px 10px 8px;
  }
  .vertical-garden-grid{
    column-gap:10px !important;
    row-gap:10px !important;
  }
  .garden-grid-plant{
    max-width:98px;
    height:112px !important;
  }
  .garden-grid-label{
    max-width:102px;
    min-height:38px;
    padding:6px 7px;
  }
  .garden-grid-label-title{
    font-size:.7rem;
    line-height:1.08;
  }
  .photo-plant.is-growing .plant-asset{width:70px !important;}
  .photo-plant.is-fruit .plant-asset{width:88px !important;}
  .photo-plant.is-planted .plant-asset,
  .photo-plant.is-dormant .plant-asset{width:50px !important;}
}


/* v1.3.33: white stake labels next to plants */
.garden-grid-label,
.garden-grid-label-title{
  display:none !important;
}
.garden-plant-scene{
  position:relative;
  width:100%;
  max-width:160px;
  min-height:146px;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  overflow:visible;
}
.garden-grid-cell{
  overflow:visible;
}
.garden-grid-plant{
  max-width:108px;
  height:126px !important;
  z-index:2;
}
.garden-stake-label{
  position:absolute;
  bottom:20px;
  z-index:3;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-decoration:none;
}
.garden-plant-scene.stake-right .garden-stake-label{right:0;}
.garden-plant-scene.stake-left .garden-stake-label{left:0;}
.garden-stake-sign{
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:86px;
  max-width:108px;
  min-height:34px;
  padding:6px 10px;
  border-radius:12px;
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(244,247,244,.94));
  border:1px solid rgba(68,79,70,.16);
  box-shadow:0 10px 18px rgba(0,0,0,.14), inset 0 1px 0 rgba(255,255,255,.75);
}
.garden-stake-text{
  display:block;
  color:#253227;
  font-size:.73rem;
  line-height:1.1;
  font-weight:800;
  letter-spacing:-.01em;
  text-align:center;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  max-width:90px;
}
.garden-stake-stem{
  width:4px;
  height:40px;
  margin-top:-1px;
  border-radius:999px;
  background:linear-gradient(180deg, rgba(245,245,245,.98), rgba(210,216,210,.92));
  border-left:1px solid rgba(77,88,78,.12);
  border-right:1px solid rgba(77,88,78,.08);
  box-shadow:0 3px 8px rgba(0,0,0,.1);
}
.vertical-garden-grid{
  column-gap:18px !important;
}
.photo-plant{
  width:96px !important;
  height:118px !important;
}
.photo-plant.is-growing .plant-asset{width:76px !important;}
.photo-plant.is-fruit .plant-asset{width:96px !important;}
.photo-plant.is-planted .plant-asset,
.photo-plant.is-dormant .plant-asset{width:56px !important;}
@media (max-width:520px){
  .garden-plant-scene{
    max-width:124px;
    min-height:126px;
  }
  .garden-grid-plant{
    max-width:84px;
    height:104px !important;
  }
  .garden-stake-label{bottom:18px;}
  .garden-stake-sign{
    min-width:70px;
    max-width:88px;
    min-height:30px;
    padding:5px 8px;
    border-radius:10px;
  }
  .garden-stake-text{
    font-size:.66rem;
    max-width:72px;
  }
  .garden-stake-stem{
    width:3px;
    height:34px;
  }
  .photo-plant.is-growing .plant-asset{width:68px !important;}
  .photo-plant.is-fruit .plant-asset{width:84px !important;}
  .photo-plant.is-planted .plant-asset,
  .photo-plant.is-dormant .plant-asset{width:48px !important;}
}


/* v1.3.34: vertical garden stake labels */
.garden-plant-scene{
  max-width:168px;
  min-height:154px;
}
.garden-grid-cell{
  overflow:visible;
}
.garden-grid-plant{
  max-width:106px;
  height:126px !important;
  z-index:2;
}
.garden-stake-label{
  position:absolute;
  bottom:14px;
  z-index:3;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  text-decoration:none;
  width:34px;
  height:112px;
}
.garden-plant-scene.stake-right .garden-stake-label{
  right:6px;
}
.garden-plant-scene.stake-left .garden-stake-label{
  left:6px;
}
.garden-stake-sign{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  width:28px;
  height:92px;
  padding:0;
  border-radius:10px 10px 6px 6px;
  background:linear-gradient(180deg, rgba(255,255,255,.99), rgba(243,246,243,.96));
  border:1px solid rgba(76,84,76,.16);
  box-shadow:0 8px 18px rgba(0,0,0,.16), inset 0 1px 0 rgba(255,255,255,.82);
}
.garden-stake-sign::after{
  content:'';
  position:absolute;
  left:50%;
  bottom:-30px;
  transform:translateX(-50%);
  width:4px;
  height:32px;
  border-radius:999px;
  background:linear-gradient(180deg, rgba(246,246,246,.98), rgba(210,216,210,.94));
  border-left:1px solid rgba(77,88,78,.12);
  border-right:1px solid rgba(77,88,78,.08);
  box-shadow:0 3px 8px rgba(0,0,0,.10);
}
.garden-stake-stem{
  display:none !important;
}
.garden-stake-text{
  display:block;
  transform:rotate(-90deg);
  transform-origin:center;
  color:#253227;
  font-size:.72rem;
  line-height:1;
  font-weight:800;
  letter-spacing:-.01em;
  text-align:center;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  max-width:78px;
}
.photo-plant{
  width:96px !important;
  height:118px !important;
}
.photo-plant.is-growing .plant-asset{width:74px !important;}
.photo-plant.is-fruit .plant-asset{width:94px !important;}
.photo-plant.is-planted .plant-asset,
.photo-plant.is-dormant .plant-asset{width:54px !important;}
@media (max-width:520px){
  .garden-plant-scene{
    max-width:128px;
    min-height:132px;
  }
  .garden-grid-plant{
    max-width:82px;
    height:104px !important;
  }
  .garden-stake-label{
    width:28px;
    height:92px;
    bottom:14px;
  }
  .garden-plant-scene.stake-right .garden-stake-label{right:2px;}
  .garden-plant-scene.stake-left .garden-stake-label{left:2px;}
  .garden-stake-sign{
    width:24px;
    height:76px;
    border-radius:9px 9px 5px 5px;
  }
  .garden-stake-sign::after{
    height:24px;
    bottom:-23px;
    width:3px;
  }
  .garden-stake-text{
    font-size:.62rem;
    max-width:64px;
  }
  .photo-plant.is-growing .plant-asset{width:66px !important;}
  .photo-plant.is-fruit .plant-asset{width:82px !important;}
  .photo-plant.is-planted .plant-asset,
  .photo-plant.is-dormant .plant-asset{width:46px !important;}
}


/* v1.3.35: slimmer readable stake labels */
.garden-plant-scene{
  max-width:170px;
  min-height:158px;
}
.garden-grid-plant{
  max-width:108px;
  height:128px !important;
}
.garden-stake-label{
  bottom:12px;
  width:24px;
  height:144px;
}
.garden-plant-scene.stake-right .garden-stake-label{right:10px;}
.garden-plant-scene.stake-left .garden-stake-label{left:10px;}
.garden-stake-sign{
  width:18px;
  height:118px;
  border-radius:8px 8px 4px 4px;
  box-shadow:0 6px 14px rgba(0,0,0,.12), inset 0 1px 0 rgba(255,255,255,.85);
}
.garden-stake-sign::after{
  width:3px;
  height:28px;
  bottom:-26px;
}
.garden-stake-text{
  font-size:.52rem;
  line-height:1;
  letter-spacing:-.02em;
  font-weight:800;
  white-space:nowrap;
  overflow:visible;
  text-overflow:clip;
  max-width:none;
}
/* slightly tighter plant scaling */
.photo-plant{
  width:94px !important;
  height:116px !important;
}
.photo-plant.is-growing .plant-asset{width:72px !important;}
.photo-plant.is-fruit .plant-asset{width:92px !important;}
.photo-plant.is-planted .plant-asset,
.photo-plant.is-dormant .plant-asset{width:52px !important;}

@media (max-width:520px){
  .garden-plant-scene{
    max-width:126px;
    min-height:134px;
  }
  .garden-grid-plant{
    max-width:84px;
    height:104px !important;
  }
  .garden-stake-label{
    width:20px;
    height:120px;
    bottom:10px;
  }
  .garden-plant-scene.stake-right .garden-stake-label{right:4px;}
  .garden-plant-scene.stake-left .garden-stake-label{left:4px;}
  .garden-stake-sign{
    width:15px;
    height:96px;
    border-radius:7px 7px 4px 4px;
  }
  .garden-stake-sign::after{
    width:2px;
    height:22px;
    bottom:-20px;
  }
  .garden-stake-text{
    font-size:.43rem;
    letter-spacing:-.015em;
  }
  .photo-plant.is-growing .plant-asset{width:66px !important;}
  .photo-plant.is-fruit .plant-asset{width:82px !important;}
  .photo-plant.is-planted .plant-asset,
  .photo-plant.is-dormant .plant-asset{width:46px !important;}
}


/* v1.3.36: ultra-slim stake labels + move garden badge */
.garden-page-badge{
  display:flex;
  width:fit-content;
  margin-left:auto;
  margin-right:8px;
  margin-bottom:10px;
  min-width:0;
  padding:6px 10px;
  font-size:.72rem;
}
.garden-pages-viewport{
  top:138px;
}
.garden-page-panel{
  padding-top:8px;
}
.garden-plant-scene{
  max-width:174px;
  min-height:164px;
}
.garden-grid-plant{
  max-width:106px;
  height:126px !important;
}
.garden-stake-label{
  bottom:10px;
  width:16px;
  height:164px;
}
.garden-plant-scene.stake-right .garden-stake-label{right:2px;}
.garden-plant-scene.stake-left .garden-stake-label{left:2px;}
.garden-stake-sign{
  width:12px;
  height:136px;
  min-width:12px;
  min-height:136px;
  border-radius:6px 6px 3px 3px;
  box-shadow:0 4px 10px rgba(0,0,0,.10), inset 0 1px 0 rgba(255,255,255,.9);
}
.garden-stake-sign::after{
  width:2px;
  height:26px;
  bottom:-24px;
}
.garden-stake-text{
  font-size:.42rem;
  letter-spacing:-.01em;
  font-weight:800;
}
@media (max-width:520px){
  .garden-pages-viewport{
    top:132px;
  }
  .garden-page-badge{
    margin-right:6px;
    padding:5px 8px;
    font-size:.66rem;
  }
  .garden-plant-scene{
    max-width:128px;
    min-height:140px;
  }
  .garden-grid-plant{
    max-width:82px;
    height:102px !important;
  }
  .garden-stake-label{
    width:14px;
    height:132px;
    bottom:8px;
  }
  .garden-plant-scene.stake-right .garden-stake-label{right:0;}
  .garden-plant-scene.stake-left .garden-stake-label{left:0;}
  .garden-stake-sign{
    width:10px;
    height:110px;
    min-width:10px;
    min-height:110px;
    border-radius:5px 5px 3px 3px;
  }
  .garden-stake-sign::after{
    width:2px;
    height:20px;
    bottom:-18px;
  }
  .garden-stake-text{
    font-size:.36rem;
  }
}


/* v1.3.37: lock stake labels tight to plants with slight angle */
.garden-grid-cell{
  align-items:center;
}
.garden-plant-scene{
  max-width:136px;
  min-height:156px;
}
.garden-grid-plant{
  max-width:98px;
  height:118px !important;
}
.garden-stake-label{
  bottom:16px;
  width:14px;
  height:138px;
  transform-origin:bottom center;
}
.garden-plant-scene.stake-right .garden-stake-label{
  right:12px;
  transform:rotate(5deg);
}
.garden-plant-scene.stake-left .garden-stake-label{
  left:12px;
  transform:rotate(-5deg);
}
.garden-stake-sign{
  width:10px;
  height:114px;
  min-width:10px;
  min-height:114px;
  border-radius:5px 5px 3px 3px;
  box-shadow:0 3px 8px rgba(0,0,0,.10), inset 0 1px 0 rgba(255,255,255,.9);
}
.garden-stake-sign::after{
  width:2px;
  height:22px;
  bottom:-20px;
}
.garden-stake-text{
  font-size:.39rem;
  letter-spacing:-.01em;
}
.photo-plant{
  width:92px !important;
  height:112px !important;
}
.photo-plant.is-growing .plant-asset{width:70px !important;}
.photo-plant.is-fruit .plant-asset{width:88px !important;}
.photo-plant.is-planted .plant-asset,
.photo-plant.is-dormant .plant-asset{width:50px !important;}

@media (max-width:520px){
  .garden-plant-scene{
    max-width:104px;
    min-height:126px;
  }
  .garden-grid-plant{
    max-width:76px;
    height:96px !important;
  }
  .garden-stake-label{
    width:12px;
    height:116px;
    bottom:12px;
  }
  .garden-plant-scene.stake-right .garden-stake-label{right:8px;}
  .garden-plant-scene.stake-left .garden-stake-label{left:8px;}
  .garden-stake-sign{
    width:9px;
    height:96px;
    min-width:9px;
    min-height:96px;
  }
  .garden-stake-sign::after{
    height:18px;
    bottom:-16px;
  }
  .garden-stake-text{
    font-size:.33rem;
  }
  .photo-plant.is-growing .plant-asset{width:62px !important;}
  .photo-plant.is-fruit .plant-asset{width:78px !important;}
  .photo-plant.is-planted .plant-asset,
  .photo-plant.is-dormant .plant-asset{width:42px !important;}
}


/* v1.3.38: denser 3-column x 4-row garden with plant-locked stakes */
.vertical-garden-grid{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0,1fr)) !important;
  grid-template-rows:repeat(4, minmax(0,1fr)) !important;
  grid-auto-flow:column !important;
  column-gap:10px !important;
  row-gap:4px !important;
  align-items:end !important;
  height:100%;
}
.garden-pages-viewport{
  top:136px;
}
.garden-page-panel{
  padding:8px 10px 8px;
}
.garden-grid-cell{
  align-items:center;
  justify-content:flex-end;
  overflow:visible;
}
.garden-plant-scene{
  position:relative;
  width:100%;
  max-width:112px;
  min-height:112px;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  overflow:visible;
}
.garden-grid-plant{
  position:relative !important;
  max-width:76px;
  width:76px !important;
  height:92px !important;
  z-index:2;
}
.garden-grid-plant .plant-shadow{bottom:16px !important;}
.photo-plant{
  width:76px !important;
  height:92px !important;
}
.photo-plant.is-growing .plant-asset{width:58px !important;}
.photo-plant.is-fruit .plant-asset{width:74px !important;}
.photo-plant.is-planted .plant-asset,
.photo-plant.is-dormant .plant-asset{width:40px !important;}
.garden-stake-label{
  position:absolute;
  bottom:14px;
  width:12px;
  height:94px;
  z-index:3;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  transform-origin:bottom center;
}
.garden-plant-scene.stake-right .garden-stake-label{
  left:calc(50% + 16px);
  transform:rotate(7deg);
}
.garden-plant-scene.stake-left .garden-stake-label{
  left:calc(50% - 28px);
  transform:rotate(-7deg);
}
.garden-stake-sign{
  width:8px;
  min-width:8px;
  height:78px;
  min-height:78px;
  border-radius:4px 4px 2px 2px;
  box-shadow:0 3px 8px rgba(0,0,0,.10), inset 0 1px 0 rgba(255,255,255,.92);
}
.garden-stake-sign::after{
  width:2px;
  height:18px;
  bottom:-16px;
}
.garden-stake-text{
  font-size:.31rem;
  line-height:1;
  font-weight:800;
  letter-spacing:-.01em;
}
@media (max-width:520px){
  .garden-pages-viewport{
    top:132px;
  }
  .garden-page-panel{
    padding:8px 8px 8px;
  }
  .vertical-garden-grid{
    column-gap:6px !important;
    row-gap:2px !important;
  }
  .garden-plant-scene{
    max-width:96px;
    min-height:102px;
  }
  .garden-grid-plant,
  .photo-plant{
    max-width:64px;
    width:64px !important;
    height:80px !important;
  }
  .photo-plant.is-growing .plant-asset{width:50px !important;}
  .photo-plant.is-fruit .plant-asset{width:64px !important;}
  .photo-plant.is-planted .plant-asset,
  .photo-plant.is-dormant .plant-asset{width:35px !important;}
  .garden-stake-label{
    width:10px;
    height:82px;
    bottom:12px;
  }
  .garden-plant-scene.stake-right .garden-stake-label{
    left:calc(50% + 12px);
  }
  .garden-plant-scene.stake-left .garden-stake-label{
    left:calc(50% - 22px);
  }
  .garden-stake-sign{
    width:7px;
    min-width:7px;
    height:66px;
    min-height:66px;
    border-radius:4px 4px 2px 2px;
  }
  .garden-stake-sign::after{
    height:14px;
    bottom:-12px;
  }
  .garden-stake-text{
    font-size:.27rem;
  }
}


/* v1.3.39: dormant plants should remain fully visible */
.photo-plant.is-dormant{
  opacity:1 !important;
  filter:none !important;
}
.photo-plant.is-dormant .plant-asset{
  opacity:1 !important;
  filter:drop-shadow(0 8px 10px rgba(0,0,0,.18)) !important;
}
.photo-plant.is-dormant .plant-shadow{
  opacity:.95 !important;
}


/* v1.3.40: improve mobile label readability and pull outer rows inward */
.vertical-garden-grid{
  width:min(100%, 336px) !important;
  margin:0 auto !important;
  column-gap:6px !important;
}
.garden-grid-cell{
  justify-content:center !important;
}
.garden-plant-scene{
  max-width:104px;
}
.garden-stake-text{
  font-size:.34rem;
}
.garden-stake-sign{
  width:9px;
  min-width:9px;
}
@media (max-width:520px){
  .vertical-garden-grid{
    width:min(100%, 288px) !important;
    margin:0 auto !important;
    column-gap:4px !important;
  }
  .garden-grid-cell{
    justify-content:center !important;
  }
  .garden-plant-scene{
    max-width:88px;
    min-height:102px;
  }
  .garden-grid-plant,
  .photo-plant{
    max-width:62px;
    width:62px !important;
    height:78px !important;
  }
  .photo-plant.is-growing .plant-asset{width:50px !important;}
  .photo-plant.is-fruit .plant-asset{width:62px !important;}
  .photo-plant.is-planted .plant-asset,
  .photo-plant.is-dormant .plant-asset{width:35px !important;}
  .garden-stake-label{
    width:11px;
    height:84px;
    bottom:12px;
  }
  .garden-plant-scene.stake-right .garden-stake-label{
    left:calc(50% + 10px);
  }
  .garden-plant-scene.stake-left .garden-stake-label{
    left:calc(50% - 20px);
  }
  .garden-stake-sign{
    width:8px;
    min-width:8px;
    height:68px;
    min-height:68px;
  }
  .garden-stake-sign::after{
    height:14px;
    bottom:-12px;
  }
  .garden-stake-text{
    font-size:.32rem;
    letter-spacing:-.008em;
  }
}


/* v1.3.41: larger mobile label text and clearer dormant plant */
.garden-stake-text{
  font-size:.36rem;
}
.photo-plant.is-dormant .plant-asset{
  width:54px !important;
  opacity:1 !important;
  filter:drop-shadow(0 8px 10px rgba(0,0,0,.18)) !important;
}
@media (max-width:520px){
  .garden-stake-text{
    font-size:.36rem !important;
    letter-spacing:-.006em;
  }
  .garden-stake-sign{
    width:8px;
    min-width:8px;
    height:70px;
    min-height:70px;
  }
  .garden-stake-label{
    width:11px;
    height:86px;
  }
  .photo-plant.is-dormant .plant-asset{
    width:42px !important;
  }
}


/* v1.3.42: clearer upright dormant plant */
.photo-plant.is-dormant .plant-asset{
  width:58px !important;
  opacity:1 !important;
  filter:drop-shadow(0 8px 10px rgba(0,0,0,.18)) !important;
}
@media (max-width:520px){
  .photo-plant.is-dormant .plant-asset{
    width:46px !important;
  }
}


/* v1.3.43: dormant plant should look like a normal but sick droopy plant */
.photo-plant.is-dormant .plant-asset{
  width:60px !important;
  opacity:1 !important;
  filter:drop-shadow(0 8px 10px rgba(0,0,0,.18)) !important;
}
@media (max-width:520px){
  .photo-plant.is-dormant .plant-asset{
    width:48px !important;
  }
}


/* v1.3.51: Tend tab and page */
.tabbar.tabbar-5{grid-template-columns:repeat(5,1fr);gap:8px;padding:9px;border-radius:24px;background:rgba(16,25,20,.96);box-shadow:0 18px 44px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.05)}
.tabbar.tabbar-5 .tab{min-height:56px;padding:9px 6px;border-radius:16px}
.tabbar.tabbar-5 .tab svg{width:27px;height:27px}
.tend-page{display:grid;gap:18px}
.tend-hero{position:relative;overflow:hidden;background:linear-gradient(180deg,rgba(9,24,17,.94),rgba(8,18,14,.9));border:none}
.tend-hero::before{content:"";position:absolute;right:-90px;top:-120px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(105,207,88,.16),transparent 66%);pointer-events:none}
.tend-hero > *{position:relative;z-index:1}
.tend-hero-icon{width:48px;height:48px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:rgba(105,207,88,.13);box-shadow:inset 0 0 0 1px rgba(105,207,88,.18);font-size:1.6rem}
.tend-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.tend-summary-grid div{display:grid;gap:4px;text-align:center;padding:14px 8px;border-radius:16px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08)}
.tend-summary-grid strong{font-size:1.55rem;letter-spacing:-.04em}
.tend-summary-grid span{font-size:.78rem;color:rgba(229,238,231,.72)}
.tend-section{background:linear-gradient(180deg,rgba(10,22,17,.9),rgba(7,17,14,.86));border-radius:24px}
.tend-section.tend-urgent{border-color:rgba(233,163,84,.28)}
.tend-section.tend-ready{border-color:rgba(224,189,101,.3)}
.tend-list{display:grid;gap:10px}
.tend-row{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:14px;border-radius:18px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08);text-decoration:none;color:inherit}
.tend-row:active{transform:scale(.992)}
.tend-seed-icon{width:40px;height:40px;border-radius:999px;display:flex;align-items:center;justify-content:center;background:rgba(105,207,88,.12);box-shadow:inset 0 0 0 1px rgba(105,207,88,.2);font-size:1.15rem}
.tend-seed-icon.is-fruit{background:rgba(224,189,101,.13);box-shadow:inset 0 0 0 1px rgba(224,189,101,.22)}
.tend-seed-icon.is-dormant{background:rgba(160,170,140,.13);box-shadow:inset 0 0 0 1px rgba(160,170,140,.22)}
.tend-row-copy{display:grid;gap:4px;min-width:0}
.tend-row-copy strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tend-row-meta{display:grid;gap:4px;justify-items:end;font-weight:800;color:#7be269;white-space:nowrap}
.tend-row-meta em{font-style:normal;font-size:.78rem;color:rgba(245,250,246,.7)}
.tend-clear-card{border-radius:24px;text-align:left}
@media (max-width:520px){.tabbar.tabbar-5{width:calc(100% - 20px);bottom:calc(8px + env(safe-area-inset-bottom,0px));padding:8px;gap:6px}.tabbar.tabbar-5 .tab{min-height:52px;border-radius:15px}.tabbar.tabbar-5 .tab svg{width:25px;height:25px}.tend-row{grid-template-columns:auto 1fr;gap:10px}.tend-row-meta{grid-column:2;justify-items:start;display:flex;gap:8px}.tend-summary-grid{gap:8px}.tend-summary-grid strong{font-size:1.35rem}}


/* v1.3.51: pruning shears icon for Tend tab */
.tab svg.tend-shears-icon{
  stroke-width:2.15;
  width:30px;
  height:30px;
}
.tabbar.tabbar-5 .tab svg.tend-shears-icon{
  width:28px;
  height:28px;
}
@media (max-width:520px){
  .tabbar.tabbar-5 .tab svg.tend-shears-icon{
    width:26px;
    height:26px;
  }
}


/* v1.3.51: approved pruning shears image icon for Tend */
.tab .tab-icon-img.tend-shears-img{
  width:34px;
  height:auto;
  display:block;
  object-fit:contain;
  filter:drop-shadow(0 2px 6px rgba(0,0,0,.28));
}
.tabbar.tabbar-5 .tab .tab-icon-img.tend-shears-img{
  width:34px;
  height:auto;
}
@media (max-width:520px){
  .tabbar.tabbar-5 .tab .tab-icon-img.tend-shears-img{
    width:32px;
    height:auto;
  }
}


/* v1.3.52: approved shears image icon with transparent background */
.tab .tab-icon-img.tend-shears-img{
  width:28px !important;
  height:28px !important;
  display:block;
  object-fit:contain;
  filter:none !important;
}
.tabbar.tabbar-5 .tab .tab-icon-img.tend-shears-img{
  width:26px !important;
  height:26px !important;
}
@media (max-width:520px){
  .tabbar.tabbar-5 .tab .tab-icon-img.tend-shears-img{
    width:24px !important;
    height:24px !important;
  }
}


/* v1.3.53: clean shears icon that matches the other nav icons */
.tab svg.tend-shears-clean{
  width:27px;
  height:27px;
  stroke-width:1.9;
}
@media (max-width:520px){
  .tabbar.tabbar-5 .tab svg.tend-shears-clean{
    width:25px;
    height:25px;
  }
}

/* v1.3.55: referral source seeds produce separate client plants */
.seed-kind-note{
  display:grid;
  gap:4px;
  padding:14px 15px;
  border-radius:18px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.09);
}
.seed-kind-note strong{color:#e8f3e7;font-size:.98rem}
.seed-kind-note span{color:rgba(229,238,231,.76);font-size:.92rem;line-height:1.35}
.seed-kind-note.referral-note,
.seed-kind-note.always-show{
  border-color:rgba(224,189,101,.25);
  background:linear-gradient(180deg,rgba(224,189,101,.10),rgba(255,255,255,.035));
}
.referral-source-line{
  padding:11px 13px;
  border-radius:14px;
  background:rgba(105,207,88,.08);
  border:1px solid rgba(105,207,88,.16);
  color:rgba(245,250,246,.88);
}
.photo-plant.is-referral-source .plant-asset,
.photo-plant .plant-asset.is-referral-source{
  width:62px !important;
  bottom:30px !important;
  filter:drop-shadow(0 12px 11px rgba(0,0,0,.30)) !important;
}
.photo-plant.is-referral-source.is-dormant .plant-asset,
.photo-plant.is-dormant .plant-asset.is-referral-source{
  width:60px !important;
  bottom:30px !important;
  opacity:1 !important;
  filter:drop-shadow(0 10px 10px rgba(0,0,0,.24)) !important;
}
.detail-plant-asset.is-referral-source{
  width:168px !important;
  bottom:38px !important;
  opacity:1 !important;
  filter:drop-shadow(0 18px 16px rgba(0,0,0,.36)) !important;
}
.detail-plant-asset.is-referral-source.is-dormant{
  width:164px !important;
  bottom:38px !important;
}
.referral-child-row{
  color:inherit;
  text-decoration:none;
}
@media (max-width:520px){
  .photo-plant.is-referral-source .plant-asset,
  .photo-plant .plant-asset.is-referral-source{
    width:50px !important;
  }
  .photo-plant.is-referral-source.is-dormant .plant-asset,
  .photo-plant.is-dormant .plant-asset.is-referral-source{
    width:48px !important;
  }
  .detail-plant-asset.is-referral-source,
  .detail-plant-asset.is-referral-source.is-dormant{
    width:148px !important;
  }
}


/* v1.3.74: actual selectable seed-kind cards */
.seed-kind-selector{
  display:grid;
  gap:12px;
  padding:0;
  margin:0;
  border:0;
}
.seed-kind-selector legend{
  font-weight:800;
  color:#f4faf4;
  margin:0 0 2px;
}
.seed-kind-option{
  display:grid;
  gap:6px;
  padding:16px 18px;
  border-radius:18px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.10);
  cursor:pointer;
  transition:border-color .16s ease, background .16s ease, transform .16s ease;
}
.seed-kind-option input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.seed-kind-option strong{color:#e8f3e7;font-size:1rem;line-height:1.15}
.seed-kind-option span{color:rgba(229,238,231,.76);font-size:.94rem;line-height:1.35}
.seed-kind-option.is-selected{
  border-color:rgba(224,189,101,.46);
  background:linear-gradient(180deg,rgba(224,189,101,.13),rgba(255,255,255,.035));
  box-shadow:0 0 0 1px rgba(224,189,101,.10) inset;
}
.seed-kind-option:active{transform:scale(.992)}


.form-hint {
    display: block;
    margin-top: 0.4rem;
    color: var(--muted);
    font-size: 0.9rem;
    line-height: 1.35;
}

/* v1.3.74 Garden directory */
.garden-directory-card {
    gap: 1rem;
}

.garden-search-form {
    display: flex;
    align-items: center;
    gap: 0.65rem;
}

.garden-search-form input[type="search"] {
    flex: 1;
    min-width: 0;
    border-radius: 999px;
    padding: 0.85rem 1rem;
}

.garden-directory-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.garden-filter-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.45rem 0.75rem;
    border-radius: 999px;
    border: 1px solid rgba(83, 61, 38, 0.18);
    background: rgba(255, 250, 237, 0.7);
    color: var(--ink);
    text-decoration: none;
    font-size: 0.9rem;
    font-weight: 700;
}

.garden-filter-chip.is-active {
    background: rgba(87, 119, 72, 0.16);
    border-color: rgba(87, 119, 72, 0.42);
}

.garden-directory-list {
    display: grid;
    gap: 0.75rem;
}

.garden-directory-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.75rem;
    align-items: center;
    padding: 0.85rem;
    border: 1px solid rgba(83, 61, 38, 0.12);
    border-radius: 1rem;
    background: rgba(255, 252, 243, 0.76);
}

.garden-directory-main {
    display: flex;
    gap: 0.75rem;
    align-items: flex-start;
    color: inherit;
    text-decoration: none;
    min-width: 0;
}

.garden-directory-icon {
    width: 2.35rem;
    height: 2.35rem;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(87, 119, 72, 0.12);
    flex: 0 0 auto;
}

.garden-directory-copy {
    display: grid;
    gap: 0.22rem;
    min-width: 0;
}

.garden-directory-copy strong,
.garden-directory-copy span {
    overflow-wrap: anywhere;
}

.garden-directory-meta {
    display: block;
}

.garden-directory-actions {
    display: flex;
    gap: 0.45rem;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
}

.btn-small {
    padding: 0.48rem 0.7rem;
    font-size: 0.88rem;
    line-height: 1;
}

@media (max-width: 680px) {
    .garden-search-form {
        align-items: stretch;
        flex-direction: column;
    }

    .garden-search-form .btn,
    .garden-search-form input[type="search"] {
        width: 100%;
    }

    .garden-directory-row {
        grid-template-columns: 1fr;
    }

    .garden-directory-actions {
        justify-content: stretch;
    }

    .garden-directory-actions .btn {
        flex: 1;
    }
}


/* v1.3.74 Garden directory contrast + in-place controls */
.garden-directory-card {
    background: linear-gradient(180deg, rgba(7, 21, 15, 0.96), rgba(8, 17, 13, 0.94));
    border-color: rgba(255, 255, 255, 0.08);
}

.garden-search-form input[type="search"] {
    background: rgba(5, 14, 10, 0.86);
    border: 1px solid rgba(255, 255, 255, 0.12);
    color: #f3f1e8;
}

.garden-search-form input[type="search"]::placeholder {
    color: rgba(229, 238, 231, 0.54);
}

.garden-filter-chip {
    background: rgba(12, 24, 18, 0.9);
    border: 1px solid rgba(255, 255, 255, 0.11);
    color: rgba(243, 241, 232, 0.9);
    cursor: pointer;
}

.garden-filter-chip:hover,
.garden-filter-chip:focus-visible {
    border-color: rgba(105, 207, 88, 0.38);
    color: #ffffff;
}

.garden-filter-chip.is-active {
    background: linear-gradient(180deg, rgba(195, 206, 185, 0.98), rgba(164, 174, 154, 0.98));
    border-color: rgba(255, 255, 255, 0.18);
    color: #07120d;
}

.garden-directory-row {
    border: 1px solid rgba(255, 255, 255, 0.09);
    background: linear-gradient(180deg, rgba(15, 31, 23, 0.94), rgba(10, 23, 17, 0.94));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.045), 0 10px 26px rgba(0, 0, 0, 0.22);
}

.garden-directory-main {
    color: #f3f1e8;
}

.garden-directory-copy strong {
    color: #f6f5ed;
}

.garden-directory-row .muted,
.garden-directory-row .small,
.garden-directory-meta {
    color: rgba(218, 226, 216, 0.76) !important;
}

.garden-directory-icon {
    background: rgba(220, 231, 213, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.garden-directory-actions .btn-secondary {
    background: rgba(37, 51, 42, 0.96);
    border: 1px solid rgba(255, 255, 255, 0.13);
    color: #f6f5ed;
}

.garden-directory-actions .btn-primary {
    color: #07120d;
}


/* v1.3.74 Garden directory filter visibility fix */
.garden-directory-row[hidden],
.garden-directory-row.is-filter-hidden {
    display: none !important;
}


/* v1.3.63: stronger 3D garden stake labels with larger text and safer padding */
.garden-plant-scene{
  overflow:visible !important;
}
.garden-stake-label{
  z-index:5 !important;
  overflow:visible !important;
  width:24px !important;
  height:156px !important;
  bottom:14px !important;
}
.garden-plant-scene.stake-right .garden-stake-label{right:8px !important; left:auto !important; transform:rotate(4deg) !important;}
.garden-plant-scene.stake-left .garden-stake-label{left:8px !important; right:auto !important; transform:rotate(-4deg) !important;}
.garden-stake-sign{
  position:relative !important;
  width:20px !important;
  min-width:20px !important;
  height:128px !important;
  min-height:128px !important;
  padding:8px 0 !important;
  border-radius:10px 10px 6px 6px !important;
  background:linear-gradient(180deg,#ffffff 0%, #f6f7f4 48%, #e7ebe6 100%) !important;
  border:1px solid rgba(77,88,78,.22) !important;
  box-shadow:0 14px 22px rgba(0,0,0,.20), 0 4px 8px rgba(0,0,0,.10), inset 0 1px 0 rgba(255,255,255,.95), inset -2px 0 4px rgba(0,0,0,.05) !important;
}
.garden-stake-sign::before{
  content:'';
  position:absolute;
  left:2px;
  right:2px;
  top:4px;
  height:18px;
  border-radius:999px;
  background:linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,0));
  pointer-events:none;
}
.garden-stake-sign::after{
  width:4px !important;
  height:26px !important;
  bottom:-23px !important;
  border-radius:999px !important;
  background:linear-gradient(180deg,#f7f7f5 0%, #d7ddd7 100%) !important;
  box-shadow:0 5px 9px rgba(0,0,0,.14) !important;
}
.garden-stake-text{
  display:block !important;
  transform:rotate(-90deg) !important;
  transform-origin:center center !important;
  color:#1f2a22 !important;
  font-size:.56rem !important;
  line-height:1 !important;
  font-weight:850 !important;
  letter-spacing:-.01em !important;
  text-align:center !important;
  white-space:nowrap !important;
  overflow:visible !important;
  text-overflow:clip !important;
  max-width:116px !important;
  text-shadow:0 1px 0 rgba(255,255,255,.45);
}

/* v1.3.64: rebalance garden plants and stake labels */
.garden-plant-scene{
  max-width:144px !important;
  min-height:160px !important;
}
.garden-grid-plant,
.photo-plant{
  max-width:104px !important;
  width:104px !important;
  height:126px !important;
}
.photo-plant.is-growing .plant-asset{width:80px !important;}
.photo-plant.is-fruit .plant-asset{width:100px !important;}
.photo-plant.is-planted .plant-asset,
.photo-plant.is-dormant .plant-asset{width:58px !important;}
.garden-stake-label{
  width:22px !important;
  height:146px !important;
  bottom:14px !important;
}
.garden-stake-sign{
  width:17px !important;
  min-width:17px !important;
  height:118px !important;
  min-height:118px !important;
  padding:7px 0 !important;
  border-radius:9px 9px 5px 5px !important;
  box-shadow:0 11px 18px rgba(0,0,0,.18), 0 3px 7px rgba(0,0,0,.08), inset 0 1px 0 rgba(255,255,255,.95), inset -1px 0 3px rgba(0,0,0,.04) !important;
}
.garden-stake-sign::after{
  width:4px !important;
  height:24px !important;
  bottom:-21px !important;
}
.garden-stake-text{
  font-size:.49rem !important;
  max-width:102px !important;
  line-height:1 !important;
}

/* v1.3.67: correct label direction and anchor labels inward toward plants */
.garden-stake-label{
  bottom:30px !important;
  width:18px !important;
  height:120px !important;
}
.garden-plant-scene.stake-right .garden-stake-label{
  right:28px !important;
  left:auto !important;
}
.garden-plant-scene.stake-left .garden-stake-label{
  left:28px !important;
  right:auto !important;
}
.garden-stake-sign{
  width:14px !important;
  min-width:14px !important;
  height:94px !important;
  min-height:94px !important;
  padding:6px 0 !important;
  border-radius:8px 8px 5px 5px !important;
}
.garden-stake-sign::after{
  width:4px !important;
  height:18px !important;
  bottom:-16px !important;
}
.garden-stake-text{
  font-size:.42rem !important;
  max-width:78px !important;
}

/* v1.3.68: shift the middle garden column to the right */
.garden-grid.vertical-garden-grid .garden-grid-cell:nth-child(n+5):nth-child(-n+8) .garden-plant-scene{
  transform:translateX(18px) !important;
}

/* v1.3.69: pull labels closer to plants without moving the plants */
.garden-stake-label{
  bottom:30px !important;
}
.garden-plant-scene.stake-right .garden-stake-label{
  right:44px !important;
  left:auto !important;
}
.garden-plant-scene.stake-left .garden-stake-label{
  left:44px !important;
  right:auto !important;
}

@media (max-width:520px){
  .garden-plant-scene{
    max-width:116px !important;
    min-height:136px !important;
  }
  .garden-grid-plant,
  .photo-plant{
    max-width:84px !important;
    width:84px !important;
    height:102px !important;
  }
  .photo-plant.is-growing .plant-asset{width:64px !important;}
  .photo-plant.is-fruit .plant-asset{width:80px !important;}
  .photo-plant.is-planted .plant-asset,
  .photo-plant.is-dormant .plant-asset{width:46px !important;}
  .garden-stake-label{
    bottom:26px !important;
    width:16px !important;
    height:108px !important;
  }
  .garden-plant-scene.stake-right .garden-stake-label{
    right:32px !important;
  }
  .garden-plant-scene.stake-left .garden-stake-label{
    left:32px !important;
  }
  .garden-stake-sign{
    width:12px !important;
    min-width:12px !important;
    height:84px !important;
    min-height:84px !important;
  }
  .garden-stake-sign::after{
    height:16px !important;
    bottom:-14px !important;
  }
  .garden-stake-text{
    font-size:.38rem !important;
    max-width:68px !important;
  }
  .garden-grid.vertical-garden-grid .garden-grid-cell:nth-child(n+5):nth-child(-n+8) .garden-plant-scene{
    transform:translateX(14px) !important;
  }
}

@media (max-width:390px){
  .garden-plant-scene{
    max-width:100px !important;
    min-height:122px !important;
  }
  .garden-grid-plant,
  .photo-plant{
    max-width:74px !important;
    width:74px !important;
    height:92px !important;
  }
  .photo-plant.is-growing .plant-asset{width:57px !important;}
  .photo-plant.is-fruit .plant-asset{width:70px !important;}
  .photo-plant.is-planted .plant-asset,
  .photo-plant.is-dormant .plant-asset{width:42px !important;}
  .garden-stake-label{
    bottom:24px !important;
    width:15px !important;
    height:100px !important;
  }
  .garden-plant-scene.stake-right .garden-stake-label{
    right:26px !important;
  }
  .garden-plant-scene.stake-left .garden-stake-label{
    left:26px !important;
  }
  .garden-stake-sign{
    width:11px !important;
    min-width:11px !important;
    height:76px !important;
    min-height:76px !important;
  }
  .garden-stake-text{
    font-size:.35rem !important;
    max-width:60px !important;
  }
  .garden-grid.vertical-garden-grid .garden-grid-cell:nth-child(n+5):nth-child(-n+8) .garden-plant-scene{
    transform:translateX(12px) !important;
  }
}


/* v1.3.74: Tend upcoming follow-up groups */
.tend-summary-grid{
  grid-template-columns:repeat(4, minmax(0, 1fr));
}
.tend-upcoming-groups{
  display:grid;
  gap:16px;
}
.tend-upcoming-group{
  display:grid;
  gap:10px;
}
.tend-date-label{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
  padding:0 2px;
}
.tend-date-label strong{
  color:var(--text);
  font-size:1rem;
}
.tend-date-label span{
  color:var(--muted);
  font-size:.86rem;
  font-weight:650;
}
@media (max-width:520px){
  .tend-summary-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}


/* v1.3.74: monthly social competition */
.social-hero{
  position:relative;
  overflow:hidden;
}
.social-hero::before{
  content:'';
  position:absolute;
  inset:-25% -15% auto auto;
  width:320px;
  height:320px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(126,162,125,.18), transparent 64%);
  pointer-events:none;
}
.social-hero > *{
  position:relative;
  z-index:1;
}
.social-race-grid{
  display:grid;
  grid-template-columns:1.1fr 1fr 1fr;
  gap:12px;
}
.social-race-grid > div{
  padding:16px;
  border-radius:18px;
  background:rgba(14,27,22,.84);
  border:1px solid rgba(255,255,255,.10);
  display:grid;
  gap:6px;
}
.social-race-grid span{
  color:var(--muted);
  font-size:.82rem;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.social-race-grid strong{
  font-size:1.45rem;
  letter-spacing:-.035em;
  color:var(--text);
}
.social-race-main{
  background:linear-gradient(180deg, rgba(126,162,125,.24), rgba(14,27,22,.84)) !important;
}
.social-wins-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:12px;
}
.social-wins-grid article{
  padding:14px;
  border-radius:16px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  display:grid;
  gap:5px;
}
.social-wins-grid span{
  color:var(--muted);
  font-size:.82rem;
}
.social-wins-grid strong{
  font-size:1.25rem;
  color:var(--text);
}
.social-wins-grid em{
  color:var(--gold);
  font-style:normal;
  font-weight:750;
  font-size:.86rem;
}
@media (max-width:620px){
  .social-race-grid,
  .social-wins-grid{
    grid-template-columns:1fr;
  }
}


/* v1.3.74: Bottom dock tap reliability */
.tabbar {
  z-index: 3000 !important;
  pointer-events: auto !important;
  transform: translate3d(-50%, 0, 0) !important;
  -webkit-transform: translate3d(-50%, 0, 0) !important;
  background: rgba(16, 26, 21, 0.98) !important;
  box-shadow: 0 16px 36px rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.06) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  will-change: transform;
}

.tabbar .tab {
  pointer-events: auto !important;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}

.help-modal-backdrop[hidden],
.help-modal[hidden],
[hidden] {
  display: none !important;
  pointer-events: none !important;
}

/* v1.3.77 — How to Use guide */
.howto-card h1 {
    margin-bottom: .35rem;
}

.howto-steps {
    display: grid;
    grid-template-columns: 1fr;
    gap: .75rem;
}

.howto-step {
    border: 1px solid rgba(255,255,255,.08);
    background: rgba(255,255,255,.035);
    border-radius: 18px;
    padding: .95rem;
}

.howto-step strong {
    display: block;
    margin-bottom: .3rem;
}

.howto-step p {
    margin: 0;
    color: var(--muted);
}

@media (min-width: 760px) {
    .howto-steps {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* v1.3.77 — Contact fields */
.contact-field-grid {
    gap: 0.8rem;
}

.contact-card {
    border: 1px solid rgba(88, 70, 42, 0.14);
    background: rgba(255, 250, 238, 0.72);
    border-radius: 18px;
    padding: 0.85rem;
}

.contact-card-head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 0.75rem;
    margin-bottom: 0.65rem;
}

.contact-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.55rem;
}

.contact-action {
    display: flex;
    min-height: 48px;
    flex-direction: column;
    justify-content: center;
    gap: 0.12rem;
    padding: 0.62rem 0.7rem;
    border-radius: 15px;
    border: 1px solid rgba(51, 73, 47, 0.16);
    background: rgba(255, 255, 255, 0.72);
    color: var(--ink);
    text-decoration: none;
    font-weight: 800;
}

.contact-action span {
    color: var(--muted);
    font-size: 0.76rem;
    font-weight: 650;
    overflow-wrap: anywhere;
}

@media (max-width: 520px) {
    .contact-actions {
        grid-template-columns: 1fr;
    }
}
