:root{--forest:#173c30;--forest2:#0f2b22;--moss:#728a65;--sage:#b9c8ad;--paper:#f2f0e8;--cream:#fcfaf4;--sun:#f3b54b;--coral:#e77655;--ink:#17231d;--muted:#6e776f;--line:rgba(23,35,29,.13);--shadow:0 22px 70px rgba(22,47,37,.18)}
*{box-sizing:border-box}html{background:#dfe5dc}body{margin:0;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.45}button,input,textarea,select{font:inherit}button{color:inherit}.app-shell{min-height:100svh;background:var(--paper);overflow:hidden}.brand-mark,.eyebrow{font-size:.68rem;font-weight:750;letter-spacing:.18em;text-transform:uppercase}.eyebrow{color:var(--moss);margin:0 0 .75rem}
.onboarding{min-height:100svh;position:relative;background:var(--paper);padding:max(1.25rem,env(safe-area-inset-top)) 1.25rem max(1.4rem,env(safe-area-inset-bottom));overflow:hidden}.onboarding__step{display:none;min-height:calc(100svh - 2.65rem);position:relative;z-index:2;flex-direction:column}.onboarding__step.is-active{display:flex}.onboarding__copy{margin-top:auto;margin-bottom:2.25rem}.onboarding__copy h1,.onboarding__copy h2,.view-heading h2,.garden-hero h2,.match-modal h2,.sheet h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:.91;letter-spacing:-.05em;margin:.2rem 0 1.3rem}.onboarding__copy h1{font-size:clamp(3.4rem,15vw,5.7rem)}.onboarding__copy h2{font-size:clamp(2.75rem,12vw,4.6rem)}.onboarding__copy>p:not(.eyebrow){max-width:34rem;color:var(--muted);font-size:1.03rem}.onboarding__art{position:absolute;inset:0;overflow:hidden;pointer-events:none}.sun{position:absolute;width:42vw;height:42vw;max-width:290px;max-height:290px;border-radius:50%;right:-9vw;top:8vh;background:var(--sun)}.stem{position:absolute;width:2px;background:var(--forest);transform-origin:bottom}.stem:after{content:"";position:absolute;width:26px;height:13px;border-radius:100% 0 100% 0;background:var(--moss)}.stem--one{height:37vh;right:18vw;top:18vh;transform:rotate(-13deg)}.stem--one:after{top:42%;left:1px;transform:rotate(-28deg)}.stem--two{height:23vh;right:42vw;top:27vh;transform:rotate(18deg)}.stem--two:after{top:30%;right:0;transform:scaleX(-1) rotate(-23deg)}.seed{position:absolute;width:11px;height:17px;border-radius:60% 45% 60% 45%;background:var(--forest);transform:rotate(38deg)}.seed--one{right:31vw;top:16vh}.seed--two{right:48vw;top:24vh}.seed--three{right:8vw;top:38vh}
.button{border:0;border-radius:999px;padding:1rem 1.25rem;font-weight:700;display:flex;align-items:center;justify-content:center;gap:.75rem;cursor:pointer}.button span{font-size:1.15em}.button--full{width:100%}.button--dark{background:var(--forest);color:white}.button--accent{background:var(--sun);color:var(--forest2)}.button--outline{background:transparent;border:1px solid var(--line)}.step-top{display:flex;justify-content:space-between;align-items:center;font-size:.72rem;color:var(--muted);letter-spacing:.12em}.icon-button{border:0;background:rgba(255,255,255,.6);width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font-size:1.25rem;cursor:pointer}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin-top:1.5rem}.choice-grid button{border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.5);padding:1.1rem .85rem;text-align:left;min-height:84px;display:flex;flex-direction:column;justify-content:space-between;font-size:1.2rem;cursor:pointer}.choice-grid button span{font-size:.78rem;font-weight:700}.choice-grid button.is-selected{background:var(--forest);color:white;border-color:var(--forest)}.onboarding__copy--form{margin-top:18vh}.field{display:block;margin:1rem 0}.field>span{display:block;margin-bottom:.45rem;font-size:.68rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase;color:var(--moss)}.field input,.field textarea,.field select{width:100%;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;padding:.9rem 0;outline:none;color:var(--ink)}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--forest)}.field textarea{min-height:110px;resize:vertical}.privacy-note{font-size:.76rem!important}
.product{min-height:100svh;padding-bottom:92px;background:var(--paper)}.app-header{height:82px;padding:max(1rem,env(safe-area-inset-top)) 1.15rem .6rem;display:grid;grid-template-columns:48px 1fr 48px;align-items:center;gap:.5rem}.mini-brand{border:0;background:none;font-weight:850;letter-spacing:-.06em;font-size:.95rem;padding:0;cursor:pointer}.mini-brand span{color:var(--coral)}.header-greeting{text-align:center;line-height:1.1}.header-greeting small{display:block;font-size:.6rem;text-transform:uppercase;letter-spacing:.13em;color:var(--muted);margin-bottom:.25rem}.header-greeting strong{font-family:Georgia,serif;font-size:1rem}.avatar{width:42px;height:42px;border-radius:50%;border:0;background:var(--forest);color:white;font-weight:800;display:grid;place-items:center;justify-self:end}.view{display:none;padding:1.1rem 1rem 1.6rem}.view.is-active{display:block}.view-heading{margin:.2rem .25rem 1rem}.view-heading h2{font-size:clamp(2.9rem,13vw,4.8rem);margin:0}.view-heading--small h2{font-size:3rem}.feed-switch{background:#e3e4dc;border-radius:999px;padding:4px;display:grid;grid-template-columns:1fr 1fr;margin:.8rem .25rem 1rem}.feed-switch button,.segmented button{border:0;background:transparent;padding:.72rem;border-radius:999px;font-size:.72rem;font-weight:750;cursor:pointer}.feed-switch button.is-active,.segmented button.is-active{background:var(--cream);box-shadow:0 3px 15px rgba(23,35,29,.08)}
.deck-wrap{position:relative}.card-deck{height:min(57vh,520px);min-height:410px;position:relative;margin:.65rem .25rem 0}.seed-card{position:absolute;inset:0;border-radius:28px;overflow:hidden;background:var(--cream);box-shadow:var(--shadow);touch-action:none;user-select:none;transform-origin:50% 100%;transition:transform .25s ease,opacity .25s ease}.seed-card:nth-last-child(2){transform:translateY(8px) scale(.975);opacity:.75}.seed-card:nth-last-child(3){transform:translateY(15px) scale(.95);opacity:.4}.seed-card__visual{height:52%;position:relative;padding:1rem;color:white;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.seed-card__visual:before,.seed-card__visual:after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.18)}.seed-card__visual:before{width:220px;height:220px;right:-70px;top:-80px}.seed-card__visual:after{width:110px;height:110px;left:-30px;bottom:-35px}.seed-card__visual--career{background:linear-gradient(145deg,#bd7656,#e8ae77)}.seed-card__visual--health{background:linear-gradient(145deg,#5d8b78,#a6b994)}.seed-card__visual--learning{background:linear-gradient(145deg,#735f8c,#ad92b9)}.seed-card__visual--home{background:linear-gradient(145deg,#55748e,#9bb6c5)}.seed-card__visual--community{background:linear-gradient(145deg,#b07c35,#e2bf71)}.seed-card__visual--relationships{background:linear-gradient(145deg,#a65e65,#d39a96)}.card-top{display:flex;justify-content:space-between;position:relative;z-index:1}.card-pill{background:rgba(255,255,255,.88);color:var(--ink);padding:.45rem .7rem;border-radius:999px;font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.card-distance{font-size:.65rem;font-weight:700}.portrait{position:relative;z-index:1;align-self:center;width:126px;height:126px;border-radius:50%;background:rgba(255,255,255,.92);color:var(--forest);border:8px solid rgba(255,255,255,.25);box-shadow:0 15px 40px rgba(0,0,0,.12);display:grid;place-items:center;font-family:Georgia,serif;font-size:3rem}.seed-card__body{height:48%;padding:1.25rem 1.3rem 1.1rem;display:flex;flex-direction:column}.person-line{display:flex;justify-content:space-between;align-items:center;margin-bottom:.55rem}.person-line strong{font-family:Georgia,serif;font-size:1.35rem}.person-line span{font-size:.7rem;color:var(--muted)}.seed-card__body h3{font-family:Georgia,serif;font-weight:400;font-size:1.75rem;line-height:1.02;letter-spacing:-.035em;margin:.25rem 0 .6rem}.seed-card__body p{font-size:.82rem;color:var(--muted);margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-meta{display:flex;gap:.5rem;margin-top:auto}.card-meta span{font-size:.61rem;padding:.38rem .58rem;border-radius:999px;background:#ecebe4}.swipe-stamp{position:absolute;z-index:4;top:1.35rem;border:3px solid;padding:.35rem .65rem;border-radius:8px;font-size:1rem;font-weight:900;letter-spacing:.08em;opacity:0}.swipe-stamp--help{left:1rem;color:#fff;transform:rotate(-10deg)}.swipe-stamp--pass{right:1rem;color:#fff;transform:rotate(10deg)}.swipe-actions{display:flex;justify-content:center;align-items:center;gap:1rem;margin:1.05rem 0 .35rem}.action{border:0;border-radius:50%;background:white;box-shadow:0 8px 24px rgba(23,35,29,.12);display:grid;place-items:center;cursor:pointer}.action--pass,.action--help{width:58px;height:58px;font-size:1.8rem}.action--save{width:45px;height:45px;font-size:1.25rem}.action--pass{color:var(--coral)}.action--help{color:var(--forest);background:var(--sun)}.swipe-hint{text-align:center;color:var(--muted);font-size:.62rem;letter-spacing:.06em}.empty-state{text-align:center;padding:7rem 2rem;height:min(57vh,520px)}.empty-state>span{font-size:2rem;color:var(--moss)}.empty-state h3{font-family:Georgia,serif;font-size:2rem;font-weight:400;margin:1rem 0 .4rem}.empty-state p{color:var(--muted);font-size:.85rem}
.garden-hero{margin:-1.1rem -1rem 0;padding:3rem 1.25rem 0;background:var(--forest);color:white;min-height:350px;position:relative;overflow:hidden}.garden-hero .eyebrow{color:var(--sage)}.garden-hero h2{font-size:3.7rem;position:relative;z-index:2}.garden-visual{position:absolute;right:0;bottom:0;width:70%;height:80%}.garden-sun{position:absolute;width:165px;height:165px;border-radius:50%;background:var(--sun);right:-38px;top:20px}.plant{position:absolute;color:var(--sage);font-size:5rem;bottom:-16px}.plant--a{right:20px;font-size:8rem}.plant--b{right:135px;font-size:4rem;bottom:3px}.plant--c{right:205px;font-size:3.5rem;bottom:-8px}.garden-stats{display:grid;grid-template-columns:repeat(3,1fr);background:var(--cream);margin:-28px .2rem 2rem;position:relative;z-index:3;border-radius:20px;box-shadow:var(--shadow)}.garden-stats article{text-align:center;padding:1rem .4rem;border-right:1px solid var(--line)}.garden-stats article:last-child{border:0}.garden-stats strong{display:block;font-family:Georgia,serif;font-size:1.8rem}.garden-stats span{font-size:.56rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.section-row{display:flex;justify-content:space-between;align-items:center}.section-row h3{font-family:Georgia,serif;font-size:1.7rem;font-weight:400}.section-row button{border:0;background:none;color:var(--moss);font-size:.7rem}.seed-row{display:flex;align-items:center;gap:1rem;padding:1rem 0;border-top:1px solid var(--line)}.seed-row>span{width:48px;height:48px;border-radius:50%;background:var(--sage);display:grid;place-items:center}.seed-row div{display:flex;flex-direction:column}.seed-row small{color:var(--muted);margin-top:.2rem}.message-list{display:grid;gap:.4rem}.message-item{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:.75rem;padding:.9rem 0;border-bottom:1px solid var(--line)}.message-item .avatar{justify-self:start}.message-item div{display:flex;flex-direction:column}.message-item small{color:var(--muted)}.message-item time{font-size:.62rem;color:var(--muted)}.message-empty{text-align:center;padding:7rem 2rem;color:var(--muted)}.message-empty span{font-size:2.4rem;color:var(--moss)}.message-empty h3{color:var(--ink);font-family:Georgia,serif;font-size:1.8rem;font-weight:400}
.bottom-nav{position:fixed;z-index:20;bottom:0;left:0;right:0;height:78px;padding:7px max(10px,env(safe-area-inset-left)) max(7px,env(safe-area-inset-bottom));background:rgba(252,250,244,.94);backdrop-filter:blur(18px);border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(5,1fr);align-items:center}.bottom-nav button{border:0;background:none;display:flex;flex-direction:column;align-items:center;gap:.15rem;color:#899088;cursor:pointer}.bottom-nav button.is-active{color:var(--forest)}.bottom-nav button>span{font-size:1.25rem}.bottom-nav small{font-size:.52rem;font-weight:700}.bottom-nav .create-button{width:52px;height:52px;border-radius:50%;background:var(--forest);color:white;justify-self:center;transform:translateY(-11px);display:grid;place-items:center}.bottom-nav .create-button span{font-size:1.8rem;line-height:1}
.sheet,.match-modal{border:0;padding:0;margin:auto;background:var(--cream);color:var(--ink);box-shadow:var(--shadow)}.sheet{width:min(100% - 1rem,520px);max-height:92vh;border-radius:28px}.sheet::backdrop,.match-modal::backdrop{background:rgba(10,28,21,.72);backdrop-filter:blur(5px)}.sheet form{padding:1.25rem}.sheet__top{display:flex;justify-content:space-between;gap:1rem}.sheet h2{font-size:2.45rem;margin-bottom:1.5rem}.segmented{background:#e7e6de;border-radius:999px;padding:4px;display:grid;grid-template-columns:1fr 1fr}.match-modal{width:min(100% - 2rem,420px);border-radius:32px;text-align:center;padding:2.5rem 1.5rem 1.5rem;overflow:hidden}.match-modal h2{font-size:4.1rem;margin:.4rem 0 1.5rem}.match-burst{width:70px;height:70px;border-radius:50%;background:var(--sun);display:grid;place-items:center;margin:0 auto 1rem;font-size:2rem;color:var(--forest)}.match-avatars{display:flex;align-items:center;justify-content:center;margin-bottom:1.2rem}.avatar--large{width:70px;height:70px;border:5px solid var(--cream);margin:0 -5px}.match-avatars i{width:38px;height:38px;border-radius:50%;background:var(--coral);color:white;display:grid;place-items:center;z-index:2;font-style:normal}.match-modal>p:not(.eyebrow){color:var(--muted);font-size:.9rem;max-width:280px;margin:0 auto 1.5rem}.text-button{border:0;background:none;margin-top:1rem;color:var(--muted);font-size:.72rem}.profile-card{text-align:center;padding:2rem 1.25rem 1.25rem;position:relative}.profile-close{position:absolute;right:1rem;top:1rem}.avatar--profile{width:88px;height:88px;margin:1rem auto;justify-self:center;font-size:1.8rem}.profile-card h2{margin:.4rem 0;font-size:2.4rem}.profile-card>p{color:var(--muted)}.profile-tags{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem;margin:1.5rem 0}.profile-tags span{padding:.45rem .7rem;border-radius:999px;background:#e8e9df;font-size:.68rem}.dragging{transition:none!important}.flying-right{transform:translateX(130%) rotate(18deg)!important;opacity:0!important}.flying-left{transform:translateX(-130%) rotate(-18deg)!important;opacity:0!important}
.view-intro,.sheet-intro{color:var(--muted);font-size:.9rem}.practice-preview{margin:2rem 0 .5rem;background:var(--sun);border-radius:26px;padding:1.5rem}.practice-preview h3,.coffee-card h3,.practice-card h3{font-family:Georgia,serif;font-weight:400;letter-spacing:-.035em}.practice-preview h3{font-size:2.2rem;line-height:.95;margin:.4rem 0 1rem}.practice-preview p:not(.eyebrow){font-size:.82rem}.practice-preview .button{background:var(--forest2)}
.coffee-card{position:relative;overflow:hidden;background:var(--forest);color:white;border-radius:28px;padding:1.6rem;margin:.5rem 0 1.25rem}.coffee-card .eyebrow{color:var(--sage)}.coffee-card h3{font-size:2.2rem;margin:.4rem 0}.coffee-card>p:not(.eyebrow){font-size:.86rem;color:#d8e1d7;max-width:85%;margin-bottom:1.5rem}.coffee-card__cup{position:absolute;right:-8px;top:-14px;font-size:5.2rem;transform:rotate(8deg)}.practice-filter{display:flex;gap:.45rem;overflow:auto;padding:.15rem 0 .8rem;scrollbar-width:none}.practice-filter button{border:1px solid var(--line);background:transparent;border-radius:999px;padding:.55rem .75rem;white-space:nowrap;font-size:.68rem}.practice-filter button.is-active{background:var(--forest);color:white}.practice-list{display:grid;gap:.75rem}.practice-card{display:grid;grid-template-columns:48px 1fr;gap:.85rem;background:var(--cream);border-radius:22px;padding:1rem}.practice-card__symbol{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--sage);font-size:1.25rem}.practice-card>div>span{font-size:.58rem;color:var(--moss);font-weight:800;text-transform:uppercase;letter-spacing:.12em}.practice-card h3{font-size:1.45rem;line-height:1.05;margin:.3rem 0 .55rem}.practice-card p{font-size:.78rem;color:var(--muted)}.practice-card details{border-top:1px solid var(--line);margin-top:.8rem;padding-top:.7rem}.practice-card summary{font-size:.7rem;font-weight:750}.practice-card details small{display:block;color:var(--coral);font-size:.68rem;margin-top:.5rem}
.seed-row--button,.message-item--button{width:100%;border-left:0;border-right:0;border-bottom:0;background:transparent;text-align:left;cursor:pointer}.message-item--button{border-top:0}.form-guidance{padding:.8rem 1rem;border-radius:14px;background:#ecebe4;color:var(--muted);font-size:.75rem}.form-guidance strong{color:var(--forest)}.check-field{display:flex;gap:.7rem;align-items:flex-start;margin:1.2rem 0 1.5rem;font-size:.78rem;color:var(--muted)}.check-field input{margin-top:.2rem}
.seed-detail,.confirmation-content,.meditation-content{padding:1.35rem}.status-line{display:flex;align-items:center;gap:.5rem;background:#ecebe4;padding:.75rem 1rem;border-radius:14px;margin:1rem 0}.status-line span{color:var(--sun)}.status-dot--completed{color:var(--moss)!important}.status-dot--problem{color:var(--coral)!important}.agreement-summary{margin:1.25rem 0}.agreement-summary>div{padding:.9rem 0;border-top:1px solid var(--line)}.agreement-summary dt{font-size:.6rem;text-transform:uppercase;letter-spacing:.12em;color:var(--moss);font-weight:800}.agreement-summary dd{margin:.35rem 0 0;font-family:Georgia,serif;font-size:1.15rem}.role-note{font-size:.78rem;color:var(--muted)}.planted-message{text-align:center;padding:1.5rem;background:#e5eadf;border-radius:20px}.planted-message>span{font-size:2.5rem}.planted-message strong{display:block;font-family:Georgia,serif;font-size:1.7rem}.confirmation-content{text-align:center}.confirmation-content h2{font-size:2.65rem}.confirmation-content>p:not(.eyebrow){color:var(--muted);font-size:.82rem}.confirmation-options{display:grid;gap:.55rem;margin:1.4rem 0}.confirmation-options button{border:1px solid var(--line);border-radius:16px;background:transparent;padding:1rem;font-weight:700}.confirmation-options button:first-child{background:var(--forest);color:white}
.meditation-content{position:relative;text-align:center;min-height:560px;display:flex;flex-direction:column}.meditation-close{position:absolute;right:1rem;top:1rem}.meditation-orb{width:110px;height:110px;border-radius:50%;background:var(--sun);display:grid;place-items:center;font-size:3rem;margin:2rem auto 1.5rem}.meditation-step{display:none}.meditation-step.is-active{display:block}.meditation-step>span{font-size:.62rem;letter-spacing:.15em;color:var(--moss)}.meditation-step h2{font-size:3rem;margin:.5rem 0 1rem}.meditation-step p{color:var(--muted);max-width:320px;margin:0 auto 1.3rem}.meditation-content>.button{margin-top:auto}
@media(min-width:700px){body{padding:2rem}.app-shell{width:min(100%,430px);min-height:calc(100vh - 4rem);margin:auto;border-radius:34px;box-shadow:0 25px 100px rgba(20,45,35,.18);position:relative}.onboarding{min-height:calc(100vh - 4rem);border-radius:34px}.onboarding__step{min-height:calc(100vh - 6.65rem)}.product{min-height:calc(100vh - 4rem);border-radius:34px;overflow:hidden}.bottom-nav{position:absolute;border-radius:0 0 34px 34px}.card-deck{height:min(54vh,500px)}}
@media(max-height:740px){.view-heading h2{font-size:2.6rem}.card-deck{height:49vh;min-height:350px}.seed-card__visual{height:48%}.seed-card__body{height:52%}.onboarding__copy{margin-bottom:1.2rem}.choice-grid button{min-height:68px;padding:.8rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
