@font-face{font-family:"Press Start 2P";font-style:normal;font-weight:400;font-display:swap;src:url(../media/cdf703449fd42bc8-s.3gh0it7uhdum8.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Press Start 2P";font-style:normal;font-weight:400;font-display:swap;src:url(../media/3f10656f33c57dec-s.1x_wmg1bpi7y6.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Press Start 2P";font-style:normal;font-weight:400;font-display:swap;src:url(../media/56eb15be423b6220-s.321_9ike18iql.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Press Start 2P";font-style:normal;font-weight:400;font-display:swap;src:url(../media/96074e70a40501da-s.1dfv6z-5f19bh.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Press Start 2P";font-style:normal;font-weight:400;font-display:swap;src:url(../media/de161955856a921d-s.p.0fxeqrss3ag9h.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Press Start 2P Fallback";src:local(Arial);ascent-override:44.58%;descent-override:0.0%;line-gap-override:0.0%;size-adjust:224.32%}.press_start_2p_2990983b-module__2XIoDq__className{font-family:"Press Start 2P","Press Start 2P Fallback";font-style:normal;font-weight:400}.press_start_2p_2990983b-module__2XIoDq__variable{--font-pixel:"Press Start 2P", "Press Start 2P Fallback"}
@font-face{font-family:Silkscreen;font-style:normal;font-weight:400;font-display:swap;src:url(../media/26e9340776e0c8e8-s.3-pcjiz3ygyf8.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Silkscreen;font-style:normal;font-weight:400;font-display:swap;src:url(../media/37f34e4fcce0f2d4-s.p.3dosikwwiz7p4.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Silkscreen;font-style:normal;font-weight:700;font-display:swap;src:url(../media/9a82a02b3825653d-s.2w2uf6dgc3uj-.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Silkscreen;font-style:normal;font-weight:700;font-display:swap;src:url(../media/8ec783ae88469012-s.p.0twlw20dvfl-2.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Silkscreen Fallback;src:local(Arial);ascent-override:68.84%;descent-override:16.71%;line-gap-override:0.0%;size-adjust:149.62%}.silkscreen_ccf244b3-module__BNB5Tq__className{font-family:Silkscreen,Silkscreen Fallback;font-style:normal}.silkscreen_ccf244b3-module__BNB5Tq__variable{--font-readable:"Silkscreen", "Silkscreen Fallback"}
:root{--ink:#0a0b18;--panel:#17172a;--panel-2:#22233d;--line:#77759a;--gold:#f1cf72;--cream:#fff2c3;--mint:#72d6b4;--violet:#8d82d8}*{box-sizing:border-box}html,body{background:#080914;min-height:100%;margin:0;overflow-x:hidden}body{color:var(--cream);font-family:var(--font-readable), monospace}button,a{font:inherit}button{color:inherit}::selection{background:var(--gold);color:var(--ink)}.world{--game-ground-ratio:.815;isolation:isolate;width:100%;height:100dvh;min-height:100svh;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);padding-bottom:env(safe-area-inset-bottom);background:#111631;position:relative;overflow:hidden}.landscape{z-index:-5;image-rendering:pixelated;background-image:url(/assets/eldoria-valley.png);background-position:50%;background-size:cover;animation:12s ease-in-out infinite alternate world-breathe;position:absolute;inset:0;transform:scale(1.01)}.landscape:after{content:"";background:linear-gradient(90deg,#0708164d,#0000 38% 64%,#06071433),linear-gradient(#0000 64%,#0607107a);position:absolute;inset:0}.sky{z-index:-3;pointer-events:none;position:absolute;inset:0 0 34%}.moon{aspect-ratio:1;cursor:pointer;pointer-events:auto;opacity:0;background:0 0;border:0;width:10%;position:absolute;top:8%;left:27%}.moon:focus-visible{opacity:.25;outline:3px dashed var(--gold)}.moon i{display:none}.firefly{background:#ffd56a;width:3px;height:3px;animation:6s linear infinite drift-up;position:absolute;top:65%;box-shadow:0 0 9px 2px #e6b94d}.bird{color:#11182e;font:22px/1 monospace;animation:18s linear infinite bird-flight;position:absolute;top:31%;left:-8%}.bird-two{animation-duration:23s;animation-delay:-7s;top:42%;transform:scale(.65)}.world-grade{z-index:6;pointer-events:none;transition:background 4s linear,-webkit-backdrop-filter 4s linear,backdrop-filter 4s linear;position:absolute;inset:0}.phase-dawn .world-grade{-webkit-backdrop-filter:brightness(.94)saturate(.98);backdrop-filter:brightness(.94)saturate(.98);background:#ec7e6714}.phase-day .world-grade{-webkit-backdrop-filter:brightness(1.12)saturate(.9);backdrop-filter:brightness(1.12)saturate(.9);background:#f6cd850f}.phase-dusk .world-grade{-webkit-backdrop-filter:brightness();backdrop-filter:brightness();background:#6546890a}.phase-night .world-grade{-webkit-backdrop-filter:brightness(.7)saturate(.8)hue-rotate(8deg);backdrop-filter:brightness(.7)saturate(.8)hue-rotate(8deg);background:#0a0e3133}.mist{z-index:-2;filter:blur(2px);background:repeating-linear-gradient(0deg,#0000 0 14px,#6a7ba614 15px 17px);height:20%;animation:22s linear infinite mist-move;position:absolute;bottom:17%;left:-20%;right:-20%}.vignette{pointer-events:none;z-index:8;position:absolute;inset:0;box-shadow:inset 0 0 100px #03030fb8,inset 0 0 20px #02020acc}.pixel-frame{box-shadow:inset 0 0 0 2px var(--line), inset 0 0 0 4px #292944, 5px 6px 0 #03030b8c;background:#131323f0;border:3px solid #0b0c18}.topbar{z-index:20;pointer-events:none;justify-content:space-between;align-items:center;display:flex;position:absolute;top:20px;left:24px;right:24px}.brand{text-shadow:2px 2px #090917;align-items:center;gap:12px;display:flex}.brand p{color:#fff7d0;font-family:var(--font-pixel);text-transform:uppercase;letter-spacing:1px;margin:0 0 6px;font-size:11px}.brand span:not(.crest){color:#b9bdd4;text-transform:uppercase;letter-spacing:1.4px;font-size:10px}.crest{width:42px;height:42px;color:var(--gold);font-family:var(--font-pixel);background:#29213e;border:3px solid #0b0c18;place-items:center;font-size:9px;display:grid;transform:rotate(45deg);box-shadow:inset 0 0 0 2px #756188,3px 3px #0b0c18}.crest:first-letter{transform:rotate(-45deg)}.sound-button{pointer-events:auto;color:#d6d1e3;font-family:var(--font-pixel);cursor:pointer;border-width:2px;padding:11px 12px;font-size:7px}.sound-button:hover{color:var(--gold);transform:translateY(-1px)}.world-status{z-index:20;cursor:pointer;text-transform:uppercase;grid-template-rows:1fr 1fr;grid-template-columns:22px auto;align-items:center;column-gap:7px;padding:7px 11px;display:grid;position:absolute;top:22px;left:50%;transform:translate(-50%)}.world-status:hover{border-color:var(--gold)}.world-status>span{color:var(--gold);grid-row:1/3;font-size:18px}.world-status b{font:6px var(--font-pixel);color:#eae0bd;letter-spacing:1px}.world-status small{color:#8588a3;letter-spacing:1px;font-size:7px}.player-hud{z-index:15;gap:10px;width:min(310px,100vw - 48px);height:77px;padding:8px 10px 13px;display:flex;position:absolute;top:88px;left:24px}.portrait{background:#272640;border:2px solid #827a9d;flex:0 0 52px;height:52px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 3px #111221}.portrait>span{color:#161528;background:var(--gold);font:7px var(--font-pixel);padding:3px;position:absolute;bottom:0;right:0}.mini-hero{width:100%;height:100%;image-rendering:pixelated;background-image:url(/assets/hero-sprites-v3.png);background-position:0 0;background-repeat:no-repeat;background-size:400% 300%;position:absolute;inset:0}.mini-hero i,.mini-hero b{display:none}.hud-bars{flex:1;min-width:0}.hud-bars>strong{font:8px var(--font-pixel);letter-spacing:1px;color:#fff1b0;justify-content:space-between;align-items:center;margin:1px 0 6px;display:flex}.hud-bars>strong small{color:#777b99;font:5px var(--font-pixel);text-transform:uppercase}.meter{background:#080913;border:2px solid #38364d;height:15px;margin-bottom:4px;position:relative;overflow:hidden}.meter span{height:100%;transition:width .4s steps(8,end);display:block}.meter b{color:#fff;font:7px var(--font-pixel);text-shadow:1px 1px #111;position:absolute;inset:2px auto auto 5px}.meter.hp span{background:repeating-linear-gradient(90deg,#c64355 0 10px,#d9535f 10px 12px)}.meter.mp span{background:repeating-linear-gradient(90deg,#4557ba 0 10px,#536ccf 10px 12px)}.xp{background:#080913;height:5px;position:absolute;bottom:3px;left:3px;right:3px}.xp span{background:var(--gold);height:100%;transition:width .4s steps(8,end);display:block}.coin-counter{z-index:15;color:#f5e1a1;font:8px var(--font-pixel);padding:9px 12px;position:absolute;top:176px;left:25px}.coin-counter span{color:#f4c454;text-shadow:1px 1px #88521f;margin-right:8px}.coin-counter b{color:#72d6b4;font:6px var(--font-pixel);margin-left:9px}.coin-counter em{color:#9fa4c8;font:5px var(--font-pixel);margin-left:10px;font-style:normal}.skill-bar{z-index:15;gap:5px;padding:6px;display:flex;position:absolute;top:219px;left:25px}.skill-slot{isolation:isolate;background:#22233a;border:2px solid #4c4c68;place-items:center;width:59px;height:54px;display:grid;position:relative;overflow:hidden}.skill-slot>span{color:var(--gold);z-index:2;font-size:18px}.skill-slot>b{color:#c8c7d2;font:5px var(--font-pixel);z-index:2}.skill-slot>i{color:#f4d77f;font:5px var(--font-pixel);z-index:3;font-style:normal;position:absolute;top:2px;right:2px}.skill-slot>em{z-index:1;pointer-events:none;background:#06070fb8;position:absolute;bottom:0;left:0;right:0}.skill-slot.locked{filter:grayscale();opacity:.55}.activity-panel{z-index:16;width:242px;padding:5px;position:absolute;bottom:57px;left:25px}.activity-toggle{color:#ddd8e4;cursor:pointer;width:100%;font:6px var(--font-pixel);background:#24243b;border:1px solid #555670;align-items:center;gap:8px;padding:8px;display:flex}.activity-toggle span{color:var(--mint)}.activity-toggle b{color:var(--gold);margin-left:auto}.activity-body{grid-template-columns:1fr 1fr;gap:4px;padding:6px 3px 2px;display:none}.activity-panel.open .activity-body{display:grid}.activity-body>div{background:#202137;border-left:2px solid #595a76;padding:6px}.activity-body span{color:#8587a1;font-size:7px;display:block}.activity-body b{color:#eee4c3;margin-top:3px;font-size:9px;display:block}.activity-body p{color:#78c8aa;background:#17182a;grid-column:1/-1;margin:3px 0 0;padding:6px;font-size:8px}.hero-copy{z-index:10;text-shadow:3px 4px #111127,0 0 18px #0b0b1ecc;pointer-events:none;max-width:520px;position:absolute;top:29%;left:clamp(25px,5vw,76px)}.kicker{color:var(--gold);font:8px var(--font-pixel);letter-spacing:2px;align-items:center;gap:9px;display:inline-flex}.kicker:before{content:"";background:var(--gold);width:26px;height:2px;box-shadow:0 -4px #7c6536}.hero-copy h1{color:#fff3ce;font:clamp(25px, 3.4vw, 53px)/1.42 var(--font-pixel);letter-spacing:-1px;margin:17px 0 14px}.hero-copy h1 em{color:#82d6c2;font-style:normal}.hero-copy p{color:#c5c5d4;letter-spacing:1px;font-size:clamp(11px,1.1vw,15px)}.game-canvas{z-index:5;position:absolute;inset:0}.game-canvas canvas{width:100%;height:100%;image-rendering:pixelated;display:block}.inventory{z-index:15;width:292px;padding:8px 9px 12px;position:absolute;top:14%;right:28px}.inventory-head{border-bottom:2px solid #34334c;justify-content:space-between;align-items:center;padding:9px 7px 12px;display:flex}.inventory-head span{font:9px var(--font-pixel);color:#f3e4b1;letter-spacing:1px}.inventory-head small{color:#777a99;margin-left:auto;font-size:8px}.inventory-toggle{width:28px;height:24px;color:var(--gold);cursor:pointer;font:12px var(--font-pixel);background:#171827;border:1px solid #62637c;place-items:center;margin-left:8px;display:none}.inventory-grid{grid-template-columns:repeat(2,1fr);gap:6px;margin-top:8px;display:grid}.inventory-grid button{cursor:pointer;text-align:center;background:#23243d;border:2px solid #41415e;min-height:78px;padding:9px 4px 7px;position:relative;box-shadow:inset -3px -3px #171729,inset 3px 3px #31324e}.inventory-grid button:hover,.inventory-grid button:focus-visible,.inventory-grid button.selected{border-color:var(--gold);background:#302d48;outline:0;transform:translateY(-2px);box-shadow:inset -3px -3px #171729,inset 3px 3px #46425c,0 3px #0c0c17}.inventory-grid button>span{color:var(--gold);font:27px/1 var(--font-readable);text-shadow:2px 2px #4d3550;margin-bottom:7px;display:block}.inventory-grid button b{color:#ddd8e4;font:7px var(--font-pixel);text-transform:uppercase;display:block}.inventory-grid button i{color:#172820;font:5px var(--font-pixel);background:#78d69b;padding:2px 3px;font-style:normal;position:absolute;top:3px;right:3px}.hint{color:#797b98;text-align:center;margin:11px 0 0;font-size:9px}.hint kbd{color:#c6c3d2;font:inherit;background:#11111e;border:1px solid #55556d;padding:3px 5px}.world-tip{z-index:15;color:#999cb4;background:#090a17b3;border-left:2px solid #9b83d1;padding:8px 11px;font-size:10px;position:absolute;bottom:22px;left:28px}.world-tip span{color:var(--gold);margin-right:6px}.modal-backdrop{z-index:29;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);cursor:default;background:#04040dab;border:0;width:100%;position:fixed;inset:0}.modal-shell{z-index:30;box-sizing:border-box;width:100vw;height:100dvh;padding:max(12px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));pointer-events:none;place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}.modal{width:min(620px,100%);max-height:min(680px, calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom)));overscroll-behavior:contain;pointer-events:auto;background:#1a1a2d;position:relative;overflow:auto}.modal-head{z-index:2;background:#24233a;border-bottom:3px solid #0d0d19;align-items:center;gap:10px;padding:15px 17px;display:flex;position:sticky;top:0;box-shadow:inset 0 -2px #514b69}.modal-head h2{color:#f3e4b1;font:10px var(--font-pixel);letter-spacing:1px;text-transform:uppercase;margin:0}.header-gem{color:var(--gold)}.close-button{color:#bbb7ca;cursor:pointer;background:#171725;border:2px solid #67627a;width:29px;height:29px;margin-left:auto;font-size:20px;line-height:18px}.close-button:hover{color:#e67c79;border-color:#e67c79}.modal-body{padding:clamp(20px,4vw,38px)}.eyebrow{color:var(--gold);font:7px var(--font-pixel);letter-spacing:1.4px;margin-bottom:12px;display:block}.story-copy h3,.resume-sheet h3{color:#fff1c9;font:clamp(18px, 4vw, 30px)/1.5 var(--font-pixel);margin:0 0 19px}.story-copy p{color:#c6c6d3;max-width:510px;font-size:16px;line-height:1.75}.rune-row{flex-wrap:wrap;gap:8px;margin-top:25px;display:flex}.rune-row span{color:#bfcbd0;background:#24253e;border:1px solid #545674;padding:9px 11px;font-size:11px}.parchment{background:#d6bd80;border-color:#2c1b16;box-shadow:inset 0 0 0 2px #9a7548,inset 0 0 0 5px #5b3825,7px 8px #0202098c}.parchment .modal-head{background:#573825;border-color:#301c17;box-shadow:inset 0 -2px #9d7547}.parchment .modal-head h2{color:#ffe5a4}.parchment .modal-body{color:#3b271d;background:repeating-linear-gradient(0deg,#6343230a 0 2px,#0000 2px 7px),#d9c184}.resume-sheet{text-align:center;position:relative}.resume-sheet .eyebrow{color:#70502f}.resume-sheet h3{color:#342017;margin-bottom:4px}.resume-sheet .subtitle{color:#765939}.resume-sheet hr{background:#755435;border:0;height:3px;margin:25px 0;box-shadow:0 5px #69492d40}.resume-grid{text-align:left;grid-template-columns:1fr 1fr;gap:25px;display:grid}.resume-grid h4{font:8px var(--font-pixel);text-transform:uppercase}.resume-grid p{color:#5d442e;line-height:1.5}.wax-seal{color:#e5b886;width:52px;height:52px;font:9px var(--font-pixel);background:#843d3b;border:4px solid #6f302f;border-radius:50%;place-items:center;display:grid;position:absolute;top:-7px;right:0;box-shadow:3px 4px #a58553}.quest-button{font:7px var(--font-pixel);text-transform:uppercase;border:2px solid;align-items:center;gap:14px;margin-top:22px;padding:12px 15px;text-decoration:none;display:inline-flex}.quest-button.dark{color:#e7cf92;background:#3c2a22;border-color:#6f4c31;box-shadow:3px 3px #a68654}.project-list{gap:8px;display:grid}.project-item{color:#c8c5d1;text-align:left;cursor:pointer;background:#24243b;border:2px solid #494962;grid-template-columns:58px 1fr;align-items:start;gap:15px;width:100%;padding:14px;display:grid}.project-item:hover,.project-item.open{background:#29273e;border-color:#b99a58}.chest{color:#d69b4b;text-shadow:4px 4px #5b3527;text-align:center;font-size:39px}.project-item small{color:#83849d;text-transform:uppercase;margin-bottom:6px;font-size:9px;display:block}.project-item strong{color:#fff0c2;font:9px var(--font-pixel);line-height:1.5;display:block}.project-reveal{display:block;overflow:hidden}.project-reveal em{margin:10px 0 8px;font-style:normal;line-height:1.45;display:block}.project-reveal b{color:var(--mint);font-size:10px;display:block}.skills-list{gap:15px;display:grid}.skill-row{grid-template-columns:47px 1fr;align-items:center;gap:14px;display:grid}.stat-badge{width:47px;height:43px;font:8px var(--font-pixel);background:#24253e;border:2px solid;place-items:center;display:grid;box-shadow:inset 0 0 0 3px #11121f}.skill-name{color:#d6d3dc;justify-content:space-between;margin-bottom:6px;font-size:12px;display:flex}.skill-name b{color:var(--gold);font:8px var(--font-pixel)}.stat-pips{background:#0d0e19;border:2px solid #46465d;height:13px;padding:2px}.stat-pips i{background:repeating-linear-gradient(90deg,#6cb5a5 0 14px,#0000 14px 17px);height:100%;display:block}.quest-log{gap:7px;display:grid}.quest-intro{color:#85869f;text-transform:uppercase;margin:0 0 10px;font-size:10px}.quest-log>div{background:#25253c;border-left:3px solid #69c194;align-items:center;gap:12px;padding:12px;display:flex}.quest-log>div>span{color:#13211a;background:#6fcc9c;place-items:center;width:24px;height:24px;font-weight:700;display:grid}.quest-log p{color:#d5d3dc;margin:0}.quest-log small{color:#c8a95f;margin-top:4px;font-size:9px;display:block}.dialogue{grid-template-columns:92px 1fr;gap:22px;display:grid}.dialogue p{color:#ddd9df;margin:3px 0 20px;font-size:16px;line-height:1.6}.npc-face{background:#c99678;border:4px solid #10111d;width:92px;height:92px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 3px #79634f}.npc-face i{background:#5f4151;height:31px;position:absolute;inset:0 0 auto;box-shadow:-10px 17px #5f4151,64px 19px #5f4151}.npc-face b{background:#202037;width:7px;height:7px;position:absolute;top:43px;left:24px;box-shadow:35px 0 #202037}.npc-face span{background:#7f4f4c;width:21px;height:4px;position:absolute;top:68px;left:36px}.dialogue-actions{flex-wrap:wrap;gap:8px;display:flex}.dialogue-actions button,.dialogue-actions a{color:#e3ddc9;font:7px var(--font-pixel);cursor:pointer;background:#30304a;border:2px solid #65647d;padding:10px 12px;text-decoration:none}.dialogue-actions a{color:#1a241f;background:#75c69c;border-color:#a2e2bb}.rainfall{z-index:7;pointer-events:none;background:#1e2a4726;position:absolute;inset:0;overflow:hidden}.rainfall i{background:linear-gradient(#0000,#91b8c6);width:1px;height:34px;animation:.72s linear infinite rain;position:absolute;top:-10%}.snowfall{z-index:7;pointer-events:none;background:#abc5d60f;position:absolute;inset:0;overflow:hidden}.snowfall i{background:#e7f1e9;width:4px;height:4px;animation:6s linear infinite snow-fall;position:absolute;top:-5%;box-shadow:0 0 0 1px #b2cdda8c}.season-particles{z-index:7;pointer-events:none;position:absolute;inset:0;overflow:hidden}.season-particles i{width:5px;height:5px;animation:7s linear infinite season-fall;position:absolute;top:-6%}.season-spring .season-particles i{background:#e9a9be;box-shadow:4px 2px #f1d1cf}.season-summer .season-particles i{display:none}.season-autumn .season-particles i{background:#c46b3c;width:7px;height:4px;box-shadow:3px 3px #8f4631}.season-winter .season-particles i{background:#dae9e7;transform:rotate(45deg)}.season-autumn .landscape{filter:sepia(.15)saturate(.92)hue-rotate(335deg)}.season-winter .landscape{filter:saturate(.68)brightness(.92)hue-rotate(12deg)}.season-spring .landscape{filter:saturate(1.06)hue-rotate(350deg)}.boss-alert{z-index:28;color:#ffc46b;font:8px var(--font-pixel);white-space:nowrap;background:#421f31;padding:13px 19px;position:absolute;top:18px;left:50%;transform:translate(-50%)}.boss-mode .landscape{filter:saturate(.7)hue-rotate(315deg)}.skip-link{z-index:99;color:#111;background:#fff2b0;padding:12px;position:fixed;top:-60px;left:10px}.skip-link:focus{top:10px}@keyframes world-breathe{0%{transform:scale(1.01)translate(-2px)}to{transform:scale(1.025)translate(2px)}}@keyframes mist-move{0%{transform:translate(-5%)}to{transform:translate(5%)}}@keyframes drift-up{0%{opacity:0;transform:translateY(30px)}25%{opacity:1}65%{transform:translate(16px,-15px)}to{opacity:0;transform:translate(-4px,-50px)}}@keyframes rain{to{transform:translate(-80px,125vh)}}@keyframes bird-flight{0%{opacity:0;transform:translate(0)scale(.8)}12%{opacity:.8}55%{transform:translate(58vw)translateY(-30px)scale(.8)}to{opacity:0;transform:translate(115vw)translateY(12px)scale(.8)}}@keyframes snow-fall{0%{transform:translateY(-10vh)rotate(0)}50%{transform:translate(24px,52vh)rotate(180deg)}to{transform:translate(-16px,110vh)rotate(360deg)}}@keyframes season-fall{0%{opacity:0;transform:translateY(-8vh)rotate(0)}10%{opacity:.8}55%{transform:translate(38px,54vh)rotate(190deg)}to{opacity:.15;transform:translate(-18px,112vh)rotate(380deg)}}@media (max-width:900px){.inventory{width:260px;top:auto;bottom:18px;right:18px}.inventory-grid button{min-height:62px}.inventory-grid button>span{margin-bottom:5px;font-size:20px}.inventory-head{padding:5px 6px 9px}.hero-copy{top:29%}.hero-copy h1{font-size:clamp(22px,5vw,38px)}.world-tip{display:none}.world-status{top:69px;left:auto;right:18px;transform:none}}@media (max-width:680px){.world{--game-ground-ratio:.71;height:100dvh;min-height:100svh}.landscape{background-position:56% -72px;background-repeat:no-repeat;background-size:auto 100%}.topbar{top:13px;left:14px;right:14px}.brand p{font-size:8px}.brand span:not(.crest){font-size:7px}.crest{width:34px;height:34px;font-size:7px}.sound-button{padding:9px 8px}.world-status{padding:6px 8px;top:190px;right:14px}.world-status small{display:none}.player-hud{width:272px;top:68px;left:14px}.coin-counter{top:154px;left:15px}.skill-bar{padding:4px;top:195px;left:14px}.skill-slot{width:48px;height:43px}.skill-slot>span{font-size:14px}.skill-slot>b{font-size:4px}.activity-panel{left:auto;right:max(14px, env(safe-area-inset-right));bottom:calc(198px + env(safe-area-inset-bottom));width:205px}.activity-panel:not(.open){width:145px}.activity-toggle{padding:7px;font-size:5px}.hero-copy{text-align:center;top:29%;left:18px;right:18px}.hero-copy .kicker{font-size:7px}.hero-copy h1{font-size:22px}.hero-copy p{font-size:10px}.inventory{left:max(12px, env(safe-area-inset-left));right:max(12px, env(safe-area-inset-right));bottom:max(12px, env(safe-area-inset-bottom));flex-direction:column;width:auto;max-height:min(42dvh,340px);padding:6px;transition:max-height .18s steps(3,end);display:flex;overflow:hidden}.inventory-head{padding:6px 7px 9px}.inventory-toggle{display:grid}.inventory-grid{overscroll-behavior:contain;scrollbar-color:#666681 #171827;grid-template-columns:repeat(3,1fr);gap:4px;min-height:0;overflow-y:auto}.inventory:not(.mobile-open){max-height:48px}.inventory:not(.mobile-open) .inventory-grid,.inventory:not(.mobile-open) .hint{display:none}.inventory-grid button{min-height:61px;padding:6px 2px}.inventory-grid button>span{font-size:17px}.inventory-grid button b{font-size:5px}.inventory-grid button i,.hint{display:none}.game-canvas{bottom:0}.vignette{box-shadow:inset 0 0 55px #03030fa6}.resume-grid{grid-template-columns:1fr;gap:6px}.dialogue{grid-template-columns:1fr}.npc-face{width:76px;height:76px}.npc-face b{top:38px;left:19px;box-shadow:28px 0 #202037}.npc-face span{top:58px;left:29px}.modal-body{padding:20px}.season-particles i:nth-child(n+13),.rainfall i:nth-child(n+19),.snowfall i:nth-child(n+17),.firefly:nth-of-type(n+10){display:none}}@media (max-width:380px){.world{--game-ground-ratio:.69}.brand span:not(.crest){display:none}.player-hud{width:255px}.world-status{top:187px}.hero-copy{top:28%}.hero-copy p{display:none}.activity-panel{bottom:calc(190px + env(safe-area-inset-bottom))}.inventory-grid button{min-height:55px}}@media (max-width:680px) and (max-height:650px) and (orientation:portrait){.inventory{max-height:34dvh}.inventory-grid button{min-height:49px}.activity-panel{bottom:calc(36dvh + env(safe-area-inset-bottom))}}@media (max-width:900px) and (orientation:landscape){.world{--game-ground-ratio:.875;height:100dvh;min-height:100svh}.landscape{background-position:50% 58%;background-size:cover}.topbar{top:max(8px, env(safe-area-inset-top));left:max(10px, env(safe-area-inset-left));right:max(10px, env(safe-area-inset-right))}.brand span:not(.crest),.hero-copy,.world-status,.inventory-head,.hint,.activity-panel{display:none}.player-hud{top:58px;left:max(10px, env(safe-area-inset-left));width:250px;height:68px}.portrait{flex-basis:44px;height:44px}.coin-counter{top:132px;left:max(10px, env(safe-area-inset-left))}.skill-bar{top:171px;left:max(10px, env(safe-area-inset-left))}.inventory{top:58px;left:auto;right:max(10px, env(safe-area-inset-right));width:218px;bottom:auto}.inventory-grid{grid-template-columns:repeat(3,1fr)}.inventory:not(.mobile-open) .inventory-grid{display:grid}.inventory-grid button{min-height:48px}.inventory-grid button>span{margin-bottom:3px;font-size:15px}.inventory-grid button b{font-size:4px}.season-particles i:nth-child(n+9),.rainfall i:nth-child(n+13),.snowfall i:nth-child(n+11){display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.landscape{transform:none}.season-particles i:nth-child(n+7),.rainfall i:nth-child(n+9),.snowfall i:nth-child(n+9),.firefly:nth-of-type(n+7){display:none}}
