/* All atlas windows are isolated through background-size/position; no pixels are repainted. */
html[data-game-theme] body{background:radial-gradient(ellipse at 50% 40%,var(--theme-accent),var(--theme-outer) 80%)}
html[data-game-theme] .app{background:none;border-radius:32px;box-shadow:0 18px 65px #0005;color:var(--theme-ink)}
/* Extend only an undecorated horizontal band; the artwork keeps its native proportions. */
.stage-background{position:absolute;inset:0;display:grid;pointer-events:none;z-index:0}
.stage-background>i{min-width:0;min-height:0;margin:-1px 0;background-image:var(--stage-image);background-repeat:no-repeat}
.app .slot,.app .nest-empty,.app .basket-slot{background-image:var(--cell-image);background-size:var(--cell-atlas-size);background-position:var(--cell-atlas-position);background-color:transparent;background-repeat:no-repeat;border:0;border-radius:12px}
.app .slot.selected,.app .slot.dragover,.app .basket-slot.selected,.app .basket-slot.accept{outline:3px solid #fff4a3;outline-offset:1px;filter:brightness(1.08)}
.app .cell-purchase,.app .nest-purchase,.app .basket-slot-buy{background-image:var(--locked-image);background-size:var(--locked-atlas-size);background-position:var(--locked-atlas-position);background-color:transparent;background-repeat:no-repeat;border:0;color:var(--theme-ink)}
.app .cell-purchase:disabled,.app .nest-purchase:disabled{opacity:.63}.app .cell-purchase.paid{outline:3px solid #f1c646;outline-offset:-4px}
.app .straw{left:-4px;right:-4px;height:38px;bottom:-1px;background-image:var(--nest-image);background-size:var(--nest-atlas-size);background-position:var(--nest-atlas-position);background-repeat:no-repeat;background-color:transparent;border:0;border-radius:0;clip-path:none}
.app .nest-progress{bottom:5px;left:17px;right:17px;height:4px}.app .coin-progress{bottom:0;left:17px;right:17px}.app .monster-income{color:#594327;background:#fff7d7e8}
.app .incubator{width:100px;height:132px;border:0;border-radius:0;box-shadow:none;overflow:visible;background-image:var(--incubator-image);background-size:var(--incubator-atlas-size);background-position:var(--incubator-atlas-position);background-color:transparent;background-repeat:no-repeat}
.app .incubator .egg{width:60px;height:60px;margin-top:20px}.app .incubator .monster{width:60px;height:60px;margin:20px 0 0}.app .incubator.empty:before{content:'+';font-size:26px;color:var(--theme-accent);margin-top:20px}.app .inc-time{bottom:16px;z-index:2}.app .incubator.accept,.app .incubator.ready{filter:drop-shadow(0 0 5px #fff4b5)}
.app .egg-store{width:94px;height:112px;top:79px;border:0;border-radius:0;box-shadow:none;background-image:var(--store-image);background-size:var(--store-atlas-size);background-position:var(--store-atlas-position);background-color:transparent;background-repeat:no-repeat}
.app .egg-store svg{display:none}.app .egg-store #saleQuote{position:absolute;left:8px;right:8px;bottom:19px;padding:3px 1px;font-size:11px;background:#fff8e8dc;border-radius:7px;color:var(--theme-ink)}.app .egg-store.accept{filter:drop-shadow(0 0 7px #fff4a3)}
.app .buy{border:0;border-radius:0;box-shadow:none;background-image:var(--buy-image);background-size:var(--buy-atlas-size);background-position:var(--buy-atlas-position);background-color:transparent;background-repeat:no-repeat;color:#523c23;text-shadow:0 1px #fff9}
.app .buy:active:not(:disabled){box-shadow:none}.app .buy .mini-coin{width:18px;height:18px}.app .buy:focus-visible,.app .egg-store:focus-visible,.app .incubator:focus-visible{outline:3px solid #fff6ad;outline-offset:3px}
.app .collection-button,.app .settings{background:var(--theme-paper);border-color:var(--theme-accent);color:var(--theme-ink);box-shadow:0 4px 0 var(--theme-ink)}
.app .collection-button{padding-left:6px;gap:3px}.app .collection-button svg{display:none}.app .collection-button:before{content:'';width:34px;height:31px;background-image:var(--theme-book-image);background-size:var(--theme-book-size);background-position:var(--theme-book-position);background-repeat:no-repeat;flex:none;mix-blend-mode:var(--theme-book-blend)}
.app .wallet{background:#fff7e4d9;border:1px solid #fff9;border-radius:22px;padding:4px 12px;color:var(--theme-ink);text-shadow:none;gap:6px;font-size:21px}.app .coin{width:25px;height:25px}
.app .goal-level{color:var(--theme-ink);background:#fff8e9c9;padding:4px 12px;border-radius:12px;font-size:12px}.app .inc-label,.app .hand-status,.app .basket-permanent{color:var(--theme-ink);text-shadow:0 1px #fff9}
.app .evolution{background:#fff7e3a6;border:1px solid #fff9;border-radius:20px;padding:3px 8px 5px;height:64px}.app .evo b{color:var(--theme-ink);text-shadow:0 1px #fff}.app .evo.current:after{background:var(--theme-accent)}
.app .basket-unlock{background:var(--theme-paper);border-color:var(--theme-accent);color:var(--theme-ink);box-shadow:0 4px 0 var(--theme-accent)}.app .basket-title{color:var(--theme-ink)}
.expansion-status{background:var(--theme-paper,#fff4dc);color:var(--theme-ink,#563f3d)}
/* Keep the egg above the button unclipped while excluding the neighbouring atlas frame. */
.app .buy{background-image:none;isolation:isolate}
.app .buy:before{content:'';position:absolute;inset:0;z-index:-1;background-image:var(--buy-image);background-size:var(--buy-atlas-size);background-position:var(--buy-atlas-position);background-repeat:no-repeat}
html[data-game-theme="woodland"] .buy:before{clip-path:none}
.app .basket-slot-buy{grid-template-rows:24px 16px;align-content:center;gap:2px;font-size:20px;line-height:1}
/* Shared art extends the same family palette to every existing dialog. */
html[data-game-theme] .card,html[data-game-theme] .collection-card,html[data-game-theme] .campaign-map-card{background:var(--theme-paper);border-color:var(--theme-ink);color:var(--theme-ink)}
html[data-game-theme] .campaign-map-header{background:var(--theme-paper)}
html[data-game-theme] .campaign-map-scroll{background:linear-gradient(var(--theme-paper),#fff7e6)}
html[data-game-theme] .collection-tab[aria-selected=true]{background:var(--theme-ink);border-color:var(--theme-ink)}
html[data-game-theme] .primary{background:linear-gradient(#ffe899,#f3bd55);border-color:#705023;color:#45331c;box-shadow:0 5px 0 #957039}
.app .settings{font-size:0}.app .settings:before{content:'';width:31px;height:31px;background:url('assets/themes/family-ui-atlas.webp') no-repeat;background-size:var(--settings-art-size);background-position:var(--settings-art-position)}
.family-art-icon{display:inline-block;width:36px;height:36px;background:url('assets/themes/family-ui-atlas.webp') no-repeat;background-size:400% 400%;flex:none}
.basket-title .basket-art{width:24px;height:24px;object-fit:contain;vertical-align:middle}.basket-unlock .basket-art{width:55px;height:55px;object-fit:contain}
.collection-families{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;margin:0 0 12px;flex:none}
.collection-family-art{display:flex;flex-direction:column;align-items:center;gap:2px;border:1px solid #d7c4a7;background:#fffaf0;border-radius:12px;padding:6px 2px;font:11px/1.3 system-ui,sans-serif;text-align:center;color:#654e35}
.collection-family-art b{font-size:12px}.collection-family-art span{font-size:9px;min-height:23px;display:flex;align-items:center}.collection-family-art.complete{border-color:#b48725;background:#fff2ba}
@media(max-height:560px){.collection-family-art .family-art-icon{width:25px;height:25px}.collection-family-art span{display:none}.collection-families{margin-bottom:6px}}
