@font-face{font-family:Fredoka;src:url(/fonts/fredoka.woff2) format("woff2");font-weight:300 700;font-display:swap}@font-face{font-family:Nunito;src:url(/fonts/nunito.woff2) format("woff2");font-weight:200 900;font-display:swap}:root{--gm-ink: #4a3018;--gm-ink-soft: #7a5c38;--gm-cream: #fff6e3;--gm-cream-2: #f7ead0;--gm-border: #b98a52;--gm-border-dark: #966a3c;--gm-honey: #f6b02c;--gm-honey-dark: #d8922a;--gm-green: #58b368;--gm-red: #d9534f;--gm-font-display: "Fredoka", "Nunito", system-ui, sans-serif;--gm-font-body: "Nunito", system-ui, sans-serif}body{font-family:var(--gm-font-body);color:var(--gm-ink)}.gm-panel{background:var(--gm-cream);border:3px solid var(--gm-border);border-radius:16px;box-shadow:0 4px #7a522873,0 8px 18px #3c280f40}.gm-chip{display:inline-flex;align-items:center;gap:6px;background:var(--gm-cream);border:2.5px solid var(--gm-border);border-radius:999px;padding:5px 13px 5px 9px;font-family:var(--gm-font-display);font-weight:600;font-size:15px;color:var(--gm-ink);box-shadow:0 3px #7a522866;font-variant-numeric:tabular-nums}.gm-btn{font-family:var(--gm-font-display);font-weight:600;color:var(--gm-ink);background:linear-gradient(#ffffff,var(--gm-cream-2));border:2.5px solid var(--gm-border);border-radius:12px;padding:6px 14px;cursor:pointer;box-shadow:0 3px #7a522873;transition:transform .1s ease,box-shadow .1s ease,background .15s ease}.gm-btn:hover{transform:translateY(-1px);box-shadow:0 4px #7a522873}.gm-btn:active{transform:translateY(2px);box-shadow:0 1px #7a522873}.gm-btn.active{background:linear-gradient(#ffe6a8,#f9cf6d);border-color:var(--gm-honey-dark)}.gm-title{font-family:var(--gm-font-display);font-weight:600;font-size:15px;letter-spacing:.2px}.gm-bar{height:8px;background:#e8d7b4;border-radius:6px;overflow:hidden;border:1.5px solid rgba(122,82,40,.35)}.gm-bar>div{height:100%;background:linear-gradient(#7ed48d,var(--gm-green));border-radius:6px;transition:width .3s}.gm-badge{color:#fff;border-radius:999px;padding:2px 8px;font-family:var(--gm-font-display);font-size:10px;font-weight:600;white-space:nowrap;text-shadow:0 1px 2px rgba(0,0,0,.3);box-shadow:inset 0 -2px #0000002e}.gm-topbar{position:absolute;top:10px;left:12px;right:12px;display:flex;gap:8px;align-items:center;z-index:10;pointer-events:none}.gm-topbar>*{pointer-events:auto}.gm-logo{font-family:var(--gm-font-display);font-weight:700;font-size:22px;color:#fff;-webkit-text-stroke:1.2px #8a5a26;text-shadow:0 3px 0 #8a5a26,0 5px 8px rgba(0,0,0,.3);margin-right:6px;-webkit-user-select:none;user-select:none}.gm-dock{position:absolute;bottom:12px;left:50%;transform:translate(-50%);display:flex;gap:8px;padding:10px 12px;z-index:10}.gm-dock-btn{display:flex;flex-direction:column;align-items:center;min-width:76px;padding:6px 8px 7px;border:2.5px solid var(--gm-border);border-radius:14px;background:linear-gradient(#ffffff,var(--gm-cream-2));cursor:pointer;font-family:var(--gm-font-display);font-weight:600;font-size:12.5px;color:var(--gm-ink);box-shadow:0 3px #7a522866;transition:transform .1s ease,box-shadow .1s ease}.gm-dock-btn:hover{transform:translateY(-3px);box-shadow:0 6px #7a522866}.gm-dock-btn.active{background:linear-gradient(#ffe6a8,#f9cf6d);border-color:var(--gm-honey-dark);box-shadow:0 3px 0 var(--gm-honey-dark),0 0 14px #f6b02c8c}.gm-dock-btn img{width:46px;height:46px;display:block}.gm-dock-btn .cost{font-family:var(--gm-font-body);font-weight:700;font-size:9.5px;color:var(--gm-ink-soft);margin-top:1px;line-height:1.2;text-align:center}.gm-side{position:absolute;top:62px;display:flex;flex-direction:column;gap:8px;padding:10px;max-height:66vh;overflow-y:auto;z-index:12;width:262px}.gm-side.left{left:12px}.gm-side.right{right:12px}.gm-card{background:#fffdf6;border:2px solid #dcc294;border-radius:12px;padding:9px 10px;font-size:12px;line-height:1.4}.gm-card .lore{color:var(--gm-ink-soft);font-size:11px;margin:3px 0}.gm-card .pitch{font-style:italic;font-size:12px;margin:3px 0}.gm-toasts{position:absolute;top:62px;right:12px;display:flex;flex-direction:column;gap:6px;z-index:20;align-items:flex-end}.gm-toast{background:#342612f0;color:#fff6e3;border:2px solid rgba(246,176,44,.5);padding:8px 14px;border-radius:12px;font-family:var(--gm-font-display);font-weight:500;font-size:13px;max-width:300px;box-shadow:0 4px 10px #0000004d;animation:gm-toast-in .25s ease}@keyframes gm-toast-in{0%{transform:translate(24px);opacity:0}to{transform:none;opacity:1}}.gm-hint{position:absolute;bottom:14px;left:14px;z-index:10;background:#fff6e3e6;border:2px solid var(--gm-border);border-radius:999px;padding:6px 14px;font-family:var(--gm-font-display);font-weight:500;font-size:12px;color:var(--gm-ink-soft);box-shadow:0 3px #7a522859}.gm-tooltip{position:fixed;z-index:30;pointer-events:none;background:#342612f0;color:#fff6e3;border:2px solid rgba(246,176,44,.55);border-radius:10px;padding:7px 11px;font-family:var(--gm-font-body);font-size:12px;font-weight:600;line-height:1.45;max-width:270px;box-shadow:0 4px 12px #00000059}.gm-tooltip .head{font-family:var(--gm-font-display);font-weight:600;font-size:13px}.gm-villager{display:flex;gap:8px;align-items:flex-start;background:#fffdf6;border:2px solid #dcc294;border-radius:12px;padding:8px 9px}.gm-portrait{width:26px;height:26px;border-radius:50%;flex-shrink:0;margin-top:1px;border:2.5px solid rgba(122,82,40,.5);box-shadow:inset 0 -3px #00000026}@keyframes gm-pop-float{0%{transform:translate(-50%) scale(.7);opacity:0}15%{transform:translate(-50%,-8px) scale(1.15);opacity:1}to{transform:translate(-50%,-52px) scale(1);opacity:0}}.gm-pop{position:absolute;font-family:var(--gm-font-display);font-weight:700;font-size:17px;color:#2e6b39;-webkit-text-stroke:.5px #fff;text-shadow:0 2px 0 #fff,0 3px 6px rgba(0,0,0,.25);animation:gm-pop-float 1.4s ease-out forwards;white-space:nowrap}.gm-build-label{position:absolute;transform:translate(-50%,-100%);background:var(--gm-cream);border:2.5px solid var(--gm-border);border-radius:12px;padding:4px 10px 6px;font-family:var(--gm-font-display);font-weight:600;font-size:12px;color:var(--gm-ink);text-align:center;white-space:nowrap;box-shadow:0 3px #7a522866}.gm-build-label .bar{height:6px;background:#e8d7b4;border-radius:4px;margin-top:4px;overflow:hidden}.gm-build-label .bar>div{height:100%;background:linear-gradient(#7ed48d,var(--gm-green));border-radius:4px;transition:width .3s}.gm-side::-webkit-scrollbar{width:8px}.gm-side::-webkit-scrollbar-thumb{background:var(--gm-border);border-radius:6px}.gm-side::-webkit-scrollbar-track{background:transparent}
