@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:500;src:url(./fredoka-latin-500-normal-B0JifZgm.woff2)format("woff2"),url(./fredoka-latin-500-normal-BL692wg7.woff)format("woff")}@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:600;src:url(./fredoka-latin-600-normal-C4zohCW5.woff2)format("woff2"),url(./fredoka-latin-600-normal-CcrEjrB4.woff)format("woff")}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./nunito-sans-latin-400-normal-AkRraKH2.woff2)format("woff2"),url(./nunito-sans-latin-400-normal-DY9yCUyQ.woff)format("woff")}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:600;src:url(./nunito-sans-latin-600-normal-BtVRvDNj.woff2)format("woff2"),url(./nunito-sans-latin-600-normal-DLks-Kj1.woff)format("woff")}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:700;src:url(./nunito-sans-latin-700-normal-CICRJDmU.woff2)format("woff2"),url(./nunito-sans-latin-700-normal-CLVG92B9.woff)format("woff")}html,body,#game,#root{height:100%;margin:0}:root{--font-heading:"Fredoka", system-ui, sans-serif;--color-ink:#1f2d33;--color-muted:#55646b;--color-page:#eef3ef;--color-card:#fff;--color-line:#dce4df;--color-work:#c9d3ce;--color-free:#f4c04e;--color-action:#3e6fd6;--color-backdrop:#1f2d3361;--safe-top:0px;--safe-right:0px;--safe-bottom:0px;--safe-left:0px}body{font-family:Nunito Sans,system-ui,sans-serif}#game{touch-action:none}#root{pointer-events:none;position:fixed;inset:0}.overlay{height:100%}.band-top{height:var(--band-top);box-sizing:border-box;padding:var(--safe-top) var(--safe-right) 0 var(--safe-left);position:fixed;top:0;left:0;right:0;overflow:hidden}.band-top-side{box-sizing:border-box;padding:var(--safe-top) calc(var(--safe-right) + 24px) 0 calc(var(--safe-left) + 24px);color:var(--color-ink);justify-content:space-between;align-items:center;display:flex}.band-top-side .nav-list{gap:8px}.band-top-side .nav-button{background:var(--color-card);border-radius:999px;flex-direction:row;gap:8px;min-height:44px;padding:0 14px}.band-bottom{height:var(--band-bottom);box-sizing:border-box;padding:0 var(--safe-right) calc(var(--safe-bottom) + 14px) var(--safe-left);flex-direction:column;justify-content:flex-end;display:flex;position:fixed;bottom:0;left:0;right:0;overflow:hidden}.band-side{top:var(--band-top);width:var(--band-right);box-sizing:border-box;pointer-events:auto;padding:0 calc(var(--safe-right) + 16px) calc(var(--safe-bottom) + 16px) 0;position:fixed;bottom:0;right:0;overflow-y:auto}.band-side-pill{padding-bottom:calc(var(--safe-bottom) + 80px)}.side-column{color:var(--color-ink);flex-direction:column;gap:14px;display:flex}.side-card{pointer-events:auto;box-sizing:border-box;background:var(--color-card);width:100%;color:inherit;text-align:left;cursor:pointer;border:none;border-radius:16px;flex-direction:column;gap:10px;padding:14px 16px;font-family:inherit;display:flex}.side-card:focus-visible{outline:3px solid var(--color-ink);outline-offset:2px}.side-card-top{justify-content:space-between;align-items:baseline;display:flex}.side-card-label{color:var(--color-muted);font-size:13px;font-weight:600}.side-card-value{font-family:var(--font-heading);font-size:26px;font-weight:700;line-height:30px}.side-card-figures{gap:24px;display:flex}.side-card-figure{flex-direction:column;display:flex}.pill{position:fixed}.pill-above-nav{left:calc(var(--safe-left) + 14px);right:calc(var(--safe-right) + 14px);bottom:calc(var(--safe-bottom) + 14px + 52px + 8px)}.overlay-compact .band-bottom{padding-bottom:calc(var(--safe-bottom) + 8px)}.overlay-compact .nav-button{min-height:44px;padding:0}.overlay-compact .pill-above-nav{bottom:calc(var(--safe-bottom) + 8px + 44px + 4px)}.overlay-compact .pill-above-nav .lend-a-hand-button{min-height:44px}.pill-under-map{left:var(--safe-left);right:var(--band-right);bottom:calc(var(--safe-bottom) + 16px);justify-content:center;display:flex}.pill-in-column{right:calc(var(--safe-right) + 16px);bottom:calc(var(--safe-bottom) + 16px);width:calc(var(--band-right) - var(--safe-right) - 32px)}.pill-under-map .lend-a-hand-button{width:auto;min-width:220px}.toast{top:calc(var(--band-top) + 8px);pointer-events:none;background:var(--color-card);max-width:260px;color:var(--color-ink);text-align:center;border-radius:12px;padding:10px 16px;font-size:15px;font-weight:700;position:absolute;left:50%;transform:translate(-50%)}.lend-a-hand-button{pointer-events:auto;color:#fff;width:100%;min-height:52px;font-family:var(--font-heading);cursor:pointer;background:#3e6fd6;border:none;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:0 28px;font-size:18px;font-weight:700;display:flex;box-shadow:0 2px #0000001f}.lend-a-hand-button:focus-visible{outline-offset:3px;outline:3px solid #1f2d33}.header{box-sizing:border-box;height:200px;color:var(--color-ink);flex-direction:column;gap:8px;padding:12px 14px 10px;display:flex;overflow:hidden}.header-compact{gap:4px;height:auto;padding:4px 14px}.header-title{flex-direction:column;justify-content:center;height:35px;display:flex}.header-compact .header-title{height:auto}.header-name{font-family:var(--font-heading);font-size:20px;font-weight:700;line-height:22px}.header-subtitle{color:var(--color-muted);font-size:12px;line-height:13px}.free-card{pointer-events:auto;box-sizing:border-box;background:var(--color-card);width:100%;height:84px;color:inherit;text-align:left;cursor:pointer;border:none;border-radius:12px;flex-direction:column;justify-content:space-between;gap:6px;padding:10px 12px;font-family:inherit;display:flex}.header-compact .free-card{gap:2px;height:auto;padding:4px 12px}.free-card-top{justify-content:space-between;align-items:baseline;display:flex}.free-card-label{color:var(--color-muted);font-size:12px;font-weight:600}.free-card-value{font-family:var(--font-heading);font-size:22px;font-weight:700;line-height:26px}.free-card-caption{color:var(--color-muted);justify-content:space-between;font-size:11px;display:flex}.free-bar{border-radius:999px;gap:2px;height:12px;display:flex;overflow:hidden}.free-bar-big{height:16px}.free-bar-work{background:var(--color-work)}.free-bar-free{background:var(--color-free);flex-grow:1}.chips{gap:6px;margin:0;padding:0;list-style:none;display:flex}.chip-item{flex:1 1 0;min-width:0}.chip{pointer-events:auto;box-sizing:border-box;background:var(--color-card);width:100%;height:43px;color:inherit;cursor:pointer;border:none;border-radius:12px;flex-direction:column;align-items:flex-start;gap:1px;padding:6px 8px;font-family:inherit;display:flex}.header-compact .chip{height:auto;padding:4px 8px}.chip-label{color:var(--color-muted);font-size:11px}.chip-value{font-size:14px;font-weight:700}.card-button:focus-visible,.free-card:focus-visible,.chip:focus-visible,.nav-button:focus-visible,.sheet-close:focus-visible{outline:3px solid var(--color-ink);outline-offset:2px}.nav-list{margin:0;padding:0;list-style:none;display:flex}.nav-item{flex:1 1 0}.nav-button{pointer-events:auto;width:100%;min-height:52px;color:var(--color-muted);cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:4px 0;font-family:inherit;font-size:11px;font-weight:600;display:flex}.sheet-layer{justify-content:center;display:flex;position:fixed;inset:0}.sheet-layer-bottom{align-items:flex-end}.sheet-layer-centred{align-items:center}.sheet-backdrop{pointer-events:auto;background:var(--color-backdrop);border:none;padding:0;position:absolute;inset:0}.sheet{pointer-events:auto;box-sizing:border-box;background:var(--color-card);width:100%;max-height:85vh;color:var(--color-ink);flex-direction:column;gap:14px;padding:10px 18px 20px;display:flex;position:relative;overflow-y:auto;box-shadow:0 -6px 24px #00000026}.sheet:focus{outline:none}@supports (height:1dvh){.sheet{max-height:85dvh}}.sheet-bottom{padding-bottom:calc(var(--safe-bottom) + 20px);border-radius:20px 20px 0 0}.sheet-centred{border-radius:20px;max-width:440px;box-shadow:0 6px 24px #00000026}.sheet-handle{background:var(--color-line);border-radius:999px;flex-shrink:0;align-self:center;width:40px;height:5px}.sheet-head{justify-content:space-between;align-items:center;display:flex}.sheet-title{font-family:var(--font-heading);margin:0;font-size:24px;font-weight:600}.sheet-close{width:44px;height:44px;color:var(--color-ink);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.sheet-rows{margin:0;padding:0;list-style:none}.sheet-row{border-bottom:1px solid var(--color-line);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.sheet-row-text{flex-direction:column;gap:2px;display:flex}.sheet-row-name,.sheet-row-value{font-size:15px;font-weight:700}.sheet-row-value{text-align:right;white-space:nowrap}.sheet-row-note{color:var(--color-muted);font-size:12px}.return-note-away{color:var(--color-muted);margin:0 0 12px;font-size:12px}.return-note-close{width:100%;margin-top:16px}.weather-banner{background:#fff4d6;border-radius:12px;align-items:flex-start;gap:12px;margin-bottom:12px;padding:12px;display:flex}.weather-banner-icon{color:#7a5300;flex-shrink:0;padding-top:1px}.weather-banner-text{color:#3d2e00;flex-direction:column;gap:3px;font-size:13px;line-height:1.4;display:flex}.weather-banner-title{font-size:14px}.weather-banner-storm{background:#e4eaf3}.weather-banner-storm .weather-banner-icon{color:#3f5068}.weather-banner-storm .weather-banner-text{color:#1f2d3f}.village-status{color:var(--color-muted);margin:0 0 4px;font-size:13px}.village-list{margin:0;padding:0;list-style:none}.village-milestones-heading{color:var(--color-muted);margin:16px 0 4px;font-size:13px;font-weight:600}.village-row{border-bottom:1px solid var(--color-line);align-items:flex-start;gap:10px;padding:10px 0;display:flex}.avatar{border-radius:50%;flex:none;width:32px;height:32px;position:relative}.avatar-head{border-radius:50%;width:50%;height:50%;position:absolute;top:14%;left:25%}.village-body{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.village-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.village-name{font-size:15px;font-weight:700}.village-trait{color:var(--color-muted);font-size:12px}.village-doing{font-size:13px}.village-needs{gap:10px;display:flex}.need{flex-direction:column;gap:3px;display:flex}.need-label{color:var(--color-muted);font-size:10px}.need-bar{background:var(--color-line);border-radius:999px;width:44px;height:5px;overflow:hidden}.need-fill{background:var(--color-action);height:100%}.need-fill-low{background:#d9822b}.village-card{box-sizing:border-box;background:var(--color-card);border-radius:16px;flex-direction:column;max-height:420px;padding:14px 16px 6px;display:flex}.village-card-title{pointer-events:auto;color:var(--color-muted);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0 0 6px;font-family:inherit;font-size:13px;font-weight:600}.village-card-title:focus-visible{outline:3px solid var(--color-ink);outline-offset:2px}.village-card-scroll{pointer-events:auto;overflow-y:auto}.sheet-kicker{color:var(--color-muted);text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:700}.free-sheet-main,.free-sheet-activity{flex-direction:column;gap:6px;display:flex}.free-sheet-headline{align-items:baseline;gap:8px;display:flex}.free-sheet-value{font-family:var(--font-heading);font-size:34px;font-weight:600}.free-sheet-note{color:var(--color-muted);font-size:13px}.free-sheet-labels{color:var(--color-muted);justify-content:space-between;font-size:12px;display:flex}.tiles{gap:6px;margin:0;padding:0;list-style:none;display:flex}.tile{background:var(--color-page);border-radius:12px;flex-direction:column;flex:1 1 0;gap:2px;padding:10px;display:flex}.tile-count{font-family:var(--font-heading);font-size:20px;font-weight:600}.tile-label{color:var(--color-muted);font-size:12px}.upgrade-card{border:2px solid var(--color-line);border-radius:14px;align-items:center;gap:12px;padding:12px;display:flex}.upgrade-text{flex-direction:column;flex:auto;gap:2px;display:flex}.upgrade-name{font-size:15px;font-weight:700}.upgrade-note{color:var(--color-muted);font-size:12px}.upgrade-button{background:var(--color-action);color:#fff;min-height:44px;font:inherit;white-space:nowrap;pointer-events:auto;cursor:pointer;border:0;border-radius:12px;flex-shrink:0;padding:0 16px;font-size:14px;font-weight:700}.upgrade-button:disabled{opacity:.4;cursor:default}.upgrade-built{color:var(--color-muted);font-size:13px;font-weight:700}.upgrade-card-leaning{border-color:var(--color-action)}.upgrade-leaning{color:var(--color-action);font-size:12px;font-weight:700}.suggest-line{color:var(--color-muted);margin:0;font-size:14px}.suggest-banner{color:var(--color-ink);background:#fbeedd;border:2px solid #d9822b;border-radius:12px;padding:10px 12px;font-size:13px;font-weight:700}.given-list{margin:0;padding:0;list-style:none}.given-row{border-bottom:1px solid var(--color-line);justify-content:space-between;align-items:center;padding:10px 0;display:flex}.given-name{font-size:15px;font-weight:700}.given-amount{text-align:right;font-size:15px;font-weight:700}
