/* Robert's Zoo game styles. Generated Nov 1, 2026 (Phase 4) by merging map-preview.css, hd-map.css and zoo-ui.css
   in their load order; overridden duplicates removed. Edit this file directly from now on. */
:root{color:#fff9e8;background:#1d422e;font-synthesis:none}
*{box-sizing:border-box}
html,body{width:100%;height:100%;margin:0;overflow:hidden}
button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
button{font:inherit;cursor:pointer}
button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:3px solid #ffe2a0;outline-offset:4px}
button{color:inherit}
button,a{user-select:none}
#viewport{position:absolute;inset:0;overflow:hidden;cursor:grab;touch-action:none;outline-offset:-5px;background:#224e36}
#viewport.dragging{cursor:grabbing}
#world{position:absolute;left:0;top:0;width:1536px;height:1024px;transform-origin:0 0;will-change:transform;user-select:none}
#world-art{width:100%;height:100%;display:block;pointer-events:none;-webkit-user-drag:none}
#habitat-labels{position:absolute;inset:0;pointer-events:none}
.habitat-label{position:absolute;transform:translate(-50%,-50%);border:1px solid #fff4cc80;border-radius:20px;background:#234a36df;color:#fff5d7;box-shadow:0 3px 15px #15351c38;font-size:10px;font-weight:700;white-space:nowrap;pointer-events:auto;backdrop-filter:blur(8px)}
.habitat-label:hover{background:#173a2d}
.world-header{position:absolute;top:0;left:0;right:0;justify-content:space-between;padding:26px 28px 70px;pointer-events:none;background:linear-gradient(#0e291c85,#0e291c25 50%,transparent)}
.world-header>*{pointer-events:auto}
.world-brand{display:flex;align-items:center;filter:drop-shadow(0 2px 5px #17312455)}
.brand-emblem{display:grid;place-items:center;font-family:Georgia,serif;font-weight:bold}
.world-brand h1{font-size:21px;margin:1px 0 0;font-family:Georgia,serif;font-weight:normal}
.header-tools{display:flex;align-items:center;gap:9px;padding-top:4px}
.header-tools button,.old-game{border:1px solid #f4e7bd40;background:#1b432edb;backdrop-filter:blur(12px);border-radius:24px;padding:11px 16px;font-size:11px;color:#fff5dc;text-decoration:none;min-height:40px}
.header-tools button[aria-pressed=true]{background:#ead5a5;color:#435337;border-color:#f7e5bc}
.old-game span{margin-left:7px;color:#e7cc94}
.art-badge{position:absolute;top:100px;left:30px;font-size:8px;letter-spacing:1.5px;font-weight:700;background:#163a2dc7;border:1px solid #fff1c52b;border-radius:20px;padding:8px 11px;color:#f9edc7;pointer-events:none;box-shadow:0 2px 12px #163a2d15}
.art-badge>span{width:5px;height:5px;background:#e5c987;border-radius:50%;display:inline-block;margin-right:5px}
.world-controls{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding:60px 28px 24px;background:linear-gradient(transparent,#0e291c35 50%,#0e291c80);pointer-events:none}
.world-controls>*{pointer-events:auto}
.minimap-group{flex-direction:column;align-items:center;gap:10px}
.minimap{position:relative;overflow:hidden;box-shadow:0 5px 25px #1e392644;background:#315e3b;touch-action:none;cursor:crosshair}
.minimap>img{width:100%;height:100%;pointer-events:none;display:block;object-fit:cover;opacity:.8}
.minimap:after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 20px #193b3044;pointer-events:none}
#minimap-window{position:absolute;left:0;top:0;border:1.5px solid #ffefb1;box-shadow:0 0 0 1000px #13372455;pointer-events:none;min-width:3px;min-height:3px}
.minimap-caption{color:#f3e4bbd4;font-weight:650}
.explore-hint{align-self:flex-end;display:flex;align-items:center;gap:8px;padding:12px 18px;margin-bottom:11px;border:1px solid #ffedbf35;border-radius:26px;background:#1c4130d9;backdrop-filter:blur(10px);font-size:10px;color:#f4eacd;pointer-events:none;transition:opacity .8s,translate .8s}
.explore-hint>span:first-child{font-size:19px;color:#e6cc91}
.explore-hint b{font-weight:400;color:#aebc93;margin:0 5px}
.explore-hint.used{opacity:0;translate:0 6px}
.zoom-stack{display:flex;flex-direction:column;align-items:center}
.zoom-stack button{border:1px solid #f3e8c13b;display:grid;place-items:center;background:#214b36eb;backdrop-filter:blur(10px);font-size:25px;border-radius:14px;color:#fff0c9;box-shadow:0 3px 12px #193b3022}
.zoom-stack button:hover{background:#356044}
.zoom-group{border-radius:14px;overflow:hidden;box-shadow:0 3px 20px #193b3033}
.zoom-group button{background:transparent;backdrop-filter:none;color:#4b6240;border:0;border-radius:0;box-shadow:none}
.zoom-group button:hover{background:#e4d7b3}
.zoom-group button+button{border-top:1px solid #c5c49f77}
#reset-view{font-size:25px}
#zoom-level{font-size:9px;color:#f5e6bc;min-width:37px;text-align:center;letter-spacing:.5px}
.habitat-panel{position:absolute;bottom:35px;left:50%;transform:translateX(-50%);width:min(410px,calc(100% - 38px));border:1px solid #e8dbb5;border-radius:22px;background:#fffaeafa;box-shadow:0 10px 65px #183e2a55;color:#304b35;padding:24px 28px;z-index:3}
.habitat-panel .eyebrow{font-size:7px;color:#929575;letter-spacing:1.6px;font-weight:700}
.habitat-panel h2{font-family:Georgia,serif;font-size:25px;font-weight:normal;margin:10px 0}
.habitat-panel p{font-size:12px;color:#7a8669;line-height:1.75;margin:0 0 13px}
.habitat-panel small{font-size:9px;color:#9aa084}
.panel-close{position:absolute;right:12px;top:12px;width:32px;height:32px;background:#eee9d7;color:#71845c;border:0;border-radius:50%;font-size:23px}
#loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:18px;background:#183f2f;transition:opacity .6s;pointer-events:none}
#loading.ready{opacity:0}
.loading-mark{font-family:Georgia,serif;font-size:60px;color:#e9cf92}
#loading p{font-size:12px;color:#c8d0ad;letter-spacing:1px}
#map-error{position:absolute;top:45%;left:15%;right:15%;text-align:center;padding:20px;background:#fff0d7;color:#745b41;border-radius:15px;font-size:13px;line-height:1.8}
body.fullscreen .old-game{display:none}
[hidden]{display:none!important}
@media(max-width:650px){.world-header{padding:calc(18px + env(safe-area-inset-top)) 17px 60px}.world-brand{gap:9px}.brand-emblem{width:38px;height:38px;border-radius:12px;font-size:24px}.world-brand h1{font-size:17px;letter-spacing:-.5px}.world-brand p{font-size:8px;letter-spacing:.5px;margin-top:5px}.header-tools{gap:0;flex-direction:column;align-items:flex-end}.header-tools button{padding:9px 12px;font-size:9px;min-height:35px}.old-game{font-size:8px;background:transparent;border:0;padding:10px 6px;min-height:32px}.art-badge{top:calc(94px + env(safe-area-inset-top));left:18px;font-size:6px;padding:7px 9px;letter-spacing:1px}.world-controls{padding:55px 16px calc(18px + env(safe-area-inset-bottom));gap:10px}.minimap{width:124px;height:83px;border-width:2px;border-radius:9px}.minimap-caption{font-size:5px;letter-spacing:1px;max-width:125px;text-align:center;line-height:1.8}.minimap-group{gap:6px}.explore-hint{position:absolute;bottom:calc(158px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);white-space:nowrap;font-size:8px;padding:9px 13px;margin:0;gap:6px}.explore-hint>span:first-child{font-size:16px}.explore-hint b{margin:0 2px}.zoom-stack{gap:8px}.zoom-stack button{width:43px;height:43px;font-size:23px;border-radius:12px}.zoom-group button{border-radius:0}.zoom-group{border-radius:12px}#zoom-level{font-size:8px}.habitat-panel{bottom:calc(24px + env(safe-area-inset-bottom));padding:24px;max-width:calc(100% - 30px)}.habitat-label{font-size:9px;padding:8px 11px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}}
#hd-viewport{position:absolute;inset:0;overflow:hidden;touch-action:none;cursor:grab;outline-offset:-4px;background:#214631}
#hd-viewport.dragging{cursor:grabbing}
#hd-canvas{position:absolute;inset:0;display:block;width:100%;height:100%;pointer-events:none}
#hd-poster{position:absolute;top:0;left:0;width:3072px;height:2048px;transform-origin:0 0;user-select:none;pointer-events:none}
#hd-labels{position:absolute;inset:0;pointer-events:none}
#hd-labels button{pointer-events:auto;z-index:3}
#hd-mini-window{position:absolute;inset:auto;border:1.5px solid #fff1bd;box-shadow:0 0 0 1000px #12332455;pointer-events:none}
#hd-status{align-self:flex-end;margin-bottom:7px;font-size:10px;letter-spacing:.25px;text-align:center;background:#1d4435e8;color:#f5eacd;padding:11px 17px;border:1px solid #dddfac35;border-radius:25px;max-width:420px;line-height:1.6}
#hd-error{position:absolute;top:45%;left:50%;transform:translateX(-50%);width:min(470px,90%);padding:22px;background:#fff6df;color:#735b3e;border:1px solid #e4c797;border-radius:18px;font-size:13px;line-height:1.8;text-align:center}
@media(max-width:650px){.world-header{display:block}.header-tools{margin-top:13px;flex-direction:row;align-items:center;flex-wrap:wrap;gap:7px}.header-tools button{min-height:32px;font-size:8px;padding:8px 11px}.header-tools .old-game{min-height:30px;padding:8px 5px}.art-badge{display:none}#hd-status{position:absolute;bottom:145px;left:50%;transform:translateX(-50%);max-width:90%;width:max-content;font-size:8px;padding:9px 12px}}
#hd-residents{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
#hd-live3d{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
#hd-care-note{top:98px;max-width:90%;text-align:center}
#hd-care-note:empty{display:none}
.header-tools button:disabled{opacity:.55;cursor:default}
@media(max-width:650px){#hd-care-note{top:175px;width:max-content;font-size:10px}}
.ambient-layer{position:absolute;inset:0;pointer-events:none;user-select:none}
#hd-exhibits{position:absolute;inset:0;pointer-events:none}
#hd-exhibits button{pointer-events:auto;z-index:3;font-family:inherit;font-weight:700;border-radius:14px}
.animal-selected #hd-exhibits{visibility:hidden}
.world-header .sound-control{position:relative;flex-shrink:0;margin-left:auto;pointer-events:auto}
.world-header .sound-control+.zoo-wallet{margin-left:0}
.sound-button{display:grid;place-items:center;width:56px;height:56px;border:0;border-radius:50%;background:#FFF9EC;color:#1E5A45;box-shadow:0 4px 0 #E3D5B0,0 10px 22px rgba(18,58,45,.22);cursor:pointer;transition:transform .08s}
.sound-button:active{transform:translateY(3px);box-shadow:0 1px 0 #E3D5B0,0 6px 14px rgba(18,58,45,.22)}
.sound-button.is-muted{color:#A3301F;background:#FFE6DF;box-shadow:0 4px 0 #F2BFB2,0 10px 22px rgba(18,58,45,.22)}
.sound-control .ic{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.sound-control .ic .d{fill:currentColor;fill-opacity:.22;stroke:none}
.sound-control .ic.small{width:22px;height:22px}
.sound-pop{position:absolute;top:68px;right:0;z-index:30;width:min(300px,calc(100vw - 32px));box-sizing:border-box;padding:14px;border-radius:20px;background:#FFF9EC;color:#123A2D;box-shadow:0 4px 0 #E3D5B0,0 16px 36px rgba(18,58,45,.3);display:flex;flex-direction:column;gap:12px}
.sound-pop[hidden]{display:none}
.sound-volume{display:flex;align-items:center;gap:8px;color:#1E5A45}
.sound-volume input{flex:1;height:44px;margin:0;-webkit-appearance:none;appearance:none;background:transparent;cursor:pointer;--fill:100%}
.sound-volume input::-webkit-slider-runnable-track{height:14px;border-radius:999px;background:linear-gradient(90deg,#3FA7D6 var(--fill),#F3E7C9 var(--fill))}
.sound-volume input::-moz-range-track{height:14px;border-radius:999px;background:#F3E7C9}
.sound-volume input::-moz-range-progress{height:14px;border-radius:999px;background:#3FA7D6}
.sound-volume input::-webkit-slider-thumb{-webkit-appearance:none;width:36px;height:36px;margin-top:-11px;border-radius:50%;background:#fff;border:4px solid #3FA7D6;box-shadow:0 3px 0 #2A7EA6}
.sound-volume input::-moz-range-thumb{width:28px;height:28px;border-radius:50%;background:#fff;border:4px solid #3FA7D6}
.sound-switches{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.sound-switch{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:72px;border:0;border-radius:20px;font:800 14px/1.1 'Baloo 2',Nunito,system-ui,sans-serif;cursor:pointer;background:#3FA7D6;color:#fff;box-shadow:0 4px 0 #2A7EA6;transition:transform .08s}
.sound-switch[aria-pressed="false"]{background:#F3E7C9;color:#8A7B5C;box-shadow:0 4px 0 #E3D5B0}
.sound-switch[aria-pressed="false"] .ic{opacity:.55}
.sound-switch:active{transform:translateY(3px)}
@media (max-width:650px){.world-header .sound-control{position:absolute;right:16px;top:calc(84px + env(safe-area-inset-top))}.sound-button{width:52px;height:52px}}
:root{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--ink:#233f36;--muted:#76857a;--cream:#f8f7ef;--green:#315e4b;--line:#dfe5db}
button{font-weight:600}
svg{width:24px;height:24px;flex-shrink:0;vertical-align:middle}
.world-header{z-index:10;padding:calc(22px + env(safe-area-inset-top)) 26px 55px;align-items:center;gap:20px}
.world-brand{gap:12px}
.brand-emblem{width:50px;height:50px;border-radius:17px;transform:none;background:#f9f5e7;color:#315a44;border:1px solid #fff6;box-shadow:0 4px 18px #0c30292b;font-size:29px}
.world-brand p{font-size:10px;font-weight:750;letter-spacing:2px;margin:0 0 5px;color:#e6edda}
.world-brand h1{font:600 20px/1.2 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;letter-spacing:-.5px}
.zoo-wallet{display:flex;align-items:center;gap:10px;background:#f8f6e9f5;border:1px solid #fff9;border-radius:22px;padding:11px 16px;color:var(--ink);box-shadow:0 6px 24px #0e342522}
.zoo-wallet>svg{width:31px;height:31px}
.zoo-wallet strong{display:block;font-size:21px;letter-spacing:-.5px;font-variant-numeric:tabular-nums}
.zoo-wallet small{display:block;letter-spacing:1.1px;font-weight:750;margin-top:2px;color:#7e8b72}
#zoo-count{border-left:1px solid #d6ddcc;padding-left:13px;margin-left:6px;font-size:11px;color:#7a897a;white-space:nowrap}
.zoo-dock{position:absolute;bottom:calc(21px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:5px;padding:7px;background:#faf9eff0;border:1px solid #ffffffb8;border-radius:26px;box-shadow:0 8px 35px #15392f40;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}
.zoo-dock button{display:flex;align-items:center;justify-content:center;border:0;background:transparent;color:#617b6a;border-radius:19px;font-size:12px;white-space:nowrap}
#zoo-open,.zoo-dock button[aria-pressed=true]{background:#315e4b;color:#fffaf0}
.zoo-dock button:disabled{opacity:.4}
.world-controls{padding-bottom:calc(24px + env(safe-area-inset-bottom));z-index:5}
.minimap{width:145px;height:97px;border:2px solid #f8f5de;border-radius:16px}
.minimap-caption{font-size:7px;letter-spacing:1.4px}
.zoom-stack button{width:44px;height:44px}
.zoom-group{background:#fbf7e8e8;border:1px solid #fff7}
.zoom-stack>#hd-fullscreen,#hd-zoom,#hd-status{display:none}
.zoom-stack{gap:0}
#hd-care-note{position:absolute;z-index:45;top:calc(104px + env(safe-area-inset-top));left:50%;transform:translateX(-50%);padding:13px 20px;background:#fffdf0f5;box-shadow:0 5px 25px #1c3e2f22;border:1px solid #fff8;border-radius:17px;color:#315747;font-size:12px;line-height:1.5;max-width:min(430px,90%)}
#zoo-welcome{position:absolute;z-index:7;top:calc(140px + env(safe-area-inset-top));left:26px;width:270px;background:#f9f8eff5;color:var(--ink);border:1px solid #fff9;border-radius:28px;padding:25px;box-shadow:0 12px 45px #143b2928;backdrop-filter:blur(20px)}
#zoo-welcome small{font-size:8px;letter-spacing:1.6px;color:#89967e;font-weight:750}
.welcome-icon{width:46px;height:46px;border-radius:16px;background:#e4ebdb;display:grid;place-items:center;color:#73966b;margin:20px 0 16px}
.welcome-icon svg{width:26px;height:26px}
#zoo-welcome h2{font-size:26px;font-weight:650;line-height:1.15;letter-spacing:-.9px;margin:0}
#zoo-welcome p{font-size:12px;line-height:1.8;color:#7c8b7b;margin:14px 0 20px}
#zoo-welcome button{width:100%;min-height:50px;border-radius:17px;border:0;background:var(--green);color:#fffbed;font-size:13px;box-shadow:0 4px 10px #315e4b22}
#zoo-scrim{position:absolute;inset:0;z-index:25;background:#102e2745;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
#zoo-panel{position:absolute;z-index:30;right:18px;top:18px;width:425px;background:#f5f6ee;border:1px solid #fffc;border-radius:30px;box-shadow:0 18px 80px #0c332b50;display:flex;flex-direction:column;overflow:hidden;color:var(--ink);animation:sheet-in .25s ease-out}
#zoo-panel>header{display:flex;align-items:center;justify-content:space-between;gap:12px}
.panel-eyebrow{display:block;font-size:8px;font-weight:750;letter-spacing:1.6px;color:#93a08a;margin-bottom:7px}
#zoo-title{font-size:24px;font-weight:650;line-height:1.2;letter-spacing:-.7px;margin:0}
#zoo-close{height:44px;flex-shrink:0;border:0;border-radius:50%;background:#e7ecdf;color:#657b66;font-size:25px}
.zoo-tabs{gap:4px;padding:5px;background:#e7ecdf;margin:0 20px 16px;border-radius:16px}
.zoo-tabs button{flex:1;border:0;border-radius:12px;background:transparent;color:#7d8c76;font-size:12px;padding:8px}
.zoo-tabs button[aria-pressed=true]{background:#fffef6;color:#365b43;box-shadow:0 2px 8px #234b3310}
.zoo-filter{align-items:center;gap:12px;margin:0 24px 15px;font-size:11px;font-weight:600;color:#829079}
.zoo-filter select{min-width:0;flex:1;border:1px solid #dce4d5;border-radius:14px;background:#fdfcf4;color:#506d54;padding:11px;font:inherit;min-height:44px}
#zoo-list{flex:1;overflow:auto;overscroll-behavior:contain;padding:0 18px 22px;scrollbar-width:thin;scrollbar-color:#cbd7bf transparent}
.zoo-animal{border:1px solid #e0e6d7;border-radius:23px;background:#fffef8;padding:15px;margin-bottom:12px;box-shadow:0 2px 4px #48613d04}
.zoo-animal-heading{display:flex;gap:13px;align-items:center}
.zoo-animal-heading img{object-fit:contain;background:#edf1e5;border-radius:19px}
.zoo-animal-heading small{font-size:7px;font-weight:700;letter-spacing:1px;color:#90a080}
.zoo-animal h3{font-size:19px;font-weight:650;letter-spacing:-.45px;margin:7px 0;color:#315341}
.zoo-animal-heading p{font-size:10px;color:#85927e;line-height:1.65;margin:4px 0}
.zoo-animal-heading p svg{width:14px;height:14px}
.zoo-animal-heading p span{margin:0 3px}
.zoo-animal-actions{margin-top:13px;display:flex;flex-wrap:wrap;gap:8px}
.zoo-animal-actions>button,.zoo-empty button{flex:1;display:flex;align-items:center;justify-content:center;gap:7px;min-height:46px;border:1px solid #dbe4d3;border-radius:15px;background:#eaf0e2;color:#4c6c4d;font-size:12px;padding:10px}
.zoo-animal-actions>.adopt-action{background:#315e4b;border-color:#315e4b;color:#fff9e9;font-size:14px}
.zoo-animal-actions button svg{width:20px;height:20px}
.zoo-animal-actions>button:disabled,.individual button:disabled{opacity:.52;cursor:default}
.zoo-animal-actions>.look-habitat{flex-basis:100%;background:transparent;border:0;padding:5px;font-size:10px;color:#86977b}
.look-habitat span{margin-left:4px}
.saving-hint{display:block;flex-basis:100%;font-size:10px;color:#a2ab94;text-align:center}
.individuals{width:100%}
.individual{display:flex;align-items:center;gap:8px;border-top:1px solid #edf0e5;padding:10px 0}
.individual>span{font-size:11px;color:#91a083;flex:1}
.individual b{color:#52734e}
.individual button{display:flex;align-items:center;justify-content:center;gap:6px;border:0;border-radius:13px;background:#e9f0df;color:#4b704b;min-height:44px;padding:9px 12px;font-size:11px}
.individual button svg{width:21px;height:21px}
.individual .move-animal{padding:8px;background:transparent;color:#91a083}
.sale-confirm{width:100%;background:#f7f0dd;padding:12px;border-radius:15px;font-size:11px;line-height:1.7}
.sale-confirm p{margin:0 0 10px}
.sale-confirm button{border:1px solid #dfd4b9;background:#fffcf3;color:#7d7455;border-radius:13px;min-height:44px;padding:8px 14px;margin-right:6px;font-size:11px}
.sale-confirm button:disabled{opacity:.4}
.zoo-animal-actions>.collect-action{background:#f5e6b6;border-color:#e9d79e;color:#8e702a;flex-basis:100%}
.breed-action svg{color:#b27a77}
.zoo-guide{font-size:13px;line-height:1.85;padding:8px 10px;color:#7f917d}
.zoo-guide h3,.zoo-empty h3{font-size:24px;line-height:1.25;letter-spacing:-.6px;font-weight:600;color:#3a604a}
.zoo-guide strong{color:#486e50}
.guide-icon{color:#87a67a;background:#e9f0df;width:60px;height:60px;border-radius:20px;display:grid;place-items:center}
.guide-icon svg{width:29px;height:29px}
.zoo-empty{text-align:center;padding:35px 15px;color:#899b7e;font-size:12px;line-height:1.8}
.zoo-empty>svg{width:54px;height:54px;color:#9fb88d}
.zoo-empty button{margin:23px auto 0;width:100%;background:#315e4b;color:#fff9e9;border:0}
#zoo-save-status{text-align:center;padding:12px 18px calc(12px + env(safe-area-inset-bottom));border-top:1px solid #e2e7d9;color:#9aa88d;font-size:9px;background:#eef1e5}
.bonus-label{border-style:dashed!important;background:#84916edb!important}
#hd-labels button{font-family:inherit;font-size:9px;padding:8px 12px;background:#315b47e8;border:1px solid #f8f6db66;border-radius:14px;font-weight:600}
#zoo-care{position:absolute;inset:0;pointer-events:none;z-index:4}
.animal-care,.exhibit-care{position:absolute;top:0;left:0;pointer-events:auto;touch-action:manipulation;will-change:transform;display:flex;align-items:center;justify-content:center;gap:5px;border:2px solid #fffef2;box-shadow:0 3px 12px #214a3033;color:#5e8050}
.animal-care{width:44px;height:44px;padding:8px;border-radius:16px;background:#fffdf2}
.animal-care:after{content:'';position:absolute;bottom:-6px;width:8px;height:8px;transform:rotate(45deg);background:#fffdf2;border-right:2px solid #fffef2;border-bottom:2px solid #fffef2}
.animal-care>svg{width:26px;height:26px}
.care-check{display:none}
.animal-care[data-mode=eating]{pointer-events:none;border:0;box-shadow:none;background:transparent;width:46px;height:31px;padding:0;margin-left:var(--food-shift);transform-origin:50% 100%}
.animal-care[data-mode=eating]:after{display:none}
.animal-care[data-mode=eating]>svg{filter:drop-shadow(0 3px 2px #1e493a60);width:calc(17px + 19px * var(--bite));height:calc(17px + 14px * var(--bite));animation:nibble .35s infinite alternate ease-in-out}
.exhibit-care{min-width:54px;min-height:44px;border-radius:18px;padding:8px 12px;background:#fff3bf;font-size:14px;color:#956c29}
.exhibit-care[data-mode=focus]{background:#fffdf0;color:#a0785c}
.exhibit-care[data-mode=focus] svg{width:18px;color:#bc8d6f}
.exhibit-care[data-mode=collect]{animation:coin-ready 2.5s infinite ease-in-out}
.exhibit-care strong{font-size:13px;font-variant-numeric:tabular-nums}
button:active:not(:disabled){filter:brightness(.94)}
@keyframes sheet-in{from{opacity:0;translate:0 18px}to{opacity:1;translate:0 0}}
@keyframes nibble{to{rotate:8deg;translate:0 -2px}}
@keyframes coin-ready{50%{box-shadow:0 3px 17px #f0cf6b88}}
@media(max-width:700px){.world-header{padding:calc(16px + env(safe-area-inset-top)) 16px 45px;align-items:flex-start}.brand-emblem{width:38px;height:38px;font-size:23px;border-radius:13px}.world-brand{gap:9px}.world-brand p{font-size:8px;letter-spacing:1.1px;margin-bottom:6px}.world-brand h1{font-size:12px;letter-spacing:-.2px;max-width:150px}.zoo-wallet{border-radius:17px;padding:9px 11px;gap:7px}.zoo-wallet>svg{width:24px;height:24px}.zoo-wallet strong{font-size:18px}.zoo-wallet small{font-size:6px;letter-spacing:.6px}#zoo-count{display:none}.zoo-dock{bottom:calc(16px + env(safe-area-inset-bottom));padding:5px;border-radius:23px;gap:2px}.zoo-dock button{font-size:10px;padding:10px 13px;gap:6px;min-height:48px;border-radius:18px}.zoo-dock svg{width:19px;height:19px}.world-controls{padding:45px 15px calc(94px + env(safe-area-inset-bottom))}.minimap{width:85px;height:57px;border-radius:11px}.minimap-caption{display:none}.zoom-stack button{width:40px;height:40px;font-size:21px}.zoom-group{border-radius:14px}.zoom-stack #hd-fit{display:none}#zoo-welcome{top:auto;bottom:calc(100px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:calc(100% - 32px);max-width:360px;padding:20px 22px;border-radius:26px}.welcome-icon{float:right;margin:0 0 10px 15px;width:44px;height:44px}#zoo-welcome small{font-size:7px;letter-spacing:1.3px}#zoo-welcome h2{font-size:24px;margin-top:12px}#zoo-welcome p{font-size:11px;margin:12px 0 16px;max-width:250px;line-height:1.7}#zoo-welcome button{min-height:48px}#zoo-panel{top:calc(62px + env(safe-area-inset-top));bottom:0;left:0;right:0;width:100%;border-radius:29px 29px 0 0;border-bottom:0}#zoo-panel:before{content:'';width:34px;height:4px;border-radius:3px;background:#d4deca;align-self:center;flex-shrink:0;margin:10px 0 -3px}#zoo-panel>header{padding:20px 22px 16px}#zoo-title{font-size:23px}.zoo-tabs{margin:0 18px 14px}.zoo-filter{margin:0 22px 14px}.zoo-animal{padding:14px}#hd-care-note{top:calc(84px + env(safe-area-inset-top));font-size:11px;min-width:240px;max-width:90%;padding:12px 15px;border-radius:16px}.zoo-animal h3{font-size:18px}.zoo-animal-heading img{width:74px;height:74px}.animal-care{width:44px;height:44px}}
@media(max-height:520px){#zoo-welcome{top:100px;bottom:auto;width:240px;padding:16px}.welcome-icon{display:none}#zoo-welcome h2{font-size:20px}#zoo-welcome p{font-size:10px;margin:8px 0}.world-header{padding-top:12px}.zoo-dock{bottom:8px}#zoo-panel{top:8px}#hd-care-note{top:80px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
.world-header{display:flex}
#zoo-list{overflow-anchor:none}
.animal-ambience{position:absolute;top:0;left:0;pointer-events:none;border-radius:50%;will-change:transform}
.animal-ambience[data-kind=ripple]{border:1px solid #e6ffff;box-shadow:0 0 0 4px #cbf8ff33,0 0 0 8px #ddffff15}
.animal-ambience[data-kind=shadow]{background:#173a2d;filter:blur(2px)}
.animal-care[data-mode=landing]{background:#e8f0dc}
#zoo-shadows{position:absolute;inset:0;z-index:1;pointer-events:none}
#hd-residents{z-index:2}
.zoo-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));flex-shrink:0;margin-bottom:12px}
.zoo-tabs button{min-height:44px}
.feature-intro,.feature-note{font-size:12px;line-height:1.7;color:#758570}
.feature-intro{padding:0 9px 10px}
.feature-intro h3{font-size:22px;color:var(--ink);margin:6px 0}
.feature-note{text-align:center;padding:6px 10px}
.feature-note button{min-height:44px;border:0;background:transparent;color:var(--green);text-decoration:underline}
.keeper-banner{border-radius:23px;background:#315e4b;color:#fff9e9;margin-bottom:16px}
.keeper-banner small{font-size:8px;color:#d6dfbf}
.keeper-banner h3{line-height:1.15;letter-spacing:-.6px}
.keeper-banner p{font-size:12px;color:#e3e9d4}
.keeper-progress{display:flex;gap:10px}
.keeper-progress span{display:grid;place-items:center;width:43px;height:43px;border-radius:15px;background:#ffffff15;color:#adc0a0}
.keeper-progress .done{background:#e8d598;color:#315e4b}
.keeper-task{display:flex;gap:14px;padding:18px 15px;background:#fffef8;border:1px solid var(--line);border-radius:22px;margin-bottom:12px}
.task-symbol{width:43px;height:43px;border-radius:15px;background:#eaf0df;color:#739666;display:grid;place-items:center;flex-shrink:0}
.keeper-task>div:last-child{flex:1;min-width:0}
.keeper-task h3{margin:3px 0 7px;font-size:17px}
.keeper-task p{font-size:12px;line-height:1.7;color:#819075;margin:0 0 12px}
.keeper-task button{width:100%;border:0;background:#e7efdf;color:#315e4b;border-radius:13px;padding:8px 12px;font-size:12px}
.keeper-task.complete .task-symbol{background:#f3e6b7;color:#836b28}
.book-summary{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;align-items:center;padding:5px 6px 17px;font-size:12px;color:var(--green)}
.book-summary small{color:#7f9076;font-size:10px}
.animal-fact{margin:15px 0 0;background:#eef2e4;border-radius:16px;padding:16px;font-size:15px;line-height:1.7;color:#466747}
.garden-art{float:right;width:82px;height:82px;background:#edf1e3;border-radius:23px;display:grid;place-items:center}
.garden-art svg{width:65px;height:65px}
.garden-card>small{font-size:10px;color:#819372}
.garden-card>p{font-size:12px;line-height:1.8;color:#7f8e74;max-width:220px}
.enrichment-prop{position:absolute;top:0;left:0;width:38px;height:30px;pointer-events:none;filter:drop-shadow(0 2px 2px #234a3344);transform-origin:50% 100%}
.enrichment-prop svg{width:100%;height:100%}
.play-heart{position:absolute;top:0;left:0;color:#cb8f76;pointer-events:none;font-size:18px}
@media(max-width:700px){.zoo-dock{width:calc(100% - 24px);max-width:420px;justify-content:space-between}.zoo-dock button{flex:1;flex-direction:column;gap:4px;padding:7px 3px;font-size:9px;min-width:0;min-height:52px}.zoo-dock svg{width:20px;height:20px}.zoo-tabs button{font-size:11px;padding:7px 3px}.zoo-tabs{gap:3px}.keeper-banner{padding:19px}#zoo-panel>header{padding-top:16px;padding-bottom:13px}.keeper-task{padding:15px 12px}}
[hidden]{display:none!important}
.book-summary button{min-height:44px;border:1px solid #dbe4d3;border-radius:12px;padding:8px 13px;background:#fffdf4;color:#5d785e;font-size:11px}
.audio-credits{font-size:11px}
.audio-credits summary{min-height:44px;padding-top:10px;cursor:pointer}
.audio-credits a{color:#315e4b}
.discovery-card .zoo-animal-actions>button[data-do=sound]{flex-basis:100%;background:#f4e8c2;border-color:#eaddb7;color:#866c34}
.zoo-dock{z-index:35}
#zoo-open{background:transparent;color:#617b6a}
.zoo-dock button[aria-pressed=true]{background:#315e4b;color:#fffaf0}
#zoo-panel{bottom:104px;width:min(760px,calc(100% - 36px))}
.family-shortcut{position:absolute;z-index:16;right:24px;display:flex;gap:8px;align-items:center;min-height:56px;padding:10px 16px;background:#faf9ef;border:1px solid #fff;border-radius:20px;color:#315e4b}
.habitat-grid,.animal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0 20px}
.habitat-grid button,.animal-grid button{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:9px;padding:12px 8px 16px;background:#fffef7;border:1px solid #dfe5d8;border-radius:22px;color:#315341;min-width:0}
.habitat-grid img,.animal-grid img{width:100%;height:120px;object-fit:contain;background:#eef2e4;border-radius:16px}
.habitat-grid strong,.animal-grid strong{font-size:16px}
.habitat-grid small,.animal-grid small{font-size:12px;color:#687d60}
.animal-grid span{font-size:12px;color:#315e4b;background:#eaf0de;border-radius:10px;padding:8px}
.animal-grid button{min-height:224px}
#zoo-list>button,.garden-card>button,.zoo-guide>button{min-height:56px;border:1px solid #d8e2cc;background:#edf2e3;color:#315e4b;border-radius:15px;padding:12px 16px;font-size:14px}
.zoo-guide>button{display:block;width:100%;margin:12px 0}
.zoo-animal-actions>button,.individual button,.sale-confirm button,#zoo-close,.book-summary button{min-height:56px}
#zoo-close{width:56px}
.zoo-animal-heading img{width:110px;height:110px}
.zoom-stack button{min-width:56px;min-height:56px}
.zoom-stack #hd-fit{display:block}
#zoo-panel>header{padding:20px 24px}
.zoo-filter{display:none}
.garden-card{margin-top:20px}
.zoo-animal-actions>.look-habitat{min-height:56px}
.minimap-group{display:none}
@media(max-width:700px){#zoo-panel{left:0;right:0;width:100%;top:calc(70px + env(safe-area-inset-top));bottom:calc(91px + env(safe-area-inset-bottom));border-radius:26px}.habitat-grid,.animal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.habitat-grid img,.animal-grid img{height:100px}.habitat-grid strong,.animal-grid strong{font-size:14px}.habitat-grid small,.animal-grid small,.animal-grid span{font-size:11px}.family-shortcut{right:16px;top:100px;padding:10px 12px}.family-shortcut .button-label{font-size:11px}.zoo-dock button{font-size:11px;min-height:56px}#zoo-list{padding:0 14px 20px}.world-controls{padding-bottom:calc(105px + env(safe-area-inset-bottom))}.individual{flex-wrap:wrap}.zoo-animal-heading img{width:90px;height:90px}#zoo-save-status{padding:9px}.zoo-animal h3{font-size:18px}}
.family-shortcut{top:auto;bottom:calc(110px + env(safe-area-inset-bottom))}
.catalog-heading{display:flex;align-items:center;gap:16px;margin:0 0 10px}
.catalog-heading>button{min-height:56px;flex-shrink:0;padding:10px 15px;border:1px solid #d8e2cc;background:#edf2e3;color:#315e4b;border-radius:15px}
.catalog-heading h3{margin:0;font-size:18px}
.catalog-heading .feature-note{text-align:left;margin:4px 0 0;padding:0;font-size:11px}
.animal-grid small svg{width:14px;height:14px;margin-right:4px}
@media(min-width:701px) and (max-height:900px){#zoo-panel>header{padding:12px 22px}#zoo-title{font-size:22px}.animal-grid button{min-height:174px;padding:8px;gap:6px}.animal-grid img{height:80px}.animal-grid{margin-top:6px}.animal-grid strong{font-size:15px}.animal-grid span{padding:5px}.catalog-heading{margin-bottom:6px}.animal-grid small{font-size:11px}}
@media(max-width:700px){.catalog-heading{gap:12px}.catalog-heading h3{font-size:16px}.catalog-heading>button{padding:10px;font-size:12px}.animal-grid button{min-height:212px}}
#animal-card{position:absolute;z-index:22;left:50%;bottom:calc(106px + env(safe-area-inset-bottom));transform:translateX(-50%);width:236px;max-width:calc(100% - 32px);padding:8px;background:#fffdf1f5;border:1px solid #fff;border-radius:25px;box-shadow:0 8px 28px #163c3030;color:#315341;backdrop-filter:blur(15px)}
.friend-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.friend-actions button{display:grid;place-items:center;min-width:56px;min-height:64px;border:1px solid #d9e3cb;border-radius:18px;background:#e9f0dc;color:#315e4b;padding:12px}
.friend-actions svg{width:32px;height:32px}
.friend-actions button:disabled{background:#f0f1e6;color:#7b8972}
.friend-actions [aria-pressed=true]{background:#315e4b;color:#fff}
.friend-actions [data-known=true]{border-color:#d9bd6b}
.friend-actions button:focus-visible{outline:3px solid #ddb75d;outline-offset:2px}
.animal-selected .family-shortcut{display:none}
.animal-hello{position:absolute;top:0;left:0;pointer-events:none;width:56px;height:56px;border:2px solid #fff;background:#315e4bcc;color:#fff;border-radius:50%;opacity:0}
.animal-hello:focus-visible{opacity:1;outline:3px solid #f3d27b;outline-offset:3px}
.play-heart[data-kind=hello]{animation:hello-heart 1.6s ease-out both;color:#c87568;filter:drop-shadow(0 2px 3px #fff)}
.play-heart[data-kind=hello] svg{width:30px;height:30px}
@keyframes hello-heart{0%{opacity:0;margin-top:5px}20%{opacity:1}80%{opacity:1}100%{opacity:0;margin-top:-25px}}
@media(max-width:700px){#animal-card{bottom:calc(96px + env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){.play-heart[data-kind=hello]{animation:none;opacity:1}}
.animal-selected #hd-labels{visibility:hidden}
.sticker-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:12px 0 18px}
.animal-sticker{display:flex;flex-direction:column;align-items:center;gap:7px;min-width:0;min-height:178px;padding:10px 7px;border:1px solid #d6dfcb;border-radius:23px;background:#fffdf3;color:#315341;box-shadow:0 3px 0 #dce3cf}
.animal-sticker strong{font-size:14px;line-height:1.3;min-height:36px;display:flex;align-items:center;justify-content:center}
.animal-sticker small{font-size:11px;color:#718269}
.sticker-picture{display:block;position:relative;width:100%;height:94px;background:#edf2e3;border:3px solid #fff;border-radius:45% 45% 38% 42%;box-shadow:0 2px 5px #37503118}
.sticker-picture img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 2px 1px #ffffff)}
.empty .sticker-picture{background:#f2f2e9;border-style:dashed;border-color:#cbd4bf;box-shadow:none}
.empty .sticker-picture img{filter:grayscale(1);opacity:.38}
.sticker-corner{position:absolute;right:-1px;bottom:-2px;width:25px;height:25px;display:grid;place-items:center;border:2px solid #fffdf4;border-radius:50%;background:#dce9cd;color:#527647}
.sticker-corner svg{width:16px;height:16px}
.empty .sticker-corner{background:#eceee1;color:#819078}
.behavior-badge{display:flex;align-items:center;gap:4px;background:#f2e2ac;color:#806528;font-size:10px;border-radius:20px;padding:4px 8px}
.behavior-badge svg{width:13px;height:13px}
.page-reward,.behavior-stamp,.keeper-sticker{display:flex;gap:14px;align-items:center;padding:16px;border-radius:20px;border:1px dashed #ccd7bf;background:#edf1e4;color:#687e5d;margin:16px 0}
.page-reward>svg,.behavior-stamp>svg,.keeper-sticker>svg{width:44px;height:44px;flex-shrink:0}
.page-reward strong,.behavior-stamp strong,.keeper-sticker strong{font-size:14px}
.page-reward p,.behavior-stamp p,.keeper-sticker p{font-size:12px;line-height:1.6;margin:6px 0 0}
.page-reward.unlocked,.behavior-stamp.earned,.keeper-sticker.earned{background:#fbefc8;border:1px solid #e2c878;color:#7e662d}
.page-reward:not(.unlocked)>svg,.keeper-sticker:not(.earned)>svg{filter:grayscale(1);opacity:.5}
.big-sticker{position:relative;width:180px;height:180px;margin:8px auto 15px}
.big-sticker>svg{position:absolute;inset:0;width:100%;height:100%;filter:drop-shadow(0 3px 1px #bfac6c50)}
.big-sticker>img{position:relative;width:100%;height:100%;object-fit:contain;padding:15px;box-sizing:border-box;filter:drop-shadow(0 2px 2px #ffffff)}
.sticker-detail{padding:16px;border-radius:25px;background:#fffdf5;border:1px solid #dfe5d7;text-align:center}
.sticker-detail h3{font-size:25px;margin:8px 0 12px}
.sticker-detail .animal-fact{font-size:16px;line-height:1.65;color:#4d694e}
.sticker-food{font-size:12px;color:#738568}
.sticker-food svg{width:20px;height:20px}
.sticker-detail .zoo-animal-actions{margin:18px 0}
.sticker-detail .zoo-animal-actions button{min-height:56px;flex-basis:40%;font-size:13px}
.sticker-detail .behavior-stamp{text-align:left}
.book-habitat.page-complete{border-color:#d9b85b;background:#fff6d9}
.keeper-task button{min-height:56px}
#hd-labels .habitat-label[data-complete=true]{background:#efcf7c;color:#674f24;border:2px solid #fff2be}
.habitat-award{position:absolute;z-index:3;pointer-events:none;width:36px;height:36px;transform:translate(-50%,-80%);filter:drop-shadow(0 2px 2px #34502c66)}
.habitat-award svg{width:100%;height:100%}
.animal-selected .habitat-award{visibility:hidden}
@media(max-width:700px){.sticker-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.animal-sticker{min-height:166px;padding:10px 8px}.sticker-picture{height:90px}.animal-sticker strong{font-size:14px}.page-reward{padding:13px}.sticker-detail{padding:14px}.big-sticker{width:150px;height:150px}}
.keeper-moments{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.keeper-moments .keeper-task{display:flex;flex-direction:column;align-items:center;padding:13px 8px;margin:0;gap:9px;text-align:center}
.keeper-moments .keeper-task>div:last-child{display:flex;flex-direction:column;width:100%}
.keeper-moments h3{font-size:14px;line-height:1.35;min-height:38px;display:flex;align-items:center;justify-content:center;margin:0 0 6px}
.keeper-moments p{font-size:11px;line-height:1.5;flex:1;margin:0 0 12px}
.keeper-moments button{font-size:12px;padding:8px 5px;min-height:56px}
.keeper-moments .task-symbol{width:44px;height:44px}
.keeper-banner{padding:18px}
.keeper-banner h3{margin:9px 0;font-size:25px}
.keeper-banner p{line-height:1.6;margin:9px 0}
.keeper-progress{margin-top:12px}
.keeper-banner small{letter-spacing:1.1px}
.sticker-picture{overflow:visible}
.sticker-picture img{transform:scale(1.5)}
.snack-item{position:absolute;pointer-events:none;transform-origin:center bottom}
.snack-food{position:absolute;inset:0;display:block;transform:scale(var(--food-left,1));transform-origin:50% 85%;filter:drop-shadow(0 1px 1px #ffffff80)}
.snack-food svg{width:100%;height:100%}
.snack-shadow{position:absolute;left:8%;right:8%;bottom:2%;height:20%;border-radius:50%;background:#243f3038;filter:blur(1px)}
.snack-item[data-phase=eating] .snack-food{animation:snack-bite .45s ease-in-out infinite alternate}
.animal-hearing{position:absolute;pointer-events:none;color:#315e4b;background:#fff9dfdc;border:2px solid #fff;border-radius:50%;width:36px;height:36px;display:grid;place-items:center;animation:hear-response .75s ease-in-out infinite alternate;box-shadow:0 2px 9px #183d3020}
.animal-hearing svg{width:24px;height:24px}
@keyframes snack-bite{to{rotate:7deg}}
@keyframes hear-response{to{opacity:.65;filter:drop-shadow(0 0 7px #fff4bd)}}
#zoo-count{display:none!important}
.zoo-wallet{font-family:inherit;min-height:56px}
.zoo-wallet small{font-size:7px}
.zoo-dock button{flex-direction:column;gap:4px;min-width:68px;min-height:66px;padding:8px 12px}
.zoo-dock svg{width:30px;height:30px}
.pr-nav-word{font-size:10px}
.child-view .panel-eyebrow{display:none}
.child-view #zoo-panel>header{padding:10px 18px}
.child-view #zoo-title{font-size:22px}
.child-view #zoo-save-status{font-size:0;padding:4px}
.child-view #zoo-save-status:before{content:'✓';font-size:15px;color:#658260}
.pr-mode .feature-note,.pr-mode .feature-intro{display:none}
.pr-mode button{touch-action:manipulation}
.pr-mode .pr-action{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:64px;min-height:72px;padding:9px 12px;border:1px solid #d6e1ca;border-radius:20px;background:#edf2e1;color:#315e4b;font-family:inherit}
.pr-mode .pr-action:disabled{background:#eff0e8;border-color:#dce1d4;color:#82917b;opacity:.75}
.pr-mode .pr-symbol{display:grid;place-items:center;background:none;padding:0}
.pr-mode .pr-symbol>svg{width:36px;height:36px}
.pr-mode .pr-caption{font-size:14px;background:none;padding:0;line-height:1.2}
.pr-pair{display:flex;align-items:center;gap:4px}
.pr-pair svg{width:28px;height:28px}
.pr-heading{display:flex;gap:12px;align-items:center;margin:0 0 10px}
.pr-heading h3{font-size:20px;margin:0;line-height:1.2}
.pr-heading .pr-action{width:56px;min-width:56px;min-height:56px;padding:10px;flex-shrink:0}
.pr-heading .pr-action svg{width:28px;height:28px}
.pr-intro{display:flex;align-items:center;gap:10px;margin:0 0 12px}
.pr-intro>svg{width:38px;height:38px}
.pr-intro h3{font-size:20px;margin:0}
.pr-mode .habitat-grid,.pr-mode .animal-grid{margin:8px 0 16px;gap:12px}
.pr-mode .pr-portrait{position:relative;display:block;width:100%;height:110px;background:#edf2e3;padding:0;border-radius:18px}
.pr-mode .pr-portrait img{width:100%;height:100%;object-fit:contain;background:none;border-radius:18px}
.pr-mode .pr-habitats button,.pr-mode .pr-animals button{position:relative;gap:8px;min-height:164px;padding:9px 8px 12px;justify-content:flex-start}
.pr-mode .pr-habitats strong,.pr-mode .pr-animals strong{font-size:14px;line-height:1.25;text-align:center}
.pr-mode .pr-animals strong{font-size:13px;min-height:32px;display:flex;align-items:center;justify-content:center}
.pr-mode .pr-animals .pr-portrait{height:88px}
.pr-mode .pr-animals button{min-height:150px;gap:6px}
.pr-mode .pr-corner,.pr-mode .pr-voice{position:absolute;bottom:6px;display:grid;place-items:center;padding:3px;border-radius:50%;background:#fffdf2;border:1px solid #fff;box-shadow:0 1px 4px #314f3420}
.pr-mode .pr-corner{right:6px;width:24px;height:24px}
.pr-mode .pr-corner svg{width:21px;height:21px}
.pr-mode .pr-voice{left:6px;width:20px;height:20px;color:#65846b}
.pr-mode .pr-voice svg{width:15px;height:15px}
.pr-mode .pr-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:12px 0}
.pr-mode .pr-actions>.pr-action{flex:1;min-width:68px;min-height:76px}
.pr-mode .pr-actions>[data-do=buy]:not(:disabled){background:#315e4b;color:#fffbea}
.pr-mode .pr-detail{padding:14px;border-radius:25px;background:#fffdf6;border:1px solid #dce4d1;text-align:center}
.pr-mode .pr-detail h3{font-size:24px;line-height:1.2;margin:10px 0}
.pr-mode .pr-hero{display:block;position:relative;margin:0 auto;width:100%;max-width:270px;padding:0;border:1px solid #dfe6d4;border-radius:22px;background:#edf2e3;min-height:140px}
.pr-mode .pr-hero img{width:100%;height:140px;object-fit:contain}
.pr-mode .pr-food>.pr-action{display:inline-flex;flex-direction:row;min-height:56px;gap:8px;margin:0 auto;padding:6px 14px;background:#f0f3e9}
.pr-mode .pr-food .pr-symbol>svg{width:29px;height:29px}
.pr-mode .pr-food .pr-caption{font-size:13px}
.pr-mode .pr-individuals{margin:14px 0}
.pr-mode .individual{display:flex;flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;border-radius:19px}
.pr-mode .individual .pr-action{min-width:76px;min-height:60px}
.pr-friend{display:flex;align-items:center;gap:6px}
.pr-friend img{width:56px;height:56px;object-fit:contain}
.pr-friend>svg{width:26px;height:26px}
.pr-mode .pr-garden{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:14px 0;padding:12px 16px;border:1px solid #dae4cf;border-radius:22px;background:#f4f6ec}
.pr-mode .pr-garden h3{font-size:16px;margin:0}
.pr-mode .pr-garden>.pr-action{min-width:90px}
.pr-mode .sticker-grid{gap:12px}
.pr-mode .animal-sticker{min-height:176px;padding:9px}
.pr-mode .animal-sticker strong{font-size:13px;line-height:1.25;min-height:32px}
.pr-mode .sticker-picture{height:110px}
.pr-mode .behavior-badge{padding:5px}
.pr-mode .behavior-badge svg{width:21px;height:21px}
.pr-mode .pr-detail .animal-fact{font-size:14px;line-height:1.5;margin:12px 0}
.pr-mode .pr-reward{display:block;padding:6px;margin:16px 0}
.pr-mode .pr-reward>.pr-action{flex-direction:row;width:100%;gap:14px;border:0;background:transparent}
.pr-mode .pr-reward .pr-symbol>svg{width:48px;height:48px}
.pr-mode .pr-reward .pr-caption{font-size:17px}
.pr-mode .pr-banner{margin:0 0 16px;padding:8px}
.pr-mode .pr-banner .pr-action{flex-direction:row;width:100%;background:transparent;border:0;gap:16px}
.pr-mode .pr-banner .pr-symbol>svg{width:64px;height:64px}
.pr-mode .pr-banner .pr-caption{font-size:24px;font-weight:650}
.pr-mode .pr-moments{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.pr-mode .pr-moments .keeper-task{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:154px;padding:15px 8px;border-radius:23px;border:1px solid #d8e2cc;background:#fffdf3;color:#315e4b}
.pr-mode .pr-moments .keeper-task.complete{background:#eef2db;border-color:#c6d39d}
.pr-mode .keeper-task>strong{font-size:14px}
.pr-moment-art{position:relative;display:grid;place-items:center;width:64px;height:64px}
.pr-moment-art>svg{width:58px;height:58px}
.pr-done{position:absolute;right:-5px;top:-6px;width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:#315e4b;color:#fff}
.pr-done svg{width:18px;height:18px}
.pr-mode .keeper-task>.pr-voice{top:7px;right:7px;left:auto;bottom:auto}
.parent-zoo-details{padding:12px;background:#edf2e2;border-radius:18px}
.parent-zoo-details p{font-size:13px;line-height:1.5}
.family-shortcut svg{width:32px;height:32px}
.family-shortcut .button-label{font-size:12px}
.habitat-label{display:flex;align-items:center;justify-content:center;gap:5px;min-height:56px;min-width:80px;padding:8px 11px!important}
.habitat-label>svg,.pr-map-art svg{width:30px;height:30px}
.habitat-label>span{font-size:10px}
.pr-welcome-voice{position:absolute;top:14px;right:14px;width:56px!important;min-height:56px!important;border-radius:50%!important;font-size:25px!important;padding:6px!important}
#zoo-welcome #zoo-first{display:flex;align-items:center;justify-content:center;gap:10px;min-height:64px}
#zoo-first svg{width:34px;height:34px}
#zoo-welcome h2{padding-right:30px}
#hd-care-note{pointer-events:auto}
#hd-care-note>button{display:flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:center}
#hd-care-note>button>svg{width:28px;height:28px}
#animal-card{bottom:calc(120px + env(safe-area-inset-bottom))}
@media(max-width:700px){.zoo-dock{padding:5px;gap:1px}.zoo-dock button{min-width:68px;min-height:66px;padding:7px 10px}.pr-mode .pr-habitats .pr-portrait{height:100px}.pr-mode .pr-habitats strong{font-size:13px}.pr-mode .pr-moments .keeper-task{min-height:145px}.pr-mode .keeper-task>strong{font-size:12px}#animal-card{bottom:calc(108px + env(safe-area-inset-bottom))}.family-shortcut{min-height:60px}#hd-care-note{padding:6px 12px}}
.pr-mode .pr-banner .pr-action{color:#fff9e9}
@media(max-width:700px){body:has(#zoo-welcome:not([hidden])) .family-shortcut{bottom:calc(322px + env(safe-area-inset-bottom))}}
.world-header .world-brand{flex:0 1 216px;min-width:0;pointer-events:none;gap:0}
.world-brand .zoo-logo{width:216px;max-width:100%;margin:0;font-size:0;line-height:0;letter-spacing:normal}
.zoo-logo img{display:block;width:100%;height:auto;user-select:none}
.world-header .zoo-wallet{flex-shrink:0}
@media(max-width:700px){.world-header{gap:12px}.world-header .world-brand{flex-basis:184px}.world-brand .zoo-logo{width:184px;max-width:100%}}
.uhoh-shortcut{top:auto;bottom:calc(184px + env(safe-area-inset-bottom));background:#fff3d6;color:#9a3f17}
.uhoh-shortcut[hidden]{display:none}
.uhoh-shortcut:disabled{opacity:.55}
.uhoh-mark{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#ff8a3d;color:#fff;font-weight:900;font-size:19px}
@keyframes page-in{from{opacity:0;transform:translateX(18px)}to{opacity:1;transform:none}}
.page-in{animation:page-in .22s ease-out}
.zoo-dock button,.family-shortcut,#animal-card button,#zoo-panel button{transition:transform .12s ease-out}
.zoo-dock button:active,.family-shortcut:active,#animal-card button:active,#zoo-panel button:active{transform:scale(.93)}
.petting-label{background:#fff0f3!important;color:#b0425c!important;border:2px solid #fff!important}
#petting-zoo{position:fixed;inset:0;z-index:60;background:#a9d277;overflow:hidden;touch-action:manipulation}
#petting-zoo[hidden]{display:none}
#petting-zoo .pz-canvas{position:absolute;inset:0;width:100%;height:100%}
#petting-zoo .pz-friends{position:absolute;inset:0;pointer-events:none}
#petting-zoo .pz-friend{position:absolute;pointer-events:auto;background:transparent;border:0;border-radius:24px;cursor:pointer;padding:0}
#petting-zoo .pz-friend:focus-visible{outline:4px solid #ffd34d}
#petting-zoo .pz-back{position:absolute;left:calc(16px + env(safe-area-inset-left));top:calc(16px + env(safe-area-inset-top));width:64px;height:64px;border-radius:50%;border:2px solid #fff;background:#faf9ef;color:#315e4b;font-size:30px;font-weight:800;box-shadow:0 6px 20px #0c332b30}
#petting-zoo .pz-title{position:absolute;left:50%;top:calc(18px + env(safe-area-inset-top));transform:translateX(-50%);padding:10px 22px;border-radius:999px;background:#fff0f3;color:#b0425c;font-weight:800;font-size:20px;border:2px solid #fff;box-shadow:0 6px 20px #0c332b25}
#petting-zoo .pz-hint{position:absolute;left:50%;bottom:calc(18px + env(safe-area-inset-bottom));transform:translateX(-50%);margin:0;padding:10px 18px;border-radius:999px;background:#fffdf1e6;color:#315e4b;font-weight:700;font-size:16px;white-space:nowrap}
#petting-zoo .pz-hint:empty{display:none}
#petting-zoo .pz-empty{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(420px,calc(100% - 48px));padding:24px;border-radius:28px;background:#fffdf1;text-align:center;color:#315e4b;font-weight:700;font-size:18px;box-shadow:0 12px 40px #0c332b40}
#petting-zoo .pz-empty button{min-height:56px;padding:10px 22px;border-radius:20px;border:0;background:#315e4b;color:#fff;font-weight:800;font-size:17px}
#petting-zoo button:active{transform:scale(.93)}
body.petting-open .zoo-dock,body.petting-open #animal-card{visibility:hidden}

/* Phase 5 (Nov 1, 2026): Petting Zoo boy/girl choice: two face buttons, top right. */
#petting-zoo .pz-kids{position:absolute;right:calc(16px + env(safe-area-inset-right));top:calc(16px + env(safe-area-inset-top));display:flex;gap:12px}
#petting-zoo .pz-kid{width:68px;height:68px;padding:0;border-radius:50%;border:4px solid var(--z-cream,#faf9ef);background:var(--z-cream,#faf9ef);overflow:hidden;box-shadow:0 5px 0 var(--z-cream-lip,#e6dcc0),0 10px 22px rgba(18,58,45,.25);opacity:.7;transition:transform .15s,opacity .15s}
#petting-zoo .pz-kid img{width:100%;height:100%;object-fit:cover;display:block}
#petting-zoo .pz-kid[aria-pressed=true]{opacity:1;border-color:var(--z-coral,#e85a44);transform:scale(1.08)}
#petting-zoo .pz-kid:focus-visible{outline:4px solid #ffd34d;outline-offset:3px}
@media(max-width:620px){#petting-zoo .pz-kid{width:56px;height:56px}#petting-zoo .pz-kids{gap:8px;right:auto;left:calc(16px + env(safe-area-inset-left));top:calc(96px + env(safe-area-inset-top));flex-direction:column}}
/* Phase 5 item 3 (Nov 1, 2026): Petting Zoo snack bucket (bottom left) and 'new friends' (bottom right). */
#petting-zoo .pz-snack,#petting-zoo .pz-swap{position:absolute;bottom:calc(16px + env(safe-area-inset-bottom));width:76px;height:76px;padding:0;border-radius:50%;border:0;display:grid;place-items:center;background:var(--z-cream,#faf9ef);color:var(--z-forest,#315e4b);box-shadow:0 5px 0 var(--z-cream-lip,#e3d5b0),0 10px 22px rgba(18,58,45,.25)}
#petting-zoo .pz-snack{left:calc(16px + env(safe-area-inset-left))}
#petting-zoo .pz-swap{right:calc(16px + env(safe-area-inset-right))}
#petting-zoo .pz-snack svg,#petting-zoo .pz-swap svg{width:44px;height:44px}
#petting-zoo .pz-snack[aria-pressed=true]{background:#fff0d6;box-shadow:0 0 0 5px var(--z-coral,#e8573f),0 10px 22px rgba(18,58,45,.25)}
#petting-zoo .pz-snack[hidden],#petting-zoo .pz-swap[hidden]{display:none}
@media(max-width:620px){#petting-zoo .pz-snack,#petting-zoo .pz-swap{width:64px;height:64px;bottom:calc(84px + env(safe-area-inset-bottom))}}
/* Map v4: tags for areas that open when their animals arrive. */
.soon-label{border-style:dashed!important;opacity:.92}
.soon-label>svg{opacity:.85}
/* Phase 5 second homes (Nov 2, 2026): Bird Aviary and Ocean & Aquarium cards and the 20,000-coin unlock page. */
.pr-mode .pr-habitats .pr-area{background:linear-gradient(#fffdf2,#f3f8ec)}
.pr-mode .pr-habitats .pr-area.locked{border-style:dashed}
.pr-mode .pr-area.locked .pr-portrait img{filter:saturate(.55) brightness(.96)}
.pr-mode .pr-area-price{display:flex;align-items:center;justify-content:center;gap:4px;font-weight:800;font-size:13px;color:#7a5a12}
.pr-mode .pr-area-price svg{width:18px;height:18px}
.pr-mode .pr-area-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:6px 0 14px}
.pr-mode .pr-area-friend{display:block;height:96px;padding:4px;border-radius:18px;background:#edf2e3}
.pr-mode .pr-area-friend img{width:100%;height:100%;object-fit:contain}
.pr-mode .pr-unlock{justify-content:center}

/* Phase 5 mini-games (Nov 2, 2026): the Games room (games-room.js) and the shared game pieces from
   previews/mini-games/mg.css, scoped under #games-room. */
#games-room{position:fixed;inset:0;z-index:60;display:flex;flex-direction:column;background:radial-gradient(circle at 20% 0,#fff6d8,transparent 60%),var(--z-cream);touch-action:manipulation;-webkit-user-select:none;user-select:none;overscroll-behavior:none}
#games-room[hidden],#games-room [hidden]{display:none!important}
#games-room *{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
body.games-open .zoo-dock,body.games-open #animal-card{visibility:hidden}
#games-room .gr-menu{flex:1;overflow:auto;padding:calc(12px + env(safe-area-inset-top)) 16px calc(24px + env(safe-area-inset-bottom))}
#games-room .gr-head{display:flex;align-items:center;gap:12px;max-width:900px;margin:0 auto 18px}
#games-room .gr-head h2{flex:1;margin:0;text-align:center;font-family:var(--z-head);font-size:38px;color:var(--z-forest)}
#games-room .gr-back{width:58px;height:58px;border-radius:50%;border:0;background:var(--z-sand);color:var(--z-forest);box-shadow:0 4px 0 var(--z-cream-lip);display:grid;place-items:center;cursor:pointer}
#games-room .gr-back svg{width:30px;height:30px}
#games-room .gr-coins{display:flex;align-items:center;gap:6px;min-width:58px;padding:8px 14px 8px 8px;border-radius:999px;background:#fff;box-shadow:0 3px 0 var(--z-cream-lip);font-family:var(--z-head);font-size:20px;font-weight:800;color:#7a5a12}
#games-room .gr-coins svg{width:28px;height:28px}
#games-room .gr-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;max-width:900px;margin:0 auto}
#games-room .gr-tile{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 12px 16px;border:0;border-radius:26px;background:#fff;box-shadow:0 6px 0 var(--z-cream-lip),0 10px 20px #123a2d1a;color:var(--z-deep);font-size:20px;font-family:var(--z-head);cursor:pointer}
#games-room .gr-tile:active{transform:translateY(4px);box-shadow:0 2px 0 var(--z-cream-lip)}
#games-room .gr-art{position:relative;display:block;width:100%;aspect-ratio:1.25;border-radius:20px;background:#edf2e3}
#games-room .gr-art img{width:100%;height:100%;object-fit:contain}
#games-room .gr-sym{position:absolute;right:8px;bottom:8px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--z-sun);color:var(--z-deep);box-shadow:0 3px 0 var(--z-sun-lip)}
#games-room .gr-sym svg{width:26px;height:26px}
#games-room .gr-game{flex:1;display:flex;flex-direction:column;min-height:0;padding-bottom:env(safe-area-inset-bottom)}
#games-room .mg-bar{display:flex;align-items:center;gap:10px;padding:calc(8px + env(safe-area-inset-top)) 12px 8px;background:var(--z-cream);z-index:5;box-shadow:0 2px 0 var(--z-line)}
#games-room .mg-bar h2{flex:1;margin:0;font-family:var(--z-head);font-size:24px;color:var(--z-forest);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#games-room .mg-round{width:54px;height:54px;border-radius:50%;border:0;background:var(--z-sand);color:var(--z-forest);box-shadow:0 4px 0 var(--z-cream-lip);display:grid;place-items:center;cursor:pointer}
#games-room .mg-round svg{width:28px;height:28px}
#games-room .mg-stars{display:flex;align-items:center;gap:4px;padding:6px 12px;border-radius:999px;background:#fff;box-shadow:0 3px 0 var(--z-cream-lip);font-family:var(--z-head);font-size:22px}
#games-room .mg-stars svg{width:26px;height:26px}#games-room .mg-stars.bump{animation:mgBump .45s}
@keyframes mgBump{40%{transform:scale(1.25)}}
#games-room .mg-stage{position:relative;flex:1;min-height:0;overflow:hidden;touch-action:none}
#games-room .mg-big{min-width:84px;height:84px;border-radius:28px;border:0;background:var(--z-leaf);color:#fff;box-shadow:0 6px 0 var(--z-leaf-lip);display:grid;place-items:center;cursor:pointer;padding:0 16px;font-size:22px}
#games-room .mg-big svg{width:44px;height:44px}#games-room .mg-big.alt{background:var(--z-sand);color:var(--z-forest);box-shadow:0 6px 0 var(--z-cream-lip)}
#games-room .mg-big.sun{background:var(--z-sun);color:var(--z-deep);box-shadow:0 6px 0 var(--z-sun-lip)}#games-room .mg-big.sky{background:var(--z-sky);box-shadow:0 6px 0 var(--z-sky-lip)}#games-room .mg-big.coral{background:var(--z-coral);box-shadow:0 6px 0 var(--z-coral-lip)}
#games-room .mg-big:active,#games-room .mg-round:active{transform:translateY(4px);box-shadow:none}
#games-room .mg-big[aria-pressed="true"]{outline:5px solid #fff;outline-offset:-9px}
#games-room .mg-row{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}
#games-room .mg-celebrate{position:absolute;inset:0;display:grid;place-items:center;background:#123a2d55;z-index:200;animation:mgFade .3s}
#games-room .mg-card{width:min(88%,420px);padding:22px;border-radius:30px;background:var(--z-cream);text-align:center;box-shadow:0 10px 0 var(--z-cream-lip),var(--z-shadow);animation:mgPop .45s cubic-bezier(.2,1.6,.4,1)}
#games-room .mg-card h3{font-family:var(--z-head);font-size:30px;margin:6px 0;color:var(--z-forest)}
#games-room .mg-card img{width:160px;height:140px;object-fit:contain}
#games-room .mg-pics{display:flex;justify-content:center;flex-wrap:wrap;gap:4px}#games-room .mg-pics img{width:84px;height:74px}
#games-room .mg-coins{display:inline-flex;align-items:center;gap:6px;margin:4px 0 16px;padding:6px 16px;border-radius:999px;background:#fff;font-family:var(--z-head);font-size:26px;font-weight:800;color:#7a5a12}
#games-room .mg-coins svg{width:30px;height:30px}
@keyframes mgFade{from{opacity:0}}@keyframes mgPop{from{transform:scale(.6);opacity:0}}
#games-room .mg-burst{position:absolute;width:0;height:0;pointer-events:none;z-index:30}
#games-room .mg-bit{position:absolute;left:-7px;top:-7px;width:14px;height:14px;animation:mgBit .95s ease-out forwards}
#games-room .mg-bit.star{background:var(--z-sun);clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%)}
#games-room .mg-bit.heart{background:var(--z-coral);clip-path:path('M7 13C-3 6 2-2 7 3c5-5 10 3 0 10z')}
#games-room .mg-bit.bubble{border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,#bfe6f7 45%,#7cc8ea80);width:16px;height:16px}
#games-room .mg-bit.confetti{width:10px;height:16px;border-radius:3px}
#games-room .mg-bit.confetti:nth-child(4n){background:var(--z-coral)}#games-room .mg-bit.confetti:nth-child(4n+1){background:var(--z-sun)}#games-room .mg-bit.confetti:nth-child(4n+2){background:var(--z-sky)}#games-room .mg-bit.confetti:nth-child(4n+3){background:var(--z-leaf)}
@keyframes mgBit{to{transform:translate(var(--dx),var(--dy)) rotate(260deg);opacity:0}}
#games-room .mg-prompt{position:absolute;left:50%;top:12px;transform:translateX(-50%);display:flex;align-items:center;gap:10px;padding:8px 18px 8px 8px;border-radius:999px;background:#fff;box-shadow:0 4px 0 var(--z-cream-lip),0 8px 16px #123a2d22;z-index:6;font-family:var(--z-head);font-size:22px;font-weight:800;white-space:nowrap}
#games-room .mg-prompt img{width:64px;height:56px;object-fit:contain;border-radius:16px;background:#edf2e3}
#games-room .mg-prompt button{border:0;background:none;padding:0;display:flex;align-items:center;gap:10px;font:inherit;color:inherit}
#games-room .mg-wiggle{animation:mgWiggle .5s}@keyframes mgWiggle{20%{transform:rotate(-8deg)}40%{transform:rotate(7deg)}60%{transform:rotate(-5deg)}80%{transform:rotate(3deg)}}
#games-room .mg-hop{animation:mgHop .6s}@keyframes mgHop{40%{transform:translateY(-22%) scale(1.06)}}
#games-room .mg-choose{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:16px}
#games-room .mg-choose h3{font-family:var(--z-head);font-size:28px;margin:0;color:var(--z-forest)}
#games-room .mg-choose .mg-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;width:min(100%,520px)}
#games-room .mg-pick{min-width:0;border:0;border-radius:24px;background:#fff;box-shadow:0 6px 0 var(--z-cream-lip);padding:8px;aspect-ratio:1.15;cursor:pointer}
#games-room .mg-pick img{width:100%;height:100%;object-fit:contain}
#games-room .mg-pick:active{transform:translateY(4px);box-shadow:none}
#games-room .mg-card>img{width:min(240px,60vw);height:180px}
@media (min-aspect-ratio:1/1){#games-room .mg-choose .mg-options{grid-template-columns:repeat(3,minmax(0,1fr));width:min(100%,760px)}#games-room .mg-choose{gap:12px}}
