.c-vgain{display: flex;flex-wrap: wrap;align-items: center;gap: var(--sp-1) var(--sp-3);margin: 0;padding: var(--sp-2) var(--sp-3);border-radius: var(--r-md);background: var(--color-surface-sunken);font-size: var(--fs-sm)}.c-vgain[hidden]{display: none}.c-vgain img{flex: none;width: 24px;height: 24px;image-rendering: pixelated}.c-vgain strong{font-size: var(--fs-md)}.c-vgain__set{flex-basis: 100%;color: var(--color-text-muted);font-weight: var(--fw-semibold)}.c-vgain__go{margin-inline-start: auto;color: var(--color-link);font-weight: var(--fw-semibold);min-height: var(--tap-min);display: inline-flex;align-items: center}.c-vstrip{--z: 2;display: grid;justify-items: center;gap: var(--sp-3);padding: var(--sp-3);border-radius: var(--r-lg);background: var(--color-surface);border: var(--outline-w) solid var(--color-outline);color: var(--color-text);text-decoration: none}.c-vstrip__art{display: block;inline-size: calc(160px * var(--z));block-size: calc(88px * var(--z));max-inline-size: 100%;image-rendering: pixelated;border-radius: var(--r-md);background: var(--plum-150)}.c-vstrip__text{display: grid;gap: 2px;justify-items: center;text-align: center}.c-vstrip__text strong{font: var(--fw-heavy) var(--fs-lg)/1.2 var(--font-display)}.c-vstrip__text span{font-size: var(--fs-sm);color: var(--color-text-muted);font-weight: var(--fw-semibold)}.c-vstrip__go{display: inline-flex;align-items: center;gap: var(--sp-1);min-height: var(--tap-min);font-weight: var(--fw-bold);color: var(--color-link)}@media (max-width: 351px){.c-vstrip{--z: 1}}@media (min-width: 560px){.c-vstrip{--z: 3}}@media (min-width: 800px){.c-vstrip{grid-template-columns: auto minmax(0,1fr) auto;justify-items: stretch;align-items: center;gap: var(--sp-5)}.c-vstrip__text{justify-items: start;text-align: start}}@media (min-width: 1024px){.c-vstrip{--z: 4}}.page--village{display: grid;gap: var(--sp-4);align-content: start}.village__intro{margin: 0}.village__stage{display: grid;gap: var(--sp-3);justify-items: center}.village__scene{position: relative;line-height: 0;border-radius: var(--r-lg);overflow: hidden;border: var(--outline-w) solid var(--color-outline);box-shadow: var(--shadow-pop);background: var(--plum-150)}.village__scene canvas{display: block;inline-size: 320px;block-size: 192px;max-inline-size: none;image-rendering: pixelated}.village__spots{position: absolute;inset: 0}.village__spot{position: absolute;padding: 0;border: 0;border-radius: 3px;background: transparent;cursor: pointer}.village__spot[data-empty="free"]{outline: 2px dashed rgb(255 255 255 / .7);outline-offset: -2px}.village__spot:hover,.village__spot:focus-visible{outline: 3px solid var(--color-focus);outline-offset: -1px}.village__spot[data-new]{outline: 3px solid var(--brand-sun);outline-offset: -1px}:root:not([data-motion="reduce"]) .village__spot[data-new]{animation: village-pop .9s ease-out 2}@keyframes village-pop{50%{outline-color: var(--brand-fox);outline-offset: 2px}}@media (prefers-reduced-motion: reduce){:root:not([data-motion="full"]) .village__spot[data-new]{animation: none}}.village__bubble{display: flex;align-items: center;gap: var(--sp-3);max-inline-size: 36rem;margin: 0;padding: var(--sp-2) var(--sp-4) var(--sp-2) var(--sp-3);border-radius: var(--r-pill);background: var(--color-surface);border: var(--outline-w) solid var(--color-outline);font-weight: var(--fw-semibold)}.village__bubble img{flex: none}.village__tip{margin: 0;font-size: var(--fs-sm);color: var(--color-text-muted);text-align: center}.village__wallet{display: grid;grid-template-columns: repeat(3,minmax(0,1fr));gap: var(--sp-2);margin: 0;padding: 0;list-style: none}.village__coin{display: grid;grid-template-columns: auto 1fr;grid-template-rows: auto auto;column-gap: var(--sp-2);align-items: center;padding: var(--sp-2) var(--sp-3);border-radius: var(--r-md);background: var(--color-surface);border: var(--outline-w) solid var(--color-outline)}.village__coin img{grid-row: 1 / 3}.village__coin strong{font: var(--fw-heavy) var(--fs-lg)/1 var(--font-num)}.village__coin span{font-size: var(--fs-xs);color: var(--color-text-muted);font-weight: var(--fw-semibold);line-height: 1.2}.village__mat{inline-size: 20px;block-size: 20px;image-rendering: pixelated;vertical-align: middle}.village__mat--lg{inline-size: 28px;block-size: 28px}@media (min-width: 720px){.village__wallet{grid-template-columns: repeat(6,minmax(0,1fr))}}.village__tabs{margin: 0}.village__panel{display: grid;gap: var(--sp-5);align-content: start;min-block-size: 12rem}.village__section{display: grid;gap: var(--sp-3)}.village__section h3{margin: 0;font: var(--fw-heavy) var(--fs-lg)/1.2 var(--font-display)}.village__sub,.village__note,.village__count{margin: 0;font-size: var(--fs-sm);color: var(--color-text-muted)}.village__count strong{color: var(--color-text);font-size: var(--fs-md)}.village__grid{display: grid;grid-template-columns: repeat(auto-fill,minmax(9.5rem,1fr));gap: var(--sp-3)}.village__card{display: grid;justify-items: center;align-content: start;gap: var(--sp-2);padding: var(--sp-3);border-radius: var(--r-lg);background: var(--color-surface);border: var(--outline-w) solid var(--color-outline);text-align: center}.village__card[data-owned]{background: var(--color-surface-sunken)}.village__card[data-locked] .village__art{opacity: .55;filter: grayscale(.5)}.village__art-box{display: grid;place-items: center;inline-size: 100%;block-size: 6.5rem;border-radius: var(--r-md);background: var(--plum-150)}.village__art{display: block;image-rendering: pixelated}.village__name{margin: 0;font-size: var(--fs-md);line-height: 1.2}.village__prices{display: flex;flex-wrap: wrap;justify-content: center;gap: var(--sp-1) var(--sp-3);margin: 0}.village__price{display: inline-flex;align-items: center;gap: 4px;font: var(--fw-heavy) var(--fs-sm)/1 var(--font-num)}.village__price[data-short] b{color: var(--color-danger)}.village__worn{font-size: var(--fs-sm);color: var(--color-success)}.village__owned{display: inline-flex;align-items: center;min-block-size: var(--tap-min);font-weight: var(--fw-bold);font-size: var(--fs-sm);color: var(--color-text-muted)}.village__card .c-btn{min-height: var(--tap-min);inline-size: 100%;padding: 0 var(--sp-2)}.village__card .c-btn:disabled{opacity: 1;background: var(--color-surface-sunken);color: var(--color-text-muted);cursor: default}.village__shelf{display: flex;flex-wrap: wrap;gap: var(--sp-3)}.village__tile{display: grid;justify-items: center;gap: var(--sp-1);inline-size: 6.2rem;margin: 0;padding: var(--sp-2);border-radius: var(--r-md);background: var(--color-surface);border: var(--outline-w) solid var(--color-outline);text-align: center}.village__tile figcaption{display: grid;gap: 2px;font-size: var(--fs-xs);font-weight: var(--fw-semibold);line-height: 1.2}.village__tile figcaption small{font-weight: var(--fw-regular,400);color: var(--color-text-muted)}.village__tile:not([data-owned]) .village__art{opacity: .4}.village__share{margin: 0;text-align: center}.village__pick{inline-size: min(26rem,calc(100vw - 2rem));max-block-size: 80dvh;padding: 0;border: var(--outline-w) solid var(--color-outline);border-radius: var(--r-lg);background: var(--color-surface);color: var(--color-text)}.village__pick::backdrop{background: var(--color-scrim)}.village__pick-head{display: flex;align-items: center;justify-content: space-between;gap: var(--sp-2);padding: var(--sp-2) var(--sp-2) var(--sp-2) var(--sp-4);border-bottom: 1px solid var(--color-border)}.village__pick-head h2{margin: 0;font-size: var(--fs-lg)}.village__pick-body{display: grid;gap: var(--sp-2);padding: var(--sp-3);overflow-y: auto;max-block-size: calc(80dvh - 4rem)}.village__option{display: flex;align-items: center;gap: var(--sp-3);min-block-size: var(--tap-min);padding: var(--sp-2) var(--sp-3);border-radius: var(--r-md);border: var(--outline-w) solid var(--color-border);background: var(--color-surface);color: inherit;font: inherit;font-weight: var(--fw-semibold);text-align: start;cursor: pointer}.village__option[aria-pressed="true"]{border-color: var(--color-primary);background: var(--color-primary-soft)}.village__option .village__art{flex: none;background: var(--plum-150);border-radius: var(--r-sm)}.village__none{margin: 0;color: var(--color-text-muted)}