@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/font-0.ttf) format("truetype")}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/font-1.ttf) format("truetype")}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/font-2.ttf) format("truetype")}@font-face{font-family:DM Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/font-3.ttf) format("truetype")}@font-face{font-family:Fraunces;font-style:italic;font-weight:500;font-display:swap;src:url(/fonts/font-4.ttf) format("truetype")}@font-face{font-family:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/font-5.ttf) format("truetype")}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/font-6.ttf) format("truetype")}:root{font-family:DM Sans,sans-serif;color:#354936;background:#e8edd6;font-synthesis:none;font-weight:400;--ink:#354936;--muted:#768263;--paper:#fbf7e9;--green:#405d3d}*{box-sizing:border-box}body{margin:0;width:100%;height:100vh;height:100dvh;overflow:hidden;overscroll-behavior:none}button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible{outline:3px solid #b88a4e;outline-offset:5px}button:active{transform:translateY(2px)}button svg{width:23px;height:23px;flex-shrink:0}button{touch-action:manipulation}svg{vertical-align:middle}#game{position:absolute;inset:0;touch-action:none;user-select:none;-webkit-user-select:none}#game canvas{display:block}#ui{position:absolute;inset:0;pointer-events:none}#ui button,#ui .card{pointer-events:auto}.grain{position:absolute;inset:0;pointer-events:none;opacity:.1;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.35' filter='url(%23n)'/%3E%3C/svg%3E")}body[data-screen=menu] #ui:before,body[data-screen=help] #ui:before,body[data-screen=settings] #ui:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#edf0dcfa 0%,#edf0dce8 27%,#edf0dc6b 49%,transparent 72%);z-index:-1}.site-header{position:absolute;top:max(28px,env(safe-area-inset-top));left:4%;right:4%;display:flex;align-items:center;justify-content:space-between}.wordmark{display:flex;align-items:center;gap:12px;font-size:10px;font-weight:700;letter-spacing:2.1px}.wordmark svg{width:25px;height:29px;color:#7d9160}.header-actions,.hud-actions{display:flex;gap:10px;align-items:center}.icon-button{height:45px;width:45px;border:1px solid #7f956541;background:#fbf7e96e;border-radius:50%;display:grid;place-items:center;transition:background .15s}.icon-button:hover{background:#fffbed}.intro{position:absolute;left:8%;top:23%;width:44%;max-width:590px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2.4px;display:flex;align-items:center;gap:9px}.eyebrow>span{height:6px;width:6px;border-radius:50%;background:#92a570}.intro h1{font-family:Fraunces,Georgia,serif;font-weight:500;font-size:clamp(62px,6.8vw,104px);letter-spacing:-4.7px;line-height:1.02;margin:23px 0;color:#354b35}.intro h1 span{white-space:nowrap}.intro h1 em{font-weight:500;color:#75845b}.intro-copy{font-size:17px;line-height:1.8;color:#69775a;margin:20px 0 28px}.menu-play{width:290px}.primary{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid #344b33;background:#405d3d;color:#fff9e8;border-radius:13px;min-height:58px;padding:16px 23px;font-weight:600;font-size:14px;box-shadow:0 4px #30432e;transition:background .15s,width .15s}.primary:hover{background:#4c6a46}.play-button{width:100%}.text-button{border:0;background:none;padding:12px 5px;font-size:13px;display:flex;align-items:center;justify-content:center;gap:9px}.text-button:hover{color:#789052}.stroll-button{margin:13px auto 0;color:#6b795c;font-size:12px}.stroll-button svg{width:14px;height:14px}.play-note{display:flex;gap:12px;justify-content:center;font-size:8px;letter-spacing:1.6px;font-weight:600;color:#8b9477;margin:16px 0 0}.play-note i{font-size:9px;font-style:normal;color:#aeb68e}.touch-copy{display:none}.hero-caption{position:absolute;right:8%;top:65%;font-family:Fraunces,Georgia,serif;font-size:18px;font-style:italic;line-height:1.45;color:#6e8058;transform:rotate(-6deg)}.caption-arrow{position:absolute;left:-39px;top:-31px;font-family:Georgia;font-size:55px;font-weight:400;transform:rotate(-25deg);color:#82956c}.meadow-label{position:absolute;right:11%;top:20%;font-size:9px;font-weight:600;letter-spacing:2px;text-align:center;line-height:2}.meadow-label>span:last-child{display:block;font-family:Georgia,serif;font-size:12px;font-weight:400;font-style:italic;letter-spacing:.3px;color:#82906b}.tiny-star{display:block;font-size:23px;line-height:1.7;color:#8fa173}.menu-footer{position:absolute;bottom:max(26px,env(safe-area-inset-bottom));left:4%;right:4%;display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#7b886b}.how-button{font-size:11px}.question{display:grid;place-items:center;border:1px solid #8e9b7b;border-radius:50%;width:18px;height:18px;font-size:11px}.personal-best{display:flex;align-items:center;gap:10px;font-size:9px;letter-spacing:1.4px}.personal-best svg{width:18px;height:20px;color:#a99567}.personal-best b{font-family:Fraunces,Georgia,serif;font-size:23px;font-weight:500;color:#4d6245;margin-left:3px}.made-note{font-family:Georgia,serif;font-size:12px;font-style:italic}.hud{position:absolute;left:max(24px,env(safe-area-inset-left));right:max(24px,env(safe-area-inset-right));top:max(23px,env(safe-area-inset-top));display:flex;justify-content:space-between;align-items:center}.score-pill{display:flex;align-items:center;gap:13px;background:#fcf8e9ed;padding:10px 20px 10px 14px;border:1px solid #c4ceab;box-shadow:0 3px 12px #65784b0a;border-radius:50px}.score-pill svg{height:32px;width:30px;color:#c08b8e}.score-pill strong{font-family:Fraunces,Georgia,serif;font-size:32px;font-weight:500;line-height:1}.score-pill>span{font-size:11px;line-height:1.6;color:#647756}.score-pill small{font-size:10px;color:#93a17d}.hud .icon-button{background:#fcf8e9ed}.run-label{position:absolute;top:32px;left:50%;transform:translate(-50%);font-size:9px;letter-spacing:2px;text-align:center;color:#72845a;font-weight:600}.run-label span{display:block;font-family:Georgia,serif;font-size:16px;letter-spacing:1px;margin-top:7px;color:#4f6746}.start-hint{position:absolute;left:50%;top:64%;transform:translate(-50%);text-align:center;white-space:nowrap;color:#43583a;transition:opacity .6s;display:flex;align-items:center;flex-direction:column;gap:9px}.start-hint .hint-dot{display:grid;place-items:center;width:35px;height:35px;border:1px solid #8eaa6e;border-radius:50%;margin-bottom:3px;font-size:22px}.start-hint b{font-size:14px;font-weight:500}.start-hint span:last-child{font-family:Georgia,serif;font-size:13px;font-style:italic;color:#7a8965}.start-hint.faded{opacity:0}.game-bottom{position:absolute;bottom:max(25px,env(safe-area-inset-bottom));left:0;right:0;text-align:center;font-size:10px;letter-spacing:.3px;color:#6e8156}.toast{position:absolute;top:23%;left:50%;transform:translate(-50%,8px);opacity:0;transition:opacity .2s,transform .2s;background:#fbf7e9ed;border:1px solid #c6d0aa;padding:11px 20px;border-radius:40px;font-family:Fraunces,Georgia,serif;font-size:15px;white-space:nowrap;box-shadow:0 4px 15px #60733e0b}.toast.visible{opacity:1;transform:translate(-50%)}.hide-status{position:absolute;left:50%;bottom:23%;transform:translate(-50%);border:1px solid #a3b37d;background:#f4f5dfe8;padding:10px 16px;border-radius:12px;font-size:11px;color:#5b754c;white-space:nowrap}.hide-status svg{width:14px;height:14px;margin-right:7px}.sniff-track{height:3px;background:#d8dfbe;margin-top:7px;border-radius:3px;overflow:hidden}.sniff-track i{display:block;height:100%;width:0;background:#bc886d}.threat{position:absolute;transform:translate(-50%,-50%);text-align:center;color:#72824e;background:#fbf8e9d9;border:1px solid #b0be90;border-radius:30px;padding:6px 12px}.threat span{display:block;font-size:22px;line-height:1.1}.threat b{font-size:8px;letter-spacing:1.3px}.threat.urgent{color:#9d6047;border-color:#cca382;background:#fff1dd}.joystick{position:absolute;width:104px;height:104px;border-radius:50%;background:#fbf8e92e;border:1.5px solid #fff9e98a;transform:translate(-50%,-50%);box-shadow:inset 0 0 0 1px #5e79482b}.joystick div{position:absolute;left:34px;top:34px;width:34px;height:34px;border:1px solid #fff8e8c9;background:#fbf7e988;border-radius:50%;box-shadow:0 2px 6px #4d68452b}.modal-shade{position:absolute;inset:0;background:#35493638;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:24px;pointer-events:auto;z-index:10}.card{width:440px;max-width:100%;max-height:calc(100dvh - 48px);overflow:auto;border-radius:25px;background:var(--paper);border:1px solid #fffdf2;box-shadow:0 18px 80px #35493626;padding:38px;text-align:center}.card .eyebrow{justify-content:center;font-size:8px;color:#89916e}.card h2{font-family:Fraunces,Georgia,serif;font-weight:500;line-height:1.1;letter-spacing:-1.4px;font-size:38px;margin:20px 0 14px}.card>p{font-size:12px;line-height:1.8;color:#7b856c}.card .primary{width:100%;font-size:13px;margin-top:20px}.card .text-button{margin:15px auto 0;font-size:11px;color:#778366}.card-flower{margin:30px auto;color:#bf9290}.card-flower svg{width:50px;height:60px}.secondary{width:100%;padding:15px;border:1px solid #cdd2b9;background:transparent;border-radius:12px;margin-top:15px;font-size:12px}.result-score{margin:26px 0 20px;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;column-gap:12px}.result-score svg{width:38px;height:44px;color:#c18d91}.result-score strong{font-family:Fraunces,Georgia,serif;font-size:76px;line-height:1;font-weight:500;letter-spacing:-4px}.result-score span{width:100%;font-size:11px;color:#86916f;margin-top:10px}.result-details{display:flex;justify-content:center;gap:35px;border-top:1px solid #e4e4d0;border-bottom:1px solid #e4e4d0;padding:17px 0;margin:20px 0 24px}.result-details span{font-size:8px;letter-spacing:1px;color:#8a9474}.result-details b{display:block;font-family:Fraunces,Georgia,serif;font-size:22px;font-weight:500;margin-top:9px;color:#546b47}.instructions{margin:25px 0;text-align:left}.instructions>div{display:flex;gap:15px;margin-top:17px}.instructions>div>span{font-family:Fraunces,Georgia,serif;font-size:20px;color:#a7b18a}.instructions p{font-size:12px;line-height:1.65;color:#80886f;margin:0}.instructions b{display:block;color:#4e6347;font-size:13px;margin-bottom:3px;font-weight:500}.settings-list{margin:25px 0}.setting{display:flex;width:100%;align-items:center;justify-content:space-between;gap:20px;text-align:left;border:0;border-bottom:1px solid #e0e3cc;background:transparent;padding:21px 0;font-size:13px}.setting small{display:block;font-size:10px;color:#8d957a;margin-top:6px}.setting b{font-size:10px;border-radius:20px;background:#e5ead4;padding:8px 12px;font-weight:600}.card .settings-note{font-size:10px;color:#98a083}.loading{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;background:#edf0dc}.loading svg{width:40px;height:48px;color:#99ad78}.loading p{font-family:Fraunces,Georgia,serif;color:#758762;font-size:20px}.loading .primary{margin-top:20px}[hidden]{display:none!important}@media(pointer:coarse){.touch-copy{display:inline!important}.keyboard-copy{display:none!important}.start-hint .touch-copy{display:block!important}}@media(min-width:1450px){.intro{left:12%;top:23%}.intro h1{font-size:108px}.hero-caption{right:12%}}@media(max-width:900px)and (min-width:700px){.intro{left:6%;top:25%}.intro h1{font-size:70px}.hero-caption{right:5%;font-size:15px}.made-note{display:none}.meadow-label{right:8%}.intro-copy{font-size:15px}}@media(max-width:699px){body[data-screen=menu] #ui:before,body[data-screen=help] #ui:before,body[data-screen=settings] #ui:before{background:linear-gradient(180deg,#edf0dcf5,#edf0dcba 19%,#edf0dc00 43% 54%,#edf0dcc4 75%,#edf0dcf5)}.site-header{top:max(17px,env(safe-area-inset-top));left:22px;right:20px}.wordmark{font-size:7px;letter-spacing:1.5px;gap:7px}.wordmark svg{width:18px;height:23px}.icon-button{width:39px;height:39px}.icon-button svg{width:20px;height:20px}.header-actions{gap:7px}.header-actions [data-action=settings]{display:none}.intro{left:0;top:12%;width:100%;max-width:none;text-align:center}.intro>.eyebrow{justify-content:center;font-size:8px;letter-spacing:2px}.intro h1{font-size:60px;letter-spacing:-2.8px;line-height:1.02;margin:13px 0 0}.intro h1 br{display:none}.intro h1 span{display:block}.intro-copy{display:none}.menu-play{position:fixed;width:calc(100% - 72px);max-width:340px;left:50%;top:auto;bottom:14%;transform:translate(-50%)}.primary{min-height:55px;padding:15px 20px;font-size:13px}.stroll-button{margin-top:10px;font-size:11px}.play-note{font-size:7px;letter-spacing:1.2px;margin-top:9px}.hero-caption{right:10%;top:55%;font-size:13px;line-height:1.4}.caption-arrow{font-size:36px;left:-29px;top:-15px}.meadow-label{display:none}.menu-footer{left:23px;right:23px;bottom:max(19px,env(safe-area-inset-bottom));font-size:8px}.made-note{display:none}.how-button{font-size:10px}.personal-best{font-size:7px;gap:7px;letter-spacing:1px}.personal-best b{font-size:21px}.personal-best svg{width:15px;height:17px}.hud{left:16px;right:16px;top:max(16px,env(safe-area-inset-top))}.score-pill{padding:8px 15px 8px 11px;gap:9px}.score-pill svg{width:24px;height:26px}.score-pill strong{font-size:28px}.score-pill>span{font-size:10px}.score-pill small{font-size:9px}.run-label{top:89px;font-size:7px;letter-spacing:1.5px}.run-label span{font-size:13px;margin-top:5px}.hud-actions{gap:8px}.game-bottom{font-size:9px}.start-hint{top:62%}.start-hint b{font-size:13px}.start-hint span:last-child{font-size:12px}.toast{font-size:13px;padding:10px 15px;max-width:92%;white-space:normal;text-align:center}.hide-status{bottom:25%}.card{padding:30px 25px;border-radius:22px}.card h2{font-size:33px}.modal-shade{padding:20px}.result-score strong{font-size:68px}.card .primary{font-size:12px}.card>p{font-size:11px}}@media(max-width:699px)and (max-height:700px){.intro{top:12%}.intro h1{font-size:48px}.intro>.eyebrow{font-size:7px}.menu-play{bottom:12%;max-width:290px}.play-note{display:none}.hero-caption{top:55%;font-size:11px}.stroll-button{margin-top:5px}.menu-footer{bottom:12px}.card{padding:22px}.card h2{font-size:29px;margin-top:15px}.result-score{margin:18px 0}.result-score strong{font-size:50px}}@media(orientation:landscape)and (max-height:560px){.site-header{top:14px}.intro{top:22%;left:7%;width:45%}.intro>.eyebrow{font-size:7px}.intro h1{font-size:54px;letter-spacing:-2px;margin:12px 0}.intro-copy{font-size:12px;line-height:1.6;margin:12px 0}.menu-play{width:245px}.primary{min-height:44px;padding:10px 17px;font-size:12px}.stroll-button{margin-top:5px;padding:9px}.play-note{display:none}.meadow-label{top:21%;font-size:8px}.hero-caption{top:65%;font-size:13px}.menu-footer{bottom:12px}.card{padding:20px 30px}.card h2{font-size:28px;margin:12px 0}.card-flower{margin:10px}.result-score{margin:12px 0}.result-score strong{font-size:48px}.result-details{padding:10px;margin:12px 0}.card .primary{margin-top:10px}.card .text-button{margin-top:8px}.run-label{top:22px}.game-bottom{bottom:13px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}#ui{isolation:isolate}.caption-arrow{width:45px;height:60px;transform:rotate(-15deg)}@media(max-width:699px){.caption-arrow{width:30px;height:42px}}
