.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.plant-art{display:inline-block;width:64px;height:64px;flex-shrink:0;background-repeat:no-repeat;background-size:500% 500%;transform-origin:50% 90%;animation-duration:var(--duration,3s);animation-delay:var(--delay,0s);animation-timing-function:ease-in-out;animation-iteration-count:infinite;pointer-events:none;vertical-align:middle;will-change:auto}
.motion-0{animation-name:leaf-sway}.motion-1{animation-name:leaf-hop}.motion-2{animation-name:leaf-breathe}.motion-3{animation-name:leaf-nod}.motion-4{animation-name:leaf-wiggle}.motion-5{animation-name:leaf-float}.motion-6{animation-name:leaf-jelly}.motion-7{animation-name:leaf-wave}.motion-8{animation-name:leaf-shimmy}.motion-9{animation-name:leaf-bow}
@keyframes leaf-sway{0%,100%{transform:rotate(calc(var(--tilt)*-1))}50%{transform:rotate(var(--tilt))}}
@keyframes leaf-hop{0%,70%,100%{transform:translateY(0)}80%{transform:translateY(-7px) rotate(-3deg)}90%{transform:translateY(-3px) rotate(3deg)}}
@keyframes leaf-breathe{0%,100%{transform:scale(.96,1)}50%{transform:scale(1.03,.98)}}
@keyframes leaf-nod{0%,70%,100%{transform:rotate(0)}80%{transform:rotate(var(--tilt)) scaleY(.94)}90%{transform:rotate(-3deg)}}
@keyframes leaf-wiggle{0%,75%,100%{transform:rotate(0)}80%{transform:rotate(calc(var(--tilt)*-1))}85%{transform:rotate(var(--tilt))}90%{transform:rotate(-3deg)}}
@keyframes leaf-float{0%,100%{transform:translateY(1px) rotate(-2deg)}50%{transform:translateY(-5px) rotate(2deg)}}
@keyframes leaf-jelly{0%,70%,100%{transform:scale(1)}80%{transform:scale(1.08,.9)}90%{transform:scale(.94,1.05)}}
@keyframes leaf-wave{0%,100%{transform:skewX(-3deg) rotate(-2deg)}50%{transform:skewX(3deg) rotate(2deg)}}
@keyframes leaf-shimmy{0%,65%,100%{transform:translateX(0)}75%{transform:translateX(-3px) rotate(-4deg)}85%{transform:translateX(3px) rotate(4deg)}}
@keyframes leaf-bow{0%,70%,100%{transform:scaleY(1) rotate(0)}85%{transform:scaleY(.92) rotate(var(--tilt))}}
.plot .farm-plant{position:absolute;width:72px;height:72px;bottom:14px;filter:drop-shadow(0 3px 2px #17221c55);scale:var(--growth,1);z-index:1}.plot.growing .farm-plant{opacity:.88}.plot .plot-label{position:absolute;bottom:3px;z-index:2}.plot.growing .plot-label{bottom:7px}.plot{overflow:visible}.plot.ready::after{z-index:3;animation:glimmer 2s ease-in-out infinite}.plot.ready .plant-art{--growth:1!important}.plot .growing-bar{z-index:3}.plot.empty .plus,.plot.locked .lock{margin-top:-15px}
@keyframes glimmer{50%{opacity:.3;transform:scale(.7)}}
.catalog-link,.back-link{border:0;background:none;font-size:.875rem;font-weight:650;color:var(--green);min-height:44px;padding:6px 0}.selected-trait{display:flex;gap:10px;align-items:center;margin-top:14px;padding:12px;background:#eef2df;border-radius:9px;font-size:.8125rem;line-height:1.5}.selected-trait b{white-space:nowrap}.selected-trait span{color:var(--muted)}.seed-card .plant-art{width:58px;height:58px;float:left;margin-right:7px;margin-top:-9px}.seed-card{min-height:114px}.seed-card b{line-height:1.3}.seed-card small{line-height:1.4}.seed-meta{padding-top:13px}.seed-card .plant-art{animation-play-state:paused}.seed-card.selected .plant-art,.seed-card:hover .plant-art{animation-play-state:running}
.catalog-modal{width:min(970px,calc(100vw - 32px));padding:28px}.catalog-heading{display:flex;align-items:center;justify-content:space-between;gap:24px}.catalog-heading h2{font-size:32px}.catalog-heading p{max-width:600px}.collection-counter{display:flex;flex-direction:column;align-items:center;flex-shrink:0;min-width:100px;border:1px solid var(--line);border-radius:14px;padding:13px}.collection-counter b{font-size:29px;color:var(--green)}.collection-counter small{font-size:16px;font-weight:500;color:var(--muted)}.collection-counter>span{font-size:12px;color:var(--muted);margin-top:3px}.catalog-toolbar{display:flex;gap:10px;margin-top:23px;flex-wrap:wrap}.catalog-toolbar input,.catalog-toolbar select{font:inherit;border:1px solid var(--line);padding:12px;border-radius:9px;background:var(--white);color:var(--ink);min-height:46px;font-size:14px;width:100%}.catalog-search{flex:1;min-width:200px}.catalog-toolbar input:focus,.catalog-toolbar select:focus{outline:2px solid #a188e2;outline-offset:1px}.catalog-meta{font-size:12px!important;margin:15px 0}.catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.catalog-card{display:flex;flex-direction:column;align-items:center;min-width:0;border:1px solid var(--line);background:var(--card-tint,#f0f3e6);padding:12px;border-radius:15px;text-align:center;transition:translate .18s,border-color .18s;content-visibility:auto;contain-intrinsic-size:auto 255px}.catalog-card:hover{translate:0 -3px;border-color:#96b579}.catalog-card-top{display:flex;justify-content:space-between;width:100%;font-size:11px;color:var(--muted);gap:5px;text-transform:capitalize}.catalog-card .plant-art{width:105px;height:105px;margin:7px 0;animation-play-state:paused}.catalog-card:hover .plant-art,.catalog-card:focus-visible .plant-art{animation-play-state:running}.catalog-card b{font-family:'Fraunces',serif;font-size:17px;line-height:1.25;min-height:42px;display:grid;place-items:center}.plant-trait-name{font-size:12px;color:var(--green);margin:8px 0;line-height:1.3}.catalog-card-meta{font-size:12px;display:flex;justify-content:center;gap:22px;color:var(--muted)}.mastery-stars{letter-spacing:2px;color:#b69436;font-size:17px;display:inline-block;margin-top:9px}.catalog-footnote{font-size:12px!important;border-top:1px solid var(--line);margin-top:22px;padding-top:16px}.catalog-empty{grid-column:1/-1;padding:32px;text-align:center}.family-mellow{--card-tint:#f1edd9}.family-sparkle{--card-tint:#e9f0d6}.family-rainbow{--card-tint:#f5e3ed}.family-forest{--card-tint:#e1edde}.family-moon{--card-tint:#e9e5f7}.plant-detail-art{background:var(--card-tint);border-radius:16px;display:grid;place-items:center;margin:10px 0 20px}.plant-detail-art .plant-art{width:210px;height:210px;margin:12px}.special-gift{border:1px solid var(--line);background:var(--card-tint,#edf1dc);padding:15px;border-radius:12px;margin-top:20px}.special-gift>b{font-size:16px}.special-gift p{font-size:14px;margin-top:6px;line-height:1.6}.plant-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:22px}.plant-stats>span{display:flex;flex-direction:column;font-size:12px;color:var(--muted);gap:5px}.plant-stats b{font-size:18px;color:var(--ink)}.plant-mastery{display:flex;align-items:center;gap:15px;justify-content:space-between;margin-top:18px}.plant-mastery>span:last-child{font-size:12px;color:var(--muted)}.plant-mastery .mastery-stars{margin:0}.inventory-row .plant-art{width:50px;height:50px;animation-play-state:paused}.inventory-row>div{flex:1}
.world-button{display:flex;gap:11px;align-items:center;background:var(--white);border:1px solid var(--line);border-radius:13px;padding:10px 15px;flex-shrink:0;text-align:left}.world-button>span{font-size:31px;color:#a17bca}.world-button b{font-size:14px}.world-button small{display:block;color:var(--muted);font-size:12px;margin-top:3px}.scene-toggle{position:absolute;right:18px;bottom:45px;border:1px solid #dddcb199;background:#faf5dcdf;color:#314933;padding:10px 13px;border-radius:10px;font-size:12px;font-weight:650;min-height:44px;z-index:2}.crew-sprite{display:inline-block;background-image:url('assets/crew-atlas.webp');background-size:300% 200%;background-repeat:no-repeat;width:110px;height:110px;border-radius:20px;flex-shrink:0;animation:crew-breathe var(--crew-duration,4s) ease-in-out infinite;transform-origin:bottom center}.crew-sprite.farmer-avatar{width:48px;height:48px;border-radius:50%;border:3px solid #d9e686}.crew-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-top:24px}.crew-member{display:flex;flex-direction:column;align-items:center;border:1px solid var(--line);border-radius:15px;text-align:center;padding:19px 15px;background:var(--white)}.crew-member.chosen{border-color:#ab8cd7;box-shadow:inset 0 0 0 1px #ab8cd7}.crew-member h3{margin:14px 0 7px;font-size:22px}.crew-member>b{font-size:12px;color:var(--green);line-height:1.5}.crew-member p{font-size:13px;line-height:1.6;margin:11px 0 18px;flex:1}.crew-member button{font-size:12px;width:100%}@keyframes crew-breathe{50%{transform:translateY(-2px) rotate(1deg)}}
.grove-banner{height:220px;border-radius:16px;margin-bottom:20px;padding:25px;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(0deg,#111c36cb,transparent),url('assets/neon-farm.webp') center 46%/cover}.grove-banner h2{color:#fff3ff;font-size:38px}.grove-banner p{color:#eee0f6}.crystal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:23px}.crystal-card{border:1px solid var(--line);border-radius:13px;padding:16px 13px;display:flex;flex-direction:column;align-items:center;text-align:center;background:var(--white)}.crystal-card h3{font-size:20px;margin-top:10px}.crystal-card p{font-size:13px;line-height:1.6;margin:10px 0 18px;flex:1}.crystal-card button{font-size:12px;width:100%}.crystal-symbol{font-size:63px;line-height:1;filter:drop-shadow(0 0 10px currentColor);animation:glimmer 4s ease-in-out infinite;display:block;padding:12px}
body[data-scene=neon]{--pine:#191a38;--ink:#f0edf9;--green:#b6e885;--lime:#caee87;--cream:#121629;--line:#39435c;--muted:#afbad2;--white:#1e263d;background:radial-gradient(ellipse at 65% 0,#3b2352 0,transparent 48%),#121629;color:var(--ink)}
[data-scene=neon] .topbar{background:#171b30;border-bottom:1px solid #463053}[data-scene=neon] .nav-bar{background:#1b2338}[data-scene=neon] .nav-item.active{color:#d6f398;border-color:#c29dea}[data-scene=neon] .nav-badge{background:#37464a;color:#d1eaa8}[data-scene=neon] .farm-panel{border-color:#48446c;border-top:3px solid #b084e2;box-shadow:0 0 35px #7b30bb15}[data-scene=neon] .farm-scene{background-image:url('assets/neon-farm.webp');background-position:center;background-color:#25464d}[data-scene=neon] .farm-title{background:#242c44ed;color:#e6ecfb;border:1px solid #6b73975e}[data-scene=neon] .farm-title small{color:#c5cfe2}[data-scene=neon] .harvest-all{background:#deeab2;color:#28373a;border-color:#b6d487}[data-scene=neon] .harvest-all span{background:#c8daa0}[data-scene=neon] .farmer-note p{background:#242b45eb;color:#ede6fe;border-color:#7880a963}[data-scene=neon] .plot{background:#38514a;border-color:#829c6877;box-shadow:0 4px 0 #1a3433,0 6px 8px #10232566}[data-scene=neon] .plot.empty{background:#354841;border-color:#9aafa16e}[data-scene=neon] .plot.ready{background:#445f50;border-color:#c6bc71}[data-scene=neon] .plot.locked{background:#263c487a;border-color:#83aac277}[data-scene=neon] .plot .plot-label{background:#10212ce0;color:#eff5d6}[data-scene=neon] .plot .plant-art{filter:drop-shadow(0 1px 4px #acd67644)}[data-scene=neon] .scene-toggle{background:#253148de;color:#e6e8ff;border-color:#a0a7d866}[data-scene=neon] .farm-sign{background:#392e45;border-color:#8a7c8a;color:#e7d7fb}[data-scene=neon] .farm-sign span{color:#b5b6d1}[data-scene=neon] .scene-caption{background:linear-gradient(transparent,#131f3eaa);color:#dceaf7}[data-scene=neon] .seed-card{background:#27364a;border-color:#405566}[data-scene=neon] .seed-card.selected{background:#344844;border-color:#b2d788}[data-scene=neon] .seed-card:hover{background:#374251}[data-scene=neon] .seed-card small,[data-scene=neon] .seed-meta{color:#c0ccd9}[data-scene=neon] .seed-meta strong{color:#efd18b}[data-scene=neon] .selected-trait{background:#303c50}[data-scene=neon] .tool-row{border-color:#384459}[data-scene=neon] .tool-row>span{color:#b2bfd2}[data-scene=neon] .quest-card{background:linear-gradient(145deg,#473c61,#2e3e53);border-color:#64577e}[data-scene=neon] .quest-card p{color:#c8cce1}[data-scene=neon] .card-kicker{color:#d3baf0}[data-scene=neon] .quest-progress-label b{color:#f0d08c}[data-scene=neon] .quest-card button:disabled{background:#53606b;color:#d8dfdf}[data-scene=neon] progress::-webkit-progress-bar{background:#576078}[data-scene=neon] progress::-webkit-progress-value{background:#bccc85}[data-scene=neon] .order-needs{color:#c8d9c4}[data-scene=neon] .order-needs strong{color:#eccd8a}[data-scene=neon] .order-button,[data-scene=neon] .button-secondary{background:#344956;border-color:#556b7e;color:#e8e8f6}[data-scene=neon] .button-primary{background:#c2e699;color:#1b3430}[data-scene=neon] .quest-card button:not(:disabled){background:#c2e699;color:#1b3430}[data-scene=neon] .farm-tip,[data-scene=neon] .farm-tip b{color:#adbbd2}[data-scene=neon] footer{color:#99a9c4}[data-scene=neon] .pill{border-color:#5d7089}[data-scene=neon] dialog{background:#202a42;border-color:#56668c}[data-scene=neon] .special-gift{background:#303a52}[data-scene=neon] .family-mellow{--card-tint:#3c3c45}[data-scene=neon] .family-sparkle{--card-tint:#314548}[data-scene=neon] .family-forest{--card-tint:#304347}[data-scene=neon] .family-rainbow{--card-tint:#49354e}[data-scene=neon] .family-moon{--card-tint:#3a365a}[data-scene=neon] .mastery-stars{color:#e9c772}[data-scene=neon] .world-button{border-color:#726184;background:#342e4d}[data-scene=neon] .world-button>span{color:#e8a9ff;text-shadow:0 0 14px #dc74eb}[data-scene=neon] .icon-button{border-color:#63718e}[data-scene=neon] .eyebrow{color:#b7a5d2}[data-scene=neon] .danger{color:#ffa99e}
@media(max-width:1150px){.seed-card .plant-art{float:none;margin:0;display:block}.seed-card{min-height:170px}.plot .farm-plant{width:65px;height:65px}.selected-trait{align-items:flex-start;flex-direction:column;gap:4px}}
@media(max-width:880px){.seed-card .plant-art{float:left;margin-right:8px}.seed-card{min-height:110px}.nav-links{gap:20px}.save-status{display:none}.plot .farm-plant{width:78px;height:78px}.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.crystal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.crew-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.world-button small{display:none}.world-button{padding:9px 12px}.world-button>span{font-size:25px}.page-heading h1{font-size:28px}.selected-trait{flex-direction:row}}
@media(max-width:540px){.nav-links{gap:0;flex-wrap:wrap}.nav-item{font-size:.75rem;gap:4px}.nav-item>span:first-child{font-size:16px}.nav-badge{font-size:9px}.nav-item.active{padding-right:4px}.page-heading{gap:10px}.page-heading h1{font-size:1.5rem}.page-heading .eyebrow{font-size:10px;letter-spacing:1.3px}.world-button{align-self:flex-end;padding:6px 10px;min-height:42px}.world-button>span{font-size:26px}.world-button b{display:none}.farm-scene{height:500px}.plot-grid{top:186px}.plot .farm-plant{width:68px;height:68px;bottom:14px}.farm-sign{bottom:48px}.scene-toggle{font-size:11px;right:11px;bottom:39px;min-height:40px;padding:8px}.farm-title{top:14px}.selected-trait{flex-direction:column}.seed-card .plant-art{width:60px;height:60px}.seed-card b{white-space:normal;font-size:14px}.seed-card small{font-size:11px;min-height:28px}.seed-card{min-height:127px;padding:11px 8px}.seed-card.selected{padding:10px 7px}.seed-meta{clear:both}.catalog-link{font-size:13px}.planting-panel .section-heading{display:flex;gap:8px}.planting-panel .section-heading h2{font-size:19px}.planting-panel .section-heading .catalog-link{font-size:12px;max-width:150px;text-align:right}.catalog-modal{padding:20px 15px;width:calc(100vw - 16px);max-height:90vh}.catalog-heading{gap:12px}.catalog-heading h2{font-size:24px}.catalog-heading p{font-size:14px}.collection-counter{min-width:70px;padding:9px}.collection-counter b{font-size:24px}.collection-counter small{font-size:12px}.collection-counter>span{font-size:10px}.catalog-toolbar{gap:8px}.catalog-search{flex-basis:100%}.catalog-toolbar>label:not(.catalog-search){flex:1}.catalog-toolbar select{font-size:12px;padding:10px 8px}.catalog-toolbar input{font-size:16px}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.catalog-card{padding:10px 8px}.catalog-card-top{font-size:10px}.catalog-card .plant-art{width:98px;height:98px}.catalog-card b{font-size:16px;min-height:40px}.plant-trait-name{font-size:11px}.catalog-card-meta{gap:14px;font-size:11px}.catalog-meta{line-height:1.5}.plant-stats{grid-template-columns:repeat(2,1fr);gap:18px}.plant-mastery{flex-wrap:wrap;gap:10px}.crew-grid{gap:10px}.crew-member{padding:14px 10px}.crew-member .crew-sprite{width:95px;height:95px}.crew-member h3{font-size:19px}.crew-member>b{font-size:11px}.crew-member p{font-size:12px}.crew-member button{font-size:11px;padding:9px 7px}.grove-banner{height:185px;padding:19px}.grove-banner h2{font-size:34px}.crystal-grid{gap:10px}.crystal-card{padding:14px 10px}.crystal-card h3{font-size:18px}.crystal-card p{font-size:13px}.crystal-card button{font-size:11px;padding:9px 5px}.crystal-symbol{font-size:50px}.inventory-row .plant-art{width:45px;height:45px}.inventory-row>div{min-width:100px}.inventory-row .button-secondary{font-size:12px}.plant-detail-art .plant-art{width:190px;height:190px}}
@media(prefers-reduced-motion:reduce){.plant-art,.crew-sprite,.crystal-symbol{animation:none!important}.catalog-card{transition:none!important}}
.neighbor-avatar .crew-sprite{width:44px;height:44px;border-radius:50%;animation:none}
