:root{--bg: #0b100c;--panel: #10160f;--panel-edge: #cfd8b8;--panel-edge-dim: #55614a;--cream: #e8e4d0;--dim: #8a9b7e;--pos: #a3d977;--neg: #e08a5e;--ink: #2b1d12;--ink-leaf: #26350f;--ink-board: #3a2413}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);overflow:hidden}body{font-family:VT323,Courier New,monospace;color:var(--cream);-webkit-font-smoothing:none}button{font-family:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid var(--cream);outline-offset:2px}.screen{position:relative;width:100vw;height:100dvh;display:flex;align-items:center;justify-content:center;background:radial-gradient(120% 90% at 50% 108%,#17241a 0%,var(--bg) 60%)}.stage{position:relative;aspect-ratio:1440 / 1000;width:min(100vw,144dvh);max-height:100dvh;overflow:hidden;container-type:inline-size}.world-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;image-rendering:pixelated}@media(prefers-reduced-motion:reduce){.scene-loader{animation:none}}.intro-sequence{position:fixed;inset:0;z-index:80;display:flex;align-items:flex-end;justify-content:center;color:#12120f;overflow:hidden;background:#06080f;opacity:1;padding:max(18px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(34px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));transition:opacity .72s steps(8)}.intro-sequence:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#02050d2e,#02050d80 58%,#02050dd1),url(/little-john/environment/moonlit_castle_valley_reflection.png) center / cover no-repeat;image-rendering:pixelated;transform:scale(1.04)}.intro-sequence:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 12%,rgba(244,239,207,.16),transparent 24%),repeating-linear-gradient(0deg,rgba(244,239,207,.035) 0 1px,transparent 1px 4px),linear-gradient(90deg,rgba(0,0,0,.34),transparent 22%,transparent 78%,rgba(0,0,0,.34));mix-blend-mode:screen;opacity:.72}.intro-sequence.leaving{opacity:0;pointer-events:none}.intro-box{position:relative;z-index:1;width:min(900px,calc(100vw - 28px));min-height:clamp(196px,27dvh,276px);display:grid;grid-template-columns:clamp(112px,18vw,170px) 1fr;align-items:center;gap:clamp(24px,3.6vw,46px);padding:clamp(48px,5.5vw,72px) clamp(48px,6.2vw,76px) clamp(44px,5vw,64px) clamp(52px,6.8vw,86px);text-align:left;background:url(/little-john/recent/fantasy_pixel_art_dialogue_box_frame.png) center / 100% 100% no-repeat;border:0;border-radius:0;box-shadow:0 14px #0000008c;image-rendering:pixelated}.intro-box{cursor:pointer}.final-message .intro-box{width:min(720px,calc(100vw - 28px));min-height:clamp(220px,28dvh,270px);grid-template-columns:1fr;justify-items:center;text-align:center;padding:clamp(28px,4vw,42px) clamp(26px,5vw,56px);background:#f4efcf;border:4px solid #0a0a08;border-radius:3px;box-shadow:inset 0 0 0 4px #c9bd91,inset 0 0 0 8px #f4efcf,0 0 0 4px #f4efcf,0 0 0 8px #0a0a08,0 10px #000000b8}.final-message .intro-dialogue{width:min(620px,100%);min-height:100%;display:grid;align-content:center;justify-items:center}.final-message .intro-line{width:100%;min-height:3.3em;margin-bottom:14px;padding-right:0;font-size:clamp(18px,3vw,36px);line-height:1.5;text-align:center}.final-message .intro-typed{inset:0;overflow-wrap:normal}.final-message .intro-enter{align-self:center;justify-self:center;width:min(320px,100%)}.intro-profile{display:grid;justify-items:center;gap:8px;color:#15150f;font-family:Silkscreen,monospace;font-size:clamp(10px,1.4vw,14px);font-weight:700;letter-spacing:2px;transform:translate(-36px,-3px)}.intro-profile-frame{width:clamp(86px,11vw,112px);aspect-ratio:1;display:grid;place-items:center;color:#15150f6b;font-family:Silkscreen,monospace;font-size:clamp(7px,1vw,10px);letter-spacing:1.5px;overflow:hidden;background:#08120ab8;border:0;box-shadow:0 0 0 3px #0a0a08bd,inset 0 0 0 3px #f4efcf29;image-rendering:pixelated}.intro-profile-frame img{width:94%;height:94%;object-fit:contain;image-rendering:pixelated}.intro-dialogue{min-width:0}.intro-kicker{width:max-content;max-width:100%;margin:0 0 4px;padding:4px 10px 5px;font-family:Silkscreen,monospace;font-size:clamp(8px,1.1vw,12px);font-weight:700;letter-spacing:2px;color:#f4efcf;background:#1f3215;border:2px solid #0a0a08;box-shadow:2px 2px #8b7a54d6}.intro-line{position:relative;min-height:2.8em;margin:0;padding-right:34px;font-family:Silkscreen,VT323,monospace;font-size:clamp(17px,2.9vw,34px);font-weight:700;line-height:1.55;letter-spacing:1px;color:#15150f;text-shadow:none}.intro-measure{visibility:hidden;white-space:pre-wrap}.intro-typed{position:absolute;inset:0 34px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;text-shadow:1px 0 0 rgba(21,21,15,.2),0 1px 0 rgba(21,21,15,.12)}.intro-cursor{display:inline-block;width:.58em;height:1.05em;margin-left:.08em;vertical-align:-.16em;background:#15150f;box-shadow:2px 0 #15150f33;animation:intro-cursor-blink .76s steps(2) infinite}.intro-start{min-height:58px;padding:0 clamp(18px,4vw,34px);color:#f4efcf;font-family:Silkscreen,monospace;font-size:clamp(13px,2.4vw,22px);font-weight:700;letter-spacing:2px;text-transform:uppercase;background:#1f3215;border:4px solid #0a0a08;border-radius:3px;box-shadow:inset 0 0 0 3px #4e832d,5px 5px #8b7a54;cursor:pointer;animation:intro-enter-pop .52s steps(6) both,dialogue-caret .9s steps(2) infinite}.intro-start:focus-visible{outline:3px solid #ffd75e;outline-offset:4px}.intro-dialogue .intro-enter{max-width:100%}.intro-caret{position:absolute;right:clamp(20px,3.8vw,38px);bottom:clamp(16px,2.6vw,26px);font-family:Silkscreen,monospace;font-size:clamp(12px,1.8vw,18px);color:#15150f;animation:dialogue-caret .72s steps(2) infinite}.intro-enter,.intro-skip{font-family:Silkscreen,monospace;font-weight:700}.intro-enter{align-self:flex-start;min-width:min(320px,84vw);min-height:52px;margin-top:4px;padding:0 24px;color:#f4efcf;letter-spacing:2px;text-transform:uppercase;background:#1f3215;border:4px solid #0a0a08;border-radius:3px;box-shadow:inset 0 0 0 3px #4e832d,5px 5px #8b7a54;animation:intro-enter-pop .52s steps(6) both}.intro-skip{position:absolute;top:max(16px,env(safe-area-inset-top));right:max(16px,env(safe-area-inset-right));padding:8px 12px;font-size:10px;letter-spacing:2px;color:#f4efcf;background:#111;border:3px solid #f4efcf;border-radius:3px}.intro-enter:hover,.intro-skip:hover{filter:brightness(1.08)}@keyframes intro-cursor-blink{0%,54%{opacity:1}55%,to{opacity:0}}@keyframes intro-enter-pop{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.forest-critters{position:absolute;inset:0;z-index:2;pointer-events:none}.forest-critter{position:absolute;display:block;background-position:center;background-repeat:no-repeat;background-size:contain;image-rendering:pixelated;opacity:.82;filter:drop-shadow(0 3px 0 rgba(0,0,0,.34))}.forest-critter.butterfly{left:calc(50% + clamp(190px,19cqw,260px));top:clamp(202px,25%,270px);width:clamp(20px,2.2cqw,32px);aspect-ratio:409 / 308;background-image:url(/little-john/critters/butterfly.png);opacity:.64;filter:drop-shadow(0 0 8px rgba(255,229,107,.48)) drop-shadow(0 2px 0 rgba(0,0,0,.24));animation:butterfly-drift 5.6s steps(5) infinite}@keyframes critter-breathe{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes butterfly-drift{0%,to{transform:translate(0) rotate(-5deg)}30%{transform:translate(4px,-5px) rotate(7deg)}62%{transform:translate(-3px,-2px) rotate(-9deg)}}.stage.wallet-connected .hud-top{top:clamp(94px,13%,132px)}.rebase-plate{position:relative;display:flex;flex-direction:column;align-items:center;gap:.14em;padding:clamp(12px,1.6cqw,20px) clamp(26px,3.4cqw,46px);background:repeating-linear-gradient(to bottom,#4a3018 0 5px,#432b14 5px 6px,#4a3018 6px 11px),#4a3018;border:3px solid #2a1a0c;box-shadow:inset 0 2px #d8a86059,inset 0 -2px #0000008c,0 0 0 2px #1a120a,0 6px #00000073;border-radius:8px;image-rendering:pixelated}.rebase-plate-nail{position:absolute;top:-2px;left:50%;width:6px;height:6px;transform:translate(-50%);background:#d8a860;border:1px solid #1a120a}.countdown-title{display:flex;align-items:center;gap:.9em;font-family:Silkscreen,monospace;font-size:clamp(10px,1.05cqw,13px);font-weight:700;letter-spacing:4px;color:#d8c9a0;text-shadow:0 2px 0 rgba(0,0,0,.65)}.countdown-digits{font-family:Silkscreen,monospace;font-weight:700;font-size:clamp(24px,3cqw,40px);letter-spacing:4px;color:#f2e9c8;line-height:1;text-shadow:0 3px 0 rgba(0,0,0,.7)}.stage-chip{position:relative;display:flex;align-items:center;gap:.5em;font-family:VT323,monospace;font-size:clamp(13px,1.4cqw,19px);letter-spacing:2px;color:#e8e4d0;background:#1a120ad9;border:2px solid #6b4a26;white-space:nowrap}.stage-chip .dot{width:8px;height:8px;border-radius:50%;background:#a3d977;box-shadow:0 0 6px #a3d977cc}.stage-chip .dot.neg{background:#e08a5e;box-shadow:0 0 6px #e08a5ecc}.scene-loader{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:var(--bg);font-family:Silkscreen,monospace;font-size:clamp(13px,1.4cqw,19px);font-weight:700;letter-spacing:4px;color:#6f8a5e;z-index:10;animation:loader-breathe 1.4s steps(2) infinite}@keyframes loader-breathe{0%,to{opacity:1}50%{opacity:.45}}@media(prefers-reduced-motion:reduce){.scene-loader,.forest-critter{animation:none}}.design-overlay{position:absolute;top:0;left:0;width:1440px;height:1000px;transform-origin:0 0;pointer-events:none}.hud-top{position:absolute;top:clamp(64px,10%,118px);left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:14px;z-index:4}.countdown{display:flex;flex-direction:column;align-items:center;gap:.18em}.countdown-title{display:flex;align-items:center;gap:.9em;font-family:Silkscreen,monospace;font-size:clamp(11px,1.15cqw,15px);font-weight:700;letter-spacing:4px;color:#cfd8b8;text-shadow:0 2px 0 rgba(0,0,0,.65)}.cd-status{font-size:.78em;letter-spacing:2px;color:#ffb87a;border:1px solid #ffb87a;border-radius:999px;padding:1px 6px 0;background:#140c068c;text-shadow:none}.cd-status.syncing{color:#a8c98b;border-color:#a8c98b;background:#0e160a8c}.countdown-digits.stale{color:#ffb87a}.countdown-digits{font-family:Silkscreen,monospace;font-weight:700;font-size:clamp(24px,3cqw,40px);letter-spacing:4px;color:#f2efdc;line-height:1;text-shadow:0 3px 0 rgba(0,0,0,.6),0 0 14px rgba(10,14,10,.8)}.stage-chip{font-family:VT323,monospace;font-size:clamp(13px,1.4cqw,19px);letter-spacing:2px;color:var(--cream);background:#0a100bb8;border:2px solid var(--panel-edge-dim);border-radius:999px;padding:3px 16px 4px;box-shadow:inset 0 1px #ffffff29,0 4px #00000047;white-space:nowrap}.stage-chip.pos{border-color:var(--pos);color:var(--pos)}.quest-card{position:absolute;top:clamp(168px,21cqh,190px);left:50%;width:clamp(380px,34cqw,470px);aspect-ratio:1568 / 523;display:grid;place-items:center;padding:clamp(35px,3.3cqw,46px) clamp(80px,7.4cqw,108px) clamp(30px,3.1cqw,42px);transform:translate(-50%);color:#f4efcf;background:url(/little-john/ui/marketcap_progress_banner_transparent.png) center / 100% 100% no-repeat;border:0;border-radius:0;filter:drop-shadow(0 10px 0 rgba(0,0,0,.26)) drop-shadow(0 14px 22px rgba(0,0,0,.28))}.quest-card:before,.quest-card:after{display:none}.quest-meta{display:block;width:max-content;max-width:100%;font-size:clamp(15px,1.25cqw,19px);font-weight:700;letter-spacing:.95px;color:#fff3b0;text-shadow:0 2px 0 #050503,1px 0 0 #050503,-1px 0 0 #050503,0 -1px 0 #050503}.quest-meta span:first-child{min-width:0;white-space:nowrap}.stage-chip.neg{border-color:var(--neg);color:var(--neg)}.dev-flag{font-family:Silkscreen,monospace;font-size:10px;letter-spacing:2px;color:#ffd75e;background:#140e04cc;border:2px solid #ffd75e;border-radius:3px;padding:1px 8px}.sound-toggle{position:absolute;top:clamp(10px,1.6cqw,20px);right:clamp(12px,1.8cqw,24px);z-index:6;font-family:Silkscreen,monospace;font-size:clamp(9px,.95cqw,12px);font-weight:700;letter-spacing:2px;color:var(--cream);background:#0a100ba8;border:2px solid var(--panel-edge-dim);border-radius:999px;padding:5px 12px}.sound-toggle:hover{border-color:var(--cream)}.sound-toggle[aria-pressed=true]{color:var(--dim)}.wallet-balance-card{position:absolute;top:clamp(10px,1.6cqw,20px);left:clamp(12px,1.8cqw,24px);z-index:6;min-width:clamp(154px,16cqw,222px);padding:9px 12px 10px;display:flex;flex-direction:column;gap:4px;color:var(--cream);background:linear-gradient(180deg,rgba(255,255,255,.1),transparent 38%),linear-gradient(180deg,#121c0ee0,#080e0ae0);border:2px solid #7fb35c;border-radius:12px;box-shadow:inset 0 1px #ffffff24,0 0 0 2px #0a0804e6,0 6px #00000057}.wallet-balance-card.error{border-color:var(--neg)}.wallet-balance-label,.wallet-balance-address{font-family:Silkscreen,monospace;font-size:clamp(8px,.72cqw,10px);font-weight:700;letter-spacing:1.6px;line-height:1;color:#a9c98b}.wallet-balance-value{font-family:VT323,monospace;font-size:clamp(21px,2.1cqw,29px);line-height:.95;letter-spacing:1px;color:#f4efcf;white-space:nowrap}.wallet-balance-card.error .wallet-balance-value{font-size:clamp(14px,1.2cqw,18px);color:#ffb08a}.wallet-balance-address{color:var(--dim)}.john-hotspot{position:absolute;left:50%;top:40%;width:clamp(140px,18cqw,260px);height:clamp(190px,30cqw,420px);transform:translate(-50%,-4%);z-index:3;border:0;padding:0;background:transparent;cursor:pointer;touch-action:manipulation}.john-bubble{position:absolute;left:50%;bottom:clamp(104px,14%,138px);transform:translate(-50%);z-index:6;width:min(560px,calc(100vw - 28px));min-height:82px;display:grid;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:14px;padding:12px 18px 12px 12px;color:#fff4c8;text-align:left;background:linear-gradient(180deg,rgba(255,255,255,.12),transparent 36%),repeating-linear-gradient(0deg,rgba(255,255,255,.035) 0 2px,transparent 2px 4px),linear-gradient(180deg,#2b1b11f5,#120b08f5);border:3px solid #0b0705;border-radius:14px;box-shadow:inset 0 0 0 2px #6d4a24,inset 0 3px #ffda892e,0 0 0 3px #e5be66f2,0 0 0 6px #120a06,0 10px #00000073,0 18px 28px #00000047;pointer-events:none;animation:john-log-pop 2.4s cubic-bezier(.23,1,.32,1) both}.john-bubble:before{content:"";position:absolute;left:84px;right:18px;top:10px;height:2px;background:linear-gradient(90deg,#d7b468,transparent);opacity:.78}.john-bubble:after{content:"▼";position:absolute;right:18px;bottom:9px;font-family:Silkscreen,monospace;font-size:10px;color:#d7b468;animation:dialogue-caret .72s steps(2) infinite}.john-bubble-avatar{width:64px;height:64px;overflow:hidden;border:3px solid #090604;border-radius:10px;background:radial-gradient(circle at 50% 42%,rgba(179,219,126,.25),transparent 56%),linear-gradient(180deg,#332417,#15100d);box-shadow:0 0 0 2px #d7b468,inset 0 2px #ffffdc38}.john-bubble-avatar img{width:184px;height:184px;image-rendering:pixelated;filter:brightness(1.24) contrast(1.14) saturate(1.1);transform:translate(-62px,-68px);user-select:none}.john-bubble-copy{min-width:0;display:flex;flex-direction:column;gap:6px;padding-right:18px}.john-bubble-name{width:max-content;max-width:100%;padding:2px 8px 3px;font-family:Silkscreen,monospace;font-size:clamp(9px,.88cqw,12px);font-weight:700;letter-spacing:1.8px;line-height:1;color:#1b1209;text-transform:uppercase;background:linear-gradient(180deg,#f5d889,#c8943c);border:2px solid #090604;border-radius:999px;box-shadow:0 2px #00000057}.john-bubble-text{font-family:Silkscreen,monospace;font-size:clamp(10px,1.1cqw,15px);font-weight:700;line-height:1.35;letter-spacing:1.3px;color:#fff4c8;text-transform:uppercase;text-shadow:0 2px 0 rgba(0,0,0,.8)}.john-bubble.moon{color:#f7f0ff;box-shadow:inset 0 0 0 2px #5b4d93,inset 0 3px #dcd2ff2e,0 0 0 3px #9a8ad8f2,0 0 0 6px #120a20,0 0 24px #bdadff47,0 10px #00000073}.john-bubble.urgent{color:#ffe0a2;box-shadow:inset 0 0 0 2px #8c4f21,inset 0 3px #ffda893d,0 0 0 3px #d18b3a,0 0 0 6px #160904,0 0 28px #ffb85a61,0 10px #00000073}@keyframes john-log-pop{0%{opacity:0;transform:translate(-50%,16px) scale(.98)}9%,78%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%,12px) scale(.99)}}@keyframes dialogue-caret{0%,to{opacity:1;transform:translateY(0)}50%{opacity:.35;transform:translateY(2px)}}.leaf-burst{position:absolute;left:58%;top:clamp(360px,61%,660px);z-index:4;pointer-events:none}.leaf-burst span{position:absolute;left:0;top:0;--angle: calc(var(--i) * 45deg);animation:leaf-pop .88s cubic-bezier(.23,1,.32,1) both}.leaf-burst span:before{content:"◆";font-family:Silkscreen,monospace;font-size:clamp(10px,1.4cqw,18px);color:#d9f081;text-shadow:0 0 8px rgba(217,240,129,.75)}.leaf-burst span:nth-child(3n+1):before{content:"✦";color:#ffe48a}@keyframes leaf-pop{0%{opacity:0;transform:rotate(var(--angle)) translateY(0) scale(.72)}16%{opacity:1}to{opacity:0;transform:rotate(var(--angle)) translateY(-86px) scale(1.08) rotate(90deg)}}.rebase-plate.soon{box-shadow:inset 0 2px #d8a86059,inset 0 -2px #0000008c,0 0 0 2px #1a120a,0 6px #00000073,0 0 26px #ffb85a2e}.rebase-plate.critical{animation:rebase-urgent .9s steps(2) infinite}@keyframes rebase-urgent{0%,to{box-shadow:inset 0 2px #d8a86059,inset 0 -2px #0000008c,0 0 0 2px #1a120a,0 6px #00000073,0 0 20px #ffb85a38}50%{box-shadow:inset 0 2px #ffdd9080,inset 0 -2px #0000008c,0 0 0 2px #3d210e,0 6px #00000073,0 0 34px #ffb85a80}}.actions{position:absolute;bottom:clamp(22px,4.2%,52px);left:0;right:0;display:flex;justify-content:center;gap:clamp(12px,2.4cqw,28px);padding:0 clamp(20px,4.8cqw,88px);z-index:5}.action{position:relative;width:clamp(136px,14.4cqw,218px);min-height:clamp(42px,4.6cqw,62px);border:3px solid #1c1209;border-radius:999px;padding:0 clamp(18px,2.1cqw,28px);overflow:hidden;background:linear-gradient(180deg,rgba(255,255,255,.2),transparent 42%),linear-gradient(180deg,#bce87a,#79b845 48%,#4e832d);box-shadow:inset 0 3px #ffffdc7a,inset 0 -4px #15381257,0 0 0 2px #6b4a26,0 7px #0000006b,0 14px 22px #0000002e;transition:transform .14s cubic-bezier(.23,1,.32,1),box-shadow .14s cubic-bezier(.23,1,.32,1),filter .14s ease}.action:before{content:"";position:absolute;inset:5px 10px auto;height:42%;border-radius:inherit;background:linear-gradient(180deg,#ffffff47,#fff0);pointer-events:none}.action:after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 2px #fff6bd2e;pointer-events:none}.action-secondary{background:linear-gradient(180deg,rgba(255,255,255,.16),transparent 44%),linear-gradient(180deg,#6d5a48,#3f3129 48%,#251b17);box-shadow:inset 0 3px #efdab24d,inset 0 -4px #00000042,0 0 0 2px #8b6a3a,0 7px #0000006b,0 14px 22px #0000002e}.action img{display:none}.action span{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;min-height:inherit;font-family:Silkscreen,monospace;font-weight:700;font-size:clamp(10px,1.12cqw,16px);letter-spacing:clamp(.8px,.16cqw,2px);line-height:1;white-space:nowrap;transform:translateY(1px)}@media(hover:hover)and (pointer:fine){.action:hover{transform:translateY(-4px);filter:saturate(1.08) brightness(1.04);box-shadow:inset 0 3px #ffffdc80,inset 0 -4px #15381257,0 0 0 2px #8ab85b,0 9px #0006,0 18px 26px #00000038}.action-secondary:hover{box-shadow:inset 0 3px #efdab252,inset 0 -4px #00000042,0 0 0 2px #c49a55,0 9px #0006,0 18px 26px #00000038}}.action:active{transform:translateY(3px) scale(.985);box-shadow:inset 0 2px #ffffdc61,inset 0 -2px #15381247,0 0 0 2px #6b4a26,0 3px #0000006b,0 8px 14px #0000002e}.action:disabled{cursor:progress;filter:saturate(.75) brightness(.92)}.action-primary span{color:#16290d;text-shadow:0 1px 0 rgba(245,255,215,.9),0 2px 0 rgba(245,255,215,.55)}.action-secondary span{color:#f4f6e6;text-shadow:0 2px 0 rgba(8,16,12,.95),0 0 9px rgba(255,245,210,.16)}.wallet-note{position:absolute;bottom:clamp(96px,15%,160px);left:50%;transform:translate(-50%);font-family:VT323,monospace;font-size:17px;letter-spacing:1px;color:#ffb08a;background:#180c06e0;border:2px solid var(--neg);border-radius:4px;padding:4px 14px;z-index:6}.modal-backdrop{position:absolute;inset:0;background:#060a08bd;display:flex;align-items:center;justify-content:center;z-index:20;padding:4cqw}.modal{position:relative;width:min(560px,92%);max-height:86%;overflow:auto;background:var(--panel);border:3px solid var(--panel-edge);box-shadow:0 0 0 2px #0d120e,0 0 0 4px var(--panel-edge-dim),0 10px #0006;border-radius:4px;padding:26px 30px 24px}.modal h2{margin:0 0 18px;font-family:Silkscreen,monospace;font-size:17px;letter-spacing:3px;color:var(--cream)}.modal-close{position:absolute;top:10px;right:12px;width:34px;height:34px;background:none;border:2px solid var(--panel-edge-dim);border-radius:4px;color:var(--cream);font-size:20px;line-height:1}.modal-close:hover{border-color:var(--cream)}.stats{margin:0}.stats>div{display:flex;align-items:baseline;justify-content:space-between;gap:18px;padding:9px 2px;border-bottom:1px dashed var(--panel-edge-dim)}.stats dt{font-family:Silkscreen,monospace;font-size:11px;letter-spacing:2px;color:var(--dim)}.stats dd{margin:0;font-size:21px;letter-spacing:1px;color:var(--cream);text-align:right}.how-modal{width:min(1080px,94%);padding:clamp(22px,3cqw,34px);overflow:visible;background:linear-gradient(180deg,rgba(42,72,42,.18),transparent 44%),linear-gradient(180deg,#0c2012f7,#07120cfa);border-color:#b8c891;box-shadow:0 0 0 2px #0b120c,0 0 0 5px #446133,0 12px #00000070,0 0 54px #f5de7e1f}.how-title-board{width:min(620px,82%);min-height:78px;margin:-52px auto 18px;display:flex;align-items:center;justify-content:center;gap:20px;color:#ffe88e;background:linear-gradient(180deg,rgba(255,220,128,.16),transparent 44%),linear-gradient(180deg,#5e351d,#2f1d13 62%,#191009);border:3px solid #17100b;border-radius:5px;box-shadow:inset 0 2px #ffe28e3d,inset 0 -4px #0000004d,0 0 0 2px #9c6d36,0 6px #0000005c}.how-title-board h2{margin:0;font-family:Silkscreen,monospace;font-size:clamp(24px,4.1cqw,48px);letter-spacing:clamp(3px,.7cqw,9px);color:#ffeb91;text-shadow:0 3px 0 #5b2d13,0 0 16px rgba(255,221,102,.48)}.how-title-board span{width:24px;height:15px;color:transparent;overflow:hidden;background:linear-gradient(135deg,#bfe77d,#517c37);border:2px solid #213318;border-radius:100% 0;transform:rotate(-24deg);box-shadow:2px 2px #0000004d}.how-title-board span:last-child{transform:scaleX(-1) rotate(-24deg)}.how-subtitle{margin:0 0 22px;color:#f2efdc;font-size:clamp(18px,1.9cqw,25px);letter-spacing:1px;text-align:center}.how-card-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(10px,1.3cqw,16px)}.how-card{min-height:clamp(230px,24cqw,304px);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:14px;padding:clamp(18px,2cqw,24px) clamp(12px,1.4cqw,18px);color:#f8f0c8;text-align:center;background:radial-gradient(circle at 50% 14%,rgba(255,237,135,.08),transparent 36%),linear-gradient(180deg,#143419f0,#08180ff5);border:2px solid #b7be78;border-radius:4px;box-shadow:inset 0 0 0 2px #09140acc,inset 0 2px #fff7be1f,0 4px #00000042}.how-card h3{min-height:2.8em;margin:0;display:grid;place-items:center;font-family:Silkscreen,monospace;font-size:clamp(10px,1.1cqw,15px);line-height:1.35;letter-spacing:2px;color:#fff3b0;text-shadow:0 2px 0 rgba(0,0,0,.7)}.how-card p{margin:0;color:#f3edd1;font-size:clamp(16px,1.55cqw,21px);line-height:1.25;letter-spacing:1px}.how-icon{position:relative;width:clamp(70px,7.2cqw,96px);height:clamp(70px,7.2cqw,96px);display:block;background-position:center;background-repeat:no-repeat;background-size:contain;border-radius:10px;image-rendering:pixelated;filter:drop-shadow(0 7px 0 rgba(0,0,0,.28)) drop-shadow(0 0 14px rgba(255,230,142,.22))}.how-icon:before,.how-icon:after{display:none}.how-icon.coin{background-image:url(/little-john/recent/glowing_hooded_spirit_gold_coin.png)}.how-icon.sprout{background-image:url(/little-john/recent/pixel_sprout_growth_icon.png)}.how-icon.moon{background-image:url(/little-john/recent/pixel_moonlit_clouds_and_sparkles.png)}.how-icon.chart{background-image:url(/little-john/recent/pixel_art_growth_chart_with_vines.png)}.how-icon.scroll{background-image:url(/little-john/recent/enchanted_forest_quest_scroll.png)}.how-footer{width:min(760px,92%);margin:22px auto 0;padding:11px 14px 10px;color:#f7e7a1;font-family:Silkscreen,monospace;font-size:clamp(9px,.92cqw,13px);letter-spacing:clamp(1px,.24cqw,2.6px);text-align:center;background:linear-gradient(180deg,#5e351d,#24160e);border:3px solid #16100b;border-radius:4px;box-shadow:inset 0 2px #ffe28e2e,0 0 0 2px #8b5a2a}@media(max-width:920px){.how-modal{width:min(760px,94%);overflow:auto}.how-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.how-card:last-child{grid-column:1 / -1;min-height:180px}}@media(max-width:560px){.how-modal{padding-top:54px}.how-title-board{width:min(330px,84%);min-height:54px;margin-top:-34px}.how-title-board h2{font-size:22px;letter-spacing:3px}.how-title-board span{display:none}.how-card-grid{grid-template-columns:1fr}.how-card,.how-card:last-child{min-height:0;display:grid;grid-template-columns:56px 1fr;grid-template-areas:"icon title" "icon copy";align-items:center;justify-items:start;text-align:left;gap:2px 12px;padding:12px}.how-icon{grid-area:icon;width:50px;height:50px}.how-card h3{grid-area:title;min-height:0;place-items:start;font-size:10px}.how-card p{grid-area:copy;font-size:14px}.how-footer{width:100%;letter-spacing:1.4px;padding:8px 10px 7px;font-size:9px}}.dev-panel{position:fixed;top:10px;left:10px;z-index:50;width:218px;max-height:calc(100dvh - 20px);overflow:auto;background:#0a0e09eb;border:2px solid var(--panel-edge-dim);border-radius:4px;padding:10px 12px;font-family:VT323,monospace;color:var(--cream)}.dev-title{font-family:Silkscreen,monospace;font-size:11px;letter-spacing:2px;color:#ffd75e;margin-bottom:8px}.dev-section{font-size:15px;letter-spacing:2px;color:var(--dim);margin:10px 0 4px}.dev-presets{display:flex;flex-wrap:wrap;gap:4px}.dev-presets button,.dev-row button{background:#18231a;border:1px solid var(--panel-edge-dim);border-radius:3px;color:var(--cream);font-family:VT323,monospace;font-size:15px;padding:2px 8px}.dev-presets button:hover,.dev-row button:hover{border-color:var(--pos);color:var(--pos)}.dev-row{margin-top:10px}@media(prefers-reduced-motion:reduce){.action{transition:none}.action:hover,.action:active{transform:none}.john-bubble,.john-bubble:after,.leaf-burst span,.rebase-plate.critical{animation:none}.john-bubble{opacity:1;transform:translate(-50%)}.intro-sequence{transition:none}.intro-cursor,.intro-enter{animation:none}.intro-cursor{opacity:1}.quest-meter span{transition:none}}@media(max-width:720px){.stage{width:144dvh;max-width:none;height:100dvh;max-height:none;flex:0 0 auto}.hud-top{top:max(18px,calc(env(safe-area-inset-top) + 14px));gap:8px}.rebase-plate{padding:10px 22px 12px}.countdown-title{font-size:10px;letter-spacing:3px}.countdown-digits{font-size:27px;letter-spacing:3px}.stage-chip{max-width:calc(100vw - 28px);overflow:hidden;text-overflow:ellipsis;font-size:14px;letter-spacing:1.5px}.wallet-balance-card{top:max(10px,calc(env(safe-area-inset-top) + 8px));left:calc(50% - 50vw + 12px);min-width:126px;max-width:150px;padding:7px 9px 8px;border-radius:10px}.wallet-balance-label,.wallet-balance-address{font-size:7px;letter-spacing:1px}.quest-card{top:max(106px,calc(env(safe-area-inset-top) + 94px));left:50%;width:min(356px,calc(100vw - 16px));padding:32px 72px 28px;transform:translate(-50%)}.quest-meta{font-size:12px;letter-spacing:.65px}.intro-box{grid-template-columns:70px 1fr;gap:12px;min-height:182px;padding:20px 16px}.final-message .intro-box{grid-template-columns:1fr;justify-items:center}.final-message .intro-box{min-height:220px}.final-message .intro-line{min-height:3.8em;margin-bottom:12px;font-size:clamp(16px,4.6vw,18px);line-height:1.55}.intro-profile{gap:6px;font-size:9px;letter-spacing:1.5px;transform:none}.intro-profile-frame{width:64px;border-width:0;box-shadow:0 0 0 3px #0a0a08bd,inset 0 0 0 3px #f4efcf29}.intro-line{min-height:3.9em;padding-right:18px;font-size:clamp(14px,4vw,17px);line-height:1.45;letter-spacing:.5px}.intro-kicker{padding:3px 7px 4px;font-size:7px;letter-spacing:1.4px}.intro-caret{right:16px;bottom:14px}.intro-enter{width:100%;min-width:0;min-height:50px;padding-inline:12px;font-size:11px}.wallet-balance-value{font-size:18px;overflow:hidden;text-overflow:ellipsis}.sound-toggle{top:max(10px,calc(env(safe-area-inset-top) + 8px));right:calc(50% - 50vw + 16px);padding:4px 8px;font-size:9px;letter-spacing:1.5px}.actions{left:50%;bottom:max(34px,calc(env(safe-area-inset-bottom) + 30px));width:min(390px,calc(100vw - 24px));transform:translate(-50%);justify-content:center;gap:8px;padding:0}.action-primary,.action-secondary{width:calc((min(390px,calc(100vw - 24px)) - 16px) / 3);min-height:42px}.action span,.action-secondary span{font-size:11px;letter-spacing:.8px}.wallet-note{bottom:max(76px,calc(env(safe-area-inset-bottom) + 72px));width:min(330px,calc(100vw - 28px));text-align:center}.modal-backdrop{left:50%;width:100vw;transform:translate(-50%);padding:18px 14px}.modal{width:min(560px,calc(100vw - 28px));max-height:calc(100dvh - 36px);padding:22px 18px 20px}.stats>div{gap:12px}.stats dt{font-size:10px;letter-spacing:1.5px}.stats dd{font-size:18px}}
