@import url('../ice-cream/style.css');
#activities{position:absolute;left:25px;top:83px;display:flex;gap:9px;pointer-events:none}.activity{display:grid;place-items:center;width:46px;height:46px;border:3px solid #fff9e9;border-radius:16px;background:#eee6d3;font-size:24px;opacity:.55;box-shadow:0 3px #c5b797}.activity.active{opacity:1;background:#ffe18b;border-color:#b78936;transform:scale(1.09)}.activity.done{opacity:1;background:#c9e2b3;border-color:#6e9d67}#activities[hidden]{display:none}
.fallback-build [hidden]{display:none!important}.fallback-build[data-stage="hammer"],.fallback-build[data-stage="paint"],.fallback-build[data-stage="decorate"]{grid-template-columns:1fr}.fallback-build:not([data-stage="build"]) .fallback-house{width:min(100%,470px);justify-self:center;max-height:none}.fallback-nails,.fallback-decor{position:absolute;inset:0;pointer-events:none}.fallback-nails button{position:absolute;transform:translate(-50%,-50%);width:72px;height:72px;border-radius:50%;border:5px solid #fff7cf;outline:3px solid #c5831e;box-shadow:0 6px #ad7a23;background:#f9c33f;font-size:37px;color:#96611a;pointer-events:auto;touch-action:manipulation}.fallback-nails button.done{background:#9cc792;opacity:.7;box-shadow:0 2px #608758}.fallback-paint{position:absolute;left:20%;top:36%;width:60%;height:52%;display:grid;grid-template-rows:1fr 1fr;gap:3px;touch-action:none;-webkit-user-select:none;user-select:none}.fallback-paint button{min-width:0;min-height:64px;border:2px dashed #c6b99c;background:#e9decb;border-radius:5px;touch-action:none}.fallback-paint button.painted{border-color:#fff3b4;background:#f2c367;opacity:1}.fallback-decor{display:flex;align-items:flex-end;justify-content:space-around}.fallback-decor span{width:25%;height:26%;display:block}.fallback-decor svg{width:100%;height:100%}.fallback-village{grid-template-columns:repeat(3,1fr);align-items:center}.fallback-village button{aspect-ratio:1;min-height:180px}.fallback-village button>svg{max-height:none}.village-decor{display:flex;position:absolute;left:5%;right:5%;bottom:-6%;height:32%;pointer-events:none}.village-decor svg{width:33%;height:100%}
@media(orientation:portrait){#activities{left:23px;top:88px}.fallback-village{grid-template-columns:1fr;justify-items:center;gap:20px;inset:130px 10% 110px}.fallback-village button{width:220px;min-height:0}.fallback-build:not([data-stage="build"]) .fallback-house{width:min(100%,560px)}}
@media(max-width:600px){#activities{left:14px;top:74px;gap:5px}.activity{width:34px;height:34px;font-size:20px;border-radius:12px}.fallback-nails button{width:55px;height:55px}.fallback-village button{width:160px}.fallback-paint button{min-height:44px}}
.fallback-build[hidden],.fallback-village[hidden]{display:none}
body[data-phase="village"] .builder-world .bottom-note{top:28px;bottom:auto}
:root{background:#f7f4e5;color:#68594d}.brand-mark{background:#f5d788}.brand h1{color:#7b5b40}.brand small{color:#a08860}.builder-world{background:radial-gradient(ellipse at 50% 8%,#fff7d9,#e1edd6 75%);border-color:#d3ddbd}.builder-order{min-width:0;padding:9px 13px 10px 15px;border-color:#f2d2a0;border-bottom-color:#cfaa70}.builder-order .order-content{gap:10px}.order-symbol{width:36px;height:38px}.builder-world .hint-button{position:absolute;top:auto;right:24px;bottom:23px;display:grid;place-items:center;min-width:61px;min-height:61px;border:3px solid #fff9df;border-radius:21px;outline:2px solid #ad7e37;background:#efbd61;color:#795728;box-shadow:0 5px #a97d40;touch-action:manipulation}.builder-world .hint-button .icon{width:32px;height:32px}.builder-world .bottom-note{bottom:23px;max-width:calc(100% - 130px);min-height:51px;gap:11px}.builder-demo{display:flex;align-items:center;justify-content:center;gap:11px;margin:14px auto}.builder-demo>svg{width:25px;height:25px;color:#a5aa7e}.builder-demo .demo-house{width:95px;height:95px}.builder-demo span{font-size:47px}.builder-controls [data-builder-target].drop-ready{outline:5px solid #ffc542!important;box-shadow:0 0 0 4px #fff9e3}.builder-controls button:focus-visible{outline:5px solid #1768ae;outline-offset:5px}button:focus-visible{outline:4px solid #1768ae;outline-offset:4px}
#village-actions{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);pointer-events:auto;z-index:3}#village-actions .primary{white-space:nowrap;font-size:15px;padding:13px 22px;margin:0}#village-actions[hidden],#back-build[hidden],#new-village[hidden]{display:none}body[data-phase="village"] .builder-order,body[data-phase="village"] .hint-button{display:none}body[data-phase="village"] .bottom-note{bottom:91px;left:50%;transform:translateX(-50%);max-width:90%;white-space:nowrap}
.fallback-build{position:absolute;inset:135px 5% 105px;display:grid;grid-template-columns:1fr 1.3fr;grid-template-rows:minmax(0,1fr) auto;gap:20px 50px}.fallback-reference{padding:10px;background:#fff9e9;border:5px solid #6fae9b;border-radius:30px;align-self:center;width:100%;aspect-ratio:1;touch-action:manipulation}.fallback-reference svg{width:100%;height:100%}.fallback-house{position:relative;align-self:center;aspect-ratio:1;max-height:370px}.fallback-house-art,.fallback-house-art svg{width:100%;height:100%}.fallback-target{position:absolute;min-width:64px;min-height:64px;border:5px dashed #e5a829;background:#ffd76418;border-radius:16px;touch-action:manipulation}.fallback-target:disabled{opacity:1}.fallback-target.selected{border-style:solid;background:#ffdc6c3a}.fallback-build .fallback-choices{grid-column:1/-1}.fallback-build .fallback-choices button{width:clamp(110px,16vw,175px)}.fallback-village{position:absolute;inset:110px 7% 160px;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.fallback-village button{min-height:90px;padding:7px;background:#d9e9b6;border:4px solid #fff8d9;border-radius:24px;box-shadow:0 6px #93b57c;position:relative;touch-action:manipulation}.fallback-village button svg{width:100%;height:100%;max-height:145px}.fallback-village button .resident{position:absolute;bottom:8px;left:40%;font-size:40px}.fallback-village button:focus-visible,.fallback-target:focus-visible,.fallback-reference:focus-visible{outline:4px solid #1768ae;outline-offset:5px}
@media(orientation:portrait){.builder-order{top:20px}.fallback-build{inset:180px 6% 145px;align-content:center;gap:35px 20px;grid-template-rows:minmax(0,1fr) auto}.fallback-house{max-height:none}.fallback-build .fallback-choices{flex-wrap:nowrap}.fallback-build .fallback-choices button{width:25vw}.fallback-village{inset:180px 7% 170px;grid-template-columns:repeat(3,1fr);gap:18px}}
@media(max-width:600px){.header-actions{gap:5px}.brand small{font-size:6px}.brand h1{font-size:10px}.header .icon-button{width:36px;height:38px;min-width:36px}.header .star-total{padding-inline:6px}.builder-order{top:16px;padding:7px 9px}.builder-order .order-content{gap:7px}.builder-world .bottom-note{left:14px;bottom:21px;max-width:calc(100% - 95px);padding:8px 10px;gap:9px}.builder-world .hint-button{right:17px;bottom:23px;min-width:47px;min-height:48px;border-radius:16px}.builder-world .hint-button .icon{width:26px;height:26px}.fallback-build{inset:180px 4% 105px;gap:15px}.fallback-build .fallback-choices{gap:15px}.fallback-build .fallback-choices button{width:25vw}.fallback-target{min-width:48px;min-height:48px;border-width:3px}.fallback-village{inset:170px 6% 170px;gap:10px}.fallback-village button{min-height:70px;padding:4px;border-width:3px}}
@media(max-height:700px) and (min-width:601px){.builder-order{top:11px;padding-block:6px}.builder-world .bottom-note{bottom:16px}.builder-world .hint-button{bottom:20px;min-width:50px;min-height:50px}.fallback-build{inset:105px 8% 95px;gap:10px}.fallback-house{max-height:210px}.fallback-reference{max-height:200px}.fallback-build .fallback-choices button{max-height:95px;width:120px}.fallback-village{inset:100px 10% 150px;gap:12px}}
/* Three roomy village homes and a centered activity board. */
.builder-world .fallback-village{grid-template-columns:repeat(3,1fr);align-items:center}
.builder-world .fallback-village button>svg{max-height:none}
.builder-world .fallback-build:not([data-stage="build"]) .fallback-house{max-height:none}
@media(orientation:portrait){.builder-world .fallback-village{grid-template-columns:1fr;inset:130px 10% 110px;gap:20px}.builder-world .fallback-village button{width:220px;min-height:0}}
@media(max-width:600px){.builder-world .fallback-village button{width:160px}}
