*{box-sizing:border-box;margin:0;padding:0}:root{--cream:#fdf6e3;--ink:#4a3f35;--leaf:#6fbf73;--leaf-dark:#4e8f52;--coral:#f28d77;--sky:#a8dcf0;--wood:#a9744f;font-family:Trebuchet MS,Segoe UI,Hiragino Maru Gothic ProN,sans-serif}html,body,#root{height:100%}body{background:#78b7d3;overflow:hidden}.maple-game{width:100%;height:100%;position:relative}.game-canvas{outline:none;width:100%;height:100%;display:block;position:absolute;top:0;bottom:0;left:0;right:0}.game-header{pointer-events:none;z-index:4;align-items:center;gap:14px;display:flex;position:absolute;top:14px;left:16px;right:16px}.game-header img{filter:drop-shadow(0 3px #4a3f3540);height:74px}.title-fallback{color:var(--cream);-webkit-text-stroke:2px var(--ink);letter-spacing:2px;font-size:40px;font-weight:900}.mint-credit{letter-spacing:2.4px;color:var(--cream);background:#4a3f359e;border-radius:999px;align-self:flex-start;margin-top:4px;padding:4px 10px;font-size:10px;font-weight:800}.header-spacer{flex:1}.coin-chip,.game-header button{pointer-events:auto;background:var(--cream);border:3px solid var(--ink);color:var(--ink);border-radius:999px;align-items:center;gap:8px;padding:8px 16px;font-size:15px;font-weight:800;display:flex;box-shadow:0 3px #4a3f3559}.coin-chip b{font-size:19px}.coin-chip .coin-dot{background:#f4c542;border:2px solid #c79a26;border-radius:50%;width:16px;height:16px}.game-header button{cursor:pointer;letter-spacing:1px;font-size:12px}.game-header button:active{box-shadow:none;transform:translateY(2px)}.fund-card,.clock-card{z-index:4;background:var(--cream);border:3px solid var(--ink);color:var(--ink);border-radius:18px;min-width:210px;padding:10px 14px;position:absolute;box-shadow:0 4px #4a3f354d}.fund-card{top:106px;left:16px}.clock-card{top:106px;right:16px}.fund-card span,.clock-card span{letter-spacing:1.6px;opacity:.75;font-size:10px;font-weight:800}.fund-card strong,.clock-card strong{margin:2px 0 6px;font-size:20px;display:block}.meter{border:2px solid var(--ink);background:#e4d7bd;border-radius:999px;height:12px;overflow:hidden}.meter i{background:linear-gradient(90deg, var(--leaf), var(--leaf-dark));height:100%;transition:width .3s;display:block}.clock-card .meter i{background:linear-gradient(90deg, #ffd76e, var(--coral))}.request-row{z-index:4;pointer-events:none;gap:8px;display:flex;position:absolute;top:14px;left:50%;transform:translate(-50%)}.request-chip{background:var(--cream);border:3px solid var(--ink);color:var(--ink);text-align:center;border-radius:14px;padding:6px 12px;font-size:11px;font-weight:800;box-shadow:0 3px #4a3f354d}.request-chip small{letter-spacing:1px;opacity:.7;font-size:9px;display:block}.game-toast{z-index:5;color:var(--cream);white-space:nowrap;background:#4a3f35e0;border-radius:999px;padding:10px 20px;font-size:14px;font-weight:800;position:absolute;bottom:118px;left:50%;transform:translate(-50%)}.npc-banter{z-index:5;background:var(--cream);border:3px solid var(--ink);color:var(--ink);text-align:center;border-radius:18px 18px 18px 4px;max-width:460px;padding:10px 18px;position:absolute;bottom:160px;left:50%;transform:translate(-50%);box-shadow:0 4px #4a3f354d}.npc-banter b{letter-spacing:2px;color:var(--leaf-dark);margin-bottom:2px;font-size:10px;display:block}.npc-banter span{font-size:15px;font-weight:600}.carry-row{z-index:4;gap:6px;display:flex;position:absolute;bottom:20px;left:16px}.carry-slot{border:3px solid var(--ink);background:#fdf6e3d9;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;font-size:20px;display:flex;box-shadow:0 3px #4a3f354d}.carry-slot.empty{opacity:.45}.keyboard-hint{z-index:4;color:var(--cream);letter-spacing:1px;text-shadow:0 2px 3px #0006;pointer-events:none;align-items:center;gap:6px;font-size:11px;font-weight:800;display:flex;position:absolute;bottom:20px;left:50%;transform:translate(-50%)}.keyboard-hint kbd{background:var(--cream);color:var(--ink);border:2px solid var(--ink);border-radius:6px;padding:2px 7px;font-size:12px;font-weight:900;box-shadow:0 2px #4a3f3566}.touch-controls{z-index:4;flex-direction:column;align-items:center;gap:6px;display:flex;position:absolute;bottom:18px;right:18px}.touch-controls div{gap:6px;display:flex}.touch-controls button{border:3px solid var(--ink);width:52px;height:52px;color:var(--ink);cursor:pointer;touch-action:none;background:#fdf6e3e6;border-radius:14px;font-size:20px;font-weight:900;box-shadow:0 3px #4a3f3559}.touch-controls button:active{box-shadow:none;transform:translateY(2px)}.game-modal{z-index:10;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#34423c8c;justify-content:center;align-items:center;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.modal-card{background:var(--cream);border:4px solid var(--ink);text-align:center;max-width:520px;color:var(--ink);border-radius:26px;padding:30px 36px;box-shadow:0 8px #342e2673}.modal-card img{width:100%;max-width:320px}.modal-card .title-fallback{font-size:46px}.modal-kicker{letter-spacing:2.6px;color:var(--leaf-dark);margin:10px 0 12px;font-size:10px;font-weight:900}.modal-card p{margin-bottom:18px;font-size:15px;font-weight:600;line-height:1.55}.modal-card button{background:var(--leaf);color:#fff;border:3px solid var(--ink);letter-spacing:1px;cursor:pointer;border-radius:999px;padding:12px 34px;font-size:17px;font-weight:900;box-shadow:0 4px #342e2666}.modal-card button:disabled{cursor:not-allowed;background:#b7b0a2}.modal-card button:active:not(:disabled){box-shadow:none;transform:translateY(3px)}.modal-card small{letter-spacing:1.8px;opacity:.65;margin-top:14px;font-size:9px;font-weight:800;display:block}.catch-banner{z-index:6;background:var(--cream);border:4px solid var(--ink);color:var(--ink);text-align:center;border-radius:22px;max-width:480px;padding:14px 26px;font-size:17px;font-weight:800;animation:.35s cubic-bezier(.34,1.56,.64,1) bannerPop;position:absolute;top:38%;left:50%;transform:translate(-50%);box-shadow:0 6px #342e2666}.catch-banner span{vertical-align:-3px;margin-right:10px;font-size:26px}@keyframes bannerPop{0%{opacity:0;transform:translate(-50%)scale(.6)}to{opacity:1;transform:translate(-50%)scale(1)}}.carry-slot{gap:4px;width:auto;padding:0 12px}.carry-slot b{font-size:13px}.action-btn{z-index:4;border:4px solid var(--ink);background:var(--coral);color:#fff;cursor:pointer;touch-action:none;border-radius:50%;width:72px;height:72px;font-size:28px;font-weight:900;position:absolute;bottom:34px;right:218px;box-shadow:0 5px #342e2666}.action-btn:active{box-shadow:none;transform:translateY(3px)}.door-fade{z-index:7;opacity:0;pointer-events:none;background:#120d0b;transition:opacity .27s;position:absolute;top:0;bottom:0;left:0;right:0}
