.plot-embed{--paper:#f5eee0;--ink:#211b12;--sage:#6f8b54;--sage-deep:#2f4b2b;--gold:#e7b94e;--clay:#a53f2c;--soil:#785133;--line:#dccca9}.plot-embed *{box-sizing:border-box}.plot-embed{margin:0;background:#182419;color:var(--paper);font-family:"Hanken Grotesk",system-ui,sans-serif}.plot-embed:before{content:"";position:fixed;inset:0;background:radial-gradient(circle at 50% 15%,#35482b 0,transparent 55%);pointer-events:none}.plot-embed .kicker{margin:0;font:600 11px/1.2 ui-monospace,monospace;letter-spacing:.2em;text-transform:uppercase;color:#c5b68f}.plot-embed h1{margin:7px 0 4px;font:500 clamp(28px,5vw,48px)/1 Georgia,serif}.plot-embed .intro>p:last-child{margin:0;color:#d7ceb8}.plot-embed .game{position:relative}.plot-embed .board{position:relative;aspect-ratio:4/3;overflow:hidden;border:1px solid #d9c895;box-shadow:0 18px 70px #050a05aa;outline:none;touch-action:manipulation;background:#263a25;isolation:isolate}.plot-embed .board:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.plot-embed .world, .plot-embed .shade, .plot-embed .ambience{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.plot-embed .world{object-fit:cover;user-select:none}.plot-embed .shade{background:linear-gradient(#8a3f1800 55%,#8a321855);opacity:calc(var(--sunset) * .8);mix-blend-mode:multiply;z-index:10}.plot-embed .ambience{z-index:2;overflow:hidden}.plot-embed /* Living map: pond life, .plot-embed canopy breathing, .plot-embed and wind-borne leaves. */
.pond-life{position:absolute;left:4%;top:58%;width:30%;height:29%;overflow:hidden;border-radius:44% 49% 43% 50%;clip-path:ellipse(48% 43% at 50% 50%)}.plot-embed .canopy{position:absolute;transform-origin:50% 100%;animation:canopy-sway 5.5s ease-in-out infinite alternate;opacity:.82}.plot-embed .canopy i{position:absolute;border-radius:38% 62% 43% 57%;background:radial-gradient(circle at 28% 26%,#9bb867 0 8%,transparent 9%),radial-gradient(circle at 64% 31%,#78994d 0 12%,transparent 13%),radial-gradient(circle at 42% 67%,#315931 0 18%,transparent 19%),#496f3b;clip-path:polygon(12% 8%,38% 1%,52% 12%,73% 5%,95% 29%,85% 51%,98% 70%,70% 93%,48% 84%,25% 98%,4% 70%,13% 47%,0 27%);box-shadow:inset -4px -5px #203f27aa,0 3px 4px #152b1d66}.plot-embed .canopy-west{left:-3%;top:19%;width:12%;height:18%}.plot-embed .canopy-east{right:-3%;top:15%;width:15%;height:22%;animation-delay:-2.5s}.plot-embed .canopy i:nth-child(1){left:2%;top:20%;width:45%;height:46%}.plot-embed .canopy i:nth-child(2){left:31%;top:3%;width:48%;height:52%}.plot-embed .canopy i:nth-child(3){left:50%;top:33%;width:47%;height:46%}.plot-embed .canopy i:nth-child(4){left:14%;top:49%;width:42%;height:40%}.plot-embed .wind-leaves i{position:absolute;left:-6%;top:var(--y);width:1.1%;aspect-ratio:1.7;border-radius:100% 0 100% 0;background:var(--leaf,#d5a54b);filter:drop-shadow(1px 2px #17341f88);animation:leaf-drift var(--speed) linear infinite;animation-delay:var(--delay)}.plot-embed .wind-leaves i:nth-child(1){--y:17%;--speed:10s;--delay:-1s}.plot-embed .wind-leaves i:nth-child(2){--y:29%;--speed:14s;--delay:-8s;--leaf:#78924b}.plot-embed .wind-leaves i:nth-child(3){--y:39%;--speed:12s;--delay:-4s;--leaf:#b66d35}.plot-embed .wind-leaves i:nth-child(4){--y:53%;--speed:16s;--delay:-12s;--leaf:#d4b052}.plot-embed .wind-leaves i:nth-child(5){--y:67%;--speed:11s;--delay:-6s;--leaf:#5d7c42}.plot-embed .wind-leaves i:nth-child(6){--y:76%;--speed:17s;--delay:-3s}.plot-embed .wind-leaves i:nth-child(7){--y:46%;--speed:13s;--delay:-10s;--leaf:#a85531}.plot-embed .wind-leaves i:nth-child(8){--y:23%;--speed:18s;--delay:-15s;--leaf:#6e914d}.player{position:absolute;width:8.1%;aspect-ratio:117/110;transform:translate(-50%,-94%);z-index:7;pointer-events:none;transform-origin:50% 80%}.plot-embed .player-shadow{position:absolute;left:7%;bottom:-3%;width:88%;height:24%;border-radius:50%;background:#19150d77;filter:blur(1px);z-index:-1}.plot-embed .player img{width:100%;height:100%;display:block;image-rendering:pixelated}.plot-embed .player[data-facing="left"] img{transform:scaleX(-1)}.plot-embed .player.moving{animation:walk-bob .3s steps(2,end) infinite}.plot-embed .player.acting{animation:pour .3s ease-out}.entities .art{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;image-rendering:pixelated;transition:opacity .35s,filter .35s}.entities .art.gone{opacity:0}.entities .art.ripe{filter:brightness(1.06);animation:ripe 2.4s ease-in-out infinite}.pickup{position:absolute;border:0;background:transparent;padding:0;cursor:pointer;z-index:6;touch-action:manipulation}.plot-embed .pickup:focus-visible{outline:3px solid var(--paper);border-radius:50%}.plot-embed .soil-crack{position:absolute;inset:44% 2%}.plot-embed .root:not(.hidden-root) .soil-crack{opacity:0}.plot-embed .soil-crack:before, .plot-embed .soil-crack:after, .plot-embed .soil-crack i{content:"";position:absolute;height:3px;background:#40291d;transform-origin:0 50%}.plot-embed .soil-crack:before{left:10%;top:0;width:43%;transform:rotate(14deg)}.plot-embed .soil-crack:after{left:48%;top:4px;width:43%;transform:rotate(-17deg)}.plot-embed .soil-crack i:first-child{left:28%;top:4px;width:26%;transform:rotate(58deg)}.plot-embed .soil-crack i:last-child{left:58%;top:3px;width:22%;transform:rotate(-55deg)}.plot-embed .spent{pointer-events:none}.plot-embed .cottage-upgrade{position:absolute;left:10.5%;top:6%;width:33%;height:36%;pointer-events:none;z-index:3}.plot-embed .chimney-smoke{position:absolute;left:27%;top:-4%;width:6%;height:16%;opacity:0}.plot-embed .cottage-upgrade[data-stage="1"] .chimney-smoke, .plot-embed .cottage-upgrade[data-stage="2"] .chimney-smoke, .plot-embed .cottage-upgrade[data-stage="3"] .chimney-smoke{opacity:1}.plot-embed .chimney-smoke i{position:absolute;left:40%;bottom:0;width:34%;aspect-ratio:1;border-radius:50%;background:#e8e2d3aa;filter:blur(1px);animation:smoke-puff 4s ease-out infinite}.plot-embed .chimney-smoke i:nth-child(2){animation-delay:1.3s;left:28%}.plot-embed .chimney-smoke i:nth-child(3){animation-delay:2.6s;left:52%}.plot-embed .window-glow{position:absolute;left:13%;top:50%;width:22%;height:22%;border-radius:40%;background:radial-gradient(circle,#ffdd8f99,transparent 70%);opacity:0;transition:opacity .6s}.plot-embed .cottage-upgrade[data-stage="2"] .window-glow, .plot-embed .cottage-upgrade[data-stage="3"] .window-glow{opacity:.85}.plot-embed .wing-glow{position:absolute;left:44%;top:-4%;width:60%;height:88%;opacity:0;transition:opacity 1.6s ease;background:radial-gradient(ellipse at 45% 55%,#ffcf7a75 0,#ffcf7a30 45%,transparent 72%);mix-blend-mode:screen}.plot-embed .cottage-upgrade[data-stage="3"] .wing-glow{opacity:1}.plot-embed .wing-flag{position:absolute;left:60%;top:-14%;width:24%;height:58%;opacity:0;transform:translateY(-8%);transition:opacity .8s ease .3s,transform .8s ease .3s;z-index:4}.plot-embed .cottage-upgrade[data-stage="3"] .wing-flag{opacity:1;transform:translateY(0)}.plot-embed .wing-flag svg{width:100%;height:100%;display:block;filter:drop-shadow(0 1px 1px #0a1f1899)}.plot-embed .hud{position:absolute;z-index:12;top:2.2%;background:#2a1c10ee;border:3px solid #c9973f;padding:7px 12px;box-shadow:inset 0 0 0 2px #5a3a1c,3px 3px #0008;line-height:1;color:var(--paper)}.plot-embed .hud span{display:block;font:600 8px ui-monospace,monospace;letter-spacing:.17em;color:#c7b991;margin-bottom:4px}.plot-embed .hud strong{font:600 clamp(17px,3vw,30px) Georgia,serif;color:#ffe08a}.plot-embed .hud .negative, .plot-embed #net.negative{color:#f07c62}.plot-embed .net{left:2%}.plot-embed .season{left:18%}.plot-embed .chart{position:absolute;z-index:12;right:2%;top:2.2%;width:22%;height:auto;background:#2a1c10ee;border:3px solid #c9973f;box-shadow:inset 0 0 0 2px #5a3a1c,3px 3px #0008}.plot-embed .chart line{stroke:#a8956c;stroke-width:1}.plot-embed .chart path{fill:none;stroke:url(#netStroke);stroke-width:3;vector-effect:non-scaling-stroke}.plot-embed .end-now{position:absolute;z-index:12;right:2%;top:16.5%;min-height:34px;border:1px solid #c5b68f;background:#182019d9;color:var(--paper);font:600 10px ui-monospace,monospace;text-transform:uppercase;cursor:pointer}.plot-embed .float{position:absolute;z-index:13;transform:translate(-50%,-100%);font:700 clamp(14px,2.2vw,26px) Georgia,serif;pointer-events:none;text-shadow:0 2px 0 #2a1c10,2px 0 0 #2a1c10,-2px 0 0 #2a1c10,0 -2px 0 #2a1c10;animation:float-up 1.1s ease-out forwards}.plot-embed .float.up{color:#ffe08a}.plot-embed .float.down{color:#ff7a66}.plot-embed .toast{position:absolute;bottom:auto;right:auto;width:max-content;left:50%;top:47%;transform:translate(-50%,-50%) translateY(10px);z-index:14;margin:0;padding:8px 13px;background:#171914e8;border:1px solid #c49a45;color:#fff1c8;font:italic 600 clamp(13px,2vw,22px) Georgia,serif;opacity:0;transition:.2s;pointer-events:none}.plot-embed .toast.show{opacity:1;transform:translate(-50%,-50%)}.plot-embed .controls{display:flex;justify-content:space-between;align-items:center;margin:14px auto 0;max-width:620px}.plot-embed .dpad{display:grid;grid-template-columns:repeat(3,46px);gap:4px}.plot-embed .dpad button:nth-child(1){grid-column:2}.plot-embed .dpad button:nth-child(2){grid-column:1}.plot-embed .dpad button:nth-child(3){grid-column:2}.plot-embed .dpad button:nth-child(4){grid-column:3}.plot-embed .controls button{min-width:46px;min-height:46px;border:1px solid #c5b68f;background:#263326;color:var(--paper);font-weight:700;cursor:pointer}.plot-embed .action{padding:0 24px;background:#b88634!important;color:#171914!important}.plot-embed .instructions{text-align:center;color:#bdb49f;font:11px ui-monospace,monospace}.plot-embed .end-card{position:absolute;inset:8% 10%;z-index:20;background:#f5eee0f4;color:var(--ink);border:1px solid var(--ink);padding:clamp(25px,6vw,70px);text-align:center;box-shadow:12px 12px #17191488}.plot-embed .end-card[hidden]{display:none}.plot-embed .end-card h2{font:600 clamp(52px,10vw,100px)/1 Georgia,serif;margin:18px}.plot-embed .end-card p{font:18px/1.5 Georgia,serif}.plot-embed .end-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:30px}.plot-embed .end-actions button, .plot-embed .end-actions a{min-height:46px;padding:13px 20px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);font-weight:700;text-decoration:none}.plot-embed .end-actions a{background:transparent;color:var(--ink)}
.plot-embed .koi{position:absolute;left:0;top:0;width:9%;aspect-ratio:9/7;opacity:.76;filter:drop-shadow(0 1px 1px #0a1f1899)}
.plot-embed .koi-gold{animation:koi-wander-a 13s ease-in-out infinite}
.plot-embed .koi-a{animation:koi-wander-b 16s ease-in-out infinite;animation-delay:-4s}
.plot-embed .koi-b{animation:koi-wander-c 19s ease-in-out infinite;animation-delay:-9s}
.plot-embed .koi.lured{animation-duration:2.4s}
.plot-embed .koi:after{content:"";position:absolute;left:50%;top:100%;width:220%;height:140%;transform:translate(-50%,-30%);border-radius:50%;background:radial-gradient(ellipse at center,#d6e0ac22 0,transparent 70%);opacity:0;animation:soft-surface 9s ease-in-out infinite}
.plot-embed .koi-a:after{animation-delay:3s}
.plot-embed .koi-b:after{animation-delay:6s}
.plot-embed .pellet{position:absolute;width:1.4%;aspect-ratio:1;border-radius:50%;background:#caa456;box-shadow:0 0 0 1px #00000033;animation:pellet-fall 1.1s ease-in forwards;z-index:9;pointer-events:none}
.plot-embed .pellet:after{content:"";position:absolute;left:50%;top:100%;width:600%;height:400%;transform:translate(-50%,-40%);border-radius:50%;border:1px solid #d6e0ac66;opacity:0;animation:pellet-ripple 1s ease-out .5s forwards}
.plot-embed .sprite{width:100%;height:100%;display:block;overflow:visible}
.plot-embed .sprite-art{pointer-events:none}
.plot-embed .weed-art{pointer-events:none;filter:drop-shadow(0 1px 1px #0a1f1899);z-index:5}
.plot-embed .pickup.egg{opacity:0}
.plot-embed .sparkle{position:absolute;width:6%;aspect-ratio:1;transform:translate(-50%,-70%);pointer-events:none;z-index:15}
.plot-embed .sparkle i{position:absolute;width:18%;aspect-ratio:1;background:#ffe89a;border-radius:50%;box-shadow:0 0 4px #fff8d0;animation:sparkle-burst .6s ease-out forwards;opacity:0}
.plot-embed .sparkle i:nth-child(1){left:40%;top:10%}
.plot-embed .sparkle i:nth-child(2){left:10%;top:45%;animation-delay:.05s}
.plot-embed .sparkle i:nth-child(3){left:70%;top:40%;animation-delay:.1s}
.plot-embed .sparkle i:nth-child(4){left:45%;top:70%;animation-delay:.15s}
.plot-embed .apple-drop{position:absolute;left:81%;top:32%;width:2.2%;aspect-ratio:1;border-radius:50%;background:#c53d2c;box-shadow:inset -2px -2px #7c2015;animation:apple-fall .7s cubic-bezier(.3,.6,.6,1) forwards;z-index:8;pointer-events:none}
.plot-embed .canopy-east.shaking{animation:tree-shake .12s ease-in-out 5, canopy-sway 5.5s ease-in-out infinite alternate}
.plot-embed .player.flinch{animation:flinch .3s ease-out}
.plot-embed .entities .art.ripe{animation:ripe 3.2s ease-in-out infinite;transform-origin:50% 90%}
.plot-embed .entities .art:nth-child(3n).ripe{animation-delay:.6s}
.plot-embed .entities .art:nth-child(3n+1).ripe{animation-delay:1.4s}
.plot-embed .entities .art:nth-child(3n+2).ripe{animation-delay:2.2s}
.plot-embed .chart-fill{fill:url(#netFill);stroke:none}
.plot-embed .chart circle{fill:#ffe08a;stroke:#2a1c10;stroke-width:1}
@keyframes canopy-sway{to{transform:rotate(2deg) translateX(1%)}}@keyframes tree-shake{0%,100%{transform:rotate(0)}50%{transform:rotate(-3deg)}}@keyframes smoke-puff{0%{transform:translate(0,0) scale(.4);opacity:0}15%{opacity:.55}100%{transform:translate(30%,-260%) scale(1.6);opacity:0}}@keyframes koi-wander-a{0%{transform:translate(10%,60%) rotate(0deg)}25%{transform:translate(66%,28%) rotate(8deg)}50%{transform:translate(58%,78%) rotate(-6deg) scaleX(-1)}75%{transform:translate(18%,48%) rotate(4deg) scaleX(-1)}100%{transform:translate(10%,60%) rotate(0deg)}}@keyframes koi-wander-b{0%{transform:translate(55%,20%) rotate(-4deg) scaleX(-1)}30%{transform:translate(15%,55%) rotate(6deg) scaleX(-1)}55%{transform:translate(30%,75%) rotate(-3deg)}80%{transform:translate(60%,45%) rotate(5deg)}100%{transform:translate(55%,20%) rotate(-4deg) scaleX(-1)}}@keyframes koi-wander-c{0%{transform:translate(35%,70%) rotate(3deg)}40%{transform:translate(70%,50%) rotate(-5deg)}70%{transform:translate(20%,30%) rotate(4deg) scaleX(-1)}100%{transform:translate(35%,70%) rotate(3deg)}}@keyframes soft-surface{0%,88%{opacity:0}92%{opacity:.5}100%{opacity:0}}@keyframes pellet-fall{to{transform:translateY(140%);opacity:.9}}@keyframes pellet-ripple{0%{opacity:.6;transform:translate(-50%,-40%) scale(.3)}100%{opacity:0;transform:translate(-50%,-40%) scale(1.7)}}@keyframes sparkle-burst{0%{transform:scale(0);opacity:1}70%{opacity:1}100%{transform:scale(1) translateY(-60%);opacity:0}}@keyframes apple-fall{0%{transform:translateY(0)}70%{transform:translateY(360%)}85%{transform:translateY(320%)}100%{transform:translateY(360%);opacity:0}}@keyframes flinch{0%,100%{transform:translate(-50%,-94%)}30%{transform:translate(-50%,-94%) translateX(-4%)}60%{transform:translate(-50%,-94%) translateX(3%)}}@keyframes leaf-drift{0%{transform:translate(-5vw,-2vh) rotate(0);opacity:0}8%{opacity:.85}55%{transform:translate(58vw,5vh) rotate(420deg)}100%{transform:translate(112vw,13vh) rotate(820deg);opacity:0}}@keyframes walk-bob{50%{margin-top:-1.2%}}@keyframes pour{to{transform:translate(-50%,-94%) rotate(-6deg)}}@keyframes ripe{0%,100%{filter:brightness(1) rotate(-2deg)}50%{filter:brightness(1.14) rotate(2deg)}}@keyframes float-up{from{opacity:0;margin-top:0}15%{opacity:1}to{opacity:0;margin-top:-6%}}
@media(max-width:650px){.plot-embed .board{width:calc(100% + 16px);margin-left:-8px;border-left:0;border-right:0}.plot-embed .hud{padding:5px 8px}.plot-embed .season{left:24%}.plot-embed .end-now{display:none}.plot-embed .end-card{inset:3%}.plot-embed .instructions{font-size:9px}.plot-embed .chart{width:27%}.plot-embed .wind-leaves i{width:1.8%}}
@media(prefers-reduced-motion:reduce){.plot-embed *, .plot-embed *:before, .plot-embed *:after{animation:none!important;transition:none!important}.plot-embed .shade{display:none}.plot-embed .wind-leaves{display:none}.plot-embed .koi{opacity:.7}.plot-embed .koi:after{display:none}}
.plot-embed .kicker,
.plot-embed .hud span,
.plot-embed .end-now,
.plot-embed .instructions { font-size: 12px; }
