/* Gritty Mix / The Cultivator's Playground */
.botanical-pot{--pot-width:min(146px, calc(100% - 12px));--plant-seat:64px;height:242px;position:relative;isolation:isolate;overflow:hidden;margin:8px -5px 12px;pointer-events:none}
.botanical-specimen{position:absolute;left:50%;bottom:var(--plant-seat);width:190px;height:165px;transform:translateX(-50%) scale(var(--growth,1));transform-origin:50% 100%;z-index:2;animation:botanical-breathe 6s ease-in-out infinite}
.botanical-specimen img{position:absolute;left:50%;bottom:0;transform:translateX(-50%);object-fit:contain;max-width:none;filter:drop-shadow(2px 3px 2px #1e382632)}
.nursery-plant{height:160px;width:175px}.is-column .nursery-plant{width:104px;height:185px}.nursery-stock{width:105px;height:131px;clip-path:inset(23% 0 0)}.botanical-specimen .nursery-scion{width:85px;height:75px;bottom:96px;clip-path:inset(0 0 10%)}.is-column .nursery-scion{width:53px;height:92px}
.botanical-soil{position:absolute;bottom:64px;left:50%;transform:translateX(-50%);width:calc(var(--pot-width) + 2px);height:25px;border:7px solid #c39161;border-radius:50%;background:radial-gradient(ellipse at 20% 40%,#d0c39b 0 2px,transparent 3px),radial-gradient(ellipse at 70% 60%,#b1a485 0 2px,transparent 3px),#4a452b;background-size:17px 12px,19px 11px,auto;z-index:1}
.botanical-clay{position:absolute;left:50%;bottom:17px;transform:translateX(-50%);width:var(--pot-width);height:59px;clip-path:polygon(0 0,100% 0,88% 91%,70% 100%,30% 100%,12% 91%);background:repeating-linear-gradient(0deg,transparent 0 13px,#663e2922 14px,transparent 15px),linear-gradient(90deg,#98613e,#d6a375 42%,#a16a45);border-radius:0 0 24px 24px;z-index:3;box-shadow:inset 0 5px 0 #e6bb8b66}
.botanical-shadow{position:absolute;bottom:11px;left:50%;transform:translateX(-50%);width:calc(var(--pot-width) + 22px);height:13px;border-radius:50%;background:#39533324;filter:blur(2px)}
.sprite-loading{min-height:220px;display:grid;place-items:center;text-align:center;color:#48653c;font-size:13px;padding:20px}.shop-botanical{width:62px;height:86px;object-fit:contain;flex-shrink:0}.inspect-botanical{background:radial-gradient(ellipse,#e0eac0,#f5f0d8);border:1px solid #acbd8b;border-radius:8px;margin:16px 0}.inspect-botanical .botanical-pot{max-width:300px;margin:10px auto;height:250px}.game-art-credit{max-width:1284px;margin:0 auto;padding:12px 24px 30px;text-align:center;color:#d3e3b9;font:12px/1.7 var(--body)}.game-art-credit a{color:#ffe09e}
/* The stem stays rooted while the crown makes a very small, slow sway. */
@keyframes botanical-breathe{0%,100%{rotate:-.3deg}50%{rotate:.3deg}}
.botanical-pot.is-column,.botanical-pot.is-grafted{--pot-width:120px;--plant-seat:69px}
.botanical-pot.is-grafted{--plant-seat:66px}
.botanical-soil:after{content:'';position:absolute;inset:2px 12%;border-radius:50%;background:radial-gradient(ellipse,#211d16a6,transparent 72%)}
.botanical-rim{position:absolute;bottom:64px;left:50%;transform:translateX(-50%);width:calc(var(--pot-width) + 2px);height:25px;border:7px solid #c39161;border-bottom-color:#dbad7d;border-radius:50%;clip-path:inset(50% 0 0);z-index:4}
@media(max-width:760px){.botanical-pot{height:217px;--pot-width:min(128px, calc(100% - 8px));--plant-seat:59px}.botanical-pot.is-column,.botanical-pot.is-grafted{--pot-width:104px;--plant-seat:63px}.botanical-specimen{width:170px}.nursery-plant{width:150px;height:140px}.is-column .nursery-plant{width:85px;height:157px}.botanical-clay{height:53px}.botanical-soil,.botanical-rim{height:23px;bottom:59px}.nursery-stock{height:116px;width:91px}.botanical-specimen .nursery-scion{width:74px;height:64px;bottom:85px}.is-column .nursery-scion{width:43px;height:76px}.shop-botanical{width:52px;height:72px}.inspect-botanical .nursery-plant{width:175px;height:172px}.inspect-botanical .is-column .nursery-plant{width:102px;height:190px}}
#bench-canvas{touch-action:pan-y}
#supply-target{width:100%;margin-bottom:18px;font-size:12px}
#graft-tension{appearance:none;background:transparent}
#graft-tension::-webkit-slider-runnable-track{height:7px;border-radius:6px;background:linear-gradient(90deg,#637363 0% 41%,#e4bc77 41% 69%,#637363 69% 100%)}
#graft-tension::-webkit-slider-thumb{appearance:none;width:20px;height:20px;border-radius:50%;background:#f3d6a3;border:3px solid #142a20;box-shadow:0 0 0 1px #e0c18c;margin-top:-6px}
#graft-tension::-moz-range-track{height:7px;border-radius:6px;background:linear-gradient(90deg,#637363 0% 41%,#e4bc77 41% 69%,#637363 69% 100%)}
#graft-tension::-moz-range-thumb{width:17px;height:17px;border-radius:50%;background:#f3d6a3;border:3px solid #142a20}
:root{--bg:#081c16;--bg-card:#122b22;--cream2:#1b382b;--text:#eee9d9;--text-light:#bbc6b0;--muted:#a6b69d;--green:#b8ca97;--green-light:#d5dfb9;--green-dark:#d4dcae;--green-dim:#203e2c;--brown:#9e8f6b;--orange:#e6ba70;--terra:#bc8764;--red:#efa591;--red-light:#422922;--border:#adbf982b;--line2:#8a9b7144;--shadow:#0003;--pixel:'DM Sans',sans-serif;--display:'Cormorant Garamond',Georgia,serif;--body:'DM Sans',system-ui,sans-serif}
body{background:radial-gradient(ellipse at 18% 0,#27412b55,transparent 55%),var(--bg);font-size:14px;line-height:1.6}
button,input,select,textarea{font:inherit}button{min-height:44px}button,.btn-primary,.btn-secondary,.btn-small,.btn-back{border-width:1px;box-shadow:none;border-radius:6px;font-weight:500}button:hover,.btn-secondary:hover,.btn-small:hover{background:#2b4230;border-color:#e0bb7866;box-shadow:0 5px 22px #0002;transform:translateY(-1px)}button:disabled{opacity:.4;cursor:not-allowed;transform:none}.btn-primary{background:#e4bb78;color:#17271b;border-color:#e4bb78}.btn-primary:hover{background:#f0d19a;color:#17271b;border-color:#f0d19a}.btn-primary:active,.btn-secondary:active{transform:translateY(1px)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,[role=button]:focus-visible{outline:2px solid #f3cd87;outline-offset:4px}a{color:#e5bf80}button[hidden]{display:none!important}select,textarea{background:#0c211a;color:var(--text);border:1px solid var(--border);border-radius:5px;min-height:46px;max-width:100%}select option{background:#142b21;color:var(--text)}input[type=range]{accent-color:#e5bd79;cursor:ew-resize;min-height:36px}h2,h3,h4{font-weight:500}h3{font-family:var(--display);font-size:36px;color:var(--text)}h4{color:var(--text)}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600;color:#bbc79f}em{font-weight:500;color:#ccca98}#app{max-width:1380px;padding:26px 48px 60px;margin:auto}.site-mast{max-width:1380px;padding:25px 48px;margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);gap:20px}.site-mast>a{font-family:var(--display);font-size:23px;text-decoration:none;color:#eee9d9;line-height:1.15}.site-mast>a span{display:block;font-family:var(--body);font-size:9px;letter-spacing:1.6px;text-transform:uppercase;color:var(--muted);margin-top:7px}.site-mast nav{display:flex;align-items:center;gap:24px}.site-mast nav>a{font-size:12px;text-decoration:none}.site-mast button{font-size:11px;background:transparent;min-height:38px;padding:7px 12px}
.title-container{display:grid;grid-template-columns:1.1fr 1fr;gap:55px;align-items:center;padding:48px 0;text-align:left}.title-copy{padding:20px 0}.title-container h1{font-family:var(--display);font-weight:500;color:var(--text);font-size:clamp(58px,6.5vw,98px);line-height:.98;letter-spacing:-3px;text-shadow:none;margin:29px 0}.subtitle{font-size:15px;letter-spacing:3px;text-transform:uppercase;color:#e4bd79}.tagline{font:italic 25px var(--display);color:#d2d3b7;margin:9px 0 18px}.title-description{font-size:15px;line-height:1.9;color:var(--muted);max-width:370px}.title-buttons{justify-content:flex-start;gap:10px;margin:28px 0 18px}.title-buttons button{font-size:12px;padding:14px 18px}.title-copy>.small{font-size:11px}.title-photo{position:relative;height:560px;border-radius:180px 180px 8px 8px;overflow:hidden;border:1px solid #b1bd7e44;isolation:isolate}.title-photo img{width:100%;height:100%;object-fit:cover;object-position:60% center}.title-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 35%,#06170ef2);z-index:0}.title-photo figcaption{position:absolute;inset:auto 30px 30px;z-index:1;display:flex;flex-direction:column;gap:20px}.title-photo figcaption>span{font:36px/1.08 var(--display);color:#eee9d9}.title-photo figcaption a{font-size:9px;color:#c5c6a9}.title-chapters{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--border);padding:24px 0;gap:30px}.title-chapters b{display:block;font-size:10px;letter-spacing:2px;color:#e4bd79;margin-bottom:6px}.title-chapters span{font-size:12px;color:var(--muted)}
.session-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;gap:16px}.session-heading h2{font:52px/1.15 var(--display);margin-top:5px}.session-heading>p{font-size:11px;color:#a9bc94}.game-header{display:flex;flex-wrap:wrap;justify-content:space-between;background:transparent;border:0;border-block:1px solid var(--border);border-radius:0;padding:12px 0;gap:12px;margin-bottom:25px;box-shadow:none}.game-tabs{gap:4px;flex-wrap:wrap;display:flex}.tab{padding:10px 13px;font-size:12px;background:transparent;border-color:transparent;min-width:0;color:var(--muted);box-shadow:none}.tab.active{background:#c7d3a51c;color:#e1c693;border-color:#cad49e33;box-shadow:none}.game-status{gap:12px;display:flex;align-items:center;flex-wrap:wrap;font-size:12px}.game-status span{white-space:nowrap}.game-status .btn-small{font-size:11px;padding:8px 12px}.growth-dashboard{display:grid;grid-template-columns:1fr 1.65fr .9fr;gap:24px;align-items:center;border:1px solid var(--border);background:linear-gradient(115deg,#1e382870,#10291e70);padding:22px 26px;border-radius:10px;margin-bottom:15px}.growth-dashboard h3{font-size:26px;margin:5px 0 9px}.xp-track{height:5px;background:#e5d59c15;border-radius:8px;overflow:hidden}.xp-track i{height:100%;display:block;background:linear-gradient(90deg,#8da578,#e5bf79);width:0;transition:width .45s ease}.growth-dashboard small{font-size:10px;color:var(--muted)}.mission-card{text-align:left;padding:12px 24px;background:transparent;border:0;border-inline:1px solid var(--border);border-radius:0;display:flex;flex-direction:column;gap:6px;box-shadow:none;color:var(--text)}.mission-card strong{font:25px/1.2 var(--display)}.mission-card>span:last-child{font-size:11px;color:var(--muted);font-weight:400}.nursery-summary{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}.nursery-summary>b{font:36px var(--display);color:#e5bf79}.nursery-summary>span{font-size:11px;color:var(--muted)}.nursery-summary button{width:100%;background:transparent;font-size:11px;padding:9px}.daily-recap{font-size:11px;color:#b3c4a3;margin:12px 0 30px;padding-left:12px;border-left:2px solid #dbb67366}.tab-content{background:transparent;border:0;box-shadow:none;padding:0;animation:panel-arrive .35s ease}.section-desc{font-size:13px;color:var(--muted);margin-bottom:25px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.section-heading h3{font-size:42px;margin:7px 0 5px}.section-heading .btn-small{background:transparent;font-size:11px}
.workshop-steps{list-style:none;display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:5px 0 18px;padding:0}.workshop-steps li{border-top:1px solid var(--border);padding:12px 0;font-size:12px;color:#8da58e}.workshop-steps span{font-size:10px;margin-right:12px}.workshop-steps .current{border-color:#e5bd79;color:#e5bd79}.workshop-steps .done{color:#bace9f;border-color:#bace9f66}.workshop{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(290px,1fr);border:1px solid var(--border);border-radius:10px;overflow:hidden;background:#10251d}.workshop-scene{min-width:0;display:flex;flex-direction:column;background:#0a2119}.scene-topline,.scene-caption{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:17px 23px;font-size:9px;letter-spacing:1.2px;color:#b3bd9b}.scene-topline{border-bottom:1px solid var(--border)}.scene-caption{font-size:9px;letter-spacing:.3px;border-top:1px solid var(--border);margin-top:auto}.scene-caption span:last-child{font-size:8px;letter-spacing:1px;white-space:nowrap}#bench-canvas{width:100%;height:auto;display:block;border:0;border-radius:0;box-shadow:none;max-width:none;aspect-ratio:960/740}.workshop-controls{border-left:1px solid var(--border);padding:32px}.workshop-controls h4{font:39px/1.08 var(--display);margin:15px 0}.workshop-controls>p:not(.eyebrow){font-size:12px;color:var(--muted);line-height:1.85}.workshop-label{display:block;font-size:11px;color:#cfceb1;margin:20px 0 7px}#bench-controls select{width:100%;font-size:12px}#bench-controls .btn-primary,#bench-controls .btn-secondary{display:block;width:100%;margin-top:20px;font-size:12px;min-height:46px}#bench-controls .btn-secondary{margin-top:9px;background:transparent}.precision-slider{width:100%;margin:4px 0 0}.range-ends{display:flex;justify-content:space-between;font-size:10px;color:#aab99b}.quality-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--border);padding-top:18px;margin-top:20px;gap:12px}.quality-grid span{font-size:9px;color:#aebc9e;display:block}.quality-grid b{font:26px var(--display);color:#dfc596}#bench-feedback{min-height:52px;margin-top:20px;color:#e0cb9a;line-height:1.7;font-size:12px}.recovery-card{display:flex;align-items:center;gap:20px;margin:25px 0}.recovery-card>b{font:64px var(--display);color:#e8c487}.recovery-card small{font-size:27px;color:var(--muted)}.recovery-card>span{font-size:12px;color:var(--muted)}.union-score{margin:20px 0 8px;display:flex;flex-direction:column}.union-score strong{font:78px/1.1 var(--display);color:#e5bd79}.union-score small{font-size:28px;color:var(--muted)}.union-score>span{font-size:9px;letter-spacing:2px;color:#bbcd9e}.reward-line{font-size:11px;color:#d9c492}.workshop-note{font-size:10px;color:#a4b498;margin-top:17px;max-width:700px}
.soil-mixer{background:#12291f;padding:28px;border:1px solid var(--border);border-radius:10px}.soil-presets{gap:8px;display:flex;flex-wrap:wrap}.btn-preset{font-size:11px;background:transparent;padding:10px 14px}.soil-visual,.soil-stats{background:#0c2119;border:1px solid var(--border);border-radius:8px;padding:20px}.soil-visual h4,.soil-stats h4{font:25px var(--display);margin-bottom:16px}#soil-canvas{max-width:100%;height:auto}.soil-stat,#soil-stats-display p{font-size:12px}.soil-component{border-color:var(--border)}.nursery-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px}.cactus-card{background:radial-gradient(ellipse at 50% 20%,#294b3466,transparent 65%),#10271e;border:1px solid var(--border);border-radius:9px;padding:16px 18px 22px;position:relative;box-shadow:none;overflow:hidden;transition:transform .2s,border-color .2s,background .2s}.cactus-card:hover{background:radial-gradient(ellipse at 50% 20%,#83744636,transparent 75%),#172e20;border-color:#d1b47088;transform:translateY(-4px);box-shadow:0 12px 30px #0002}.plant-illustration{width:100%;max-height:230px;display:block;margin-bottom:14px}.specimen-sway{transform-origin:120px 228px;animation:specimen-breathe 5s ease-in-out infinite}.cactus-card:nth-child(2n) .specimen-sway{animation-delay:-2.5s}.cactus-card .name{font:25px var(--display);color:#e5dfc9;margin-bottom:5px}.cactus-card .species{font-size:10px;color:#aebc9d}.cactus-card .stats{font-size:11px;margin:12px 0;color:#c0c7a7}.plant-tag{position:absolute;top:14px;left:16px;font-size:8px;letter-spacing:1.5px;color:#d3c192}.care-label{display:flex;justify-content:space-between;gap:6px;font-size:9px;color:#b9c9a6;margin:15px 0 6px}.health-bar{height:4px;background:#b2bd901a}.health-fill{background:linear-gradient(90deg,#6e976c,#c6d69c);transition:width .4s}.nursery-controls{margin-bottom:22px;gap:9px;flex-wrap:wrap}.nursery-controls button{font-size:11px;background:transparent}.seed-layout,.market-layout{gap:18px}.seed-card,.market-card{background:#11281f;border:1px solid var(--border);box-shadow:none;padding:23px;border-radius:10px;min-width:0}.seed-card h4,.market-card h4{font:28px var(--display);margin-bottom:12px}.seed-entry{font-size:12px}.seed-hint,.seed-card label{font-size:12px;color:var(--muted)}.seed-card button{font-size:12px}.seed-card select{max-width:100%;font-size:12px}.seed-card .seed-name{overflow-wrap:anywhere}.seed-icon{display:none}.germ-chamber,.chamber{background:#183225;border-color:var(--border)}.sim-progress{background:#c1c7961a;height:7px;overflow:hidden}.sim-progress .bar{background:#bbcd94}.shop-item,.sell-item{gap:12px;border-color:var(--border);background:transparent;font-size:12px;flex-wrap:wrap}.shop-item .name{font-size:13px}.shop-item .species{font-size:10px}.shop-item button,.sell-item button{font-size:11px;padding:9px 14px;background:#203d2c;color:#dfd8bc}.sell-emoji{display:none}.event-entry{background:#10271e;border:1px solid var(--border);border-left-width:2px;padding:15px;font-size:12px}.event-entry.good{border-left-color:#9bbf83}.event-entry.bad{border-left-color:#e9a389}.event-entry.info{border-left-color:#b7b491}.event-day{color:#a0b38e}.modal{background:#020d09cc;backdrop-filter:blur(8px);z-index:200}.modal-content{background:#12291f;color:var(--text);border:1px solid #bbca9855;border-radius:12px;padding:28px;max-height:85dvh;overflow:auto;box-shadow:0 30px 80px #0007}.modal-content h2{font:34px var(--display);padding-right:25px}.modal-content .close{color:#d9d8b9;background:transparent;border:0;padding:5px 12px;font-size:25px;min-height:44px}.inspect-section{border-color:var(--border)}.inspect-section h4{font-size:14px;color:#d2c598}.inspect-section p{font-size:12px}.modal-content textarea{width:100%;margin:15px 0}.code-entry{padding:30px;background:#132b20;border:1px solid var(--border);border-radius:8px}.screen-header h2{font:40px var(--display)}.floating-text,.day-overlay{display:none!important}
#feedback-stack{position:fixed;bottom:24px;right:24px;width:min(370px,calc(100vw - 32px));z-index:300;display:flex;flex-direction:column;gap:8px;pointer-events:none}.feedback-toast{background:#263e2bf5;border:1px solid #b3c79666;border-radius:8px;padding:16px 20px;color:#e3e6cd;box-shadow:0 12px 40px #0005;font-size:12px;animation:panel-arrive .25s ease}.feedback-toast.reward{background:#343d24f5;border-color:#d4b36a;color:#f0d49b}.growth-particle{position:fixed;width:5px;height:9px;border-radius:50% 0 50% 0;background:#e7c77c;pointer-events:none;z-index:299;animation:seed-burst .9s ease-out forwards}.growth-particle:nth-child(2n){background:#a7c18c}@keyframes panel-arrive{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes specimen-breathe{0%,100%{transform:rotate(-.5deg)}50%{transform:rotate(.6deg) translateY(-1px)}}@keyframes seed-burst{to{transform:translate(var(--dx),var(--dy)) rotate(var(--turn));opacity:0}}
@media(min-width:1000px){.soil-mixer{display:grid;grid-template-columns:1.2fr .9fr;gap:22px}.soil-presets{grid-column:1/-1}#soil-sliders{grid-row:2/4;align-self:center}.soil-visual{grid-column:2;grid-row:2}.soil-stats{grid-column:2;grid-row:3}.soil-stats h4{margin-bottom:8px}#soil-stats-display{display:grid;grid-template-columns:1fr 1fr;gap:5px}.soil-mixer>.btn-primary{grid-column:1;max-width:260px}}
@media(max-width:1000px){#app{padding:24px 28px 50px}.site-mast{padding:20px 28px}.title-container{gap:30px}.title-photo{height:480px}.workshop{grid-template-columns:1.15fr 1fr}.workshop-controls{padding:23px}.workshop-controls h4{font-size:32px}.growth-dashboard{gap:16px;padding:18px}.mission-card{padding:12px 16px}.growth-dashboard .eyebrow{font-size:8px}.mission-card strong{font-size:22px}.nursery-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}}
@media(max-width:760px){#app{padding:20px 18px 45px}.site-mast{padding:18px;gap:12px}.site-mast>a{font-size:20px}.site-mast nav{gap:12px}.site-mast nav>a{font-size:10px}.site-mast button{padding:7px 9px;font-size:10px}.title-container{grid-template-columns:1fr;padding:10px 0 24px;gap:20px}.title-copy{padding:12px 0}.title-container h1{font-size:76px;max-width:550px}.title-photo{height:360px;border-radius:130px 130px 8px 8px}.title-photo img{object-position:center 48%}.title-photo figcaption>span{font-size:32px}.title-chapters{gap:15px}.title-chapters span{font-size:10px}.title-chapters b{font-size:8px}.growth-dashboard{grid-template-columns:1fr 1.6fr;gap:12px;padding:16px}.nursery-summary{grid-column:1/-1;border-top:1px solid var(--border);padding-top:10px;align-items:center}.nursery-summary>b{font-size:27px}.nursery-summary button{width:auto;margin-left:auto}.mission-card{border-right:0;padding-right:0}.session-heading h2{font-size:45px}.session-heading>p{font-size:9px}.game-tabs{display:grid;grid-template-columns:repeat(6,1fr);width:100%}.tab{padding:9px 5px;font-size:11px}.game-status{width:100%;justify-content:flex-end}.game-status>span:first-child{margin-right:auto}.game-header{gap:8px}.workshop{grid-template-columns:1fr}.workshop-controls{border-left:0;border-top:1px solid var(--border);padding:25px}.workshop-controls h4{font-size:37px}.workshop-scene{min-height:0}.scene-topline,.scene-caption{padding:12px 16px}.workshop-controls>p:not(.eyebrow){font-size:13px}#bench-feedback{min-height:0}.quality-grid{margin-top:16px}.workshop-steps{gap:6px}.workshop-steps li{font-size:10px}.workshop-steps span{margin-right:7px}.section-heading h3{font-size:34px}.section-heading .btn-small{white-space:nowrap}.workshop-note{font-size:10px}.soil-mixer{padding:18px}.soil-presets{margin-bottom:20px}.seed-layout,.market-layout{grid-template-columns:1fr}.seed-card,.market-card{padding:20px}.nursery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cactus-card{padding:12px}.cactus-card .name{font-size:22px}.cactus-card .stats{font-size:9px}.care-label{font-size:8px;flex-wrap:wrap}.plant-tag{left:12px;top:10px;font-size:7px}.plant-illustration{margin:8px 0}.modal-content{width:calc(100% - 28px);padding:20px}.daily-recap{margin-bottom:23px}#feedback-stack{bottom:16px;right:16px}}
@media(max-width:380px){.site-mast>a{font-size:17px}.site-mast>a span{font-size:7px}.site-mast nav{gap:7px}.site-mast nav>a{max-width:55px;line-height:1.4}.title-container h1{font-size:65px}.growth-dashboard{grid-template-columns:1fr}.mission-card{border-left:0;border-top:1px solid var(--border);padding:14px 0 0}.nursery-summary{grid-column:1}.nursery-summary button{font-size:10px}.workshop-controls{padding:20px}.scene-caption span:last-child{display:none}.section-heading{align-items:flex-start}.section-heading h3{font-size:29px}.section-heading .eyebrow{font-size:8px}.workshop-steps span{display:block}.game-status{gap:7px}.cactus-card .name{font-size:20px}.nursery-grid{gap:8px}.cactus-card .species{font-size:9px}}
.game-header{position:sticky;top:0;z-index:50;background:#081c16f5;backdrop-filter:blur(15px)}.tab-content{scroll-margin-top:95px}.tab-content h3{line-height:1.12}.tab.active{border-width:1px;border-radius:6px}.btn-preset{color:#d5d8bd;border-radius:6px}.btn-preset.active{background:#d8c4861a;color:#edc984;border-color:#dfc17c66}.seed-entry{display:block!important}.seed-entry>div:first-child{display:grid!important;grid-template-columns:minmax(0,1fr) auto auto;gap:10px!important;margin-bottom:6px}.seed-entry .seed-name{overflow-wrap:normal;font-size:12px}.seed-entry .seed-icon{display:none}.seed-entry>div:not(:first-child){line-height:1.7}.breed-selects select,#germ-controls select{background:#0c211a;color:#dfdfc7;border-color:var(--border)}.breed-selects{display:grid;grid-template-columns:1fr;gap:10px}.seed-layout{align-items:start}.seed-card{min-height:0}.seed-card p,.seed-card .seed-quality{color:var(--muted)}#soil-stats-display p{display:block;line-height:1.8}#soil-stats-display span{font-weight:600;color:#e7c488}#soil-canvas{background:#0c211a;border:0;border-radius:0;width:100%;max-width:390px;aspect-ratio:300/220}.soil-mixer>.btn-primary{justify-self:start}.section-heading .btn-small{align-self:flex-start;margin-top:20px}.workshop-controls .quality-grid{margin-top:16px}.workshop-scene{justify-content:center}
@media(max-width:760px){.tab-content{scroll-margin-top:135px}.growth-dashboard h3{font-size:23px;line-height:1.2}.workshop-steps{margin-top:10px}.scene-caption{flex-wrap:wrap}.scene-caption span:first-child{max-width:100%}.workshop-controls .quality-grid{margin-top:15px}#feedback-stack{bottom:12px}.feedback-toast{padding:12px 16px;font-size:11px}}
/* Daylight palette: brighter play surfaces, readable controls, and a focused phone canvas. */
.botanical-pot{height:282px}.botanical-specimen img{object-position:center bottom}.botanical-specimen .nursery-scion{bottom:92px}
.inspect-botanical .botanical-pot{height:282px}
@media(max-width:760px){.botanical-pot{height:250px}.botanical-specimen .nursery-scion{bottom:83px}}
.soil-mixer,.seed-card,.market-card,.modal-content{--text:#29452f;--text-light:#455b37;--muted:#52623f;--green:#4e6a31;--orange:#855d19;--red:#a24330;--border:#b3c398}
.soil-visual,.soil-stats{--text:#fff2cf;--muted:#dce9c5}
.site-mast nav>a,.site-mast button{white-space:nowrap}
.game-status #coin-counter{color:#fff0bb}
.soil-row input[type=range]{min-height:44px}
.workshop input[type=range]{min-height:48px}
.breed-selects select,#germ-controls select,#rootstock-select,#scion-select,#wrap-method,#supply-target{min-height:48px}
@media(max-width:760px){.soil-row{display:grid}.soil-row input[type=range]{min-width:0;max-width:none;flex:none}}
:root{--bg:#214831;--bg-card:#31593d;--cream2:#426d47;--text:#fff6dc;--text-light:#e1e8c9;--muted:#d1dfbd;--border:#d2e4b64d;--green:#d7e8ad}
body{background:radial-gradient(ellipse at 10% 0,#75935488,transparent 65%),#214831;font-size:15px}
.game-header{background:#244c34f7;border-color:#c4d9a65c}.site-mast{border-color:#d3e1aa55}.site-mast a,.site-mast>a{color:#fff2c9}.site-mast nav>a,.site-mast button{font-size:13px}.site-mast button{min-height:44px}.site-mast>a span{color:#d1e0b8}
.btn-primary{background:#f3c865;border-color:#ffdc91;color:#253e26;font-weight:600;box-shadow:0 3px 0 #9f793b}.btn-primary:hover{background:#ffdf8b;border-color:#ffe9b3;color:#253e26}.btn-secondary,.btn-small{background:#315b3d;color:#fff3d0;border-color:#c8d5a384}.btn-secondary:hover,.btn-small:hover{background:#456d47;color:#fff6da}.tab{color:#e1ebca;font-size:14px}.tab.active{background:#c5df9470;color:#fff6d4;border-color:#d7e6b6}.eyebrow,.session-heading>p,.daily-recap{color:#e1e9c6}.section-desc,.title-description,.title-copy>.small{font-size:15px;color:#e2e9cd}.title-chapters span{font-size:14px;color:#e2e9cd}.title-chapters b{color:#ffe09e}.title-photo:after{background:linear-gradient(transparent 48%,#163b22e8)}
.growth-dashboard{background:linear-gradient(110deg,#527547,#365e3d);border-color:#d0e0a65c}.growth-dashboard small,.mission-card>span:last-child,.nursery-summary>span{font-size:13px;color:#e3ebcb}.growth-dashboard .eyebrow{font-size:11px}.nursery-summary button{font-size:13px}.mission-card strong{font-size:27px}.growth-dashboard h3{font-size:28px}.xp-track{background:#173f2a}.xp-track i{background:linear-gradient(90deg,#c6df92,#ffdc79)}.daily-recap{font-size:13px;border-color:#f4d37b}
.workshop{background:#f2efd9;border-color:#cadca2}.workshop-scene{background:#315e3f}.scene-topline,.scene-caption{color:#edf1d4;font-size:12px;letter-spacing:.5px;border-color:#d0e2b455}.scene-caption span:last-child{font-size:10px}.workshop-controls{color:#29422d;background:linear-gradient(135deg,#fff7df,#e9edce);border-color:#c4d1a8}.workshop-controls h4{color:#27492f}.workshop-controls .eyebrow{color:#52623a;font-size:12px}.workshop-controls>p:not(.eyebrow){color:#45573b;font-size:15px;line-height:1.65}.workshop-label{color:#41563a;font-size:14px}.workshop-controls select{background:#fffcf0;color:#29462f;border-color:#9bac7c;font-size:16px!important}.workshop-controls select option{background:#fffbed;color:#29462f}.workshop-controls .range-ends{color:#536442;font-size:13px}.precision-slider{min-height:48px;accent-color:#628248}.workshop-controls #bench-controls button{font-size:15px;min-height:48px}.workshop-controls #bench-controls .btn-secondary{background:#dfebc3;color:#284b31;border-color:#849d62}.quality-grid{border-color:#71865055}.quality-grid span{font-size:12px;color:#536541}.quality-grid b{color:#365b35;font-size:29px}.workshop-controls #bench-feedback{color:#36572e;font-size:14px;line-height:1.6}.recovery-card>b,.union-score strong{color:#426132}.recovery-card>span,.recovery-card small,.union-score small{color:#536442;font-size:15px}.union-score>span,.reward-line{color:#52643b;font-size:13px}.workshop-note{color:#dfe6c6;font-size:13px}.workshop-note a{color:#ffe3a4}.workshop-steps li{color:#d1e3b8;font-size:14px}.workshop-steps span{font-size:12px}.workshop-steps .current{color:#ffe4a0}.workshop-steps .done{color:#e3eecb}
.soil-mixer,.seed-card,.market-card,.modal-content{background:#f2efd9;color:#29452f;border-color:#d3dfb2}.soil-mixer h4,.seed-card h4,.market-card h4,.modal-content h2{color:#2d4f31}.soil-row{background:#e4eccf;border-color:#b6c798}.soil-row label,.soil-row .pct{color:#304d2d;font-size:14px}.soil-presets .btn-preset{background:#e0eac6;color:#354f2c;border-color:#a5b97f;font-size:13px}.soil-presets .btn-preset.active{background:#cfdea7;border-color:#647f41;color:#2a472a}.soil-visual,.soil-stats{background:#315d40;border-color:#c6d8a3}.soil-visual h4,.soil-stats h4{color:#f7f1d2}#soil-stats-display p{font-size:14px;color:#e5eccb}#soil-canvas{background:#315d40}
.seed-card p,.seed-hint,.seed-card label,.seed-entry,.seed-card .seed-quality{color:#435b39;font-size:14px}.seed-entry .seed-name{font-size:15px}.seed-entry>div:not(:first-child){color:#556344!important;font-size:13px!important}.seed-entry{border-color:#b5c497!important}.seed-card select,.breed-selects select,#germ-controls select,#supply-target,.modal-content textarea{background:#fffced;color:#304b2d;border-color:#a8b988;font-size:16px}.seed-card select option,.market-card select option{background:#fffced;color:#304b2d}.seed-card button,.market-card button{font-size:14px;min-height:46px}.germ-chamber{background:#dce8c4;color:#365332;border-color:#a6bb87}.germ-chamber p,.germ-chamber span{color:#3c5835!important}.shop-item .name{font-size:15px;color:#304d2c}.shop-item .species{font-size:13px;color:#536443}.shop-item .price,.sell-item{color:#3e5836;font-size:14px}.market-card .workshop-label{color:#445e38}.market-card>p{color:#51633c!important;font-size:14px!important}.modal-content p,.inspect-section p{font-size:15px;color:#455b3b}.modal-content .close{color:#395631}.inspect-section h4{color:#3e5c32;font-size:16px}.inspect-section{border-color:#bbcca0}.modal-content .hint{color:#596945}.seed-card .seed-count{color:#426234}.nursery-controls button{font-size:14px}.cactus-card{background:radial-gradient(ellipse at 50% 15%,#fbf6d5,transparent 72%),#e2ebc5;border-color:#bed09e}.cactus-card:hover{background:#ecf0cb;border-color:#edc16b}.cactus-card .name{color:#294b2e;font-size:27px}.cactus-card .species{color:#536a42;font-size:13px}.cactus-card .stats{color:#415b34;font-size:14px}.cactus-card .plant-tag{color:#647440;font-size:11px}.cactus-card .care-label{color:#455e36;font-size:12px}.cactus-card .health-bar{background:#c1d39c;height:6px}.cactus-card .health-fill{background:linear-gradient(90deg,#598047,#8da650)}.plant-illustration text{fill:#4b6940}.event-entry{background:#355c3e;color:#f1efd2;font-size:15px}.event-day{color:#d7e6b7}.feedback-toast{font-size:14px;background:#345d3bf5;color:#fff1cd}.feedback-toast.reward{background:#f8dc99f7;color:#354925;border-color:#e3b658}.code-entry{background:#315b3c}.session-heading>p{font-size:13px}
@media(max-width:760px){
  #app{padding-inline:16px}.site-mast{padding:14px 16px}.site-mast>a{font-size:20px}.site-mast>a span{font-size:8px}.site-mast nav{gap:8px}.site-mast nav>a{font-size:12px}.site-mast button{font-size:12px}.tab{font-size:13px;padding:9px 2px;min-height:46px}.game-tabs{gap:2px}.game-header{padding:8px 0;gap:6px}.game-status{font-size:13px;gap:9px}.game-status .btn-small{font-size:13px;min-height:46px}.tab-content,.workshop{scroll-margin-top:128px}.session-heading h2{font-size:43px}.session-heading>p{font-size:12px;max-width:135px;text-align:right}.growth-dashboard .eyebrow{font-size:10px;letter-spacing:1px}.growth-dashboard h3{font-size:26px}.mission-card strong{font-size:25px}.nursery-summary button{font-size:13px}.section-heading h3{font-size:32px}.section-heading .btn-small{font-size:13px}.section-heading .eyebrow{font-size:11px;letter-spacing:1px}.section-desc{line-height:1.6}.workshop-steps{gap:6px;margin-bottom:12px}.workshop-steps li{font-size:12px;padding:10px 0}.workshop-steps span{font-size:11px;margin-right:4px}.workshop-controls{padding:18px}.workshop-controls h4{font-size:30px;line-height:1.12;margin:8px 0}.workshop-controls>p:not(.eyebrow){font-size:14px;line-height:1.6}.workshop-controls .eyebrow{font-size:11px}.workshop-label{font-size:14px;margin-top:14px}.workshop-controls #bench-controls button{margin-top:14px}.workshop-controls #bench-feedback{margin-top:14px;min-height:0}.quality-grid{padding-top:12px;gap:10px}.quality-grid span{font-size:12px}.quality-grid b{font-size:27px}#bench-canvas{aspect-ratio:600/400}.scene-topline{padding:10px 12px;font-size:11px}.scene-caption{padding:9px 12px;font-size:12px;line-height:1.5}.scene-caption span:last-child{display:none}.nursery-grid{gap:12px}.cactus-card{padding:14px}.cactus-card .name{font-size:25px;line-height:1.1}.cactus-card .species{font-size:13px;overflow-wrap:anywhere}.cactus-card .stats{font-size:13px;line-height:1.65}.cactus-card .care-label{font-size:12px;display:block}.care-label span{display:block}.cactus-card .plant-tag{font-size:10px}.plant-illustration{margin-top:14px}.soil-row{grid-template-columns:minmax(0,1fr) 40px;gap:6px;padding:10px}.soil-row label{grid-column:1;grid-row:1;font-size:14px}.soil-row input{grid-column:1/-1;grid-row:2;width:100%;min-height:44px}.soil-row .pct{grid-column:2;grid-row:1;text-align:right}.soil-stats{padding:18px}#soil-stats-display p{font-size:14px}.seed-card,.market-card{padding:18px}.seed-entry>div:first-child{gap:7px!important}.nursery-controls{gap:8px}.nursery-controls button{padding:10px 12px}.title-copy>.small{font-size:13px}.title-chapters{grid-template-columns:1fr;gap:18px}.title-chapters b{font-size:11px}.title-chapters span{font-size:14px}#feedback-stack{bottom:max(12px,env(safe-area-inset-bottom))}.feedback-toast{font-size:13px;line-height:1.5}.workshop-note{font-size:12px}.seed-card h4,.market-card h4{font-size:30px}
}
@media(max-width:360px){.site-mast{flex-wrap:wrap;gap:10px}.site-mast nav{margin-left:auto}.nursery-grid{grid-template-columns:1fr}.plant-illustration{max-height:230px}.cactus-card .care-label{display:flex}.growth-dashboard{padding:16px}.game-status{gap:6px}.game-status .btn-small{padding:8px 10px}.workshop-steps span{display:block}.workshop-controls{padding:16px}.scene-topline{font-size:10px}.section-heading{gap:12px}.section-heading h3{font-size:30px}.section-heading .btn-small{padding:8px 10px}.title-container h1{font-size:62px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.growth-particle{display:none}}

/* The grafted Star Cactus is its top hemisphere, cut flat across the middle. */
.botanical-specimen .nursery-scion.is-half{height:auto;bottom:100px;clip-path:none}
@media(max-width:760px){.botanical-specimen .nursery-scion.is-half{bottom:89px}}

/* Keep phone text fields readable without automatic focus zoom. */
@media(pointer:coarse){input,select,textarea{font-size:16px!important}}

/* Whole, rounded specimens sit in front of the pot lip; upright stems stay behind it. */
.botanical-pot.is-globular:not(.is-grafted) .botanical-specimen{z-index:5;width:100%;max-width:190px}
.botanical-pot.is-globular:not(.is-grafted) .nursery-plant{width:min(175px,calc(var(--pot-width) + 14px));height:auto;max-height:165px}
.botanical-pot.is-globular:not(.is-grafted) .botanical-specimen img{filter:drop-shadow(0 3px 2px #342b2340)}
.cactus-card{overflow:visible;min-width:0}
.cactus-card .botanical-pot{overflow:hidden;border-radius:6px}
.nursery-grid{padding:6px;margin:-6px}

/* Standalone controls have complete outlines, including the selected tab's bottom edge. */
.game-tabs{gap:6px;padding:4px;min-width:0}
.game-tabs .tab{justify-content:center;border:1px solid #cfdda17a;border-radius:7px;background:#173d29;color:#eaf0ce;min-height:46px;transform:none}
.game-tabs .tab:hover{background:#426849;color:#fff4cd;border-color:#e8cc83;transform:none}
.game-tabs .tab.active{background:#f2cd77;color:#203d29;border:1px solid #ffe2a0;border-radius:7px;box-shadow:0 2px 0 #0d281f55}
.game-tabs .tab:focus-visible{outline:2px solid #fff1bb;outline-offset:2px}

/* A game-first welcome with an unmistakable primary action. */
.title-container{gap:36px;padding:28px 0}
.title-container h1{font-size:clamp(66px,7vw,104px);margin:14px 0;letter-spacing:-.045em}
.title-copy{padding:12px 0}.title-copy .eyebrow{color:#e3d692;letter-spacing:.14em}
.title-copy .subtitle{font-size:12px;letter-spacing:.16em}.title-copy .tagline{margin:20px 0 12px;font-size:30px}
.title-description{font-size:16px;line-height:1.7;max-width:40ch}
.title-buttons{gap:12px;margin-top:24px;align-items:center}
.title-buttons .btn-primary{display:inline-flex;justify-content:center;align-items:center;gap:14px;min-height:60px;padding:16px 28px;font-size:18px;background:#f4ce78;color:#213b25;border:1px solid #ffe5a8;box-shadow:0 4px 0 #a57530,0 8px 30px #ecc36a25}
.title-buttons .btn-primary:hover{background:#ffe2a0;box-shadow:0 4px 0 #a57530,0 10px 36px #ecc36a45}
.title-buttons .btn-secondary{font-size:13px;min-height:46px}
.title-game-preview{min-width:0;margin:0;padding:18px;border:1px solid #d9d99b66;border-radius:18px;background:radial-gradient(ellipse at top,#75905388,transparent 70%),#173d2b;box-shadow:0 18px 55px #08271944}
.preview-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#e6e6bd;font-size:11px;margin:2px 0 20px}
.play-status{display:inline-flex;align-items:center;gap:8px;color:#fff0b4}
.play-status:before{content:'';width:7px;height:7px;border-radius:50%;background:#dbec92;box-shadow:0 0 0 5px #d5e58b15;animation:ready-glow 2.8s ease-in-out infinite}
.title-game-preview img{display:block;width:100%;height:auto;border-radius:9px;transform:rotate(-2deg);animation:preview-rise .8s ease both}
.title-game-preview figcaption{display:flex;flex-direction:column;gap:8px;margin:24px 4px 6px}
.title-game-preview figcaption strong{font:30px/1.1 var(--display);color:#fff0c8}
.title-game-preview figcaption span{font-size:12px;line-height:1.6;color:#d4e0bc}
@keyframes ready-glow{50%{box-shadow:0 0 0 8px #d5e58b08}}
@keyframes preview-rise{from{opacity:0;transform:translateY(12px) rotate(-2deg)}to{opacity:1;transform:rotate(-2deg)}}
@media(max-width:760px){
 .title-container{padding:10px 0 24px;gap:24px}.title-container h1{font-size:72px}.title-copy .tagline{font-size:27px;margin-top:16px}.title-description{font-size:15px}.title-buttons{margin-top:22px}.title-buttons .btn-primary{width:100%;font-size:19px}.title-game-preview{padding:14px}.title-game-preview figcaption strong{font-size:27px}
 .game-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:4px;width:100%}.game-tabs .tab{font-size:14px;padding:10px 6px}.tab-content{scroll-margin-top:192px}
 .botanical-pot.is-globular:not(.is-grafted) .nursery-plant{width:min(150px,calc(var(--pot-width) + 12px));max-height:150px}
}
@media(prefers-reduced-motion:reduce){.title-game-preview img,.play-status:before{animation:none}}

/* Let the Peyote’s rounded front settle farther over the terracotta lip. */
.botanical-pot.is-peyote:not(.is-grafted) .botanical-specimen{bottom:calc(var(--plant-seat) - 8px * var(--growth,1))}
/* Textured pottery and a visible mineral planting bed. */
.botanical-pot{--pot-width:min(164px,calc(100% - 12px));--plant-seat:calc(17px + var(--pot-width) * .58);height:280px}
.botanical-vessel{position:absolute;left:50%;bottom:17px;width:var(--pot-width);height:auto;max-width:none;transform:translateX(-50%);z-index:1;pointer-events:none}
.botanical-vessel.vessel-front{z-index:6;clip-path:polygon(0 21%,10% 30%,25% 34%,50% 36%,75% 34%,90% 30%,100% 21%,100% 100%,0 100%)}
.botanical-pot.is-column,.botanical-pot.is-grafted{--pot-width:128px;--plant-seat:calc(17px + var(--pot-width) * .58)}
.botanical-pot.is-globular:not(.is-grafted) .botanical-specimen{bottom:calc(17px + var(--pot-width) * .50);animation:none}
.botanical-pot.is-globular:not(.is-grafted) .nursery-plant{width:calc(var(--pot-width) * .76);height:auto;max-height:160px}
.is-column .nursery-plant{height:160px;width:92px}
.botanical-shadow{width:var(--pot-width);bottom:12px;height:10px;background:#473a2938;filter:blur(3px)}
@media(max-width:760px){
 .botanical-pot{--pot-width:min(136px,calc(100% - 8px));height:240px}
 .botanical-pot.is-column,.botanical-pot.is-grafted{--pot-width:108px}
 .is-column .nursery-plant{height:137px;width:80px}
}

.inspect-botanical .botanical-pot{height:280px}
@media(max-width:760px){.inspect-botanical .botanical-pot{height:250px}}
/* Keep the inspection hit area still when the pointer sits at a card edge. */
.cactus-card:hover,.cactus-card:active{transform:none}
.tab-content{position:relative;padding:clamp(18px,3vw,34px);border:1px solid #d5dfad42;border-radius:14px;background:radial-gradient(circle at 82% 0,#eff2bd17,transparent 30%),linear-gradient(145deg,#173c2a,#0c2b20 68%);box-shadow:inset 0 1px #fff1c70d,0 24px 70px #04140d2b;overflow:hidden}
.tab-content:before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 49.7%,#f0d99508 50%,transparent 50.3%),linear-gradient(transparent 49.7%,#f0d99506 50%,transparent 50.3%);background-size:54px 54px;mask-image:linear-gradient(to bottom,#0008,transparent 42%)}
.tab-content>*{position:relative}.tab-content>h3{margin-top:0;color:#fff4d3}.section-desc{font-size:14px;color:#d2dec0;max-width:72ch}
.soil-mixer,.seed-card,.market-card{box-shadow:inset 0 1px #fff9d510,0 14px 40px #03150e25}
.soil-visual{background:linear-gradient(#123427,#0a261c);border-color:#d5dfad38}.soil-stats{background:#f0ebcf;color:#29452e;border-color:#dfc57a}.soil-stats h4{color:#28462e}.soil-stats p{position:relative;display:grid;grid-template-columns:1fr auto;gap:8px;color:#40553e;padding-bottom:14px;margin-bottom:12px}.soil-stats p:after{content:'';position:absolute;left:0;right:0;bottom:2px;height:5px;border-radius:8px;background:linear-gradient(90deg,#75a163 var(--stat,0%),#c8d5a4 var(--stat,0%));box-shadow:inset 0 1px 2px #30472f33}
.cactus-card{box-shadow:0 14px 35px #06170e2b}.cactus-card:focus-visible{border-color:#f0ca77;box-shadow:0 0 0 3px #f0ca7730,0 18px 42px #06170e45}
#tab-market .market-layout{grid-template-columns:minmax(280px,.72fr) minmax(0,1.7fr);align-items:start}
#tab-market .market-card:nth-child(2){grid-row:span 2}#market-balance-card{grid-column:1}
#tab-market .market-card:first-child .shop-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 10px;align-items:center;padding:14px 0}#tab-market .market-card:first-child .shop-item .info{grid-column:1/-1}#tab-market .market-card:first-child .shop-item .price{justify-self:start}#tab-market .market-card:first-child .shop-item button{min-width:74px;margin:0}#tab-market .market-card:first-child .shop-item button+button{grid-column:2}
#sell-list{display:grid;gap:14px}.market-sell-summary{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 16px}.market-sell-summary span{display:flex;align-items:baseline;gap:5px;padding:8px 11px;border:1px solid #b9ca8f;border-radius:999px;background:#edf1d2;color:#486042;font-size:12px}.market-sell-summary b{font:21px var(--display);color:#315535}
.sell-item{display:grid;grid-template-columns:170px minmax(0,1fr) 132px;gap:18px;align-items:center;padding:12px 14px;border:1px solid #b7c792;border-radius:11px;background:linear-gradient(115deg,#edf2d8,#dce8bf);color:#304b31;overflow:hidden;box-shadow:0 10px 24px #1f3e2a1b;transition:border-color .2s,box-shadow .2s}.sell-item.is-graft{background:radial-gradient(circle at 12% 20%,#fff4c4,transparent 34%),linear-gradient(115deg,#edf2d8,#dce8bf);border-color:#d0ae61}.sell-item:hover{border-color:#d3ad5b;box-shadow:0 15px 30px #1f3e2a2b}
.sell-plant-preview{position:relative;height:184px;min-height:184px;width:100%;padding:0;border:0;border-radius:8px;background:radial-gradient(ellipse at 50% 68%,#f7e7b8,#bfd095 72%);overflow:hidden;box-shadow:inset 0 0 0 1px #fff9d88a}.sell-plant-preview:hover{transform:none;background:radial-gradient(ellipse at 50% 68%,#fff0c8,#c7d99d 72%)}.sell-plant-preview>span{position:absolute;left:9px;bottom:8px;padding:4px 7px;border-radius:4px;background:#153d2ede;color:#f8e7ae;font-size:10px;letter-spacing:.08em;text-transform:uppercase;z-index:8}
.botanical-pot.is-market{height:184px;--pot-width:108px;--plant-seat:calc(9px + var(--pot-width) * .58);margin:0 auto}.botanical-pot.is-market .botanical-vessel{bottom:9px}.botanical-pot.is-market .botanical-shadow{bottom:5px}.botanical-pot.is-market.is-column,.botanical-pot.is-market.is-grafted{--pot-width:92px;--plant-seat:calc(9px + var(--pot-width) * .58)}.botanical-pot.is-market .nursery-stock{width:78px;height:99px}.botanical-pot.is-market .nursery-scion{width:63px;height:55px;bottom:72px}.botanical-pot.is-market.is-column .nursery-scion{width:40px;height:68px}.botanical-pot.is-market .nursery-scion.is-half{bottom:75px}
.sell-copy{min-width:0}.sell-kicker{font-size:10px;letter-spacing:.13em;color:#947132;font-weight:700}.sell-copy h5{font:29px/1.05 var(--display);color:#29492f;margin:5px 0 2px}.sell-copy>p{font-size:12px;color:#566a4b;margin:0 0 13px}.sale-meters{display:grid;gap:7px}.sale-meters>span{display:grid;grid-template-columns:70px minmax(60px,1fr) 35px;align-items:center;gap:7px;font-size:10px;color:#526649}.sale-meters i{height:5px;border-radius:8px;background:#bbcca0;overflow:hidden}.sale-meters i b{display:block;height:100%;border-radius:8px;background:linear-gradient(90deg,#668b52,#d0ae58)}.sale-meters strong{text-align:right;font-size:10px;color:#334d34}.sale-modifiers{display:flex;flex-wrap:wrap;gap:5px;margin-top:12px}.sale-modifiers span{padding:4px 7px;border-radius:4px;background:#c7d7a8;color:#3c563a;font-size:9px}.sale-modifiers b{color:#7d5a21}.sell-offer{display:flex;flex-direction:column;align-items:stretch;text-align:center;padding-left:14px;border-left:1px solid #aebe8a}.sell-offer>span{font-size:9px;letter-spacing:.13em;color:#6a794f}.sell-offer>strong{font:35px/1 var(--display);color:#315637;margin:8px 0 13px}.sell-offer small{display:block;font:10px var(--body);letter-spacing:.05em;color:#667657}.sell-offer button{padding:9px;font-size:12px}.market-empty{min-height:210px;display:grid;place-content:center;gap:8px;text-align:center;border:1px dashed #9eb581;border-radius:9px;background:#e3ebc9;color:#415b3c;padding:24px}.market-empty strong{font:27px var(--display)}.market-empty span{font-size:13px;max-width:36ch}
.breed-visual{display:grid;grid-template-columns:1fr 70px 1fr;align-items:center;gap:8px;margin:16px 0;padding:12px;border:1px solid #bfce9540;border-radius:10px;background:linear-gradient(135deg,#f0edcf,#dce9c1);min-height:196px}.breed-parent{position:relative;min-width:0;height:170px;border-radius:8px;background:radial-gradient(ellipse at 50% 72%,#fff1c8,#c3d39c);overflow:hidden}.breed-parent .botanical-pot{margin:-8px auto}.breed-parent>span{position:absolute;left:8px;right:8px;bottom:7px;z-index:8;display:flex;justify-content:space-between;gap:6px;padding:5px 7px;border-radius:4px;background:#173e30e8;color:#dce7c2;font-size:8px;letter-spacing:.12em}.breed-parent>span b{color:#fff0bd;letter-spacing:0;text-align:right}.breed-parent.is-empty{display:grid;place-items:center;text-align:center}.breed-parent.is-empty i{width:58px;height:72px;border:1px dashed #83946f;border-radius:50% 50% 38% 38%;opacity:.65}.pollen-path{display:grid;place-items:center;gap:7px;color:#725f2d;font-size:9px;text-transform:uppercase;letter-spacing:.12em}.pollen-path i{width:54px;height:1px;background:linear-gradient(90deg,#a88437,#f3ca70,#a88437);position:relative}.pollen-path i:after{content:'';position:absolute;inset:-4px auto auto 24px;width:8px;height:8px;border-radius:50%;background:#d49f36;box-shadow:-16px 3px #ecd477,16px -2px #b7852d}
.seed-entry{display:grid!important;grid-template-columns:84px minmax(0,1fr);gap:12px;padding:12px 0;border-bottom:1px solid #aebd8745}.seed-entry>.seed-parents{display:flex!important;align-items:center;grid-template-columns:none!important;gap:0!important;margin:0!important}.plant-thumb{display:grid;place-items:center;position:relative;min-width:50px;height:66px;border-radius:7px;background:radial-gradient(ellipse,#edf1ce,#bfd09a);overflow:hidden}.plant-thumb+.plant-thumb{margin-left:-20px;transform:translateY(5px);box-shadow:0 0 0 2px #e8edcb}.plant-thumb img{width:46px;height:56px;object-fit:contain;filter:drop-shadow(0 3px 2px #24412430)}.plant-thumb small{position:absolute;left:3px;right:3px;bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;font-size:7px;color:#405b3a}.plant-thumb.is-loading{font-size:8px;text-align:center;color:#506248;padding:4px}.seed-copy{min-width:0}.seed-line{display:flex;align-items:start;gap:8px}.seed-name{font-weight:700;color:#304f31;overflow-wrap:anywhere}.seed-count{margin-left:auto;color:#45623d}.seed-origin,.seed-note{font-size:11px;color:#5c704f;margin-top:3px}.seed-note{font-style:italic}.seed-quality{display:grid;grid-template-columns:minmax(55px,1fr) auto;align-items:center;gap:8px;margin-top:8px}.seed-quality>span{height:5px;border-radius:8px;background:#bdcca2;overflow:hidden}.seed-quality i{display:block;height:100%;background:linear-gradient(90deg,#cb9c4b,#6d9859)}.seed-quality b{font-size:9px;color:#53684a}
.germ-chamber{display:grid;grid-template-columns:90px minmax(0,1fr);column-gap:12px;align-items:center}.germ-chamber>*:not(.chamber-visual){grid-column:2}.chamber-visual{grid-column:1;grid-row:1/6;align-self:stretch;position:relative;display:grid;place-items:center;min-height:116px;border:1px solid #a8b98d;border-radius:9px;background:linear-gradient(#dce8c6aa,#b8c997aa),repeating-linear-gradient(90deg,#fff2 0 1px,transparent 1px 10px);overflow:hidden}.chamber-visual .plant-thumb{transform:translateY(var(--seed-y,0)) scale(var(--seed-scale,1));opacity:var(--seed-opacity,1);background:transparent}.chamber-visual>i{position:absolute;left:12px;right:12px;bottom:10px;height:20px;border-radius:50%;background:radial-gradient(ellipse,#3b3a29,#716c4d);box-shadow:inset 0 3px #9a9672}
#event-log{position:relative;padding-left:24px}#event-log:before{content:'';position:absolute;left:7px;top:10px;bottom:10px;width:1px;background:linear-gradient(#e5c477,#769463)}.event-entry{position:relative;border-radius:8px;margin-bottom:10px;box-shadow:0 9px 22px #03150e20}.event-entry:before{content:'';position:absolute;left:-22px;top:21px;width:9px;height:9px;border-radius:50%;background:#e5c477;box-shadow:0 0 0 4px #173a2c}
.sale-celebration{position:fixed;left:var(--sale-x);top:var(--sale-y);width:190px;z-index:500;pointer-events:none;display:flex;flex-direction:column;align-items:center;animation:sale-flight 1.25s cubic-bezier(.2,.75,.2,1) forwards}.sale-celebration .botanical-pot{width:170px}.sale-celebration>strong{font:44px/1 var(--display);color:#fff0b5;text-shadow:0 3px 18px #082217;margin-top:-18px}.sale-celebration>strong small{font:11px var(--body)}.sale-celebration>span{font-size:9px;letter-spacing:.18em;color:#d5e2bd;margin-top:7px}@keyframes sale-flight{0%{opacity:0;transform:translate(0,15px) scale(.75)}20%{opacity:1;transform:translate(20px,-18px) scale(.9)}75%{opacity:1;transform:translate(90px,-120px) scale(1)}100%{opacity:0;transform:translate(140px,-180px) scale(.85)}}
@media(max-width:900px){#tab-market .market-layout{grid-template-columns:1fr}#tab-market .market-card:nth-child(2){grid-row:auto;order:-1}#market-balance-card{grid-column:auto}.sell-item{grid-template-columns:145px minmax(0,1fr)}.sell-offer{grid-column:1/-1;display:grid;grid-template-columns:1fr auto 150px;align-items:center;text-align:left;padding:12px 0 0;border-left:0;border-top:1px solid #aebe8a}.sell-offer>strong{margin:0}.sell-offer small{display:inline;margin-left:4px}}
@media(max-width:600px){.tab-content{padding:16px 12px}.growth-dashboard #xp-label{font-size:10px;white-space:nowrap}.sell-item{grid-template-columns:116px minmax(0,1fr);gap:11px;padding:10px}.sell-plant-preview{height:160px;min-height:160px}.botanical-pot.is-market{height:160px;--pot-width:94px}.botanical-pot.is-market.is-column,.botanical-pot.is-market.is-grafted{--pot-width:80px}.sell-copy h5{font-size:24px}.sell-copy>p{font-size:10px}.sale-meters>span{grid-template-columns:57px minmax(35px,1fr) 31px}.sale-modifiers span{font-size:8px}.sell-offer{grid-template-columns:1fr auto;gap:8px}.sell-offer>strong{font-size:30px}.sell-offer button{grid-column:1/-1;width:100%;font-size:14px}.breed-visual{grid-template-columns:1fr 38px 1fr;padding:7px}.pollen-path i{width:34px}.pollen-path span{font-size:7px}.breed-parent>span{display:block}.breed-parent>span b{display:block;margin-top:2px;text-align:left}.germ-chamber{grid-template-columns:76px minmax(0,1fr)}.seed-entry{grid-template-columns:82px minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){.sale-celebration{animation:none;opacity:0}}
