:root{--font-mc: "Press Start 2P", monospace;--font-ui: "Press Start 2P", monospace}html,body,#root{margin:0;padding:0;width:100%;height:100%}#root{position:fixed;top:0;right:0;bottom:0;left:0}canvas{display:block}.emerald-icon{width:16px;height:16px;image-rendering:pixelated;vertical-align:middle;margin-right:3px}@keyframes wordWiggle{0%{transform:translate(-3px)}to{transform:translate(3px)}}@keyframes chestGlow{0%,to{box-shadow:0 0 12px 3px #ffd70073,0 0 40px 10px #ff8c002e,inset 0 0 20px #ffd7000f}50%{box-shadow:0 0 28px 8px #ffd700bf,0 0 70px 20px #ff8c004d,inset 0 0 32px #ffd7001f}}.chest-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:400;display:flex;align-items:center;justify-content:center;background:#000000a6;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.chest-card{background:#12100e;border:2px solid #ffd700;border-radius:10px;padding:28px 36px 24px;min-width:200px;text-align:center;color:#fff;font-family:var(--font-mc);animation:chestGlow 1.8s ease-in-out infinite}.chest-paused-label{margin:0 0 14px;font-size:8px;letter-spacing:.18em;color:#ffffff73}.chest-icon{width:64px;height:64px;image-rendering:pixelated;display:block;margin:0 auto 12px;filter:drop-shadow(0 0 6px rgba(255,215,0,.6))}.chest-title{margin:0 0 14px;font-size:18px;color:gold;text-shadow:2px 2px 0 #7a6400,0 0 18px rgba(255,215,0,.5);letter-spacing:1px}.chest-loot{margin-bottom:18px;display:flex;flex-direction:column;gap:5px}.chest-loot-row{font-size:11px;color:#ffffffd9}.chest-loot-emeralds{display:flex;align-items:center;gap:4px;font-size:15px;color:#50e880;text-shadow:1px 1px 0 #1a4a20,0 0 10px rgba(80,232,128,.4);margin-bottom:4px}.chest-emerald-icon{width:18px;height:18px;image-rendering:pixelated;flex-shrink:0}.chest-continue{width:100%;margin-top:4px}.run-progress{position:fixed;top:0;left:0;right:0;z-index:100;pointer-events:none;-webkit-user-select:none;user-select:none}.run-progress-track{width:100%;height:6px;background:#ffffff2e;border-radius:3px;overflow:hidden}.run-progress-fill{height:100%;background:#4caf50;border-radius:3px;transition:width .3s ease-out}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;background:#0009;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.arrival-panel{position:fixed;bottom:0;left:0;right:0;z-index:200;display:flex;justify-content:center;padding:16px 16px 20px;background:linear-gradient(to top,rgba(0,0,0,.88) 70%,transparent);pointer-events:none}.arrival-panel .arrival-card{pointer-events:auto;padding:20px 32px 24px}.arrival-card,.home-card,.challenge-card{background:#1a1c1e;border:2px solid #3a3c3e;border-radius:12px;padding:32px 40px;min-width:300px;max-width:520px;text-align:center;color:#f0ede8;font-family:var(--font-ui)}.home-card{padding:28px 32px 24px;min-width:360px}.challenge-card h2{margin:0 0 6px;font-size:13px;font-family:var(--font-mc);color:gold;text-shadow:2px 2px 0 #7a6400,0 0 16px rgba(255,215,0,.4);letter-spacing:2px;text-transform:uppercase}.challenge-challenger-name{margin:0 0 6px;font-size:22px;font-family:var(--font-mc);color:#f0ede8;letter-spacing:.5px;line-height:1.4}.challenge-tier-label{margin:0 0 20px;font-size:9px;color:#f0a030;letter-spacing:1px}.challenge-comeback{margin:0 0 14px}.challenge-comeback-headline{margin:0 0 6px;font-size:16px;font-family:var(--font-mc);color:#f0ede8;line-height:1.4}.challenge-comeback-headline strong{color:#5ad65a}.challenge-comeback-prev{margin:0;font-size:11px;color:#b8b0a4;letter-spacing:.5px}.challenge-stats{display:flex;justify-content:center;gap:0;margin:0 0 20px;background:#ffffff0a;border:1px solid #2e3032;border-radius:8px;overflow:hidden}.challenge-stat{display:flex;flex-direction:column;align-items:center;gap:5px;padding:14px 24px;flex:1}.challenge-stat+.challenge-stat{border-left:1px solid #2e3032}.challenge-stat-value{font-family:var(--font-mc);font-size:26px;color:#7ec850;text-shadow:2px 2px 0 #3a6020;line-height:1}.challenge-stat-label{font-size:10px;color:#a0a8a0;letter-spacing:.5px;text-transform:uppercase;line-height:1.5}.challenge-stat-gem{font-size:18px;vertical-align:middle;margin-left:3px}.challenge-prompt{margin:0 0 18px;font-size:9px;color:#808880;letter-spacing:.5px}.challenge-play-btn{font-family:var(--font-mc);font-size:11px;padding:13px 32px;background:#3a6a20;color:#c8f080;border:2px solid #7ec850;border-radius:6px;cursor:pointer;letter-spacing:1px;transition:background .1s,border-color .1s;width:100%}.challenge-play-btn:hover{background:#4a8a28;border-color:#9ee870}.challenge-card-actions{display:flex;flex-direction:column;align-items:stretch;gap:10px}.challenge-home-btn{font-family:var(--font-mc);font-size:9px;padding:9px 20px;background:transparent;color:#808880;border:1px solid #2e3032;border-radius:6px;cursor:pointer;letter-spacing:1px;transition:color .1s,border-color .1s}.challenge-home-btn:hover{color:#c0c8b8;border-color:#5a5c5e}@keyframes countdown-pop{0%{transform:scale(2.2);opacity:0}18%{transform:scale(.92);opacity:1}30%{transform:scale(1);opacity:1}75%{transform:scale(1);opacity:1}to{transform:scale(.7);opacity:0}}@keyframes countdown-go{0%{transform:scale(.4);opacity:0}25%{transform:scale(1.12);opacity:1}50%{transform:scale(1);opacity:1}to{transform:scale(1);opacity:1}}.countdown-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#0000008c;z-index:800;pointer-events:none}@keyframes tutorial-pop-in{0%{transform:scale(.85);opacity:0}to{transform:scale(1);opacity:1}}.tutorial-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;pointer-events:none}.tutorial-bubble{position:absolute;width:280px;background:#1a1c1e;border:2px solid #f0a030;border-radius:10px;padding:14px 16px 12px;pointer-events:auto;box-shadow:0 4px 24px #0009,0 0 0 1px #f0a03026}.tutorial-bubble--animated{animation:tutorial-pop-in .22s ease-out both}.tutorial-bubble[role=button]{cursor:pointer}.tutorial-copy{margin:0 0 10px;font-family:var(--font-mc);font-size:9px;line-height:1.7;color:#f0ede8;letter-spacing:.02em}.tutorial-tap-hint{font-family:var(--font-mc);font-size:8px;color:#f0a030b3;text-align:right;letter-spacing:.04em}.tutorial-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px}.tutorial-skip-btn{font-family:var(--font-mc);font-size:8px;padding:5px 10px;background:transparent;color:#f0ede873;border:1px solid rgba(240,237,232,.2);border-radius:4px;cursor:pointer;letter-spacing:.04em;transition:color .12s,border-color .12s}.tutorial-skip-btn:hover{color:#f0ede8bf;border-color:#f0ede866}.tutorial-arrow{position:absolute;width:0;height:0}.tutorial-arrow--top{top:-12px;left:50%;transform:translate(-50%);border-left:10px solid transparent;border-right:10px solid transparent;border-bottom:12px solid #f0a030}.tutorial-arrow--bottom{bottom:-12px;left:50%;transform:translate(-50%);border-left:10px solid transparent;border-right:10px solid transparent;border-top:12px solid #f0a030}.tutorial-arrow--left{left:-12px;top:50%;transform:translateY(-50%);border-top:10px solid transparent;border-bottom:10px solid transparent;border-right:12px solid #f0a030}.tutorial-arrow--right{right:-12px;top:50%;transform:translateY(-50%);border-top:10px solid transparent;border-bottom:10px solid transparent;border-left:12px solid #f0a030}.countdown-number{font-family:var(--font-mc);font-size:clamp(96px,20vw,200px);color:#f0a030;text-shadow:4px 4px 0 #7a4800,0 0 40px rgba(240,160,48,.6),0 0 80px rgba(240,160,48,.25);line-height:1;animation:countdown-pop .55s ease-in-out forwards}.countdown-number--go{color:#50e880;text-shadow:4px 4px 0 #206030,0 0 40px rgba(80,232,128,.7),0 0 80px rgba(80,232,128,.3);animation:countdown-go .5s ease-out forwards}.arrival-title,.home-title{margin:0 0 16px;font-size:20px;font-family:var(--font-mc);color:gold;text-shadow:2px 2px 0 #7a6400,0 0 16px rgba(255,215,0,.5);letter-spacing:1px}.game-logo{display:block;font-family:var(--font-mc);font-size:28px;color:#7ec850;text-shadow:3px 3px 0 #3a6020,0 0 20px rgba(126,200,80,.4);letter-spacing:2px;margin:0 0 20px;line-height:1.3}.game-logo span{color:#a0d870}.home-player-name-row{display:flex;align-items:center;justify-content:center;gap:6px;margin:-8px 0 16px}.home-player-name{font-family:var(--font-mc);font-size:10px;color:#a0d8a0;letter-spacing:.5px}.home-player-input{font-family:var(--font-mc);font-size:10px;color:#e0ede0;background:#1a2a1a;border:1px solid #4a7a40;border-radius:4px;padding:3px 6px;outline:none;width:120px}.home-player-input:focus{border-color:#7ec850}.home-player-btn{background:none;border:none;cursor:pointer;font-size:14px;color:#7ec850;padding:0 2px;line-height:1;opacity:.7}.home-player-btn:hover{opacity:1}.home-player-btn--edit{font-size:13px}.home-subtitle{margin:0 0 28px;font-size:9px;color:#8a8680;font-family:var(--font-mc)}.home-inventory-title{margin:16px 0 10px;font-size:10px;color:#b0ada8;font-family:var(--font-mc)}.arrival-slots{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin:0 0 24px}.arrival-slot-wrapper{display:flex;flex-direction:column;align-items:center;gap:4px}.mc-slot{position:relative;width:40px;height:40px;background:#8b8b8b;box-shadow:inset -2px -2px #ffffffa6,inset 2px 2px #00000080;flex-shrink:0}.mc-slot-icon{width:40px;height:40px;image-rendering:pixelated;display:block}.mc-slot-count{position:absolute;bottom:1px;right:2px;font-size:13px;font-weight:700;line-height:1;color:#fff;text-shadow:1px 1px 0 #000;background:#00000073;padding:0 2px;border-radius:2px}.arrival-slot-label{font-size:11px;color:#b0ada8;text-align:center}.arrival-empty{color:#8a8680;font-size:14px;margin:0 0 24px}.arrival-share-btn{display:inline-flex;align-items:center;gap:7px;margin:4px 0 18px;padding:9px 18px;background:#ffd70014;color:gold;border:1px solid rgba(255,215,0,.35);border-radius:6px;font-family:var(--font-mc);font-size:9px;letter-spacing:1px;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.arrival-share-btn:before{content:"🔗";font-size:13px;line-height:1}.arrival-share-btn:hover{background:#ffd70029;border-color:#ffd700a6;color:#ffe84d}.arrival-share-btn:focus-visible{outline:2px solid #ffd700;outline-offset:2px}.challenge-results{display:flex;flex-direction:column;align-items:center;gap:10px;margin:0 0 20px;width:100%}.challenge-vs-row{display:flex;align-items:center;gap:0;width:100%;border:2px solid #3a3c3e;border-radius:8px;overflow:hidden}.challenge-score{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px 12px;background:#ffffff08}.challenge-score--you{background:#50e8800f}.challenge-score--winner .challenge-score-wpm{color:gold;text-shadow:1px 1px 0 #7a6400,0 0 12px rgba(255,215,0,.35)}.challenge-score--loser{opacity:.55}.challenge-score-label{font-family:var(--font-mc);font-size:11px;color:#7ec8f0;text-transform:uppercase;letter-spacing:1px}.challenge-score--you .challenge-score-label{color:#50e880}.challenge-score-wpm{font-family:var(--font-mc);font-size:32px;color:#f0ede8;line-height:1}.challenge-score-sub{font-family:var(--font-mc);font-size:10px;color:#a0ada8;letter-spacing:.5px}.challenge-score-divider{font-family:var(--font-mc);font-size:10px;color:#5a5856;padding:0 10px;flex-shrink:0}.challenge-winner{font-family:var(--font-mc);font-size:22px;color:gold;text-shadow:2px 2px 0 #7a6400,0 0 20px rgba(255,215,0,.45);letter-spacing:2px}.arrival-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.btn{padding:12px 28px;border:none;border-radius:4px;font-family:var(--font-mc);font-size:11px;cursor:pointer;transition:opacity .1s;letter-spacing:.5px}.btn:focus-visible{outline:3px solid #ffd700;outline-offset:2px}.btn:hover{opacity:.85}.btn-primary{background:#4a9e4a;color:#fff}.btn-secondary{background:#3a4a5a;color:#c0d0e0}.btn-secondary.btn-selected{background:#2a5a2a;color:#a8e0a8;box-shadow:inset 0 0 0 2px #4a9e4a}.home-modes{display:flex;gap:10px;margin:8px 0 14px;justify-content:center;flex-wrap:wrap}.home-mode-card{display:flex;flex-direction:column;align-items:center;gap:7px;padding:16px 14px;border-radius:8px;border:2px solid;flex:1 1 155px;max-width:195px;text-align:center;cursor:pointer;opacity:.45;transition:opacity .15s,box-shadow .15s,transform .1s}.home-mode-card:hover:not(.home-mode-card--selected){opacity:.7}.home-mode-card--selected{opacity:1;transform:translateY(-2px)}.home-mode-card--journey{background:#182818;border-color:#3a6030}.home-mode-card--journey.home-mode-card--selected{background:#1e3a1a;border-color:#7ec850;box-shadow:0 0 0 1px #7ec850,0 4px 16px #7ec85059}.home-mode-card--timed{background:#281a08;border-color:#7a4a10}.home-mode-card--timed.home-mode-card--selected{background:#3a2008;border-color:#f0a030;box-shadow:0 0 0 1px #f0a030,0 4px 16px #f0a03059}.home-mode-card--learn{background:#081828;border-color:#10487a}.home-mode-card--learn.home-mode-card--selected{background:#0e2840;border-color:#50b8e0;box-shadow:0 0 0 1px #50b8e0,0 4px 16px #50b8e059}.home-mode-card__icon{font-size:30px;line-height:1}.home-mode-card__title{font-family:var(--font-mc);font-size:12px;letter-spacing:.5px;line-height:1.5}.home-mode-card--journey .home-mode-card__title{color:#7ec850}.home-mode-card--timed .home-mode-card__title{color:#f0a030}.home-mode-card--learn .home-mode-card__title{color:#50b8e0}.home-mode-card__desc{font-family:var(--font-mc);font-size:9px;color:#a0a8b0;line-height:2}.home-start-btn{display:flex;align-items:center;justify-content:center;width:100%;padding:13px 0;font-size:12px;letter-spacing:1px;margin-bottom:14px;border-radius:4px;transition:background .12s,opacity .1s;line-height:1}.home-start-btn--journey{background:#4a9e30;color:#e8ffe0}.home-start-btn--journey:hover{background:#5ab040}.home-start-btn--timed{background:#c06010;color:#fff4e0}.home-start-btn--timed:hover{background:#d07020}.home-start-btn--learn{background:#1870b0;color:#e0f4ff}.home-start-btn--learn:hover{background:#2080c0}.home-tier-picker{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;width:100%;margin-top:4px;margin-bottom:12px}.home-tier-btn{display:flex;flex-direction:column;align-items:center;gap:3px;padding:8px 6px;background:#ffffff0a;border:1px solid #3a3c3e;border-radius:6px;color:#f0ede8a6;font-family:var(--font-ui);cursor:pointer;transition:background .12s,border-color .12s,color .12s}.home-tier-btn:hover:not(.home-tier-btn--selected){background:#ffffff14;border-color:#5a5c5e;color:#f0ede8d9}.home-tier-btn--selected{background:#c0601040;border-color:#c06010;color:#f0a030}.home-tier-btn__label{font-size:10px;font-weight:700;letter-spacing:.04em}.home-tier-btn__hint{font-size:9px;opacity:.75}.home-nav{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}.home-nav-btn{display:flex;flex-direction:column;align-items:center;gap:5px;padding:12px 8px 10px;background:#ffffff0d;border:1px solid #3a3c3e;border-radius:8px;color:#f0ede8bf;font-family:var(--font-ui);font-size:11px;cursor:pointer;transition:background .12s,border-color .12s,color .12s}.home-nav-btn:hover{background:#ffffff1a;border-color:#5a5c5e;color:#f0ede8}.home-nav-btn__icon{font-size:20px;line-height:1}.home-nav-btn__label{font-size:11px;letter-spacing:.02em;line-height:1.4}.btn-sm{padding:12px 24px;font-size:11px;display:inline-flex;align-items:center;gap:5px}@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important}.overlay{-webkit-backdrop-filter:none;backdrop-filter:none}}@keyframes wpmPop{0%{transform:scale(.6);opacity:0}70%{transform:scale(1.08)}to{transform:scale(1);opacity:1}}@keyframes burstDot{0%{transform:rotate(var(--angle)) translate(0) scale(1);opacity:1}to{transform:rotate(var(--angle)) translate(36px) scale(0);opacity:0}}@keyframes bonusPop{0%{transform:scale(.8);opacity:0}60%{transform:scale(1.12)}to{transform:scale(1);opacity:1}}.arrival-wpm-section{margin:0 0 18px;display:flex;flex-direction:column;align-items:center;gap:6px}.arrival-wpm-label{font-family:var(--font-mc);font-size:9px;color:#8a8680;text-transform:uppercase;letter-spacing:2px}.arrival-wpm-number{font-family:var(--font-mc);font-size:40px;color:gold;text-shadow:2px 2px 0 #7a6400,0 0 20px rgba(255,215,0,.4);line-height:1;animation:wpmPop .4s ease-out both;min-width:3ch;text-align:center}.arrival-bonus-row{display:flex;flex-direction:column;align-items:center;gap:4px;opacity:0;transition:opacity .25s ease}.arrival-bonus-row.arrival-bonus-done{opacity:1;animation:bonusPop .35s ease-out both}.arrival-bonus-label{font-family:var(--font-mc);font-size:8px;color:#8a8680;letter-spacing:1px}.arrival-bonus-amount{display:flex;align-items:center;gap:6px}.arrival-bonus-icon{width:20px;height:20px;image-rendering:pixelated}.arrival-bonus-count{font-family:var(--font-mc);font-size:22px;color:#50e880;text-shadow:1px 1px 0 #1a4a20,0 0 12px rgba(80,232,128,.5);line-height:1}.arrival-accuracy-row{margin-top:-4px}.arrival-accuracy-mult{font-family:var(--font-mc);font-size:18px;color:#fc4;text-shadow:1px 1px 0 #5a4310,0 0 12px rgba(255,204,68,.5);line-height:1}.arrival-burst-wrap{position:relative;display:flex;align-items:center;justify-content:center}.arrival-burst{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.arrival-burst-dot{position:absolute;top:50%;left:50%;width:7px;height:7px;margin:-3.5px 0 0 -3.5px;border-radius:50%;background:#50e880;box-shadow:0 0 4px #50e880;animation:burstDot .5s ease-out both}.store-card{background:#1a1c1e;border:2px solid #3a3c3e;border-radius:12px;padding:24px 32px;width:min(720px,95vw);max-height:90vh;overflow-y:auto;color:#f0ede8;font-family:var(--font-ui);display:flex;flex-direction:column;gap:16px}.store-header{display:flex;align-items:center;justify-content:space-between}.store-title{font-family:var(--font-mc);font-size:18px;color:gold;text-shadow:2px 2px 0 #7a6400}.store-emerald-bar{display:flex;align-items:center;gap:6px;font-family:var(--font-mc);font-size:13px;color:#50e880;text-shadow:1px 1px 0 #1a4a20;background:#00500059;padding:6px 12px;border-radius:6px;border:1px solid #2a6a2a}.store-emerald-icon{width:20px;height:20px;image-rendering:pixelated;flex-shrink:0}.store-emerald-icon-sm{width:14px;height:14px;image-rendering:pixelated;vertical-align:middle;margin-right:2px;flex-shrink:0}.store-body{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:start}.store-main-panel{min-width:0}.store-panel-title{margin:0 0 12px;font-family:var(--font-mc);font-size:10px;color:#b0ada8;text-transform:uppercase;letter-spacing:1px}.store-sell-rows{display:flex;flex-direction:column;gap:8px}.store-sell-row{display:flex;align-items:center;gap:8px}.store-tier-icon{width:28px;height:28px;image-rendering:pixelated;flex-shrink:0}.store-tier-name{font-size:10px;color:#d0cdc8;flex:1;font-family:var(--font-mc)}.store-tier-count{font-size:10px;color:#8a8680;font-family:var(--font-mc);min-width:28px;text-align:right}.store-sell-btn{padding:6px 10px;font-size:9px;white-space:nowrap}.store-empty{font-size:10px;color:#6a6660;font-family:var(--font-mc);margin:0}.store-slot-group{margin-bottom:14px}.store-slot-label{font-family:var(--font-mc);font-size:9px;color:#8a8680;margin:0 0 8px;text-transform:uppercase}.store-item-row{display:flex;flex-direction:column;gap:6px}.store-item{display:flex;align-items:center;gap:8px;padding:5px 8px;border-radius:4px;border:1px solid #2a2c2e;cursor:default;transition:border-color .1s}.store-item:hover,.store-item-selected{border-color:#5a5c5e;background:#ffffff08}.store-item-swatch{width:14px;height:14px;border-radius:2px;border:1px solid rgba(255,255,255,.2);flex-shrink:0}.store-item-name{font-size:9px;color:#c0bdb8;font-family:var(--font-mc);flex:1}.store-item-color-name{color:#7a7670}.store-item-owned{font-size:8px;color:#50e880;font-family:var(--font-mc);padding:3px 6px;background:#0050004d;border-radius:3px}.store-buy-btn{padding:5px 10px;font-size:9px}.store-buy-disabled{opacity:.45;cursor:not-allowed}.store-preview-panel{display:flex;flex-direction:column;align-items:center;gap:8px;width:160px;flex-shrink:0}.store-preview-fade{width:160px;height:220px;transition:opacity .1s ease}.store-footer{display:flex;justify-content:flex-start;padding-top:4px;border-top:1px solid #2a2c2e}.store-tabs{display:flex;gap:4px;border-bottom:1px solid #2a2c2e;padding-bottom:8px;margin-bottom:4px}.store-tab{background:transparent;border:1px solid #3a3c3e;border-radius:6px 6px 0 0;color:#8a8680;font-family:var(--font-mc);font-size:9px;padding:6px 14px;cursor:pointer;text-transform:uppercase;letter-spacing:.5px;transition:background .1s,color .1s}.store-tab:hover{background:#ffffff0d;color:#c0bdb8}.store-tab-active{background:#ffffff14;border-color:#5a5c5e;color:gold}.store-furniture-rows{display:flex;flex-direction:column;gap:6px}.store-furniture-row{display:flex;align-items:center;gap:8px;padding:5px 8px;border-radius:4px;border:1px solid #2a2c2e}.store-furniture-icon{width:28px;height:28px;image-rendering:pixelated;flex-shrink:0}.store-furniture-name{font-size:9px;color:#c0bdb8;font-family:var(--font-mc);flex:1}.store-furniture-owned-count{font-size:9px;color:#50e880;font-family:var(--font-mc);min-width:28px;text-align:right}.wardrobe-card{background:#1a1c1e;border:2px solid #3a3c3e;border-radius:12px;padding:24px 32px;width:min(700px,95vw);max-height:90vh;overflow-y:auto;color:#f0ede8;font-family:var(--font-ui);display:flex;flex-direction:column;gap:16px}.wardrobe-header{display:flex;align-items:center;justify-content:space-between}.wardrobe-title{font-family:var(--font-mc);font-size:18px;color:gold;text-shadow:2px 2px 0 #7a6400}.wardrobe-body{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:start}.wardrobe-slots{display:flex;flex-direction:column;gap:16px}.wardrobe-slot-group{display:flex;flex-direction:column;gap:8px}.wardrobe-slot-label{margin:0;font-family:var(--font-mc);font-size:10px;color:#b0ada8;text-transform:uppercase;letter-spacing:.05em}.wardrobe-empty{margin:0;font-size:12px;color:#5a5c5e;font-style:italic}.wardrobe-items{display:flex;flex-direction:column;gap:10px}.wardrobe-item{background:#222426;border:1px solid #2a2c2e;border-radius:8px;padding:8px 10px;display:flex;flex-direction:column;gap:6px;transition:border-color .1s}.wardrobe-item-equipped{border-color:gold}.wardrobe-item-name{background:none;border:none;color:#f0ede8;font-family:var(--font-ui);font-size:13px;font-weight:700;cursor:pointer;text-align:left;padding:0;display:flex;align-items:center;gap:8px;text-transform:capitalize}.wardrobe-item-name:hover{color:gold}.wardrobe-equipped-badge{font-size:10px;font-weight:400;background:gold;color:#1a1c1e;border-radius:4px;padding:1px 5px}.wardrobe-swatches{display:flex;flex-wrap:wrap;gap:4px}.wardrobe-swatch{width:20px;height:20px;border-radius:4px;border:2px solid transparent;cursor:pointer;padding:0;transition:transform .1s,border-color .1s}.wardrobe-swatch:hover{transform:scale(1.2)}.wardrobe-swatch-active{border-color:#fff;transform:scale(1.15)}.wardrobe-preview-panel{display:flex;flex-direction:column;align-items:center;gap:8px}.wardrobe-footer{display:flex;justify-content:flex-start;padding-top:4px;border-top:1px solid #2a2c2e}.character-select-grid{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;width:100%}.character-select-card{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px;background:#232527;border:2px solid #3a3c3e;border-radius:12px;cursor:pointer;position:relative;transition:border-color .12s,transform .12s}.character-select-card:hover{transform:translateY(-2px);border-color:#5a5c5e}.character-select-card--selected{border-color:#4caf50}.character-select-name{font-size:18px;font-weight:600;color:#e8e8e8}.character-select-badge{font-size:12px;font-weight:600;color:#1a1c1e;background:#4caf50;padding:2px 8px;border-radius:999px}.inventory-sidebar{position:fixed;top:0;right:0;bottom:0;width:220px;z-index:201;background:#1a1c1e;border-left:2px solid #3a3c3e;display:flex;flex-direction:column;gap:0;overflow-y:auto;padding:16px 12px;font-family:var(--font-ui);color:#f0ede8;box-sizing:border-box}.inv-title{font-family:var(--font-mc);font-size:11px;color:gold;text-shadow:1px 1px 0 #7a6400;margin:0 0 14px;letter-spacing:1px}.inv-section{padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid #2a2c2e}.inv-section:last-child{border-bottom:none;margin-bottom:0}.inv-section-title{font-family:var(--font-mc);font-size:9px;color:#b0ada8;text-transform:uppercase;letter-spacing:1px;margin:0 0 10px}.inv-empty{font-size:9px;color:#5a5650;font-family:var(--font-mc);margin:0}.inv-block-rows,.inv-clothing-rows,.inv-furniture-rows{display:flex;flex-direction:column;gap:6px}.inv-block-row,.inv-clothing-row,.inv-furniture-row{display:flex;align-items:center;gap:6px}.inv-tier-icon,.inv-furniture-icon{width:22px;height:22px;image-rendering:pixelated;flex-shrink:0}.inv-clothing-swatch{width:12px;height:12px;border-radius:2px;border:1px solid rgba(255,255,255,.2);flex-shrink:0}.inv-item-name{font-size:8px;color:#c0bdb8;font-family:var(--font-mc);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inv-count{font-size:8px;color:#8a8680;font-family:var(--font-mc);flex-shrink:0}.build-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:none;-webkit-backdrop-filter:none;backdrop-filter:none;pointer-events:none}.build-hud{position:absolute;bottom:10px;left:50%;transform:translate(-50%);display:flex;flex-direction:row;align-items:stretch;background:#000000d9;border:1px solid #555;border-radius:10px;z-index:10;pointer-events:none;height:130px;min-height:120px;width:960px;max-width:calc(100vw - 20px);box-sizing:border-box;overflow:hidden}.build-drag-handle{width:14px;flex-shrink:0;cursor:grab;pointer-events:auto;border-radius:10px 0 0 10px;opacity:.45;transition:opacity .15s;background-image:radial-gradient(circle,#aaa 1.5px,transparent 1.5px);background-size:5px 7px;background-position:center}.build-drag-handle:hover{opacity:.9}.build-drag-handle:active{cursor:grabbing;opacity:1}.build-hud-content{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}.build-toolbar-header{flex-shrink:0;display:flex;flex-direction:row;align-items:center;padding:6px 8px 0;gap:4px}.build-tabs{display:flex;gap:2px;align-items:center;pointer-events:auto;flex-shrink:0}.build-tab{background:transparent;border:1px solid #555;border-radius:4px;color:#888;font-family:var(--font-mc);font-size:11px;padding:0 14px;height:40px;box-sizing:border-box;cursor:pointer;white-space:nowrap}.build-tab:hover{color:#ccc;border-color:#888}.build-tab-active{color:gold;border-color:gold;background:#ffd7001a}.build-palette-controls{margin-left:auto;flex-shrink:0;display:flex;flex-direction:row;align-items:center;gap:4px;pointer-events:auto}.build-palette{flex:1;min-height:0;display:flex;flex-wrap:wrap;gap:4px;align-content:flex-start;align-items:center;overflow-y:auto;overflow-x:hidden;pointer-events:auto;padding:6px 8px;box-sizing:border-box;scrollbar-width:thin;scrollbar-color:#555 transparent}.build-palette::-webkit-scrollbar{width:4px}.build-palette::-webkit-scrollbar-thumb{background:#555;border-radius:2px}.build-hud--collapsed{width:auto!important;min-width:0!important;height:44px!important;min-height:44px!important;padding:0}.build-expand-btn{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:#666;cursor:grab;pointer-events:auto;flex-shrink:0;border-radius:10px;transition:color .15s,background .15s}.build-expand-btn:hover{color:#ddd;background:#ffffff14}.build-expand-btn:active{cursor:grabbing}.build-collapse-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid #444;color:#555;cursor:pointer;pointer-events:auto;flex-shrink:0;border-radius:4px;transition:color .15s,border-color .15s}.build-collapse-btn:hover{color:#aaa;border-color:#777}.build-resize-e{position:absolute;top:10px;bottom:10px;right:0;width:5px;cursor:e-resize;pointer-events:auto;border-radius:0 10px 10px 0}.build-resize-e:hover{background:#ffffff1f}.build-resize-s{position:absolute;bottom:0;left:10px;right:10px;height:5px;cursor:s-resize;pointer-events:auto}.build-resize-s:hover{background:#ffffff1f}.build-resize-se{position:absolute;bottom:0;right:0;width:12px;height:12px;cursor:se-resize;pointer-events:auto}.build-hotbar-slot{width:60px;height:60px;background:#2a2c2e;border:2px solid #555;border-radius:6px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;position:relative;padding:0;flex-shrink:0;box-sizing:border-box}.build-hotbar-slot:hover:not(:disabled){border-color:#aaa;background:#3a3c3e}.build-hotbar-slot.selected{border-color:#fff;background:#4a4c4e;box-shadow:0 0 8px #fff6}.build-hotbar-slot:disabled{opacity:.35;cursor:default}.build-hotbar-slot .mc-slot-icon{width:44px;height:44px;image-rendering:pixelated}.build-hotbar-slot .mc-slot-count{position:absolute;bottom:1px;right:3px;font-size:7px;font-family:var(--font-mc);color:#fff;text-shadow:1px 1px 0 #000;line-height:1}.build-folder-slot .build-folder-badge{position:absolute;top:1px;left:3px;font-size:9px;line-height:1;color:#cfd8dc;text-shadow:1px 1px 0 #000;pointer-events:none}.build-folder-slot.folder-open{border-color:#aaa;background:#3a3c3e}.build-slot-tooltip{position:fixed;z-index:1100;pointer-events:none;transform:translate(-50%);background:#1a1c1e;border:2px solid #888;border-radius:4px;padding:3px 8px;font-family:var(--font-mc);font-size:11px;color:#fff;text-shadow:1px 1px 0 #000;white-space:nowrap;box-shadow:0 2px 8px #0009}.build-folder-popover{position:fixed;z-index:1000;display:flex;flex-wrap:wrap;gap:4px;max-width:320px;padding:6px;background:#1f2123;border:2px solid #666;border-radius:8px;box-shadow:0 4px 16px #00000080;pointer-events:auto}.build-folder-swatch{width:44px;height:44px;padding:0;background:#2a2c2e;border:2px solid #555;border-radius:5px;display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative;box-sizing:border-box}.build-folder-swatch:hover{border-color:#aaa;background:#3a3c3e}.build-folder-swatch.selected{border-color:#fff;box-shadow:0 0 6px #fff6}.build-folder-swatch .mc-slot-icon{width:34px;height:34px;image-rendering:pixelated}.build-eraser-btn{pointer-events:auto;flex-shrink:0;font-size:24px;width:40px;height:40px;box-sizing:border-box}.build-divider{width:1px;align-self:stretch;background:#ffffff2e;flex-shrink:0;margin:0 6px}.build-eraser-btn.selected{border-color:#f44;background:#f443}.build-eraser-btn:hover:not(.selected){border-color:#888}.build-home-btn{position:absolute;top:16px;right:16px;z-index:210;pointer-events:auto;display:flex;align-items:center;justify-content:center;width:64px;height:64px;box-sizing:border-box;color:#c0d0e0;background:#1a1e28eb;border:2px solid #4a5060;border-radius:12px;cursor:pointer;box-shadow:0 3px 10px #0006;transition:transform .08s ease,background .12s ease,border-color .12s ease}.build-home-btn:hover{background:#283040f5;border-color:#6a7080;color:#fff;transform:scale(1.05)}.build-home-btn:active{transform:scale(.97)}@media(prefers-reduced-motion:reduce){.build-home-btn{transition:none}.build-home-btn:hover,.build-home-btn:active{transform:none}}.build-zoom-controls{display:flex;align-items:center;gap:4px;pointer-events:auto;flex-shrink:0;align-self:center}.build-zoom-btn{background:#2a3040;border:1px solid #4a5060;border-radius:4px;color:#c0d0e0;font-family:var(--font-mc);font-size:14px;line-height:1;width:26px;height:26px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.build-zoom-btn:hover{background:#3a4050;border-color:#6a7080}.build-zoom-label{font-family:var(--font-mc);font-size:8px;color:#8090a0;min-width:32px;text-align:center;-webkit-user-select:none;user-select:none}.dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:500;display:flex;align-items:center;justify-content:center;background:#000000a6;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.dialog{background:#1a1c1e;border:2px solid #3a3c3e;border-radius:12px;min-width:340px;max-width:480px;width:90vw;max-height:80vh;display:flex;flex-direction:column;color:#f0ede8;font-family:var(--font-ui)}.dialog-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 12px;border-bottom:1px solid #2e3032}.dialog-title{margin:0;font-size:16px;font-weight:600;color:#f0ede8}.dialog-close{background:none;border:none;color:#f0ede880;font-size:16px;cursor:pointer;padding:2px 6px;border-radius:4px;line-height:1}.dialog-close:hover{color:#f0ede8;background:#ffffff14}.dialog-tabs{display:flex;border-bottom:1px solid #2e3032}.dialog-tab{flex:1;background:none;border:none;padding:10px 0;font-size:12px;font-family:var(--font-ui);color:#f0ede880;cursor:pointer;border-bottom:2px solid transparent;transition:color .15s,border-color .15s}.dialog-tab:hover{color:#f0ede8}.dialog-tab--active{color:#f0ede8;border-bottom-color:#7ab3e8}.dialog-body{padding:12px 16px 16px;overflow-y:auto;flex:1}.recent-runs-list{display:flex;flex-direction:column;gap:8px}.recent-run-item{display:flex;flex-direction:column;gap:2px}.recent-run-row{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#ffffff0a;border-radius:6px;padding:12px 14px;line-height:1.6}.recent-run-stats{display:flex;align-items:center;gap:10px;font-size:12px;flex:1;min-width:0}.recent-run-challenger{color:#a0d8a0;font-weight:600;font-family:var(--font-mc);font-size:10px}.recent-run-date{color:#f0ede873;font-size:11px}.recent-run-tier{color:#f0a030;font-size:11px;font-weight:600}.recent-run-wpm{color:#7ab3e8;font-weight:600}.recent-run-blocks{color:#f0ede8b3}.recent-run-score{color:#50e880;font-size:11px}.recent-run-copied{font-size:11px;color:#50e880;padding-left:12px}.recent-runs-empty{margin:16px 0;font-size:13px;color:#f0ede873;text-align:center}.land-purchase-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:450;display:flex;align-items:center;justify-content:center;background:#000000a6;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.land-purchase-card{background:#12100e;border:2px solid #3a7d3a;border-radius:10px;padding:28px 36px 24px;min-width:240px;text-align:center;color:#fff;font-family:var(--font-mc);display:flex;flex-direction:column;align-items:center;gap:10px}.land-purchase-title{margin:0;font-size:14px;letter-spacing:.06em;color:#7ed87e}.land-purchase-info{display:flex;align-items:center;gap:6px;font-size:11px;color:#ffffffb3}.land-purchase-gem-icon{width:18px;height:18px;image-rendering:pixelated}.land-purchase-gem-icon-sm{width:13px;height:13px;image-rendering:pixelated;vertical-align:middle;margin-left:4px}.land-purchase-desc{margin:0;font-size:10px;color:#ffffff8c}.land-purchase-cost{margin:0;font-size:12px;color:gold}.land-purchase-shortfall{margin:0;font-size:10px;color:#e07070}.land-purchase-maxed{margin:0;font-size:11px;color:#7ed87e;max-width:200px;line-height:1.5}.land-purchase-confirm{margin-top:4px;min-width:120px}.land-purchase-confirm:disabled{opacity:.4;cursor:not-allowed}.land-purchase-close{background:transparent;border:1px solid rgba(255,255,255,.2);color:#fff9;font-size:10px;padding:4px 16px;border-radius:4px;cursor:pointer;font-family:var(--font-mc)}.land-purchase-close:hover{border-color:#fff6;color:#ffffffe6}@media(prefers-reduced-motion:reduce){.land-purchase-overlay{-webkit-backdrop-filter:none;backdrop-filter:none}}.login-gate-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:900;display:flex;align-items:center;justify-content:center;background:#000000c7;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);font-family:var(--font-ui)}.login-gate-card{background:#1a1c1e;border:2px solid #3a3c3e;border-radius:14px;width:90vw;max-width:380px;padding:28px 28px 32px;color:#f0ede8;display:flex;flex-direction:column;gap:18px}.login-gate-title{margin:0;font-size:1.5rem;text-align:center}.login-gate-profiles{display:flex;flex-direction:column;gap:12px}.login-gate-profile{font-size:1.15rem;padding:14px;background:#2a1a3e;color:#c084fc;border:2px solid #7c3aed}.login-gate-profile:hover{background:#361f52;border-color:#9f5ff5;color:#d8a8ff}.login-gate-new{margin-top:8px}.login-gate-form{display:flex;flex-direction:column;gap:16px}.login-gate-label{display:flex;flex-direction:column;gap:6px;font-size:.95rem}.login-gate-input{font-family:var(--font-ui);font-size:1.2rem;padding:12px 14px;border-radius:10px;border:2px solid #3a3c3e;background:#0f1112;color:#f0ede8}.login-gate-input:focus-visible{outline:2px solid #6fae6f;outline-offset:1px}.login-gate-pin{letter-spacing:.5em;text-align:center}.login-gate-greeting-row{display:flex;align-items:center;justify-content:center;gap:.5rem}.login-gate-greeting{margin:0;font-size:1.2rem;text-align:center}.login-gate-delete-btn{background:none;border:none;cursor:pointer;color:#888;padding:.2rem;line-height:0;opacity:.6;transition:opacity .15s,color .15s}.login-gate-delete-btn:hover{opacity:1;color:#e55}.login-gate-confirm{margin:0;font-size:.95rem;line-height:1.4;color:#cfcabf}.login-gate-loading{margin:0;text-align:center;font-size:.95rem;color:#9a958c;animation:login-gate-pulse 1s ease-in-out infinite}@keyframes login-gate-pulse{0%,to{opacity:1}50%{opacity:.4}}@media(prefers-reduced-motion:reduce){.login-gate-loading{animation:none}}.login-gate-error{margin:0;color:#e88;font-size:.95rem;text-align:center}.login-gate-submit{font-size:1.15rem;padding:14px}@media(prefers-reduced-motion:reduce){.login-gate-overlay{-webkit-backdrop-filter:none;backdrop-filter:none}}.profile-panel-body{display:flex;flex-direction:column;gap:12px;padding:16px 20px 22px}.profile-panel-name{margin:0;font-size:1.05rem}.profile-panel-sync{margin:0 0 6px;font-size:.85rem;color:#9a958c}.profile-panel-action{width:100%}.profile-panel-confirm{display:flex;flex-direction:column;gap:10px;font-size:.95rem;line-height:1.4}.profile-panel-confirm p{margin:0}.profile-panel-friends{border-top:1px solid #2c2e30;padding-top:12px}.profile-panel-friends-title{margin:0 0 8px;font-size:.95rem;color:#cfcabf}.profile-panel-friends-empty{margin:0;font-size:.85rem;color:#9a958c;line-height:1.4}.profile-panel-friends-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.profile-panel-friend{display:flex;align-items:center;justify-content:space-between;background:#0f1112;border-radius:8px;padding:8px 12px;font-size:1rem}.profile-panel-friend-remove{background:none;border:none;color:#9a958c;font-size:1.2rem;line-height:1;cursor:pointer;padding:0 4px}.profile-panel-friend-remove:hover{color:#e88}.profile-chip{background:#0000008c;color:#ffffffd9;border:none;border-radius:6px;font-family:var(--font-ui);font-size:12px;padding:6px 10px;cursor:pointer;pointer-events:auto;line-height:1.2}.profile-chip:hover{background:#000000b8}.login-gate-intro{display:flex;flex-direction:column;gap:12px}.login-gate-intro-btn{font-size:1.15rem;padding:14px}.login-gate-guest{background:none;border:none;color:#9a958c;font-size:.85rem;text-align:center;padding:6px;cursor:pointer;font-family:var(--font-ui)}.login-gate-guest:hover{color:#cfcabf;text-decoration:underline}.kbd-guide{position:fixed;left:50%;bottom:18px;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:10px;pointer-events:none;z-index:40;-webkit-user-select:none;user-select:none}.kbd-guide__toggle{pointer-events:auto;order:1;background:#14161cd1;border:1px solid rgba(255,255,255,.15);border-radius:20px;color:#fff9;font-size:13px;padding:4px 14px;cursor:pointer;line-height:1;transition:color .15s,background .15s}.kbd-guide__toggle:hover{color:#fff;background:#282c36eb}.kbd-guide__keyboard,.kbd-hands{order:0}.kbd-guide--minimized .kbd-guide__keyboard,.kbd-guide--minimized .kbd-hands{display:none}.kbd-guide__keyboard{display:flex;flex-direction:column;gap:4px;padding:10px;border-radius:10px;background:#14161cc7;box-shadow:0 4px 18px #00000059}.kbd-row{display:flex;gap:4px;justify-content:center}.kbd-row:nth-child(2){margin-left:14px}.kbd-row:nth-child(3){margin-left:28px}.kbd-row--space{margin-left:0}.kbd-key{--finger-color: #888;width:34px;height:34px;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:800;color:#fff;border-radius:6px;background:color-mix(in srgb,var(--finger-color) 55%,#2a2d35);border:1px solid color-mix(in srgb,var(--finger-color) 70%,#000);box-shadow:inset 0 -2px #0000004d;text-transform:uppercase;image-rendering:pixelated}.kbd-key--space{width:200px;text-transform:lowercase;font-size:12px}.kbd-key--locked{background:#2a2d35;border-color:#3a3d45;color:#5c606b;opacity:.5;box-shadow:none}.kbd-key--next{background:var(--finger-color);color:#1a1a1a;border-color:#fff;box-shadow:0 0 0 3px #fff,0 0 14px 4px var(--finger-color);opacity:1;transform:translateY(-3px) scale(1.08);z-index:1;animation:kbd-key-pulse .9s ease-in-out infinite}.kbd-guide[data-reduced-motion=true] .kbd-key--next{animation:none}@keyframes kbd-key-pulse{0%,to{box-shadow:0 0 0 3px #fff,0 0 10px 3px var(--finger-color);transform:translateY(-3px) scale(1.08)}50%{box-shadow:0 0 0 3px #fff,0 0 20px 8px var(--finger-color);transform:translateY(-5px) scale(1.14)}}.kbd-hands{display:flex;gap:28px;padding:8px 16px 6px;border-radius:12px;background:#14161cb3}.kbd-hand{display:flex;flex-direction:column;align-items:center;gap:4px}.kbd-hand__label{font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#ffffff73}.kbd-hand__palm{position:relative;width:78px;height:56px;border-radius:10px 10px 14px 14px;background:#ffffff0f;border:1px solid rgba(255,255,255,.08)}.kbd-hand__fingers{position:absolute;left:6px;right:6px;bottom:8px;display:flex;gap:4px;align-items:flex-end;justify-content:center}.kbd-finger{--finger-color: #888;--finger-len: .8;position:relative;width:13px;height:calc(20px + var(--finger-len) * 22px);border-radius:7px 7px 4px 4px;background:color-mix(in srgb,var(--finger-color) 45%,#2a2d35);display:flex;align-items:flex-start;justify-content:center;transition:transform .15s ease,background .15s ease,box-shadow .15s ease}.kbd-guide[data-reduced-motion=true] .kbd-finger{transition:none}.kbd-finger__key{font-size:8px;font-weight:800;line-height:1;margin-top:3px;color:#ffffff8c;text-transform:uppercase}.kbd-finger--active{background:var(--finger-color);transform:translateY(-7px);box-shadow:0 0 10px 3px var(--finger-color)}.kbd-finger--active .kbd-finger__key{color:#1a1a1a}.kbd-thumb{--finger-color: #8a8f99;position:absolute;bottom:4px;width:18px;height:11px;border-radius:6px;background:color-mix(in srgb,var(--finger-color) 45%,#2a2d35);transition:transform .15s ease,background .15s ease,box-shadow .15s ease}.kbd-thumb--left{right:6px;transform:rotate(28deg)}.kbd-thumb--right{left:6px;transform:rotate(-28deg)}.kbd-guide[data-reduced-motion=true] .kbd-thumb{transition:none}.kbd-thumb.kbd-finger--active{background:var(--finger-color);box-shadow:0 0 10px 3px var(--finger-color)}.arrival-learn-section{margin:8px 0 14px;text-align:center}.arrival-learn-keys{font-size:22px;font-weight:700;color:#ffd34d}.arrival-learn-group{margin-top:6px;font-size:13px;color:#ffffffb3}.arrival-learn-unlock{display:flex;gap:8px;justify-content:center;margin-bottom:12px}.arrival-learn-newkey{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:8px;font-size:22px;font-weight:800;color:#1a1a1a;background:linear-gradient(180deg,#ffe168,#ffc02e);border:2px solid #fff;box-shadow:0 0 14px 3px #ffd14db3;text-transform:uppercase;animation:arrival-newkey-pop .5s ease both;animation-delay:calc(var(--i) * .12s)}.arrival-learn-unlock--still .arrival-learn-newkey{animation:none}@keyframes arrival-newkey-pop{0%{transform:scale(0) rotate(-12deg);opacity:0}60%{transform:scale(1.2) rotate(4deg);opacity:1}to{transform:scale(1) rotate(0);opacity:1}}.arrival-learn-next{margin-top:12px}.arrival-learn-next-label{font-size:12px;font-weight:700;color:#ffd34d;margin-bottom:6px}.arrival-learn-bar{width:180px;height:12px;margin:0 auto;border-radius:6px;background:#ffffff1f;overflow:hidden}.arrival-learn-bar-fill{height:100%;border-radius:6px;background:linear-gradient(90deg,#7cfc6b,#4caf50);box-shadow:0 0 8px #7cfc6b99;transition:width .4s ease}.learn-intro{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:center;justify-content:center;background:#0000008c}.learn-intro__card{max-width:380px;margin:0 16px;padding:24px 28px;border-radius:14px;background:#14161cf7;border:2px solid #5B21C4;box-shadow:0 8px 40px #00000080;text-align:center;color:#fff}.learn-intro__title{margin:0 0 14px;font-size:22px}.learn-intro__steps{list-style:none;margin:0 0 14px;padding:0;text-align:left}.learn-intro__steps li{display:flex;align-items:center;gap:10px;font-size:15px;line-height:1.35;margin-bottom:12px;color:#ffffffe0}.learn-intro__home{display:inline-flex;gap:4px;flex-shrink:0}.learn-intro__home b{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:5px;background:#5aa845;border:1px solid #fff;font-size:14px}.learn-intro__reassure{margin:0 0 18px;font-size:13px;color:#fff9}.learn-intro__start{width:100%}
