/* ---- /performance-v182/all-styles.css?v=182 ---- */
/* source: app.css */
:root{--ink:#354e59;--paper:#fff9ed;--pink:#ffb7a8;--peach:#ffd6b7;--yellow:#f8d96b;--mint:#a9ddc7;--sky:#a8c9e8;--purple:#d3c0e6;--rose:#f7dfe1;--outline:#53616b;--font:"Chalkboard SE","Marker Felt","Comic Sans MS","Trebuchet MS",system-ui,sans-serif}
*{box-sizing:border-box}html{height:100%;background:#e5efec}body{margin:0;min-height:100%;font-family:var(--font);color:var(--ink);-webkit-tap-highlight-color:transparent;overflow-x:hidden}button{font-family:inherit;cursor:pointer;touch-action:manipulation}button:focus-visible{outline:4px solid #718ed9;outline-offset:3px}button:disabled{cursor:default}svg{overflow:visible}body:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 10% 16%,#fff7e9 0,transparent 36%),radial-gradient(circle at 90% 88%,#d5e9ee 0,transparent 48%)}.device{position:relative;isolation:isolate;min-height:100dvh;overflow:hidden;background-color:var(--paper);background-image:radial-gradient(#7e7d6f22 .65px,transparent 1px);background-size:8px 8px;display:flex;flex-direction:column}.device:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;box-shadow:inset 0 0 80px #ffcfa323}.app-header{height:auto;min-height:82px;padding:calc(env(safe-area-inset-top,0px) + 14px) 19px 10px;display:flex;align-items:center;justify-content:space-between;gap:7px;position:relative;z-index:5}.brand{display:flex;align-items:center;gap:8px;white-space:nowrap}.brand-mark{width:38px;height:38px;flex-shrink:0}.brand-name{font-size:clamp(22px,6vw,29px);letter-spacing:-1.2px;font-weight:900;transform:rotate(-2deg);line-height:1}.small-caption{font:700 10px var(--font);letter-spacing:1.5px;color:#758e88;text-transform:uppercase;display:block;margin-top:6px}.header-tools{display:flex;align-items:center;gap:8px}.icon-button{display:grid;place-items:center;flex-shrink:0;background:#ffffffbf;color:var(--ink);border:2.5px solid #5a697065;border-radius:18px;width:46px;height:46px;box-shadow:1px 3px 0 #53616b1c}.icon-button svg{width:23px;height:23px}.main-content{flex:1;width:100%;display:flex;flex-direction:column;align-items:center;position:relative;padding:10px 17px max(calc(env(safe-area-inset-bottom,0px) + 18px),20px)}.corner-doodle{position:absolute;pointer-events:none;width:70px;opacity:.8;z-index:-1}.corner-doodle.left{top:18%;left:-25px;transform:rotate(-19deg)}.corner-doodle.right{top:28%;right:-30px;transform:rotate(22deg)}.intro-content{justify-content:center;gap:10px;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 25px)}.intro-scene{position:relative;width:min(90%,390px);height:270px;display:grid;place-items:center;animation:floatUp 4s ease-in-out infinite}.intro-scene svg{width:100%;height:100%}.welcome-title{text-align:center;font-size:clamp(38px,11vw,54px);letter-spacing:-2px;line-height:1.05;margin:0 0 4px;color:#375761;text-shadow:2px 3px 0 #f3d9b3;transform:rotate(-2deg)}.welcome-subtitle{font-size:19px;text-align:center;line-height:1.4;margin:2px 16px 23px;color:#687b7c;max-width:330px}.big-button{width:min(100%,320px);min-height:78px;display:flex;align-items:center;justify-content:center;gap:14px;background:#f1c765;border:3px solid #53616b;border-radius:26px 31px 27px 25px;color:var(--ink);font-size:26px;font-weight:900;box-shadow:3px 7px 0 #ba9e68,0 15px 30px #c6a8762b;transition:transform .16s,box-shadow .16s}.big-button:active{transform:translate(3px,6px) rotate(1deg);box-shadow:0 1px 0 #ba9e68}.big-button svg{width:27px;height:27px}.welcome-footer{font-size:12px;font-weight:800;letter-spacing:.35px;color:#83928c;text-align:center;padding-top:11px}.progress{width:100%;max-width:550px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:1px 2px 8px;min-height:28px}.progress-left{font-size:14px;font-weight:900;color:#76847f;letter-spacing:.4px}.progress-track{display:flex;gap:6px;align-items:center}.progress-dot{width:11px;height:11px;border-radius:50%;background:#e2e5d6;border:1.5px solid #839d93}.progress-dot.done{background:#a9ddc7}.progress-dot.current{background:#f1c765;transform:scale(1.15)}.praise-tag{font-size:14px;font-weight:900;color:#628e80}.equation-area{text-align:center;width:100%;padding:7px 0 4px}.eyebrow{font-weight:900;color:#798c83;font-size:16px;letter-spacing:.1px;line-height:1.2;display:flex;align-items:center;justify-content:center;gap:7px}.eyebrow svg{width:22px;height:22px}.equation{display:flex;justify-content:center;align-items:center;gap:clamp(7px,2.7vw,18px);font-weight:900;font-size:clamp(56px,15vw,90px);line-height:1.17;letter-spacing:-2px;padding:8px 0 1px;user-select:none}.equation .n1{color:#e18370;transform:rotate(-5deg)}.equation .n2{color:#569d91;transform:rotate(3deg)}.equation .op{color:#b0a0b9;transform:rotate(7deg);font-size:.78em}.equation .equals{font-size:.68em;color:#a7aead}.equation .unknown{color:#ceaa43;transform:rotate(-7deg)}.instruction{font-size:20px;font-weight:800;line-height:1.26;text-align:center;color:#647a79;margin:6px 0 12px;max-width:370px}.visual-board{width:100%;max-width:540px;display:grid;grid-template-columns:1fr 1fr;align-items:stretch;gap:12px;margin:5px 0 19px}.count-card{position:relative;border:2.4px solid #74847a7d;background:#ffffffb0;border-radius:26px 23px 29px 23px;box-shadow:3px 5px 0 #53616b12;min-height:174px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px 5px 10px;overflow:hidden}.count-card:first-child{background-color:#fff0e9c0}.count-card:last-child{background-color:#ecf8edc0}.count-card:nth-child(2){transform:rotate(1deg)}.count-card:nth-child(1){transform:rotate(-1deg)}.count-card .card-num{position:absolute;top:7px;left:13px;font-weight:1000;font-size:20px;color:#8e9282}.hand-set{display:flex;align-items:end;justify-content:center;gap:0;width:100%;height:140px}.hand-svg{width:min(100%,140px);height:100%;filter:drop-shadow(1px 3px 0 #64706b1c)}.hand-set.two .hand-svg{width:55%;margin:0 -5px}.animal-group{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:0;min-height:125px;align-content:center;width:100%}.animal-card{width:clamp(54px,12.5vw,78px);height:clamp(67px,14.5vw,94px);margin:-1px -3px;filter:drop-shadow(1px 3px 0 #525e6024)}.animal-card:nth-child(even){transform:rotate(6deg)}.animal-card:nth-child(odd){transform:rotate(-5deg)}.animal-svg{width:100%;height:100%;transform-origin:center 83%}.animal-card.happy .animal-svg{animation:happyHop .47s ease-in-out 3}.answer-wrap{width:100%;max-width:510px;display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:auto}.answer-label{font-size:16px;color:#73847f;font-weight:900}.answers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:13px}.answer{height:100px;border:3px solid #67777a;background:#fff5d6;border-radius:25px 29px 25px 30px;font-size:clamp(47px,12vw,64px);color:var(--ink);font-weight:1000;box-shadow:3px 6px 0 #aebbb52e;position:relative;transition:transform .16s}.answer:nth-child(2){background:#d7f2df;transform:rotate(-2deg)}.answer:nth-child(3){background:#e9e0f6;transform:rotate(2deg)}.answer:active{transform:translateY(5px)}.answer.wrong{animation:wiggle .35s ease;background:#ffe4e5}.hint{height:25px;font-size:17px;color:#cb7778;font-weight:900;text-align:center;margin-top:2px}.result-title{text-align:center;font-size:clamp(36px,10vw,54px);font-weight:1000;color:#55977a;text-shadow:2px 2px #e6f4d1;transform:rotate(-3deg);margin:14px 0 3px}.result-number{text-align:center;font-size:clamp(80px,23vw,122px);line-height:1.1;font-weight:1000;color:#e8a756;text-shadow:3px 5px 0 #f7e6cc;transform:rotate(-5deg)}.result-instruction{font-size:20px;text-align:center;color:#587477;font-weight:900;line-height:1.2;max-width:350px;margin:6px auto 12px}.result-visual{width:100%;min-height:192px;display:flex;justify-content:center;align-items:center;flex-direction:column;margin:8px auto;max-width:510px;border:2.5px dashed #acc8b6;background:#f0f9eac2;border-radius:35px 28px 32px 27px;padding:9px 8px}.result-hands{height:194px;width:100%;display:flex;align-items:end;justify-content:center;gap:0}.result-hands .hand-svg{width:min(47%,180px);height:191px}.result-hands .hand-svg:only-child{width:min(72%,225px)}.result-animals{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:0;width:100%}.result-animals .animal-card{width:clamp(55px,12vw,79px);height:clamp(67px,14vw,96px)}.counting-message{font-size:18px;min-height:26px;font-weight:900;color:#6d8981;margin:0 0 5px}.bottom-actions{margin-top:auto;width:100%;display:flex;align-items:center;flex-direction:column;gap:12px;padding-top:13px}.next-button{background:#f6cf7c;min-height:65px;font-size:22px;width:min(100%,310px)}.interaction-title{font-size:22px;line-height:1.2;text-align:center;font-weight:950;color:#557a70;margin:7px auto 5px}.care-button{display:flex;align-items:center;justify-content:center;gap:14px;background:#ffd8a7;border:3px solid #748480;border-radius:27px;padding:10px 21px;min-width:245px;min-height:83px;color:var(--ink);font-size:22px;font-weight:950;box-shadow:3px 6px 0 #9eaba326}.care-button svg{width:55px;height:55px;flex-shrink:0}.care-button.done{background:#c6eccd;transform:scale(1.03)}.care-celebration{position:relative;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}.success-doodle{width:100px;height:50px;position:absolute;top:-14px;left:calc(50% + 80px);pointer-events:none;animation:pop .6s both}.confetti{position:absolute;inset:0;pointer-events:none;z-index:8;overflow:hidden}.confetti-piece{position:absolute;top:-6%;width:10px;height:18px;border-radius:4px;animation:fall var(--dur) ease-in var(--delay) forwards;transform:rotate(var(--rot));opacity:.95}.cloudscape{position:absolute;bottom:-10px;left:0;right:0;height:100px;background:#e0efdcc0;clip-path:polygon(0 60%,10% 40%,24% 59%,42% 37%,62% 58%,78% 42%,100% 62%,100% 100%,0 100%);z-index:-1}.care-nudge{display:block;font-size:14px;color:#7e938e;text-align:center;max-width:280px;margin:4px}.status-toast{margin:0 auto;font-size:16px;color:#599b82;font-weight:900;min-height:26px;max-width:320px;text-align:center}.parent-panel{width:min(100%,450px);margin:50px auto 0;padding:25px 23px;background:white;border:2px solid #879b91;border-radius:30px;text-align:center;box-shadow:6px 7px 0 #9ca8a326}.parent-panel h1{font-size:31px}.parent-panel p{line-height:1.5;color:#657c77;font-size:16px}.secondary-button{padding:14px 20px;background:#e3eee9;border:2px solid #7c9693;border-radius:16px;color:#45656a;font-size:17px;font-weight:800;min-height:55px;margin:8px}.parent-panel .btn-row{display:flex;flex-wrap:wrap;justify-content:center}.volume-off-line{width:2.3px;height:23px;background:#53616b;transform:rotate(45deg);position:absolute;top:10px}.muted{opacity:.6}.speech-bubble{position:absolute;right:7%;top:4%;width:70px;transform:rotate(9deg)}.helper-illustration{width:38px;height:38px}.pet-heart{position:absolute;color:#df8495;animation:floatHeart 1s ease forwards;font-size:40px;pointer-events:none}.animal-pet{border:0;background:transparent;padding:0;position:relative}.animal-pet:active{transform:scale(.95)}.animal-pet .animal-card{pointer-events:none}.animal-pet.focus{outline:3px dashed #9ad0b2;border-radius:24px}.voice-alert{font-size:13px;text-align:center;color:#986d52;max-width:310px;padding:5px}.welcome-subtitle strong{color:#569b8a}
@keyframes floatUp{50%{transform:translateY(-9px) rotate(1deg)}}@keyframes happyHop{0%,100%{transform:translateY(0) rotate(0)}32%{transform:translateY(-21px) rotate(-6deg)}65%{transform:translateY(-6px) rotate(6deg)}}@keyframes pop{0%{transform:scale(.2);opacity:0}60%{transform:scale(1.15);opacity:1}100%{transform:scale(1);opacity:1}}@keyframes fall{0%{transform:translate3d(0,-20px,0) rotate(var(--rot));opacity:0}9%{opacity:1}100%{transform:translate3d(var(--shift),115vh,0) rotate(710deg);opacity:0}}@keyframes wiggle{0%,100%{transform:translateX(0)}25%{transform:translateX(-7px)}75%{transform:translateX(7px)}}@keyframes sway{50%{transform:rotate(4deg)}}@keyframes pulse{50%{transform:scale(1.08)}}.animate-entry{animation:pop .42s ease both}.care-button.ready{animation:pulse 1.5s ease-in-out infinite}.result-hand-evolve .hand-svg{animation:pop .24s ease both}
@media (min-width:680px){.device{width:430px;min-height:min(880px,calc(100dvh - 40px));height:min(880px,calc(100dvh - 40px));max-height:950px;margin:20px auto;border:8px solid #283f4f;border-radius:45px;box-shadow:0 20px 70px #64818135,0 0 0 3px #8ca5a0a8;overflow-y:auto}.app-header{padding-top:20px}.intro-scene{height:285px}}
@media (max-height:690px){.app-header{min-height:65px;padding-top:calc(env(safe-area-inset-top,0px) + 8px);padding-bottom:5px}.main-content{padding-top:2px;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 11px)}.equation{font-size:clamp(50px,13vw,70px);padding-top:0}.instruction{font-size:18px;margin:2px 0 6px}.visual-board{margin:3px 0 12px}.count-card{min-height:139px}.hand-set{height:121px}.animal-group{min-height:115px}.answer{height:85px}.intro-scene{height:215px}.result-visual{min-height:160px}.result-hands{height:150px}.result-hands .hand-svg{height:150px}.result-number{font-size:73px}.result-title{font-size:38px;margin-top:5px}.result-animals .animal-card{height:76px;width:60px}.welcome-subtitle{margin-bottom:9px}}
@media (max-width:355px){.brand-name{font-size:22px}.small-caption{font-size:8px}.icon-button{width:41px;height:41px}.visual-board{gap:7px}.count-card{padding:4px}.answer{height:84px}.answers{gap:8px}.animal-card{width:55px;height:75px}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
.animal-pet{background:none;border:0;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:20px}.animal-pet:active .animal-svg{transform:scale(.9) rotate(-9deg)}.animal-pet:focus-visible{outline:3px dashed #7cbd9c}.care-visual{position:absolute;margin-top:-60px;right:5%;width:71px;height:71px;filter:drop-shadow(2px 4px 0 #e1b89a44);animation:happyHop .55s ease-in-out 2}.care-visual svg{width:100%;height:100%}.result-visual{position:relative}



/* Zählwiese 2 – Original Wachsmalstift-Bilderwelt */
:root{
 --ink:#4b473d;--paper:#fff3d9;--outline:#8a654f;
 --font:"Chalkboard SE","Marker Felt","Comic Sans MS","Trebuchet MS",system-ui,sans-serif;
}
html{background:#a8cedd!important;overflow-x:hidden}
body{color:#5d493a;overflow-x:hidden;background:#c9e6d6}
body:before{display:none}
.device{
 width:100%;min-height:100svh;min-height:100dvh;height:auto;
 background:#d1e9e9 url("/meadow.svg") center center/cover no-repeat;
 isolation:isolate;overflow:visible;
}
.device:after{box-shadow:inset 0 0 46px #fff0c55c;z-index:-1}
.app-header{
 min-height:76px; padding:calc(env(safe-area-inset-top,0px) + 9px) 13px 3px;
 align-items:center;
}
.brand-mark{width:32px;height:32px;filter:drop-shadow(0 2px #e4b871)}
.brand-name{
 color:#df6b50;display:inline-block;font-size:clamp(29px,7.4vw,36px);
 letter-spacing:-1.6px;text-shadow:1.2px 2px 0 #ffdf9d, -1px -1px 0 #fff4d7;
 -webkit-text-stroke:.25px #a55e45;
}
.small-caption{font-size:9.8px;letter-spacing:.2px;text-transform:none;margin-top:0;color:#3f745d;text-shadow:0 1px #ffffe2}
.icon-button{
 height:47px;width:47px;border:3px solid #a37848; border-radius:50%;
 background:linear-gradient(135deg,#ffefb7,#e8b76b);
 box-shadow:inset 1px 2px #fff7d3, 2px 4px 0 #a0784f8f;
}
.icon-button svg{width:24px;height:24px}
.main-content{padding:7px 13px max(18px,calc(env(safe-area-inset-bottom,0px) + 17px));min-height:calc(100dvh - 86px)}
.intro-content{gap:6px;justify-content:center}
.intro-scene{
 width:min(95%,350px);height:245px;animation:floatUp 4.5s ease-in-out infinite;
 filter:drop-shadow(2px 5px 1px #658d7444);
}
.intro-scene img{width:100%;height:100%;object-fit:contain}
.welcome-title{color:#d45e48;font-size:clamp(43px,11vw,58px);line-height:1.02;text-shadow:2px 3px 0 #fff2b9, -1px -1px #fff4d9;letter-spacing:-1px;-webkit-text-stroke:.45px #b36a52}
.welcome-subtitle{
 max-width:345px;margin:5px 0 20px;line-height:1.37;font-size:20px;font-weight:800;
 color:#4c765f; text-shadow:1px 1px #fff4d9;
}
.welcome-subtitle strong{color:#ac664d}
.big-button{
 border:5px solid #94683f;background:linear-gradient(180deg,#f6d69c,#e9ad66 60%,#e5ac67);
 box-shadow:inset 0 3px #fff1c2,3px 6px 0 #9b703e,0 14px 28px #74684631;
 color:#644632;font-size:26px;border-radius:17px 26px 19px 23px;
 transform:rotate(-1deg);text-shadow:1px 2px #ffeac3;
}
.big-button svg{filter:drop-shadow(1px 2px #c6a375)}
.big-button:active{transform:translate(3px,5px) rotate(-1deg);box-shadow:inset 0 3px #fff2c4}
.welcome-footer{color:#526d5c;text-shadow:1px 1px #fffbdc;font-size:12px}
.progress{width:100%;margin:0 auto 5px;max-width:540px;min-height:30px;padding:0 4px}
.progress-left{color:#566b48;font-size:15px;text-shadow:1px 1px #fff1ca}
.progress-dot{width:12px;height:12px;border:2px solid #7b9666;background:#fcf5d8}
.progress-dot.current{background:#f0c75a;box-shadow:0 0 0 2px #f5e9bb}
.progress-dot.done{background:#7ac36b}
.equation-area{
 width:100%;max-width:520px;margin:2px auto 7px;padding:12px 13px 13px;
 background:
 repeating-linear-gradient(-16deg,transparent 0 13px,#d4f3d20a 14px 15px),
 repeating-linear-gradient(8deg,#244c3b 0 25px,#2e5741 26px 28px,#214938 30px 55px);
 border:9px solid #b88446;border-radius:14px 12px 17px 13px;
 box-shadow:0 0 0 2px #845b3a, inset 0 0 0 3px #a1b69b, inset 0 0 20px #132b24,4px 6px 0 #584b3355;
 position:relative; transform:rotate(-.25deg)
}
.equation-area:after{
 content:"";position:absolute;inset:-9px;pointer-events:none;border-radius:inherit;
 background:repeating-linear-gradient(171deg,transparent 0 5px,#784e2830 6px 7px,transparent 10px 17px);
}
.eyebrow{font-size:15px;color:#e0eac7;letter-spacing:0;text-shadow:1px 1px 0 #436449}
.equation{padding:2px 0 0;gap:clamp(6px,3vw,18px);font-size:clamp(52px,14vw,76px);
 font-family:"Chalkboard SE","Marker Felt",sans-serif;letter-spacing:-1px;
}
.equation .n1,.equation .n2,.equation .op,.equation .equals,.equation .unknown{
 color:#fff9e6;text-shadow:1px 1px #95bba4,-2px -2px #e9f2d566;transform:none;
}
.equation .unknown{color:#f5d77b;text-shadow:0 2px #997e4a}
.instruction{margin:7px 0 8px;max-width:370px;font-size:19px;color:#4c694e;text-shadow:1px 1px #fffbd8}
.visual-board{gap:10px;margin:3px 0 9px;max-width:510px;align-items:stretch}
.count-card{
 border:4px solid #b78a5d;background:#fff3d6e8!important;
 border-radius:21px 23px 22px 20px;
 box-shadow:inset 2px 2px #fff9ea,3px 5px 0 #98765071,0 0 0 1px #aa8657;
 padding:9px 4px 10px;min-height:158px;transform:none!important;
 overflow:hidden;
}
.count-card:after{content:"";inset:0;position:absolute;pointer-events:none;
 background:repeating-linear-gradient(25deg,transparent 0 8px,#9e8c5d10 9px 10px);border-radius:18px}
.count-card:first-child{background:#ffecd5e8!important}
.count-card:last-child{background:#edf5d9ed!important}
.count-card .card-num{top:6px;left:10px;color:#a4704e;font-size:22px;text-shadow:1px 1px white}
.hand-set{height:154px;gap:0}
.hand-svg{height:154px;width:min(100%,137px);filter:drop-shadow(1px 3px 0 #755d4540)}
.hand-set.two .hand-svg{width:58%;margin:0 -8px}
.animal-group{min-height:140px;max-width:100%;row-gap:0}
.animal-card{width:clamp(47px,11.5vw,72px);height:clamp(59px,13.8vw,87px);filter:drop-shadow(1px 2px 0 #a47e5755)}
.animal-svg{filter:contrast(1.08) saturate(.88)}
.answer-wrap{gap:8px;max-width:510px;margin-top:auto;width:100%;padding-bottom:10px}
.answer-label{color:#52694e;font-size:17px;text-shadow:1px 1px #fffbd6}
.answers{gap:11px}
.answer{
 min-height:92px;height:clamp(88px,12.5vh,105px);
 border:4px solid #a67648;border-radius:27px 24px 29px 23px;
 font-family:"Chalkboard SE","Marker Felt",sans-serif;
 color:#705037;font-size:clamp(48px,14vw,68px);
 box-shadow:inset 1px 3px #fff7d9,3px 5px 0 #765f436e;
 text-shadow:1px 2px #fff6cf
}
.answer:nth-child(1){background:linear-gradient(140deg,#b6e1fa,#83c2e8)}
.answer:nth-child(2){background:linear-gradient(140deg,#c1eab4,#8ed58b);transform:rotate(-1deg)}
.answer:nth-child(3){background:linear-gradient(140deg,#ffe7ae,#f9be67);transform:rotate(1deg)}
.answer:active{filter:brightness(.97);transform:translateY(4px)}
.hint{font-size:18px;color:#ac685a;min-height:25px;text-shadow:1px 1px #fff7d8}
.cloudscape,.corner-doodle{display:none}
.result-title{margin:8px 0 3px;color:#eeaf45;font-size:clamp(37px,10vw,47px);
 text-shadow:2px 2px #fff9d9,-1px -1px #a1764e;-webkit-text-stroke:.6px #866b4b}
.result-number{font-family:"Chalkboard SE","Marker Felt",sans-serif;color:#d37352;text-shadow:3px 4px #ffe3a9;font-size:clamp(73px,22vw,111px)}
.result-instruction{margin:2px 0 8px;color:#41684e;text-shadow:1px 1px #fff8d4;font-size:20px}
.result-visual{
 background:#fff1d6f0; border:6px solid #bf8d55;border-radius:24px;
 box-shadow:inset 0 0 0 2px #fff7e1,4px 7px 0 #80604063;
 min-height:178px;margin:6px auto;max-width:510px
}
.result-hands{height:190px;align-items:end}
.result-hands .hand-svg{height:180px;width:min(49%,175px)}
.result-hands .hand-svg:only-child{width:min(77%,215px)}
.counting-message{color:#6d7354;font-size:19px}
.result-animals .animal-card{width:clamp(51px,12vw,77px);height:clamp(65px,14vw,91px)}
.bottom-actions{padding-top:6px;gap:7px}
.interaction-title{font-size:21px;color:#4c7454;text-shadow:1px 1px #fff7db}
.care-button{
 min-height:79px;border:4px solid #9b7153;
 background:linear-gradient(#f4d69a,#edb775);
 color:#5c4d37;box-shadow:inset 0 2px #fff3c1,3px 5px 0 #79654880;
 font-size:23px;
}
.care-button.done{background:#a7dba0}
.next-button{min-height:72px}
.status-toast{color:#467955}
.friend-banner{
 display:block;width:min(74%,245px);max-height:118px;object-fit:contain;
 filter:drop-shadow(1px 4px #6481655a);margin:0 auto -7px;
}
.friend-peek{width:min(51%,170px);height:auto;display:block;margin:0 auto -10px;filter:drop-shadow(1px 3px #64816556)}
.parent-panel{background:#fff2d9;border:5px solid #a17a51;border-radius:19px;
 box-shadow:4px 7px 0 #7855367d}
.confetti{z-index:9}
.confetti-piece{border:1px solid #fff1c874}
@media (min-width:680px) {
 .device{
  width:430px;min-height:min(900px,calc(100dvh - 34px));height:min(900px,calc(100dvh - 34px));
  margin:17px auto;border:8px solid #405148;border-radius:43px;overflow-y:auto;
  background-size:100% 100%;
  box-shadow:0 17px 80px #54776a44,0 0 0 3px #9ba999;
 }
 .app-header{padding-top:16px}
 .main-content{min-height:calc(100% - 79px)}
}
@media(max-height:750px){
 .intro-scene{height:193px}
 .app-header{min-height:66px;padding-top:calc(env(safe-area-inset-top,0px) + 6px)}
 .main-content{min-height:calc(100dvh - 73px)}
 .equation-area{padding:7px 10px;border-width:7px}
 .equation{font-size:clamp(45px,13vw,67px)}
 .instruction{font-size:17px;margin:3px 0 5px}
 .visual-board{margin:2px 0 5px}
 .count-card{min-height:132px}
 .hand-set,.hand-svg{height:127px}
 .animal-group{min-height:114px}
 .answer{height:78px;min-height:78px}
 .answer-label{font-size:15px}
 .friend-peek{max-height:58px;width:auto}
 .result-hands,.result-hands .hand-svg{height:150px}
 .result-visual{min-height:150px}
 .result-number{font-size:70px}
}
@media (max-width:360px){
 .visual-board{gap:7px}
 .count-card{min-height:132px}
 .hand-set,.hand-svg{height:130px}
 .answer{height:82px;min-height:82px}
 .brand-name{font-size:27px}
 .small-caption{font-size:8px}
}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
.care-visual{display:grid;place-items:center;height:60px;min-height:60px;margin:-2px auto 0;animation:treatRise .9s cubic-bezier(.2,.9,.2,1) both}
.care-visual svg{width:72px;height:72px;filter:drop-shadow(2px 3px #7c86634d)}
@keyframes treatRise{from{transform:translateY(22px) scale(.3);opacity:0}65%{transform:translateY(-11px) scale(1.12);opacity:1}to{transform:translateY(0) scale(1);opacity:1}}
.raised-finger{transform-origin:50% 80%;animation:fingerBloom .24s ease-out both}
@keyframes fingerBloom{from{opacity:.6;transform:scaleY(.93)}to{opacity:1;transform:scaleY(1)}}


/* Zählwiese: independent original crayon storybook edition, v4 */
:root{--font:"Chalkboard SE","Marker Felt","Comic Sans MS","Trebuchet MS",system-ui,sans-serif;--wood:#cb8d48;--line:#725233}
html,body{background:#9cc8d5!important}
.device{background:#a4d3ea url('/storybook-landscape.svg') center/100% 100% no-repeat!important;overflow:hidden;min-height:100dvh}
.device:after{box-shadow:inset 0 0 20px #fff5d623,inset 0 -11px 37px #6f9a4866}
.app-header{padding:calc(env(safe-area-inset-top,0px) + 7px) 17px 4px;min-height:62px}
.brand-mark{width:31px;height:31px;transform:rotate(-8deg)}
.brand-name{color:#fff0ad!important;font-size:28px;letter-spacing:-1px;text-shadow:-1.8px -1.8px #a95d3f,2px 2px #b75a3d,3px 4px #4a80668c;-webkit-text-stroke:1px #ad7755}
.small-caption{display:none}
.icon-button{width:43px;height:43px;border:3px solid #98734b;border-radius:50%;background:#efc17c;box-shadow:2px 3px #78553791,inset 0 2px #fff4d0}
.icon-button svg{width:23px;height:23px}
.main-content{padding:0 15px max(17px,calc(env(safe-area-inset-bottom,0px) + 10px));min-height:calc(100dvh - 65px);gap:0}
.progress{min-height:63px;padding:1px 0 0;flex-direction:column;gap:3px;justify-content:center;position:relative}
.wood-heading{
 color:#684329;background:#edbc76;
 border:3.5px solid #9c653b;border-radius:10px 18px 8px 15px;
 font:900 clamp(19px,5.4vw,26px) var(--font);
 padding:7px 28px 7px;min-width:220px;text-align:center;position:relative;display:block;
 box-shadow:inset 0 3px #fbe0a1,2px 4px #74503396,0 7px 18px #8b672f40;
 text-shadow:1px 1px #f6e3bc;transform:rotate(-1.3deg);
}
.wood-heading:before{content:"";position:absolute;inset:4px 10px;opacity:.36;pointer-events:none;
 background:repeating-linear-gradient(174deg,transparent 0 7px,#9c623221 7.5px 9px,transparent 10px 15px);
 border-radius:5px}
.progress-track{gap:5px;min-height:12px}
.progress-dot{width:10px;height:10px;border:1.5px solid #8e9b6a;background:#b6daf0;box-shadow:1px 1px #ffeabb}
.progress-dot.done{background:#65ac68}
.progress-dot.current{background:#ebbf54;transform:scale(1.2)}
.progress-left{display:none}
.equation-area{
 padding:7px 12px 9px;margin:6px auto 0;width:100%;max-width:510px;min-height:150px;
 border:11px solid #a8733f;border-radius:17px 14px 19px 17px;transform:rotate(-.45deg);
 background:#234d3e!important;
 box-shadow:0 0 0 2.8px #79502e, inset 0 0 0 3px #50745a, inset 0 0 30px #091f1988, 4px 6px #564d3078;
}
.equation-area:after{inset:-10px;opacity:.7;background:repeating-linear-gradient(-15deg,transparent 0 10px,#70432225 11px 13px,transparent 14px 21px)}
.equation-area:before{content:"";position:absolute;inset:0;opacity:.35;pointer-events:none;border-radius:4px;background:
 repeating-linear-gradient(3deg,transparent 0 18px,#fff4c313 19px 20px,transparent 20.5px 42px),
 repeating-linear-gradient(177deg,transparent 0 5px,#95b6a615 5.5px 6px,transparent 7px 23px);}
.eyebrow{font:800 16px var(--font);color:#e9edc7;text-shadow:0 0 2px #e7eec4,1px 1px #508367}
.equation{gap:clamp(4px,2.3vw,13px);font-family:"Chalkboard SE","Marker Felt",sans-serif;font-size:clamp(60px,15vw,77px);padding:6px 0 3px;letter-spacing:-2px}
.equation span{color:#fff9e9!important;filter:drop-shadow(1px 1px #a7d1b5);text-shadow:1px 0 #d7e5c9,-1px -1px #e5ebd4!important}
.equation .unknown{color:#f7ca5d!important;text-shadow:2px 2px #b88646!important}
.instruction{margin:4px 0 3px;font-size:17px;font-weight:900;color:#2b6252;text-shadow:1px 1px #fff9d3,-1px -1px #fff4d2}
.visual-board{
 width:100%;max-width:510px;min-height:clamp(174px,25vh,230px);height:clamp(174px,25vh,230px);
 margin:3px auto 0;gap:4px;display:grid;grid-template-columns:1fr 1fr;align-items:end;
 background:transparent;border:none;
}
.count-card,.count-card:first-child,.count-card:last-child{
 background:transparent!important;border:none;box-shadow:none;border-radius:0;transform:none!important;
 overflow:visible;min-height:100%;height:100%;padding:2px 0 4px;display:flex;justify-content:flex-end;
}
.count-card:after{display:none}
.count-card .card-num{
 left:22px;top:0;font-size:18px;color:#694d34;z-index:1;border-radius:15px;
 background:#ffefccdd;padding:0 9px;transform:rotate(-8deg);border:2px solid #e8ca9478;
}
.hand-set,.hand-svg{height:clamp(171px,25vh,225px);max-height:100%}
.hand-set{align-items:end;overflow:visible}
.hand-svg{width:min(94%,170px);filter:drop-shadow(3px 6px 0 #55826848)}
.hand-set.two .hand-svg{width:60%;margin:0 -10px}
.animal-group{min-height:180px;max-height:224px;align-content:center;justify-content:center;gap:0}
.animal-card{width:clamp(56px,14.7vw,77px);height:clamp(63px,16.3vw,95px);margin:-4px -8px;filter:drop-shadow(2px 5px 2px #6280574a)}
.animal-card:nth-child(3n){transform:rotate(6deg) translateY(2px)}
.animal-card:nth-child(even){transform:rotate(-5deg)}
.animal-svg{transform:scale(1.21);filter:saturate(1.03) contrast(1.04)}
.answer-wrap{margin-top:auto;gap:2px;padding-bottom:2px;position:relative;justify-content:end;min-height:203px;max-width:510px}
.friend-peek{
 width:auto!important;max-width:180px!important;max-height:101px!important;height:98px!important;
 margin:-2px auto -6px!important;object-fit:contain;
 filter:drop-shadow(2px 3px 1px #65835a66)
}
.answer-label{font-weight:900;font-size:16px;color:#356549;text-shadow:1.5px 1.5px #ffefd2;margin:0 0 6px}
.answers{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
.answer,.answer:nth-child(2),.answer:nth-child(3),.answer:nth-child(4){
 min-width:0;min-height:76px;height:clamp(76px,10vh,91px);padding:0;
 border:4px solid #f9efd1;outline:2.5px solid #ba9056;border-radius:28px 27px 30px 28px;
 font:900 clamp(42px,11vw,59px) var(--font);color:#5b5140;
 box-shadow:inset 0 3px 0 #fff9e099,2px 5px 0 #8f865a8a;
 text-shadow:1px 2px #fff6d0;transform:rotate(0);
}
.answer:nth-child(1){background:#87ceef!important;color:#335c87}
.answer:nth-child(2){background:#9bd58b!important;color:#356c48}
.answer:nth-child(3){background:#ffd273!important;color:#8e552f}
.answer:nth-child(4){background:#f4a8bd!important;color:#983d5c}
.answer:active{transform:scale(.93)!important}
.answer.wrong{animation:wiggle .34s}
.hint{font-size:14px;min-height:16px;color:#9e5746;text-shadow:1px 1px #fff3ce}
.result-title{font:900 clamp(35px,9vw,43px) var(--font);color:#edb64d;
 text-shadow:1px 2px #fff8c5,-1px -1px #90644d,2px 3px #a15b3f;-webkit-text-stroke:.6px #9d634c}
.result-number{font-size:clamp(65px,19vw,91px);color:#eeab50;text-shadow:2px 2px #fff6c3}
.result-instruction{font-size:19px;color:#316048;margin:1px auto 5px;text-shadow:1px 1px #fff4d4}
.result-visual{min-height:190px;height:auto;max-height:254px;margin:4px auto 7px;overflow:visible;
 border:6px solid #a57347;border-radius:21px;background:#fff3d8ed;
 box-shadow:inset 0 0 0 3px #fff8e6,3px 5px #7055307a}
.result-hands{height:190px}
.result-hands .hand-svg{height:185px;width:min(49%,170px);max-height:unset}
.result-hands .hand-svg:only-child{width:min(75%,225px)}
.result-animals{min-height:142px;padding:8px}
.result-animals .animal-card{width:clamp(55px,14vw,77px);height:clamp(67px,15.6vw,90px)}
.counting-message{font-size:17px;min-height:23px}
.success-doodle{width:86px;height:70px;right:-20px;top:-9px}
.bottom-actions{margin-top:auto;padding:8px 0 0;gap:5px}
.next-button{width:min(100%,300px);min-height:72px;border-radius:13px}
.care-button{width:min(100%,288px);min-height:81px}
.care-button svg{width:56px;height:56px}
.interaction-title{color:#316048;font-size:19px;text-shadow:1px 1px #fff8cf}
.confetti{position:absolute;z-index:11}
.cloudscape{display:none}
.intro-content{justify-content:flex-start;min-height:calc(100dvh - 64px);gap:0}
.intro-scene{width:min(100%,365px);height:clamp(230px,34vh,315px);margin:20px auto 2px}
.intro-scene img{height:100%;width:100%;object-fit:contain}
.welcome-title{
 margin:3px auto 8px;color:#dd7150;transform:rotate(-3deg);font-size:clamp(46px,12vw,59px);
 text-shadow:2px 2px #fff3c2,3px 4px #bb7349;letter-spacing:-2px}
.welcome-subtitle{
 font-size:clamp(18px,5vw,21px);max-width:340px;margin:4px auto 16px;
 color:#3e6f4d;text-shadow:1px 1px #fef6d2;line-height:1.35}
.big-button{
 background:linear-gradient(175deg,#f8dfa7,#dfae6a);
 border:4px solid #87552f;border-radius:12px 16px 10px 18px;
 box-shadow:inset 0 3px #fff1c0,2px 5px 0 #865931,0 5px 21px #82774566;
 color:#65452c;text-shadow:1px 1px #fff4d5;
 transform:rotate(-1.5deg);font-size:25px
}
.big-button:before{content:"";position:absolute;inset:6px 8px;opacity:.5;border-radius:inherit;pointer-events:none;
 background:repeating-linear-gradient(171deg,transparent 0 7px,#9c692524 8px 9px,transparent 10px 16px);}
.welcome-footer{color:#48684f;font-size:12px;margin:11px auto}
.parent-panel{background:#f4e0b9d9;border:5px solid #956039;border-radius:16px}
.parent-panel h1{color:#79512d}
.secondary-button{background:#f1d6a3;color:#6a4e3d;border-color:#946f43}
@media(min-width:680px){.device{width:430px;margin:17px auto;height:min(920px,calc(100dvh - 34px));min-height:min(920px,calc(100dvh - 34px));border:8px solid #3c4a47;border-radius:43px;overflow-y:auto;background-size:100% 100%!important}.main-content{min-height:calc(100% - 65px)}}
@media(max-height:735px){
 .app-header{min-height:53px}
 .main-content{min-height:calc(100dvh - 55px)}
 .progress{min-height:54px}
 .wood-heading{font-size:19px;padding:4px 22px}
 .equation-area{min-height:116px;border-width:8px;padding:5px}
 .eyebrow{font-size:13px}
 .equation{font-size:clamp(53px,13vw,62px);padding:0}
 .instruction{font-size:15px;margin:0}
 .visual-board{height:clamp(149px,23vh,180px);min-height:149px}
 .hand-set,.hand-svg{height:165px}
 .animal-group{min-height:149px}
 .animal-card{width:53px;height:62px}
 .answer-wrap{min-height:167px}
 .friend-peek{height:72px!important;max-height:72px!important}
 .answer{height:67px!important;min-height:67px!important;font-size:44px!important}
 .result-hands,.result-hands .hand-svg{height:148px}
 .result-visual{min-height:147px}
 .result-number{font-size:70px}
 .intro-scene{height:205px;margin:6px auto}
 .welcome-title{font-size:42px}
 .welcome-subtitle{font-size:18px;margin:4px auto}
}
@media(max-width:350px){
 .answer{font-size:41px!important}
 .answers{gap:5px}
 .visual-board{gap:0}
 .hand-svg{width:98%}
 .count-card .card-num{left:12px}
}
@media(prefers-reduced-motion:reduce){.raised-finger,.animal-svg,.intro-scene{animation:none!important}}

/* Pencil handwriting that is drawn stroke-by-stroke, not typographic numerals */
.equation{gap:clamp(0px,.9vw,6px);padding:3px 0;line-height:1}
.equation > span{display:flex;align-items:center;justify-content:center;gap:0;min-width:0}
.chalkglyph{display:inline-block;width:clamp(43px,12vw,62px);height:77px;vertical-align:middle;overflow:visible;filter:drop-shadow(1px 2px #90af8b55)}
.equation .op .chalkglyph,.equation .equals .chalkglyph{width:38px;height:63px}
.equation .unknown .chalkglyph{width:49px}
.care-celebration{position:relative;width:100%;margin:0 auto}
.result-title{font-size:clamp(35px,10vw,49px);position:relative;z-index:4;line-height:1.13;margin:4px auto 8px;transform:rotate(-2deg)}
.result-math{
 width:100%;max-width:520px;min-height:128px;border:10px solid #a8733f;
 border-radius:14px;background:#234d3e;box-shadow:0 0 0 2px #765135,inset 0 0 0 3px #5e8062,inset 0 0 20px #142a22a9,3px 5px #6e4e3377;
 display:flex;align-items:center;justify-content:center;gap:1px;padding:14px 7px;
 position:relative;transform:rotate(-.35deg)
}
.result-math:before{
 content:"";position:absolute;inset:1px;pointer-events:none;
 background:repeating-linear-gradient(171deg,transparent 0 11px,#f5e8bf07 12px 13px,transparent 14px 21px)
}
.result-math .chalkglyph{width:clamp(40px,11vw,56px);height:76px;z-index:2}
.result-math .chalkglyph:nth-child(2),.result-math .chalkglyph:nth-child(4){width:34px;height:57px}
.result-math .chalkglyph:last-child{filter:drop-shadow(0 0 5px #ffe29b85)}
.success-doodle{width:66px;height:58px;top:-10px;left:auto;right:-18px;z-index:5}
.result-visual{margin-top:7px}
.count-card .animal-card{width:var(--animal-size,70px)!important;height:calc(var(--animal-size,70px)*1.12)!important;margin:-5px -7px}
.count-card .animal-svg{transform:scale(1.22)}
.count-card .animal-group{max-height:235px;min-height:190px}
.home-header .brand{display:none!important}
.home-header{justify-content:flex-end}
.home-header .header-tools{margin-left:auto}
.rainbow-title{display:flex;align-items:center;justify-content:center;white-space:nowrap;
 font:900 clamp(43px,12.2vw,61px) var(--font);letter-spacing:-3px;
 margin:10px auto -4px;line-height:1.2;filter:drop-shadow(2px 3px #fef1bf);}
.rainbow-title span{display:inline-block;transform:rotate(calc((var(--i) - 4)*.9deg));
 color:#e8745d;text-shadow:1px 2px #fff5c7,2px 4px #7c846b50;
 -webkit-text-stroke:1px #8b704b}
.rainbow-title span:nth-child(2),.rainbow-title span:nth-child(7){color:#efb74b}
.rainbow-title span:nth-child(3),.rainbow-title span:nth-child(8){color:#6c9e5f}
.rainbow-title span:nth-child(4),.rainbow-title span:nth-child(9){color:#71b1da}
.rainbow-title span:nth-child(5){color:#ae7fad}
.rainbow-title span:nth-child(6){color:#e69098}
.intro-content .intro-scene{height:clamp(255px,36vh,325px);width:min(100%,375px);margin:5px auto 16px}
.intro-content .welcome-subtitle{color:#4b6143;font-size:clamp(19px,5.7vw,23px);margin:0 auto 16px;max-width:315px;text-shadow:1px 1px #f8f0cd}
.intro-content .big-button{margin:5px auto 0;min-height:84px}
.intro-content .welcome-footer{margin:14px auto}
.parent-field-label{display:block;font-size:16px;font-weight:800;text-align:left;margin:14px 0 5px;color:#6c553e}
.parent-field-select{display:block;min-height:45px;width:100%;max-width:100%;border:2px solid #977348;border-radius:12px;background:#fff3d7;color:#543f30;padding:8px 12px;font-size:16px;font-family:var(--font)}
.parent-panel .secondary-button{margin:6px}
@media(max-height:735px){
 .rainbow-title{font-size:42px;margin:4px auto 0}
 .intro-content .intro-scene{height:235px;margin:3px auto 4px}
 .result-math{min-height:112px;padding:6px}
 .result-math .chalkglyph{height:64px}
 .result-title{font-size:36px}
 .chalkglyph{width:40px;height:63px}
 .equation .op .chalkglyph,.equation .equals .chalkglyph{width:32px;height:53px}
 .equation-area{min-height:113px}
 .count-card .animal-group{min-height:146px}
}
.home-header{justify-content:space-between!important}.home-header .parent-gear{display:grid;margin-left:0;margin-right:auto;width:42px;height:42px}.home-header .header-tools{margin-left:auto}
@media (orientation:landscape) and (max-height:520px){.device{width:100%;height:auto;min-height:100dvh;max-height:none;overflow:visible;border:0;border-radius:0;margin:0;background-size:cover!important}.main-content{min-height:460px}.answer-wrap{margin-top:10px}.app-header{padding:4px 15px;min-height:51px}.count-card .card-num{top:-2px}}


/* V5: original hand-illustrated skin for the actual playable screens */
.wood-heading{
  width:min(100%,360px)!important;min-width:0;min-height:65px;
  background:url('/wood-sign.svg') center/100% 100% no-repeat!important;
  border:0!important;box-shadow:none!important;border-radius:0!important;
  padding:12px 14px 13px!important;
  display:flex;align-items:center;justify-content:center;
  font-size:clamp(19px,5.5vw,25px)!important;
  color:#654022!important;text-shadow:1px 1px #fff0c5;
}
.wood-heading:before{display:none!important}
.equation-area,.result-math{
  background:url('/chalk-board.svg') center/100% 100% no-repeat!important;
  border:0!important;box-shadow:none!important;border-radius:0!important;
  transform:rotate(-.25deg);
}
.equation-area{padding:20px 19px 19px!important;min-height:161px}
.equation-area:before,.equation-area:after,.result-math:before{display:none!important}
.result-math{min-height:157px;padding:26px 14px 23px!important}
.equation{gap:clamp(0px,.5vw,5px)}
.chalkglyph{filter:drop-shadow(1px 1px #86aa8699)}
.answer,.answer:nth-child(1),.answer:nth-child(2),.answer:nth-child(3),.answer:nth-child(4){
  background-color:transparent!important;
  background-repeat:no-repeat!important;background-position:center!important;
  background-size:100% 100%!important;
  border:0!important;outline:0!important;border-radius:0!important;box-shadow:none!important;
  color:#38608c;
  transition:transform .14s ease,filter .14s ease!important;
}
.answer:nth-child(1){background-image:url('/button-blue.svg')!important;color:#2c648b!important}
.answer:nth-child(2){background-image:url('/button-green.svg')!important;color:#366f45!important}
.answer:nth-child(3){background-image:url('/button-yellow.svg')!important;color:#8e552e!important}
.answer:nth-child(4){background-image:url('/button-pink.svg')!important;color:#873651!important}
.answer:active{transform:translateY(5px) scale(.95)!important;filter:brightness(.97)}
.crayon-answer-number{display:flex;align-items:center;justify-content:center;width:100%;height:100%;position:relative;transform:rotate(-2deg)}
.crayon-answer-digit{display:block;width:min(58%,56px);height:83%;color:inherit;overflow:visible;filter:drop-shadow(.8px 1px #fff5df88)}
.crayon-answer-number.double{gap:0;transform:rotate(1deg)}
.crayon-answer-number.double .crayon-answer-digit{width:35%;max-width:30px;height:73%}
.crayon-answer-number.double .crayon-answer-digit:first-child{margin-right:-2px}
.count-card .animal-group{height:100%;min-height:100%;align-content:center;justify-content:center;gap:0}
.animal-group .animal-card{width:var(--animal-size,80px)!important;height:calc(var(--animal-size,80px)*1.18)!important;margin:-5px -8px}
.animal-card .animal-svg{width:100%;height:100%;object-fit:contain;filter:drop-shadow(1px 2px 0 #936f513f)!important}
.animal-card:nth-child(2n) .animal-svg{transform:rotate(-3deg)}
.animal-card:nth-child(3n) .animal-svg{transform:rotate(4deg)}
.result-animals .animal-card{width:clamp(53px,13.5vw,79px)!important;height:clamp(66px,16vw,92px)!important;margin:-2px -4px}
.result-animals{max-width:100%;max-height:245px}
.big-button,.next-button,.care-button{
  background:url('/wood-sign.svg') center/100% 100% no-repeat!important;
  border:0!important;border-radius:0!important;box-shadow:none!important;
  color:#604324!important;text-shadow:1px 1px #fef1c9!important;
}
.big-button:before{display:none!important}
.big-button:active,.next-button:active,.care-button:active{transform:translateY(4px) scale(.985)!important}
.welcome-subtitle{color:#4b593e}
.rainbow-title{font-size:clamp(48px,13.3vw,65px)!important;letter-spacing:-1.8px!important;margin:10px auto 2px}
.intro-content .intro-scene{width:min(96%,400px)!important;height:clamp(250px,38vh,336px);margin:0 auto 9px}
.friend-peek{filter:drop-shadow(2px 3px #8d8d6963)}
.home-header{height:48px;min-height:48px}
.home-header .icon-button,.icon-button{
 background:url('/button-yellow.svg') center/100% 100% no-repeat!important;
 border:0!important;box-shadow:none!important;
}
.parent-gear{margin-left:0}
@media(max-height:745px){
  .wood-heading{min-height:52px;padding:6px 13px!important}
  .progress{min-height:56px}
  .equation-area{min-height:126px;padding:8px 15px!important}
  .equation .chalkglyph{height:61px;width:41px}
  .equation .op .chalkglyph,.equation .equals .chalkglyph{height:52px;width:31px}
  .equation .unknown .chalkglyph{width:43px}
  .result-math{min-height:113px;padding:10px!important}
  .result-math .chalkglyph{height:65px}
  .rainbow-title{font-size:clamp(41px,11vw,48px)!important;margin:5px auto}
  .intro-content .intro-scene{height:clamp(195px,32vh,230px)}
}
@media(max-width:340px){
  .answer{min-height:65px!important;height:65px!important}
  .crayon-answer-digit{height:77%}
  .count-card .animal-card{margin:-4px -10px!important}
  .wood-heading{font-size:19px!important}
}
.original-hand{object-fit:contain;overflow:visible;filter:drop-shadow(2px 4px 1px #89725540)!important}.mirror-hand{transform:scaleX(-1)}.hand-set.two .original-hand{width:59%}.result-hands .original-hand{object-fit:contain}@media(max-height:745px){.original-hand{height:165px}}
/* Character placement mirrors the illustrated game-page composition */
.app-header:not(.home-header) .brand{display:none!important}
.app-header:not(.home-header){min-height:58px;padding:calc(env(safe-area-inset-top,0px) + 6px) 16px 1px}
.app-header:not(.home-header) .header-tools{width:100%;display:flex;align-items:center;justify-content:space-between;margin:0}
.friend-peek-pair{width:100%;height:103px;display:flex;align-items:flex-end;justify-content:space-between;gap:8px;padding:0 12px;margin:0 auto -3px}
.friend-peek-pair img{display:block;width:min(34%,129px);height:106px;max-height:106px;object-fit:contain;filter:drop-shadow(2px 4px 1px #546b5260)}
.friend-peek-pair .peek-mouse{transform:rotate(-4deg)}
.friend-peek-pair .peek-hedgehog{transform:rotate(3deg)}
@media(max-height:745px){
  .friend-peek-pair{height:73px;margin-top:-4px}
  .friend-peek-pair img{height:79px;max-height:79px;width:28%}
  .app-header:not(.home-header){min-height:48px;padding-top:3px}
}
.care-button.ready{animation:none!important;transform:none!important}.care-button.ready svg{animation:pulse 1.6s ease-in-out infinite;transform-origin:center}.care-button:active{filter:brightness(.96)}@media(prefers-reduced-motion:reduce){.care-button.ready svg{animation:none!important}}
/* Hand-lettered names of the two main characters */
.friends-name-row{
 display:grid;grid-template-columns:1fr 1fr;align-items:center;
 width:min(95%,350px);gap:9px;margin:-9px auto 7px;
 font:900 clamp(19px,5vw,23px) "Chalkboard SE","Marker Felt","Comic Sans MS",sans-serif;
 line-height:1.1;text-align:center;letter-spacing:-.35px;
 filter:drop-shadow(1px 2px #fff9ce);
}
.friends-name-row span:first-child{color:#2e6f9b;transform:rotate(-4deg);text-shadow:1px 1px #f9efdb}
.friends-name-row span:last-child{color:#487841;transform:rotate(3deg);text-shadow:1px 1px #f9efdb}
.intro-content .welcome-subtitle{margin:4px auto 13px}
.intro-content .intro-scene{margin-bottom:2px}
@media(max-height:735px){
 .friends-name-row{font-size:18px;margin:-10px auto 3px}
 .intro-content .intro-scene{margin-bottom:0}
 .intro-content .welcome-subtitle{font-size:17px;margin:1px auto 10px}
}
.original-hand{object-fit:contain!important;width:100%;height:100%}.hand-set .original-hand{width:min(100%,170px)}.hand-set.two .original-hand{width:59%}.result-hands .original-hand{object-fit:contain!important}.mirror-hand{transform:scaleX(-1)}.hand-placeholder{display:inline-block;height:100%;width:min(100%,170px)}.original-hand{object-fit:contain!important;object-position:bottom center!important;filter:drop-shadow(1px 3px 0 #876f5a35)!important}.hand-set .original-hand{width:min(100%,178px)}.hand-set.two .original-hand{width:59%}.result-hands .original-hand{object-fit:contain!important}.mirror-hand{transform:scaleX(-1)}

/* Premium QA 2026-10-28: preserve the hand-drawn storybook art */
:root{--zw-focus:#254f8c;--zw-touch:48px;--zw-reading-line:1.32}
html{overscroll-behavior-y:none}
body{min-width:320px}
button,select{-webkit-tap-highlight-color:transparent}
button:focus-visible,.answer:focus-visible,.big-button:focus-visible,
.icon-button:focus-visible,.care-button:focus-visible,
.secondary-button:focus-visible,select:focus-visible{
 outline:4px solid var(--zw-focus)!important;outline-offset:3px!important}
.icon-button{min-width:var(--zw-touch);min-height:var(--zw-touch)}
.answers{grid-template-columns:repeat(4,minmax(0,1fr));min-width:0}
.answer{min-width:0;touch-action:manipulation}
.main-content,.answer-wrap,.visual-board{min-width:0}
.equation{max-width:100%;min-width:0}
.hint{min-height:27px;height:auto;line-height:var(--zw-reading-line)}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;
 padding:0!important;margin:-1px!important;overflow:hidden!important;
 clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.parent-field-select{max-width:100%}
@media (max-width:679px) and (max-height:630px) and (orientation:portrait){
 .app-header:not(.home-header){min-height:48px;padding-top:calc(env(safe-area-inset-top,0px) + 2px)}
 .main-content{padding-top:0;padding-bottom:max(8px,env(safe-area-inset-bottom,0px))}
 .progress{min-height:43px;margin:0}
 .wood-heading{min-height:45px!important;padding:5px 12px!important}
 .equation-area{min-height:100px;padding:4px 11px!important}
 .equation .chalkglyph{height:50px;width:35px}
 .equation .op .chalkglyph,.equation .equals .chalkglyph{height:40px;width:27px}
 .equation .unknown .chalkglyph{width:40px}
 .instruction{margin:1px auto 2px;font-size:16px;line-height:1.15}
 .visual-board{margin:1px 0 0}
 .count-card{min-height:111px}
 .hand-set,.hand-set .hand-svg{height:111px}
 .animal-group{min-height:95px}
 .friend-peek-pair{height:52px;margin-top:-4px}
 .friend-peek-pair img{height:58px;max-height:58px;width:27%}
 .answer-wrap{gap:2px;margin-top:5px}
 .answer-label{line-height:1.1}
 .answer{height:62px!important;min-height:62px!important}
 .hint{min-height:17px;font-size:14px}
}
@media (max-width:360px){
 .answer{min-width:0}
 .answer .crayon-answer-digit{max-width:42px}
 .brand-name{letter-spacing:-1px}
 .wood-heading{font-size:clamp(18px,5.8vw,21px)!important}
}
@media (orientation:landscape) and (max-height:520px){
 .device{min-height:100dvh}
 .main-content{min-height:0}
 .answer{min-height:56px!important}
 .answer-wrap{padding-bottom:8px}
}
@media(prefers-reduced-motion:reduce){
 .animate-entry,.confetti-piece,.care-button.ready svg,.intro-scene{animation:none!important}
}
/* Premium finishing: safe areas, keyboard focus, child-friendly typography */
.eyebrow{margin:0}
[data-focus-heading]:focus{outline:none}
[data-focus-heading]:focus-visible{outline:3px solid #254f8c;outline-offset:4px}

.parent-panel{margin-top:clamp(8px,3dvh,30px);margin-bottom:12px}
.parent-panel h1{margin:4px auto 12px}
.parent-panel .secondary-button{min-height:48px}
.parent-field-select{min-height:48px;font-size:16px}
.app-header:not(.home-header){padding-top:max(7px,calc(env(safe-area-inset-top,0px) + 5px))}
.home-header{padding-top:calc(env(safe-area-inset-top,0px) + 8px)}
@media(max-height:745px){
 .app-header:not(.home-header){padding-top:max(5px,calc(env(safe-area-inset-top,0px) + 3px))}
 .parent-panel{padding:13px 16px}
}
@media(max-width:360px){.parent-panel{padding:13px 11px}.parent-panel .secondary-button{margin:5px}}
@media(min-width:680px) and (orientation:portrait){.device{overflow-y:auto}}
@media (orientation:landscape) and (max-height:520px){
 .device{overflow-y:visible}
 .app-header:not(.home-header){padding-top:max(7px,calc(env(safe-area-inset-top,0px) + 4px))}
}

/* Avoid infinite transforms on the Largest Contentful Paint hero. */
.intro-content .intro-scene{animation:none!important}

/* Pre-rendered, visually identical painted background; SVG kept as fallback. */
.device{background-color:#a4d3ea!important;background-image:url('/storybook-portrait.webp')!important;background-size:100% 100%!important}
@media(orientation:landscape) and (max-height:520px){
 .device{background-image:url('/storybook-landscape.webp')!important;background-size:100% 100%!important}
}

.intro-scene picture{display:block;width:100%;height:100%}


/* source: hand-fix.css */
/* Zählwiese – anatomisch festgelegte Fingerposen, vollständig im Bild.
   Jede Pose ist eine eigenständige Illustration. Der Handgelenkbereich läuft weich aus. */
.visual-board:has(.original-hand){
  overflow:visible!important;
  align-items:stretch!important;
}
.count-card:has(.original-hand){
  overflow:visible!important;
  padding:15px 4px 3px!important;
  justify-content:flex-end!important;
  min-width:0!important;
}
.count-card:has(.original-hand):after{display:none!important}
.hand-set{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-height:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
  gap:0!important;
}
.hand-set .hand-svg.original-hand{
  display:block!important;
  flex:0 1 auto!important;
  height:100%!important;
  width:auto!important;
  min-height:0!important;
  max-width:99%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  margin:0 auto!important;
  border:0!important;
  overflow:visible!important;
  filter:drop-shadow(1px 2px 1px #5e65432b)!important;
}
.hand-set.two .hand-svg.original-hand{
  width:49%!important;
  max-width:49%!important;
  height:100%!important;
  margin:0!important;
}
.result-visual:has(.original-hand){overflow:visible!important;padding:8px 10px 5px!important}
.result-hands{
  height:clamp(155px,27vh,216px)!important;
  max-height:216px!important;
  min-height:0!important;
  width:100%!important;
  overflow:visible!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3px!important;
}
.result-hands .hand-svg.original-hand,
.result-hands .hand-svg.original-hand:only-child{
  display:block!important;
  flex:0 1 auto!important;
  width:auto!important;
  height:100%!important;
  max-width:49%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  margin:0!important;
  filter:drop-shadow(1px 2px 1px #5e654329)!important;
}
.result-hands .hand-svg.original-hand:only-child{max-width:90%!important}
.mirror-hand{transform:scaleX(-1)!important}
@media (max-height:680px){
 .count-card:has(.original-hand){padding:10px 1px 2px!important}
 .result-hands{height:clamp(127px,23vh,166px)!important}
}
@media (max-width:360px){
 .hand-set .hand-svg.original-hand{max-width:98%!important}
 .result-hands{gap:0!important}
}
@media (prefers-reduced-motion:reduce){
 .original-hand{transition:none!important;animation:none!important}
}

/* Handgezeichnete Gesten: niemals Bild beschneiden oder im CSS seitlich abschneiden. */
.story-hand{object-fit:contain!important;object-position:center center!important;image-rendering:auto;clip-path:none!important;background:transparent!important;border:0!important;max-height:100%!important}
.hand-set,.result-hands{overflow:visible!important}
.count-card:has(.story-hand){overflow:visible!important;min-width:0!important}


/* source: hand-result-v19.css */
/* Clean result page: hands and animals belong in the storybook landscape. */
.result-visual,
.result-visual:has(.result-hands),
.result-visual:has(.result-animals){
  border:0!important;
  outline:0!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  border-radius:0!important;
  padding:5px 7px 0!important;
  margin:0 auto 5px!important;
  overflow:visible!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.result-visual::before,.result-visual::after{content:none!important;display:none!important}
.result-hands{align-items:center!important;justify-content:center!important}
.result-hands .story-hand{filter:drop-shadow(1px 3px 1px #65784445)!important}
.counting-message{
  color:#355b43!important;
  text-shadow:1px 1px 0 #fdf0c9,-1px -1px 0 #fff6d4!important;
  font-weight:900!important;
  margin-top:0!important;
}
.result-instruction{
  color:#285a46!important;
  text-shadow:1px 1px 0 #fff7d5,-1px -1px 0 #fff4ce!important;
}
@media (max-width:360px){
 .result-visual{min-height:145px!important}
}


/* source: animals-and-choice.css */
/* Zählwiese · Premium Tierwiese + kindgerechte Spielauswahl · 2026 */
.mode-choices{
 width:100%;max-width:390px;margin:3px auto 7px;padding:0 7px;
 display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-items:center;
 gap:clamp(10px,3vw,19px);
}
.mode-choice{font:inherit;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:1px;
 padding:0;border:0;background:transparent;box-shadow:none;cursor:pointer;
 touch-action:manipulation;transform:translateZ(0)}
.mode-round{
 display:grid;place-items:center;width:clamp(114px,37vw,154px);height:clamp(114px,37vw,154px);
 aspect-ratio:1/1; flex-shrink:0;
 border:0;box-shadow:none;background:transparent center/100% 100% no-repeat;
 transition:transform .2s cubic-bezier(.2,.85,.3,1),filter .2s ease; position:relative;
 filter:drop-shadow(2px 6px 1px #6c744549);
}
.mode-hands .mode-round{background-image:url('/mode-hands-round.svg')}
.mode-animals .mode-round{background-image:url('/mode-animals-round.svg')}
.mode-round img{
 display:block;width:75%;height:76%;object-fit:contain;object-position:center;
 filter:drop-shadow(1px 3px 0 #7354433a);
 pointer-events:none;
}
.mode-hands .mode-round img{width:72%;height:77%;transform:translateY(3px)}
.mode-animals .mode-round img{width:78%;height:81%;transform:translateY(-1px)}
.mode-label{
 display:block;white-space:nowrap;padding:3px 2px 4px;
 font:900 clamp(17px,4.8vw,22px) "Chalkboard SE","Marker Felt","Comic Sans MS","Trebuchet MS",system-ui,sans-serif;
 color:#3d6848;text-shadow:1.5px 1.5px #fff8d8,-1px -1px #fff6d3;
}
.mode-hands .mode-label{color:#3b6b78}
.mode-choice:active .mode-round{transform:scale(.95) translateY(2px);filter:drop-shadow(0px 2px 1px #6c744549)}
.mode-choice:focus-visible{outline:4px solid #355c9b;outline-offset:3px;border-radius:23px}
.mode-choice:focus-visible .mode-round{transform:scale(1.035)}
/* Compact but airy hero: two large circular choices always accessible on phone */
.home-header{min-height:48px!important}
.intro-content{justify-content:flex-start!important;padding-top:0!important;gap:0!important;min-height:0!important;}
.intro-content .rainbow-title{margin:3px auto 0!important}
.intro-content .intro-scene{height:clamp(174px,29dvh,245px)!important;max-width:360px!important;margin:0 auto 0!important}
.intro-content .friends-name-row{margin:-5px auto 4px!important}
.intro-content .welcome-subtitle{margin:1px auto 5px!important;line-height:1.22!important;font-size:clamp(16px,4.4vw,20px)!important}
.intro-content .welcome-footer{margin:5px auto 3px!important;font-size:11px!important}
@media(min-height:865px) and (orientation:portrait){
 .intro-content .intro-scene{height:clamp(235px,30dvh,282px)!important}
 .mode-round{width:clamp(137px,36vw,170px);height:clamp(137px,36vw,170px)}
 .mode-choices{margin-top:7px;gap:15px}
 .intro-content .welcome-subtitle{margin-bottom:10px!important}
}
@media(max-height:700px) and (orientation:portrait){
 .home-header{min-height:44px!important;height:44px!important}
 .intro-content .rainbow-title{font-size:clamp(37px,11vw,46px)!important;margin:0 auto!important}
 .intro-content .intro-scene{height:clamp(142px,25dvh,177px)!important}
 .intro-content .friends-name-row{font-size:clamp(15px,4.2vw,18px)!important;margin:-8px auto 1px!important}
 .intro-content .welcome-subtitle{font-size:clamp(14px,4vw,17px)!important; margin:0 auto 2px!important}
 .mode-round{width:clamp(109px,34vw,129px);height:clamp(109px,34vw,129px)}
 .mode-label{font-size:clamp(16px,4.5vw,19px)}
 .intro-content .welcome-footer{font-size:10px!important;margin-top:0!important}
}
/* Tierwelt: no Moritz and Igor during animal challenges; animals themselves receive more room. */
.visual-board:has(.animal-group){align-items:center!important}
.count-card:has(.animal-group){overflow:visible!important;min-width:0}
.count-card .animal-group{max-width:100%;overflow:visible!important;align-content:center!important}
.animal-card{overflow:visible!important}
.animal-card .animal-svg{
 object-fit:contain!important;object-position:center!important;width:100%!important;height:100%!important;
 filter:drop-shadow(1px 2px 0 #6c70463a)!important;
}
.animal-group .animal-card{margin:-5px -5px!important}
.animal-pet .animal-card{margin:0!important}
.result-animals{overflow:visible!important;align-items:center;justify-content:center}
.result-animals .animal-card{margin:0 -1px!important}
.answer-wrap:has(.friend-peek-pair){margin-top:auto}
.answer-wrap:not(:has(.friend-peek-pair)){min-height:170px;justify-content:flex-end;gap:5px}
.answer-wrap:not(:has(.friend-peek-pair)) .answer-label{margin-top:4px}
@media(max-height:700px){
 .answer-wrap:not(:has(.friend-peek-pair)){min-height:133px}
 .animal-group .animal-card{margin:-7px -5px!important}
}
@media(prefers-reduced-motion:reduce){.mode-round{transition:none}}

/* Keep the illustrated title characters inside their actual hero frame on narrow iPhones. */
.intro-content .intro-scene{position:relative!important}
.intro-content .intro-scene picture{
 position:absolute!important;inset:0!important;
 display:block!important;width:100%!important;height:100%!important;
 max-height:100%!important;overflow:visible!important;
}
.intro-content .intro-scene picture img,
.intro-content .intro-scene > img{
 display:block!important;width:100%!important;height:100%!important;max-height:100%!important;
 object-fit:contain!important;object-position:center!important;
}


/* source: care-animations.css */
/* Zählwiese – drei frei wählbare Tier-Belohnungen, vollständig gezeichnete Bedienelemente */
.animal-result-page{position:relative}
.animal-care-stage{
  position:relative!important;display:flex!important;flex-direction:column!important;
  justify-content:center!important;align-items:center!important;
  width:100%;height:clamp(170px,26dvh,242px);min-height:165px!important;
  margin:1px auto 0!important;padding:0 4px!important;overflow:visible!important;
  isolation:isolate;
}
.animal-care-stage .result-animals{
 display:flex!important;flex-wrap:wrap!important;align-content:center!important;justify-content:center!important;
 align-items:center!important;gap:0!important;position:relative;z-index:1;
 min-height:145px!important;width:100%;max-height:100%!important;
 overflow:visible!important;padding:3px!important;margin:0 auto!important;
}
.animal-care-stage .result-animals .animal-card{
 display:flex!important;align-items:center!important;justify-content:center!important;
 width:clamp(53px,14.6vw,81px)!important;height:clamp(63px,16.8vw,92px)!important;
 margin:-4px -4px!important;
 overflow:visible!important;transform-origin:center 93%;
 animation:none;
}
.animal-care-stage .result-animals .animal-card img{
 width:100%!important;height:100%!important;object-fit:contain!important;
 filter:drop-shadow(1px 3px 1px #58714c42)!important;
}
.care-choice-area{width:100%;max-width:400px;display:flex;flex-direction:column;
 align-items:center;gap:3px;margin:auto auto 0!important;padding:3px 0 max(5px,env(safe-area-inset-bottom,0px))}
.care-choice-area .interaction-title{
 margin:2px auto 3px;line-height:1.2;font-size:clamp(17px,4.7vw,21px);
 color:#336b4d;text-shadow:1px 1px #fff3ca;
}
.care-options{display:flex;align-items:center;justify-content:space-between;
 width:min(100%,368px);gap:clamp(5px,2vw,18px);margin:0 auto;padding:0 2px 4px}
.care-option{
 -webkit-appearance:none;appearance:none;display:grid;place-items:center;position:relative;
 flex:0 1 auto;width:clamp(86px,28vw,112px);height:clamp(86px,28vw,112px);
 min-width:76px;aspect-ratio:1;border:0!important;border-radius:50%!important;
 background:url('/mode-animals-round.svg') center/100% 100% no-repeat!important;
 box-shadow:none!important;cursor:pointer;touch-action:manipulation;
 transition:transform .2s cubic-bezier(.2,.9,.3,1);filter:drop-shadow(2px 4px 2px #8a8a594a);
}
.care-option:nth-child(2){background-image:url('/mode-hands-round.svg')!important}
.care-option:nth-child(3){background-image:url('/mode-animals-round.svg')!important}
.care-option img{display:block;width:77%;height:77%;object-fit:contain;pointer-events:none}
.care-pet-btn img{width:79%;height:79%}
.care-option:active{transform:scale(.91) translateY(3px);filter:drop-shadow(1px 2px 0 #8a8a594a)}
.care-option:focus-visible{outline:4px solid #315a92!important;outline-offset:2px}
.animal-care-stage .animals-celebrating .animal-card{
 animation:joyful-pet-bounce .84s cubic-bezier(.34,.01,.48,1) calc(var(--animal-index)*70ms) 5 both!important;
}
.animal-care-stage .animals-celebrating .animal-card:nth-child(2n){
 animation-name:joyful-pet-wiggle!important;
}
@keyframes joyful-pet-bounce{
 0%{transform:translateY(0) rotate(-3deg) scale(1)}
 24%{transform:translateY(-13px) rotate(7deg) scale(1.05)}
 54%{transform:translateY(1px) rotate(-5deg) scale(.98)}
 80%{transform:translateY(-8px) rotate(4deg) scale(1.02)}
 100%{transform:translateY(0) rotate(0deg) scale(1)}
}
@keyframes joyful-pet-wiggle{
 0%{transform:translateY(0) rotate(-5deg)}
 26%{transform:translateY(-9px) rotate(11deg) scale(1.04)}
 50%{transform:translateY(1px) rotate(-12deg)}
 75%{transform:translateY(-7px) rotate(8deg) scale(1.04)}
 100%{transform:translateY(0) rotate(0deg)}
}
.care-action-stage{
 position:absolute;z-index:3;left:50%;top:46%;
 width:clamp(65px,18vw,91px);height:clamp(65px,18vw,91px);
 pointer-events:none;transform:translate(-50%,5%) scale(1);
}
.care-action-stage > img{display:block;width:100%;height:100%;object-fit:contain;
 filter:drop-shadow(1px 5px 2px #5b6b4a66)}
.care-action-stage.care-feed > img{animation:feed-the-animals 3.7s cubic-bezier(.27,.8,.32,1) both}
.care-action-stage.care-water > img{animation:water-the-animals 3.8s ease-in-out both}
.care-action-stage.care-pet > img{animation:pet-the-animals 3.9s ease-in-out both}
@keyframes feed-the-animals{
 0%{opacity:0;transform:translate(0,95px) scale(.5) rotate(-10deg)}
 20%{opacity:1;transform:translate(0,20px) scale(1.12) rotate(8deg)}
 38%{transform:translate(0,5px) scale(1) rotate(-6deg)}
 52%,77%{transform:translate(0,18px) scale(1) rotate(0deg);opacity:1}
 100%{transform:translate(0,28px) scale(.8);opacity:0}
}
@keyframes water-the-animals{
 0%{opacity:0;transform:translate(45px,98px) rotate(-20deg) scale(.6)}
 21%{opacity:1;transform:translate(36px,13px) rotate(-32deg) scale(1.08)}
 40%,64%{transform:translate(26px,12px) rotate(-67deg) scale(1)}
 82%{opacity:1;transform:translate(30px,22px) rotate(-24deg)}
 100%{opacity:0;transform:translate(52px,83px) rotate(4deg) scale(.6)}
}
@keyframes pet-the-animals{
 0%{opacity:0;transform:translate(95px,60px) rotate(25deg) scale(.5)}
 16%{opacity:1;transform:translate(36px,13px) rotate(-18deg) scale(1)}
 30%{transform:translate(4px,-6px) rotate(12deg)}
 43%{transform:translate(-16px,3px) rotate(-12deg)}
 56%{transform:translate(12px,-8px) rotate(11deg)}
 70%{transform:translate(-11px,4px) rotate(-10deg)}
 87%{opacity:1;transform:translate(25px,12px) rotate(5deg)}
 100%{opacity:0;transform:translate(95px,59px) rotate(15deg)}
}
/* Animated hand-drawn sparks, hearts for petting, water droplets or food pieces. */
.care-magic{position:absolute;inset:0;pointer-events:none}
.care-magic span{
 position:absolute;left:46%;top:30%;
 width:12px;height:12px;display:block;border-radius:4px;
 --sx:calc((var(--spark) - 3)*19px);
 --sy:calc((var(--spark) - 3)*-12px);
 animation:care-sparkle-out 1.85s cubic-bezier(.12,.5,.27,1) calc(.6s + var(--spark)*70ms) 2 both;
 background:#e5b87b;border:1.2px solid #ab845b;box-shadow:0 0 0 1px #fff5cf54;
}
.care-feed .care-magic span{border-radius:54% 30% 55% 43%;background:#c4a56a}
.care-water .care-magic span{border-radius:75% 5% 65% 55%;background:#8ed2ec;border-color:#559eb8;transform:rotate(35deg)}
.care-pet .care-magic span{border:none;background:#f2a3b4;border-radius:4px;transform:rotate(-45deg)}
.care-pet .care-magic span:before,.care-pet .care-magic span:after{
 content:'';position:absolute;width:12px;height:12px;background:#f2a3b4;border-radius:50%;
}
.care-pet .care-magic span:before{top:-6px;left:0}
.care-pet .care-magic span:after{top:0;left:6px}
@keyframes care-sparkle-out{
 0%{opacity:0;translate:0 20px;scale:.3}
 25%{opacity:1;translate:calc(var(--sx)*.55) calc(var(--sy)*.55);scale:1}
 80%{opacity:1;translate:var(--sx) var(--sy);scale:.8}
 100%{opacity:0;translate:calc(var(--sx)*1.2) calc(var(--sy)*1.4);scale:.25}
}
.care-reaction{margin:5px auto;min-height:50px;color:#4a7051;font-weight:800;font-size:18px;text-shadow:1px 1px #fff3cd;line-height:1.25}
.animal-result-page .confetti{pointer-events:none}
@media(max-height:740px) and (orientation:portrait){
 .animal-care-stage{height:clamp(126px,22dvh,165px)!important;min-height:126px!important}
 .animal-care-stage .result-animals{min-height:110px!important}
 .animal-care-stage .result-animals .animal-card{width:clamp(43px,13vw,63px)!important;height:clamp(53px,15vw,76px)!important;margin:-7px -4px!important}
 .care-choice-area{padding-bottom:max(2px,env(safe-area-inset-bottom,0px))}
 .care-choice-area .interaction-title{font-size:17px}
 .care-option{width:clamp(73px,26vw,95px);height:clamp(73px,26vw,95px);min-width:70px}
 .care-reaction{font-size:15px;min-height:33px}
}
@media(max-width:340px){
 .care-options{gap:4px!important}
 .care-option{width:clamp(70px,26vw,91px);height:clamp(70px,26vw,91px)}
}
@media(prefers-reduced-motion:reduce){
 .animal-care-stage .animals-celebrating .animal-card,
 .care-action-stage > img,.care-magic span{animation:none!important}
 .care-action-stage > img{opacity:1;transform:none}
 .care-magic span{opacity:0}
}

/* Final fit: visible animal expressions at every count and clean names on small phones */
.animal-care-stage .result-animals .animal-card{
 width:min(var(--pet-size,74px),26.6vw)!important;
 height:min(calc(var(--pet-size,74px)*1.1),28.8vw)!important;
 margin:-4px -3px!important;
}
@media(max-height:740px) and (orientation:portrait){
 .animal-care-stage .result-animals .animal-card{
   width:min(var(--pet-size,72px),22.2vw)!important;
   height:min(calc(var(--pet-size,72px)*1.10),25vw)!important;
   margin:-5px -3px!important;
 }
}
@media(max-width:360px) and (orientation:portrait){
 .intro-content .intro-scene{height:clamp(142px,25dvh,180px)!important}
 .intro-content .friends-name-row{margin:10px auto 3px!important;font-size:clamp(15px,4.4vw,18px)!important}
 .intro-content .welcome-subtitle{margin:4px auto 4px!important}
 .mode-choices{margin-top:1px!important}
 .intro-content .welcome-footer{margin-top:1px!important}
}


/* source: extra-games.css */
/* Zählwiese · Zahlen-Picknick & Tiere füttern. Eigenständige, konsistente Illustrationswelt */
.mode-picnic .mode-round{background-image:url('/mode-hands-round.svg')}
.mode-feeding .mode-round{background-image:url('/mode-animals-round.svg')}
.mode-picnic .mode-round img{width:80%;height:82%;transform:translateY(0)}
.mode-feeding .mode-round img{width:79%;height:84%;transform:translateY(0)}
.mode-picnic .mode-label{color:#916243}
.mode-feeding .mode-label{color:#547a59}
.mode-choices{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(8px,2vw,18px);row-gap:clamp(0px,.7dvh,8px);margin:1px auto!important}
.mode-round{width:clamp(103px,32vw,137px);height:clamp(103px,32vw,137px)}
.mode-label{font-size:clamp(15px,4.3vw,19px);line-height:1.17;text-align:center;padding:2px 0 3px}
.intro-content .intro-scene{height:clamp(137px,23dvh,188px)!important;margin:0 auto!important}
.intro-content .rainbow-title{font-size:clamp(39px,10vw,51px)!important;margin:0 auto!important}
.intro-content .friends-name-row{margin:-7px auto 1px!important}
.intro-content .welcome-subtitle{font-size:clamp(16px,4.2vw,20px)!important;margin:0 auto 4px!important}
.intro-content .welcome-footer{margin:4px auto 3px!important;padding-top:1px}
@media(min-height:860px) and (orientation:portrait){
 .intro-content .intro-scene{height:clamp(170px,24dvh,212px)!important}
 .mode-round{width:clamp(126px,33vw,148px);height:clamp(126px,33vw,148px)}
 .mode-choices{row-gap:8px}
}
@media(max-height:700px) and (orientation:portrait){
 .intro-content .intro-scene{height:clamp(107px,20dvh,138px)!important}
 .mode-round{width:clamp(90px,29vw,112px);height:clamp(90px,29vw,112px)}
 .mode-label{font-size:clamp(13px,3.9vw,17px)}
 .intro-content .friends-name-row{font-size:clamp(14px,3.9vw,17px)!important}
}
@media(max-width:360px) and (orientation:portrait){
 .mode-round{width:clamp(89px,30vw,108px);height:clamp(89px,30vw,108px)}
 .mode-choices{column-gap:3px}
 .intro-content .intro-scene{height:clamp(110px,20dvh,150px)!important}
}
/* Strict mobile content bounds: avoid notch, home indicator and clipped activity controls */
.main-content.extra-page{position:relative;min-height:0!important;flex:1;gap:0;padding:1px max(12px,4vw) max(14px,calc(env(safe-area-inset-bottom,0px) + 10px));overflow:visible;isolation:isolate}
.extra-page button{font-family:var(--font);-webkit-tap-highlight-color:transparent}
.extra-page button:focus-visible{outline:3px solid #305586!important;outline-offset:3px!important}
.extra-top{display:flex;flex-direction:column;align-items:center;width:100%;gap:4px;flex-shrink:0}
.extra-sign.wood-heading{min-height:48px;display:grid;place-items:center;font-size:clamp(21px,5.4vw,25px);padding:6px 28px;line-height:1.15;margin:3px auto 0}
.extra-progress{display:flex;gap:5px;justify-content:center;align-items:center;margin:3px auto 0;height:12px}
.extra-progress i{display:block;width:10px;height:10px;background:#c3d9c0;border:1.7px solid #8fa278;border-radius:50%;box-shadow:1px 1px #fff2c6}
.extra-progress i.current{background:#edc36f;transform:scale(1.22)}
.extra-progress i.done{background:#70aa70}
.extra-subtitle{font-size:clamp(14px,4vw,18px);font-weight:900;color:#466c4e;text-shadow:1px 1px #fff2c8;margin:0;text-align:center;line-height:1.1}
.extra-page .extra-scene{position:relative;width:100%;max-width:380px;flex:1 1 auto;min-height:117px;max-height:175px}
.extra-mascot{display:block;object-fit:contain;object-position:center bottom;pointer-events:none;-webkit-user-drag:none;user-select:none}
.picnic-scene .extra-mascot{position:absolute;bottom:0;width:clamp(90px,31%,142px);height:clamp(102px,96%,168px);z-index:2;filter:drop-shadow(0px 3px 0 #775b4333)}
.picnic-scene .extra-mouse{left:0;transform:rotate(-3deg)}
.picnic-scene .extra-hedgehog{right:0;transform:rotate(3deg)}
.extra-bubble{position:relative;z-index:3;max-width:65%;width:max-content;min-width:162px;margin:4px auto 0;text-align:center;background:#ffefc7;border:3px solid #a8734d;border-radius:22px 19px 23px 16px;box-shadow:2px 3px 0 #8f815a55, inset 1px 2px #fff9de;color:#6f5137;font-size:clamp(15px,4vw,19px);font-weight:950;line-height:1.18;padding:11px 9px;transform:rotate(-1.5deg)}
.picnic-cloth{position:relative;width:95%;max-width:370px;height:20px;margin:0 auto -15px;z-index:1;flex-shrink:0;background:repeating-linear-gradient(90deg,#efd4bd 0 33px,#edaca6 33px 64px);border-radius:55% 40% 10% 20%;border:3px solid #b17d65;transform:rotate(-1deg)}
.picnic-basket{position:relative;display:flex;justify-content:center;align-items:center;min-height:clamp(125px,20dvh,187px);max-height:200px;width:min(100%,350px);margin:0 auto;flex:1 1 auto;z-index:3;transition:filter .15s ease,transform .18s ease}
.picnic-handle{position:absolute;z-index:0;top:1%;width:68%;height:75%;border:11px solid #946540;border-bottom:0;border-radius:55% 55% 8% 8%;box-shadow:inset 0 0 0 4px #d9a774,0 0 0 2px #e8cc9a;opacity:.96}
.picnic-basket-inner{z-index:2;position:relative;display:grid;grid-template-columns:repeat(5,1fr);align-items:center;justify-items:center;gap:2px 1px;width:92%;min-height:102px;padding:14px 6px 15px;margin-top:22px;background:linear-gradient(165deg,#f2dfb6e8,#d5a672fa);border:4px solid #8f6146;border-radius:17px 17px 32px 31px;box-shadow:3px 6px 0 #84512e55,inset 0 0 12px #af7b4d40}
.picnic-basket-front{z-index:1;position:absolute;bottom:1%;width:91%;height:27%;border-radius:0 0 35px 33px;background:repeating-linear-gradient(89deg,#ba8652 0 9px,#d5a476 11px 20px);border:3px solid #96633e;box-shadow:inset 0 7px #f1cb9b80;pointer-events:none}
.picnic-place{width:clamp(38px,10vw,56px);height:clamp(43px,10vw,60px);display:grid;place-items:center;border-radius:50%;border:2px dashed #ad855c88;background:#fff3d55e}
.picnic-place .extra-food-icon{width:95%;height:95%;filter:drop-shadow(1px 2px #97735242)}
.picnic-place.occupied{background:#fff2cc99;border-color:transparent}
.picnic-place.placed .extra-food-icon{animation:extra-land .36s cubic-bezier(.16,1.4,.5,1)}
.picnic-place-empty{width:55%;height:55%;border:2px dotted #bc946f;border-radius:50%;opacity:.75}
.extra-food-icon{width:100%;height:100%;display:block;overflow:visible;pointer-events:none}
.extra-status{font-size:clamp(19px,5.1vw,24px);font-weight:900;color:#476448;text-shadow:1px 1px #fff7d4;margin:3px auto 2px;min-height:29px;text-align:center;flex-shrink:0}
.extra-status strong{color:#a66b47;font-size:1.22em}
.extra-hint{font-size:clamp(14px,4vw,17px);line-height:1.2;color:#4c684b;font-weight:900;margin:0 auto 4px;max-width:350px;min-height:21px;text-align:center;text-shadow:1px 1px #fff2d0;flex-shrink:0}
.extra-food-tray{display:flex;justify-content:center;align-items:center;gap:clamp(5px,2vw,11px);width:100%;max-width:398px;margin:1px auto;flex-shrink:0}
.extra-food-choice{display:grid;place-items:center;flex:0 0 auto;width:clamp(63px,17vw,81px);height:clamp(63px,17vw,81px);padding:7px;border:4px solid #976749;border-radius:50%;background:radial-gradient(circle at 36% 28%,#fff5d7,#ecd0a2 71%);box-shadow:inset 0 0 0 3px #fff0cf,2px 4px 0 #7d644650,0 6px 12px #7a65442a;touch-action:none;user-select:none;-webkit-user-select:none;transition:filter .12s ease,transform .14s ease}
.extra-food-choice:nth-child(2n){background:radial-gradient(circle at 36% 28%,#f6fae2,#bcd4b0)}
.extra-food-choice:nth-child(3n){background:radial-gradient(circle at 36% 28%,#fff5da,#edc6b4)}
.extra-food-choice:active{transform:scale(.94)}
.extra-food-choice.extra-dragging{opacity:.56}
.extra-drag-ghost{position:fixed;left:0;top:0;z-index:99999;width:85px;height:85px;pointer-events:none;transform:translate(-50%,-50%) rotate(-7deg) scale(1.13);filter:drop-shadow(1px 7px 4px #65513780);will-change:left,top}
.extra-drop-over{filter:drop-shadow(0 0 12px #fffbb7);transform:scale(1.03)}
.extra-pop{animation:extra-pop .36s ease-out}
.extra-shake{animation:extra-wiggle .32s ease-in-out}
.extra-next-area{min-height:50px;width:100%;display:flex;align-items:center;justify-content:center;margin:3px auto 0;flex-shrink:0}
.extra-next{min-width:155px;min-height:45px;padding:6px 22px;color:#62482f;background:#f1c77d;border:3px solid #8f653f;border-radius:18px;font-weight:900;font-size:21px;box-shadow:2px 4px 0 #8064447a;transition:transform .12s,opacity .12s}
.extra-next:disabled{opacity:0;pointer-events:none;visibility:hidden}
.extra-next:active{transform:translateY(3px)}
.extra-success .extra-mascot,.extra-success .feed-main-pet{animation:extra-celebrate .68s ease-in-out 4;transform-origin:50% 90%}
.extra-page .confetti{pointer-events:none;z-index:15}
.extra-back-choice{background:#f8e5b6;border:2px solid #b2875e;border-radius:19px;padding:4px 12px;min-height:30px;font-size:14px;color:#74583a;font-weight:900}
.feed-select .extra-subtitle{font-size:clamp(18px,4.8vw,22px);margin-top:10px}
.feed-choice-grid{width:min(100%,400px);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(5px,2dvh,18px) 8px;justify-items:center;align-content:center;flex:1;margin:10px auto}
.extra-animal-choice{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:transparent;border:0;padding:0;min-width:0;width:100%;font-weight:900}
.extra-animal-round{display:grid;place-items:center;position:relative;width:clamp(110px,36vw,151px);height:clamp(110px,36vw,151px);aspect-ratio:1;background:url('/mode-animals-round.svg') center/100% 100% no-repeat;filter:drop-shadow(1px 5px 2px #715d4042);transition:transform .2s ease}
.extra-animal-choice:nth-child(even) .extra-animal-round{background-image:url('/mode-hands-round.svg')}
.extra-animal-round img{width:84%;height:85%;object-fit:contain;filter:drop-shadow(1px 2px #856b404a)}
.extra-animal-choice:active .extra-animal-round{transform:scale(.94)}
.extra-animal-name{font-size:clamp(19px,5vw,23px);color:#41674c;text-shadow:1px 1px #fff8d1}
.extra-selection-footer{font-size:16px;font-weight:900;text-shadow:1px 1px #fff5d4;color:#617648;margin:5px auto 13px}
.feed-scene{position:relative;flex:1 1 auto;min-height:190px;width:100%;max-width:375px;display:flex;align-items:center;justify-content:flex-end;flex-direction:column}
.feed-bubble{position:relative;max-width:94%;margin:5px auto 1px;min-height:61px;flex-shrink:0;transform:rotate(-1deg);font-size:clamp(15px,4vw,19px)}
.feed-pet-drop{height:clamp(130px,23dvh,205px);width:clamp(170px,58vw,240px);flex:1 1 auto;min-height:116px;display:flex;align-items:center;justify-content:center;position:relative;margin:0 auto;transition:filter .15s ease,transform .14s ease}
.feed-pet-drop:before{content:"";position:absolute;inset:12% 7% 1%;border-radius:50%;background:radial-gradient(circle,#fff5d0af 0,#c0d8a3a6 58%,#abd0a433 74%,transparent 76%);border:3px dashed #8aa46b66;pointer-events:none}
.feed-main-pet{width:100%;height:98%;position:relative;z-index:2;filter:drop-shadow(2px 3px 1px #6d593955)}
.feed-hearts{position:absolute;inset:0;pointer-events:none;z-index:3;opacity:0}
.feed-hearts span{color:#d9747e;font-size:25px;position:absolute;left:48%;bottom:34%;text-shadow:2px 2px #fff2cc}
.feed-hearts span:nth-child(1){--mx:-50px;--my:-95px}
.feed-hearts span:nth-child(2){--mx:34px;--my:-110px}
.feed-hearts span:nth-child(3){--mx:-7px;--my:-125px}
.extra-success .feed-hearts{opacity:1}
.extra-success .feed-hearts span{animation:extra-heart 1.4s ease-out infinite;animation-delay:calc((var(--mx) + 50px) * 0s)}
.feed-food-bowl{width:clamp(130px,40vw,195px);height:32px;margin:-10px auto 0;border:5px solid #98714f;border-radius:50% 50% 18px 18px;background:linear-gradient(#f9e0b7 0 30%,#d39a69 33%,#bb8458);position:relative;z-index:4;box-shadow:1px 4px 0 #654c3766;display:flex;align-items:center;justify-content:center;gap:0}
.eaten-item{width:clamp(24px,7vw,35px);height:clamp(24px,7vw,35px);display:block;margin:0 -3px;transform:translateY(-14px) rotate(calc((var(--idx) - 2) * 6deg));animation:extra-land .3s both}
.feed-food-tray{max-width:395px;flex-wrap:wrap;gap:7px;min-height:82px}
.feed-food-tray .extra-food-choice{width:clamp(58px,16vw,72px);height:clamp(58px,16vw,72px);padding:5px}
.feed-select .extra-top{margin-bottom:0}
@keyframes extra-land{0%{opacity:.3;transform:translateY(-15px) scale(.7) rotate(-9deg)}70%{transform:translateY(3px) scale(1.18)}100%{opacity:1;transform:translateY(0) scale(1)}}
@keyframes extra-pop{0%{transform:scale(1)}48%{transform:scale(1.06)}100%{transform:scale(1)}}
@keyframes extra-wiggle{0%,100%{transform:translateX(0)}25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}
@keyframes extra-celebrate{0%,100%{transform:translateY(0) rotate(0)}34%{transform:translateY(-16px) rotate(-6deg)}65%{transform:translateY(-5px) rotate(6deg)}}
@keyframes extra-heart{from{opacity:0;transform:translateY(0) scale(.5)}35%{opacity:1}to{opacity:0;transform:translate(var(--mx),var(--my)) scale(1.3)}}
@media(max-height:730px) and (orientation:portrait){
 .extra-sign.wood-heading{min-height:38px;font-size:19px;padding:4px 17px}
 .extra-progress{height:9px;margin:0 auto}.extra-progress i{width:8px;height:8px}
 .extra-subtitle{font-size:14px}
 .picnic-scene .extra-mascot{height:98%}
 .extra-page .extra-scene{max-height:130px;min-height:92px}
 .extra-bubble{font-size:clamp(13px,3.75vw,16px);padding:7px 7px;min-width:135px}
 .picnic-basket{min-height:111px;max-height:139px}
 .picnic-basket-inner{min-height:87px;margin-top:17px;padding:7px 4px 9px}
 .picnic-place{width:clamp(34px,9.5vw,42px);height:clamp(36px,9.5vw,45px)}
 .extra-food-choice{width:clamp(56px,15vw,67px);height:clamp(56px,15vw,67px)}
 .extra-next-area{min-height:42px}
 .extra-next{min-height:39px;font-size:19px}
 .feed-bubble{min-height:45px}
 .feed-scene{min-height:150px;max-height:245px}
 .feed-pet-drop{max-height:155px;min-height:110px}
 .feed-food-tray .extra-food-choice{height:56px;width:56px}
 .feed-food-tray{min-height:65px}
 .extra-animal-round{width:clamp(97px,29vw,117px);height:clamp(97px,29vw,117px)}
 .extra-animal-name{font-size:18px}
}
@media(max-width:350px){
 .extra-food-choice{width:clamp(55px,17vw,63px);height:clamp(55px,17vw,63px)}
 .feed-food-tray .extra-food-choice{height:53px;width:53px}
 .picnic-place{width:clamp(34px,9vw,41px);height:clamp(34px,9vw,41px)}
 .extra-page{padding-left:9px!important;padding-right:9px!important}
}
@media(orientation:landscape) and (max-height:520px){
 .main-content.extra-page{min-height:470px!important;padding-top:4px;overflow:visible}
 .extra-page .extra-scene{min-height:125px;flex:0 0 130px}
 .picnic-basket{height:150px;flex:0 0 150px}
 .feed-scene{min-height:165px;flex:0 0 170px}
 .feed-pet-drop{max-height:130px}
 .feed-choice-grid{max-width:430px;gap:7px;grid-template-columns:repeat(4,minmax(0,1fr))}
 .extra-animal-round{width:99px;height:99px}
}
@media(prefers-reduced-motion:reduce){
 .extra-page *, .extra-page *:before, .extra-page *:after{animation-duration:.01ms!important;transition-duration:.01ms!important}
}

/* v25: reliable native iPhone touch drag + scripted feedback */
.extra-food-choice{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:none!important}
.extra-drag-ghost{pointer-events:none!important;touch-action:none!important;z-index:99999!important}
.feed-main-pet,.picnic-basket{transform-origin:center bottom;will-change:transform}

/* Landscape is a deliberately re-composed layout, not a stretched phone column. */
@media (max-height:620px) and (orientation:portrait){
 .intro-content .welcome-footer{display:none!important}
}
@media (orientation:landscape) and (max-height:520px){
 .app-header.home-header{height:48px!important;min-height:48px!important;padding-top:3px!important;padding-bottom:1px!important}
 .intro-content{display:grid!important;grid-template-columns:minmax(190px,34%) minmax(0,1fr);grid-template-rows:46px 128px 33px;gap:0 10px!important;align-content:center;justify-content:center;height:calc(100dvh - 52px);min-height:0!important;padding:0 max(12px,env(safe-area-inset-right,0px)) 6px max(12px,env(safe-area-inset-left,0px))!important}
 .intro-content .rainbow-title{grid-column:1;grid-row:1;align-self:center;margin:0 auto!important;font-size:clamp(33px,5vw,47px)!important}
 .intro-content .intro-scene{grid-column:1;grid-row:2;height:123px!important;width:100%;max-width:200px!important;align-self:center;margin:0 auto!important}
 .intro-content .friends-name-row{grid-column:1;grid-row:3;margin:0 auto!important;font-size:clamp(12px,1.9vw,17px)}
 .intro-content .welcome-subtitle{grid-column:2;grid-row:1;align-self:center;font-size:clamp(16px,2.1vw,20px)!important;margin:0 auto!important}
 .intro-content .mode-choices{grid-column:2;grid-row:2/4;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;align-items:center;justify-items:center;gap:5px!important;width:100%;max-width:100%!important;margin:0!important}
 .intro-content .mode-round{height:clamp(68px,11vw,97px)!important;width:clamp(68px,11vw,97px)!important}
 .intro-content .mode-label{font-size:clamp(11px,1.55vw,15px)!important;white-space:normal;max-width:115px}
 .intro-content .welcome-footer{display:none!important}
 .main-content.extra-page{height:calc(100dvh - 55px);min-height:0!important;max-height:400px;display:grid;grid-template-columns:minmax(0,46%) minmax(0,54%);grid-template-rows:70px minmax(110px,1fr) 25px 65px;align-items:center;justify-items:center;column-gap:6px;overflow:visible;padding:0 max(14px,env(safe-area-inset-right,0px)) 4px max(14px,env(safe-area-inset-left,0px))}
 .extra-page .extra-top{grid-column:1/-1;grid-row:1;align-self:start}
 .extra-page .extra-sign.wood-heading{min-height:37px;padding:3px 15px;font-size:19px;margin:0 auto}
 .extra-page .extra-progress{height:8px;margin:0 auto;gap:3px}
 .extra-page .extra-progress i{width:7px;height:7px}
 .extra-page .extra-subtitle{font-size:13px}
 .picnic-page .picnic-scene{grid-column:1;grid-row:2;width:100%;height:125px!important;min-height:110px!important;max-height:130px!important}
 .picnic-page .picnic-scene .extra-mascot{height:100%;width:35%}
 .picnic-page .picnic-scene .extra-bubble{max-width:72%;font-size:12px;padding:6px 8px;min-width:0}
 .picnic-page .picnic-cloth{display:none}
 .picnic-page .picnic-basket{grid-column:2;grid-row:2;margin:0;height:125px;min-height:105px!important;max-height:127px!important;width:min(100%,280px);align-self:center}
 .picnic-page .picnic-basket-inner{min-height:84px;margin-top:20px;padding:4px 3px}
 .picnic-page .picnic-place{width:36px;height:36px}
 .picnic-page .extra-status{grid-column:1;grid-row:3;margin:0}
 .picnic-page .extra-hint{grid-column:2;grid-row:3;margin:0;font-size:13px;min-height:0}
 .picnic-page .extra-food-tray{grid-column:2;grid-row:4;gap:8px}
 .picnic-page .extra-food-choice{width:52px;height:52px;padding:4px}
 .picnic-page .extra-next-area{grid-column:1;grid-row:4}
 .feeding-page:not(.feed-select) .feed-scene{grid-column:1;grid-row:2/4;min-height:128px!important;height:155px;max-height:170px;width:95%;margin:0 auto}
 .feeding-page:not(.feed-select) .feed-bubble{font-size:13px;padding:5px 8px;min-height:0;max-width:100%}
 .feeding-page:not(.feed-select) .feed-pet-drop{max-height:113px;min-height:92px;width:155px}
 .feeding-page:not(.feed-select) .feed-food-bowl{height:23px;width:123px;margin:-13px auto 0}
 .feeding-page:not(.feed-select) .extra-status{grid-column:2;grid-row:2;align-self:end;margin-bottom:6px}
 .feeding-page:not(.feed-select) .extra-hint{grid-column:2;grid-row:3;font-size:13px}
 .feeding-page:not(.feed-select) .feed-food-tray{grid-column:2;grid-row:4;min-height:52px;gap:6px}
 .feeding-page:not(.feed-select) .feed-food-tray .extra-food-choice{width:45px;height:45px}
 .feeding-page:not(.feed-select) .extra-next-area{grid-column:1;grid-row:4}
 .extra-page .extra-next{font-size:16px;min-height:37px;min-width:130px}
 .feed-select .feed-choice-grid{grid-column:1/-1;grid-row:2/4;display:grid!important;grid-template-columns:repeat(4,1fr);gap:6px;max-width:650px;align-self:center;margin:0 auto}
 .feed-select .extra-animal-round{width:clamp(75px,11vw,100px)!important;height:clamp(75px,11vw,100px)!important}
 .feed-select .extra-animal-name{font-size:15px}
 .feed-select .extra-selection-footer{grid-column:1/-1;grid-row:4;font-size:13px;margin:0}
}


/* source: fruity-fun.css */
/* Zählwiese – fruchtige Spielwelt v27; tactile, ink & watercolor, no copied artwork */
.fruit-scroll-hint{
 width:100%;max-width:390px;text-align:center;font:900 clamp(12px,3.5vw,15px) "Chalkboard SE","Marker Felt",sans-serif;
 color:#536e4a;text-shadow:1px 1px #fff4ca;margin:4px auto 1px;flex:0 0 auto;letter-spacing:.15px
}
.extra-page .extra-food-tray,
.extra-page .feed-food-tray{
 display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;justify-content:flex-start!important;
 gap:9px!important;overflow-x:auto!important;overflow-y:hidden!important;width:min(100%,404px)!important;
 max-width:min(100%,404px)!important;
 padding:7px 9px 10px!important;min-height:84px!important;
 scrollbar-width:none;-ms-overflow-style:none;
 scroll-snap-type:x proximity;scroll-padding-inline:10px;
 overscroll-behavior-inline:contain;
 touch-action:pan-x!important;
 -webkit-overflow-scrolling:touch;
 background:linear-gradient(93deg,#fff2ce88,#f7dfac9c,#fff1ce88);
 border:2px dashed #ad936a8e;border-radius:26px;
 box-shadow:inset 0 2px 6px #b9986244;
}
.extra-page .extra-food-tray::-webkit-scrollbar{display:none}
.extra-page .extra-food-choice,
.extra-page .feed-food-tray .extra-food-choice{
 flex:0 0 67px!important;
 width:67px!important;height:67px!important;min-width:67px!important;min-height:67px!important;
 padding:6px!important;border-radius:50%!important;scroll-snap-align:start;touch-action:pan-x!important;
 -webkit-user-select:none;user-select:none;-webkit-touch-callout:none;
}
.extra-page .extra-food-choice .extra-food-icon{width:100%!important;height:100%!important}
.extra-page .extra-food-choice.fruit-drink{
 border-color:#6c99ae!important;
 background:radial-gradient(circle at 35% 27%,#e3f8ff,#a4d6e7 75%)!important;
 box-shadow:inset 0 0 0 3px #e9f9fa,2px 4px 0 #547c8b73!important
}
.extra-page .extra-food-choice.fruit-drink:after{
 content:"";position:absolute;right:0;top:-9px;width:11px;height:14px;background:#89cbdc;border:2px solid #edf7fc;border-radius:0 75% 75% 75%;transform:rotate(-45deg);
}
.extra-page .extra-food-choice{position:relative}
.extra-page .extra-hint{min-height:24px;max-width:380px}
.extra-page .extra-next-area:has(.extra-next-ready){padding:4px 0 2px}
.extra-page .extra-next-ready{
 border:4px solid #966945;border-radius:29px;background:linear-gradient(#ffe6a8,#eabe77);
 padding:8px 19px;min-height:54px;font-size:21px;box-shadow:inset 0 2px #fff2c4,3px 6px 0 #93704f6a;
}
.zw-reaction-layer{
 position:absolute!important;left:0;top:0;width:0;height:0;z-index:24!important;
 overflow:visible!important;pointer-events:none!important;isolation:isolate!important;
 filter:none!important;transform:none!important
}
.zw-reaction-layer .zw-mouth{
 position:absolute;left:0;top:0;transform:translate(-50%,-50%);
 width:var(--zw-mouth-size,27px);height:9px;
 border-radius:48% 48% 56% 56%;background:#67433e;border:2.5px solid #ab7864;
 box-shadow:inset 0 -2px 0 #a86674,0 1px 0 #fff7d1bb;
 overflow:hidden;opacity:0;will-change:height,width,opacity;
}
.zw-reaction-layer .zw-tongue{
 position:absolute;left:18%;right:18%;bottom:-2px;height:40%;background:#e89a9f;border-radius:65% 65% 20% 20%;
}
.zw-reaction-layer .zw-teeth{position:absolute;left:25%;right:25%;top:0;height:18%;background:#fff2d5;border-radius:0 0 6px 6px}
.zw-reaction-layer .zw-treat{
 position:absolute;left:-30px;top:-28px;width:60px;height:60px;z-index:2;
 filter:drop-shadow(1px 3px 0 #755d4752);will-change:transform,opacity;
 transform-origin:center center;
}
.zw-reaction-layer .zw-treat svg{display:block;width:100%;height:100%;overflow:visible}
.zw-reaction-layer .zw-fx-heart{
 position:absolute;left:-13px;top:-38px;font:900 33px "Chalkboard SE",sans-serif;
 color:#df8599;text-shadow:1px 2px #fff3cb;opacity:0;will-change:transform,opacity
}
.zw-reaction-layer .zw-fx-crumbs{position:absolute;left:0;top:0}
.zw-reaction-layer .zw-fx-crumbs i{
 position:absolute;left:-4px;top:-4px;width:7px;height:7px;opacity:0;
 border:1px solid #a08058;border-radius:30% 55% 42% 62%;
 background:#f3c782;will-change:transform,opacity
}
.zw-reaction-layer.zw-react-drink .zw-fx-crumbs i{border-color:#679fae;background:#8dcde5;border-radius:70% 8% 60% 60%}
.zw-reaction-layer.zw-react-pet .zw-fx-crumbs i{background:#f2a0af;border-color:#d68591}
.zw-reaction-layer .zw-fx-reaction-word{
 position:absolute;left:0;top:-76px;width:max-content;max-width:150px;transform:translateX(-50%);
 opacity:0;background:#fff0c5;border:2px solid #b58a62;border-radius:15px 18px 16px 18px;
 padding:5px 9px;color:#755333;text-shadow:1px 1px #fff9df;
 font:900 clamp(14px,3.9vw,18px) "Chalkboard SE","Marker Felt",sans-serif;
 box-shadow:2px 3px 0 #87644855;white-space:nowrap;will-change:opacity,transform;
}
.zw-is-reacting .extra-mascot,.zw-is-reacting .feed-main-pet{
 animation:none!important;transition:none!important;will-change:transform;
}
.zw-reaction-layer .zw-mouth,.zw-reaction-layer .zw-treat{animation:none!important}
.picnic-scene{overflow:visible!important}
.picnic-scene .zw-reaction-layer{z-index:30!important}
.feed-pet-drop{overflow:visible!important}
@media(max-width:360px){
 .extra-page .extra-food-choice,.extra-page .feed-food-tray .extra-food-choice{
  flex-basis:60px!important;width:60px!important;min-width:60px!important;height:60px!important;min-height:60px!important
 }
 .extra-page .extra-food-tray{min-height:78px!important}
 .fruit-scroll-hint{font-size:12px}
}
@media(orientation:landscape) and (max-height:520px){
 .extra-page .extra-food-tray,.extra-page .feed-food-tray{
  width:100%!important;min-height:58px!important;max-width:100%!important;padding:3px 4px!important;
 }
 .extra-page .extra-food-choice,.extra-page .feed-food-tray .extra-food-choice{
  flex-basis:48px!important;width:48px!important;min-width:48px!important;height:48px!important;min-height:48px!important;padding:3px!important;
 }
 .fruit-scroll-hint{display:none}
 .extra-page .extra-next-area{min-height:38px}
 .extra-page .extra-next-ready{min-height:37px;font-size:16px;padding:3px 12px}
}
@media(prefers-reduced-motion:reduce){
 .zw-is-reacting .extra-mascot,.zw-is-reacting .feed-main-pet{transition:none!important}
 /* Essential mouth and bite frames are shown even when big movements are reduced. */
}

/* Small persistent celebration; no auto-skip for three-year-olds */
.zw-finish-sticker{
 position:absolute;top:53%;right:-1%;z-index:35;pointer-events:none;
 max-width:190px;padding:8px 10px;border:3px solid #af8054;border-radius:22px;
 background:#fff0c4;box-shadow:2px 4px 0 #94744c55;
 font:900 clamp(14px,3.8vw,19px) "Chalkboard SE","Marker Felt",sans-serif;
 text-align:center;color:#628447;text-shadow:1px 1px #fffadd;
 opacity:0;transform:translateY(20px) scale(.75);
 transition:opacity .36s ease,transform .48s cubic-bezier(.19,1.5,.48,1)
}
.zw-finish-sticker.zw-finish-visible{opacity:1;transform:translateY(0) scale(1)}
.animal-care-stage:has(.zw-reaction-layer) .care-action-stage > img{opacity:0!important}
@media(prefers-reduced-motion:reduce){.zw-finish-sticker{transition:none}.zw-finish-sticker.zw-finish-visible{opacity:1;transform:none}}
\n/* v30: mouth is a native part of the dog's SVG, never floating in the scene. */
.zw-reaction-layer .zw-mouth{display:none!important}
.zw-dog-actor{display:block;overflow:visible;transform-origin:50% 75%}
.zw-dog-chew-mouth,.zw-dog-idle-mouth{pointer-events:none}
.zw-is-reacting .zw-dog-chew-mouth{transition:none!important;animation:none!important}

/* Native articulated duck bill, never a floating generic mouth */
.zw-duck-actor{display:block;overflow:visible!important}
.zw-duck-lower-beak{will-change:transform}
.zw-no-thanks{position:absolute;top:2%;left:50%;z-index:31;transform:translateX(-50%);background:#fff1d8;border:2px solid #b38c66;border-radius:22px;padding:6px 11px;color:#97654d;font:900 17px "Chalkboard SE","Marker Felt",sans-serif;white-space:nowrap;pointer-events:none;box-shadow:2px 3px 0 #88674e44}


/* source: painted-celebration.css */
/* Zählwiese V97 – lightweight, illustrated celebrations */
.zw-celebration{
 position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;
 overflow:hidden!important;pointer-events:none!important;z-index:999998!important;
 isolation:isolate;contain:layout style paint;
}
.zw-celebration-balloon{
 position:absolute!important;left:0;top:100%;width:clamp(41px,9vw,66px);height:clamp(75px,17vw,114px);
 pointer-events:none;opacity:0;transform-origin:50% 90%;
 animation:zw97-balloon-flight var(--flight,4200ms) ease-in-out var(--delay,0ms) both;
}
.zw-celebration-balloon img{width:100%;height:100%;object-fit:contain;display:block;pointer-events:none}
.zw-celebration-confetti{
 position:absolute!important;object-fit:contain;display:block;pointer-events:none;opacity:0;
 animation:zw97-confetti-fall var(--fall,3800ms) cubic-bezier(.23,.24,.68,.78) var(--delay,0ms) both;
}
.zw-celebration-star{
 position:absolute!important;width:clamp(21px,6vw,37px);height:auto;pointer-events:none;opacity:0;
 animation:zw97-heart-twinkle 2000ms ease-in-out var(--delay,0ms) both;
}
@keyframes zw97-balloon-flight{
 0%{opacity:0;transform:translate3d(0,27px,0) rotate(-6deg) scale(.62)}
 13%{opacity:1}
 43%{opacity:1;transform:translate3d(var(--sway),-35vh,0) rotate(var(--angle)) scale(var(--scale,.8))}
 78%{opacity:1}
 100%{opacity:0;transform:translate3d(var(--shift-x),-120vh,0) rotate(-7deg) scale(1.03)}
}
@keyframes zw97-confetti-fall{
 0%{opacity:0;transform:translate3d(0,-20px,0) rotate(0deg) scale(.5)}
 14%{opacity:1}
 42%{opacity:1;transform:translate3d(var(--mid-x),var(--mid-y),0) rotate(var(--mid-twist)) scale(1)}
 80%{opacity:1}
 100%{opacity:0;transform:translate3d(var(--dx),var(--dy),0) rotate(var(--twist)) scale(.67)}
}
@keyframes zw97-heart-twinkle{
 0%{opacity:0;transform:translate3d(0,12px,0) scale(.35) rotate(-18deg)}
 25%{opacity:.96;transform:translate3d(0,-8px,0) scale(1.25) rotate(9deg)}
 60%{opacity:.9;transform:translate3d(0,-24px,0) scale(.96) rotate(-5deg)}
 100%{opacity:0;transform:translate3d(var(--drift),-53px,0) scale(.57) rotate(15deg)}
}
@media (prefers-reduced-motion:reduce){
 .zw-celebration-balloon{animation-duration:2600ms!important;animation-timing-function:linear!important}
 .zw-celebration-confetti{animation-duration:1700ms!important;animation-timing-function:linear!important}
 .zw-celebration-star{animation-duration:1300ms!important}
}


/* source: kitchen.css */
/* Moritz & Igors Backstube · original illustrated, touch-first, v1 */
.mode-cooking .mode-round{background-image:url('/mode-hands-round.svg')}
.mode-cooking .mode-round img{width:79%;height:80%;object-fit:contain;pointer-events:none}
.mode-cooking .mode-label{color:#93634c}
@media (orientation:portrait) {
 .intro-content .mode-choices{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;align-content:center!important;gap:clamp(1px,.6dvh,8px) clamp(5px,1.5vw,12px)!important;width:100%!important;max-width:420px!important;padding:0 2px!important;margin:2px auto 0!important;grid-template-columns:none!important}
 .intro-content .mode-choice{flex:0 0 calc((100% - 28px)/3);max-width:138px;gap:1px!important}
 .intro-content .mode-round{width:clamp(77px,26vw,128px)!important;height:clamp(77px,26vw,128px)!important}
 .intro-content .mode-label{font-size:clamp(12px,3.7vw,17px)!important;white-space:normal!important;line-height:1.1;min-height:25px;max-width:126px;text-wrap:balance}
 .intro-content .intro-scene{height:clamp(122px,21.4dvh,194px)!important}
 .intro-content .welcome-subtitle{margin:0 auto 3px!important}
 .intro-content .welcome-footer{margin:2px auto 0!important}
}
@media (orientation:portrait) and (max-height:700px){
 .intro-content .intro-scene{height:clamp(96px,19.4dvh,144px)!important}
 .intro-content .mode-round{width:clamp(73px,24vw,100px)!important;height:clamp(73px,24vw,100px)!important}
 .intro-content .mode-choices{gap:0 7px!important}
 .intro-content .mode-label{font-size:clamp(11px,3.6vw,15px)!important;min-height:21px}
 .intro-content .friends-name-row{margin:-7px auto 0!important}
 .intro-content .welcome-footer{display:none!important}
}
@media (orientation:landscape) and (max-height:520px){
 .intro-content .mode-choices{display:flex!important;flex-wrap:nowrap!important;gap:4px!important;justify-content:space-evenly!important;grid-template-columns:none!important}
 .intro-content .mode-choice{flex:0 1 90px;min-width:0;max-width:98px}
 .intro-content .mode-round{width:clamp(61px,9vw,84px)!important;height:clamp(61px,9vw,84px)!important}
 .intro-content .mode-label{font-size:clamp(11px,1.4vw,14px)!important;white-space:normal;text-wrap:balance;line-height:1.1}
}
/* Screen surface: unique original colored-pencil illustration */
.main-content.kitchen-page{flex:1;min-width:0;min-height:0!important;width:100%;display:flex;flex-direction:column;align-items:center;gap:0;padding:3px max(12px,3.7vw) max(12px,calc(env(safe-area-inset-bottom,0px) + 9px));overflow:hidden;isolation:isolate}
.kitchen-page,.kitchen-page button{font-family:var(--font)}
.kitchen-page button:focus-visible{outline:4px solid #315c90!important;outline-offset:4px!important}
.kitchen-title.wood-heading{flex:0 0 auto;display:grid;place-items:center;min-height:51px;line-height:1.14;font-size:clamp(19px,5.4vw,25px);padding:6px 13px;max-width:98%;margin:2px auto 4px;min-width:0}
.kitchen-subtitle,.kitchen-footnote{text-align:center;color:#496f50;font-weight:950;text-shadow:1px 1px #f9f0c3}
.kitchen-subtitle{font-size:clamp(17px,4.8vw,22px);margin:9px auto 8px}
.kitchen-recipe-grid{flex:1;width:min(100%,408px);min-height:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-items:center;align-items:center;gap:4px 9px;margin:0 auto}
.kitchen-recipe-button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:0;background:transparent;padding:2px;min-width:0;width:100%;color:#416b50;font-weight:950}
.kitchen-round{display:grid;place-items:center;width:clamp(110px,34vw,156px);height:clamp(110px,34vw,156px);aspect-ratio:1;border:0;background:url('/mode-animals-round.svg') center/100% 100% no-repeat;filter:drop-shadow(2px 4px 2px #6f5c3d50);transition:transform .16s ease}
.kitchen-recipe-button:nth-child(even) .kitchen-round{background-image:url('/mode-hands-round.svg')}
.kitchen-round .kitchen-svg{width:77%;height:77%;filter:drop-shadow(1px 2px 0 #73523a32)}
.kitchen-recipe-button:active .kitchen-round{transform:scale(.95)}
.kitchen-recipe-name{font-size:clamp(16px,4.3vw,21px);line-height:1.08;text-align:center;max-width:164px;text-wrap:balance;text-shadow:1px 1px #fff8d6}
.kitchen-footnote{font-size:clamp(12px,3.2vw,14px);margin:7px auto 4px;flex:0 0 auto}
.kitchen-smallline{display:flex;justify-content:center;align-items:center;gap:8px;min-height:25px;font-size:clamp(13px,3.6vw,17px);font-weight:900;color:#4c6e4b;text-shadow:1px 1px #fff3cb;width:100%;flex:0 0 auto}
.kitchen-smallline span:last-child{background:#ffefcbcf;border:2px solid #bc9467;border-radius:30px;padding:1px 8px;color:#896144;font-size:clamp(11px,3vw,14px);white-space:nowrap}
.kitchen-task{background:linear-gradient(164deg,#fff4cf,#f9e5b9);border:3.5px solid #a7774f;border-radius:19px 22px 20px 18px;box-shadow:inset 1px 2px #fff9df,1px 4px 1px #80634046;width:min(100%,366px);min-height:108px;margin:4px auto 1px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:7px;flex:0 0 auto;transform:rotate(-.3deg)}
.kitchen-task-label{color:#715338;font-weight:950;font-size:clamp(17px,4.8vw,21px);line-height:1.15;text-align:center}
.kitchen-task-label strong{color:#92613e}
.kitchen-examples{display:flex;justify-content:center;align-items:center;gap:1px;min-height:47px}
.kitchen-svg{width:100%;height:100%;display:block;overflow:visible;pointer-events:none;user-select:none;-webkit-user-drag:none}
.kitchen-example-icon{width:clamp(39px,10vw,48px);height:clamp(39px,10vw,48px);filter:drop-shadow(1px 2px #967b4a3d);transition:opacity .2s,transform .2s}
.kitchen-example-icon.kitchen-collected{opacity:.33;transform:scale(.82)}
.kitchen-scene{flex:1 1 auto;min-height:137px;max-height:290px;width:100%;max-width:410px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:visible}
.kitchen-scene:before{content:"";position:absolute;z-index:-1;width:clamp(200px,71vw,280px);height:clamp(150px,30dvh,240px);border:3px dashed #b2c39080;background:radial-gradient(ellipse,#fff1c5c7,#d1e4b097 52%,transparent 73%);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}
.kitchen-bowl-zone{position:relative;flex:0 1 auto;width:clamp(200px,70vw,294px);height:clamp(139px,25dvh,205px);display:flex;align-items:center;justify-content:center;filter:drop-shadow(3px 6px 3px #63563945);transform-origin:center;transition:filter .15s ease,transform .15s ease}
.kitchen-bowl-rim{position:absolute;z-index:1;top:3px;left:6%;right:6%;height:47%;border-radius:50%;background:#e9bd93;border:8px solid #926644;box-shadow:inset 0 6px #fff0c49e,inset 0 -5px #c5906890}
.kitchen-batter{position:absolute;z-index:2;top:16%;left:13%;width:74%;height:42%;border-radius:50%;background:radial-gradient(ellipse at 37% 32%,#fff0c6 10%,#e6c88e 60%,#c3a271 100%);border:3px solid #d2a97d;display:flex;flex-wrap:wrap;align-content:center;justify-content:center;gap:1px 0;overflow:hidden}
.kitchen-floating-piece{width:clamp(29px,8vw,36px);height:clamp(29px,8vw,36px);margin:-5px -3px;transform:rotate(calc((var(--n,1) - 2) * 13deg));filter:drop-shadow(1px 2px #8c6f5947)}
.kitchen-floating-piece.fresh{animation:kitchen-pop .46s cubic-bezier(.2,1.5,.5,1) both}
.kitchen-bowl-front{position:absolute;inset:34% 6% 3%;z-index:3;border:8px solid #926548;border-top:0;border-radius:13% 12% 46% 44%/10% 10% 65% 65%;background:linear-gradient(168deg,#e2ab84 0,#cf9270 40%,#c08164 75%,#ad785b);box-shadow:inset 0 8px #f1c79e90,inset 4px -8px #a96a5b55;pointer-events:none}
.kitchen-bowl-heart{position:absolute;z-index:4;top:61%;left:50%;transform:translateX(-50%) rotate(-7deg);font-size:clamp(20px,5.8vw,29px);color:#f3beac;text-shadow:1px 2px #976751}
.kitchen-bump{animation:kitchen-bounce .45s ease}
.kitchen-egg-crack{position:absolute;z-index:6;left:50%;top:6%;transform:translateX(-50%);display:flex;color:#fff0cf;filter:drop-shadow(2px 2px #946c46aa);font-size:36px;animation:kitchen-crack .85s ease-out forwards}
.kitchen-egg-crack span:nth-child(1){transform:rotate(-20deg);display:block}.kitchen-egg-crack span:nth-child(2){transform:rotate(20deg);display:block}
.kitchen-egg-crack i{position:absolute;top:12px;left:21px;color:#f5c862;font-style:normal;font-size:22px}
.kitchen-quantity{min-height:31px;display:flex;align-items:center;justify-content:center;font-size:clamp(18px,5.3vw,24px);font-weight:950;color:#496b4b;text-shadow:1px 1px #fff4c8;margin:0;flex:0 0 auto}
.kitchen-quantity strong{color:#c87d5d;font-size:1.2em;margin-right:5px}
.kitchen-hint,.kitchen-move-label{font-size:clamp(14px,3.7vw,17px);font-weight:950;line-height:1.2;color:#4d704e;text-shadow:1px 1px #fff2cc;text-align:center;min-height:22px;max-width:385px;margin:0 auto 5px;flex:0 0 auto}
.kitchen-palette{flex:0 0 auto;display:flex;justify-content:center;align-items:center;gap:clamp(5px,1.5vw,12px);width:100%;max-width:400px;min-height:74px;margin:1px auto 0}
.kitchen-circle{touch-action:none;-webkit-touch-callout:none;user-select:none;-webkit-user-select:none;display:grid;place-items:center;width:clamp(63px,17vw,79px);height:clamp(63px,17vw,79px);flex:0 0 auto;padding:7px;border:4px solid #94684c;border-radius:50%;background:radial-gradient(circle at 34% 25%,#fffae8,#eac99c 72%);box-shadow:inset 0 0 0 3px #fff6da,2px 5px 0 #80634366,0 5px 9px #78624128;cursor:grab;transition:transform .14s ease,filter .14s ease}
.kitchen-circle:nth-child(even){background:radial-gradient(circle at 34% 25%,#f8fce9,#c4dcb8 75%)}
.kitchen-circle:nth-child(3n){background:radial-gradient(circle at 34% 25%,#fff1e1,#edd0c8 73%)}
.kitchen-circle.dragging{opacity:.48;cursor:grabbing}
.kitchen-circle:active{transform:scale(.95)}
.kitchen-drag-ghost{position:fixed;z-index:100000;left:0;top:0;width:82px;height:82px;pointer-events:none;will-change:top,left;filter:drop-shadow(2px 9px 4px #70573b7a);transform:translate(-50%,-50%) rotate(-10deg) scale(1.07)}
.kitchen-over{filter:drop-shadow(0 0 12px #ffef83)!important;transform:scale(1.04)!important}
.kitchen-wrong{animation:kitchen-shake .3s ease-out}
.kitchen-bottom-caption{font-size:clamp(11px,2.9vw,13px);line-height:1.2;text-align:center;margin:4px auto 1px;color:#617b55;font-weight:800;text-shadow:1px 1px #fff2c8;flex:0 0 auto}
.kitchen-action-prompt{text-align:center;font-size:clamp(17px,4.7vw,23px);font-weight:950;color:#745337;background:#fff0c9;border:3px solid #a9784e;border-radius:22px;padding:9px 14px;margin:8px auto 1px;max-width:380px;width:100%;box-shadow:inset 0 2px #fff7dd,1px 4px #7a613a46;line-height:1.22;flex:0 0 auto}
.kitchen-action-prompt small{display:block;margin-top:3px;font-size:clamp(14px,3.7vw,17px);color:#6c7450}
.kitchen-action .kitchen-scene{max-height:350px;min-height:160px}
.kitchen-single{margin:8px auto 6px;min-height:84px}
.kitchen-single .kitchen-circle{width:clamp(74px,22vw,100px);height:clamp(74px,22vw,100px)}
.kitchen-swirl{position:absolute;pointer-events:none;opacity:0;z-index:9;top:20%;left:calc(50% - 60px);font-size:115px;color:#ffeabb;transform:rotate(0);filter:drop-shadow(1px 2px #ba9b6b);font-family:serif}
.kitchen-stirring .kitchen-swirl{opacity:1;animation:kitchen-stir 1s linear infinite}
.kitchen-stirring .kitchen-batter{animation:kitchen-slosh .55s ease-in-out infinite}
.kitchen-stirring .kitchen-bowl-zone{animation:kitchen-bounce .64s ease infinite}
.kitchen-oven-target{width:clamp(185px,60vw,260px);height:clamp(180px,27dvh,235px);border:7px solid #8d664d;border-radius:24px;background:linear-gradient(135deg,#e5ba94,#c69a83);position:relative;box-shadow:inset 4px 5px #f7ddb0,3px 6px 1px #685e437c;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;transition:filter .2s,transform .2s}
.kitchen-oven-top{height:20%;width:100%;display:flex;align-items:center;justify-content:flex-start;padding:3px 17px;gap:10px}
.kitchen-oven-top span{width:13px;height:13px;border:3px solid #846959;border-radius:50%;background:#f8e4c2;color:transparent;box-shadow:inset 2px 2px #e5b377}
.kitchen-oven-window{width:85%;height:67%;position:relative;border:7px solid #97765f;border-radius:14px;background:#485e62;box-shadow:inset 0 0 25px #20363e;overflow:hidden}
.kitchen-oven-light{position:absolute;z-index:3;inset:0;pointer-events:none;background:radial-gradient(circle,#ffcb79a8,transparent 75%);opacity:.22;transition:opacity .3s}
.kitchen-oven-pan{width:56%;height:74%;position:absolute;z-index:2;left:22%;bottom:-7px;transform:scale(.7);opacity:0}
.kitchen-oven-pan .kitchen-svg{filter:drop-shadow(1px 3px #7d5131a1)}
.kitchen-oven-bottom{height:7%;width:80%;background:#d6ae94;border:3px solid #92735f;border-radius:10px;margin:4px auto}
.kitchen-oven-heat{position:absolute;inset:0;z-index:1;background:repeating-linear-gradient(115deg,transparent 0 12px,#ffcd7d1e 13px 20px)}
.kitchen-baking .kitchen-oven-pan{animation:kitchen-rise 3.5s ease-out both}
.kitchen-baking .kitchen-oven-light{animation:kitchen-glow .8s ease-in-out infinite alternate}
.kitchen-baking .kitchen-oven-heat{animation:kitchen-glow 1.3s ease-in-out infinite alternate}
.kitchen-steam{position:absolute;color:#fff3c7;font-size:40px;top:-9%;left:58%;opacity:0;pointer-events:none}
.kitchen-baking .kitchen-steam{animation:kitchen-steam 2.1s ease infinite}
.kitchen-progress-bar{width:clamp(190px,52vw,250px);height:18px;background:#fff0c9;border:3px solid #a77b5a;border-radius:30px;overflow:hidden}
.kitchen-progress-bar span{display:block;background:linear-gradient(90deg,#f1c36d,#db8b6f,#a3c08d);width:0;height:100%;animation:kitchen-load 4.2s linear forwards}
.kitchen-serving-scene{max-height:370px}
.kitchen-friend-pair{display:flex;justify-content:center;align-items:end;gap:clamp(2px,3vw,25px);width:100%;height:100%;min-height:150px;max-width:410px}
.kitchen-friend{height:100%;max-height:280px;min-height:135px;width:47%;position:relative;display:flex;align-items:end;justify-content:center;flex-direction:column;filter:drop-shadow(1px 3px #87664140);transition:filter .3s,transform .3s}
.kitchen-friend img{display:block;width:100%;height:calc(100% - 20px);object-fit:contain;object-position:center bottom;pointer-events:none;user-select:none;-webkit-user-drag:none}
.kitchen-friend-name{font-size:clamp(16px,4vw,21px);font-weight:950;line-height:1.1;color:#487152;text-shadow:1px 1px #fff5cf;text-align:center;width:100%;margin:2px 0 0}
.kitchen-friend.hungry:after{content:"";position:absolute;top:0;right:5%;font-size:34px;color:#df8d9b;text-shadow:1px 1px #fff0ca;animation:kitchen-float 2s ease infinite}
.kitchen-friend.kitchen-over{filter:drop-shadow(0 0 12px #fff5a8)}
.kitchen-friend.kitchen-eating img{animation:kitchen-nibble .29s ease-in-out 5}
.kitchen-friend .kitchen-chew{font-size:22px;position:absolute;top:50%;left:52%;opacity:0;color:#965b62}
.kitchen-friend.kitchen-eating .kitchen-chew{opacity:1;animation:kitchen-nibble .31s ease-in-out 4}
.kitchen-crumbs{position:absolute;left:50%;top:30%;font-size:22px;color:#f7bf7a;white-space:nowrap;animation:kitchen-crumbs 1.3s ease forwards;pointer-events:none}
.kitchen-crumbs span{color:#e6a2ab}
.kitchen-victory{justify-content:flex-start}
.kitchen-win-header{margin:10px auto 6px;color:#4c8257;font-size:clamp(23px,6vw,32px);line-height:1.2;font-weight:1000;text-align:center;text-shadow:2px 2px #fff4c5}
.kitchen-win-dish{width:clamp(100px,25vw,152px);height:clamp(100px,25vw,152px);filter:drop-shadow(3px 5px #70533c44);animation:kitchen-pop .62s cubic-bezier(.2,1.3,.5,1) both}
.kitchen-win-title{font-size:clamp(18px,4.6vw,23px);font-weight:950;color:#806044;text-shadow:1px 1px #fff2cb;text-align:center}
.kitchen-win-friends{width:100%;max-width:360px;flex:1;min-height:135px;max-height:290px}
.kitchen-win-friends .kitchen-friend-pair{gap:12px}
.kitchen-win-friends .kitchen-friend{animation:kitchen-win-hop 1s ease-in-out 3}
.kitchen-victory-note{font-size:clamp(14px,3.7vw,17px);font-weight:900;text-align:center;color:#507452;margin:5px auto 8px}
.kitchen-play-again{min-width:192px;min-height:57px;background:#f0ce8f;border:4px solid #92694c;border-radius:22px;box-shadow:inset 0 3px #fff2cc,2px 5px 0 #8a704d;font-size:21px;color:#654b31;font-weight:950;margin:0 auto 5px}
.kitchen-balloons{position:absolute;inset:0;pointer-events:none;z-index:-1}
.kitchen-balloons span{position:absolute;color:#e6a0ac;font-size:clamp(28px,7vw,44px);text-shadow:2px 3px #8a714b55;animation:kitchen-float 3s ease-in-out infinite}
.kitchen-balloons span:nth-child(1){top:17%;left:7%}.kitchen-balloons span:nth-child(2){top:22%;right:10%;color:#f2d07a;animation-delay:.5s}.kitchen-balloons span:nth-child(3){bottom:29%;right:4%;color:#8ec8b0;animation-delay:1s}
@keyframes kitchen-pop{0%{transform:translateY(-14px) scale(.55);opacity:0}65%{transform:translateY(5px) scale(1.15)}100%{transform:translateY(0) scale(1);opacity:1}}
@keyframes kitchen-shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}
@keyframes kitchen-bounce{0%,100%{transform:scale(1)}40%{transform:scale(1.04)}}
@keyframes kitchen-crack{0%{transform:translate(-50%,-8px) scale(.8);opacity:0}22%{opacity:1}55%{transform:translate(-50%,20px) scale(1.15)}100%{transform:translate(-50%,48px) scale(.8);opacity:0}}
@keyframes kitchen-stir{from{transform:rotate(0) scale(1)}to{transform:rotate(360deg) scale(1.12)}}
@keyframes kitchen-slosh{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(4deg)}}
@keyframes kitchen-rise{0%{opacity:0;transform:translateY(43px) scale(.55)}20%{opacity:1}60%{transform:translateY(-5px) scale(.8)}100%{opacity:1;transform:translateY(-14px) scale(1.1)}}
@keyframes kitchen-glow{from{opacity:.18}to{opacity:.85}}
@keyframes kitchen-steam{0%{opacity:0;transform:translateY(15px) scale(.8)}40%{opacity:1}100%{opacity:0;transform:translateY(-42px) scale(1.2)}}
@keyframes kitchen-load{to{width:100%}}
@keyframes kitchen-nibble{0%,100%{transform:rotate(0) translateY(0)}45%{transform:rotate(-5deg) translateY(-7px)}75%{transform:rotate(4deg) translateY(1px)}}
@keyframes kitchen-crumbs{0%{transform:scale(.6) translateY(16px);opacity:0}25%{opacity:1}100%{transform:scale(1.3) translateY(-30px);opacity:0}}
@keyframes kitchen-float{0%,100%{transform:translateY(1px) rotate(-7deg)}50%{transform:translateY(-10px) rotate(8deg)}}
@keyframes kitchen-win-hop{0%,100%{transform:translateY(0) rotate(0)}35%{transform:translateY(-14px) rotate(-4deg)}70%{transform:translateY(-3px) rotate(4deg)}}
@media (max-height:725px) and (orientation:portrait){
 .kitchen-title.wood-heading{min-height:43px;padding:4px 12px;margin:0 auto 2px;font-size:clamp(17px,5vw,22px)}
 .kitchen-task{min-height:84px;padding:4px 5px;margin:2px auto 0}
 .kitchen-task-label{font-size:clamp(15px,4vw,18px)}
 .kitchen-example-icon{width:36px;height:36px}
 .kitchen-examples{min-height:38px}
 .kitchen-scene{min-height:116px;max-height:205px}
 .kitchen-bowl-zone{height:clamp(120px,25dvh,154px);width:clamp(175px,57vw,230px)}
 .kitchen-quantity{min-height:27px}
 .kitchen-hint{font-size:clamp(12px,3.6vw,15px);min-height:18px}
 .kitchen-circle{width:clamp(56px,17vw,67px);height:clamp(56px,17vw,67px);padding:5px}
 .kitchen-palette{min-height:62px}
 .kitchen-bottom-caption{font-size:11px;margin:1px auto}
 .kitchen-action-prompt{margin:4px auto 0;padding:5px 8px;font-size:clamp(15px,4vw,19px)}
 .kitchen-action-prompt small{font-size:13px}
 .kitchen-oven-target{height:150px;width:188px}
 .kitchen-single .kitchen-circle{width:73px;height:73px}
 .kitchen-recipe-grid{gap:2px 7px}
 .kitchen-round{width:clamp(98px,30vw,120px);height:clamp(98px,30vw,120px)}
 .kitchen-recipe-name{font-size:clamp(15px,4vw,18px)}
 .kitchen-friend{max-height:188px}
 .kitchen-win-header{font-size:21px;margin:3px auto}
 .kitchen-win-dish{width:91px;height:91px}
 .kitchen-victory-note{margin:2px auto 3px}
 .kitchen-play-again{min-height:43px;font-size:18px}
}
@media (max-width:350px){
 .kitchen-title.wood-heading{font-size:18px}
 .kitchen-smallline{font-size:12px}
 .kitchen-task-label{font-size:16px}
 .kitchen-circle{width:57px;height:57px}
 .kitchen-recipe-name{font-size:16px}
 .kitchen-bottom-caption{display:none}
}
@media (orientation:landscape) and (max-height:520px){
 .main-content.kitchen-page{display:grid;grid-template-columns:minmax(0,48%) minmax(0,52%);grid-template-rows:46px 26px minmax(90px,1fr) 29px 65px;align-items:center;justify-items:center;column-gap:5px;gap:0;height:calc(100dvh - 52px);min-height:0!important;max-height:450px;overflow:visible;padding:0 max(12px,env(safe-area-inset-right,0px)) 5px max(12px,env(safe-area-inset-left,0px))}
 .kitchen-page .kitchen-title.wood-heading{grid-column:1/-1;grid-row:1;font-size:20px;min-height:40px;max-width:330px}
 .kitchen-page .kitchen-smallline{grid-column:1/-1;grid-row:2;min-height:21px}
 .kitchen-ingredients .kitchen-task{grid-column:1;grid-row:3;align-self:center;min-height:100px;max-width:310px}
 .kitchen-ingredients .kitchen-scene{grid-column:2;grid-row:3/5;width:100%;height:125px;min-height:115px;max-height:140px}
 .kitchen-ingredients .kitchen-bowl-zone{height:124px;width:225px}
 .kitchen-ingredients .kitchen-quantity{grid-column:1;grid-row:4;align-self:center}
 .kitchen-ingredients .kitchen-hint{grid-column:1;grid-row:5;align-self:center;font-size:13px}
 .kitchen-ingredients .kitchen-palette{grid-column:2;grid-row:5;max-width:300px;min-height:55px}
 .kitchen-ingredients .kitchen-circle{width:49px;height:49px;padding:4px}
 .kitchen-page .kitchen-bottom-caption{display:none}
 .kitchen-select .kitchen-subtitle{grid-column:1;grid-row:2/3;margin:0;font-size:16px}
 .kitchen-select .kitchen-recipe-grid{grid-column:1/-1;grid-row:3/6;display:flex;flex-direction:row;justify-content:space-evenly;align-items:center;max-width:720px;gap:10px;margin:0 auto}
 .kitchen-select .kitchen-recipe-button{flex:1;max-width:150px;gap:2px}
 .kitchen-select .kitchen-round{width:92px;height:92px}
 .kitchen-select .kitchen-recipe-name{font-size:14px}
 .kitchen-select .kitchen-footnote{display:none}
 .kitchen-action .kitchen-action-prompt,.kitchen-serve .kitchen-action-prompt{grid-column:1;grid-row:3;align-self:center;font-size:16px;padding:7px;max-width:290px}
 .kitchen-action .kitchen-action-prompt small,.kitchen-serve .kitchen-action-prompt small{font-size:13px}
 .kitchen-action .kitchen-scene,.kitchen-serve .kitchen-scene{grid-column:2;grid-row:3/5;height:133px;min-height:125px;max-height:144px}
 .kitchen-action .kitchen-bowl-zone{height:122px;width:217px}
 .kitchen-action .kitchen-move-label,.kitchen-serve .kitchen-move-label{grid-column:1;grid-row:4/5;font-size:13px;align-self:center}
 .kitchen-action .kitchen-palette,.kitchen-serve .kitchen-palette{grid-column:2;grid-row:5;min-height:51px;margin:0}
 .kitchen-action .kitchen-circle,.kitchen-serve .kitchen-circle{width:54px;height:54px}
 .kitchen-action .kitchen-oven-target{height:129px;width:153px;border-width:5px}
 .kitchen-serve .kitchen-friend-pair{height:125px;min-height:0}
 .kitchen-serve .kitchen-friend{height:125px;min-height:0}
 .kitchen-victory .kitchen-win-header{grid-column:1;grid-row:2/3;margin:0;font-size:20px}
 .kitchen-victory .kitchen-win-dish{grid-column:1;grid-row:3;justify-self:center;width:120px;height:120px}
 .kitchen-victory .kitchen-win-title{grid-column:1;grid-row:4;font-size:16px}
 .kitchen-victory .kitchen-win-friends{grid-column:2;grid-row:2/5;height:174px;min-height:140px;margin:0}
 .kitchen-victory .kitchen-win-friends .kitchen-friend{height:145px;min-height:0}
 .kitchen-victory .kitchen-victory-note{display:none}
 .kitchen-victory .kitchen-play-again{grid-column:1/-1;grid-row:5;min-height:42px;font-size:16px}
}
@media(prefers-reduced-motion:reduce){
 .kitchen-page *,.kitchen-page *:before,.kitchen-page *:after{animation-duration:.01ms!important;transition-duration:.01ms!important}
}

/* Last visual QA: preserve visible finished food on iOS, readable character captions. */
.kitchen-win-dish{opacity:1!important}
.kitchen-serve .kitchen-serving-scene{margin-bottom:12px}
.kitchen-serve .kitchen-move-label{margin-top:4px}
.kitchen-win-friends{margin-bottom:9px}
.kitchen-victory-note{margin-top:6px}
@keyframes kitchen-pop{0%{transform:translateY(-9px) scale(.73);opacity:1}67%{transform:translateY(3px) scale(1.1);opacity:1}100%{transform:translateY(0) scale(1);opacity:1}}
@media (orientation:landscape) and (max-height:520px) {
 .kitchen-serve .kitchen-serving-scene{margin:0}
 .kitchen-serve .kitchen-move-label{margin:0}
 .kitchen-win-friends{margin:0}
}

/* v33 coherent feeding, no disembodied smile */
.kitchen-friend .kitchen-chew{display:none!important}
.kitchen-friend.kitchen-eating img{animation:none!important;transition:none!important}
.kitchen-friend.kitchen-eating .zw-reaction-layer{z-index:15!important}


/* source: bakery-v166/base.css */
/* Zählwiese Backstube v160 — standalone responsive game. */
#app:has(.zw160){height:100dvh!important;min-height:100dvh!important;overflow:hidden!important;display:flex!important;flex-direction:column!important}
#app:has(.zw160)>.app-header{flex:0 0 auto!important;background:#f7e6ca!important;z-index:25!important}
#app .zw160{
 position:relative!important;box-sizing:border-box!important;isolation:isolate!important;
 display:block!important;flex:1 1 0!important;
 width:100%!important;height:auto!important;max-width:none!important;max-height:none!important;
 min-width:0!important;min-height:0!important;padding:0!important;margin:0!important;
 overflow:hidden!important;
 background:#f2dfb9 url('/bakery-v140/kitchen-portrait.webp') center/cover no-repeat!important;
 touch-action:manipulation!important;-webkit-user-select:none!important;user-select:none!important;
 -webkit-touch-callout:none!important;overscroll-behavior:contain!important;
}
#app .zw160 *,#app .zw160 *:before,#app .zw160 *:after{box-sizing:border-box!important;-webkit-user-select:none!important;user-select:none!important}
#app .zw160 img{display:block!important;object-fit:contain!important;max-width:100%!important;max-height:100%!important;pointer-events:none!important;-webkit-user-drag:none!important}
#app .zw160 button{border:0!important;outline:0!important;box-shadow:none!important;cursor:pointer!important;-webkit-tap-highlight-color:transparent!important;touch-action:manipulation!important;padding:0!important}
#app .zw160 button:focus-visible{outline:4px dotted #6b5139!important;outline-offset:2px!important}
#app .zw160-canvas{
 position:relative!important;width:min(100%,740px)!important;height:100%!important;
 margin:0 auto!important;min-height:0!important;min-width:0!important;
 padding:clamp(8px,1.8dvh,16px) clamp(10px,2.7vw,20px) max(12px,env(safe-area-inset-bottom))!important;
 z-index:2!important;display:grid!important;gap:clamp(5px,1.2vh,13px)!important;
}
#app .zw160-effects{position:absolute!important;inset:0!important;pointer-events:none!important;overflow:hidden!important;z-index:10!important}
#app .zw160-heading{
 position:relative!important;display:flex!important;gap:12px!important;
 align-items:center!important;justify-content:center!important;
 width:min(88%,420px)!important;min-height:0!important;margin:0 auto!important;
 background:#fdf0d1e8!important;border:4px solid #a77650!important;
 border-radius:29px!important;box-shadow:0 5px 0 #ba895d,0 7px 8px #6846274a!important;
 transform:rotate(-1deg)!important;
}
#app .zw160-heading span{font-size:clamp(24px,7.8vw,42px)!important;font-weight:900!important;color:#8a512c!important;letter-spacing:-1px!important}
#app .zw160-heading img{width:36px!important;height:36px!important}
#app .zw160-circle{
 display:grid!important;place-items:center!important;
 width:clamp(74px,20vw,106px)!important;height:clamp(74px,20vw,106px)!important;
 flex:0 0 auto!important;border-radius:50%!important;
 padding:clamp(13px,3vw,22px)!important;
 background:transparent url('/picnic-v120/token-mint.webp') center/contain no-repeat!important;
 filter:drop-shadow(0 5px 3px #7752387a)!important;transition:scale .15s ease!important;
}
#app .zw160-circle img{width:100%!important;height:100%!important}
#app .zw160-circle:active,#app .zw160-recipe:active,#app .zw160-ingredient:active{scale:.92!important}
#app .zw160-intro .zw160-canvas{grid-template-rows:clamp(68px,13%,105px) minmax(0,1fr) clamp(90px,19%,135px)!important}
#app .zw160-intro-scene,#app .zw160-scene{position:relative!important;width:100%!important;height:100%!important;min-height:0!important;min-width:0!important}
#app .zw160-characters{position:absolute!important;inset:0!important;z-index:5!important;pointer-events:none!important}
#app .zw160-character{
 position:absolute!important;bottom:6%!important;width:43%!important;height:69%!important;
 display:grid!important;place-items:center!important;background:transparent!important;pointer-events:auto!important;
 transform-origin:50% 90%!important;overflow:visible!important;
}
#app .zw160-moritz{left:0!important}
#app .zw160-igor{right:0!important}
#app .zw160-character img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center bottom!important}
#app .zw160-cheer{animation:zw160-cheer .52s ease-in-out 2!important}
#app .zw160-bowl-unit{
 position:absolute!important;width:70%!important;height:78%!important;
 left:15%!important;bottom:0!important;z-index:6!important;
 display:grid!important;place-items:center!important;
 transform-origin:50% 79%!important;
}
#app .zw160-bowl-base,#app .zw160-bowl-foreground{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:contain!important}
#app .zw160-bowl-foreground{z-index:8!important}
#app .zw160-bowl-target{position:absolute!important;top:28%!important;left:11%!important;width:78%!important;height:51%!important;z-index:9!important;pointer-events:none!important}
#app .zw160-bowl-hop{animation:zw160-bowl-bounce .54s ease!important}
#app .zw160-intro-bottom,.zw160-win-bottom{display:flex!important;align-items:center!important;justify-content:center!important;min-height:0!important}
#app .zw160-intro .zw160-characters .zw160-character{height:80%!important}
#app .zw160-intro .zw160-bowl-unit{height:65%!important;width:60%!important;left:20%!important}
#app .zw160-choose .zw160-canvas{grid-template-rows:clamp(60px,11%,88px) clamp(70px,22%,172px) minmax(0,1fr)!important}
#app .zw160-choose-friends{position:relative!important;width:100%!important;height:100%!important;display:flex!important;justify-content:space-evenly!important;align-items:end!important}
#app .zw160-choose-friends img{width:31%!important;height:100%!important;object-position:center bottom!important}
#app .zw160-recipe-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:repeat(2,minmax(0,1fr))!important;min-height:0!important;gap:clamp(8px,2vw,17px)!important;align-items:center!important;justify-items:center!important}
#app .zw160-recipe{
 width:min(100%,clamp(92px,23vw,150px))!important;height:auto!important;
 aspect-ratio:1!important;min-height:0!important;max-height:100%!important;
 padding:clamp(6px,1.3vw,11px)!important;border-radius:50%!important;
 background:transparent url('/picnic-v120/token-gold.webp') center/contain no-repeat!important;
 filter:drop-shadow(0 3px 3px #70492f75)!important;
 display:grid!important;place-items:center!important;
}
#app .zw160-recipe:nth-child(even){background-image:url('/picnic-v120/token-rose.webp')!important}
#app .zw160-recipe:nth-child(3n){background-image:url('/picnic-v120/token-mint.webp')!important}
#app .zw160-recipe img{width:100%!important;height:100%!important;object-fit:contain!important}
#app .zw160-collect .zw160-canvas,#app .zw160-mix .zw160-canvas,#app .zw160-bake .zw160-canvas{
 grid-template-rows:clamp(94px,19%,145px) minmax(0,1fr) clamp(93px,20%,150px)!important;
}
#app .zw160-lesson{
 position:relative!important;min-width:0!important;min-height:0!important;
 display:flex!important;align-items:center!important;justify-content:center!important;
 gap:clamp(6px,1.5vw,14px)!important;padding:clamp(12px,2vw,20px) clamp(12px,3vw,25px)!important;
 background:transparent url('/bakery-v130/recipe-panel.webp') center/100% 100% no-repeat!important;
 filter:drop-shadow(0 3px 3px #76533a50)!important;
}
#app .zw160-count-pictures{display:flex!important;align-items:center!important;justify-content:center!important;gap:1px!important;min-width:0!important;height:89%!important;max-width:63%!important}
#app .zw160-count-item{display:grid!important;place-items:center!important;position:relative!important;width:clamp(28px,11vw,65px)!important;height:100%!important;min-width:0!important}
#app .zw160-count-item img{height:100%!important;width:100%!important}
#app .zw160-count-item.zw160-ticked{opacity:.35!important}
#app .zw160-count-item.zw160-ticked:after{
 content:''!important;position:absolute!important;left:25%!important;top:48%!important;
 width:50%!important;height:9%!important;transform:rotate(-20deg)!important;
 background:#a87349!important;border-radius:8px!important;
}
#app .zw160-arrow{width:clamp(25px,7vw,54px)!important;height:62%!important;flex:0 0 auto!important;display:grid!important;place-items:center!important}
#app .zw160-arrow img{width:100%!important;height:100%!important;transform:rotate(-90deg)!important}
#app .zw160-lesson-end{width:clamp(48px,15vw,80px)!important;height:94%!important;flex:0 0 auto!important}
#app .zw160-lesson-end img{width:100%!important;height:100%!important}
#app .zw160-tool-image,#app .zw160-lesson-end-image{width:clamp(55px,17vw,100px)!important;height:97%!important;flex:0 0 auto!important}
#app .zw160-tray{
 display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;
 align-items:center!important;justify-items:center!important;gap:clamp(3px,.8vw,9px)!important;
 padding:clamp(5px,1.2vw,11px)!important;min-height:0!important;
 background:#ffe7c5f3!important;border:4px solid #b17b4c!important;
 border-radius:clamp(19px,4vw,29px)!important;box-shadow:0 3px 0 #fff7d7 inset,0 5px 9px #8158315b!important;
}
#app .zw160-ingredient{
 display:grid!important;place-items:center!important;
 width:100%!important;max-width:110px!important;height:auto!important;
 max-height:100%!important;aspect-ratio:1!important;min-width:0!important;
 padding:clamp(4px,1.4vw,9px)!important;border-radius:50%!important;
 background:transparent url('/picnic-v120/token-gold.webp') center/100% 100% no-repeat!important;
}
#app .zw160-ingredient:nth-child(2),#app .zw160-ingredient:nth-child(5){background-image:url('/picnic-v120/token-rose.webp')!important}
#app .zw160-ingredient:nth-child(3){background-image:url('/picnic-v120/token-mint.webp')!important}
#app .zw160-ingredient:nth-child(4){background-image:url('/picnic-v120/token-blue.webp')!important}
#app .zw160-ingredient img{width:100%!important;height:100%!important}
#app .zw160-added{position:absolute!important;z-index:7!important;left:34%!important;top:44%!important;width:32%!important;height:23%!important;pointer-events:none!important;display:flex!important;align-items:center!important;justify-content:center!important}
#app .zw160-added-piece{min-width:0!important;width:29%!important;height:100%!important}
#app .zw160-whisk-actor{
 position:absolute!important;width:42%!important;height:72%!important;
 left:32%!important;top:-17%!important;z-index:7!important;
 transform-origin:53% 79%!important;
 pointer-events:none!important;
}
#app .zw160-whisk-art{width:100%!important;height:100%!important;object-fit:contain!important}
#app .zw160-stirring .zw160-whisk-actor{animation:zw160-whisk-stir .56s ease-in-out infinite!important}
#app .zw160-stirring .zw160-bowl-unit{animation:zw160-bowl-stir .56s ease-in-out infinite!important}
#app .zw160-mix-bottom{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:clamp(3px,1vh,9px)!important;min-height:0!important}
#app .zw160-stir-progress{display:flex!important;align-items:center!important;gap:clamp(9px,3vw,17px)!important;height:18px!important}
#app .zw160-stir-progress span{width:16px!important;height:16px!important;border-radius:50%!important;border:3px solid #9f734d!important;background:#fff0d2!important}
#app .zw160-stir-progress span.done{background:#83b986!important}
#app .zw160-whisk-control{width:clamp(73px,18vw,98px)!important;height:clamp(73px,18vw,98px)!important;min-height:0!important}
#app .zw160-oven-scene{position:relative!important;min-height:0!important}
#app .zw160-oven-wrap{position:absolute!important;left:19%!important;bottom:2%!important;width:62%!important;height:86%!important;z-index:6!important;display:grid!important;place-items:center!important}
#app .zw160-oven-art{width:100%!important;height:100%!important}
#app .zw160-oven-target{position:absolute!important;inset:20% 10% 20%!important;pointer-events:none!important}
#app .zw160-oven-glow .zw160-oven-art{animation:zw160-oven-heat 1.1s ease-in-out infinite alternate!important}
#app .zw160-tray-flying{position:absolute!important;z-index:7!important;width:55%!important;height:50%!important;left:23%!important;top:29%!important;animation:zw160-tray-in 1.5s ease both!important}
#app .zw160-bake-bottom{display:flex!important;align-items:center!important;justify-content:center!important;min-height:0!important}
#app .zw160-tray-button{background-image:url('/picnic-v120/token-rose.webp')!important}
#app .zw160-win .zw160-canvas{grid-template-rows:clamp(40px,12%,82px) minmax(0,1fr) clamp(93px,19%,146px)!important}
#app .zw160-win-stars{display:flex!important;align-items:center!important;justify-content:space-evenly!important;min-height:0!important}
#app .zw160-win-stars img{width:clamp(40px,11vw,72px)!important;height:95%!important}
#app .zw160-win-scene{position:relative!important;min-height:0!important}
#app .zw160-win-scene .zw160-character{bottom:8%!important;height:72%!important}
#app .zw160-result-dish{position:absolute!important;z-index:7!important;width:66%!important;height:75%!important;bottom:3%!important;left:17%!important;filter:drop-shadow(0 5px 4px #76513d5b)!important;animation:zw160-reward-pulse 2s ease-in-out infinite alternate!important}
#app .zw160-wrong{animation:zw160-wrong .3s ease both!important}
#app .zw160-hint{filter:drop-shadow(0 0 13px #f0b95d)!important}
#app .zw160-drop-hint{filter:drop-shadow(0 0 13px #f4c06e)!important}
.zw160-ghost{position:fixed!important;z-index:999999!important;pointer-events:none!important;width:92px!important;height:92px!important;transform:translate(-50%,-50%)!important;filter:drop-shadow(0 5px 3px #6b493c6a)!important}
.zw160-ghost img{width:100%!important;height:100%!important;object-fit:contain!important}
@keyframes zw160-cheer{0%,100%{transform:rotate(0)}35%{transform:rotate(-6deg) translateY(-7px)}70%{transform:rotate(5deg)}}
@keyframes zw160-whisk-stir{0%{transform:translate(-7px,1px) rotate(-12deg)}25%{transform:translate(2px,-6px) rotate(4deg)}50%{transform:translate(9px,3px) rotate(13deg)}75%{transform:translate(-2px,6px) rotate(-3deg)}100%{transform:translate(-7px,1px) rotate(-12deg)}}
@keyframes zw160-bowl-stir{0%,100%{transform:rotate(-.6deg)}50%{transform:rotate(.6deg)}}
@keyframes zw160-bowl-bounce{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}
@keyframes zw160-reward-pulse{to{transform:scale(1.055)}}
@keyframes zw160-wrong{25%{transform:translateX(-4px)}50%{transform:translateX(4px)}75%{transform:translateX(-3px)}}
@keyframes zw160-oven-heat{to{filter:drop-shadow(0 0 14px #f6bb5cb8)}}
@keyframes zw160-tray-in{from{opacity:0;transform:translateY(20px) scale(.8)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(orientation:landscape){
 #app .zw160{background-image:url('/bakery-v140/kitchen-landscape.webp')!important}
 #app .zw160-canvas{width:min(100%,1100px)!important;padding:clamp(3px,.7vh,8px) clamp(9px,2vw,18px) 6px!important;gap:4px!important}
 #app .zw160-intro .zw160-canvas{grid-template-columns:minmax(0,1fr) 110px!important;grid-template-rows:50px minmax(0,1fr)!important}
 #app .zw160-intro .zw160-heading{grid-area:1/1;min-height:40px!important}
 #app .zw160-intro-scene{grid-area:2/1}
 #app .zw160-intro-bottom{grid-area:1/2/3/3}
 #app .zw160-choose .zw160-canvas{grid-template-columns:minmax(0,28%) minmax(0,1fr)!important;grid-template-rows:50px minmax(0,1fr)!important}
 #app .zw160-choose-heading{grid-area:1/1/2/3}
 #app .zw160-choose-friends{grid-area:2/1}
 #app .zw160-choose-friends img{width:50%!important}
 #app .zw160-recipe-grid{grid-area:2/2}
 #app .zw160-recipe{width:min(100%,clamp(55px,24vh,130px))!important}
 #app .zw160-collect .zw160-canvas,#app .zw160-mix .zw160-canvas,#app .zw160-bake .zw160-canvas{
  grid-template-columns:minmax(0,1.55fr) minmax(0,.9fr)!important;
  grid-template-rows:minmax(0,42%) minmax(0,58%)!important;
 }
 #app .zw160-collect .zw160-scene,#app .zw160-mix .zw160-scene,#app .zw160-bake .zw160-oven-scene{grid-area:1/1/3/2}
 #app .zw160-lesson{grid-area:1/2}
 #app .zw160-tray,#app .zw160-mix-bottom,#app .zw160-bake-bottom{grid-area:2/2}
 #app .zw160-scene .zw160-character,#app .zw160-oven-scene .zw160-character{width:34%!important;height:90%!important}
 #app .zw160-scene .zw160-bowl-unit{width:60%!important;left:20%!important;height:98%!important}
 #app .zw160-oven-wrap{height:99%!important;width:55%!important;left:23%!important}
 #app .zw160-ingredient{max-height:84%!important}
 #app .zw160-whisk-control,#app .zw160-tray-button{width:clamp(66px,18vh,95px)!important;height:clamp(66px,18vh,95px)!important}
 #app .zw160-win .zw160-canvas{grid-template-columns:1fr 100px!important;grid-template-rows:45px minmax(0,1fr)!important}
 #app .zw160-win-stars{grid-area:1/1}
 #app .zw160-win-scene{grid-area:2/1}
 #app .zw160-win-bottom{grid-area:1/2/3/3}
 #app .zw160-win-scene .zw160-character{height:95%!important}
 #app .zw160-result-dish{height:100%!important}
}
@media(orientation:portrait) and (max-height:620px){
 #app .zw160-collect .zw160-canvas,#app .zw160-mix .zw160-canvas,#app .zw160-bake .zw160-canvas{grid-template-rows:76px minmax(0,1fr) 78px!important;gap:3px!important}
 #app .zw160-choose .zw160-canvas{grid-template-rows:52px 70px minmax(0,1fr)!important}
 #app .zw160-lesson{padding:8px 13px!important}
 #app .zw160-ingredient{padding:3px!important}
 #app .zw160-recipe{width:min(100%,clamp(70px,18vh,114px))!important}
}
@media(prefers-reduced-motion:reduce){
 #app .zw160 *,#app .zw160 *:before,#app .zw160 *:after{animation:none!important;transition:none!important}
}

/* Visual acceptance refinements: true utensil orientation and large child controls. */
#app .zw160-tool-image[src*="/whisk.webp"],
#app .zw160-whisk-control img,
#app .zw160-whisk-art{transform:rotate(180deg)!important}
#app .zw160-whisk-actor{top:-7%!important;left:33%!important;width:42%!important;height:72%!important}
#app .zw160-mix .zw160-bowl-unit{width:67%!important;left:16.5%!important;height:72%!important;bottom:1%!important}
#app .zw160-intro .zw160-bowl-unit{width:55%!important;left:22.5%!important;height:60%!important;bottom:5%!important}
#app .zw160-collect .zw160-bowl-unit{width:62%!important;left:19%!important;height:68%!important;bottom:1%!important}
#app .zw160-collect .zw160-characters .zw160-character,
#app .zw160-mix .zw160-characters .zw160-character{height:74%!important;bottom:5%!important}
#app .zw160-choose .zw160-recipe-grid{
 align-content:center!important;
 background:#fff0d4e8!important;
 border:4px solid #b37c51!important;border-radius:26px!important;
 padding:clamp(8px,2vw,14px)!important;
 box-shadow:inset 0 4px #fff6e7,0 4px 7px #7b533e45!important;
 gap:clamp(4px,1vw,11px)!important;
}
#app .zw160-recipe{
 width:min(100%,145px)!important;
 padding:clamp(3px,.7vw,6px)!important;
}
#app .zw160-count-lesson{
 background:#fff0d4e9!important;
 border:4px solid #ac7951!important;border-radius:24px!important;
 box-shadow:0 3px 0 #fff4dd inset,0 4px 5px #7853395f!important;
}
#app .zw160-win-scene .zw160-result-dish{height:64%!important;width:57%!important;left:21.5%!important}
#app .zw160-oven-ready{animation:zw160-oven-arrived .45s ease-out 1!important}
@keyframes zw160-oven-arrived{0%{transform:scale(.96)}50%{transform:scale(1.05)}100%{transform:scale(1)}}
@media(orientation:landscape){
 #app .zw160-choose .zw160-recipe-grid{padding:4px 10px!important}
 #app .zw160-recipe{width:min(100%,clamp(65px,26vh,145px))!important}
 #app .zw160-collect .zw160-bowl-unit{width:54%!important;left:23%!important;height:82%!important}
 #app .zw160-mix .zw160-bowl-unit{width:56%!important;left:22%!important;height:84%!important}
 #app .zw160-whisk-actor{top:-9%!important;width:40%!important}
}

/* Six picture recipes form one compact two-row illustrated control panel. */
#app .zw160-choose .zw160-recipe-grid{
 grid-template-rows:repeat(2,minmax(0,clamp(116px,19vh,146px)))!important;
 align-content:center!important;
 row-gap:clamp(8px,2.3vh,23px)!important;
}
@media(orientation:landscape){
 #app .zw160-choose .zw160-recipe-grid{
  grid-template-rows:repeat(2,minmax(0,clamp(68px,28vh,108px)))!important;
  row-gap:4px!important;
 }
}
@media(orientation:portrait) and (max-height:620px){
 #app .zw160-choose .zw160-recipe-grid{
  grid-template-rows:repeat(2,minmax(0,clamp(73px,20vh,98px)))!important;
  row-gap:5px!important;
 }
}


/* source: bakery-v166/polish.css */
/* Zählwiese Backstube v161 — premium interaction polish, not a second old scene. */
#app .zw161{
 -webkit-font-smoothing:antialiased!important;
}
#app .zw161 .zw160-canvas{
 isolation:isolate!important;
}
#app .zw161 .zw160-characters .zw160-character{
 filter:drop-shadow(0 3px 2px rgba(105,70,43,.15))!important;
}
#app .zw161 .zw160-bowl-unit{
 filter:drop-shadow(0 4px 2px rgba(109,72,45,.2))!important;
}
#app .zw161 .zw160-heading{
 background:#fff1d5f2!important;
}
#app .zw161 .zw160-circle{
 min-width:70px!important;
 min-height:70px!important;
}
#app .zw161 .zw160-choose-friends::before {
 content:'';position:absolute;z-index:0;pointer-events:none;
 width:80%;height:35%;top:0;left:10%;
 background:url('/bakery-v141/paper-garland.webp') center/contain no-repeat;opacity:.95;
}
#app .zw161 .zw160-choose-friends img {
 position:relative;z-index:1;filter:drop-shadow(0 3px 3px rgba(104,65,40,.19));
}
#app .zw161 .zw160-recipe-grid {
 border:5px solid #b27c4f!important;
 background:#fef0d7f4!important;
 box-shadow:inset 0 3px 0 #fffae9,0 6px 10px rgba(105,68,41,.23)!important;
}
#app .zw161 .zw160-recipe:focus-visible,
#app .zw161 .zw160-ingredient:focus-visible{
 outline:4px dotted #805734!important;
 outline-offset:3px!important;
}
#app .zw161 .zw160-recipe img{
 filter:drop-shadow(0 2px 1px #9b6f4540)!important;
}
#app .zw161 .zw160-count-lesson{
 background:#fff2d8f5!important;
}
#app .zw161 .zw160-count-item.zw160-ticked:after {
 border-radius:9px!important;
 transform:rotate(-25deg)!important;
}
#app .zw161 .zw160-tray{
 background:#fff0d4f0!important;
 box-shadow:0 3px #fff9e8 inset,0 5px 10px rgba(106,67,41,.20)!important;
}
#app .zw161 .zw160-ingredient{
 min-height:52px!important;
}
#app .zw161 .zw160-ingredient img{
 transition:transform .16s ease!important;
}
#app .zw161 .zw160-ingredient:active img{transform:scale(.88) rotate(-6deg)!important}
#app .zw161 .zw160-bowl-hop{animation:zw161-bowl-hop .5s ease-out both!important}
#app .zw161 .zw160-whisk-control{
 background-image:url('/picnic-v120/token-mint.webp')!important;
}
#app .zw161 .zw160-whisk-control img,
#app .zw161 .zw160-whisk-art,
#app .zw161 .zw160-tool-image[src*="whisk-upright.webp"]{
 transform:none!important;
 object-fit:contain!important;
}
#app .zw161 .zw160-whisk-actor{
 width:31%!important;height:61%!important;left:35%!important;top:-6%!important;
 transform-origin:49% 73%!important;
 z-index:7!important;
}
#app .zw161 .zw160-whisk-art{
 filter:drop-shadow(0 2px 2px #503c2c70)!important;
}
#app .zw161.zw160-stirring .zw160-whisk-actor{
 animation:zw161-whisk-circle .63s ease-in-out infinite!important;
}
#app .zw161.zw161-manual .zw160-whisk-actor{
 animation:none!important;
 transform:translate(var(--zw161-x,0px),var(--zw161-y,0px)) rotate(var(--zw161-angle,0deg))!important;
 transition:transform .08s ease-out!important;
}
#app .zw161 .zw160-bowl-mixing{
 touch-action:none!important;-webkit-tap-highlight-color:transparent!important;
}
#app .zw161 .zw160-bowl-mixing .zw160-bowl-target{pointer-events:none!important}
#app .zw161 .zw160-bowl-foreground{
 z-index:8!important;
}
#app .zw161 .zw161-circle-guide{
 width:58px!important;height:24px!important;
 pointer-events:none!important;position:relative!important;
 display:flex!important;align-items:center!important;justify-content:center!important;
 background:url('/bakery-v152/stir-circular-marks.webp') center/contain no-repeat!important;
 opacity:.85!important;
}
#app .zw161.zw160-stirring .zw161-circle-guide{
 animation:zw161-guide-move 1.4s ease-in-out infinite alternate!important;
}
#app .zw161 .zw160-stir-progress span{
 width:18px!important;height:18px!important;
 border:3px solid #936a49!important;
 background:#fff6e6!important;
 transition:background .16s ease,transform .2s ease!important;
}
#app .zw161 .zw160-stir-progress span.done{
 background:#91bf82!important;
 box-shadow:0 1px 6px rgba(95,138,75,.35)!important;
 transform:scale(1.12)!important;
}
#app .zw161 .zw160-mix-bottom{
 gap:3px!important;
}
#app .zw161 .zw160-bake-bottom .zw160-circle{
 background-image:url('/picnic-v120/token-rose.webp')!important;
}
#app .zw161 .zw160-oven-wrap{
 filter:drop-shadow(0 3px 3px #5b403d2d)!important;
}
#app .zw161 .zw161-oven-steam{
 position:absolute!important;
 left:30%!important;top:-5%!important;
 width:40%!important;height:25%!important;
 opacity:0!important;pointer-events:none!important;z-index:10!important;
}
#app .zw161.zw160-baking .zw161-oven-steam{
 animation:zw161-steam 2s ease-in-out infinite!important;
}
#app .zw161 .zw160-result-dish{
 filter:drop-shadow(0 6px 4px rgba(101,68,43,.2))!important;
}
#app .zw161 .zw160-win-stars img{
 animation:zw161-stars 2.4s ease-in-out infinite alternate!important;
}
#app .zw161 .zw160-win-stars img:nth-child(2){animation-delay:-.9s!important}
#app .zw161 .zw160-win-stars img:nth-child(3){animation-delay:-1.5s!important}
.zw161-flying-ingredient{
 position:fixed!important;z-index:9999!important;pointer-events:none!important;
 width:69px!important;height:69px!important;object-fit:contain!important;
 transform:translate(-50%,-50%)!important;
 animation:zw161-fly-food .72s cubic-bezier(.3,.56,.36,1) both!important;
 filter:drop-shadow(0 2px 2px #80664a4f)!important;
}
@keyframes zw161-fly-food{
 0%{opacity:1;transform:translate(-50%,-50%) scale(.85) rotate(0deg)}
 45%{opacity:1;transform:translate(calc(-50% + var(--fx-half)),calc(-50% + var(--fy-half) - 20px)) scale(1.02) rotate(-9deg)}
 100%{opacity:0;transform:translate(calc(-50% + var(--fx)),calc(-50% + var(--fy))) scale(.26) rotate(24deg)}
}
@keyframes zw161-whisk-circle{
 0%,100%{transform:translate(-6px,1px) rotate(-10deg)}
 25%{transform:translate(1px,-5px) rotate(1deg)}
 50%{transform:translate(7px,0) rotate(11deg)}
 75%{transform:translate(0,5px) rotate(-2deg)}
}
@keyframes zw161-bowl-hop{
 0%,100%{transform:translateY(0) scale(1)}
 50%{transform:translateY(-5px) scale(1.025)}
}
@keyframes zw161-steam{
 0%{opacity:0;transform:translateY(12px) scale(.7)}
 40%,65%{opacity:.82}
 100%{opacity:0;transform:translateY(-20px) scale(1.1)}
}
@keyframes zw161-guide-move{to{transform:rotate(12deg) scale(1.08)}}
@keyframes zw161-stars{to{transform:translateY(-5px) rotate(8deg) scale(1.05)}}
@media(orientation:landscape){
 #app .zw161 .zw160-whisk-actor{width:29%!important;height:63%!important;top:-9%!important;left:36%!important}
 #app .zw161 .zw161-circle-guide{width:46px!important;height:17px!important}
 #app .zw161 .zw160-stir-progress span{width:15px!important;height:15px!important}
 #app .zw161 .zw160-mix-bottom{gap:1px!important}
}
@media(orientation:portrait) and (max-height:620px){
 #app .zw161 .zw161-circle-guide{width:37px!important;height:15px!important}
 #app .zw161 .zw160-stir-progress span{width:14px!important;height:14px!important}
 #app .zw161 .zw160-mix-bottom{gap:0!important}
 #app .zw161 .zw160-whisk-actor{width:28%!important;height:57%!important;top:-6%!important}
}
@media(prefers-reduced-motion:reduce){
 #app .zw161 *{animation:none!important;transition:none!important}
 .zw161-flying-ingredient{animation:none!important;display:none!important}
}

/* 161b: exact drawing dimensions. Whisk stays entirely inside bowl and action button. */
#app .zw161 .zw160-whisk-actor{
 width:21%!important;height:46%!important;
 left:39.5%!important;top:14%!important;
 transform-origin:52% 78%!important;
}
#app .zw161 .zw160-whisk-control{
 display:flex!important;
 align-items:center!important;justify-content:center!important;
 overflow:visible!important;
}
#app .zw161 .zw160-whisk-control img{
 display:block!important;
 flex:none!important;
 width:52%!important;height:56%!important;
 min-width:0!important;min-height:0!important;
 max-width:52%!important;max-height:56%!important;
 object-fit:contain!important;
 align-self:center!important;justify-self:center!important;
}
#app .zw161 .zw160-tool-lesson .zw160-tool-image,
#app .zw161 .zw160-tool-image[src*="whisk-upright.webp"]{
 width:clamp(43px,13vw,75px)!important;
 max-width:75px!important;
 height:72%!important;max-height:72%!important;
 object-fit:contain!important;
}
@media(orientation:landscape){
 #app .zw161 .zw160-whisk-actor{
  width:20%!important;height:46%!important;top:10%!important;left:40%!important;
 }
 #app .zw161 .zw160-whisk-control img{width:50%!important;height:55%!important}
}
@media(orientation:portrait) and (max-height:620px){
 #app .zw161 .zw160-whisk-actor{
  width:19%!important;height:43%!important;top:14%!important;left:40.5%!important;
 }
 #app .zw161 .zw160-whisk-control img{width:48%!important;height:52%!important}
}

/* Keep the hand-drawn whisk legible in the large toddler control. */
#app .zw161 .zw160-whisk-control img{
 width:82%!important;height:82%!important;
 max-width:82%!important;max-height:82%!important;
}
@media(orientation:landscape){
 #app .zw161 .zw160-whisk-control img{width:78%!important;height:78%!important;max-width:78%!important;max-height:78%!important}
}


/* source: bakery-v166/features.css */
/* Backstube V162 — new win interaction and touch-stir polish. */
#app .zw161 .zw160-bowl-mixing{touch-action:none!important}
#app .zw161 .zw162-progress-pulse{
 filter:drop-shadow(0 0 6px #fed18b)!important;
}
#app .zw161 .zw160-win-scene .zw162-serve-button{
 position:absolute!important;z-index:8!important;
 left:20%!important;bottom:5%!important;
 width:60%!important;height:72%!important;
 border:0!important;padding:0!important;
 background:transparent!important;
 display:grid!important;place-items:center!important;
 touch-action:none!important;
 filter:drop-shadow(0 5px 5px #69442b37)!important;
 transform-origin:center bottom!important;
}
#app .zw161 .zw160-win-scene .zw162-serve-button .zw160-result-dish{
 position:relative!important;
 left:auto!important;bottom:auto!important;
 width:100%!important;height:100%!important;
 max-width:100%!important;max-height:100%!important;
 object-fit:contain!important;
 animation:none!important;
 filter:none!important;
 pointer-events:none!important;
}
#app .zw161 .zw162-serve-button:focus-visible{
 outline:4px dashed #8b6b42!important;outline-offset:2px!important;
}
#app .zw161 .zw162-serving{
 animation:zw162-serve-plate .64s ease-in-out both!important;
}
#app .zw161 .zw162-serving-hearts{
 position:absolute!important;top:23%!important;
 left:40%!important;width:20%!important;height:20%!important;
 display:flex!important;gap:4px!important;
 opacity:0!important;pointer-events:none!important;z-index:12!important;
}
#app .zw161 .zw162-serving-hearts img{
 width:45%!important;height:80%!important;
 filter:drop-shadow(0 3px 2px #68482e25)!important;
}
#app .zw161 .zw162-fed-moritz .zw162-serving-hearts{
 left:14%!important;animation:zw162-hearts .9s ease-out both!important;
}
#app .zw161 .zw162-fed-igor .zw162-serving-hearts{
 left:65%!important;animation:zw162-hearts .9s ease-out both!important;
}
#app .zw161 .zw160-character.zw162-fed{
 filter:drop-shadow(0 0 7px #e9b47c99)!important;
}
#app .zw161 .zw160-win-bottom .zw160-circle{z-index:15!important}
@keyframes zw162-serve-plate {
 0%,100%{transform:translateY(0) scale(1)}
 50%{transform:translateY(-9px) scale(.93)}
}
@keyframes zw162-hearts{
 0%{opacity:0;transform:translateY(14px) scale(.7)}
 35%{opacity:1}
 100%{opacity:0;transform:translateY(-25px) scale(1.12)}
}
@media(orientation:landscape){
 #app .zw161 .zw160-win-scene .zw162-serve-button{
  left:34%!important;bottom:3%!important;width:32%!important;height:98%!important;
 }
 #app .zw161 .zw162-fed-moritz .zw162-serving-hearts{left:13%!important}
 #app .zw161 .zw162-fed-igor .zw162-serving-hearts{left:69%!important}
}
@media(prefers-reduced-motion:reduce){
 #app .zw161 .zw162-serve-button,
 #app .zw161 .zw162-serving-hearts{animation:none!important}
}

/* Victory characters must remain fully visible in landscape, including feet. */
@media(orientation:landscape){
 #app .zw161 .zw160-win-scene .zw160-characters .zw160-character{
  width:32%!important;
  height:76%!important;
  bottom:1%!important;
  max-height:76%!important;
 }
 #app .zw161 .zw160-win-scene .zw160-characters .zw160-character img{
  width:100%!important;height:100%!important;
  object-fit:contain!important;object-position:center bottom!important;
 }
 #app .zw161 .zw160-win-scene .zw162-serve-button{
  height:80%!important;bottom:5%!important;
 }
}

/* Preserve the complete character drawings above the bottom safe-area. */
@media(orientation:landscape){
 #app .zw161 .zw160-win-scene .zw160-characters .zw160-character{
  width:30%!important;height:69%!important;
  bottom:13%!important;max-height:69%!important;
 }
}


/* source: bakery-v166/buttons-drag.css */
/* Backstube V163 — tactile, real pencil-textured asset buttons + reactive drag targets. */
#app .zw163 .zw160-circle,
#app .zw163 .zw160-recipe,
#app .zw163 .zw160-ingredient{
 -webkit-tap-highlight-color:transparent!important;
 touch-action:none!important;
 border:0!important;
 background-size:100% 100%!important;
 background-repeat:no-repeat!important;
 background-position:center!important;
 transition:transform .17s cubic-bezier(.16,1.2,.4,1),filter .16s ease!important;
 filter:drop-shadow(0 5px 2px rgba(77,51,33,.25))!important;
}
#app .zw163 .zw160-circle{
 background-image:url('/bakery-v163/button-mint.webp')!important;
 padding:clamp(10px,2vw,16px)!important;
}
#app .zw163 .zw160-circle.zw160-tray-button{
 background-image:url('/bakery-v163/button-berry.webp')!important;
}
#app .zw163 .zw160-recipe{
 background-image:url('/bakery-v163/button-honey.webp')!important;
 padding:clamp(5px,1vw,8px)!important;
}
#app .zw163 .zw160-recipe:nth-child(even){
 background-image:url('/bakery-v163/button-berry.webp')!important;
}
#app .zw163 .zw160-recipe:nth-child(3n){
 background-image:url('/bakery-v163/button-mint.webp')!important;
}
#app .zw163 .zw160-ingredient{
 background-image:url('/bakery-v163/button-honey.webp')!important;
 min-width:0!important;
 padding:clamp(4px,1.2vw,9px)!important;
}
#app .zw163 .zw160-ingredient:nth-child(2),
#app .zw163 .zw160-ingredient:nth-child(5){
 background-image:url('/bakery-v163/button-berry.webp')!important;
}
#app .zw163 .zw160-ingredient:nth-child(3){
 background-image:url('/bakery-v163/button-mint.webp')!important;
}
#app .zw163 .zw160-ingredient:nth-child(4){
 background-image:url('/bakery-v163/button-sky.webp')!important;
}
#app .zw163 .zw160-recipe img,
#app .zw163 .zw160-ingredient img{
 width:88%!important;height:88%!important;
 max-width:88%!important;max-height:88%!important;
 object-fit:contain!important;
 filter:drop-shadow(0 2px 1px rgba(99,66,41,.18))!important;
}
#app .zw163 .zw160-circle img{
 width:76%!important;height:76%!important;
 max-width:76%!important;max-height:76%!important;
 object-fit:contain!important;
 margin:auto!important;
 filter:drop-shadow(0 1px 1px rgba(101,69,46,.18))!important;
}
#app .zw163 .zw160-whisk-control img{
 width:76%!important;height:78%!important;
 max-width:76%!important;max-height:78%!important;
}
#app .zw163 .zw160-circle:active,
#app .zw163 .zw160-recipe:active,
#app .zw163 .zw160-ingredient:active{
 transform:translateY(3px) scale(.95)!important;
 filter:drop-shadow(0 1px 1px rgba(77,51,33,.3))!important;
}
#app .zw163 .zw160-ingredient.zw163-drag-origin,
#app .zw163 .zw160-circle.zw163-drag-origin{
 opacity:.52!important;
 transform:scale(.95)!important;
}
#app .zw163 .zw160-bowl-unit.zw163-can-drop:after,
#app .zw163 .zw160-oven-wrap.zw163-can-drop:after{
 content:''!important;
 position:absolute!important;
 inset:15% 7% 15%!important;
 border:4px dashed #b38350!important;
 border-radius:46%!important;
 background:rgba(254,229,173,.14)!important;
 z-index:12!important;
 pointer-events:none!important;
 animation:zw163-ready .66s ease-in-out infinite alternate!important;
}
#app .zw163 .zw160-oven-wrap.zw163-can-drop:after{
 inset:19% 18% 18%!important;
 border-radius:25%!important;
}
#app .zw163 .zw160-bowl-unit.zw163-can-drop,
#app .zw163 .zw160-oven-wrap.zw163-can-drop{
 filter:drop-shadow(0 0 9px #e8b770aa)!important;
}
#app .zw163 .zw163-oven-accept{
 animation:zw163-oven-accept .36s ease-out 1!important;
}
#app .zw163 .zw163-used{
 opacity:.62!important;pointer-events:none!important;
}
#app .zw163 .zw160-oven-scene .zw160-oven-wrap{
 transition:filter .15s ease!important;
}
#app .zw163 .zw160-bowl-unit.zw160-bowl-hop{
 animation:zw161-bowl-hop .44s ease-out 1!important;
}
.zw163-flying-tray{
 position:fixed!important;
 left:0;top:0;
 width:clamp(68px,17vw,120px)!important;
 height:clamp(65px,17vw,110px)!important;
 z-index:999999!important;
 object-fit:contain!important;
 transform:translate(-50%,-50%)!important;
 animation:zw163-tray-flight .98s cubic-bezier(.25,.85,.38,1) both!important;
 pointer-events:none!important;
 filter:drop-shadow(0 7px 3px #60483155)!important;
}
#app .zw163 .zw160-ghost,
.zw160-ghost{
 width:clamp(75px,20vw,116px)!important;
 height:clamp(75px,20vw,116px)!important;
}
.zw160-ghost img{
 width:100%!important;height:100%!important;
 object-fit:contain!important;
 filter:drop-shadow(0 2px 2px #77533f44)!important;
}
@keyframes zw163-ready{from{opacity:.47;transform:scale(.985)}to{opacity:1;transform:scale(1.028)}}
@keyframes zw163-oven-accept{0%,100%{transform:scale(1)}55%{transform:scale(1.035)}}
@keyframes zw163-tray-flight{
 0%{opacity:1;transform:translate(-50%,-50%) scale(1.1) rotate(-7deg)}
 40%{opacity:1;transform:translate(calc(-50% + var(--flight-x40)),calc(-50% + var(--flight-y40))) scale(1) rotate(4deg)}
 100%{opacity:0;transform:translate(calc(-50% + var(--flight-x)),calc(-50% + var(--flight-y))) scale(.3) rotate(0)}
}
@media(orientation:landscape){
 #app .zw163 .zw160-ingredient{padding:2px!important}
 #app .zw163 .zw160-circle{padding:9px!important}
 #app .zw163 .zw160-whisk-control img{width:75%!important;height:75%!important}
}
@media(prefers-reduced-motion:reduce){
 #app .zw163 *,#app .zw163 *:before,#app .zw163 *:after{animation:none!important;transition:none!important}
 .zw163-flying-tray{animation:none!important;display:none!important}
}

/* The oven must not obscure the faces of Moritz and Igor. */
#app .zw163 .zw160-oven-wrap{
 width:53%!important;left:23.5%!important;
 height:70%!important;bottom:1%!important;
}
#app .zw163 .zw160-oven-scene .zw160-characters .zw160-character{
 width:34%!important;height:72%!important;bottom:3%!important;
}
#app .zw163 .zw160-oven-art{
 object-fit:contain!important;
}
#app .zw163 .zw160-oven-wrap.zw163-can-drop:after{
 inset:19% 12% 20%!important;
}
@media(orientation:landscape){
 #app .zw163 .zw160-oven-wrap{
  width:47%!important;left:26.5%!important;
  height:81%!important;bottom:0!important;
 }
 #app .zw163 .zw160-oven-scene .zw160-characters .zw160-character{
  width:29%!important;height:88%!important;bottom:1%!important;
 }
}
@media(orientation:portrait) and (max-height:620px){
 #app .zw163 .zw160-oven-wrap{
  width:49%!important;left:25.5%!important;height:66%!important;
 }
}

/* Recipe sheet and mixing utensil remain recognisable at small iPhone sizes. */
#app .zw163 .zw160-tray-button img{
 width:95%!important;height:95%!important;
 max-width:95%!important;max-height:95%!important;
 filter:drop-shadow(0 2px 2px #67462b55)!important;
}
#app .zw163 .zw160-whisk-control img{
 width:85%!important;height:86%!important;
 max-width:85%!important;max-height:86%!important;
 filter:drop-shadow(0 1px 2px #65483155)!important;
}
@media(orientation:landscape){
 #app .zw163 .zw160-tray-button img{
  width:95%!important;height:95%!important;max-width:95%!important;max-height:95%!important;
 }
 #app .zw163 .zw160-whisk-control img{
  width:83%!important;height:82%!important;max-width:83%!important;max-height:82%!important;
 }
}


/* source: bakery-v166/refinement.css */
/* V164: ingredients sit inside the illustrated bowl, behind the handdrawn rim. */
#app .zw164-ingredients-in-bowl{
 position:absolute!important;
 z-index:7!important;
 left:24%!important;top:27%!important;
 width:52%!important;height:28%!important;
 display:flex!important;justify-content:center!important;align-items:center!important;
 flex-wrap:nowrap!important;gap:1px!important;
 pointer-events:none!important;
 overflow:hidden!important;
 border-radius:46% 46% 35% 35%!important;
}
#app .zw164-bowl-food{
 position:relative!important;display:flex!important;
 flex:0 1 23%!important;
 width:23%!important;height:75%!important;min-width:0!important;
 align-items:center!important;justify-content:center!important;
 transform-origin:center bottom!important;
 animation:zw164-bowl-plop .45s ease-out both!important;
}
#app .zw164-bowl-food:nth-child(2n){transform:rotate(-10deg)!important}
#app .zw164-bowl-food:nth-child(3n){transform:rotate(12deg)!important}
#app .zw164-bowl-food img{
 width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;
 object-fit:contain!important;
 filter:drop-shadow(0 1px 2px rgba(120,79,38,.3))!important;
}
#app .zw164-front-overlay{
 z-index:8!important;
 pointer-events:none!important;
}
#app .zw164.zw160-collect .zw160-bowl-unit{isolation:isolate!important}
#app .zw164.zw160-collect .zw160-bowl-target{z-index:11!important}
#app .zw164.zw160-mix .zw160-bowl-unit{touch-action:none!important}
#app .zw164.zw160-mix.zw161-manual .zw160-whisk-actor{
 animation:none!important;
 transition:transform .08s linear!important;
}
#app .zw164.zw160-mix .zw160-stir-progress span.done{
 background:#80b880!important;
 box-shadow:0 0 5px #a9d19c80!important;
}
@keyframes zw164-bowl-plop{
 0%{opacity:0;translate:0 -17px;scale:.63}
 65%{opacity:1;translate:0 3px;scale:1.05}
 100%{opacity:1;translate:0 0;scale:1}
}
@media(orientation:landscape){
 #app .zw164-ingredients-in-bowl{
  left:25%!important;top:28%!important;width:50%!important;height:30%!important;
 }
}
@media(prefers-reduced-motion:reduce){
 #app .zw164-bowl-food{animation:none!important}
}

/* Number-aware scale for freshly collected food, so every picture is readable. */
#app .zw164 .zw164-ingredients-in-bowl{
 left:16%!important;top:25%!important;
 width:68%!important;height:33%!important;
 gap:0!important;
}
#app .zw164 .zw164-bowl-food{
 flex:0 0 29%!important;width:29%!important;height:93%!important;
}
#app .zw164 .zw164-fill-1 .zw164-bowl-food{
 flex-basis:50%!important;width:50%!important;
}
#app .zw164 .zw164-fill-2 .zw164-bowl-food{
 flex-basis:39%!important;width:39%!important;
}
#app .zw164 .zw164-fill-3 .zw164-bowl-food{
 flex-basis:31%!important;width:31%!important;
}
#app .zw164 .zw164-fill-4 .zw164-bowl-food{
 flex-basis:24%!important;width:24%!important;
}
#app .zw164 .zw164-fill-5 .zw164-bowl-food{
 flex-basis:19%!important;width:19%!important;
}
#app .zw164 .zw164-bowl-food img{
 width:100%!important;height:100%!important;
}
@media(orientation:landscape){
 #app .zw164 .zw164-ingredients-in-bowl{
  left:18%!important;top:24%!important;width:64%!important;height:33%!important;
 }
}

/* Keep the counted ingredient crisp and clearly recognisable above the cream. */
#app .zw164 .zw164-ingredients-in-bowl{z-index:9!important;top:21%!important;height:34%!important}
#app .zw164 .zw164-bowl-food img{opacity:1!important;filter:drop-shadow(0 2px 1px #78563588)!important}
@media(orientation:landscape){#app .zw164 .zw164-ingredients-in-bowl{top:20%!important;height:35%!important}}


/* source: bakery-v166/illustrations.css */
/* Backstube V165 — actual transferred colored-pencil illustrations, no recreated icons. */
#app:has(.zw165){height:100dvh!important;min-height:100dvh!important;overflow:hidden!important}
#app:has(.zw165)>.app-header{display:none!important}
#app:has(.zw165) #zw95Restart{display:none!important}
#app .zw165{
 height:100dvh!important;max-height:100dvh!important;min-height:0!important;
 flex:1 1 0!important;width:100%!important;overflow:hidden!important;
 padding:0!important;margin:0!important;isolation:isolate!important;
 background:#faebd4 url('/bakery-v165/kitchen-stage.webp') center/100% 100% no-repeat!important;
 touch-action:manipulation!important;
}
#app .zw165 img{display:block!important;object-fit:contain!important;-webkit-user-drag:none!important;pointer-events:none!important;max-width:100%!important;max-height:100%!important}
#app .zw165 button{cursor:pointer!important;-webkit-tap-highlight-color:transparent!important;touch-action:manipulation!important}
#app .zw165 button:focus-visible{outline:4px dashed #9b653c!important;outline-offset:2px!important}
#app .zw165 .zw160-canvas{
 position:relative!important;z-index:3!important;
 width:min(100%,800px)!important;height:100%!important;
 max-height:100%!important;min-height:0!important;
 margin:0 auto!important;
 padding:clamp(80px,12dvh,110px) clamp(9px,2.2vw,18px) max(12px,env(safe-area-inset-bottom))!important;
 gap:clamp(4px,1dvh,10px)!important;
 background:none!important;isolation:isolate!important;
}
#app .zw165 .zw160-effects{pointer-events:none!important}
#app .zw165-intro{
 background:#f7dfbd url('/bakery-v165/intro-scene.webp') center/100% 100% no-repeat!important;
}
#app .zw165-intro .zw160-canvas{
 width:100%!important;max-width:none!important;inset:0!important;position:absolute!important;
 padding:0!important;display:block!important;
}
#app .zw165-intro-home,
#app .zw165-intro-hint,
#app .zw165-intro-restart,
#app .zw165-start-hit{
 position:absolute!important;z-index:20!important;
 background:transparent!important;border:0!important;outline-offset:2px!important;
 box-shadow:none!important;opacity:0!important;touch-action:manipulation!important;
}
#app .zw165-intro-home{left:2%!important;top:.5%!important;width:18%!important;height:12%!important}
#app .zw165-intro-hint{right:14%!important;top:.5%!important;width:13%!important;height:11%!important}
#app .zw165-intro-restart{right:1%!important;top:.5%!important;width:13%!important;height:11%!important}
#app .zw165-start-hit{left:29%!important;bottom:2%!important;width:43%!important;height:22%!important;border-radius:50%!important}
#app .zw165-room-decor{position:absolute!important;inset:0!important;z-index:1!important;pointer-events:none!important;overflow:hidden!important}
#app .zw165-room-decor img{position:absolute!important;object-fit:contain!important;max-width:unset!important;max-height:unset!important}
#app .zw165-window{left:-7%!important;top:12%!important;width:51%!important;height:42%!important}
#app .zw165-shelf{right:-6%!important;top:15%!important;width:57%!important;height:33%!important}
#app .zw165-poster{left:42%!important;top:32%!important;width:21%!important;height:18%!important}
#app .zw165-towel{right:1%!important;top:33%!important;width:18%!important;height:22%!important}
#app .zw165-topbar{
 position:absolute!important;top:max(8px,env(safe-area-inset-top))!important;
 left:1.5%!important;right:1.5%!important;height:clamp(55px,9dvh,77px)!important;
 display:flex!important;align-items:center!important;justify-content:flex-end!important;
 gap:clamp(3px,1vw,10px)!important;z-index:25!important;pointer-events:none!important;
}
#app .zw165-topbar button{
 width:clamp(53px,15vw,76px)!important;height:clamp(53px,15vw,76px)!important;
 display:grid!important;place-items:center!important;padding:0!important;
 margin:0!important;border:0!important;border-radius:50%!important;
 background:transparent!important;pointer-events:auto!important;
 filter:drop-shadow(0 3px 3px #8a593e50)!important;
}
#app .zw165-topbar button img{width:100%!important;height:100%!important;object-fit:contain!important}
#app .zw165-header-home{margin-right:auto!important}
#app .zw165-topbar button:active{transform:scale(.94)!important}
#app .zw165-stage-title{width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;display:flex!important;align-items:center!important;justify-content:center!important}
#app .zw165-stage-title img{width:min(95%,450px)!important;height:100%!important;object-fit:contain!important}
#app .zw165-choose .zw160-canvas{
 grid-template-rows:clamp(76px,15%,142px) clamp(90px,23%,195px) minmax(0,1fr)!important;
}
#app .zw165-choose .zw160-choose-friends{min-height:0!important;display:flex!important;align-items:flex-end!important;justify-content:space-around!important;position:relative!important;z-index:2!important}
#app .zw165-choose .zw160-choose-friends img{width:36%!important;height:98%!important;object-position:center bottom!important;filter:drop-shadow(0 3px 2px #65482e3c)!important}
#app .zw165 .zw160-recipe-grid{
 min-height:0!important;max-height:100%!important;
 grid-template-columns:repeat(3,minmax(0,1fr))!important;
 grid-template-rows:repeat(2,minmax(0,1fr))!important;
 background:#fff4dcdd url('/bakery-v165/instruction.webp') center/100% 100% no-repeat!important;
 border:0!important;box-shadow:none!important;
 border-radius:26px!important;gap:clamp(3px,.8vw,10px)!important;
 padding:clamp(12px,3vw,28px)!important;
 align-items:center!important;justify-items:center!important;
}
#app .zw165 .zw160-recipe{
 width:min(100%,clamp(75px,23vw,152px))!important;
 max-height:96%!important;min-height:0!important;height:auto!important;
 aspect-ratio:1!important;
 background:none!important;
 border:0!important;border-radius:50%!important;
 padding:0!important;margin:0!important;
 box-shadow:none!important;filter:drop-shadow(0 3px 3px #7e55364d)!important;
 display:grid!important;place-items:center!important;
 transition:transform .15s ease!important;
}
#app .zw165 .zw160-recipe img{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;filter:none!important}
#app .zw165 .zw160-recipe:active{transform:scale(.94) translateY(2px)!important}
#app .zw165-collect .zw160-canvas,
#app .zw165-mix .zw160-canvas,
#app .zw165-bake .zw160-canvas{
 grid-template-rows:clamp(96px,18%,142px) minmax(0,1fr) clamp(120px,27%,195px)!important;
}
#app .zw165 .zw160-lesson{
 min-height:0!important;min-width:0!important;
 padding:clamp(9px,2vw,18px) clamp(15px,3vw,22px)!important;
 border:0!important;border-radius:25px!important;box-shadow:none!important;
 background:#fff4dfdc url('/bakery-v165/instruction.webp') center/100% 100% no-repeat!important;
 filter:drop-shadow(0 3px 3px #70513836)!important;
}
#app .zw165 .zw160-count-pictures{max-width:64%!important}
#app .zw165 .zw160-count-item{width:clamp(30px,12vw,67px)!important}
#app .zw165 .zw160-count-item img{width:100%!important;height:100%!important}
#app .zw165 .zw160-tool-image{width:clamp(56px,14vw,100px)!important;height:88%!important}
#app .zw165 .zw160-lesson-end-image{height:93%!important;max-height:93%!important}
#app .zw165 .zw160-lesson-end{height:95%!important}
#app .zw165 .zw160-tray{
 border:0!important;box-shadow:none!important;
 padding:clamp(13px,2vw,24px)!important;
 background:#fff4dfdf url('/bakery-v165/instruction.webp') center/100% 100% no-repeat!important;
 gap:clamp(3px,1vw,10px)!important;
 min-height:0!important;max-height:100%!important;
}
#app .zw165 .zw160-ingredient{
 background:transparent!important;
 box-shadow:none!important;filter:drop-shadow(0 3px 2px #6e4a3040)!important;
 border:0!important;padding:0!important;
 max-width:100%!important;width:100%!important;
 aspect-ratio:1!important;max-height:100%!important;
 display:grid!important;place-items:center!important;
}
#app .zw165 .zw160-ingredient img{
 width:100%!important;height:100%!important;
 max-width:100%!important;max-height:100%!important;
 filter:none!important;object-fit:contain!important;
}
#app .zw165 .zw160-ingredient:active{transform:scale(.94)!important}
#app .zw165 .zw160-scene,#app .zw165 .zw160-oven-scene,#app .zw165 .zw160-win-scene{
 min-height:0!important;min-width:0!important;width:100%!important;height:100%!important;
}
#app .zw165 .zw160-characters{position:absolute!important;inset:0!important;z-index:5!important;pointer-events:none!important}
#app .zw165 .zw160-character{
 position:absolute!important;bottom:1%!important;width:40%!important;height:69%!important;
 z-index:5!important;pointer-events:auto!important;background:none!important;filter:none!important;
}
#app .zw165 .zw160-moritz{left:0!important}
#app .zw165 .zw160-igor{right:0!important}
#app .zw165 .zw160-character img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center bottom!important}
#app .zw165 .zw160-bowl-unit{
 width:68%!important;left:16%!important;height:65%!important;bottom:1%!important;
 display:grid!important;place-items:center!important;
 filter:drop-shadow(0 4px 3px #75523545)!important;
 z-index:7!important;
}
#app .zw165 .zw160-bowl-base{width:100%!important;height:100%!important;object-fit:contain!important;z-index:2!important}
#app .zw165 .zw160-bowl-foreground{
 width:100%!important;height:100%!important;z-index:9!important;object-fit:contain!important;
}
#app .zw165 .zw164-ingredients-in-bowl{
 z-index:8!important;left:17%!important;top:21%!important;width:67%!important;height:39%!important;
}
#app .zw165 .zw164-bowl-food{height:89%!important}
#app .zw165 .zw160-bowl-target{z-index:11!important;top:20%!important;left:12%!important;width:76%!important;height:65%!important}
#app .zw165 .zw160-whisk-actor{
 position:absolute!important;left:38%!important;top:-6%!important;width:25%!important;height:55%!important;
 transform-origin:49% 75%!important;z-index:8!important;
}
#app .zw165 .zw160-whisk-art{width:100%!important;height:100%!important;object-fit:contain!important;transform:rotate(180deg)!important;filter:drop-shadow(0 2px 2px #523f2d66)!important}
#app .zw165.zw160-stirring .zw160-whisk-actor{animation:zw161-whisk-circle .63s ease-in-out infinite!important}
#app .zw165.zw161-manual .zw160-whisk-actor{animation:none!important;transform:translate(var(--zw161-x,0px),var(--zw161-y,0px)) rotate(var(--zw161-angle,0deg))!important}
#app .zw165 .zw160-mix-bottom{justify-content:center!important;gap:3px!important}
#app .zw165 .zw160-circle{width:clamp(76px,20vw,105px)!important;height:clamp(76px,20vw,105px)!important;background:none!important;padding:0!important;filter:drop-shadow(0 4px 3px #7453335a)!important;border:0!important;box-shadow:none!important}
#app .zw165 .zw160-circle img{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;filter:none!important}
#app .zw165 .zw160-circle:active{transform:scale(.95)!important}
#app .zw165 .zw160-tool-image[src*="/whisk.webp"]{transform:rotate(180deg)!important}
#app .zw165 .zw160-oven-wrap{
 left:25%!important;width:50%!important;height:73%!important;bottom:3%!important;z-index:7!important;
}
#app .zw165 .zw160-oven-art{width:100%!important;height:100%!important;object-fit:contain!important;z-index:5!important}
#app .zw165 .zw160-oven-target{position:absolute!important;inset:24% 12% 18%!important;z-index:10!important}
#app .zw165 .zw165-oven-pastry{
 position:absolute!important;left:25%!important;top:38%!important;width:50%!important;height:34%!important;
 object-fit:contain!important;z-index:8!important;opacity:0!important;
 transform:scale(.75)!important;transition:transform .4s ease,opacity .4s ease!important;
}
#app .zw165 .zw165-ready .zw165-oven-pastry{opacity:1!important;transform:scale(1)!important}
#app .zw165 .zw160-oven-scene .zw160-character{height:73%!important;width:34%!important}
#app .zw165 .zw160-oven-wrap.zw163-can-drop:after{z-index:12!important}
#app .zw165 .zw160-win-scene .zw160-character{height:80%!important;bottom:4%!important}
#app .zw165 .zw162-serve-button{left:23%!important;width:54%!important;height:70%!important;bottom:2%!important}
#app .zw165 .zw160-win-stars img{width:clamp(35px,12vw,75px)!important;height:85%!important}
#app .zw165 .zw165-hint{animation:zw165-hint-animation .75s ease-in-out 3!important}
@keyframes zw165-hint-animation{0%,100%{transform:scale(1);filter:drop-shadow(0 3px 2px #6e4a3033)}50%{transform:scale(1.08);filter:drop-shadow(0 0 14px #f3c456)}}
@media(orientation:landscape){
 #app .zw165{
  background-image:url('/bakery-v165/kitchen-stage.webp')!important;
 }
 #app .zw165 .zw160-canvas{padding:clamp(50px,12dvh,72px) 10px 5px!important;gap:3px!important}
 #app .zw165 .zw165-topbar{height:49px!important;top:2px!important}
 #app .zw165 .zw165-topbar button{width:46px!important;height:46px!important}
 #app .zw165-choose .zw160-canvas{
  grid-template-columns:24% minmax(0,1fr)!important;grid-template-rows:50px minmax(0,1fr)!important;
 }
 #app .zw165-choose .zw165-stage-title{grid-area:1/1/2/3}
 #app .zw165-choose .zw160-choose-friends{grid-area:2/1}
 #app .zw165-choose .zw160-choose-friends img{width:48%!important;height:75%!important}
 #app .zw165-choose .zw160-recipe-grid{grid-area:2/2;grid-template-rows:repeat(2,minmax(0,1fr))!important;gap:2px!important;padding:6px!important}
 #app .zw165 .zw160-recipe{width:min(100%,clamp(67px,28dvh,133px))!important}
 #app .zw165-collect .zw160-canvas,#app .zw165-mix .zw160-canvas,#app .zw165-bake .zw160-canvas{
  grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)!important;
  grid-template-rows:minmax(0,42%) minmax(0,58%)!important;
 }
 #app .zw165 .zw160-scene,#app .zw165 .zw160-oven-scene{grid-area:1/1/3/2}
 #app .zw165 .zw160-lesson{grid-area:1/2}
 #app .zw165 .zw160-tray,#app .zw165 .zw160-mix-bottom,#app .zw165 .zw160-bake-bottom{grid-area:2/2}
 #app .zw165 .zw160-bowl-unit{width:52%!important;left:24%!important;height:88%!important}
 #app .zw165 .zw160-character{height:85%!important;width:34%!important}
 #app .zw165 .zw160-ingredient{max-height:96%!important}
 #app .zw165 .zw160-oven-wrap{left:27%!important;width:46%!important;height:85%!important}
 #app .zw165 .zw160-oven-scene .zw160-character{width:29%!important;height:87%!important}
 #app .zw165 .zw160-win-scene .zw160-character{height:78%!important}
 #app .zw165 .zw165-window{width:31%!important;top:5%!important;left:7%!important;height:50%!important}
 #app .zw165 .zw165-shelf{width:35%!important;top:6%!important;right:6%!important;height:50%!important}
 #app .zw165 .zw165-poster,#app .zw165 .zw165-towel{display:none!important}
}
@media(orientation:portrait) and (max-height:640px){
 #app .zw165 .zw160-canvas{padding-top:66px!important}
 #app .zw165-collect .zw160-canvas,#app .zw165-mix .zw160-canvas,#app .zw165-bake .zw160-canvas{grid-template-rows:77px minmax(0,1fr) 105px!important}
 #app .zw165-choose .zw160-canvas{grid-template-rows:66px 74px minmax(0,1fr)!important}
 #app .zw165 .zw160-recipe-grid{padding:7px!important}
 #app .zw165 .zw160-recipe{width:min(100%,94px)!important}
}
@media(prefers-reduced-motion:reduce){
 #app .zw165 *,#app .zw165 *:before,#app .zw165 *:after{animation:none!important;transition:none!important}
}

/* V165 final visual integration: use the actual colored-pencil frames, not old overlays. */
#app .zw165 .zw160-recipe-grid,
#app .zw165 .zw160-lesson,
#app .zw165 .zw160-tray {
 background-image:url('/bakery-v165/panel-blank.webp')!important;
 background-color:transparent!important;
}
#app .zw165 .zw160-lesson {
 padding:clamp(14px,3.2vw,22px) clamp(16px,4vw,26px)!important;
}
#app .zw165 .zw160-recipe-grid {
 grid-template-rows:repeat(2,minmax(0,clamp(98px,16vh,136px)))!important;
 align-content:center!important;
 gap:clamp(10px,2.7vh,22px)!important;
 padding:clamp(20px,5vw,32px)!important;
}
#app .zw165 .zw160-recipe {
 width:min(100%,clamp(85px,26vw,137px))!important;
}
#app .zw165 .zw165-topbar{
 width:100%!important;
 left:0!important;right:0!important;
 top:max(4px,env(safe-area-inset-top))!important;
}
#app .zw165 .zw165-topbar .zw165-header-home{
 position:absolute!important;left:2%!important;right:auto!important;top:0!important;
 margin:0!important;
}
#app .zw165 .zw165-topbar .zw165-header-hint{
 position:absolute!important;right:16%!important;left:auto!important;top:0!important;
 margin:0!important;
}
#app .zw165 .zw165-topbar .zw165-header-restart{
 position:absolute!important;right:2%!important;left:auto!important;top:0!important;
 margin:0!important;
}
#app .zw165 .zw165-topbar button{
 width:clamp(47px,13vw,63px)!important;
 height:clamp(47px,13vw,63px)!important;
}
#app .zw165 .zw165-room-decor .zw165-poster{display:none!important}
#app .zw165 .zw160-characters .zw160-character{
 height:79%!important;width:39%!important;
 bottom:2%!important;
}
#app .zw165 .zw160-characters .zw160-moritz{left:-3%!important}
#app .zw165 .zw160-characters .zw160-igor{right:-3%!important}
#app .zw165 .zw160-bowl-unit{
 width:55%!important;left:22.5%!important;
 height:65%!important;bottom:3%!important;
}
#app .zw165 .zw160-bowl-mixing{
 width:57%!important;left:21.5%!important;
 height:67%!important;bottom:2%!important;
}
#app .zw165 .zw160-scene .zw160-character img{
 width:100%!important;height:100%!important;object-fit:contain!important;
}
#app .zw165 .zw160-bowl-foreground{
 z-index:9!important;
}
#app .zw165 .zw160-win-scene .zw160-character{
 height:91%!important;
 bottom:2%!important;
 width:40%!important;
}
#app .zw165 .zw160-win-scene .zw162-serve-button {
 left:24%!important;width:52%!important;
 height:61%!important;bottom:8%!important;
 z-index:8!important;
}
#app .zw165 .zw160-oven-scene .zw160-character {
 height:84%!important;width:36%!important;bottom:2%!important;
}
#app .zw165 .zw160-oven-wrap{
 width:54%!important;left:23%!important;
 height:76%!important;bottom:3%!important;
}
@media(orientation:landscape){
 #app .zw165 .zw165-topbar{top:2px!important}
 #app .zw165 .zw165-topbar button{
  height:44px!important;width:44px!important;
 }
 #app .zw165 .zw165-topbar .zw165-header-hint{right:9%!important}
 #app .zw165 .zw165-topbar .zw165-header-restart{right:1%!important}
 #app .zw165 .zw160-recipe-grid{
  grid-template-rows:repeat(2,minmax(0,clamp(65px,22vh,116px)))!important;
  gap:5px!important;padding:8px 18px!important;
 }
 #app .zw165 .zw160-bowl-unit{
  width:48%!important;left:26%!important;height:84%!important;bottom:2%!important;
 }
 #app .zw165 .zw160-characters .zw160-character{
  height:90%!important;width:34%!important;
 }
 #app .zw165 .zw160-win-scene .zw160-character{height:85%!important}
 #app .zw165 .zw160-oven-wrap{width:49%!important;left:25.5%!important;height:86%!important}
}
@media(orientation:portrait) and (max-height:640px){
 #app .zw165 .zw160-recipe-grid{
  grid-template-rows:repeat(2,minmax(0,clamp(62px,18vh,95px)))!important;
  gap:6px!important;padding:9px 14px!important;
 }
 #app .zw165 .zw160-bowl-unit{width:54%!important;left:23%!important;height:69%!important}
}

/* Full genuine crayon bowl includes its front already; remove the duplicate cutout. */
#app .zw165 .zw160-bowl-foreground{display:none!important}

/* Responsive intro: landscape assembled from the exact illustrated sprites. */
#app .zw165 .zw165-landscape-intro{display:none!important}
@media(orientation:landscape){
 #app .zw165.zw165-intro{
  background:#f9e7cc url('/bakery-v165/kitchen-stage.webp') center 42%/cover no-repeat!important;
 }
 #app .zw165-intro .zw165-landscape-intro{
  display:block!important;position:absolute!important;inset:0!important;
  z-index:4!important;pointer-events:none!important;
 }
 #app .zw165-intro .zw165-landscape-intro img{
  position:absolute!important;display:block!important;
  width:auto;height:auto;object-fit:contain!important;
  max-height:none!important;max-width:none!important;
  pointer-events:none!important;
 }
 #app .zw165-intro .zw165-wide-logo{top:0!important;left:37%!important;width:26%!important;height:19%!important}
 #app .zw165-intro .zw165-wide-title{top:12%!important;left:33%!important;width:34%!important;height:33%!important}
 #app .zw165-intro .zw165-wide-window{top:13%!important;left:2%!important;width:29%!important;height:71%!important}
 #app .zw165-intro .zw165-wide-shelf{top:17%!important;right:2%!important;width:27%!important;height:53%!important}
 #app .zw165-intro .zw165-wide-moritz{left:25%!important;bottom:5%!important;width:19%!important;height:56%!important}
 #app .zw165-intro .zw165-wide-igor{right:24%!important;bottom:5%!important;width:19%!important;height:57%!important}
 #app .zw165-intro .zw165-wide-bowl{left:39%!important;bottom:12%!important;width:22%!important;height:40%!important}
 #app .zw165-intro .zw165-wide-play{left:44.5%!important;bottom:0!important;width:11%!important;height:28%!important}
 #app .zw165-intro .zw165-wide-home{left:1%!important;top:1%!important;width:8%!important;height:18%!important}
 #app .zw165-intro .zw165-wide-hint{right:8.5%!important;top:1%!important;width:7%!important;height:18%!important}
 #app .zw165-intro .zw165-wide-restart{right:1%!important;top:1%!important;width:7%!important;height:18%!important}
 #app .zw165-intro .zw165-start-hit{
  left:43%!important;bottom:0!important;width:14%!important;height:27%!important;
  z-index:22!important;
 }
 #app .zw165-intro .zw165-intro-home{left:1%!important;top:1%!important;width:8%!important;height:18%!important}
 #app .zw165-intro .zw165-intro-hint{right:8.5%!important;top:1%!important;width:7%!important;height:18%!important}
 #app .zw165-intro .zw165-intro-restart{right:1%!important;top:1%!important;width:7%!important;height:18%!important}
}


/* source: bakery-v166/scene-polish.css */
/* V165b: real painted sprites, aligned as one scene. No synthetic replacement artwork. */
#app .zw165 .zw160-lesson,
#app .zw165 .zw160-tray,
#app .zw165 .zw160-recipe-grid{
 background-image:url('/bakery-v165/instruction-clean.webp')!important;
}
#app .zw165 .zw160-characters{overflow:visible!important}
#app .zw165 .zw160-scene .zw160-character{
 width:32%!important;height:72%!important;bottom:0!important;
 z-index:6!important;transform-origin:50% 92%!important;
}
#app .zw165 .zw160-scene .zw160-moritz{left:-1%!important}
#app .zw165 .zw160-scene .zw160-igor{right:-1%!important}
#app .zw165 .zw160-scene .zw160-character img{
 width:100%!important;height:100%!important;
 object-fit:contain!important;object-position:center bottom!important;
 image-rendering:auto!important;
}
#app .zw165 .zw160-scene .zw160-bowl-unit{
 width:53%!important;left:23.5%!important;height:58%!important;
 bottom:0!important;z-index:7!important;
 filter:drop-shadow(0 4px 3px rgba(93,58,36,.24))!important;
}
#app .zw165 .zw160-scene .zw160-bowl-base,
#app .zw165 .zw160-scene .zw160-bowl-foreground{
 object-fit:contain!important;image-rendering:auto!important;
}
#app .zw165 .zw160-scene .zw160-bowl-target{
 top:24%!important;height:54%!important;left:12%!important;width:76%!important;
}
#app .zw165 .zw160-scene .zw160-whisk-actor{
 left:38%!important;top:-9%!important;
 width:25%!important;height:62%!important;
}
#app .zw165 .zw160-tray{gap:clamp(5px,1.7vw,13px)!important}
#app .zw165 .zw160-ingredient{
 border-radius:50%!important;overflow:visible!important;
}
#app .zw165 .zw160-ingredient img{
 object-fit:contain!important;image-rendering:auto!important;
}
#app .zw165 .zw160-lesson-end img,
#app .zw165 .zw160-lesson-end-image,
#app .zw165 .zw160-count-item img{
 image-rendering:auto!important;
}
@media(orientation:landscape){
 #app .zw165 .zw160-scene .zw160-character{
  width:30%!important;height:92%!important;bottom:0!important;
 }
 #app .zw165 .zw160-scene .zw160-bowl-unit{
  width:43%!important;left:28.5%!important;height:84%!important;bottom:0!important;
 }
 #app .zw165 .zw160-scene .zw160-whisk-actor{
  width:24%!important;height:65%!important;top:-9%!important;
 }
}
@media(orientation:portrait) and (max-height:640px){
 #app .zw165 .zw160-scene .zw160-character{width:32%!important;height:68%!important}
 #app .zw165 .zw160-scene .zw160-bowl-unit{width:49%!important;left:25.5%!important;height:54%!important}
}


/* source: bakery-v166/improvements.css */
/* V166 — refine the real colored-pencil game without replacing approved artwork. */
#app .zw165 .zw166-bowl-stash{
 position:absolute!important;z-index:8!important;
 left:21%!important;top:21%!important;width:58%!important;height:30%!important;
 display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
 grid-auto-rows:50%!important;
 align-items:center!important;justify-items:center!important;
 gap:0!important;pointer-events:none!important;
 overflow:hidden!important;border-radius:47% 47% 22% 22%!important;
}
#app .zw165 .zw166-bowl-stash.zw166-stash-1,
#app .zw165 .zw166-bowl-stash.zw166-stash-2,
#app .zw165 .zw166-bowl-stash.zw166-stash-3,
#app .zw165 .zw166-bowl-stash.zw166-stash-4{grid-auto-rows:95%!important;}
#app .zw165 .zw166-stash-item{
 width:100%!important;height:100%!important;min-width:0!important;
 display:grid!important;place-items:center!important;
 animation:zw166-ingredient-drop .38s cubic-bezier(.16,1.1,.38,1) both!important;
}
#app .zw165 .zw166-stash-item:nth-child(2n){rotate:-10deg!important}
#app .zw165 .zw166-stash-item:nth-child(3n){rotate:9deg!important}
#app .zw165 .zw166-stash-item img{
 width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;
 object-fit:contain!important;
 filter:drop-shadow(0 2px 1px rgba(80,58,34,.23))!important;
}
#app .zw165 .zw166-bake-stars{
 display:flex!important;align-items:center!important;justify-content:center!important;
 width:100%!important;height:clamp(25px,5vh,42px)!important;
 gap:clamp(9px,4vw,22px)!important;flex:0 0 auto!important;
 pointer-events:none!important;
}
#app .zw165 .zw166-bake-star{
 width:clamp(24px,7vw,41px)!important;height:100%!important;
 object-fit:contain!important;opacity:.25!important;
 filter:grayscale(.7)!important;scale:.78!important;
 transition:opacity .2s ease,scale .27s ease,filter .2s ease!important;
}
#app .zw165 .zw166-bake-star.zw166-baked{
 opacity:1!important;filter:drop-shadow(0 0 7px rgba(242,175,75,.7))!important;
 scale:1.17!important;animation:zw166-bake-pop .35s ease-out both!important;
}
#app .zw165 .zw160-bake-bottom{
 display:flex!important;flex-direction:column!important;align-items:center!important;
 justify-content:center!important;gap:clamp(4px,1vh,10px)!important;
}
#app .zw165 .zw160-bake-bottom .zw160-tray-button{
 flex:0 0 auto!important;position:relative!important;z-index:6!important;
}
#app .zw165 .zw160-baking .zw160-oven-art{
 animation:zw166-oven-warm 1.05s ease-in-out infinite alternate!important;
}
#app .zw165 .zw160-oven-wrap.zw165-ready .zw165-oven-pastry{
 filter:drop-shadow(0 2px 3px rgba(88,52,31,.23))!important;
}
#app .zw165 .zw160-win-scene .zw162-serve-button{touch-action:none!important}
#app .zw165 .zw162-serve-button.zw166-serving-origin{
 opacity:.52!important;filter:drop-shadow(0 2px 1px rgba(101,68,41,.12))!important;
}
#app .zw165 .zw160-win-scene .zw160-character.zw166-feed-target{
 filter:drop-shadow(0 0 15px rgba(249,194,106,.88))!important;
 animation:zw166-feed-bounce .45s ease-in-out infinite alternate!important;
}
.zw166-serving-ghost{
 position:fixed!important;z-index:999999!important;pointer-events:none!important;
 left:0;top:0;width:clamp(92px,25vw,145px)!important;height:clamp(92px,25vw,145px)!important;
 max-width:none!important;max-height:none!important;object-fit:contain!important;
 transform:translate(-50%,-50%) rotate(-8deg)!important;
 filter:drop-shadow(0 8px 4px rgba(77,48,29,.29))!important;
 animation:zw166-serve-float .45s ease-in-out infinite alternate!important;
}
@keyframes zw166-ingredient-drop {
 from{opacity:.3;transform:translateY(-13px) scale(.69)}
 to{opacity:1;transform:translateY(0) scale(1)}
}
@keyframes zw166-bake-pop {
 from{transform:translateY(6px) scale(.7)}
 to{transform:translateY(0) scale(1)}
}
@keyframes zw166-oven-warm{
 from{filter:drop-shadow(0 0 1px rgba(235,147,50,.4))}
 to{filter:drop-shadow(0 0 13px rgba(255,175,77,.83))}
}
@keyframes zw166-feed-bounce{to{transform:rotate(3deg) scale(1.025)}}
@keyframes zw166-serve-float{to{transform:translate(-50%,-53%) rotate(4deg)}}
@media(orientation:landscape){
 #app .zw165 .zw166-bowl-stash{
  left:22%!important;top:22%!important;width:56%!important;height:29%!important;
 }
 #app .zw165 .zw166-bake-stars{height:clamp(19px,7vh,31px)!important;gap:14px!important}
 #app .zw165 .zw166-bake-star{width:25px!important}
 #app .zw165 .zw160-bake-bottom{gap:2px!important}
}
@media(orientation:portrait) and (max-height:640px){
 #app .zw165 .zw166-bake-stars{height:22px!important;gap:8px!important}
 #app .zw165 .zw166-bake-star{width:23px!important}
 #app .zw165 .zw160-bake-bottom{gap:1px!important}
}
@media(prefers-reduced-motion:reduce){
 #app .zw165 .zw166-stash-item,
 #app .zw165 .zw166-bake-star,
 #app .zw165 .zw160-baking .zw160-oven-art,
 #app .zw165 .zw166-feed-target,
 .zw166-serving-ghost{animation:none!important;transition:none!important}
}

/* V166 visual acceptance refinements: centered ingredients, smaller pastry in oven. */
#app .zw165 .zw166-bowl-stash.zw166-stash-1{
 width:33%!important;left:33.5%!important;grid-template-columns:minmax(0,1fr)!important;
}
#app .zw165 .zw166-bowl-stash.zw166-stash-2{
 width:46%!important;left:27%!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
#app .zw165 .zw166-bowl-stash.zw166-stash-3{
 width:59%!important;left:20.5%!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
#app .zw165 .zw166-bowl-stash.zw166-stash-4{
 width:70%!important;left:15%!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
#app .zw165 .zw165-oven-pastry{
 width:36%!important;height:27%!important;left:32%!important;top:43%!important;
 transform-origin:center!important;
}
#app .zw165 .zw166-bake-star{
 width:clamp(30px,8vw,47px)!important;
 filter:grayscale(.65) drop-shadow(0 1px 2px rgba(99,60,32,.2))!important;
}
#app .zw165 .zw166-bake-stars{gap:clamp(12px,5vw,24px)!important}
@media(orientation:landscape){
 #app .zw165 .zw165-oven-pastry{width:34%!important;left:33%!important;top:40%!important;height:30%!important}
 #app .zw165 .zw166-bake-star{width:29px!important}
}


/* source: bakery-v167/symbols.css */
/* Zaehlwiese Backstube V167: friends face one another, no mirrored UI. */
#app .zw165 .zw160-character.zw160-igor > img,
#app .zw165-choose .zw160-choose-friends > img:nth-child(2),
#app .zw165-intro .zw165-wide-igor {
 transform:scaleX(-1)!important;
 transform-origin:center center!important;
}
#app .zw165 .zw160-recipe img,
#app .zw165 .zw160-ingredient img,
#app .zw165 .zw160-count-item img{
 image-rendering:auto!important;
 object-fit:contain!important;
}


/* source: game-start-v170/start.css */
/* Zählwiese v170 – illustrated, child-first, text-free game entry. */
#app:has(.zw170-launch)>.app-header{display:none!important}
#app .zw170-launch{
 position:relative!important;isolation:isolate!important;box-sizing:border-box!important;
 height:100dvh!important;min-height:0!important;max-height:100dvh!important;width:100%!important;
 overflow:hidden!important;margin:0!important;gap:clamp(3px,.8vh,10px)!important;
 padding:max(69px,env(safe-area-inset-top)) clamp(7px,2.3vw,20px) max(12px,env(safe-area-inset-bottom))!important;
 display:flex!important;align-items:center!important;justify-content:space-between!important;flex-direction:column!important;
 background:#dbe9b9 url('/home-v126/background-portrait.webp') center / 100% 100% no-repeat!important;
 touch-action:manipulation!important;
}
#app .zw170-launch img{object-fit:contain!important;display:block!important;pointer-events:none!important;-webkit-user-drag:none!important;image-rendering:auto!important}
#app .zw170-launch button{border:0!important;background:none!important;box-shadow:none!important;padding:0!important;margin:0!important;cursor:pointer!important;-webkit-tap-highlight-color:transparent!important;touch-action:manipulation!important}
#app .zw170-home{
 position:absolute!important;z-index:15!important;top:max(10px,env(safe-area-inset-top))!important;
 left:clamp(8px,2vw,24px)!important;width:clamp(54px,15vw,71px)!important;height:clamp(54px,15vw,71px)!important;
 filter:drop-shadow(0 3px 3px #6f483466)!important;
}
#app .zw170-home img{width:100%!important;height:100%!important}
#app .zw170-title{
 flex:0 0 auto!important;width:min(96%,690px)!important;
 height:clamp(75px,14vh,124px)!important;max-height:18%!important;
 filter:drop-shadow(0 3px 2px #fff6d1af)!important;
}
#app .zw170-art{
 flex:1 1 35%!important;min-height:0!important;width:min(100%,760px)!important;
 display:flex!important;align-items:center!important;justify-content:center!important;
}
#app .zw170-scene{width:100%!important;height:100%!important;max-height:100%!important;filter:drop-shadow(0 4px 3px #6e52352e)!important}
#app .zw170-friends{
 width:min(100%,720px)!important;flex:1 1 29%!important;min-height:0!important;
 display:flex!important;align-items:flex-end!important;justify-content:space-between!important;
 pointer-events:none!important;
}
#app .zw170-friends img{
 width:min(42%,250px)!important;max-height:100%!important;height:100%!important;object-position:center bottom!important;
 filter:drop-shadow(0 4px 3px #70533655)!important;
}
#app .zw170-igor{transform:scaleX(-1)!important}
#app .zw170-play{
 flex:0 0 auto!important;width:clamp(88px,26vw,122px)!important;
 height:clamp(88px,26vw,122px)!important;z-index:12!important;
 filter:drop-shadow(0 4px 3px #67432c73)!important;transition:transform .15s ease!important;
}
#app .zw170-play img{width:100%!important;height:100%!important}
#app .zw170-play:active{transform:scale(.92)!important}
#app .zw170-play:disabled{opacity:.8!important}
#app .zw170-launch button:focus-visible{outline:4px solid #82522d!important;outline-offset:4px!important;border-radius:50%!important}
@media (max-height:620px) and (orientation:portrait){
 #app .zw170-launch{padding-top:max(55px,env(safe-area-inset-top))!important;gap:3px!important}
 #app .zw170-title{height:80px!important}
 #app .zw170-friends{flex-basis:25%!important}
 #app .zw170-play{width:83px!important;height:83px!important}
}
@media(orientation:landscape) and (max-height:630px){
 #app .zw170-launch{
  background-image:url('/home-v126/background-landscape.webp')!important;
  padding:5px 12px max(5px,env(safe-area-inset-bottom))!important;
  display:grid!important;grid-template-columns:27% 42% minmax(0,1fr)!important;
  grid-template-rows:clamp(45px,16vh,70px) minmax(0,1fr)!important;
  column-gap:8px!important;row-gap:2px!important;
 }
 #app .zw170-home{top:4px!important;left:7px!important;width:min(15vh,52px)!important;height:min(15vh,52px)!important}
 #app .zw170-title{grid-area:1/2/2/4!important;height:100%!important;max-height:100%!important;width:100%!important}
 #app .zw170-art{grid-area:2/1!important;width:100%!important;height:100%!important;min-height:0!important}
 #app .zw170-friends{grid-area:2/2!important;flex-basis:auto!important;min-height:0!important;width:100%!important;height:100%!important}
 #app .zw170-friends img{width:48%!important;height:100%!important}
 #app .zw170-play{grid-area:2/3!important;width:min(30vh,125px)!important;height:min(30vh,125px)!important;justify-self:center!important;align-self:center!important}
}
@media(prefers-reduced-motion:reduce){#app .zw170-launch *{animation:none!important;transition:none!important}}


/* source: game-start-v170/scale-polish.css */
/* V170 premium polish: large integrated artwork, one red Play per start. */
#app .zw170-launch .zw170-play{
 width:clamp(96px,32vw,134px)!important;
 height:clamp(96px,32vw,134px)!important;
}
#app .zw170-art{overflow:visible!important;z-index:2!important}
#app .zw170-scene{transform-origin:center center!important}
#app .zw170-launch[data-game-start="hands"] .zw170-scene{transform:scale(1.16)!important}
#app .zw170-launch[data-game-start="animals"] .zw170-scene{transform:scale(1.28)!important}
#app .zw170-launch[data-game-start="picnic"] .zw170-scene{transform:scale(1.27)!important}
#app .zw170-launch[data-game-start="feeding"] .zw170-scene{transform:scale(1.35)!important}
#app .zw170-launch[data-game-start="cooking"] .zw170-scene{transform:scale(1.38)!important}
#app .zw170-launch[data-game-start="connect"] .zw170-scene{transform:scale(1.20)!important}
#app .zw170-launch[data-game-start="hunt"] .zw170-scene{transform:scale(1.16)!important}
#app .zw170-launch[data-game-start="memory"] .zw170-scene{transform:scale(1.24)!important}
#app .zw170-launch[data-game-start="maze"] .zw170-scene{transform:scale(1.26)!important}
#app .zw170-launch[data-game-start="cuddle"] .zw170-scene{transform:scale(1.21)!important}
#app .zw170-launch[data-game-start="carmaze"] .zw170-scene{transform:scale(1.26)!important}
#app .zw170-launch .zw170-friends{position:relative!important;z-index:3!important}
#app .zw170-launch .zw170-moritz{animation:zw170-wave 5.8s ease-in-out infinite!important;transform-origin:50% 90%!important}
#app .zw170-launch .zw170-igor{animation:zw170-hello 6.4s ease-in-out infinite!important;transform-origin:50% 90%!important}
@keyframes zw170-wave{0%,35%,100%{transform:rotate(0deg)}42%{transform:rotate(-2.5deg)}50%{transform:rotate(2deg)}}
@keyframes zw170-hello{0%,43%,100%{transform:scaleX(-1) rotate(0deg)}51%{transform:scaleX(-1) rotate(-2.5deg)}58%{transform:scaleX(-1) rotate(1.5deg)}}
@media(orientation:landscape) and (max-height:630px){
 #app .zw170-launch .zw170-scene{transform:scale(1.07)!important}
 #app .zw170-launch .zw170-play{width:min(30vh,125px)!important;height:min(30vh,125px)!important}
}
@media(orientation:portrait) and (max-height:620px){
 #app .zw170-launch .zw170-scene{transform:scale(1.13)!important}
 #app .zw170-launch .zw170-play{width:90px!important;height:90px!important}
}
@media(orientation:landscape) and (min-height:631px){
 #app .zw170-launch{
  background-image:url('/home-v126/background-landscape.webp')!important;
  display:grid!important;grid-template-columns:30% 42% 28%!important;
  grid-template-rows:minmax(70px,17%) minmax(0,1fr)!important;
  gap:8px!important;padding:12px 18px max(12px,env(safe-area-inset-bottom))!important;
 }
 #app .zw170-launch .zw170-title{grid-area:1/2/2/4!important;height:100%!important;width:96%!important;max-height:100%!important}
 #app .zw170-launch .zw170-art{grid-area:2/1!important;width:100%!important;height:100%!important;min-height:0!important}
 #app .zw170-launch .zw170-friends{grid-area:2/2!important;width:100%!important;height:100%!important}
 #app .zw170-launch .zw170-friends img{height:100%!important;width:48%!important}
 #app .zw170-launch .zw170-play{grid-area:2/3!important;justify-self:center!important;align-self:center!important}
 #app .zw170-launch .zw170-scene{transform:scale(1.10)!important}
}
@media(prefers-reduced-motion:reduce){
 #app .zw170-launch .zw170-moritz,#app .zw170-launch .zw170-igor{animation:none!important}
}

/* source: game-start-v172/wood-entrance.css */
/* V172. Wood signs with multicolour pencil lettering, storybook scenes, no gameplay previews. */
#app .zw170-launch{
 gap:clamp(5px,1.6vh,15px)!important;
 padding-top:max(67px,env(safe-area-inset-top))!important;
}
#app .zw170-launch .zw170-title{
 width:min(100%,700px)!important;
 height:clamp(90px,18vh,145px)!important;
 max-height:22%!important;
 flex:0 0 auto!important;
 object-fit:contain!important;
 filter:drop-shadow(0 5px 4px rgba(93,56,29,.28))!important;
}
#app .zw170-launch .zw170-art{
 flex:1 1 auto!important;
 width:min(100%,630px)!important;
 min-height:0!important;
 overflow:visible!important;
 display:flex!important;
 align-items:center!important;
 justify-content:center!important;
}
#app .zw170-launch .zw170-scene{
 width:100%!important;height:100%!important;
 object-fit:contain!important;
 max-width:100%!important;max-height:100%!important;
 transform:none!important;
 filter:drop-shadow(0 4px 4px rgba(82,60,40,.18))!important;
}
#app .zw170-launch .zw170-friends{display:none!important}
#app .zw170-launch .zw170-play{
 width:clamp(96px,31vw,132px)!important;
 height:clamp(96px,31vw,132px)!important;
 flex:0 0 auto!important;
 margin-bottom:4px!important;
}
@media(orientation:portrait) and (max-height:640px){
 #app .zw170-launch{gap:2px!important;padding-top:max(57px,env(safe-area-inset-top))!important}
 #app .zw170-launch .zw170-title{height:clamp(71px,16vh,100px)!important}
 #app .zw170-launch .zw170-play{width:90px!important;height:90px!important}
}
@media(orientation:landscape){
 #app .zw170-launch{
  background-image:url('/home-v126/background-landscape.webp')!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) clamp(108px,22vw,210px)!important;
  grid-template-rows:clamp(48px,18vh,110px) minmax(0,1fr)!important;
  gap:3px 10px!important;
  padding:6px 16px max(7px,env(safe-area-inset-bottom))!important;
 }
 #app .zw170-launch .zw170-title{
  grid-area:1/1/2/3!important;justify-self:center!important;
  width:min(70%,750px)!important;height:100%!important;max-height:100%!important;
 }
 #app .zw170-launch .zw170-art{
  grid-area:2/1!important;width:100%!important;height:100%!important;
  min-height:0!important;justify-self:center!important;align-self:center!important;
 }
 #app .zw170-launch .zw170-scene{transform:none!important}
 #app .zw170-launch .zw170-play{
  grid-area:2/2!important;
  align-self:center!important;justify-self:center!important;
  width:clamp(90px,min(32vh,16vw),133px)!important;
  height:clamp(90px,min(32vh,16vw),133px)!important;
 }
 #app .zw170-launch .zw170-home{
  top:4px!important;left:10px!important;
  width:clamp(44px,12vh,65px)!important;height:clamp(44px,12vh,65px)!important;
 }
}
@media(prefers-reduced-motion:reduce){
 #app .zw170-launch *{animation:none!important;transition:none!important}
}


/* source: game-start-v173/scene-polish.css */
/* V173: larger, integrated colored-pencil artwork; wood-sign contrast improved in assets. */
#app .zw170-launch .zw170-title{
 width:min(100%,720px)!important;
 height:clamp(98px,17.5vh,148px)!important;
 max-height:21%!important;
 filter:drop-shadow(0 4px 3px rgba(97,62,33,.24))!important;
}
#app .zw170-launch .zw170-art{
 width:min(100%,720px)!important;
 flex:1 1 auto!important;
 min-height:0!important;
 overflow:visible!important;
}
#app .zw170-launch .zw170-scene{
 width:100%!important;height:100%!important;
 object-fit:contain!important;object-position:center center!important;
 transform:none!important;
 filter:drop-shadow(0 2px 2px rgba(71,64,42,.17))!important;
}
#app .zw170-launch .zw170-play{
 flex:0 0 auto!important;
 width:clamp(100px,30vw,132px)!important;
 height:clamp(100px,30vw,132px)!important;
 margin-bottom:clamp(5px,1vh,16px)!important;
}
@media(orientation:portrait) and (max-height:650px){
 #app .zw170-launch{gap:0!important;padding-top:max(53px,env(safe-area-inset-top))!important}
 #app .zw170-launch .zw170-title{height:clamp(72px,15vh,95px)!important}
 #app .zw170-launch .zw170-play{width:88px!important;height:88px!important;margin-bottom:3px!important}
}
@media(orientation:landscape){
 #app .zw170-launch .zw170-title{
  height:100%!important;max-height:100%!important;width:min(75%,770px)!important;
 }
 #app .zw170-launch .zw170-scene{
  width:100%!important;height:100%!important;object-fit:contain!important
 }
 #app .zw170-launch .zw170-play{
  width:clamp(82px,min(29vh,16vw),132px)!important;height:clamp(82px,min(29vh,16vw),132px)!important;
 }
}
@media(prefers-reduced-motion:reduce){#app .zw170-launch *{animation:none!important;transition:none!important}}


/* source: iphone-care-v22.css */
/* Zählwiese v22 – actual iPhone safe areas, vertically balanced home and touch-native care */
html,body{overscroll-behavior-x:none}
.device{background-size:cover!important;background-position:center center!important}
.home-header .brand{display:none!important}
.home-header{
  box-sizing:border-box!important;
  height:auto!important;min-height:0!important;
  flex:0 0 auto!important;
  padding:calc(env(safe-area-inset-top,0px) + 11px) 15px 2px!important;
  overflow:visible!important;align-items:center!important;
}
.home-header .parent-gear,.home-header #soundBtn{width:clamp(51px,14vw,59px)!important;height:clamp(51px,14vw,59px)!important}
.home-header .header-tools{margin-left:auto}
.intro-content{
  min-height:0!important;
  justify-content:center!important;
  gap:0!important;
  padding:clamp(9px,1.5dvh,15px) 14px max(15px,env(safe-area-inset-bottom,0px))!important;
}
.intro-content .rainbow-title{
  margin:0 auto 2px!important;
  font-size:clamp(42px,12vw,58px)!important;
  line-height:1.06!important;
  flex:0 0 auto;
}
.intro-content .intro-scene{
  height:clamp(164px,27dvh,235px)!important;
  width:min(96%,370px)!important;
  flex:0 1 auto!important;
  margin:1px auto 2px!important;
}
.intro-content .friends-name-row{
  width:min(96%,365px)!important;
  font-size:clamp(18px,5.1vw,22px)!important;
  margin:0 auto 8px!important;
  flex:0 0 auto;
}
.intro-content .welcome-subtitle{
  margin:1px auto 13px!important;
  font-size:clamp(17px,4.6vw,21px)!important;
  line-height:1.2!important;
}
.intro-content .mode-choices{
  max-width:390px!important;
  gap:clamp(10px,3vw,24px)!important;
  margin:2px auto 10px!important;
  padding:0 2px!important;
}
.mode-round{
  width:clamp(114px,36vw,154px)!important;
  height:clamp(114px,36vw,154px)!important;
}
.mode-choice{gap:4px!important}
.mode-label{padding-top:2px!important;line-height:1.12!important}
.intro-content .welcome-footer{
  margin:9px auto 0!important;
  padding:0!important;
  font-size:clamp(10px,2.85vw,12px)!important;
  line-height:1.25!important;
}
@media(max-width:679px){
  html,body{height:100%;min-height:100%;background:#a6d3e8}
  .device{
    height:100dvh!important;
    min-height:100svh!important;
    max-height:none!important;
    width:100%!important;
    border:0!important;border-radius:0!important;
    overflow-y:auto!important;overflow-x:hidden!important;
    display:flex!important;flex-direction:column!important;
  }
  .intro-content{flex:1 0 auto!important}
}
@media(max-height:735px) and (orientation:portrait){
  .home-header{padding-top:calc(env(safe-area-inset-top,0px) + 7px)!important}
  .home-header .parent-gear,.home-header #soundBtn{height:48px!important;width:48px!important}
  .intro-content{padding-top:4px!important;padding-bottom:max(8px,env(safe-area-inset-bottom,0px))!important}
  .intro-content .rainbow-title{font-size:clamp(37px,10.8vw,48px)!important}
  .intro-content .intro-scene{height:clamp(138px,24dvh,183px)!important}
  .intro-content .friends-name-row{font-size:clamp(16px,4.6vw,19px)!important;margin:0 auto 4px!important}
  .intro-content .welcome-subtitle{font-size:clamp(15px,4vw,18px)!important;margin:0 auto 5px!important}
  .mode-round{width:clamp(100px,32vw,128px)!important;height:clamp(100px,32vw,128px)!important}
  .intro-content .mode-choices{margin:0 auto 4px!important}
  .intro-content .welcome-footer{margin:4px auto 0!important}
}
@media(min-height:940px) and (orientation:portrait){
 .intro-content .intro-scene{height:clamp(230px,29dvh,275px)!important}
 .intro-content .mode-choices{margin-top:9px!important}
 .intro-content .welcome-footer{margin-top:12px!important}
}
@media(orientation:landscape) and (max-height:520px){
 .home-header{padding-top:max(6px,env(safe-area-inset-top,0px))!important}
 .intro-content{justify-content:flex-start!important;padding-top:2px!important}
 .intro-content .intro-scene{height:135px!important}
 .intro-content .mode-choices{margin-bottom:0!important}
 .mode-round{width:100px!important;height:100px!important}
}
/* Continuous finger movement, no native HTML drag image or Safari page scroll. */
.care-option{touch-action:none!important;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
.care-option img{pointer-events:none;-webkit-user-drag:none}
.care-option.care-dragging{opacity:.38;transform:scale(.94)!important}
.care-drag-ghost{
 position:fixed!important;z-index:99999!important;
 width:clamp(86px,26vw,116px);height:clamp(86px,26vw,116px);
 transform:translate3d(-50%,-50%,0) rotate(-7deg) scale(1.1);
 pointer-events:none!important;will-change:left,top;
 border-radius:50%;
 background:url('/mode-hands-round.svg') center/100% 100% no-repeat;
 filter:drop-shadow(3px 9px 4px #566b5570);
 display:grid;place-items:center;
}
.care-drag-ghost img{display:block;width:75%;height:75%;object-fit:contain}
.care-drag-in-progress{touch-action:none!important}
.animal-care-stage[data-care-drop-zone]{transition:border-color .16s,background-color .16s,box-shadow .16s}
.animal-care-stage.care-drop-active{
 border-color:#459c61!important;
 background:#e9f9dbe9!important;
 box-shadow:0 0 0 5px #bdeba7b3,inset 0 0 20px #b6df9880!important;
}
.care-prompt-nudge{color:#92552b!important}
.animal-result-page .care-choice-area{padding-bottom:max(8px,env(safe-area-inset-bottom,0px))!important}
.animal-result-page .care-option{min-height:86px}
.animal-result-page .care-reaction{min-height:43px}
.care-reduced-feedback{
 background:#f6e8b6;
 border:2px solid #85aa78;
 border-radius:20px;
 padding:8px 16px;
}
@media(max-height:735px) and (orientation:portrait){
 .animal-result-page .care-option{min-height:72px;width:clamp(76px,25vw,93px);height:clamp(76px,25vw,93px)}
 .animal-result-page .care-choice-area{padding-bottom:max(4px,env(safe-area-inset-bottom,0px))!important}
}
@media(prefers-reduced-motion:reduce){
 .animal-care-stage[data-care-drop-zone]{transition:none}
 .care-drag-ghost{transform:translate3d(-50%,-50%,0)}
}


/* source: iphone-care-v23.css */
/* Native iPhone drag and rAF animation: independent of CSS keyframe reliability */
.care-js-driven > img{animation:none!important;will-change:transform,opacity}
.animal-care-stage:has(.care-js-driven) .animals-celebrating .animal-card img{animation:none!important;will-change:transform}
.care-iphone-particles{position:absolute;inset:-25%;z-index:4;pointer-events:none;overflow:visible}
.care-iphone-particles i{display:block;position:absolute;width:10px;height:10px;opacity:0;background:#d5af66;border:1.5px solid #a08350;border-radius:40% 60% 50% 60%}
.care-bits-water i{background:#89cce8;border-color:#5698bb;border-radius:65% 60% 55% 8%}
.care-bits-pet i{background:#f5a7bc;border-color:#ce8290;border-radius:50%}
.parent-motion-control{display:flex;gap:10px;align-items:center;max-width:360px;margin:9px auto;padding:8px;font-size:14px;color:#345d48;font-weight:800;text-align:left;line-height:1.3}
.parent-motion-control input{width:22px;height:22px;flex:0 0 22px;accent-color:#4b9868}
@media(prefers-reduced-motion:reduce){html.zw-force-motion .confetti-piece{animation:fall var(--dur) ease-in var(--delay) forwards!important}}


/* source: wrong-feedback-v32.css */
.zw-try-again{position:fixed!important;z-index:999990!important;pointer-events:none!important;max-width:172px;width:160px;min-height:32px;text-align:center;white-space:normal;line-height:1.08;padding:6px 8px;border:2px solid #ac8663;border-radius:20px;background:#fff1c7;color:#775d40;font:900 13px "Chalkboard SE","Marker Felt",sans-serif;box-shadow:2px 3px 0 #8e715056;opacity:0}
.kitchen-page .kitchen-friend .kitchen-chew{display:none!important}


/* source: multi-care-v32.css */
/* iPhone-safe illustrated care for ALL animals. No floating artificial mouths. */
.animal-care-stage .care-action-stage{display:none!important}
.animal-care-stage .result-animals{position:relative;isolation:isolate}
.animal-care-stage .animal-card.zw-all-animal-card{position:relative;overflow:visible!important}
.animal-care-stage .animal-card.zw-all-animal-card img{animation:none!important;transition:none!important;will-change:transform}
.zw-all-care-item{
 position:absolute;top:62%;left:48%;width:clamp(23px,7vw,46px);height:clamp(23px,7vw,46px);
 display:block;z-index:20;pointer-events:none!important;opacity:0;transform-origin:center;
 will-change:opacity,transform;filter:drop-shadow(1px 2px 0 #6b57404a)
}
.zw-all-care-item svg{display:block;width:100%;height:100%;overflow:visible}
.zw-all-care-pet{top:5%;left:42%;width:clamp(28px,8vw,49px);height:clamp(28px,8vw,49px);z-index:25}
.zw-all-care-ball{top:68%;left:46%;width:clamp(30px,8vw,53px);height:clamp(30px,8vw,53px)}
.animal-result-page .care-options{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;align-items:center!important;justify-items:center!important;gap:clamp(4px,1.5vw,11px)!important;width:min(100%,390px)!important;margin:auto!important}
.animal-result-page .care-option{width:clamp(67px,20vw,92px)!important;height:clamp(67px,20vw,92px)!important;min-width:0!important;min-height:0!important}
.animal-result-page .care-option img{width:77%!important;height:77%!important;object-fit:contain}
.animal-result-page .care-ball-btn{background-image:url('/mode-hands-round.svg')!important}
@media(max-width:355px){.animal-result-page .care-option{width:64px!important;height:64px!important}}
@media(orientation:landscape) and (max-height:520px){.animal-result-page .care-option{height:55px!important;width:55px!important}}


/* source: feeding-visual-v36.css */
/* Zählwiese v36: Rückmeldung durch Bildsprache und echte Tierbewegung. */
.feeding-page:not(.feed-select) .feed-goal-art{
  display:flex;align-items:center;justify-content:center;position:relative;
  width:min(91%,285px);height:clamp(52px,8dvh,70px);flex:0 0 auto;
  margin:0 auto 1px;gap:8px;isolation:isolate;
  filter:drop-shadow(1px 3px 0 #70553a24);
}
.feed-goal-number{
  color:#9b6a45;font-size:clamp(32px,9.5vw,46px);font-weight:950;
  line-height:1;text-shadow:2px 2px 0 #fff4d4;
}
.feed-goal-times{color:#668d70;font-size:clamp(25px,6vw,32px);font-weight:950}
.feed-goal-food{
  display:grid;place-items:center;width:clamp(55px,16vw,71px);
  height:clamp(55px,16vw,71px);background:#fff0cb;
  border:3px solid #b58b65;border-radius:50%;
  box-shadow:inset 0 0 0 3px #fff9e6,2px 3px 0 #8d74544d;
  transform:rotate(-7deg);
}
.feed-goal-food svg{display:block;width:80%;height:80%;overflow:visible}
.feed-goal-arrow{
  display:block;color:#5f966d;font-size:clamp(29px,7vw,40px);
  font-weight:950;align-self:end;transform:rotate(14deg);
  animation:zw-feed-arrow 1.55s ease-in-out infinite;
}
.feeding-page .feed-status{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:1px;font-size:clamp(22px,6vw,28px);font-weight:950;line-height:1.02;
  color:#4f7455;min-height:40px;
}
.feeding-page .feed-fraction{display:flex;align-items:baseline;gap:5px}
.feeding-page .feed-fraction strong{font-size:1.14em;color:#aa6b4b}
.feeding-page .feed-slash{color:#8e986d}
.feed-counter-dots{display:flex;justify-content:center;gap:7px}
.feed-counter-dots i{
  display:block;width:clamp(11px,3vw,16px);height:clamp(11px,3vw,16px);
  border:2px solid #b59670;background:#fff0ce;border-radius:50%;
  box-shadow:inset 0 1px 1px #a5825133;transition:background .15s ease;
}
.feed-counter-dots i.is-fed{
  background:#8ac392;border-color:#5c986e;
  box-shadow:0 0 0 2px #f7eac0;
  animation:zw-feed-dot-pop .42s cubic-bezier(.23,1.7,.35,1) both;
}
.feeding-page:not(.feed-select) .extra-hint{
  position:absolute!important;width:1px!important;height:1px!important;
  padding:0!important;margin:-1px!important;overflow:hidden!important;
  clip:rect(0,0,0,0)!important;white-space:nowrap!important;
}
.feeding-page:not(.feed-select) .fruit-scroll-hint{display:none!important}
.feeding-page:not(.feed-select) .feed-hearts{display:none!important}
.feeding-page:not(.feed-select) .zw-finish-sticker,
.feeding-page:not(.feed-select) .zw-no-thanks,
.feeding-page:not(.feed-select) .zw-fx-reaction-word{display:none!important}
.feeding-page:not(.feed-select) .extra-back-choice{
  display:flex;align-items:center;justify-content:center;gap:4px;
  padding:2px 10px;min-height:38px;min-width:76px;border-radius:26px;
}
.feeding-page:not(.feed-select) .extra-back-choice span{font-size:28px;line-height:1}
.feeding-page:not(.feed-select) .extra-back-choice img{width:30px;height:30px;object-fit:contain}
.feeding-page:not(.feed-select) .feed-main-pet{
  transform-origin:50% 83%;animation:zw-feed-breathe 2.3s ease-in-out infinite;
  will-change:transform;
}
.feeding-page:not(.feed-select) .feed-main-pet.zw-feed-dancing{
  animation:none!important;transition:none!important;
}
.zw-dog-tail{
  transform-origin:146px 141px;
  animation:zw-feed-wag .37s ease-in-out infinite alternate;
}
.zw-feed-sparkle{
  position:absolute;left:50%;top:42%;width:clamp(17px,5vw,31px);
  height:clamp(17px,5vw,31px);z-index:33;pointer-events:none;opacity:0;
  will-change:transform,opacity;
}
.zw-feed-sparkle svg{display:block;width:100%;height:100%}
.feeding-page:not(.feed-select) .extra-next-ready{
  display:grid;place-items:center;
  min-width:70px!important;width:clamp(65px,20vw,84px)!important;
  height:clamp(63px,19vw,82px)!important;min-height:63px!important;
  border-radius:50%!important;padding:1px!important;
  background:radial-gradient(circle at 35% 28%,#fff5d0,#edcb83)!important;
  box-shadow:inset 0 0 0 3px #fff2cc,2px 5px 0 #936f4d77!important;
}
.feeding-page .feed-next-icon{
  font-family:Arial,sans-serif;font-size:clamp(37px,11vw,54px);
  line-height:1;color:#7b684a;display:inline-block;
}
.feeding-page .extra-next-ready .feed-next-icon{animation:zw-next-arrive .55s cubic-bezier(.22,1.6,.38,1) both}
@keyframes zw-feed-arrow{
  0%,100%{transform:translateY(-4px) rotate(14deg)}
  50%{transform:translateY(5px) rotate(14deg)}
}
@keyframes zw-feed-breathe{
  0%,100%{transform:translateY(0) rotate(-1.5deg) scale(1)}
  50%{transform:translateY(-4px) rotate(1.5deg) scale(1.015)}
}
@keyframes zw-feed-wag{
  from{transform:rotate(-14deg)}to{transform:rotate(21deg)}
}
@keyframes zw-feed-dot-pop{
  0%{transform:scale(.35)}60%{transform:scale(1.42)}100%{transform:scale(1)}
}
@keyframes zw-next-arrive{
  from{transform:rotate(-110deg) scale(.65)}
  to{transform:rotate(0) scale(1)}
}
@media (orientation:landscape) and (max-height:520px){
  .feeding-page:not(.feed-select) .feed-goal-art{
    width:96%;height:40px;gap:5px;
  }
  .feeding-page .feed-goal-number{font-size:27px}
  .feeding-page .feed-goal-times{font-size:21px}
  .feeding-page .feed-goal-food{width:39px;height:39px}
  .feeding-page .feed-goal-arrow{font-size:25px}
  .feeding-page .feed-status{margin:0!important;min-height:31px;font-size:20px}
  .feeding-page .feed-counter-dots i{width:9px;height:9px}
  .feeding-page:not(.feed-select) .extra-next-ready{
    min-width:51px!important;min-height:51px!important;
    width:51px!important;height:51px!important;
  }
  .feeding-page .feed-next-icon{font-size:36px}
}
@media (max-height:650px) and (orientation:portrait){
  .feeding-page:not(.feed-select) .feed-goal-art{height:43px;margin:0 auto}
  .feeding-page .feed-goal-number{font-size:31px}
  .feeding-page .feed-goal-food{height:45px;width:45px}
  .feeding-page .feed-goal-times{font-size:22px}
  .feeding-page .feed-goal-arrow{font-size:26px}
  .feeding-page:not(.feed-select) .extra-next-ready{
    min-width:57px!important;min-height:57px!important;
    width:57px!important;height:57px!important;
  }
}
@media (prefers-reduced-motion:reduce){
  .zw-dog-tail,.feed-goal-arrow,.feeding-page:not(.feed-select) .feed-main-pet{animation:none!important}
}


/* source: connect-game.css */
/* Zahlen verbinden · carefully illustrated finger-drawing game */
.connect-game{display:flex!important;flex-direction:column!important;align-items:center!important;gap:4px!important;
 padding:1px clamp(8px,2.5vw,15px) max(12px,env(safe-area-inset-bottom,0px))!important;overflow-y:auto!important;min-height:0!important;
 overscroll-behavior:contain}
.connect-title{text-align:center;width:100%;flex:0 0 auto}
.connect-title h1{font:900 clamp(23px,7.3vw,33px) "Chalkboard SE","Marker Felt",sans-serif!important;margin:1px 0!important;color:#705b3c;text-shadow:1px 2px #fff8d6}
.connect-title span{display:inline-block;background:#ffedc5;border:2px solid #b59563;border-radius:24px;padding:1px 12px;color:#617851;font:900 14px "Chalkboard SE","Marker Felt",sans-serif}
.connect-hint{font:900 clamp(14px,4vw,18px) "Chalkboard SE","Marker Felt",sans-serif;color:#5b7656;text-shadow:1px 1px #fff7d9;text-align:center;min-height:22px;margin:5px 0!important}
.connect-board{width:min(100%,440px);height:var(--board-height,320px);min-height:0;flex:0 0 auto;position:relative;border:8px solid #ad805d;
 border-radius:25px;background:radial-gradient(ellipse at 40% 25%,#fff8dd 0%,#f8e8be 80%);overflow:hidden;
 box-shadow:inset 0 0 0 3px #fffcdf,inset 0 2px 15px #bba2766a,2px 6px 0 #8a715669;
 touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.connect-board-decor{position:absolute;bottom:7%;left:7%;right:7%;display:flex;justify-content:space-between;font-size:22px;color:#d9ad8d;opacity:.25;pointer-events:none}
.connect-board-decor span{color:#93b89a}
.connect-paths{position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none;overflow:visible}
.connect-line-bg,.connect-line-ink,.connect-line-active{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.connect-line-bg{stroke-width:14;opacity:.95}.connect-line-ink{stroke-width:8}
.connect-line-active{stroke-width:8;stroke-dasharray:none;filter:drop-shadow(0 1px 1px #9a865c55)}
.connect-board.connect-done{border-color:#83a978}
.connect-num{position:absolute;left:var(--px);top:var(--py);transform:translate(-50%,-50%);z-index:5;
 width:clamp(47px,13.5vw,64px);height:clamp(47px,13.5vw,64px);border:4px solid var(--ink);border-radius:50%;
 display:grid;place-items:center;background:var(--light);color:var(--ink);font:900 clamp(23px,6.6vw,34px) "Chalkboard SE","Marker Felt",sans-serif;
 text-shadow:1px 1px #fff;box-shadow:0 3px 0 #91755966,inset 0 3px #fff9e8;pointer-events:none}
.connect-num.connected{background:var(--ink);color:#fff9df;border-color:#fff9dd;box-shadow:0 3px 0 #746b5866,0 0 0 3px var(--ink)}
.connect-colors{width:min(100%,440px);flex:0 0 auto;border:2px dashed #bda27b;background:#fff1d2cb;border-radius:22px;padding:4px 7px 7px}
.connect-colors-label{text-align:center;font:900 clamp(13px,3.7vw,17px) "Chalkboard SE","Marker Felt",sans-serif;color:#765f4e;margin-bottom:3px}
.connect-crayons{display:flex;gap:5px;justify-content:center;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding:4px}
.connect-crayons::-webkit-scrollbar{display:none}
.connect-crayon{position:relative;display:flex;flex:0 0 45px;flex-direction:column;gap:0;align-items:center;
 border:3px solid #b19d7d;background:var(--light);border-radius:13px;min-width:42px;min-height:66px;padding:0 1px;
 box-shadow:1px 3px 0 #a18e6c55;font:900 17px "Chalkboard SE","Marker Felt",sans-serif;color:var(--ink)}
.connect-crayon-shape{display:block;font:900 35px system-ui,sans-serif;color:var(--ink);line-height:1.2;transform:rotate(-15deg)}
.connect-crayon[aria-pressed="true"]{outline:4px solid var(--ink);outline-offset:1px;transform:translateY(-3px);background:white}
.connect-crayon.used{opacity:.55}
.connect-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;flex:0 0 auto;margin-top:3px}
.connect-secondary,.connect-continue{min-height:43px;border-radius:23px;padding:6px 16px;border:3px solid #9d8064;
 box-shadow:1px 3px #9a7f5980;font:900 clamp(14px,4vw,17px) "Chalkboard SE","Marker Felt",sans-serif}
.connect-secondary{background:#f5e5c5;color:#795b45}.connect-continue{background:#add9a1;color:#496d51;border-color:#71955d}
.connect-victory{font:900 16px "Chalkboard SE","Marker Felt",sans-serif;text-align:center;color:#5d915c;min-height:20px}
.connect-board.connect-error{animation:connect-no .35s ease-in-out}
@keyframes connect-no{0%,100%{border-color:#ad805d}50%{border-color:#d87676}}
@media(max-height:800px) and (orientation:portrait){.connect-board{height:min(var(--board-height),44dvh)!important}.connect-title h1{font-size:23px!important}.connect-hint{margin:1px 0!important}.connect-colors{padding:2px 5px}.connect-crayon{min-height:52px;flex-basis:40px}.connect-crayon-shape{font-size:25px}.connect-crayons{padding:1px}.connect-num{width:clamp(43px,13vw,58px);height:clamp(43px,13vw,58px)}}
@media(orientation:landscape) and (max-height:520px){.connect-game{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(220px,35%);grid-template-rows:auto 1fr auto!important;gap:4px 10px!important}.connect-title{grid-column:1;grid-row:1}.connect-hint{grid-column:2;grid-row:1}.connect-board{grid-column:1;grid-row:2/4;height:min(var(--board-height),calc(100dvh - 130px))!important}.connect-colors{grid-column:2;grid-row:2;align-self:center}.connect-actions{grid-column:2;grid-row:3}.connect-num{width:41px;height:41px;font-size:23px}.connect-victory{display:none}.connect-crayon{min-height:47px;flex-basis:35px}.connect-crayon-shape{font-size:22px}}

/* Higher levels need actual room for 12–16 large number targets; allow page scrolling. */
@media (max-height:800px) and (orientation:portrait){
 .connect-board[data-pairs="5"],.connect-board[data-pairs="6"],.connect-board[data-pairs="7"],.connect-board[data-pairs="8"]{
  height:var(--board-height)!important;flex:0 0 auto!important
 }
}
@media (orientation:landscape) and (max-height:520px){
 .connect-board[data-pairs="5"],.connect-board[data-pairs="6"],.connect-board[data-pairs="7"],.connect-board[data-pairs="8"]{
  height:var(--board-height)!important
 }
 .connect-game{overflow-y:auto!important}
}
.connect-board.connect-crosses{outline:4px solid #d78b82;outline-offset:1px}

/* v41: crayons are independent of the numbers; favorite color persists per round. */
.connect-crayon{flex:0 0 43px!important;min-width:41px!important;min-height:62px!important}
.connect-crayon-name{font:800 9px/1.2 "Chalkboard SE","Marker Felt",sans-serif;letter-spacing:-.2px;white-space:nowrap}
.connect-crayons{justify-content:flex-start!important;scroll-snap-type:x proximity}
.connect-crayon[aria-pressed="true"]{outline:3px solid var(--ink)!important;outline-offset:1px}
.connect-board .connect-num{pointer-events:none!important}
@media(max-height:800px) and (orientation:portrait){.connect-crayon{min-height:53px!important}.connect-crayon-shape{font-size:27px!important}}


/* source: drive-game.css */
/* Zählwiese Auto-Teppich: hand-painted educational map on iOS */
.drive-page{display:flex!important;flex-direction:column!important;align-items:center!important;gap:4px!important;padding:1px 10px max(12px,env(safe-area-inset-bottom,0px))!important;overflow-y:auto!important;overscroll-behavior:contain!important}
.drive-heading{display:flex;justify-content:space-between;align-items:center;gap:14px;width:min(100%,430px);margin:0 auto}
.drive-heading h1{font:900 clamp(24px,7.2vw,32px) "Chalkboard SE","Marker Felt",sans-serif;color:#846246;text-shadow:1px 2px #fff6dd;margin:1px 0!important}
.drive-heading>span{font:900 14px "Chalkboard SE","Marker Felt",sans-serif;color:#71905b;border:2px solid #a9ad74;background:#fff0cf;padding:3px 12px;border-radius:18px;white-space:nowrap}
.drive-instruction{width:min(100%,395px);height:84px;display:flex;gap:6px;align-items:center;justify-content:center;border-radius:20px;border:2px dashed #b89469;background:#fff1cdcf;flex:0 0 auto}
.drive-instruct-car{width:93px;height:68px;display:block;filter:drop-shadow(2px 3px 1px #93836755)}
.drive-instruct-car svg{width:100%;height:100%}
.drive-arrow{font-size:36px;color:#b88c60;text-shadow:1px 1px #fff2cf}
.drive-instruct-target{width:64px;height:67px;display:block}
.drive-instruct-target svg{width:100%;height:100%}
.drive-caption{font:900 clamp(15px,4.4vw,19px) "Chalkboard SE","Marker Felt",sans-serif;color:#597f55;text-align:center;margin:2px auto 4px!important;text-shadow:1px 1px #fff5dc}
.drive-map-wrap{position:relative;width:min(100%,400px);max-height:unset;flex:0 0 auto;touch-action:none;filter:drop-shadow(2px 4px 2px #78674e6b)}
#driveMap{display:block;width:100%;height:auto;aspect-ratio:390/510;border:7px solid #ac8661;border-radius:28px;overflow:hidden;touch-action:none!important;background:#b0d39f;box-shadow:inset 0 0 0 3px #f4e0bd}
.drive-stop{filter:drop-shadow(1px 2px 1px #79674c88);pointer-events:none}
.drive-stop.drive-destination{filter:drop-shadow(0 0 8px #f5df85)}
.drive-car{cursor:grab;filter:drop-shadow(2px 4px 1px #4f554872);touch-action:none}
.drive-car:active{cursor:grabbing}
.drive-car>svg{width:98px;height:76px}
.drive-car.drive-wrong{animation:drive-no .55s ease}
.drive-car.drive-celebration{animation:drive-happy .8s ease-out 2}
@keyframes drive-happy{0%,100%{filter:drop-shadow(2px 4px 1px #4f554872)}45%{filter:drop-shadow(0 0 10px #fff0a4)}}
@keyframes drive-no{0%,100%{opacity:1}50%{opacity:.55}}
.drive-foot{font:900 15px "Chalkboard SE","Marker Felt",sans-serif;color:#5a7953;text-align:center;line-height:1.2}
.drive-controls{display:flex;gap:10px;justify-content:center}
.drive-again,.drive-next{border:3px solid #af8a67;border-radius:23px;min-height:43px;padding:6px 16px;background:#fff0c6;color:#795e4b;font:900 clamp(15px,4.1vw,19px) "Chalkboard SE","Marker Felt",sans-serif;box-shadow:1px 3px #93795b69}
.drive-next{background:#bce1ac;color:#4b7453;border-color:#719a73}
.drive-next[hidden]{display:none!important}
@media(max-height:810px) and (orientation:portrait){.drive-heading h1{font-size:24px}.drive-instruction{height:62px}.drive-instruct-car{width:80px;height:54px}.drive-instruct-target{width:53px;height:52px}.drive-map-wrap{width:min(100%,calc((100dvh - 260px) * 390 / 510),345px)!important}.drive-foot{font-size:13px}}
@media(orientation:landscape) and (max-height:530px){.drive-page{display:grid!important;grid-template-columns:minmax(0,1fr) 37%;grid-template-rows:auto auto 1fr auto;gap:5px 12px!important;align-items:center}.drive-heading{grid-column:2;grid-row:1}.drive-instruction{grid-column:2;grid-row:2}.drive-caption{grid-column:2;grid-row:3}.drive-map-wrap{grid-column:1;grid-row:1/5;width:min(calc((100dvh - 88px)*390/510),100%)!important}.drive-controls{grid-column:2;grid-row:4}.drive-foot{display:none}}

/* Illustrated interconnected streets, vehicle follows the road geometry. */
.drive-page .drive-map-wrap{width:min(100%,430px)}
.drive-page #driveMap{border:9px solid #b58860!important;border-radius:24px!important;background:#a8cf9b!important;box-shadow:0 0 0 3px #f9e5bf,inset 0 0 0 3px #ecd4a7!important}
.drive-car{cursor:grab;touch-action:none;filter:drop-shadow(2px 3px 3px #414c4a99)}
.drive-stop.drive-destination{animation:zw-drive-dest .65s ease-in-out 3}
.drive-car.drive-wrong{animation:zw-drive-shake .45s ease-in-out}
.drive-car.drive-celebration{animation:zw-drive-success .72s ease-in-out infinite alternate}
@keyframes zw-drive-dest{50%{filter:drop-shadow(0 0 14px #fbe49c)}}
@keyframes zw-drive-shake{0%,100%{filter:drop-shadow(2px 3px 3px #414c4a99)}50%{filter:drop-shadow(0 0 12px #f08080)}}
@keyframes zw-drive-success{to{filter:drop-shadow(0 0 16px #f2e799)}}

/* V46: urban illustrated road carpet, no artificial repeated grid. */
.drive-page #driveMap{border:5px solid #eee2b8!important;border-radius:22px!important;background:#92cc8c!important;box-shadow:0 0 0 3px #9e8c6b,0 6px 15px #536a4d59!important}
.drive-page .drive-map-wrap{width:min(100%,452px)!important;filter:drop-shadow(1px 4px 4px #59754b53)}
.drive-stop{filter:drop-shadow(1px 2px 2px #66513e7a)}
.drive-instruction{background:linear-gradient(90deg,#fff3d6,#eaf4d3)!important}
@media(max-height:810px) and (orientation:portrait){.drive-page .drive-map-wrap{width:min(100%,calc((100dvh - 246px) * 390 / 510),395px)!important}}
@media(orientation:landscape) and (max-height:530px){.drive-page .drive-map-wrap{width:min(calc((100dvh - 74px)*390/510),100%)!important}}


/* source: number-hunt.css */
/* Zählwiese – Zahlenjagd, original pastel chalk-and-paper theme */
.hunt-page{display:flex!important;flex-direction:column!important;align-items:center!important;gap:6px!important;overflow-y:auto!important;overflow-x:hidden!important;min-height:0!important;padding:4px clamp(10px,3vw,18px) max(12px,env(safe-area-inset-bottom,0px))!important}
.hunt-title{text-align:center;display:flex;align-items:center;flex-direction:column;gap:2px;flex:0 0 auto}
.hunt-title h1{font:900 clamp(25px,7vw,34px)/1.06 "Chalkboard SE","Marker Felt",sans-serif!important;color:#6e624b!important;text-shadow:1px 2px #fff6d8;margin:0!important}
.hunt-round{font:850 14px/1.1 "Chalkboard SE","Marker Felt",sans-serif;background:#f9e9c7;color:#7a8062;border:2px solid #ddc59b;border-radius:18px;padding:2px 14px}
.hunt-visual-guide{display:flex;align-items:center;justify-content:center;gap:9px;color:#9779aa;flex:0 0 auto;height:35px}
.hunt-guide-symbol{font:900 27px/1 "Chalkboard SE","Marker Felt",sans-serif;color:#8fa985;text-shadow:1px 1px white}
.hunt-guide-arrow{font:800 22px/1 system-ui;color:#d7a072}
.hunt-guide-ellipsis{font-size:24px;color:#b3a0c7}
.hunt-prompt{width:min(100%,240px);display:flex;align-items:center;justify-content:center;gap:22px;flex:0 0 auto;height:60px}
.hunt-current-number{display:grid;place-items:center;min-width:69px;min-height:62px;padding:0 7px;border-radius:23px;background:#fff6da;box-shadow:0 4px 0 #d3b687,0 0 0 3px #e8cea5;color:#b67c9d;font:900 48px/1 "Chalkboard SE","Marker Felt",sans-serif;text-shadow:1px 2px #ffe7ed;transform-origin:center}
.hunt-look{font-size:24px;color:#e0b374;animation:hunt-twinkle 2s ease-in-out infinite alternate}
.hunt-look:last-child{animation-delay:.6s}
.hunt-progress{display:grid;grid-template-columns:repeat(10,1fr);align-items:center;gap:5px;width:min(100%,350px);height:19px;flex:0 0 auto}
.hunt-progress-dot{border:2px solid #d5be9b;background:#fff5da;aspect-ratio:1;border-radius:50%;width:100%;max-width:18px;justify-self:center;transform:scale(.85);transition:background .22s ease,transform .22s ease}
.hunt-progress-dot.is-next{background:#d4a77c;transform:scale(1.12);box-shadow:0 0 0 3px #f8e7c8}
.hunt-progress-dot.is-done{background:#92bb94;border-color:#6d987e;transform:scale(1)}
.hunt-board{position:relative;flex:0 0 auto;width:min(100%,430px);height:clamp(326px,48dvh,470px);min-height:0;border:8px solid #b58b68;border-radius:28px;background:radial-gradient(ellipse at 50% 24%,#fff9e5,#f7e8c4 80%);box-shadow:inset 0 0 0 3px #fffbea,inset 0 5px 20px #cbb69768,2px 6px 0 #a28a6b66;overflow:hidden;isolation:isolate;touch-action:manipulation}
.hunt-board:before{content:"";position:absolute;inset:13px;border:2px dashed #d2bb9169;border-radius:18px;pointer-events:none}
.hunt-decoration{position:absolute;pointer-events:none;opacity:.23;font:40px "Chalkboard SE",sans-serif;line-height:1;color:#96b8a4}
.hunt-deco-a{top:7%;left:6%}.hunt-deco-b{bottom:6%;right:8%;color:#daa5a3}.hunt-deco-c{top:45%;left:47%;color:#c5a2cc}
.hunt-number{position:absolute;left:var(--hunt-x);top:var(--hunt-y);transform:translate(-50%,-50%);display:grid;place-items:center;z-index:2;width:clamp(57px,17vw,76px);height:clamp(57px,17vw,76px);border:4px solid var(--hunt-ink);border-radius:50%;background:#fffaf0;color:var(--hunt-ink);box-shadow:0 5px 0 #bda78775,inset 0 2px #ffffff;font:900 clamp(28px,8vw,37px)/1 "Chalkboard SE","Marker Felt",sans-serif;text-shadow:1px 2px #f8e7da;transition:box-shadow .16s ease,background .16s ease;animation:hunt-appear .48s cubic-bezier(.2,.85,.35,1.25) both;animation-delay:var(--hunt-delay);-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.hunt-number:active:not(.is-found){background:#fff0da;box-shadow:0 2px 0 #bda78775;filter:brightness(1.05)}
.hunt-number:focus-visible{outline:4px solid #c2a4d4;outline-offset:4px}
.hunt-number.is-wrong{animation:hunt-wrong .48s ease both!important}
.hunt-number.is-found{pointer-events:none;animation:hunt-found .58s ease-in forwards!important}
.hunt-board-won{border-color:#89b38d;box-shadow:inset 0 0 0 3px #fffbea,0 0 0 4px #cde6c2}
.hunt-complete{width:min(100%,340px);flex:0 0 auto;text-align:center;display:flex;flex-direction:column;align-items:center;gap:2px;border:3px dashed #94ba91;background:#fbf3db;border-radius:24px;padding:9px 12px;box-shadow:0 4px 0 #d6c2a1;min-height:98px}
.hunt-complete[hidden]{display:none!important}
.hunt-trophy{font:900 46px/1 "Chalkboard SE",sans-serif;color:#e4bc6f;filter:drop-shadow(0 2px #9c7e54)}
.hunt-complete-digits{font:800 13px "Chalkboard SE",sans-serif;color:#6c926c;letter-spacing:2px}
.hunt-next{border:3px solid #7fab7d;border-radius:50%;background:#d6ebc5;color:#6f956c;width:57px;height:57px;font:900 41px/1 "Chalkboard SE",sans-serif;box-shadow:0 3px 0 #a3bc91}
.hunt-complete-enter{animation:hunt-win-in .55s cubic-bezier(.19,1,.3,1.35)}
.hunt-target-change{animation:hunt-target .45s cubic-bezier(.23,1.3,.42,1) both}
@keyframes hunt-twinkle{from{transform:rotate(-15deg) scale(.8);opacity:.45}to{transform:rotate(16deg) scale(1.13);opacity:1}}
@keyframes hunt-appear{from{opacity:0;transform:translate(-50%,-50%) scale(.4) rotate(-20deg)}to{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(0)}}
@keyframes hunt-found{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}38%{opacity:1;transform:translate(-50%,-50%) scale(1.3) rotate(-11deg);background:#e1efca}100%{opacity:0;transform:translate(-50%,-90%) scale(.25) rotate(24deg)}}
@keyframes hunt-wrong{0%,100%{transform:translate(-50%,-50%) rotate(0)}20%,60%{transform:translate(calc(-50% - 7px),-50%) rotate(-8deg)}40%,80%{transform:translate(calc(-50% + 7px),-50%) rotate(8deg)}}
@keyframes hunt-target{0%{transform:scale(.5) rotate(-9deg)}60%{transform:scale(1.2) rotate(6deg)}100%{transform:scale(1) rotate(0)}}
@keyframes hunt-win-in{from{opacity:0;transform:translateY(20px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-height:775px) and (orientation:portrait){.hunt-page{gap:4px!important}.hunt-board{height:min(42dvh,365px)}.hunt-visual-guide{height:29px}.hunt-prompt{height:54px}.hunt-current-number{min-height:54px;font-size:40px}.hunt-number{width:clamp(51px,15vw,66px);height:clamp(51px,15vw,66px)}}
@media(orientation:landscape) and (max-height:520px){.hunt-page{display:grid!important;grid-template-columns:minmax(185px,34%) minmax(0,1fr)!important;grid-template-rows:auto auto 1fr!important;align-items:start!important;gap:7px 10px!important}.hunt-title{grid-area:1/1}.hunt-visual-guide{grid-area:2/1}.hunt-prompt{grid-area:3/1}.hunt-progress{grid-area:3/1;align-self:end}.hunt-board{grid-column:2;grid-row:1/4;height:min(300px,calc(100dvh - 115px))}.hunt-number{width:clamp(39px,6vw,56px);height:clamp(39px,6vw,56px);font-size:24px}.hunt-complete{grid-column:1;grid-row:3}}
@media(prefers-reduced-motion:reduce){.hunt-number,.hunt-look,.hunt-current-number,.hunt-complete{animation-duration:.01ms!important;animation-delay:0ms!important}}

/* v41: genuine translucent, floating, iridescent soap bubbles. */
.hunt-board{background:radial-gradient(ellipse at 48% 20%,#d1f1fb 0%,#b6e4e5 46%,#a4d9b9 100%)!important;border-color:#8aa98e!important}
.hunt-number{
 width:clamp(62px,17.2vw,79px)!important;height:clamp(62px,17.2vw,79px)!important;
 border:2px solid #f5ffffd9!important;
 background:radial-gradient(circle at 26% 20%,#ffffffd6 0%,#e6faff88 12%,#ccedff45 38%,#efb8ec4a 74%,#9bd8df8c 100%)!important;
 box-shadow:inset -6px -7px 11px #7bbdd058,inset 5px 6px 12px #ffffff9e,0 4px 10px #628ca273,0 0 0 2px #abcae66a!important;
 color:var(--hunt-ink)!important;text-shadow:1px 1px #fff,0 0 5px #fff;
 animation:hunt-float 2.8s ease-in-out infinite alternate!important;
 animation-delay:calc(var(--hunt-delay) * -1.1)!important;
 isolation:isolate;will-change:transform,opacity;
}
.hunt-bubble-shine{position:absolute;left:18%;top:13%;width:34%;height:23%;border-radius:50%;border-top:5px solid #ffffffed;border-left:2px solid #ffffffe2;transform:rotate(-27deg);pointer-events:none}
.hunt-bubble-digit{position:relative;z-index:1;font-size:clamp(28px,8vw,37px)}
.hunt-number.is-found{animation:none!important;pointer-events:none}
.hunt-pop-layer{position:absolute;width:0;height:0;pointer-events:none;z-index:12;overflow:visible}
.hunt-pop-layer i{position:absolute;top:-4px;left:-4px;display:block;width:8px;height:8px;border-radius:60% 20% 55% 32%;background:var(--hue);box-shadow:0 0 0 1px #fff9;opacity:0;will-change:transform,opacity}
.hunt-pop-ring{position:absolute;left:0;top:0;display:block;width:51px;height:51px;border:3px solid #fffffff0;box-shadow:0 0 8px #9ed9f2;border-radius:50%;opacity:0;will-change:transform,opacity}
@keyframes hunt-float{0%{transform:translate(-50%,-50%) translate3d(-3px,4px,0) rotate(-3deg)}100%{transform:translate(-50%,-50%) translate3d(4px,-6px,0) rotate(4deg)}}
@media(prefers-reduced-motion:reduce){.hunt-number:not(.is-popping){animation:none!important}.hunt-number.is-popping{transition:none!important}}
@media(max-height:775px) and (orientation:portrait){.hunt-number{width:clamp(54px,15vw,67px)!important;height:clamp(54px,15vw,67px)!important}}


/* source: family-maze.css */
/* Zählwiese · a storybook maze with gentle finger-guided movement and real cuddles. */
.family-maze-screen {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 4px !important;
  min-height: 0 !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  overscroll-behavior: contain;
  padding: 3px clamp(8px, 3vw, 15px) max(16px, env(safe-area-inset-bottom, 0px)) !important;
  color: #735d46;
}
.family-maze-heading { display: flex; justify-content: center; gap: 13px; align-items: center; width: min(100%, 440px); }
.family-maze-heading h1 { font: 900 clamp(22px, 6vw, 31px)/1.15 'Chalkboard SE','Marker Felt',system-ui,sans-serif !important; color: #7c6246; margin: 1px 0 !important; text-shadow: 1px 2px #fff4d6; }
.family-maze-heading > span { font: 800 14px 'Chalkboard SE','Marker Felt',sans-serif; border-radius: 20px; padding: 4px 11px; background: #f5e9c7; border: 2px solid #ccae7f; white-space: nowrap; }
.family-maze-story { display: flex; align-items: center; justify-content: center; width: min(100%, 360px); gap: 16px; background: #fff4d5bb; border: 2px dashed #c6aa80; border-radius: 24px; padding: 4px 16px; min-height: 76px; flex: 0 0 auto; }
.family-maze-story-portrait { width: 66px; height: 68px; display: grid; place-items: center; }
.family-maze-story-portrait svg { width: 63px; height: 67px; filter: drop-shadow(1px 2px 1px #836c5e55); }
.family-maze-story-portrait.other svg { transform: none; }
.family-maze-story-arrow { width: 75px; height: 40px; overflow: visible; }
.family-maze-board { position: relative; width: min(100%, 415px); flex: 0 0 auto; touch-action: none !important; -webkit-user-select: none; user-select: none; -webkit-touch-callout: none; border-radius: 28px; filter: drop-shadow(2px 5px 2px #6e7c5b50); isolation: isolate; }
.family-maze-svg { display: block; width: 100%; height: auto; aspect-ratio: 1; touch-action: none !important; }
#mazeMovingFriend { will-change: transform; }
#mazeGuideRing circle { animation: maze-glow 2.3s ease-in-out infinite; }
@keyframes maze-glow { 0%, 100% { opacity: .78; stroke-width: 3.3; } 50% { opacity: .3; stroke-width: 7; } }
.family-maze-instruction { min-height: 24px; text-align: center; color: #689170; font: 900 clamp(15px,4.1vw,19px) 'Chalkboard SE','Marker Felt',sans-serif; text-shadow: 1px 1px #fff8d9; }
.family-maze-progress { display: flex; gap: 5px; align-items: center; justify-content: center; width: 100%; min-height: 17px; }
.family-maze-step { display: block; width: 14px; height: 14px; border-radius: 50%; border: 2px solid #ab9877; background: #f7e7c2; flex: 0 0 auto; }
.family-maze-step.complete { background: #84ba87; border-color: #669f78; }
.family-maze-step.current { background: #e2aab3; border-color: #b98197; transform: scale(1.23); box-shadow: 0 0 0 2px #ffefcb; }
.family-maze-controls { display: flex; justify-content: center; align-items: center; min-height: 48px; }
.family-maze-restart,.family-maze-next { border: 3px solid #ad865e; background: linear-gradient(#ffeec6,#ebcda6); color: #875e46; border-radius: 50%; display: grid; place-items: center; box-shadow: 1px 4px 0 #8e715b66; width: 51px; height: 51px; padding: 8px; touch-action: manipulation; }
.family-maze-restart svg,.family-maze-next svg { width: 100%; height: 100%; }
.family-maze-next { width: 66px; height: 66px; background: linear-gradient(#d7efb6,#9dce97); color: #517e53; border-color: #7fa16e; }
.family-maze-restart:active,.family-maze-next:active { transform: translateY(3px); }
.family-maze-victory { position: absolute; z-index: 30; inset: max(86px, 14%) 8% auto; border-radius: 30px; padding: 18px 16px 24px; border: 5px solid #be9b72; background: radial-gradient(ellipse at 50% 5%,#fffbe7,#f8e9c7); box-shadow: 0 10px 0 #7c71565a,0 0 0 100vmax #4f806a52; text-align: center; display: flex; flex-direction: column; align-items: center; justify-content: center; }
.family-maze-victory[hidden] { display: none !important; }
.family-maze-cuddle { display: flex; width: 195px; height: 136px; position: relative; align-items: end; justify-content: center; overflow: visible; }
.family-maze-cuddle-moritz,.family-maze-cuddle-igor { position: absolute; width: 102px; height: 134px; bottom: 0; filter: drop-shadow(2px 4px 2px #a0846b50); transform-origin: 50% 90%; }
.family-maze-cuddle-moritz { left: 4px; animation: zw-maze-moritz-hug 2.6s ease-in-out infinite; }
.family-maze-cuddle-igor { width: 80px; height: 112px; right: 10px; bottom: -2px; animation: zw-maze-igor-hug 2.6s ease-in-out infinite; }
.family-maze-cuddle-moritz svg,.family-maze-cuddle-igor svg { width: 100%; height: 100%; }
.family-maze-cuddle-hearts { width: 130px; height: 70px; position: absolute; top: -27px; left: 50%; transform: translateX(-50%); animation: family-hearts 2.3s ease-in-out infinite; }
.family-maze-victory-title { font: 900 27px 'Chalkboard SE','Marker Felt',sans-serif; color: #62946b; margin: 10px 0 14px; text-shadow: 2px 2px #fff9de; }
@keyframes zw-maze-moritz-hug { 0%,10%,100% { transform: translateX(-20px) rotate(-6deg); } 30%,65% { transform: translateX(12px) rotate(13deg); } 80% { transform: translateX(4px) rotate(8deg); } }
@keyframes zw-maze-igor-hug { 0%,10%,100% { transform: translateX(19px) rotate(9deg); } 30%,65% { transform: translateX(-13px) rotate(-14deg) scale(.97); } 80% { transform: translateX(-5px) rotate(-7deg); } }
@keyframes family-hearts { 0% { opacity: 0; transform: translateX(-50%) translateY(24px) scale(.4); } 25%,70% { opacity: 1; transform: translateX(-50%) translateY(-6px) scale(1); } 100% { opacity: 0; transform: translateX(-50%) translateY(-24px) scale(1.13); } }
@media (max-height: 780px) and (orientation: portrait) {
  .family-maze-screen { gap: 1px !important; }
  .family-maze-story { min-height: 58px; padding: 2px 12px; }
  .family-maze-story-portrait { height: 54px; width: 52px; }
  .family-maze-story-portrait svg { width: 50px; height: 52px; }
  .family-maze-board { width: min(100%, calc(100dvh - 270px)) !important; }
  .family-maze-heading h1 { font-size: 22px !important; }
  .family-maze-restart { width: 43px; height: 43px; }
  .family-maze-step { width: 11px; height: 11px; }
}
@media (orientation: landscape) and (max-height: 530px) {
  .family-maze-screen { display: grid !important; grid-template-columns: minmax(0,1fr) minmax(210px,36%); grid-template-rows: auto auto 1fr auto !important; gap: 2px 10px !important; overflow-y: auto !important; }
  .family-maze-board { grid-column: 1; grid-row: 1/5; width: min(calc(100dvh - 95px),100%) !important; align-self: center; justify-self: end; }
  .family-maze-heading { grid-column: 2; grid-row: 1; }
  .family-maze-story { grid-column: 2; grid-row: 2; min-height: 57px; }
  .family-maze-instruction { grid-column: 2; grid-row: 3; align-self: center; }
  .family-maze-progress { grid-column: 2; grid-row: 4; }
  .family-maze-controls { grid-column: 2; grid-row: 4; justify-self: end; }
  .family-maze-victory { inset: 5% 15% auto; width: 70%; justify-self: center; }
}
.family-maze-screen { position: relative !important; }

/* V43: Moritz and Igor are equally valued characters, not parent and child. */
.family-maze-story-portrait svg { width:65px;height:69px; }
.family-maze-cuddle {width:218px;height:142px}
.family-maze-cuddle-moritz,.family-maze-cuddle-igor {width:112px;height:140px;bottom:0}
.family-maze-cuddle-moritz{left:0;animation:zw-maze-moritz-hug 2.3s cubic-bezier(.45,0,.3,1) infinite}
.family-maze-cuddle-igor{right:0;animation:zw-maze-igor-hug 2.3s cubic-bezier(.45,0,.3,1) infinite}
@keyframes zw-maze-moritz-hug {0%,12%,100%{transform:translateX(-15px) rotate(-5deg)}40%,74%{transform:translateX(22px) rotate(10deg)}84%{transform:translateX(8px) rotate(4deg)}}
@keyframes zw-maze-igor-hug {0%,12%,100%{transform:translateX(15px) rotate(6deg)}40%,74%{transform:translateX(-22px) rotate(-9deg)}84%{transform:translateX(-8px) rotate(-4deg)}}
@media(max-width:350px){.family-maze-story {gap:7px}.family-maze-cuddle {transform:scale(.9)}}

/* V48: original illustrated adventure worlds – active maze path remains clear. */
.family-maze-story{background-color:#f8edd2!important;background-repeat:no-repeat!important;border:3px solid #e7cb97!important;box-shadow:1px 3px 1px #8e765651!important}
.family-maze-story .family-maze-story-portrait{z-index:1;filter:drop-shadow(0 2px 2px #6d795566)}
.family-maze-story-arrow{z-index:1}
.family-maze-cuddle{isolation:isolate}
.family-maze-cuddle-moritz,.family-maze-cuddle-igor{filter:drop-shadow(2px 4px 2px #a0846b50)!important}
@keyframes zw-maze-moritz-hug{
  0%,5%{transform:translateX(-23px) rotate(-5deg)}
  32%,70%{transform:translateX(32px) translateY(-4px) rotate(13deg) scale(1.06)}
  84%{transform:translateX(22px) rotate(6deg)}
  100%{transform:translateX(-23px) rotate(-5deg)}
}
@keyframes zw-maze-igor-hug{
  0%,5%{transform:translateX(25px) rotate(7deg)}
  32%,70%{transform:translateX(-29px) translateY(-4px) rotate(-12deg) scale(1.06)}
  84%{transform:translateX(-18px) rotate(-5deg)}
  100%{transform:translateX(25px) rotate(7deg)}
}
@media(prefers-reduced-motion:reduce){.family-maze-cuddle-moritz{animation:none!important;transform:translateX(23px) rotate(5deg)!important}.family-maze-cuddle-igor{animation:none!important;transform:translateX(-20px) rotate(-5deg)!important}}


/* source: intro-ui-v36.css */
/* Zählwiese onboarding for parents; visible before every game. */
.zw-guide-overlay{position:fixed!important;inset:0!important;z-index:99997!important;display:grid!important;place-items:center!important;padding:calc(env(safe-area-inset-top,0px) + 20px) 16px calc(env(safe-area-inset-bottom,0px) + 18px)!important;background:#3f62578c;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
.zw-guide-dialog{position:relative;width:min(100%,410px);max-height:100%;overflow-y:auto;overscroll-behavior:contain;border:7px solid #b48961;background:radial-gradient(circle at 40% 0%,#fff8d9,#fae7b9 95%);border-radius:32px;box-shadow:0 14px 0 #5d6f5166,inset 0 0 0 3px #fff7dc;padding:19px 20px 21px;text-align:center;color:#795f46}
.zw-guide-close{position:absolute;top:8px;right:8px;border:3px solid #ab8c69;background:#fff3d5;border-radius:50%;width:42px;height:42px;display:grid;place-items:center;color:#86654c;font-size:19px;z-index:2}
.zw-guide-art{display:grid;place-items:center;width:100px;height:100px;background:radial-gradient(circle,#fff6e3,#d7e9c8);border:3px dashed #9db889;border-radius:50%;margin:0 auto 6px}
.zw-guide-art img{width:82%;height:82%;object-fit:contain}
.zw-guide-eyebrow{font:900 14px "Chalkboard SE","Marker Felt",sans-serif;color:#6f9b70;letter-spacing:.3px}
.zw-guide-dialog h2{font:900 clamp(23px,6vw,30px) "Chalkboard SE","Marker Felt",sans-serif;margin:2px 0!important;color:#826044}
.zw-guide-dialog h3{font:900 clamp(17px,5vw,21px) "Chalkboard SE","Marker Felt",sans-serif;margin:3px 0 10px!important;color:#63906d}
.zw-guide-dialog p{font:700 clamp(15px,4.1vw,17px)/1.38 "Chalkboard SE","Marker Felt",system-ui,sans-serif;margin:9px 0 12px!important;text-align:left;color:#765b49}
.zw-guide-child{padding:9px;border:2px dashed #acb58a;background:#f4f5d8;border-radius:17px;font:900 clamp(14px,4.1vw,17px) "Chalkboard SE","Marker Felt",sans-serif;color:#648359;margin:10px 0 18px}
.zw-guide-start{width:100%;min-height:61px;border:4px solid #7e9f70;border-radius:31px;background:linear-gradient(#c9ebae,#91cd88);color:#426c48;box-shadow:2px 5px 0 #6b8e5e85;font:900 clamp(19px,5.4vw,23px) "Chalkboard SE","Marker Felt",sans-serif}
.zw-guide-start:active{transform:translateY(3px)}
/* Eight game buttons, three rows, child-sized visual targets. */
.intro-content .mode-choices{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;column-gap:7px!important;row-gap:4px!important;width:min(100%,415px)!important}
.intro-content .mode-choice:nth-child(4),.intro-content .mode-choice:nth-child(5),.intro-content .mode-choice:nth-child(6),.intro-content .mode-choice:nth-child(7){grid-column:auto!important;grid-row:auto!important;justify-self:center!important;width:100%!important}
.intro-content .mode-choice:nth-child(7){grid-column:2!important}
.intro-content .mode-round{width:clamp(68px,21.3vw,100px)!important;height:clamp(68px,21.3vw,100px)!important}
.intro-content .mode-label{font-size:clamp(11px,3.4vw,16px)!important;line-height:1.07!important}
.intro-content .intro-scene{height:clamp(150px,22dvh,205px)!important}
.intro-content .welcome-subtitle{margin:1px auto 5px!important}
.intro-content .welcome-footer{margin:3px auto 0!important}
@media(max-height:760px) and (orientation:portrait){
 .intro-content .intro-scene{height:clamp(113px,20dvh,156px)!important}
 .intro-content .mode-round{width:clamp(58px,19vw,81px)!important;height:clamp(58px,19vw,81px)!important}
 .intro-content .mode-label{font-size:clamp(10px,3.2vw,14px)!important}
 .intro-content .mode-choices{row-gap:1px!important}
 .intro-content .welcome-subtitle{font-size:clamp(13px,3.9vw,17px)!important;margin-bottom:2px!important}
 .zw-guide-dialog{padding:13px 15px}.zw-guide-art{height:69px;width:69px}.zw-guide-dialog p{font-size:14px}
}
@media(orientation:landscape) and (max-height:520px){
 .intro-content .mode-choices{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:2px!important}
 .intro-content .mode-choice:nth-child(7){grid-column:auto!important}
 .intro-content .mode-round{width:clamp(49px,7.2vw,72px)!important;height:clamp(49px,7.2vw,72px)!important}
 .intro-content .mode-label{font-size:10px!important}
 .zw-guide-dialog{max-width:550px;display:grid;grid-template-columns:100px 1fr;gap:3px 13px;padding:12px 20px}
 .zw-guide-art{grid-column:1;grid-row:1/5;margin:auto}
 .zw-guide-eyebrow,.zw-guide-dialog h2,.zw-guide-dialog h3,.zw-guide-dialog p,.zw-guide-child{grid-column:2;margin:0!important}
 .zw-guide-dialog h3,.zw-guide-child{font-size:14px}.zw-guide-dialog p{font-size:13px}
 .zw-guide-start{grid-column:1/3;min-height:41px}
}

/* Eight visual game choices, balanced 3 + 3 + 2. */
.intro-content .mode-choice:nth-child(7){grid-column:auto!important}
.intro-content .mode-choice:nth-child(8){grid-column:auto!important;width:100%!important;justify-self:center!important}
.intro-content .mode-choices{justify-items:center!important}
.intro-content .mode-choice.mode-hunt .mode-round{background:radial-gradient(circle,#fff5dc,#d5e6c4)!important}
.intro-content .mode-choice.mode-hunt .mode-round img{object-fit:contain!important;width:94%!important;height:94%!important}
@media(orientation:landscape) and (max-height:520px){.intro-content .mode-choice:nth-child(8){grid-column:auto!important}}

/* nine games integrated v44 */
.intro-content .mode-choices{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;justify-items:center!important}
.intro-content .mode-choice:nth-child(7),.intro-content .mode-choice:nth-child(8),.intro-content .mode-choice:nth-child(9){grid-column:auto!important;grid-row:auto!important;width:100%!important}
.intro-content .mode-choice.mode-maze .mode-round{background:radial-gradient(circle,#fff5df,#cfdebc)!important}
.intro-content .mode-choice.mode-maze .mode-round img{width:94%!important;height:94%!important;object-fit:contain!important}
@media(orientation:landscape) and (max-height:530px){.intro-content .mode-choices{grid-template-columns:repeat(5,minmax(0,1fr))!important}}


/* source: drive-photo-v47.css */
/* Full illustrated city carpet: image and navigation use identical 390×510 coordinates. */
.drive-photo-game .drive-map-wrap{width:min(100%,445px)!important;max-height:none!important;filter:drop-shadow(0 5px 8px #3f684e5b)!important;touch-action:none}
.drive-photo-game #driveMap{display:block!important;width:100%!important;height:auto!important;aspect-ratio:390/510!important;border:5px solid #b2d58d!important;border-radius:24px!important;overflow:hidden!important;touch-action:none!important;box-shadow:0 0 0 3px #fff2ba,0 7px 8px #6a8e6655!important}
.drive-photo-game .drive-instruction{height:70px!important;border-radius:22px!important;background:linear-gradient(90deg,#ffedc5,#d7eec0)!important}
.drive-photo-game .drive-instruct-car{display:flex!important;align-items:center!important;justify-content:center!important;width:70px!important;height:65px!important}
.drive-photo-game .drive-instruct-car svg{height:64px!important;width:48px!important}
.drive-photo-game .drive-instruct-target{display:flex!important;align-items:center!important;justify-content:center!important}
.drive-photo-game .drive-arrow{font-size:32px!important}
.drive-photo-game .drive-rotator{transform-origin:0 0;will-change:transform}
.drive-photo-game .drive-photo-target{pointer-events:none;animation:zw-goal-ring 1.6s ease-in-out infinite alternate}
.drive-photo-game .drive-caption{color:#538259!important;font-size:clamp(18px,5.1vw,22px)!important}
@keyframes zw-goal-ring{0%{opacity:.65}100%{opacity:1}}
@media(max-height:820px) and (orientation:portrait){.drive-photo-game .drive-map-wrap{width:min(100%,calc((100dvh - 246px)*390/510),405px)!important}}
@media(orientation:landscape) and (max-height:520px){.drive-photo-game .drive-map-wrap{width:min(calc((100dvh - 72px)*390/510),100%)!important}.drive-photo-game .drive-instruction{height:65px!important}}


/* source: visual-language-v37.css */
/* v37: Bildsprache für Kinder, lesbarer Text bleibt nur für Erwachsene und Screenreader */
.zw-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;pointer-events:none!important}
.picnic-page .picnic-scene{isolation:isolate}
.picnic-page .picnic-scene .zw-picture-order{
 position:absolute;z-index:7;top:0;left:50%;transform:translateX(-50%) rotate(-1deg);
 display:flex;align-items:center;justify-content:center;gap:4px;
 width:clamp(148px,49%,216px);max-height:103px;min-height:70px;padding:6px;
 border:3px solid #ac7a52;border-radius:24px 21px 22px 19px;
 background:linear-gradient(148deg,#fff6d9,#f4e1b8);
 box-shadow:inset 1px 3px #fffef0,2px 5px #725c453a;
}
.zw-pic-amount{color:#986549;text-shadow:1px 2px #fff6d1;font-weight:1000;font-size:clamp(27px,8vw,43px);min-width:28px;line-height:1;flex-shrink:0;animation:zw-pop-in .7s cubic-bezier(.2,1.5,.4,1) both}
.zw-order-food{width:100%;min-width:0;display:flex;flex-flow:row wrap;align-items:center;justify-content:center;align-content:center;gap:0 2px;max-height:90px}
.zw-mini-food{display:grid;place-items:center;flex:0 0 clamp(22px,6.5vw,32px);width:clamp(22px,6.5vw,32px);height:clamp(22px,6.5vw,32px);
 filter:drop-shadow(1px 1px #7b664340);animation:zw-pop-in .35s cubic-bezier(.15,1.5,.4,1) both;animation-delay:calc(var(--i) * 95ms)}
.zw-mini-food .extra-food-icon{width:100%;height:100%}
.zw-pic-progress{position:relative;z-index:6;min-height:23px;width:min(100%,355px);margin:0 auto 2px;display:flex;align-items:center;justify-content:center}
.zw-progress-pips{display:flex;align-items:center;justify-content:center;gap:clamp(3px,1.5vw,8px);flex-wrap:nowrap}
.zw-progress-pips>span{display:grid;place-items:center;width:clamp(15px,4.3vw,23px);height:clamp(15px,4.3vw,23px);border:2px solid #9f8562;background:#fff2d1;border-radius:50%;box-shadow:inset 1px 1px #fff8e8;transition:background .25s ease;flex-shrink:0}
.zw-progress-pips>span.is-full{background:#c7e3b8;border-color:#739871;animation:zw-pop-in .35s cubic-bezier(.2,1.5,.4,1)}
.zw-progress-pips svg{width:90%;height:90%}
.picnic-page .extra-food-choice.zw-hint-choice,.feeding-page .extra-food-choice.zw-hint-choice{position:relative;z-index:2;animation:zw-wanted-pulse 2.25s ease-in-out infinite!important;outline:3px dashed #ffecae;outline-offset:3px}
.picnic-page .extra-food-tray{position:relative}
.picnic-page .extra-food-tray:after{content:"›";position:sticky;right:0;color:#946f4f;background:#ffebc790;font-size:35px;line-height:1;flex:0 0 18px;pointer-events:none;animation:zw-arrow-nudge 1.5s ease-in-out infinite}
.zw-moving-demo{position:absolute;z-index:13;left:var(--sx);top:var(--sy);width:42px;height:42px;pointer-events:none;opacity:0;will-change:transform,opacity;
 transform:translate(-50%,-50%);filter:drop-shadow(1px 3px 2px #775c4370);
 animation:zw-demonstrate-food 5.8s cubic-bezier(.42,.01,.53,1) 1.8s infinite}
.zw-moving-demo svg{width:100%;height:100%;display:block}
.picnic-page.zw-happy-complete .zw-moving-demo{animation:none;opacity:0}
.picnic-page.zw-happy-complete .zw-picture-order{animation:zw-order-happy .75s ease-in-out 2}
.picnic-page .extra-mouse,.picnic-page .extra-hedgehog{transform-origin:50% 88%;animation:zw-friendly-bob 2.4s ease-in-out infinite}
.picnic-page .extra-hedgehog{animation-delay:-1.2s}
.picnic-page .extra-next-ready{width:74px!important;height:66px!important;min-width:74px!important;border-radius:50%!important;display:grid;place-items:center!important;padding:5px!important;background:#f1d59a;border:4px solid #946f4b!important}
.picnic-page .extra-next-ready svg{width:44px;height:44px}
.feed-select .extra-animal-choice .extra-animal-round{animation:zw-friendly-bob 3.2s ease-in-out infinite}
.feed-select .extra-animal-choice:nth-child(2) .extra-animal-round{animation-delay:-.75s}
.feed-select .extra-animal-choice:nth-child(3) .extra-animal-round{animation-delay:-1.5s}
.feed-select .extra-animal-choice:nth-child(4) .extra-animal-round{animation-delay:-2.25s}
.feed-goal-art .zw-goal-pips{display:none}
.feeding-page .feed-goal-food{animation:zw-friendly-bob 2s ease-in-out infinite}
.kitchen-page .kitchen-task{position:relative}
.kitchen-task .zw-kitchen-count-image{display:flex;align-items:center;justify-content:center;gap:10px;height:41px;width:100%}
.zw-kitchen-big-number{color:#a0714b;font-weight:1000;font-size:clamp(28px,8vw,39px);text-shadow:1px 2px #fff6df}
.zw-kitchen-count-image>svg{color:#6fa17c;width:30px;height:30px;animation:zw-arrow-nudge 1.4s ease-in-out infinite}
.zw-kitchen-dish-symbol{height:38px;width:38px}
.zw-kitchen-dish-symbol svg{height:100%;width:100%}
.kitchen-page .kitchen-task .kitchen-examples{gap:3px}
.kitchen-page .kitchen-circle.zw-hint-choice{animation:zw-wanted-pulse 2.5s ease-in-out infinite}
.kitchen-page .zw-kitchen-visual-instruction{display:flex;align-items:center;justify-content:center;gap:16px;width:min(100%,320px);height:76px;min-height:60px;margin:3px auto 1px;background:#fff0c8ce;border:3px solid #a67f55;border-radius:24px;box-shadow:inset 0 3px #fff9df}
.zw-kitchen-visual-instruction>span{width:64px;height:64px;display:grid;place-items:center}
.zw-kitchen-visual-instruction>svg{width:39px;height:39px;color:#649c7c;animation:zw-arrow-nudge 1.3s ease-in-out infinite}
.zw-kitchen-visual-instruction svg{width:100%;height:100%;overflow:visible}
.kitchen-page .kitchen-recipe-button .kitchen-round{animation:zw-friendly-bob 3.4s ease-in-out infinite}
.kitchen-page .kitchen-recipe-button:nth-child(even) .kitchen-round{animation-delay:-1.7s}
.kitchen-page .kitchen-friend img{transform-origin:50% 87%;animation:zw-friendly-bob 2.4s ease-in-out infinite}
.kitchen-page .kitchen-friend:nth-child(2) img{animation-delay:-1.2s}
.kitchen-page .kitchen-eating img{animation:kitchen-nibble .29s ease-in-out 5}
.kitchen-page .zw-kitchen-winner{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;height:50px;animation:zw-pop-in .5s both}
.zw-kitchen-winner svg{width:39px;height:39px}
.kitchen-play-again[data-zw-icon="1"]{min-width:68px!important;width:77px!important;min-height:65px!important;height:65px!important;border-radius:50%;display:grid;place-items:center;font-size:0;padding:5px}
.kitchen-play-again[data-zw-icon="1"] svg{height:47px;width:47px}
.zw-connect-guide{height:43px;display:flex;align-items:center;justify-content:center;gap:7px;color:#71977d;margin:3px auto}
.zw-connect-guide svg{width:35px;height:35px;animation:zw-friendly-bob 1.9s ease-in-out infinite}
.zw-connect-mini{display:grid;place-items:center;background:#fff5d5;border:3px solid #b58c67;border-radius:50%;height:36px;width:36px;color:#806445;font-size:21px;font-weight:950}
.zw-connect-guide.zw-color-selected .zw-connect-mini{background:#bfe4cf;border-color:#6c9b75}
.connect-actions button[data-zw-icon="1"],.drive-controls button[data-zw-icon="1"]{width:55px;min-width:55px;min-height:53px;height:53px;border-radius:50%;padding:7px;display:grid;place-items:center;font-size:0}
.connect-actions button[data-zw-icon="1"] svg,.drive-controls button[data-zw-icon="1"] svg{width:36px;height:36px}
.drive-page .drive-instruction{animation:zw-friendly-bob 2.2s ease-in-out infinite}
.drive-page .drive-car{transform-origin:center}
.zw-drive-motion-cue{position:absolute;z-index:4;left:25%;bottom:6%;width:36px;height:36px;color:#fff7d6;opacity:.8;pointer-events:none;transform:rotate(-45deg);animation:zw-arrow-nudge 1.5s ease-in-out infinite}
.zw-drive-motion-cue svg{width:100%;height:100%}
.zw-math-answer-cue{height:30px;display:flex;justify-content:center;color:#6b9976;transform:rotate(90deg);animation:zw-math-point 2s ease-in-out infinite}
.zw-math-answer-cue svg{width:30px;height:30px}
.zw-win-stars{display:flex;align-items:center;justify-content:center;gap:14px;height:40px;width:100%}
.zw-win-stars svg{height:35px;width:35px;animation:zw-pop-in .6s cubic-bezier(.2,1.5,.4,1) both}
.zw-win-stars svg:nth-child(2){animation-delay:.25s}
.zw-win-stars svg:nth-child(3){animation-delay:.45s}
.bottom-actions #nextBtn[data-zw-icon="1"]{min-width:68px!important;width:75px!important;height:65px!important;min-height:65px;border-radius:50%!important;display:grid;place-items:center;padding:5px}
.bottom-actions #nextBtn[data-zw-icon="1"] svg{width:43px;height:43px}
@keyframes zw-pop-in{0%{transform:scale(.5);opacity:.15}70%{transform:scale(1.12);opacity:1}100%{transform:scale(1);opacity:1}}
@keyframes zw-friendly-bob{0%,100%{transform:translateY(0) rotate(-1.4deg)}50%{transform:translateY(-5px) rotate(2deg)}}
@keyframes zw-wanted-pulse{0%,100%{filter:drop-shadow(1px 3px 0 #7b5e4845)}50%{filter:drop-shadow(0 0 9px #fff1a4)}}
@keyframes zw-arrow-nudge{0%,100%{transform:translateX(0)}50%{transform:translateX(6px)}}
@keyframes zw-math-point{0%,100%{transform:rotate(90deg) translateX(0)}50%{transform:rotate(90deg) translateX(7px)}}
@keyframes zw-demonstrate-food{
 0%,13%{opacity:0;transform:translate(-50%,-50%) scale(.83)}
 17%{opacity:.94;transform:translate(-50%,-50%) scale(1)}
 27%{opacity:1;transform:translate(calc(-50% + var(--dx30)),calc(-50% + var(--dy30) - 27px)) scale(1.05)}
 44%{opacity:.96;transform:translate(calc(-50% + var(--dx70)),calc(-50% + var(--dy70) - 30px)) scale(.96)}
 53%{opacity:0;transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) scale(.65)}
 100%{opacity:0;transform:translate(-50%,-50%)}
}
@keyframes zw-order-happy{0%,100%{transform:translateX(-50%) rotate(-1deg)}50%{transform:translateX(-50%) rotate(2deg) scale(1.06)}}
@media (max-height:720px) and (orientation:portrait){
 .picnic-page .picnic-scene .zw-picture-order{min-height:51px;max-height:73px;padding:4px;width:clamp(130px,49%,170px)}
 .zw-pic-amount{font-size:29px}
 .zw-mini-food{flex-basis:23px;width:23px;height:23px}
 .zw-pic-progress{min-height:18px}
 .zw-progress-pips>span{height:15px;width:15px}
 .kitchen-task .zw-kitchen-count-image{height:29px}
 .zw-kitchen-big-number{font-size:29px}
 .zw-kitchen-dish-symbol{width:29px;height:29px}
 .kitchen-page .kitchen-task{min-height:80px}
 .kitchen-page .kitchen-task .kitchen-examples{min-height:32px}
 .kitchen-page .zw-kitchen-visual-instruction{height:52px;min-height:52px}
 .zw-kitchen-visual-instruction>span{width:45px;height:45px}
 .zw-kitchen-visual-instruction>svg{width:26px;height:26px}
 .zw-win-stars{height:25px}
 .zw-win-stars svg{width:26px;height:26px}
}
@media (orientation:landscape) and (max-height:520px){
 .picnic-page .picnic-scene .zw-picture-order{width:135px;min-height:57px;max-height:85px;top:-10px}
 .zw-mini-food{flex-basis:20px;width:20px;height:20px}
 .zw-pic-amount{font-size:25px}
 .picnic-page .zw-pic-progress{grid-column:1;grid-row:3;height:20px}
 .picnic-page .extra-status{grid-column:1;grid-row:3;visibility:hidden}
 .kitchen-task .zw-kitchen-count-image{height:28px}
 .zw-kitchen-big-number{font-size:24px}
 .zw-kitchen-dish-symbol{height:28px;width:28px}
 .kitchen-page .zw-kitchen-visual-instruction{grid-column:1;grid-row:4;min-height:40px;height:40px}
 .zw-kitchen-visual-instruction>span{width:30px;height:30px}
 .zw-kitchen-visual-instruction>svg{width:27px;height:27px}
 .zw-connect-guide{height:28px;margin:0}
 .zw-connect-guide svg{width:24px;height:24px}
 .zw-connect-mini{width:25px;height:25px;font-size:16px}
}
@media(prefers-reduced-motion:reduce){
 .zw-mini-food,.zw-math-answer-cue,.zw-moving-demo,.zw-picture-order,.zw-hint-choice,.zw-goal-pips,.kitchen-page .kitchen-friend img,.kitchen-page .kitchen-recipe-button .kitchen-round{animation:none!important}
}

/* Image-first guarantees even if the visual-language controller has not run yet. */
.picnic-page .picnic-scene>.zw-picture-order{display:flex!important;visibility:visible!important;opacity:1!important;z-index:10!important}
.picnic-page .picnic-scene .extra-bubble{display:none!important}
.picnic-page .zw-picture-order .zw-order-food .extra-food-icon{width:100%!important;height:100%!important}
.picnic-page .picnic-scene:has(.extra-mouse) .zw-picture-order{left:58%!important}
.picnic-page .picnic-scene:has(.extra-hedgehog) .zw-picture-order{left:42%!important}
@media(max-width:380px){.picnic-page .picnic-scene .zw-picture-order{min-height:70px!important;max-height:94px!important;width:clamp(138px,50%,190px)!important}.zw-mini-food{flex-basis:clamp(24px,6.5vw,31px)!important}}


/* source: unified-storyworld-v41.css */

/* Consistent Zählwiese characters: same outfits, colors, rounded illustrated style. */
.intro-content .intro-scene{
 height:clamp(204px,30dvh,275px)!important;
 width:min(100%,440px)!important;max-width:440px!important;
 margin:0 auto 3px!important;overflow:visible!important
}
.zw-slide-art{width:100%!important;height:100%!important;min-height:0!important;display:grid!important;place-items:center!important}
.zw-hero-art.zw-slide-art>.zw-playground-image{
 width:auto!important;height:100%!important;max-width:100%!important;max-height:100%!important;
 object-fit:contain!important;border:0!important;border-radius:0!important;
 filter:drop-shadow(1px 3px 2px #55724c20)!important;
 -webkit-mask-image:none!important;mask-image:none!important;
}
.zw-slide-art .zw-slide-friend{border:none!important}
.zw-slide-art .zw-slide-friend-name{bottom:-4px!important;color:#fff6d7!important}
.peek-mouse,.peek-hedgehog,.extra-mouse,.extra-hedgehog,.kitchen-friend img{
 filter:drop-shadow(1px 4px 2px #766d5c40)!important;
 image-rendering:auto;object-fit:contain
}
.hunt-board .zw-mascot-decor,.connect-board .zw-mascot-decor{
 position:absolute;bottom:2px;width:53px;height:58px;z-index:1;
 pointer-events:none;opacity:.72;filter:drop-shadow(1px 2px 2px #6f7f7140)
}
.hunt-board .zw-mascot-decor.left,.connect-board .zw-mascot-decor.left{left:2px}
.hunt-board .zw-mascot-decor.right,.connect-board .zw-mascot-decor.right{right:2px}
@media(max-height:760px) and (orientation:portrait){
 .intro-content .intro-scene{height:clamp(152px,25dvh,203px)!important}
 .intro-content .mode-round{width:clamp(60px,19vw,84px)!important;height:clamp(60px,19vw,84px)!important}
 .intro-content .mode-label{font-size:clamp(11px,3.35vw,14px)!important}
}
@media(orientation:landscape) and (max-height:520px){
 .intro-content .intro-scene{height:clamp(112px,35dvh,158px)!important}
}


/* source: storybook-premium-v49.css */
/* Zählwiese V49 · One premium illustrated world across EVERY game
   Uses the color language, original illustrations and wood framing from approved homepage.
   Gameplay layout, clickable controls, motion physics and touch events stay untouched. */
:root{
 --zw-wood-dark:#96623c;--zw-wood:#bf8250;--zw-wood-light:#fbe2a6;
 --zw-grass:#7bbd5b;--zw-sky:#76c6eb;--zw-cream:#fff1c9;
 --zw-border:#9a704d;--zw-shadow:#6b604751;--zw-honey:#f4c874;
 --zw-flower:#e994ab;
}
body:has(.main-content:not(.intro-content)) .device{
 background-color:#8ac66f!important;
 background-image:url('/gameworld-v49.webp')!important;
 background-size:100% 100%!important;
 background-position:center center!important;
 background-repeat:no-repeat!important;
}
body:has(.main-content:not(.intro-content)) .device:after{
 box-shadow:inset 0 0 65px #fff2a32a!important;pointer-events:none;
}
body:has(.main-content:not(.intro-content)) .app-header:not(.home-header){
 background:transparent!important;border:0!important;box-shadow:none!important;
 position:relative!important;z-index:6!important;
}
body:has(.main-content:not(.intro-content)) .app-header .brand{opacity:0!important;pointer-events:none!important;max-width:0!important;width:0!important;overflow:hidden!important}
body:has(.main-content:not(.intro-content)) .app-header .header-tools{width:100%!important;display:flex!important;justify-content:flex-start!important}
body:has(.main-content:not(.intro-content)) .zw-go-home{
 background:linear-gradient(170deg,#fff2c6,#edbc7c)!important;
 border:3px solid #a77446!important;border-radius:25px!important;
 color:#765136!important;min-width:116px!important;min-height:48px!important;
 box-shadow:inset 0 2px #fff5d8,1px 4px #855b3d8c,0 6px 11px #5f793b35!important;
 font-weight:950!important;letter-spacing:-.25px!important;
}
body:has(.main-content:not(.intro-content)) .zw-go-home:active{transform:translateY(3px)!important}
body:has(.main-content:not(.intro-content)) .main-content{color:#6e5137}
body:has(.main-content:not(.intro-content)) :is(.main-content h1,.main-content h2,.wood-heading){
 text-shadow:0 2px #fff5d7,0 0 7px #fff1cf8c;
}
body:has(.main-content:not(.intro-content)) :is(.main-content .instruction,.extra-page .extra-caption,.kitchen-subtitle,.drive-caption,.hunt-caption,.family-maze-instruction){
 color:#426b40!important;text-shadow:0 1px 1px #fff4d6,0 0 4px #fff5d7!important;font-weight:900!important;
}
/* Shared gold oak cards, soft inner light, distinct from the inexpensive old beige flat panels. */
body:has(.main-content:not(.intro-content)) :is(.progress .wood-heading,.extra-top .wood-heading,.kitchen-title.wood-heading){
 background:linear-gradient(155deg,#fff0bd 0%,#f8d99a 45%,#dea965 100%)!important;
 border:4px solid #ac7949!important;border-radius:18px!important;
 color:#7a4c2d!important;box-shadow:inset 0 0 0 2px #fff8d9,2px 5px #8a603d73,0 6px 15px #5b844d35!important;
 filter:none!important;
}
body:has(.main-content:not(.intro-content)) .progress-dot{
 background:#fff6d0!important;border:2px solid #bd9258!important;
 box-shadow:0 2px 0 #695d4773!important;
}
body:has(.main-content:not(.intro-content)) .progress-dot.done{background:#83cb73!important;border-color:#5f9c58!important}
body:has(.main-content:not(.intro-content)) .progress-dot.current{background:#ffce5b!important;border-color:#a67738!important;box-shadow:0 0 0 2px #fff2c1,0 3px 0 #866249!important}
body:has(.main-content:not(.intro-content)) .progress-track{filter:drop-shadow(0 1px 1px #fff9cf)}
/* Counting: rich forest-board and crisp illustrated number cards. */
body:has(.main-content .equation-area) .equation-area{
 border-color:#a97143!important;border-width:7px!important;border-radius:23px!important;
 background:radial-gradient(ellipse at 45% 25%,#2e755c,#174c44 76%,#123b35)!important;
 box-shadow:inset 0 0 0 3px #f1dba8,inset 0 0 22px #083e29a4,2px 6px 0 #845b3b8a,0 10px 18px #38673c4d!important;
}
body:has(.main-content .equation-area) .equation-area .eyebrow{color:#fff2c5!important;text-shadow:1px 2px #134b40!important}
body:has(.main-content .equation-area) .visual-board{gap:12px!important;margin-top:7px!important}
body:has(.main-content .equation-area) .count-card{
 background:linear-gradient(142deg,#fff8d7e8 5%,#f4e5beef 92%)!important;
 border:4px solid #af7e4e!important;border-radius:25px!important;
 box-shadow:inset 0 0 0 3px #fff8df,2px 6px 0 #816043a1,0 10px 20px #47734630!important;
 transform:none!important;
}
body:has(.main-content .equation-area) .count-card:nth-child(2){background:linear-gradient(142deg,#f2fbe5f2 0%,#d3e8bdf5 100%)!important}
body:has(.main-content .equation-area) .count-card .card-num{
 top:5px!important;left:9px!important;min-width:34px;height:34px;
 display:grid;place-items:center;color:#8c603d!important;font-size:22px!important;
 background:#fff6d5;border:2px solid #c79f64;border-radius:50%;
 box-shadow:0 2px #97775477;z-index:3;
}
body:has(.main-content .equation-area) .answer{
 background:linear-gradient(145deg,#fff3bc,#e9bf75)!important;
 border:4px solid #b2804f!important;border-radius:24px!important;
 box-shadow:inset 0 0 0 3px #fff9dd,2px 6px 0 #806346a1!important;
 color:#815131!important;transition:filter .15s,transform .15s!important;
}
body:has(.main-content .equation-area) .answer:nth-child(2){background:linear-gradient(145deg,#e3f4ca,#94cd80)!important;border-color:#7eac68!important}
body:has(.main-content .equation-area) .answer:nth-child(3){background:linear-gradient(145deg,#d9ecf7,#8dbde1)!important;border-color:#6699bd!important}
body:has(.main-content .equation-area) .answer:nth-child(4){background:linear-gradient(145deg,#ffe5e5,#e9a7b9)!important;border-color:#bf859a!important}
body:has(.main-content .equation-area) .answer:active{filter:brightness(1.08);transform:scale(.96) translateY(3px)!important}
body:has(.main-content .equation-area) .answer.wrong{background:#f5bec6!important;animation:wiggle .4s!important}
body:has(.main-content .equation-area) .result-visual{
 background:linear-gradient(#fff5d6ed,#e4f2cbee)!important;border:5px solid #a67d55!important;
 border-radius:26px!important;box-shadow:inset 0 0 0 2px #fffcdf,2px 5px #8b665f66!important;
}
body:has(.main-content .equation-area) .next-button,
body:has(.main-content:not(.intro-content)) :is(.zw-guide-start,.next-button,.big-button){
 background:linear-gradient(#f9e3a0,#f1bb63)!important;border:4px solid #aa784b!important;
 color:#6f4c31!important;border-radius:28px!important;box-shadow:inset 0 2px #fff7cd,2px 5px #92643a82!important;
}
/* Picture-first activities: picnic, feeding, baking and all round selectors. */
.extra-page .extra-scene,.kitchen-page .kitchen-scene{
 filter:drop-shadow(0 3px 3px #5c743d40);
}
.extra-page .picnic-basket-inner{
 background:linear-gradient(153deg,#fff1c7ed,#e1b879f5)!important;
 border:4px solid #a8794a!important;border-radius:24px!important;
 box-shadow:inset 0 0 0 3px #ffface,inset 0 4px #fff8dc!important;
}
.extra-page .picnic-basket-front{border-color:#95653f!important;box-shadow:inset 0 5px #f6cc9588,0 3px 3px #795d4869!important}
.extra-page .picnic-cloth{filter:saturate(1.14)}
.extra-page .feed-choice-grid :is(button,.feed-choice){filter:drop-shadow(0 3px 3px #6d693f50)}
.extra-page .feed-choice-grid :is(button,.feed-choice):active{transform:scale(.97)!important;filter:drop-shadow(0 1px 2px #77704c55)}
.extra-page .fruit-tray,.extra-page .food-picker,.extra-page .food-tray{
 background:linear-gradient(135deg,#fdf0c3df,#c7dfa5d9)!important;
 border:3px solid #ae814e!important;border-radius:25px!important;
 box-shadow:inset 0 2px #fff9dc,0 4px #90734e66!important;
}
.extra-page .fruit-piece,.extra-page .food-option,.extra-page .fruit-option,
.kitchen-page .ingredient-token,.kitchen-page .kitchen-round{
 filter:drop-shadow(0 2px 2px #795e3b5a)!important;
}
.kitchen-page .kitchen-round,.extra-page .feed-portrait{
 border:4px solid #d1a56d!important;border-radius:50%!important;
 box-shadow:0 0 0 2px #8d6246,0 4px #8c624a80!important;
}
.kitchen-page .kitchen-recipe-name{
 color:#754a2b!important;background:linear-gradient(#fff0b7,#dbad77)!important;
 border:2px solid #a37446!important;border-radius:12px!important;
 padding:4px 8px!important;text-shadow:0 1px #fff8d9!important;
 box-shadow:1px 3px #85644370!important;max-width:98%!important;
}
.kitchen-page .kitchen-recipe-button:focus-visible{outline:4px solid #ffde82;border-radius:22px}
.kitchen-page .kitchen-stage-card,.kitchen-page .kitchen-pan,.kitchen-page .kitchen-bowl{
 filter:drop-shadow(1px 4px 2px #766a4860);
}
/* Drawn connection board and crayons */
.connect-game .connect-board{
 background:linear-gradient(135deg,#fff5d3 10%,#f9e5ab 95%)!important;
 border:8px solid #b07b4c!important;border-radius:25px!important;
 box-shadow:inset 0 0 0 3px #fffcd9,inset 0 0 22px #ddab61aa,2px 6px 0 #855f41ac!important;
}
.connect-game .connect-colors{
 background:linear-gradient(135deg,#fff4d9ee,#e4eeceee)!important;
 border:3px solid #b58a5d!important;border-radius:21px!important;
 box-shadow:inset 0 2px #fff7df,0 4px #92744e73!important;
}
.connect-game .connect-crayon{background:linear-gradient(155deg,#fff8e4,var(--light))!important;border-color:#ae8b67!important;border-radius:13px!important}
.connect-game .connect-num{
 box-shadow:0 4px #80634575,inset 0 3px #fff8e5,0 0 0 2px #fff2d9!important;
}
/* Soap-bubble garden – bubbles remain truly translucent and must POP on touch */
.hunt-page .hunt-board{
 background:linear-gradient(155deg,#aee7f6da,#b9e4d2e9)!important;
 border:7px solid #ac814e!important;border-radius:28px!important;
 box-shadow:inset 0 0 0 3px #fffbd7,2px 6px #795e4088,0 9px 15px #53856a4c!important;
}
.hunt-page .hunt-number{box-shadow:inset -6px -7px 13px #6fb9d25e,inset 5px 6px 10px #ffffffd8,0 6px 8px #6489a174,0 0 0 2px #ffffff8f!important}
.hunt-page .hunt-prompt{background:linear-gradient(#fff4d2,#edc984)!important;border:3px solid #b88b59!important;border-radius:20px!important;box-shadow:1px 4px #8b684f83!important}
.hunt-page .hunt-progress>span{border-color:#d0a879!important}
/* Premium wood picture frame around all 30 illustrated maze worlds */
.family-maze-screen .family-maze-board{
 border-radius:27px!important;filter:drop-shadow(0 6px 4px #705d3f80)!important;
}
.family-maze-screen .family-maze-story{
 border:4px solid #b68555!important;border-radius:20px!important;
 box-shadow:inset 0 0 0 2px #fffbd8,2px 5px #8662429b!important;
}
.family-maze-screen .family-maze-heading h1,.hunt-page .hunt-title h1,.connect-game .connect-title h1,.drive-page .drive-heading h1{
 color:#6e4a2f!important;text-shadow:1px 2px #fff8de,0 0 6px #fff4d6b9!important;
}
/* Autoteppich is already an illustrated full city map: keep image and road snapping intact. */
.drive-photo-game #driveMap{border:6px solid #b78852!important;box-shadow:0 0 0 3px #ffecc2,0 6px 9px #866c4d77!important}
.drive-photo-game .drive-instruction{
 background:linear-gradient(130deg,#fff6d9,#f1e2b4)!important;
 border:3px solid #ae8353!important;border-radius:23px!important;
 box-shadow:inset 0 2px #fffbe5,1px 4px #99744d8c!important;
}
.drive-photo-game .drive-arrow{color:#a46f40!important}
.drive-photo-game .drive-again,.drive-photo-game .drive-next,
.connect-game .connect-secondary,.connect-game .connect-continue,
.family-maze-screen .family-maze-controls button{
 background:linear-gradient(#fff1c5,#e5b872)!important;
 border:3px solid #af814f!important;color:#77502f!important;
 border-radius:24px!important;box-shadow:inset 0 2px #fff9db,1px 4px #8662418c!important;
}
.drive-photo-game .drive-next,.connect-game .connect-continue{background:linear-gradient(#e0f2c0,#9cce82)!important;color:#50754c!important;border-color:#81a86b!important}
/* Parent coaching sheet: original book-paper colors, large controls and no plain white web-dialog. */
.zw-guide-overlay{background:#386b518a!important;backdrop-filter:blur(5px)!important;-webkit-backdrop-filter:blur(5px)!important}
.zw-guide-dialog{
 background:linear-gradient(150deg,#fff7d9,#ffedbd)!important;
 border:7px solid #ac7846!important;border-radius:30px!important;
 box-shadow:inset 0 0 0 3px #fffde8,0 13px 0 #71553b75,0 19px 24px #385d3d73!important;
}
.zw-guide-art{
 background:radial-gradient(circle,#fff8cf,#d2e8bb)!important;
 border:4px solid #dfb16e!important;box-shadow:0 3px #93704781!important;
}
.zw-guide-dialog h2{color:#8b5531!important;text-shadow:1px 2px #fff5db!important}
.zw-guide-dialog h3{color:#4b895b!important}
.zw-guide-dialog p{color:#664a36!important;font-weight:750!important}
.zw-guide-child{
 background:linear-gradient(#f7f8d7,#dfeebd)!important;
 border:3px solid #9cba73!important;border-radius:19px!important;color:#53804c!important;
}
.zw-guide-start{
 background:linear-gradient(#ffe5a1,#f1bd6d)!important;
 border:4px solid #a8784b!important;border-radius:28px!important;
 box-shadow:inset 0 2px #fff9dc,1px 5px #87613d88!important;
 color:#76502f!important;
}
.parent-panel{
 background:linear-gradient(#fff8df,#f3ddb0)!important;border:6px solid #aa7952!important;
 border-radius:28px!important;box-shadow:inset 0 0 0 3px #fff8d9,3px 7px #7c614ea3!important;
}
.parent-panel p{color:#684e39!important}.parent-panel h1{color:#7d5537!important}
.parent-panel :is(button,select){border-color:#b48751!important}
/* Keep the game readable on iPhone SE, Dynamic Island and rotated handsets. */
@media(max-width:360px){
 body:has(.main-content .equation-area) .count-card{border-width:3px!important}
 body:has(.main-content .equation-area) .answer{border-width:3px!important}
 .zw-guide-dialog{border-width:5px!important}
 .connect-game .connect-colors{border-width:2px!important}
}
@media(orientation:landscape) and (max-height:520px){
 body:has(.main-content:not(.intro-content)) .device{background-size:cover!important;background-position:center!important}
 body:has(.main-content .equation-area) .count-card{box-shadow:inset 0 0 0 2px #fff8df,1px 3px #81604380!important}
 .zw-guide-dialog{box-shadow:0 7px #78533b6b!important}
}
@media(prefers-reduced-motion:reduce){
 body:has(.main-content:not(.intro-content)) .main-content :is(.answer,.connect-num,.kitchen-round){transition:none!important}
}


/* source: animations-v50.css */
/* Zählwiese V50: picture-first picnic journey, playable destinations, gentle motion */
.zw-picnic-trip{position:absolute;inset:15% 3% 13%;z-index:28;pointer-events:none;overflow:hidden;border:5px solid #b38b5d;border-radius:29px;background:linear-gradient(180deg,#7dcced 0%,#c5edf3 35%,#b7d994 36%,#7ec26b 100%);box-shadow:inset 0 0 0 3px #fff6d4,0 11px 24px #53744c77;isolation:isolate}
.zw-trip-hills{position:absolute;inset:0;background:radial-gradient(ellipse 65% 28% at 28% 63%,#b4e392 0%,transparent 100%),radial-gradient(ellipse 90% 45% at 72% 89%,#579e5b 2%,transparent 88%),linear-gradient(0deg,#8ecb73bb 0%,transparent 42%)}
.zw-trip-flowers{position:absolute;inset:45% 0 0;background-image:radial-gradient(circle,#f3d48f 0 2px,#faeee0 3px 6px,transparent 7px),radial-gradient(circle,#e9a8c2 0 3px,#fff5df 4px 7px,transparent 8px);background-size:61px 74px,83px 95px;background-position:6px 14px,23px 57px;opacity:.86}
.zw-trip-friend{position:absolute;bottom:31%;width:clamp(100px,28vw,153px);height:auto;max-height:40%;object-fit:contain;filter:drop-shadow(1px 5px 2px #56774282);will-change:transform;opacity:1}
.zw-trip-moritz{left:-36%;transform:translate3d(0,0,0) rotate(-7deg)}
.zw-trip-igor{left:-40%;bottom:32%;width:clamp(99px,27vw,145px);transform:translate3d(0,0,0)}
.zw-trip-basket{position:absolute;bottom:27%;left:-18%;width:84px;height:57px;border:5px solid #a47950;border-radius:15px 15px 20px 20px;background:repeating-linear-gradient(90deg,#dcad73 0 11px,#b98455 11px 16px);box-shadow:0 6px 4px #5d813957;will-change:transform}
.zw-trip-basket-handle{position:absolute;left:10px;right:10px;top:-40px;height:59px;border:8px solid #b58b5d;border-bottom:0;border-radius:52% 52% 0 0}
.zw-trip-contents{position:absolute;left:19px;top:-16px;width:47px;height:46px;overflow:visible}.zw-trip-contents svg{width:100%;height:100%}
.zw-trip-blanket{position:absolute;bottom:10%;left:16%;width:68%;height:22%;min-height:75px;border:6px solid #fff5d6;border-radius:14px;background:repeating-linear-gradient(0deg,transparent 0 24px,#ffffff45 24px 33px),repeating-linear-gradient(90deg,#db99a4 0 36px,#f7cdd0 36px 70px);box-shadow:2px 4px #80695a5e;transform:scale(.05);transform-origin:center bottom;opacity:0}
.zw-trip-picnic-food{position:absolute;inset:7%;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:0}
.zw-trip-picnic-food svg{height:clamp(26px,8vw,39px);width:clamp(26px,8vw,39px);filter:drop-shadow(1px 3px 1px #7b5e5980)}
.zw-trip-sun{position:absolute;top:8%;right:15%;width:59px;height:59px;background:radial-gradient(circle,#fff5bb,#f4d372);border:4px solid #e4be6a;border-radius:50%;box-shadow:0 0 0 8px #fff9be39}
.zw-trip-start .zw-trip-moritz{animation:zw-picnic-walk-moritz 4.5s cubic-bezier(.2,.5,.5,1) both}
.zw-trip-start .zw-trip-igor{animation:zw-picnic-walk-igor 4.5s cubic-bezier(.2,.5,.5,1) both}
.zw-trip-start .zw-trip-basket{animation:zw-picnic-basket 4.5s cubic-bezier(.2,.5,.5,1) both}
.zw-trip-start .zw-trip-blanket{animation:zw-picnic-unpack 4.5s ease both}
@keyframes zw-picnic-walk-moritz{0%{transform:translateX(-8%) translateY(0) rotate(-7deg)}18%,32%,46%,59%{transform:translateX(220%) translateY(-9px) rotate(3deg)}25%,39%,54%{transform:translateX(220%) translateY(5px) rotate(-4deg)}70%,100%{transform:translateX(220%) translateY(0) rotate(2deg)}}
@keyframes zw-picnic-walk-igor{0%{transform:translateX(-4%) rotate(4deg)}18%,32%,46%,59%{transform:translateX(370%) translateY(6px) rotate(-3deg)}25%,39%,54%{transform:translateX(370%) translateY(-9px) rotate(4deg)}70%,100%{transform:translateX(370%) rotate(-2deg)}}
@keyframes zw-picnic-basket{0%{transform:translateX(-10%) translateY(0) rotate(-12deg)}15%,35%,55%{transform:translateX(255%) translateY(-6px) rotate(8deg)}25%,45%,65%{transform:translateX(255%) translateY(7px) rotate(-6deg)}70%{transform:translateX(255%) translateY(0)}85%,100%{transform:translateX(255%) translateY(75px) rotate(-5deg)}}
@keyframes zw-picnic-unpack{0%,68%{opacity:0;transform:scale(.05)}79%{opacity:1;transform:scale(1.07)}88%,100%{opacity:1;transform:scale(1)}}
.picnic-page.extra-success>.extra-next-area{position:relative;z-index:32}
.picnic-page.extra-success>.zw-picnic-trip + .extra-next-area{z-index:32}
.picnic-page.extra-success>.extra-next-area .extra-next{background:linear-gradient(#fff2bf,#edca78);box-shadow:inset 0 2px #fff8de,2px 4px #9776507b}
.picnic-page .zw-finish-sticker{display:none!important}
.picnic-page .extra-food-choice:active{transform:scale(.94)!important}
.zw-map-landmark{filter:drop-shadow(0 2px 1px #40393291)}
.zw-map-landmark.current{animation:zw-pulse-marker 1.65s ease-in-out infinite alternate;transform-box:fill-box;transform-origin:center}
@keyframes zw-pulse-marker{from{opacity:.82}to{opacity:1}}
/* Same recognizable outfits everywhere, no clipped slide fragments. */
.friend-peek-pair .peek-mouse,.friend-peek-pair .peek-hedgehog,
.extra-page img.extra-mouse,.extra-page img.extra-hedgehog,
.kitchen-friend img,.family-maze-story svg{
 object-fit:contain!important;overflow:visible!important;clip-path:none!important;-webkit-mask-image:none!important;
}
.friend-peek-pair .peek-mouse,.friend-peek-pair .peek-hedgehog{max-height:120px!important;transform-origin:center bottom!important}
.friend-peek-pair img{filter:drop-shadow(0 3px 2px #42734355)!important}
/* An electric cake mixer actually moves its two beaters, aerates batter and splashes gently. */
.kitchen-mix .kitchen-scene{position:relative!important;isolation:isolate}
.kitchen-mix .zw-working-mixer{position:absolute;left:48%;top:-5%;z-index:16;width:104px;height:145px;opacity:0;transform-origin:40% 35%;transform:translate(-50%,-7%) rotate(11deg);pointer-events:none}
.zw-working-mixer>.kitchen-svg{display:block;width:94px;height:100px;filter:drop-shadow(1px 4px 3px #7d705f8a)!important}
.zw-mixer-beater{position:absolute;bottom:22px;height:35px;width:16px;border-radius:50%;border:3px solid #eaf0e8;box-shadow:0 0 0 2px #9aa1a2;transform-origin:center top}
.zw-mixer-beater.one{left:34px}.zw-mixer-beater.two{left:62px}
.zw-mixer-splash{position:absolute;bottom:8px;width:16px;height:7px;border-radius:50%;background:#fff1bb;opacity:0}
.zw-mixer-splash.left{left:15px}.zw-mixer-splash.right{right:5px}
.kitchen-stirring .zw-working-mixer{opacity:1;animation:zw-mixer-rock .35s ease-in-out infinite alternate}
.kitchen-stirring .zw-mixer-beater{animation:zw-mixer-spin .16s linear infinite}
.kitchen-stirring .zw-mixer-splash{animation:zw-mixer-splash .61s ease-in-out infinite alternate}
.kitchen-stirring .zw-mixer-splash.right{animation-delay:-.31s}
.kitchen-mix .kitchen-swirl{top:26%;left:28%;width:47%;height:38%;border:7px solid #fff4cf;border-left-color:transparent;border-bottom-color:#ebc78d;border-radius:50%;opacity:0!important;transform:rotate(0);font-size:0;z-index:9}
.kitchen-stirring .kitchen-swirl{opacity:.83!important;animation:zw-mixer-swirl .45s linear infinite}
.kitchen-stirring .kitchen-batter{animation:zw-mixer-batter .42s ease-in-out infinite alternate!important}
@keyframes zw-mixer-rock{from{transform:translate(-50%,-7%) rotate(5deg)}to{transform:translate(-48%,-9%) rotate(16deg)}}
@keyframes zw-mixer-spin{from{transform:scaleX(1)}to{transform:scaleX(-1)}}
@keyframes zw-mixer-splash{0%{opacity:0;transform:translateY(0) scale(.5)}40%{opacity:1}100%{opacity:0;transform:translateY(-39px) translateX(9px) scale(1.25)}}
@keyframes zw-mixer-swirl{to{transform:rotate(360deg)}}
@keyframes zw-mixer-batter{from{transform:scale(.97,.93) rotate(-3deg)}to{transform:scale(1.03,1) rotate(3deg)}}
.family-maze-screen .family-maze-board,.family-maze-screen .family-maze-svg{touch-action:none!important}
.family-maze-screen .family-maze-board{box-shadow:inset 0 0 0 2px #fff1c5,0 5px 13px #42624034}
@media(max-width:355px){.zw-picnic-trip{inset:17% 2% 14%}.zw-trip-basket{transform:scale(.8)}.kitchen-mix .zw-working-mixer{width:86px}}
@media(orientation:landscape) and (max-height:520px){.zw-picnic-trip{inset:6% 6% 12%}.zw-trip-friend{height:39%}.kitchen-mix .zw-working-mixer{top:-23%}}
@media(prefers-reduced-motion:reduce){.zw-trip-start .zw-trip-moritz,.zw-trip-start .zw-trip-igor,.zw-trip-start .zw-trip-basket,.zw-trip-start .zw-trip-blanket{animation-duration:1.7s!important}}
/* Picnic is a real illustrated walk to the meadow, not a flat color sheet. */
.zw-picnic-trip{background:#89c77f url('/gameworld-v49.webp') center bottom/100% 100% no-repeat!important}
.zw-trip-hills{opacity:.16!important}
.zw-trip-flowers{opacity:.25!important}
.zw-celebration-word{display:none!important}
/* Smaller, gentler game motion instead of abrupt visibility changes. */
.extra-animal-choice:focus-visible,.kitchen-recipe-button:focus-visible,.connect-crayon:focus-visible,.hunt-number:focus-visible{outline:4px solid #fff0a0!important;outline-offset:4px!important}
.friend-peek-pair img{animation:zw-sit-wave 4.8s ease-in-out infinite alternate}
.friend-peek-pair img:nth-child(2){animation-delay:-1.8s}
.extra-page .extra-animal-choice img{animation:zw-soft-bounce 3.8s ease-in-out infinite alternate}
.kitchen-select .kitchen-round{animation:zw-soft-bounce 3.5s ease-in-out infinite alternate}
.kitchen-select .kitchen-recipe-button:nth-child(2n) .kitchen-round{animation-delay:-1.6s}
@keyframes zw-sit-wave{0%,65%,100%{transform:rotate(0deg)}75%{transform:rotate(6deg) translateY(-3px)}85%{transform:rotate(-5deg) translateY(-1px)}}
@keyframes zw-soft-bounce{0%,60%,100%{transform:translateY(0)}72%{transform:translateY(-4px)}82%{transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.friend-peek-pair img,.extra-page .extra-animal-choice img,.kitchen-select .kitchen-round{animation:none!important}}


/* source: finger-adventure-v51.css */
/* Fingerzauber V51: a fresh toddler-first finger-counting adventure.
   All nine other games remain untouched. The five fingers use one hand anatomy. */
.finger-adventure-v51.main-content{
 display:flex!important;flex-direction:column!important;align-items:center!important;
 justify-content:flex-start!important;gap:0!important;min-width:0!important;
 width:100%!important;max-width:none!important;height:100%!important;min-height:0!important;
 padding:0 clamp(8px,3.4vw,22px) max(8px,env(safe-area-inset-bottom,0px))!important;
 overflow:hidden!important;position:relative!important;
 background:transparent!important;isolation:isolate!important;
}
.finger-adventure-v51 .finger-title-v51{
 width:min(100%,520px)!important;height:clamp(45px,7.4dvh,72px)!important;flex:none!important;
 margin:0 auto!important;display:flex!important;align-items:center!important;justify-content:center!important;
 position:relative!important;z-index:2!important;
 background:linear-gradient(160deg,#fff6dc,#efcc8e 80%)!important;
 border:5px solid #a77848!important;border-radius:21px!important;
 box-shadow:inset 0 0 0 2px #fff9e7,1px 5px 0 #7758408c,0 9px 9px #4b764e28!important;
 transform:rotate(-.5deg);
}
.finger-title-v51 h1{
 margin:0!important;font:900 clamp(23px,6.2vw,34px)/1 "Chalkboard SE","Marker Felt","Comic Sans MS",system-ui,sans-serif!important;
 color:#91603c!important;text-shadow:1px 2px #fff4d4!important;letter-spacing:.5px!important;
}
.finger-title-sun{position:absolute;left:13px;top:50%;width:24px;height:24px;border-radius:50%;background:#ffd778;border:3px solid #d99c59;transform:translateY(-50%);box-shadow:0 0 0 4px #fff4b088}
.finger-title-butterfly{position:absolute;right:18px;top:50%;width:18px;height:25px;transform:translateY(-50%) rotate(-9deg)}
.finger-title-butterfly:before,.finger-title-butterfly:after{content:"";position:absolute;top:2px;width:10px;height:16px;border:2px solid #9184b0;background:linear-gradient(#c6d9ee,#89b5d8);border-radius:85% 20% 60% 50%}
.finger-title-butterfly:before{right:48%;transform:rotate(-24deg)}.finger-title-butterfly:after{left:48%;transform:rotate(24deg)}
.finger-progress-v51{
 flex:none!important;display:flex!important;justify-content:center!important;align-items:center!important;gap:clamp(4px,1.4vw,8px)!important;
 height:clamp(21px,3.3dvh,31px)!important;width:100%!important;margin:5px auto 2px!important;
}
.finger-seed{display:block;width:clamp(11px,3.4vw,16px);height:clamp(11px,3.4vw,16px);border-radius:50%;background:linear-gradient(#fff8d6,#ead3a2);border:2px solid #ad8f63;box-shadow:inset 0 2px #fffcee,0 2px #654a3655}
.finger-seed.finished{background:linear-gradient(#b3e3a4,#72bc7f);border-color:#76a26c}
.finger-seed.current{width:clamp(17px,4.4vw,23px);height:clamp(17px,4.4vw,23px);background:linear-gradient(#ffeaa5,#f8bd59);border:3px solid #c29048;box-shadow:0 0 0 3px #fff6c5,0 3px #90694177;animation:finger-current-glow 2.3s ease-in-out infinite}
@keyframes finger-current-glow{50%{transform:scale(1.12)}}
.finger-equation-v51{
 width:min(100%,520px)!important;height:clamp(78px,13.5dvh,121px)!important;flex:none!important;
 margin:0 auto 4px!important;display:flex!important;align-items:center!important;justify-content:center!important;
 gap:clamp(2px,1.8vw,12px)!important;padding:clamp(5px,1.4vw,14px)!important;position:relative!important;
 border:6px solid #b5895b!important;border-radius:30px!important;
 background:linear-gradient(150deg,#fff9de,#f9e2b1 50%,#ebc389)!important;
 box-shadow:inset 0 0 0 3px #fffbea,2px 6px 0 #886a50a1,0 8px 12px #4d724535!important;
}
.finger-equation-v51:before,.finger-equation-v51:after{content:"";position:absolute;top:50%;width:12px;height:17px;background:#ddaf72;border:2px solid #9f794c;border-radius:50%;transform:translateY(-50%);box-shadow:inset 0 1px #ffefd0}
.finger-equation-v51:before{left:4px}.finger-equation-v51:after{right:4px}
.finger-equation-v51 .finger-eq-digit,.finger-equation-v51 .finger-eq-sign{
 font:900 clamp(43px,12.3vw,72px)/1 "Chalkboard SE","Marker Felt","Comic Sans MS",system-ui,sans-serif!important;
 display:grid!important;place-items:center!important;min-width:0!important;
 color:#7e573b!important;text-shadow:1px 2px #fffaf0!important;
}
.finger-equation-v51 .finger-eq-sign{color:#879b77!important;font-size:clamp(34px,9.5vw,56px)!important}
.finger-equation-v51 .finger-eq-question{color:#d48c50!important;animation:finger-question-bob 2.6s ease-in-out infinite}
@keyframes finger-question-bob{50%{transform:translateY(-3px) rotate(7deg)}}
.finger-garden-v51{
 position:relative!important;flex:1 1 auto!important;min-height:140px!important;width:min(100%,520px)!important;
 max-width:520px!important;margin:0 auto!important;padding:0!important;
 border-radius:30px!important;border:3px solid #e8d59b82!important;
 background:radial-gradient(ellipse 67% 65% at 48% 40%,#fff9db86,#dce9cd5a 72%,transparent)!important;
 box-shadow:inset 0 2px #fff9d04f!important;overflow:hidden!important;
}
.finger-cloud-guide{position:absolute;top:0;left:50%;transform:translateX(-50%);height:29px;width:79px;z-index:3;opacity:.85;pointer-events:none}
.finger-cloud-guide svg{height:100%;width:100%}
.finger-hands-row{position:absolute;inset:8% 2.2% 25%!important;display:flex!important;align-items:stretch!important;gap:clamp(7px,2.3vw,17px)!important;justify-content:center!important}
.finger-hand-card-v51{
 display:flex!important;position:relative!important;align-items:center!important;justify-content:center!important;
 height:100%!important;flex:1 1 48%!important;max-width:240px!important;min-width:0!important;
 margin:0!important;padding:9px 2px 13px!important;
 border:5px solid #a87855!important;border-radius:30px 33px 25px 27px!important;
 background:linear-gradient(153deg,#fffce7 1%,#f8efcf 56%,#e5d6bb 100%)!important;
 box-shadow:inset 0 0 0 3px #fffdf2,2px 6px 0 #815e438c,0 9px 14px #6b7c4d25!important;
 overflow:hidden!important;touch-action:manipulation!important;transition:filter .15s!important;cursor:pointer!important;
}
.finger-card-right{background:linear-gradient(148deg,#eff9e9 0%,#d9edce 74%,#bdd8b6 100%)!important;border-color:#7fa377!important}
.finger-hand-card-v51:focus-visible{outline:4px solid #fff0a0;outline-offset:2px}
.finger-hand-card-v51:active{filter:brightness(1.08)}
.finger-card-tape{position:absolute;top:-4px;left:40%;width:24%;height:12px;border-radius:3px 3px 7px 7px;background:#f2d99cd9;box-shadow:inset 0 1px #fff6ce;transform:rotate(-4deg);z-index:2}
.finger-card-right .finger-card-tape{background:#cadcaccf;transform:rotate(4deg)}
.finger-card-num{position:absolute;top:8px;left:9px;width:clamp(31px,8vw,44px);height:clamp(31px,8vw,44px);display:grid;place-items:center;border-radius:50%;background:#fff1c5;border:3px solid #c8a06d;color:#8c5b42;font:900 clamp(20px,6vw,28px)/1 "Chalkboard SE",system-ui,sans-serif;box-shadow:inset 0 1px #fff8da,0 2px #a3835955;z-index:4}
.finger-card-right .finger-card-num{background:#e1f3cf;border-color:#96b67b;color:#567b4d}
.finger-card-picture{width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:visible;z-index:1}
.finger-adventure-v51 .finger-card-picture .hand-svg{
 display:block!important;width:132%!important;height:105%!important;max-width:none!important;max-height:none!important;min-width:0!important;object-fit:contain!important;
 position:relative!important;margin:0!important;
 filter:drop-shadow(2px 4px 1px #93715639)!important;
 transform:translateX(7%) translateY(1%)!important;
 animation:finger-doodle-breathe 4s ease-in-out infinite!important;
}
.finger-card-right .hand-svg{animation-delay:-1.7s!important}
@keyframes finger-doodle-breathe{0%,65%,100%{transform:translateX(7%) translateY(1%) rotate(0deg)}78%{transform:translateX(7%) translateY(-4%) rotate(-2deg)}}
.finger-hand-card-v51.finger-tapped .hand-svg{animation:finger-doodle-tap .58s ease-in-out 1!important}
@keyframes finger-doodle-tap{0%,100%{transform:translateX(7%) translateY(1%) rotate(0)}35%{transform:translateX(7%) translateY(-8%) rotate(9deg)}72%{transform:translateX(7%) translateY(1%) rotate(-6deg)}}
.finger-card-seeds{position:absolute;bottom:5px;left:0;right:0;display:flex;justify-content:center;align-items:center;gap:5px;z-index:3}
.finger-card-seeds i,.finger-result-dots i{display:block;width:clamp(8px,2.4vw,12px);height:clamp(8px,2.4vw,12px);border-radius:50%;background:#f8bf6e;border:2px solid #c28e55;box-shadow:0 0 0 1px #fff3d2}
.finger-card-right .finger-card-seeds i{background:#8ecaa2;border-color:#74a989}
.finger-card-sparkle{position:absolute;top:36%;left:44%;width:18px;height:18px;border:3px solid #e5ac6f;border-radius:50%;opacity:0;pointer-events:none;z-index:3}
.finger-hand-card-v51.finger-tapped .finger-card-sparkle{animation:finger-spark-pop .7s ease-out}
@keyframes finger-spark-pop{0%{opacity:1;transform:scale(.3)}100%{opacity:0;transform:scale(3)}}
.finger-friends-v51{position:absolute;bottom:0;left:0;width:100%;height:25%;display:flex;align-items:flex-end;justify-content:space-between;padding:0 8%;pointer-events:none;z-index:4}
.finger-friends-v51 img{display:block;width:auto!important;height:100%!important;max-width:40%!important;object-fit:contain!important;overflow:visible;clip-path:none!important;filter:drop-shadow(1px 4px 2px #576f405e)!important;animation:finger-friend-greet 4.5s ease-in-out infinite!important;transform-origin:center bottom}
.finger-friends-v51 .finger-igor{animation-delay:-2s!important}
@keyframes finger-friend-greet{0%,60%,100%{transform:rotate(0)}74%{transform:rotate(7deg) translateY(-3px)}84%{transform:rotate(-4deg)}}
.finger-heart{width:22px;height:22px;align-self:center;margin-top:10px;position:relative;transform:rotate(-45deg);background:#e9a0b5;border:2px solid #b77c8f;border-radius:3px;box-shadow:2px 2px #fff2deb0}
.finger-heart:before,.finger-heart:after{content:"";position:absolute;width:20px;height:20px;background:#e9a0b5;border-radius:50%}
.finger-heart:before{top:-12px;left:-2px}.finger-heart:after{left:10px;top:-2px}
.finger-pick-v51{flex:none;width:min(100%,520px)!important;height:clamp(105px,18.5dvh,158px)!important;margin:0 auto!important;padding:0 0 2px!important;position:relative;z-index:5;display:flex;flex-direction:column;justify-content:flex-end;align-items:center}
.finger-pick-signal{width:clamp(75px,23vw,120px);height:clamp(17px,3.3dvh,30px);opacity:.9;display:flex;align-items:center;justify-content:center}
.finger-pick-signal svg{width:100%;height:100%;filter:drop-shadow(0 2px #a781587b)}
.finger-answers-v51{display:flex!important;align-items:center!important;justify-content:space-around!important;gap:clamp(7px,2vw,18px)!important;width:100%!important;min-height:0!important;height:clamp(75px,13dvh,116px)!important;padding:0!important;margin:0!important}
.finger-adventure-v51 .finger-answer-v51{
 display:flex!important;align-items:center!important;justify-content:center!important;flex:1 1 30%!important;
 width:auto!important;min-width:0!important;max-width:180px!important;height:100%!important;min-height:0!important;
 border:5px solid #b48857!important;border-radius:clamp(22px,7vw,33px)!important;
 color:#895a3d!important;background:linear-gradient(160deg,#fff3cb,#eaba7f)!important;
 box-shadow:inset 0 0 0 3px #fffce5,2px 6px #89634098,0 9px 12px #4f6b4928!important;
 transform:none!important;position:relative;z-index:2;transition:filter .15s!important;
}
.finger-adventure-v51 .finger-answer-v51:nth-child(2){background:linear-gradient(160deg,#e6f6d4,#a6d194)!important;border-color:#82ae6b!important;color:#577f4e!important}
.finger-adventure-v51 .finger-answer-v51:nth-child(3){background:linear-gradient(160deg,#e6f4fa,#a8cfe1)!important;border-color:#7daabc!important;color:#587f9d!important}
.finger-adventure-v51 .finger-answer-v51:active{transform:translateY(3px)!important;filter:brightness(1.12)!important}
.finger-adventure-v51 .finger-answer-v51.wrong{animation:finger-shake-wrong .55s ease-in-out!important;background:linear-gradient(#f9d8d3,#eb9fb1)!important}
@keyframes finger-shake-wrong{0%,100%{transform:translateX(0)}25%{transform:translateX(-9px) rotate(-3deg)}55%{transform:translateX(9px) rotate(3deg)}80%{transform:translateX(-4px)}}
.finger-adventure-v51 .finger-answer-v51 .crayon-answer-number{width:74%!important;height:80%!important;display:flex!important;align-items:center!important;justify-content:center!important;filter:drop-shadow(0 1px #fff9de)}
.finger-adventure-v51 .finger-answer-v51 .crayon-answer-digit{width:clamp(34px,8vw,61px)!important;height:clamp(50px,12vw,81px)!important}
.finger-hint-v51{position:absolute!important;width:1px!important;height:1px!important;clip-path:inset(50%)!important;overflow:hidden!important}
/* Reward phase. Same drawn hand series and background, playful organic heart/star. */
.finger-adventure-v51.finger-result-v51 .finger-equation-v51{height:clamp(75px,12dvh,110px)!important}
.finger-result-garden{display:flex!important;align-items:center!important;justify-content:center!important;flex-direction:column!important;min-height:170px!important}
.finger-success-symbol{position:absolute;top:0;right:9%;width:clamp(44px,12vw,70px);height:clamp(44px,12vw,70px);z-index:4;animation:finger-star-bounce 2.8s ease-in-out infinite}
.finger-success-symbol svg{width:100%;height:100%;filter:drop-shadow(2px 3px #9a724e55)}
@keyframes finger-star-bounce{0%,60%,100%{transform:rotate(-7deg)}75%{transform:rotate(11deg) translateY(-5px)}}
.finger-result-hand-box{width:100%;height:79%;min-height:0;display:flex!important;justify-content:center!important;align-items:center!important;gap:1%;z-index:2}
.finger-adventure-v51 .finger-result-hand-box .hand-svg{width:44%!important;max-width:215px!important;height:100%!important;max-height:none!important;object-fit:contain!important;filter:drop-shadow(2px 5px 2px #957a6155)!important;animation:finger-result-appear .43s cubic-bezier(.22,1.3,.38,1)!important}
.finger-adventure-v51 .finger-result-hand-box .hand-svg:only-child{width:62%!important}
.finger-result-hand-box .mirror-hand{transform:scaleX(-1)!important}
@keyframes finger-result-appear{from{opacity:.45;transform:translateY(13px) scale(.87)}to{opacity:1;transform:translateY(0) scale(1)}}
.finger-result-dots{position:absolute;bottom:9%;display:flex;justify-content:center;align-items:center;gap:clamp(4px,1.3vw,9px);z-index:4;max-width:96%;flex-wrap:wrap}
.finger-result-dots i{width:clamp(11px,3vw,16px);height:clamp(11px,3vw,16px);animation:finger-dot-glow 1.4s ease-in-out infinite;animation-delay:calc(var(--i)*.11s)}
@keyframes finger-dot-glow{50%{transform:translateY(-4px) scale(1.1)}}
.finger-count-message-v51{position:absolute!important;width:1px!important;height:1px!important;clip-path:inset(50%)!important;overflow:hidden!important}
.finger-result-next-v51{flex:none;height:clamp(106px,19dvh,153px);width:100%;display:flex;justify-content:center;align-items:center}
.finger-adventure-v51 .finger-result-next-v51 .next-button{
 width:clamp(87px,27vw,125px)!important;height:clamp(87px,27vw,125px)!important;min-width:0!important;min-height:0!important;
 display:grid!important;place-items:center!important;padding:8px!important;border-radius:50%!important;
 background:linear-gradient(140deg,#fff4be,#efbc6d)!important;border:6px solid #aa794a!important;color:#785035!important;
 box-shadow:inset 0 0 0 3px #fff9d9,2px 6px #78573e9e!important;
}
.finger-result-next-v51 .next-button svg{width:64%;height:64%;filter:drop-shadow(0 2px #fff6ce)}
@media(max-height:650px) and (orientation:portrait){
 .finger-title-v51 h1{font-size:24px!important}
 .finger-adventure-v51 .finger-title-v51{height:42px!important;border-width:4px!important}
 .finger-progress-v51{height:21px!important;margin:2px auto!important}
 .finger-adventure-v51 .finger-equation-v51{height:67px!important;border-width:4px!important;border-radius:22px!important}
 .finger-equation-v51 .finger-eq-digit{font-size:39px!important}
 .finger-equation-v51 .finger-eq-sign{font-size:32px!important}
 .finger-adventure-v51 .finger-hand-card-v51{border-width:3px!important;padding:3px 0 8px!important;border-radius:21px!important}
 .finger-hands-row{inset:8% 2% 26%!important;gap:5px!important}
 .finger-friends-v51{height:26%!important}
 .finger-pick-v51{height:99px!important}
 .finger-answers-v51{height:73px!important}
 .finger-adventure-v51 .finger-answer-v51{border-width:3px!important;border-radius:21px!important}
 .finger-seed{width:11px;height:11px}
 .finger-result-next-v51{height:93px!important}
 .finger-card-num{width:29px;height:29px;font-size:18px}
}
@media(orientation:landscape) and (max-height:560px){
 .finger-adventure-v51.main-content{display:grid!important;grid-template-columns:40% 60%;grid-template-rows:42px 16px minmax(80px,1fr)!important;gap:1px!important;padding:0 10px 5px!important}
 .finger-adventure-v51 .finger-title-v51{grid-column:1;grid-row:1;height:39px!important;border-width:3px}
 .finger-adventure-v51 .finger-progress-v51{grid-column:1;grid-row:2;height:16px!important}
 .finger-adventure-v51 .finger-equation-v51{grid-column:1;grid-row:3;height:min(90px,45%)!important;align-self:start!important}
 .finger-adventure-v51 .finger-garden-v51{grid-column:2;grid-row:1/4;width:100%!important;height:100%!important;min-height:0!important}
 .finger-adventure-v51 .finger-pick-v51{grid-column:1;grid-row:3;align-self:end;height:48%!important;min-height:75px!important}
 .finger-adventure-v51 .finger-answer-v51{border-width:3px;height:76px!important;border-radius:20px!important}
 .finger-adventure-v51 .finger-answers-v51{height:76px!important}
 .finger-adventure-v51 .finger-pick-signal{display:none}
 .finger-adventure-v51 .finger-result-next-v51{grid-column:1;grid-row:3;align-self:end;height:45%!important}
}
@media(prefers-reduced-motion:reduce){
 .finger-adventure-v51 .hand-svg,.finger-adventure-v51 .finger-seed,.finger-adventure-v51 .finger-eq-question,.finger-adventure-v51 .finger-friends-v51 img{animation:none!important}
}

/* V51 final polish – bigger finger silhouettes, correct landscape title. */
.finger-adventure-v51 .finger-card-picture .hand-svg{height:117%!important}
@media(orientation:landscape) and (max-height:560px){
 .finger-adventure-v51 .finger-title-v51 h1{font-size:clamp(19px,3.1vw,25px)!important;letter-spacing:-.3px!important}
 .finger-adventure-v51 .finger-title-sun{width:17px;height:17px;left:6px}
 .finger-adventure-v51 .finger-title-butterfly{right:5px;transform:translateY(-50%) scale(.7)}
}


/* source: finger-book-v53.css */
﻿/* Zählwiese V53: full illustrated finger-counting game from supplied artwork.
   This scene is one authentic crayon/colored-pencil illustrated composition.
   All interaction targets map onto the real wood and paper shapes. */
#app:has(.zw-finger-book-v53){
 position:relative!important;isolation:isolate!important;
 overflow:hidden!important;width:100%!important;height:100dvh!important;min-height:100dvh!important;
 min-height:0!important;display:block!important;background:#8bca87!important;
}
body:has(.zw-finger-book-v53) .device{
 background:#80bb90!important;background-image:none!important;
}
#app:has(.zw-finger-book-v53)>.app-header{
 position:absolute!important;top:0!important;left:0!important;width:100%!important;height:0!important;
 min-height:0!important;max-height:0!important;margin:0!important;padding:0!important;
 border:0!important;background:transparent!important;box-shadow:none!important;
 overflow:visible!important;z-index:50!important;pointer-events:none!important;
}
#app:has(.zw-finger-book-v53)>.app-header .brand,
#app:has(.zw-finger-book-v53)>.app-header .header-tools{
 visibility:visible!important;opacity:1!important;display:block!important;
 overflow:visible!important;background:transparent!important;box-shadow:none!important;pointer-events:none!important;
}
#app:has(.zw-finger-book-v53)>.app-header .brand{display:none!important}
#app:has(.zw-finger-book-v53)>.app-header .zw-go-home{
 position:absolute!important;top:1.5dvh!important;left:2%!important;
 width:34%!important;height:10dvh!important;min-width:0!important;min-height:48px!important;
 border:0!important;box-shadow:none!important;background:transparent!important;
 border-radius:28px!important;opacity:0!important;pointer-events:auto!important;
 touch-action:manipulation!important;transform:none!important;z-index:51!important;
}
#app:has(.zw-finger-book-v53)>.app-header .zw-go-home:focus-visible{opacity:.4!important;background:#fff7bd!important;outline:3px solid #ffe49c!important}
#app:has(.zw-finger-book-v53) .zw-finger-book-v53.main-content{
 position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;
 min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important;
 flex:none!important;overflow:hidden!important;box-sizing:border-box!important;
 margin:0!important;padding:0!important;border:0!important;z-index:2!important;
 background:none!important;isolation:isolate!important;
}
.zw-book-art{
 position:absolute!important;inset:0!important;width:100%!important;height:100%!important;overflow:hidden!important;
 background-image:url('/finger-scene-v53.webp')!important;
 background-color:#8ac583!important;background-size:100% 100%!important;
 background-position:center center!important;background-repeat:no-repeat!important;
 isolation:isolate!important;container-type:normal!important;
}
.zw-book-sr{
 position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;
 clip-path:inset(50%)!important;white-space:nowrap!important;margin:0!important;padding:0!important;
 border:0!important;
}
.zw-book-progress{
 position:absolute!important;z-index:4!important;left:33%!important;top:16.7%!important;
 width:35%!important;height:3.5%!important;display:flex!important;justify-content:center!important;align-items:center!important;
 gap:clamp(2px,.6vw,5px)!important;
 border-radius:24px!important;background:linear-gradient(90deg,#79bdddda,#84c4dcf0,#8dcbdfee)!important;
 padding:2px 4px!important;margin:0!important;box-shadow:inset 0 1px #e9faff88!important;
}
.zw-book-step{
 display:block!important;flex:0 1 auto!important;width:clamp(9px,2.4vw,15px)!important;height:clamp(9px,2.4vw,15px)!important;
 border:2px solid #c3b18b!important;border-radius:50%!important;
 background:linear-gradient(#fff8df,#e0e3df)!important;
 box-shadow:0 2px 0 #747d6788,inset 0 1px #fff9e4!important;
}
.zw-book-step.done{background:linear-gradient(#bbdf92,#6da877)!important;border-color:#648766!important}
.zw-book-step.current{background:linear-gradient(#ffeaa6,#f5b740)!important;border-color:#b88446!important;box-shadow:0 0 0 2px #fff2cb,0 2px #7e684f!important;transform:scale(1.16)}
.zw-book-equation{
 position:absolute!important;z-index:3!important;top:22.15%!important;left:14%!important;width:72%!important;height:12.5%!important;
 display:flex!important;align-items:center!important;justify-content:center!important;gap:clamp(7px,2.7vw,20px)!important;
 border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
 font-family:"Chalkboard SE","Marker Felt","Comic Sans MS",cursive,system-ui!important;
 color:#fff4cd!important;text-align:center!important;
 filter:drop-shadow(1px 2px 0 #5677679a)!important;white-space:nowrap!important;pointer-events:none!important;
}
.zw-book-equation span,.zw-book-equation em,.zw-book-equation strong{
 font-size:clamp(38px,12vw,88px)!important;line-height:1!important;
 font-style:normal!important;font-weight:750!important;display:inline-block!important;
 text-shadow:1px 1px #f7edd6ab,-1px 0 #e5debd87,0 0 1px #fff8db!important;
 -webkit-text-stroke:.8px #fff5e0aa!important;letter-spacing:-1px!important;
}
.zw-book-equation strong{color:#ffe178!important;-webkit-text-stroke:.8px #ddaf59!important}
.zw-book-equation em{font-size:clamp(28px,9vw,68px)!important}
.zw-book-hand-pair,.zw-book-result-hands{
 position:absolute!important;inset:39.2% 7.5% auto 7.5%!important;
 width:85%!important;height:24.9%!important;display:flex!important;justify-content:space-between!important;
 align-items:center!important;gap:5%!important;z-index:5!important;
 pointer-events:auto!important;
}
.zw-book-hand-card{
 position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important;
 width:47%!important;height:100%!important;margin:0!important;padding:0!important;
 border:0!important;background:transparent!important;box-shadow:none!important;border-radius:20px!important;
 flex:none!important;touch-action:manipulation!important;overflow:hidden!important;cursor:pointer!important;
}
.zw-book-hand-card:focus-visible{outline:3px solid #ffdc79!important;outline-offset:-3px!important}
.zw-book-hand-card:active{background:#fff8bd35!important}
.zw-book-hand-card .hand-svg,
.zw-book-result-hands .hand-svg{
 display:block!important;flex:none!important;width:123%!important;height:123%!important;
 min-width:0!important;max-width:none!important;min-height:0!important;max-height:none!important;
 object-fit:contain!important;object-position:center!important;
 filter:drop-shadow(1px 3px 1px #8b694c6b)!important;
 margin:0!important;position:relative!important;
 animation:zw-book-hand-breathe 4.1s ease-in-out infinite!important;transform-origin:50% 78%!important;
}
.zw-book-hand-card:nth-child(2) .hand-svg{animation-delay:-2s!important}
@keyframes zw-book-hand-breathe{
 0%,64%,100%{transform:translateY(1%) rotate(0)}
 78%{transform:translateY(-3%) rotate(-2deg)}
}
.zw-book-hand-card.zw-book-touched .hand-svg{animation:zw-book-hand-wave .7s ease-out 1!important}
@keyframes zw-book-hand-wave{
 0%,100%{transform:rotate(0) translateY(0)}35%{transform:rotate(-9deg) translateY(-6%)}70%{transform:rotate(6deg) translateY(0)}
}
.zw-book-empty-hand{display:block;width:60%;height:60%;border-radius:50%;background:radial-gradient(circle,#fff8db92,transparent 69%);}
.zw-book-answer-row{
 position:absolute!important;left:4.85%!important;top:65.3%!important;
 width:90.2%!important;height:12.6%!important;z-index:9!important;
 display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
 column-gap:1.45%!important;align-items:center!important;margin:0!important;padding:0!important;
 background:none!important;border:0!important;box-shadow:none!important;
}
.zw-book-answer-row .zw-book-answer-value,
.zw-book-answer-row button.zw-book-answer-value{
 appearance:none!important;display:flex!important;align-items:center!important;justify-content:center!important;
 width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;max-width:none!important;
 border:0!important;outline-offset:-5px!important;border-radius:19px!important;
 background:transparent!important;box-shadow:none!important;margin:0!important;padding:0!important;
 font:900 clamp(38px,11.4vw,73px)/1 "Chalkboard SE","Marker Felt","Comic Sans MS",cursive,system-ui!important;
 color:#67482f!important;text-shadow:1px 2px 1px #fff1bb9e,-1px -1px #8b5b416b!important;
 -webkit-text-stroke:1px #745037!important;
 transition:filter .16s!important;transform:none!important;cursor:pointer!important;touch-action:manipulation!important;
}
.zw-book-answer-row .zw-book-answer-value:nth-child(2){color:#764e51!important}
.zw-book-answer-row .zw-book-answer-value:nth-child(3){color:#376882!important}
.zw-book-answer-row .zw-book-answer-value:nth-child(4){color:#55703c!important}
.zw-book-answer-row .zw-book-answer-value:focus-visible{outline:4px solid #fff5b1!important}
.zw-book-answer-row button.zw-book-answer-value:active{transform:scale(.92)!important;background:#fff9e155!important}
.zw-book-answer-row button.zw-book-answer-value.wrong{animation:zw-book-wrong .52s ease-out!important;background:#f2aba95e!important}
@keyframes zw-book-wrong{0%,100%{transform:translateX(0)}23%{transform:translateX(-7px) rotate(-3deg)}52%{transform:translateX(7px) rotate(2deg)}74%{transform:translateX(-3px)}}
.zw-book-answer-completed .zw-book-answer-value:not(.is-right){opacity:.4!important}
.zw-book-answer-completed .zw-book-answer-value.is-right{color:#376f50!important;animation:zw-book-answer-yes 1s ease-out both!important}
@keyframes zw-book-answer-yes{0%{transform:scale(1);opacity:.5}30%{transform:scale(1.16);opacity:1}100%{transform:scale(1.04)}}
.zw-book-next{
 position:absolute!important;top:85.6%!important;left:40.8%!important;width:18.7%!important;height:12.1%!important;
 border:0!important;border-radius:50%!important;background:transparent!important;box-shadow:none!important;
 z-index:10!important;touch-action:manipulation!important;cursor:pointer!important;padding:0!important;min-width:0!important;
 transition:filter .16s!important;
}
.zw-book-next:active{transform:scale(.94)!important;background:#fff4b439!important}
.zw-book-next:focus-visible{outline:4px solid #f8dc9a!important}
.zw-book-question .zw-book-next{opacity:.9}
.zw-book-question .zw-book-next.zw-book-hint-pulse{animation:zw-book-help .7s ease-in-out}
@keyframes zw-book-help{30%{transform:scale(1.08)}70%{transform:scale(.96)}}
.zw-book-hint{position:absolute!important;bottom:0;left:0;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;}
.zw-book-success .zw-book-result-hands{gap:3%;pointer-events:none!important}
.zw-book-result-hands img.hand-svg{width:50%!important;height:110%!important;max-width:50%!important;animation:zw-book-reveal .6s ease-out both!important}
.zw-book-result-hands img.hand-svg:only-child{width:50%!important;margin-left:0!important;margin-right:auto!important}
.zw-book-result-hands img.mirror-hand{transform:scaleX(-1)!important}
@keyframes zw-book-reveal{0%{opacity:.65;transform:translateY(12px) scale(.92)}100%{opacity:1;transform:translateY(0) scale(1)}}
.zw-book-reward{position:absolute!important;left:78%!important;top:33%!important;width:12%!important;height:8%!important;z-index:11!important;filter:drop-shadow(0 2px #bc8b56a8)!important;animation:zw-book-star .9s ease-in-out infinite alternate}
.zw-book-reward svg{width:100%;height:100%}
@keyframes zw-book-star{to{transform:scale(1.1) rotate(9deg)}}
.zw-book-question .zw-book-hand-card.zw-book-touched{animation:zw-book-card-spark .48s ease-in-out!important}
@keyframes zw-book-card-spark{30%{background:#ffeaa039}100%{background:transparent}}
/* narrow iPhone and larger iPad scaling */
@media(max-width:360px){
 .zw-book-equation{gap:clamp(4px,2vw,9px)!important}
 .zw-book-equation span,.zw-book-equation strong{font-size:clamp(34px,11vw,55px)!important}
 .zw-book-equation em{font-size:clamp(27px,8.3vw,40px)!important}
 .zw-book-answer-row .zw-book-answer-value{font-size:clamp(34px,10.2vw,52px)!important}
 .zw-book-hand-card .hand-svg{width:130%!important;height:127%!important}
}
@media(orientation:landscape) and (max-height:540px){
 #app:has(.zw-finger-book-v53) .zw-finger-book-v53{height:100%!important}
 .zw-book-art{background-size:100% 100%!important}
 .zw-book-answer-row .zw-book-answer-value{font-size:clamp(24px,5.4vw,47px)!important}
 .zw-book-equation span,.zw-book-equation strong{font-size:clamp(30px,7vw,58px)!important}
 .zw-book-equation em{font-size:clamp(23px,5vw,45px)!important}
 .zw-book-hand-card .hand-svg{height:125%!important}
}
@media(prefers-reduced-motion:reduce){
 .zw-book-hand-card .hand-svg,.zw-book-reward,.zw-book-answer-completed .is-right{animation:none!important}
}

/* A separate hand-painted landscape scene; no stretched people, boards or digits. */
@media(orientation:landscape) and (max-height:620px){
 .zw-book-art{background-image:url('/finger-scene-landscape-v53.webp')!important;background-size:100% 100%!important}
 #app:has(.zw-finger-book-v53)>.app-header .zw-go-home{
  top:1.4dvh!important;left:.8%!important;width:19%!important;height:16dvh!important;
 }
 .zw-book-progress{left:43%!important;top:15%!important;width:23%!important;height:4.3%!important;padding:1px!important}
 .zw-book-step{width:clamp(9px,1.6vw,13px)!important;height:clamp(9px,1.6vw,13px)!important}
 .zw-book-equation{
  left:5.5%!important;top:26.5%!important;width:35.5%!important;height:20%!important;
  gap:clamp(6px,1.2vw,12px)!important;
 }
 .zw-book-equation span,.zw-book-equation strong{font-size:clamp(32px,6.1vw,58px)!important}
 .zw-book-equation em{font-size:clamp(26px,4.9vw,49px)!important}
 .zw-book-hand-pair,.zw-book-result-hands{
  inset:auto!important;left:49.1%!important;top:19.8%!important;width:48.2%!important;height:32.8%!important;gap:1.7%!important;
 }
 .zw-book-hand-card{width:49.15%!important;height:100%!important}
 .zw-book-hand-card .hand-svg{width:110%!important;height:135%!important}
 .zw-book-result-hands img.hand-svg{width:49%!important;height:133%!important;max-width:49%!important}
 .zw-book-answer-row{left:23.3%!important;top:58.1%!important;width:60.4%!important;height:23%!important;column-gap:1.05%!important}
 .zw-book-answer-row .zw-book-answer-value{font-size:clamp(31px,5.6vw,59px)!important}
 .zw-book-next{left:90%!important;top:71.1%!important;width:9%!important;height:20%!important}
 .zw-book-reward{left:38%!important;top:41%!important;width:5.5%!important;height:11%!important}
}



/* source: finger-static-v55.css */
/* V55: Five independent, painted image files; pre-rendered right-hand partners.
  This stylesheet does not create/morph finger geometry. Only opacity/scale transitions. */
.zw-book-hand-card img.zw-fixed-hand{
 width:100%!important;height:98%!important;max-width:100%!important;max-height:100%!important;
 min-width:0!important;min-height:0!important;
 margin:0 auto!important;object-fit:contain!important;object-position:center!important;
 transform:none!important;transform-origin:center center!important;
 animation:zw-hand-static-appear .32s cubic-bezier(.22,.75,.25,1) both!important;
 filter:drop-shadow(0 3px 2px #85624967)!important;
 will-change:auto!important;
}
.zw-book-hand-card:nth-child(2) img.zw-fixed-hand{animation-delay:0s!important}
.zw-book-hand-card.zw-book-touched img.zw-fixed-hand{
 animation:zw-hand-static-tap .3s ease-out both!important;
}
.zw-book-result-hands img.zw-fixed-hand{
 width:46%!important;height:100%!important;max-width:46%!important;
 min-width:0!important;max-height:100%!important;
 object-fit:contain!important;object-position:center!important;
 transform:none!important;margin:0 auto!important;
 animation:zw-hand-static-appear .19s ease-out both!important;
 filter:drop-shadow(0 3px 2px #8562496b)!important;
}
.zw-book-result-hands img.zw-fixed-hand:only-child{
 width:86%!important;max-width:86%!important;height:100%!important;
 margin:0 auto!important;
}
.zw-book-result-hands img.zw-fixed-hand[data-hand-side="right"]{
 transform:none!important; /* The distinct right-hand image is already mirrored in the file. */
}
@keyframes zw-hand-static-appear{
 from{opacity:.6;transform:translateY(4px) scale(.965)}
 to{opacity:1;transform:translateY(0) scale(1)}
}
@keyframes zw-hand-static-tap{
 0%,100%{opacity:1;transform:scale(1)}
 55%{opacity:1;transform:scale(1.035)}
}
@media(prefers-reduced-motion:reduce){
 .zw-book-hand-card img.zw-fixed-hand,.zw-book-result-hands img.zw-fixed-hand,
 .zw-book-hand-card.zw-book-touched img.zw-fixed-hand{
   animation:none!important;transition:none!important;transform:none!important;
 }
}


/* source: finger-image-layout-v56.css */
/* V56: individual illustrated images sit within their own paper cards. */
.zw-book-result-hands img.zw-fixed-hand:only-child{
 width:46%!important;max-width:46%!important;
 height:100%!important;max-height:100%!important;
 margin:0 auto 0 0!important;
 object-fit:contain!important;
 animation:zw-hand-static-appear .2s ease-out both!important;
 transform:none!important;
}
.zw-book-result-hands img.zw-fixed-hand:not(:only-child){
 width:46%!important;max-width:46%!important;
 height:100%!important;max-height:100%!important;
 margin:0!important;
 object-fit:contain!important;
}


/* source: playful-audio-v50.css */
.zw-audio-options{display:flex;flex-direction:column;align-items:center;gap:9px;margin:16px auto;padding:14px 10px;background:linear-gradient(140deg,#eff5cf,#f9e4bc);border:3px solid #ba905d;border-radius:22px;box-shadow:inset 0 2px #fff9dd;width:100%}
.zw-audio-heading{font-size:19px;font-weight:950;color:#725238;text-align:center}
.zw-audio-switch{display:flex;align-items:center;gap:10px;justify-content:start;width:min(100%,280px);min-height:57px;background:linear-gradient(#ffebba,#e4c184);border:3px solid #aa7d50;border-radius:18px;color:#725238;font-size:18px;font-weight:900;padding:5px 12px;box-shadow:inset 0 2px #fff9d7,1px 3px #8d6a4870}
.zw-audio-switch svg{width:35px;height:35px;flex:none}
.zw-audio-switch span{margin-left:auto;padding:5px 10px;background:#f7d8c9;border-radius:13px;border:1px solid #b99070;min-width:52px;font-size:15px}
.zw-audio-switch[aria-pressed="true"] span{background:#b8e2a0;border-color:#81ad65}
.zw-audio-switch:active{transform:translateY(2px)}
@media(max-width:355px){.zw-audio-switch{font-size:16px;min-height:50px}.zw-audio-options{padding:10px 5px}}

/* source: premium-gameworld-v49.css */
/* Zaehlwiese V49 – Unified illustrated premium storyworld.
   Reuses the exact colors, warm wood, flowers and soft sunlight of the approved home artwork.
   All selectors exclude the full-image home to preserve its precise touch mapping. */
:root{
 --zw-wood:#c98b4d;--zw-wood-dark:#96633b;--zw-cream:#fff2cc;
 --zw-ink:#634829;--zw-grass:#67b25e;--zw-grass-dark:#428b51;
 --zw-sky:#9bdded;--zw-gold:#f2c667;--zw-shadow:#62492d50;
}
body:not(:has(.intro-content)){background:#a1dbb0!important}
body:not(:has(.intro-content)) .device{
 background-image:url('/gameworld-v49.webp')!important;
 background-size:100% 100%!important;
 background-repeat:no-repeat!important;
 background-color:#91ce8e!important;
}
body:not(:has(.intro-content)) .main-content{background:transparent!important}
body:not(:has(.intro-content)) .app-header{
 position:relative!important;z-index:20!important;
 background:transparent!important;box-shadow:none!important;
 border:0!important;min-height:0!important;
}
body:not(:has(.intro-content)) .app-header .zw-go-home{
 display:flex!important;align-items:center!important;justify-content:center!important;
 gap:4px!important;border:3px solid #fff1c6!important;
 border-radius:22px!important;background:linear-gradient(155deg,#fae1a2,#dfa45f)!important;
 box-shadow:inset 0 0 0 2px #a87146,0 5px 0 #76543b73,1px 6px 8px #423a2550!important;
 color:#674726!important;text-shadow:0 1px #fff8d5!important;
 font:900 clamp(14px,4.2vw,18px)/1.1 "Chalkboard SE","Marker Felt",system-ui,sans-serif!important;
 touch-action:manipulation!important;white-space:nowrap!important;min-height:48px!important;
 padding:7px 13px!important;
}
body:not(:has(.intro-content)) .app-header .zw-go-home svg{filter:drop-shadow(0 1px #fff9dc)}
body:not(:has(.intro-content)) h1,
body:not(:has(.intro-content)) h2{
 font-family:"Chalkboard SE","Marker Felt",system-ui,sans-serif!important;
 font-weight:900!important;
}
body:not(:has(.intro-content)) .main-content h1{
 color:#7a4e26!important;
 text-shadow:0 2px #fff9db,1px 3px #503d295e!important;
}
/* One family of illustrated chapter headers: rich wood-and-honey instead of pale boards. */
body:not(:has(.intro-content)) :is(.wood-heading,.extra-sign,.kitchen-title,.connect-title,.hunt-title,.drive-heading h1,.family-maze-heading h1){
 color:#7d4928!important;
 border:3px solid #f9e2a3!important;
 border-radius:16px!important;
 background:linear-gradient(178deg,#fff2c8 0%,#f4d49a 56%,#e4ad6f 100%)!important;
 box-shadow:inset 0 0 0 2px #b37a49,0 4px 0 #8d6845b0,0 7px 9px #514b3547!important;
 text-shadow:1px 2px 0 #fff7db!important;
 padding:5px 12px!important;
 width:fit-content!important;max-width:96%!important;
 min-height:40px!important;
 margin:2px auto 5px!important;
 line-height:1.1!important;
}
body:not(:has(.intro-content)) .progress>.wood-heading{width:min(100%,345px)!important;text-align:center}
body:not(:has(.intro-content)) :is(.extra-top,.kitchen-title,.connect-title,.hunt-title,.drive-heading,.family-maze-heading){position:relative!important}
body:not(:has(.intro-content)) :is(.extra-sign,.kitchen-title,.connect-title,.hunt-title,.drive-heading h1,.family-maze-heading h1){
 font-size:clamp(20px,6.3vw,29px)!important;
}
/* Glowing, colored chapter medallions use approved home icon artwork. */
body:not(:has(.intro-content)) .progress>.wood-heading::before,
body:not(:has(.intro-content)) .extra-sign::before,
body:not(:has(.intro-content)) .kitchen-title::before,
body:not(:has(.intro-content)) .connect-title::before,
body:not(:has(.intro-content)) .hunt-title::before,
body:not(:has(.intro-content)) .drive-heading h1::before,
body:not(:has(.intro-content)) .family-maze-heading h1::before{
 content:"";display:inline-block;vertical-align:middle;position:relative;
 width:36px;height:36px;border-radius:50%;
 margin:-3px 9px -3px -4px;
 background-color:#e5bb78;background-size:cover;background-position:center;
 border:2px solid #fff4d3;
 box-shadow:0 0 0 2px #a57447,1px 2px 2px #694c3057;
}
body:has(.extra-page.picnic-page) .extra-sign::before{background-image:url('/chapter-picnic-v49.webp')}
body:has(.feeding-page) .extra-sign::before{background-image:url('/chapter-feeding-v49.webp')}
body:has(.kitchen-page) .kitchen-title::before{background-image:url('/chapter-cooking-v49.webp')}
body:has(.connect-game) .connect-title::before{background-image:url('/chapter-connect-v49.webp')}
body:has(.hunt-page) .hunt-title::before{background-image:url('/chapter-hunt-v49.webp')}
body:has(.drive-photo-game) .drive-heading h1::before{background-image:url('/chapter-drive-v49.webp')}
body:has(.family-maze-screen) .family-maze-heading h1::before{background-image:url('/chapter-maze-v49.webp')}
body:has(.progress) .progress>.wood-heading::before{background-image:url('/chapter-animals-v49.webp')}
body:has(.progress) .progress>.wood-heading:first-child{background-color:#fbe7b8}
/* Golden seeds for all progress tracks. */
body:not(:has(.intro-content)) :is(.progress-dot,.hunt-progress-dot,.extra-progress>i,.family-maze-progress i){
 border-color:#fff3cf!important;
 box-shadow:0 1px 2px #78623b8c!important;
}
body:not(:has(.intro-content)) :is(.progress-dot.current,.hunt-progress-dot.is-next){
 background:#f6d167!important;box-shadow:0 0 0 3px #fff5c0,0 0 8px #f3dc7b!important
}
body:not(:has(.intro-content)) .progress-track{padding:4px!important;border-radius:20px!important;background:#fff6d67a!important}
body:not(:has(.intro-content)) :is(.counting-message,.kitchen-subtitle,.extra-subtitle,.kitchen-hint,.extra-selection-footer,.family-maze-instruction){
 color:#4d7e40!important;text-shadow:1px 1px #fff9d7,0 0 5px #fff5d0!important;
 font:900 clamp(15px,4.4vw,20px)/1.2 "Chalkboard SE","Marker Felt",system-ui,sans-serif!important;
}
/* Hand and animal counting: premium illustrated yellow-teal learning board. */
body:has(.equation-area) .equation-area{
 position:relative!important;
 background:linear-gradient(150deg,#f5dfa2,#dca160)!important;
 border:5px solid #fff0bd!important;
 box-shadow:inset 0 0 0 3px #98623c,0 5px 0 #75553da8,0 8px 14px #5f553f4b!important;
 border-radius:22px!important;max-width:min(100%,410px)!important;
 margin:6px auto 12px!important;padding:7px!important;
}
body:has(.equation-area) .equation{
 background:radial-gradient(ellipse at 30% 20%,#3c8d77,#246c5c 80%)!important;
 border:3px solid #a5d9c4!important;
 border-radius:14px!important;
 box-shadow:inset 0 1px 15px #144a3f7e!important;
}
body:has(.equation-area) .visual-board{gap:7px!important;padding:5px 7px!important}
body:has(.equation-area) .count-card{
 background:radial-gradient(ellipse at 50% 30%,#fff7d26b,#ffedb500 78%)!important;
 border-radius:26px!important;
 min-width:0!important;filter:drop-shadow(1px 3px 2px #7b6e3948)!important;
}
body:has(.equation-area) .card-num{
 background:linear-gradient(160deg,#fff3d2,#f7db9a)!important;
 border:2px solid #d1a467!important;
 box-shadow:1px 3px 2px #7a63463c!important;
 color:#8d5d39!important;
}
body:has(.equation-area) .answer-wrap{border-radius:24px!important;background:transparent!important}
body:has(.equation-area) .answers{gap:clamp(5px,1.8vw,11px)!important}
body:has(.equation-area) .answer{
 border:4px solid #fff4cc!important;
 box-shadow:0 0 0 2px #946b49,0 5px 0 #805a4c91!important;
 border-radius:26px!important;
 background-blend-mode:soft-light!important;
 min-width:0!important;
 transition:transform .16s cubic-bezier(.2,.8,.2,1),filter .16s!important;
}
body:has(.equation-area) .answer:active{transform:translateY(3px) scale(.96)!important}
body:has(.equation-area) .friend-peek-pair{pointer-events:none!important}
/* Fruit picnic, pet care: color, depth, warm illustrated recipe panels. */
.extra-page .extra-scene{
 border-radius:30px!important;
 background:radial-gradient(ellipse at 50% 80%,#f4f7b26b,#b5e3bb33 78%,transparent)!important;
}
.extra-page .extra-bubble,.extra-page .feed-bubble{
 border:4px solid #fff2c9!important;
 border-radius:24px!important;
 box-shadow:0 0 0 2px #b38053,0 5px 0 #8f6a4590!important;
 background:linear-gradient(150deg,#fff7dc,#f5dba3)!important;
 color:#805837!important;
}
.picnic-page .picnic-basket{filter:drop-shadow(0 8px 3px #5f774759)!important}
.picnic-page .picnic-basket-front{
 background:repeating-linear-gradient(0deg,#d9a161,#d9a161 13px,#bd844f 14px,#e4b779 28px)!important;
 border:4px solid #95603c!important;
 box-shadow:inset 0 5px 8px #fff0c180,0 6px 0 #7d5e4384!important;
}
.extra-page :is(.extra-food-tray,.feed-food-tray){
 background:linear-gradient(180deg,#fff1c8c7,#e9d3a4c7)!important;
 border:4px solid #fff5d0!important;
 box-shadow:0 0 0 2px #ae7a4e,0 5px 4px #614b3647!important;
 border-radius:24px!important;
}
.extra-page :is(.extra-food-choice,.extra-animal-round,.extra-next,.extra-back-choice){
 border-color:#fff3d1!important;
 box-shadow:0 0 0 2px #a57549,1px 4px 3px #6e55475e!important;
}
.extra-page .extra-food-choice:active{filter:brightness(1.15) saturate(1.3)!important;transform:translateY(2px) scale(.96)!important}
.feed-select .feed-choice-grid{gap:clamp(10px,3vw,22px)!important}
.feed-select .extra-animal-choice{filter:drop-shadow(0 5px 2px #6a664751)!important}
.feed-select .extra-animal-round{
 border:5px solid #ffefc7!important;
 background:radial-gradient(circle at 30% 28%,#fff7de,#c1e6c3)!important;
}
.feed-select .extra-animal-name{
 color:#694e34!important;text-shadow:1px 2px #fff3cd!important;
 font-size:clamp(16px,4.9vw,21px)!important
}
.feed-main-pet{filter:drop-shadow(1px 6px 3px #6b78488c)!important}
.feeding-page .feed-pet-drop{background:radial-gradient(ellipse at center,#fff6d14d,transparent 75%)!important}
/* Backstube: individually illustrated recipe tiles and warm baking station. */
.kitchen-page .kitchen-recipe-grid{gap:clamp(13px,4vw,24px)!important}
.kitchen-page .kitchen-recipe-button{
 background:linear-gradient(155deg,#fff7d9cb,#f6d8a0c2)!important;
 border:4px solid #fff2c8!important;
 box-shadow:0 0 0 2px #9e7044,0 5px 0 #786040a6!important;
 border-radius:25px!important;
 padding:10px 3px!important;
}
.kitchen-page .kitchen-recipe-button:active{transform:translateY(3px) scale(.97)!important}
.kitchen-page :is(.kitchen-circle,.kitchen-scene,.kitchen-bowl-zone){
 filter:drop-shadow(1px 5px 3px #85634555);
}
.kitchen-page :is(.kitchen-task,.kitchen-ingredients,.kitchen-action-prompt,.kitchen-recipe-name){
 color:#775538!important;text-shadow:1px 2px #fff8d9!important;
}
.kitchen-page :is(.kitchen-task,.kitchen-action-prompt){
 border:3px solid #fff2c8!important;border-radius:24px!important;
 background:linear-gradient(#fff4d2,#f5dba5)!important;
 box-shadow:0 3px #9c744c78!important;
}
/* Favorite-color drawing playground. No rule tying number color to the selected crayon. */
.connect-game .connect-board{
 background:radial-gradient(ellipse at 40% 30%,#fff9e3,#f9e7b7 94%)!important;
 border:8px solid #fff4cc!important;
 border-radius:32px!important;
 box-shadow:0 0 0 3px #ab7747,inset 0 0 0 2px #edd3a0,0 7px 0 #785a4191!important;
}
.connect-game .connect-num{
 box-shadow:inset 0 3px 5px #fff9eccc,0 4px 0 #735b4874!important;
 border:4px solid #fff5da!important;
}
.connect-game .connect-crayons{
 padding:6px!important;
 background:linear-gradient(#fff4d4e8,#eccea0ea)!important;
 border:4px solid #fff4cc!important;
 border-radius:24px!important;
 box-shadow:0 0 0 2px #a4774b,0 5px 2px #765a4080!important;
}
.connect-game .connect-crayon{
 border:3px solid #fff8d9!important;
 border-radius:12px!important;
 box-shadow:0 0 0 1px #a37a59,0 3px 1px #8d684b70!important;
}
.connect-game .connect-crayon[aria-pressed=true]{
 box-shadow:0 0 0 3px var(--ink),0 3px #5e553772!important;
 transform:translateY(-3px) scale(1.05)!important;
}
.connect-game .connect-secondary,.connect-game .connect-continue{
 border:4px solid #fff1cb!important;
 background:linear-gradient(150deg,#f6e0b4,#e7b77f)!important;
 box-shadow:0 0 0 2px #9b7247,0 4px 0 #916a4b79!important;
 border-radius:22px!important;
}
/* Soap bubbles float over a vibrant pond in the same meadow world. */
.hunt-page .hunt-board{
 background:radial-gradient(ellipse at 50% 15%,#b6eaf5,#74cfd0 68%,#78baac 100%)!important;
 border:8px solid #fff3c8!important;
 border-radius:31px!important;
 box-shadow:0 0 0 3px #a97b51,inset 0 5px 16px #fff5e5aa,0 6px 1px #74533a80!important;
}
.hunt-page .hunt-current-number{
 border:4px solid #fff2cf!important;background:linear-gradient(155deg,#ffedc0,#f3cf8f)!important;
 border-radius:24px!important;box-shadow:0 0 0 2px #ae8454,0 5px #906e4c77!important;
 color:#8f5999!important;
}
.hunt-page .hunt-number{
 border:3px solid #ffffffeb!important;
 box-shadow:inset -6px -7px 11px #7bbdd058,inset 5px 6px 12px #ffffff9e,0 5px 12px #376e8d80,0 0 0 1px #ffffff80!important;
}
/* Autoteppich: retain its approved detailed artwork, improve header/control framing. */
.drive-photo-game .drive-instruction{
 background:linear-gradient(160deg,#fff9e2,#e3eebf)!important;
 border:4px solid #fff1c9!important;
 box-shadow:0 0 0 2px #ad7c50,0 4px 0 #78583d85!important;
 border-radius:25px!important;
}
.drive-photo-game #driveMap{
 border:7px solid #fff2c7!important;
 box-shadow:0 0 0 3px #a77649,0 6px 10px #4d715254!important;
}
.drive-photo-game :is(.drive-again,.drive-next){
 border:4px solid #fff2cd!important;
 background:linear-gradient(155deg,#f2d9ab,#e3b579)!important;
 box-shadow:0 0 0 2px #a77b50,0 5px 0 #956b4b80!important;
}
.drive-photo-game .drive-next{
 background:linear-gradient(#d8efa6,#83c777)!important;
}
/* Thirty maze adventures in bright wood-and-meadow picturebook. */
.family-maze-screen .family-maze-story{
 border:5px solid #fff4d7!important;
 box-shadow:0 0 0 2px #ad774c,0 4px 0 #7e5d427c!important;
 border-radius:26px!important;
}
.family-maze-screen .family-maze-board{
 border-radius:32px!important;
 border:7px solid #ffefc7!important;
 box-shadow:0 0 0 3px #af7845,0 8px 0 #835b4086,0 10px 16px #463b2d3b!important;
 overflow:hidden!important;
}
.family-maze-screen .family-maze-svg{
 filter:saturate(1.24)!important;
}
.family-maze-screen .family-maze-controls button,
.family-maze-screen .family-maze-victory button{
 background:linear-gradient(150deg,#fff1c8,#deb67e)!important;
 border:4px solid #fff4cf!important;
 box-shadow:0 0 0 2px #a97b4e,0 4px 1px #7e61427d!important;
 border-radius:22px!important;
 min-height:45px!important;
}
.family-maze-screen .family-maze-victory{
 border:6px solid #ffefc0!important;
 background:linear-gradient(#fff8df,#f4d6a5)!important;
 box-shadow:0 0 0 3px #b67f50,0 8px 12px #7d5c475f!important;
}
/* Parent guide: visually part of the same premium children's-book. */
.zw-guide-overlay{background:#31673c8f!important;backdrop-filter:blur(7px)!important}
.zw-guide-dialog{
 border:8px solid #fff1c8!important;
 border-radius:35px!important;
 background:linear-gradient(160deg,#fff9df,#f9daa9)!important;
 box-shadow:0 0 0 4px #b37c45,0 12px 20px #384c2f84!important;
 color:#6d4d2d!important;
}
.zw-guide-art{
 border:4px solid #fff4d4!important;
 box-shadow:0 0 0 3px #b88a55,0 3px 2px #7a69475a!important;
 background:radial-gradient(#d4efa9,#7fc576)!important;
 width:113px!important;height:113px!important;
}
.zw-guide-dialog h2{color:#81512c!important;text-shadow:1px 2px #fff9d9!important}
.zw-guide-dialog h3{color:#4c8a4a!important}
.zw-guide-child{
 color:#4e7b44!important;border:3px solid #e8d69e!important;
 border-radius:21px!important;background:#e7f3ce!important;
}
.zw-guide-start{
 min-height:64px!important;
 border:4px solid #ffefc2!important;
 box-shadow:0 0 0 2px #4e965b,0 6px 0 #467e4f!important;
 background:linear-gradient(160deg,#dff3a9,#7bcc77)!important;
 font-weight:900!important;color:#35613f!important;
}
/* All result and replay panels use the same gold-rimmed storybook controls. */
body:not(:has(.intro-content)) :is(.next-button,.secondary-button,.big-button,.extra-next,.kitchen-play-again,.hunt-next){
 border:4px solid #fff1c6!important;
 border-radius:25px!important;
 box-shadow:0 0 0 2px #a8784a,0 5px 2px #735c3f78!important;
 text-shadow:1px 1px #fff8d9!important;
 touch-action:manipulation!important;
}
body:not(:has(.intro-content)) :is(button,.answer,.connect-num):focus-visible{
 outline:4px solid #f3d15c!important;outline-offset:3px!important;
}
/* Small mobile devices: keep the playable area unblocked and allow scrolling. */
@media(max-height:760px) and (orientation:portrait){
 body:not(:has(.intro-content)) :is(.wood-heading,.extra-sign,.kitchen-title,.connect-title,.hunt-title,.drive-heading h1,.family-maze-heading h1){min-height:33px!important;padding:3px 8px!important;font-size:clamp(18px,5.4vw,23px)!important}
 body:not(:has(.intro-content)) :is(.wood-heading,.extra-sign,.kitchen-title,.connect-title,.hunt-title,.drive-heading h1,.family-maze-heading h1)::before{width:25px!important;height:25px!important}
 .zw-guide-art{width:75px!important;height:75px!important}
 .connect-game .connect-board,.hunt-page .hunt-board,.family-maze-screen .family-maze-board{border-width:5px!important}
}
@media(orientation:landscape) and (max-height:530px){
 body:not(:has(.intro-content)) .device{background-image:url('/gameworld-v49.webp')!important;background-size:100% 100%!important}
 body:not(:has(.intro-content)) :is(.wood-heading,.extra-sign,.kitchen-title,.connect-title,.hunt-title,.drive-heading h1,.family-maze-heading h1){min-height:30px!important;padding:1px 5px!important;font-size:18px!important}
 body:not(:has(.intro-content)) :is(.wood-heading,.extra-sign,.kitchen-title,.connect-title,.hunt-title,.drive-heading h1,.family-maze-heading h1)::before{width:24px;height:24px}
}

/* Final art-direction fixes after mobile screenshots. */
.feed-select .extra-animal-round{
 border-radius:50%!important;
 background-image:radial-gradient(circle at 35% 28%,#fff2c9,#b4dfb0)!important;
 overflow:hidden!important;
 box-shadow:inset 0 0 0 3px #b7834d,0 5px 3px #684b3470!important;
}
.feed-select .extra-animal-choice:nth-child(even) .extra-animal-round{
 background-image:radial-gradient(circle at 35% 28%,#fff4d5,#ecbfac)!important;
}
body:not(:has(.intro-content)) :is(.connect-title,.hunt-title,.family-maze-heading h1){
 display:flex!important;flex-direction:row!important;align-items:center!important;
 justify-content:center!important;white-space:normal!important;gap:5px!important;
 padding:4px 8px!important;line-height:1.04!important;
 text-align:center!important;
}
body:not(:has(.intro-content)) :is(.connect-title,.hunt-title,.family-maze-heading h1)::before{
 flex-shrink:0!important;width:29px!important;height:29px!important;
 margin:0 5px 0 0!important;
}
body:not(:has(.intro-content)) .connect-title{font-size:clamp(20px,5.3vw,25px)!important}
body:not(:has(.intro-content)) .family-maze-heading h1{font-size:clamp(20px,5.3vw,25px)!important}
body:not(:has(.intro-content)) .extra-top .extra-sign{white-space:nowrap!important;max-width:100%!important}
body:not(:has(.intro-content)) .extra-page .extra-mascot{
 filter:drop-shadow(0 4px 2px #50693a4f)!important;
}
body:not(:has(.intro-content)) .family-maze-screen .family-maze-svg image{
 image-rendering:auto!important;
}


/* source: premium-finishing-v54.css */
/* Zählwiese V54 – consistent final presentation, incl. short landscape screens.
   Preserve all existing game mechanics and the approved portrait homepage. */
@media (orientation:landscape) and (max-height:530px) {
 /* The old square cutout looked disconnected. Reuse the approved full illustration. */
 #app:has(.intro-content) .intro-content{
  background:linear-gradient(140deg,#a2e1ee 0%,#d3f0d3 46%,#83c65e 100%)!important;
 }
 #app:has(.intro-content) .intro-scene{
  width:100%!important;height:clamp(143px,58dvh,245px)!important;
  max-width:none!important;margin:0!important;align-self:center!important;
  border-radius:35px!important;overflow:hidden!important;
  background:radial-gradient(ellipse,#fff7ce2a,transparent)!important;
 }
 #app:has(.intro-content) .intro-scene .zw-playground-image{
  display:block!important;content:url('/art-premium-home.webp')!important;
  width:100%!important;height:100%!important;
  object-fit:cover!important;object-position:center 27%!important;
  max-height:100%!important;max-width:100%!important;
  -webkit-mask-image:radial-gradient(ellipse 72% 78% at 50% 48%,#000 48%,transparent 100%)!important;
  mask-image:radial-gradient(ellipse 72% 78% at 50% 48%,#000 48%,transparent 100%)!important;
 }
 #app:has(.intro-content) .mode-choice .mode-round{
  background:radial-gradient(circle at 40% 25%,#fff3d4,#e8b678)!important;
  border:3px solid #a9794d!important;box-shadow:inset 0 0 0 2px #fffae2,0 3px 0 #866042!important;
  overflow:hidden!important;
 }
 #app:has(.intro-content) .mode-choice .mode-round img{opacity:0!important;visibility:hidden!important}
 #app:has(.intro-content) .mode-choice .mode-round{
  background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important;
 }
 #app:has(.intro-content) #chooseHands .mode-round{background-image:url('/chapter-hands-v49.webp')!important}
 #app:has(.intro-content) #chooseAnimals .mode-round{background-image:url('/chapter-animals-v49.webp')!important}
 #app:has(.intro-content) #choosePicnic .mode-round{background-image:url('/chapter-picnic-v49.webp')!important}
 #app:has(.intro-content) #chooseFeeding .mode-round{background-image:url('/chapter-feeding-v49.webp')!important}
 #app:has(.intro-content) #chooseCooking .mode-round{background-image:url('/chapter-cooking-v49.webp')!important}
 #app:has(.intro-content) #chooseConnect .mode-round{background-image:url('/chapter-connect-v49.webp')!important}
 #app:has(.intro-content) #chooseDrive .mode-round{background-image:url('/chapter-drive-v49.webp')!important}
 #app:has(.intro-content) #chooseHunt .mode-round{background-image:url('/chapter-hunt-v49.webp')!important}
 #app:has(.intro-content) #chooseMaze .mode-round{background-image:url('/chapter-maze-v49.webp')!important}
 #app:has(.intro-content) .mode-choice .mode-label{
  background:linear-gradient(#fff0bd,#dcae72)!important;color:#754b2c!important;
  border:2px solid #a2764c!important;border-radius:10px!important;
  box-shadow:0 2px #765b4380!important;
 }
 #app:has(.intro-content) .mode-choices{align-content:start!important;gap:2px 5px!important}
 /* Guidance: always keep both the instruction and the action accessible. */
 .zw-guide-overlay{padding:8px 12px!important}
 .zw-guide-dialog{
  display:grid!important;
  grid-template-columns:90px minmax(0,1fr)!important;
  grid-template-rows:min-content min-content min-content minmax(45px,1fr) min-content 45px!important;
  gap:2px 10px!important;
  width:min(100%,530px)!important;
  max-height:calc(100dvh - 16px)!important;
  overflow:hidden!important;
  border-width:5px!important;
  padding:8px 13px 10px!important;
  align-items:start!important;
 }
 .zw-guide-close{z-index:10!important;right:5px!important;top:5px!important}
 .zw-guide-dialog .zw-guide-art{
  grid-column:1!important;grid-row:1 / 6!important;
  align-self:center!important;justify-self:center!important;
  width:80px!important;height:80px!important;min-height:0!important;
  margin:0!important;
 }
 .zw-guide-dialog .zw-guide-art img{width:95%!important;height:95%!important;object-fit:contain!important}
 .zw-guide-dialog .zw-guide-eyebrow{
  grid-column:2!important;grid-row:1!important;
  font-size:12px!important;line-height:1.1!important;margin:0!important;
 }
 .zw-guide-dialog h2{
  grid-column:2!important;grid-row:2!important;
  font-size:clamp(17px,2.8vw,24px)!important;line-height:1.02!important;
  margin:0!important;padding:0 24px 0 0!important;white-space:normal!important;
 }
 .zw-guide-dialog h3{
  grid-column:2!important;grid-row:3!important;
  font-size:clamp(12px,1.85vw,15px)!important;line-height:1.12!important;
  margin:0!important;padding:0!important;
 }
 .zw-guide-dialog p{
  grid-column:2!important;grid-row:4!important;
  min-height:0!important;max-height:none!important;overflow-y:auto!important;
  overscroll-behavior:contain;
  font-size:clamp(12px,1.55vw,14px)!important;
  line-height:1.19!important;margin:0!important;padding:2px 4px 0 0!important;
 }
 .zw-guide-dialog .zw-guide-child{
  grid-column:2!important;grid-row:5!important;
  font-size:clamp(11px,1.45vw,13px)!important;
  min-height:0!important;padding:4px 8px!important;line-height:1.16!important;
  margin:0!important;
 }
 .zw-guide-dialog .zw-guide-start{
  display:flex!important;align-items:center!important;justify-content:center!important;
  grid-column:1/-1!important;grid-row:6!important;
  width:100%!important;min-height:43px!important;height:43px!important;
  border-radius:20px!important;
  margin:0!important;padding:3px 8px!important;
  font-size:clamp(15px,2vw,18px)!important;
 }
}
/* Small portrait phones: compact guide without forcing children to scroll for start. */
@media(max-width:350px) and (orientation:portrait) {
 .zw-guide-overlay{padding:10px!important}
 .zw-guide-dialog{border-width:5px!important;padding:10px 12px 13px!important}
 .zw-guide-dialog .zw-guide-art{width:70px!important;height:70px!important}
 .zw-guide-dialog h3{font-size:17px!important}
 .zw-guide-dialog p{font-size:14px!important;line-height:1.3!important}
 .zw-guide-dialog .zw-guide-start{min-height:53px!important;font-size:19px!important}
}
/* Focus state on actual icon/photo choices, not just the decorative label. */
body:has(.main-content:not(.intro-content)) .main-content button:focus-visible{
 outline:4px solid #ffe785!important;outline-offset:3px!important;
}
@media(prefers-reduced-motion:reduce){
 #app:has(.intro-content) .intro-scene,#app:has(.intro-content) .mode-round{animation:none!important;transition:none!important}
}

/* Refined approved artwork without title duplication or cut-off game badges. */
@media(orientation:landscape) and (max-height:530px){
 #app:has(.intro-content) .home-header .brand{display:none!important}
 #app:has(.intro-content) .intro-content{
  background:linear-gradient(180deg,#8bd1e5 0%,#b9e4d5 46%,#83c663 100%)!important
 }
 #app:has(.intro-content) .intro-scene{
  overflow:visible!important;
  background:none!important;
 }
 #app:has(.intro-content) .intro-scene .zw-playground-image{
  content:url('/home-playground-landscape-v54.webp')!important;
  object-fit:contain!important;object-position:center center!important;
  -webkit-mask-image:none!important;mask-image:none!important;
  filter:drop-shadow(0 5px 3px #4d75524d)!important
 }
 #app:has(.intro-content) .rainbow-title{z-index:10!important}
}


/* source: finger-feedback-v62.css */
/* V62 – animate the drawn number alone, never the tile or its touch surface. */
.zw-finger-book-v53 .zw-book-answer-row button.zw-book-answer-value.wrong,
.zw-finger-book-v53 .zw-book-answer-row button.zw-book-answer-value.zw-finger-wrong-active{
 animation:none!important;
 transform:none!important;
 filter:none!important;
 background:transparent!important;
 border:0!important;
 box-shadow:none!important;
 transition:none!important;
}
.zw-finger-book-v53 .zw-book-answer-row button.zw-book-answer-value .zw-answer-ink{
 display:inline-block;
 position:relative;
 z-index:1;
 font:inherit;
 line-height:1;
 white-space:nowrap;
 transform-origin:50% 50%;
 pointer-events:none;
}
.zw-finger-book-v53 .zw-book-answer-row button.zw-book-answer-value.zw-finger-wrong-active .zw-answer-ink{
 color:#e43a49!important;
 -webkit-text-stroke:1px #983339!important;
 text-shadow:0 1px 0 #fff1e2,0 0 4px #ffc2c7,0 0 10px rgba(247,54,75,.76),0 0 16px rgba(233,76,97,.36)!important;
}


/* source: animal-book-v63.css */
/* V63 Zählwiese – same hand-drawn game book as Finger zählen.
   Visual-first counting, hand-drawn animals, original painted cards. */
.zw-animal-book-v63 .zw-book-art{
 background-image:url('/animal-scene-v63.webp')!important;
}
.zw-animal-book-v63 .zw-animal-pair{
 align-items:center!important;
 pointer-events:auto!important;
}
.zw-animal-book-v63 .zw-animal-panel{
 display:flex!important;
 position:relative!important;
 align-items:center!important;
 justify-content:center!important;
 flex:0 0 47%!important;
 width:47%!important;
 height:100%!important;
 min-width:0!important;
 margin:0!important;
 padding:5px!important;
 border:0!important;
 border-radius:20px!important;
 background:transparent!important;
 box-shadow:none!important;
 color:inherit!important;
 overflow:visible!important;
 cursor:pointer!important;
 touch-action:manipulation!important;
}
.zw-animal-book-v63 .zw-animal-panel:focus-visible{
 outline:3px solid #e8b95e!important;
 outline-offset:-4px!important;
}
.zw-animal-book-v63 .zw-animal-grid{
 display:grid!important;
 grid-template-columns:repeat(var(--cols),minmax(0,1fr))!important;
 grid-auto-rows:minmax(0,1fr)!important;
 align-content:center!important;
 justify-content:center!important;
 align-items:center!important;
 justify-items:center!important;
 gap:1px!important;
 width:95%!important;
 height:96%!important;
 max-height:100%!important;
 pointer-events:none!important;
}
.zw-animal-book-v63 .zw-animal-figure{
 position:relative!important;
 display:grid!important;
 place-items:center!important;
 width:100%!important;
 height:100%!important;
 margin:0!important;
 padding:0!important;
 min-width:0!important;
 min-height:0!important;
 border:0!important;
 background:transparent!important;
 box-shadow:none!important;
 overflow:visible!important;
 transform-origin:50% 85%;
}
.zw-animal-book-v63 .zw-animal-figure img{
 position:relative!important;
 display:block!important;
 width:100%!important;
 height:100%!important;
 max-width:100%!important;
 max-height:100%!important;
 object-fit:contain!important;
 object-position:center center!important;
 background:transparent!important;
 filter:drop-shadow(1px 3px 1px rgba(102,80,55,.25))!important;
 animation:zw-animal-sway 3.2s ease-in-out infinite!important;
 animation-delay:calc(var(--animal-index)*-.26s)!important;
 transform-origin:50% 80%;
 will-change:transform;
 pointer-events:none!important;
}
.zw-animal-book-v63 .zw-animal-panel[style*="--count:1"] .zw-animal-grid{width:85%!important;height:85%!important}
.zw-animal-book-v63 .zw-animal-panel[style*="--count:2"] .zw-animal-grid{width:100%!important;height:83%!important}
.zw-animal-book-v63 .zw-animal-panel[style*="--count:3"] .zw-animal-grid,
.zw-animal-book-v63 .zw-animal-panel[style*="--count:4"] .zw-animal-grid{width:99%!important;height:98%!important}
.zw-animal-book-v63 .zw-animal-panel[style*="--count:7"] .zw-animal-grid,
.zw-animal-book-v63 .zw-animal-panel[style*="--count:8"] .zw-animal-grid,
.zw-animal-book-v63 .zw-animal-panel[style*="--count:9"] .zw-animal-grid{gap:0!important}
@keyframes zw-animal-sway{
 0%,65%,100%{transform:translate3d(0,0,0) rotate(0)}
 72%{transform:translate3d(0,-3px,0) rotate(-3deg)}
 82%{transform:translate3d(0,-6px,0) rotate(3deg)}
 90%{transform:translate3d(0,-2px,0) rotate(-2deg)}
}
.zw-animal-book-v63 .zw-animal-panel.zw-animal-wave .zw-animal-figure{
 animation:zw-animal-tap .63s ease-out 1!important;
 animation-delay:calc(var(--animal-index)*.045s)!important;
}
@keyframes zw-animal-tap{
 0%,100%{transform:translateY(0) rotate(0deg)}
 37%{transform:translateY(-9px) rotate(-4deg)}
 70%{transform:translateY(-3px) rotate(5deg)}
}
.zw-animal-book-v63.zw-book-success .zw-animal-figure{
 animation:zw-animal-happy 1.1s ease-out both!important;
 animation-delay:calc(var(--animal-index)*.09s)!important;
}
@keyframes zw-animal-happy{
 0%{transform:translateY(5px) scale(.87);opacity:.6}
 30%{transform:translateY(-10px) scale(1.09);opacity:1}
 55%{transform:translateY(0) rotate(4deg)}
 73%{transform:translateY(-6px) rotate(-4deg)}
 100%{transform:none;opacity:1}
}
.zw-animal-book-v63 .zw-book-answer-row .zw-answer-ink{
 font:inherit!important;
 line-height:1!important;
}
.zw-animal-book-v63 .zw-animal-care-actions{
 display:grid!important;
 grid-template-columns:repeat(4,minmax(0,1fr))!important;
 position:absolute!important;
 top:84.1%!important;left:6%!important;
 width:88%!important;height:13.5%!important;
 z-index:16!important;
 gap:clamp(3px,2vw,10px)!important;
 align-items:center!important;
 justify-items:center!important;
 padding:0!important;
 pointer-events:auto!important;
}
.zw-animal-book-v63 .zw-animal-care-button{
 display:grid!important;
 place-items:center!important;
 width:clamp(58px,19vw,90px)!important;
 height:clamp(58px,19vw,90px)!important;
 max-width:100%!important;max-height:100%!important;
 min-width:0!important;min-height:0!important;
 border:3px solid #9c7652!important;
 border-radius:50%!important;
 background:radial-gradient(circle at 30% 25%,#fff5d6,#efd3a0 66%,#d7aa72)!important;
 box-shadow:inset 0 0 0 2px #fff8d2,0 3px 0 #6c573d88!important;
 padding:7%!important;
 touch-action:manipulation!important;
 transition:transform .13s ease-out!important;
 cursor:pointer!important;
}
.zw-animal-book-v63 .zw-animal-care-button:nth-child(1){background:radial-gradient(circle at 30% 25%,#ffefd3,#f8d5a1 66%,#d59e66)!important}
.zw-animal-book-v63 .zw-animal-care-button:nth-child(2){background:radial-gradient(circle at 30% 25%,#e6f9ff,#a8dbe6 69%,#7db8c9)!important}
.zw-animal-book-v63 .zw-animal-care-button:nth-child(3){background:radial-gradient(circle at 30% 25%,#fff0f0,#f3c2ca 69%,#d69aab)!important}
.zw-animal-book-v63 .zw-animal-care-button:nth-child(4){background:radial-gradient(circle at 30% 25%,#fbf8dd,#dbdfaf 69%,#a1b178)!important}
.zw-animal-book-v63 .zw-animal-care-button img{
 display:block!important;
 width:86%!important;
 height:86%!important;
 object-fit:contain!important;
 filter:drop-shadow(1px 2px 0 #815e3b30)!important;
 pointer-events:none!important;
}
.zw-animal-book-v63 .zw-animal-care-button:active{transform:scale(.91)!important}
.zw-animal-book-v63 .zw-animal-care-button:focus-visible{outline:4px solid #ffe499!important;outline-offset:1px!important}
.zw-animal-book-v63 .zw-animal-next{
 background:radial-gradient(circle at 32% 27%,#f8e6b7,#e4b877 78%,#b98751)!important;
 border:3px solid #8c6541!important;
 box-shadow:inset 0 0 0 3px #fff5cf,0 4px 1px #6c503b77!important;
 display:grid!important;
 place-items:center!important;
}
.zw-animal-book-v63 .zw-animal-next:after{
 content:'➜';font-family:'Trebuchet MS',system-ui,sans-serif!important;
 color:#815734;font-size:clamp(28px,8vw,56px)!important;
 font-weight:900!important;line-height:1!important;
}
.zw-animal-book-v63 .zw-animal-love{
 position:absolute!important;top:84%!important;left:25%!important;
 width:18%!important;height:11%!important;z-index:9!important;
 animation:zw-love-float 1s ease-in-out infinite alternate!important;
 pointer-events:none!important;
}
.zw-animal-book-v63 .zw-animal-love svg{width:100%;height:100%}
@keyframes zw-love-float{to{transform:translateY(-12px) rotate(8deg)}}
.zw-animal-book-v63.zw-animal-care-done .zw-animal-figure,
.zw-animal-book-v63.zw-animal-care-done .zw-animal-figure img{animation:none!important}
.zw-animal-book-v63.zw-animal-care-done .zw-animal-next{
 left:58%!important;
}
@media(max-width:350px) and (orientation:portrait){
 .zw-animal-book-v63 .zw-animal-panel{padding:2px!important}
 .zw-animal-book-v63 .zw-animal-care-button{width:54px!important;height:54px!important;padding:6px!important}
}
@media(orientation:landscape) and (max-height:620px){
 .zw-animal-book-v63 .zw-book-art{background-image:url('/animal-scene-land-v63.webp')!important}
 .zw-animal-book-v63 .zw-animal-grid{height:93%!important;width:96%!important}
 .zw-animal-book-v63 .zw-animal-panel{padding:3px!important}
 .zw-animal-book-v63 .zw-animal-care-actions{
  top:81%!important;left:25%!important;width:52%!important;height:17%!important;
 }
 .zw-animal-book-v63 .zw-animal-care-button{width:clamp(42px,8.6vw,72px)!important;height:clamp(42px,8.6vw,72px)!important;padding:5px!important}
 .zw-animal-book-v63 .zw-animal-next{top:73%!important;left:89%!important}
 .zw-animal-book-v63 .zw-animal-next:after{font-size:clamp(26px,4vw,40px)!important}
 .zw-animal-book-v63 .zw-animal-love{top:81%!important;left:78%!important;width:7%!important;height:13%!important}
 .zw-animal-book-v63.zw-animal-care-done .zw-animal-next{left:90%!important}
}
@media(prefers-reduced-motion:reduce){
 .zw-animal-book-v63 .zw-animal-figure,.zw-animal-book-v63 .zw-animal-figure img{animation:none!important}
 .zw-animal-book-v63 .zw-animal-love{animation:none!important}
}

/* Isolate the new painted-card result layout from the legacy animal care flex layout. */
.zw-animal-book-v63 .zw-animal-pair.animal-care-stage{
 position:absolute!important;
 inset:39.2% 7.5% auto 7.5%!important;
 top:39.2%!important;left:7.5%!important;
 display:flex!important;
 flex-direction:row!important;
 align-items:center!important;
 justify-content:space-between!important;
 gap:5%!important;
 width:85%!important;
 height:24.9%!important;
 min-height:0!important;
 max-width:none!important;
 margin:0!important;padding:0!important;
 overflow:visible!important;
}
.zw-animal-book-v63 .zw-animal-pair.animal-care-stage .zw-animal-panel.result-animals{
 position:relative!important;
 display:flex!important;
 flex:0 0 47%!important;
 flex-direction:row!important;
 flex-wrap:nowrap!important;
 align-content:center!important;
 justify-content:center!important;
 align-items:center!important;
 width:47%!important;
 height:100%!important;
 min-height:0!important;
 max-height:none!important;
 max-width:none!important;
 padding:5px!important;
 margin:0!important;
 gap:0!important;
}
.zw-animal-book-v63 .zw-animal-pair.animal-care-stage .zw-animal-panel.result-animals .zw-animal-grid{
 display:grid!important;
 grid-template-columns:repeat(var(--cols),minmax(0,1fr))!important;
 width:95%!important;
 height:96%!important;
 max-height:100%!important;
 padding:0!important;
 margin:0!important;
 flex:none!important;
}
.zw-animal-book-v63 .zw-animal-pair.animal-care-stage .zw-animal-panel.result-animals .animal-card{
 position:relative!important;
 display:grid!important;
 place-items:center!important;
 flex:none!important;
 width:100%!important;
 height:100%!important;
 min-width:0!important;
 min-height:0!important;
 max-width:100%!important;
 max-height:100%!important;
 margin:0!important;
 padding:0!important;
 gap:0!important;
}
@media(orientation:landscape) and (max-height:620px){
 .zw-animal-book-v63 .zw-animal-pair.animal-care-stage{
  inset:auto!important;
  left:49.1%!important;top:19.8%!important;
  width:48.2%!important;height:32.8%!important;
  min-height:0!important;gap:1.7%!important;
 }
 .zw-animal-book-v63 .zw-animal-pair.animal-care-stage .zw-animal-panel.result-animals{
  flex:0 0 49.15%!important;
  width:49.15%!important;
  padding:3px!important;
 }
}

/* Final artwork fit: prevent portrait animal PNG aspect ratio from spilling out
   of its assigned paper card, especially in short landscape layouts. */
.zw-animal-book-v63 .zw-animal-figure{
 position:relative!important;
 overflow:hidden!important;
}
.zw-animal-book-v63 .zw-animal-figure img,
.zw-animal-book-v63 .zw-animal-pair.animal-care-stage .zw-animal-figure img{
 position:absolute!important;
 inset:0!important;
 left:0!important;top:0!important;
 display:block!important;
 width:100%!important;height:100%!important;
 max-width:100%!important;max-height:100%!important;
 min-width:0!important;min-height:0!important;
 object-fit:contain!important;
 object-position:center center!important;
}
.zw-animal-book-v63 .zw-animal-next{
 left:50%!important;
 top:85.5%!important;
 width:clamp(61px,18vw,85px)!important;
 height:clamp(61px,18vw,85px)!important;
 min-width:0!important;min-height:0!important;
 aspect-ratio:1 / 1!important;
 transform:translateX(-50%)!important;
 border-radius:50%!important;
}
.zw-animal-book-v63 .zw-animal-next:active{
 transform:translateX(-50%) scale(.94)!important;
}
.zw-animal-book-v63.zw-animal-care-done .zw-animal-next{
 left:66%!important;
}
@media(orientation:landscape) and (max-height:620px){
 .zw-animal-book-v63 .zw-animal-next{
  left:93%!important;top:73%!important;
  width:clamp(45px,8vw,66px)!important;
  height:clamp(45px,8vw,66px)!important;
 }
 .zw-animal-book-v63.zw-animal-care-done .zw-animal-next{left:93%!important}
}


/* source: animal-meadow-v64.css */
/* V64: a dedicated, full-page illustrated meadow reward.
   Counting cards are untouched; every animal exists individually in the scene. */
#app:has(.zw-meadow-result){
 position:relative!important;
 height:100dvh!important;
 min-height:100dvh!important;
 max-height:100dvh!important;
 overflow:hidden!important;
 background:#87c75e!important;
}
#app:has(.zw-meadow-result)>.app-header{
 position:absolute!important;inset:0 0 auto 0!important;
 z-index:60!important;min-height:0!important;height:0!important;
 width:100%!important;padding:0!important;margin:0!important;
 background:transparent!important;border:0!important;
 pointer-events:none!important;
}
#app:has(.zw-meadow-result)>.app-header .brand{display:none!important}
#app:has(.zw-meadow-result)>.app-header .header-tools{
 position:absolute!important;top:max(11px,env(safe-area-inset-top))!important;
 right:3%!important;left:auto!important;width:auto!important;
 display:flex!important;justify-content:flex-end!important;z-index:61!important;pointer-events:auto!important;
}
#app:has(.zw-meadow-result)>.app-header .zw-go-home{
 display:grid!important;place-items:center!important;
 width:clamp(45px,12vw,53px)!important;height:clamp(45px,12vw,53px)!important;
 min-width:0!important;min-height:0!important;max-width:none!important;
 margin:0!important;padding:0!important;position:relative!important;left:auto!important;right:auto!important;top:auto!important;
 border:3px solid #9d7244!important;border-radius:50%!important;
 background:linear-gradient(160deg,#fff3c4,#f0ce86)!important;
 box-shadow:inset 0 1px #fffbe6,0 3px 1px #66532e80!important;
 opacity:1!important;pointer-events:auto!important;
}
#app:has(.zw-meadow-result)>.app-header .zw-home-label{display:none!important}
#app:has(.zw-meadow-result)>.app-header .zw-go-home svg{width:27px!important;height:27px!important}
#app:has(.zw-meadow-result) .zw-meadow-result.main-content{
 display:block!important;position:absolute!important;inset:0!important;
 height:100%!important;min-height:0!important;max-height:100%!important;
 width:100%!important;max-width:none!important;
 margin:0!important;padding:0!important;overflow:hidden!important;
 border:0!important;
 background:#8cce74 url('/gameworld-v49.webp') center center/100% 100% no-repeat!important;
 isolation:isolate!important;
}
.zw-meadow-result .zw-meadow-sr{
 position:absolute!important;width:1px!important;height:1px!important;
 padding:0!important;margin:0!important;overflow:hidden!important;
 clip-path:inset(50%)!important;white-space:nowrap!important;
}
.zw-meadow-result .zw-meadow-number{
 position:absolute!important;z-index:6!important;
 left:50%!important;top:22%!important;transform:translate(-50%,-50%) rotate(-3deg)!important;
 display:grid!important;place-items:center!important;
 width:clamp(67px,21vw,100px)!important;height:clamp(67px,21vw,100px)!important;
 border:5px solid #a2764b!important;border-radius:51% 47% 50% 52%!important;
 background:radial-gradient(circle at 35% 23%,#fff7cf,#e6c28b 78%,#c29667)!important;
 box-shadow:0 5px 0 #80664390,inset 0 0 0 2px #fff2cf,0 1px 14px #fff4c466!important;
 color:#634733!important;
 text-shadow:0 2px #fff4cd!important;
 font:900 clamp(41px,11vw,62px)/1 'Trebuchet MS','Chalkboard SE',system-ui,sans-serif!important;
}
.zw-meadow-number span{position:relative!important;z-index:2!important}
.zw-meadow-number svg{
 position:absolute!important;right:-20%!important;top:-22%!important;
 width:41%!important;height:41%!important;
 filter:drop-shadow(0 2px 0 #8a66388c);
}
.zw-meadow-result .animal-care-stage.zw-meadow-stage{
 position:absolute!important;inset:auto!important;
 left:3%!important;top:40%!important;width:94%!important;height:42%!important;
 max-width:none!important;min-height:0!important;max-height:none!important;
 display:block!important;margin:0!important;padding:0!important;
 border:0!important;border-radius:0!important;background:transparent!important;
 overflow:visible!important;box-shadow:none!important;z-index:4!important;
}
.zw-meadow-result .animal-care-stage .result-animals.zw-meadow-animals{
 display:block!important;position:absolute!important;inset:0!important;
 width:100%!important;height:100%!important;
 min-height:0!important;max-height:none!important;
 margin:0!important;padding:0!important;background:none!important;
 overflow:visible!important;z-index:3!important;
}
.zw-meadow-result .zw-meadow-animals .animal-card.zw-meadow-pet{
 position:absolute!important;left:var(--x)!important;top:var(--y)!important;
 width:clamp(57px,19.2vw,83px)!important;height:clamp(70px,22.6vw,97px)!important;
 margin:0!important;padding:0!important;min-height:0!important;
 display:grid!important;place-items:center!important;
 border:0!important;background:transparent!important;box-shadow:none!important;
 transform:translate(-50%,-50%) rotate(var(--lean))!important;
 transform-origin:center 90%!important;overflow:visible!important;
 z-index:calc(4 + var(--layer))!important;opacity:0;
 animation:zw-meadow-appear .66s cubic-bezier(.23,.87,.32,1.2) both!important;
 animation-delay:calc(var(--i)*90ms)!important;
 filter:drop-shadow(1px 4px 2px #53733b57)!important;
 pointer-events:none!important;
}
.zw-meadow-result .zw-meadow-animals[style*="--meadow-count:3"] .zw-meadow-pet,
.zw-meadow-result .zw-meadow-animals[style*="--meadow-count:4"] .zw-meadow-pet{
 width:clamp(78px,24vw,114px)!important;height:clamp(88px,27vw,129px)!important;
}
.zw-meadow-result .zw-meadow-animals[style*="--meadow-count:5"] .zw-meadow-pet,
.zw-meadow-result .zw-meadow-animals[style*="--meadow-count:6"] .zw-meadow-pet{
 width:clamp(65px,21vw,97px)!important;height:clamp(79px,25vw,114px)!important;
}
.zw-meadow-result .zw-meadow-animals .zw-meadow-pet img.zw-meadow-illustration{
 display:block!important;width:100%!important;height:100%!important;
 min-width:0!important;min-height:0!important;object-fit:contain!important;
 object-position:center bottom!important;filter:none!important;
 animation:zw-meadow-idle 3.3s ease-in-out infinite;
 animation-delay:calc(var(--i)*-.34s);
 transform-origin:center 85%!important;
}
.zw-meadow-result .zw-meadow-animals .zw-meadow-pet:before{
 content:'';position:absolute;bottom:3%;left:15%;right:15%;height:10%;
 border-radius:50%;background:#507c3759;filter:blur(3px);z-index:-1;
}
@keyframes zw-meadow-appear{
 0%{opacity:0;translate:0 18px;scale:.82}
 62%{opacity:1;translate:0 -5px;scale:1.04}
 100%{opacity:1;translate:0 0;scale:1}
}
@keyframes zw-meadow-idle{
 0%,57%,100%{transform:translateY(0) rotate(0)}
 72%{transform:translateY(-4px) rotate(2.5deg)}
 86%{transform:translateY(-1px) rotate(-2.5deg)}
}
.zw-meadow-result.zw-meadow-playing .zw-meadow-pet img.zw-meadow-illustration{
 animation:none!important;transition:none!important;
}
.zw-meadow-result .zw-meadow-actions{
 position:absolute!important;z-index:15!important;
 left:3.8%!important;top:84%!important;width:92.4%!important;height:12.4%!important;
 display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
 gap:clamp(6px,2vw,14px)!important;align-items:center!important;justify-items:center!important;
 padding:0!important;margin:0!important;pointer-events:auto!important;
}
.zw-meadow-result .zw-meadow-action{
 display:grid!important;place-items:center!important;
 width:clamp(62px,20.4vw,95px)!important;height:clamp(62px,20.4vw,95px)!important;
 max-width:100%!important;max-height:100%!important;min-width:0!important;
 aspect-ratio:1!important;margin:0!important;padding:12%!important;
 border:4px solid #9f7546!important;border-radius:50%!important;
 background:radial-gradient(circle at 33% 22%,#fff8df,#eac98d 75%,#d39f68)!important;
 box-shadow:inset 0 0 0 2px #fff7dc,0 4px 0 #805d3d95!important;
 transform:none!important;transition:transform .14s ease,filter .14s ease!important;
 -webkit-tap-highlight-color:transparent!important;touch-action:manipulation!important;
}
.zw-meadow-result .zw-meadow-action:nth-child(2){background:radial-gradient(circle at 33% 22%,#e5faff,#a5d8ea 75%,#7cb2cf)!important}
.zw-meadow-result .zw-meadow-action:nth-child(3){background:radial-gradient(circle at 33% 22%,#fff0f0,#f6c2d2 75%,#dca0b3)!important}
.zw-meadow-result .zw-meadow-action:nth-child(4){background:radial-gradient(circle at 33% 22%,#fffce8,#d6dda5 75%,#a9be78)!important}
.zw-meadow-result .zw-meadow-action img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;pointer-events:none!important}
.zw-meadow-result .zw-meadow-action:active{transform:translateY(3px) scale(.92)!important}
.zw-meadow-result .zw-meadow-action:focus-visible{outline:4px solid #ffe49b!important;outline-offset:2px!important}
.zw-meadow-result.zw-meadow-playing .zw-meadow-action:disabled{opacity:.48!important}
.zw-meadow-result.zw-meadow-playing .zw-meadow-action.is-selected{
 opacity:1!important;transform:scale(1.08)!important;
 box-shadow:inset 0 0 0 2px #fff7dc,0 0 0 4px #ffe8a1,0 5px 0 #805d3d95!important;
}
.zw-meadow-result .zw-all-care-item{width:clamp(23px,7vw,42px)!important;height:clamp(23px,7vw,42px)!important}
.zw-meadow-result .zw-all-care-feed{top:64%!important;left:28%!important}
.zw-meadow-result .zw-all-care-water{top:46%!important;left:58%!important}
.zw-meadow-result .zw-all-care-pet{top:9%!important;left:41%!important}
.zw-meadow-result .zw-all-care-ball{top:68%!important;left:36%!important}
@media(max-width:360px) and (orientation:portrait){
 .zw-meadow-result .zw-meadow-actions{top:83.2%!important;height:13.2%!important;gap:4px!important}
 .zw-meadow-result .zw-meadow-action{width:clamp(57px,21vw,74px)!important;height:clamp(57px,21vw,74px)!important;padding:10%!important}
 .zw-meadow-result .animal-care-stage.zw-meadow-stage{top:40%!important;height:41%!important}
}
@media(orientation:landscape) and (max-height:620px){
 #app:has(.zw-meadow-result) .zw-meadow-result.main-content{
  background-image:url('/animal-meadow-land-v64.webp')!important;
  background-position:center center!important;
  background-size:100% 100%!important;
 }
 .zw-meadow-result .zw-meadow-number{
  top:23%!important;left:13%!important;
  width:clamp(57px,12vh,80px)!important;height:clamp(57px,12vh,80px)!important;
  font-size:clamp(32px,10vh,53px)!important;
 }
 .zw-meadow-result .animal-care-stage.zw-meadow-stage{
  left:23%!important;top:35%!important;width:73%!important;height:38%!important;
 } 
 .zw-meadow-result .zw-meadow-animals .zw-meadow-pet{top:calc(var(--y) - 8%)!important;
 /* align the bottom animal row above the action buttons */
 }
 .zw-meadow-result .zw-meadow-actions{
  left:3%!important;top:77%!important;width:94%!important;height:18%!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
 }
 .zw-meadow-result .zw-meadow-action{width:clamp(47px,14vh,70px)!important;height:clamp(47px,14vh,70px)!important;padding:9%!important}
 .zw-meadow-result .zw-meadow-animals .animal-card.zw-meadow-pet,
 .zw-meadow-result .zw-meadow-animals[style*="--meadow-count:3"] .zw-meadow-pet,
 .zw-meadow-result .zw-meadow-animals[style*="--meadow-count:4"] .zw-meadow-pet,
 .zw-meadow-result .zw-meadow-animals[style*="--meadow-count:5"] .zw-meadow-pet,
 .zw-meadow-result .zw-meadow-animals[style*="--meadow-count:6"] .zw-meadow-pet{
  width:clamp(41px,11vh,65px)!important;height:clamp(49px,14vh,79px)!important;
 }
}
@media(prefers-reduced-motion:reduce){
 .zw-meadow-result .zw-meadow-pet{animation-duration:.22s!important;animation-delay:0s!important}
 .zw-meadow-result .zw-meadow-pet img{animation:none!important}
}


/* source: baby-animals-v65.css */
/* V65 - one baby animal collection for counting and feeding. */
.feed-select .feed-choice-grid{
 display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
 align-content:start!important;justify-content:center!important;justify-items:center!important;
 width:min(100%,480px)!important;max-width:100%!important;
 flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;
 overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important;
 gap:clamp(6px,1.6vh,14px)!important;padding:9px 4px 14px!important;
 margin:4px auto!important;scrollbar-width:none!important;
}
.feed-select .feed-choice-grid::-webkit-scrollbar{display:none!important}
.feed-select .extra-animal-choice{
 min-height:90px!important;min-width:0!important;
 width:100%!important;gap:0!important;
}
.feed-select .extra-animal-round{
 width:clamp(77px,24vw,112px)!important;height:clamp(77px,24vw,112px)!important;
 margin:0!important;
}
.feed-select .extra-animal-round img{
 width:85%!important;height:84%!important;object-fit:contain!important;
 padding:0!important;filter:drop-shadow(1px 2px 1px #6c65403d)!important;
}
.feed-select .extra-animal-name,
.feed-select .extra-subtitle,
.feed-select .extra-selection-footer{display:none!important}
.feed-select .extra-animal-choice:focus-visible{outline:3px solid #d49b67;outline-offset:2px;border-radius:24px}
.feed-select .extra-animal-choice:active .extra-animal-round{transform:scale(.93)!important}
@media(max-height:650px) and (orientation:portrait){
 .feed-select .feed-choice-grid{padding:3px!important;gap:5px!important}
 .feed-select .extra-animal-round{width:clamp(68px,23vw,87px)!important;height:clamp(68px,23vw,87px)!important}
}
@media(orientation:landscape) and (max-height:620px){
 .feed-select .feed-choice-grid{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  width:min(100%,750px)!important;max-width:100%!important;
  gap:4px!important;
 }
 .feed-select .extra-animal-round{width:clamp(63px,8.4vw,82px)!important;height:clamp(63px,8.4vw,82px)!important}
 .feed-select .extra-animal-choice{min-height:66px!important}
}


/* source: baby-rigs-v85.css */
/* Zählwiese v85 – ten individually jointed colored-pencil animal babies.
   Artwork is inline SVG, NOT an image with a wobbling bounding box. */
.zw-rig{
 display:block;position:relative;width:100%;height:100%;min-width:0;min-height:0;
 overflow:visible;object-fit:contain;object-position:center;
 transform-origin:50% 80%;pointer-events:none;user-select:none;
 -webkit-user-select:none;isolation:isolate;
}
/* SVG outline and pencil strokes scale naturally with each illustrated animal. */
.zw-rig .zw-rig-part{transform-box:fill-box;transform-origin:50% 50%;will-change:transform}
.zw-rig .zw-rig-head{transform-origin:50% 81%;animation:zw85-idle-head 4.5s ease-in-out infinite}
.zw-rig .zw-rig-tail{transform-origin:12% 76%;animation:zw85-tail 2.6s ease-in-out infinite}
.zw-rig .zw-rig-ear-left{transform-origin:83% 95%;animation:zw85-ear-left 4.6s ease-in-out infinite}
.zw-rig .zw-rig-ear-right{transform-origin:17% 95%;animation:zw85-ear-right 4.1s ease-in-out infinite}
.zw-rig .zw-rig-eye-left,.zw-rig .zw-rig-eye-right{animation:zw85-blink 5.8s ease-in-out infinite;transform-origin:50% 50%}
.zw-rig .zw-rig-eye-right{animation-delay:.08s}
.zw-rig .zw-rig-arm-left,.zw-rig .zw-rig-arm-right{transform-origin:50% 8%;animation:zw85-idle-paw 4.7s ease-in-out infinite}
.zw-rig .zw-rig-arm-right{animation-delay:-2.2s}
.zw-rig .zw-rig-beak-bottom{transform-origin:50% 12%}
.zw-rig .zw-rig-mouth{transform-origin:50% 18%}
.zw-rig .zw-rig-leg-left-1,.zw-rig .zw-rig-leg-left-2,.zw-rig .zw-rig-leg-left-3,.zw-rig .zw-rig-leg-left-4{transform-origin:93% 73%}
.zw-rig .zw-rig-leg-right-1,.zw-rig .zw-rig-leg-right-2,.zw-rig .zw-rig-leg-right-3,.zw-rig .zw-rig-leg-right-4{transform-origin:7% 73%}
@keyframes zw85-idle-head{0%,33%,100%{transform:rotate(0)}42%{transform:rotate(2.6deg)}63%{transform:rotate(-2deg)}}
@keyframes zw85-tail{0%,100%{transform:rotate(-9deg)}35%{transform:rotate(14deg)}70%{transform:rotate(-5deg)}}
@keyframes zw85-ear-left{0%,70%,100%{transform:rotate(0)}78%{transform:rotate(-9deg)}89%{transform:rotate(3deg)}}
@keyframes zw85-ear-right{0%,66%,100%{transform:rotate(0)}75%{transform:rotate(9deg)}86%{transform:rotate(-4deg)}}
@keyframes zw85-blink{0%,4%,8%,58%,62%,100%{transform:scaleY(1)}5.2%,60%{transform:scaleY(.10)}}
@keyframes zw85-idle-paw{0%,72%,100%{transform:rotate(0deg)}80%{transform:rotate(4deg)}90%{transform:rotate(-2deg)}}
@keyframes zw85-nod{0%,100%{transform:rotate(0) translateY(0)}28%{transform:rotate(7deg) translateY(4px)}65%{transform:rotate(-3deg) translateY(1px)}}
@keyframes zw85-munch{0%,100%{transform:scaleY(1) translateY(0)}45%{transform:scaleY(1.55) translateY(2px)}}
@keyframes zw85-sip{0%,100%{transform:rotate(0)}50%{transform:rotate(12deg)}}
@keyframes zw85-yes{0%,100%{transform:rotate(0)}35%{transform:rotate(-11deg)}70%{transform:rotate(10deg)}}
@keyframes zw85-no{0%,100%{transform:rotate(0)}20%,60%{transform:rotate(11deg)}40%,80%{transform:rotate(-11deg)}}
@keyframes zw85-paw-hi{0%,100%{transform:rotate(0)}28%,69%{transform:rotate(-24deg)}46%,83%{transform:rotate(13deg)}}
@keyframes zw85-paw-hi-r{0%,100%{transform:rotate(0)}28%,69%{transform:rotate(24deg)}46%,83%{transform:rotate(-13deg)}}
@keyframes zw85-squeeze{0%,100%{transform:scale(1)}45%{transform:scale(1.06,.92)}}
@keyframes zw85-bounce-leg{0%,100%{transform:rotate(0)}45%{transform:rotate(17deg)}}
@keyframes zw85-flutter{0%,100%{transform:rotate(-7deg)}50%{transform:rotate(16deg)}}
@keyframes zw85-celebrate-head{0%,100%{transform:rotate(0)}15%,52%{transform:rotate(8deg)}34%,75%{transform:rotate(-10deg)}}
.zw-rig[data-motion="feed"] .zw-rig-head,.zw-rig[data-motion="eat"] .zw-rig-head{animation:zw85-nod .73s ease-in-out 4}
.zw-rig[data-motion="feed"] .zw-rig-mouth,.zw-rig[data-motion="eat"] .zw-rig-mouth,
.zw-rig[data-motion="feed"] .zw-rig-beak-bottom,.zw-rig[data-motion="eat"] .zw-rig-beak-bottom{
 animation:zw85-munch .30s ease-in-out 9}
.zw-rig[data-motion="water"] .zw-rig-head,.zw-rig[data-motion="drink"] .zw-rig-head{animation:zw85-sip .82s ease-in-out 4}
.zw-rig[data-motion="pet"] .zw-rig-head,.zw-rig[data-motion="cuddle"] .zw-rig-head{animation:zw85-yes 1s ease-in-out 4}
.zw-rig[data-motion="pet"] .zw-rig-ear-left,.zw-rig[data-motion="pet"] .zw-rig-ear-right{animation:zw85-ear-left .65s ease-in-out 5}
.zw-rig[data-motion="ball"] .zw-rig-arm-left,.zw-rig[data-motion="bubbles"] .zw-rig-arm-left,.zw-rig[data-motion="celebrate"] .zw-rig-arm-left{animation:zw85-paw-hi .60s ease-in-out 6}
.zw-rig[data-motion="ball"] .zw-rig-arm-right,.zw-rig[data-motion="bubbles"] .zw-rig-arm-right,.zw-rig[data-motion="celebrate"] .zw-rig-arm-right{animation:zw85-paw-hi-r .60s ease-in-out 6}
.zw-rig[data-motion="ball"] .zw-rig-foot-left,.zw-rig[data-motion="ball"] .zw-rig-foot-right,
.zw-rig[data-motion="celebrate"] .zw-rig-foot-left,.zw-rig[data-motion="celebrate"] .zw-rig-foot-right{animation:zw85-bounce-leg .58s ease-in-out 6}
.zw-rig[data-motion="ball"] .zw-rig-body,.zw-rig[data-motion="celebrate"] .zw-rig-body{animation:zw85-squeeze .53s ease-in-out 6}
.zw-rig[data-motion="cuddle"] .zw-rig-arm-left,.zw-rig[data-motion="cuddle"] .zw-rig-arm-right{animation:zw85-paw-hi .95s ease-in-out 4}
.zw-rig[data-motion="celebrate"] .zw-rig-head{animation:zw85-celebrate-head .72s ease-in-out 5}
.zw-rig[data-motion="no"] .zw-rig-head{animation:zw85-no .43s ease-in-out 3}
.zw-rig[data-motion="feed"] .zw-rig-tail,.zw-rig[data-motion="eat"] .zw-rig-tail,.zw-rig[data-motion="celebrate"] .zw-rig-tail{animation:zw85-tail .34s ease-in-out 10}
.zw-rig[data-motion="ball"] .zw-rig-leg-left-1,.zw-rig[data-motion="ball"] .zw-rig-leg-left-3,
.zw-rig[data-motion="celebrate"] .zw-rig-leg-left-1,.zw-rig[data-motion="celebrate"] .zw-rig-leg-left-3{animation:zw85-flutter .43s ease-in-out 8}
.zw-rig[data-motion="ball"] .zw-rig-leg-right-2,.zw-rig[data-motion="ball"] .zw-rig-leg-right-4,
.zw-rig[data-motion="celebrate"] .zw-rig-leg-right-2,.zw-rig[data-motion="celebrate"] .zw-rig-leg-right-4{animation:zw85-flutter .43s ease-in-out 8 reverse}
.animal-card .zw-rig.animal-svg{display:block;width:100%!important;height:100%!important;filter:drop-shadow(1px 2px 1px #77634e25)}
.feed-select .extra-animal-round .zw-rig{width:88%!important;height:88%!important;margin:auto;filter:drop-shadow(1px 2px 1px #77634e30)}
.feed-select .extra-animal-round{display:grid!important;place-items:center!important}
.feeding-page .feed-main-pet.zw-rig{width:100%;height:98%;max-width:100%;position:relative;z-index:2;filter:drop-shadow(2px 4px 1px #77634e2e)}
.zw-meadow-result .zw-meadow-animals .zw-meadow-pet svg.zw-meadow-illustration{
 display:block!important;width:100%!important;height:100%!important;
 min-width:0!important;min-height:0!important;object-fit:contain!important;
 object-position:center bottom!important;filter:none!important;
 animation:zw-meadow-idle 3.3s ease-in-out infinite;animation-delay:calc(var(--i)*-.34s);
 transform-origin:center 85%!important;
}
.zw-meadow-result.zw-meadow-playing .zw-meadow-pet svg.zw-meadow-illustration{animation:none!important;transition:none!important}
.zw-animal-panel .zw-rig{display:block;width:100%;height:100%;max-height:100%}
.zw-rig .zw-rig-spines,.zw-rig .zw-rig-tuft{transform-origin:50% 85%;animation:zw85-idle-head 4.5s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){
 .zw-rig .zw-rig-part{animation:none!important;will-change:auto!important}
 .zw-meadow-result .zw-meadow-animals .zw-meadow-pet svg.zw-meadow-illustration{animation:none!important}
}


/* source: baby-meadow-rewards-v65.css */

/* V65: six generous picture-only rewards without crowding the meadow. */
.zw-meadow-result .zw-meadow-actions{
 top:76.1%!important;height:22%!important;
 grid-template-columns:repeat(3,minmax(0,1fr))!important;
 grid-template-rows:repeat(2,minmax(0,1fr))!important;
 column-gap:clamp(3px,3vw,14px)!important;row-gap:2px!important;
}
.zw-meadow-result .zw-meadow-action{
 width:clamp(49px,16vw,82px)!important;height:clamp(49px,16vw,82px)!important;
 padding:10%!important;
}
.zw-meadow-result .zw-meadow-stage{height:37%!important}
.zw-meadow-result .zw-meadow-action-cuddle{
 background:radial-gradient(circle at 33% 22%,#fff6f4,#f1bed1 72%,#ce8ca9)!important;
}
.zw-meadow-result .zw-meadow-action-bubbles{
 background:radial-gradient(circle at 33% 22%,#effdff,#b2def4 72%,#86bfdd)!important;
}
.zw-meadow-result .zw-all-care-cuddle,.zw-meadow-result .zw-all-care-bubbles{
 top:10%!important;left:47%!important;
}
@media(max-width:360px) and (orientation:portrait){
 .zw-meadow-result .zw-meadow-actions{top:76%!important;height:22.5%!important;gap:2px!important}
 .zw-meadow-result .zw-meadow-action{width:clamp(47px,16vw,58px)!important;height:clamp(47px,16vw,58px)!important;padding:9%!important}
 .zw-meadow-result .animal-care-stage.zw-meadow-stage{top:39%!important;height:36%!important}
}
@media(orientation:landscape) and (max-height:620px){
 .zw-meadow-result .zw-meadow-actions{
  top:68%!important;height:30%!important;left:29%!important;width:67%!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,minmax(0,1fr))!important;
  gap:1px 6px!important;
 }
 .zw-meadow-result .zw-meadow-action{width:clamp(42px,11vh,54px)!important;height:clamp(42px,11vh,54px)!important;padding:8%!important}
 .zw-meadow-result .animal-care-stage.zw-meadow-stage{top:27%!important;height:38%!important}
}


/* source: baby-motion-v67.css */
/* Zählwiese v67 – hand-drawn baby artwork, smooth scene continuity and motion. */
@media(orientation:portrait){
 #app:has(.zw-meadow-result) .zw-meadow-result.main-content{
  background-image:url('/baby-meadow-portrait-v67.webp')!important;
  background-size:100% 100%!important;
 }
}
.zw-meadow-result.zw-meadow-playing .zw-meadow-pet,
.zw-meadow-result.zw-meadow-playing .zw-meadow-illustration{
 backface-visibility:hidden!important;
 -webkit-backface-visibility:hidden!important;
}
/* Keep the original arrival animation running; only the inner illustrated image changes movement. */
.zw-meadow-result .zw-meadow-actions .zw-meadow-action{
 transition:opacity .4s ease-out, transform .24s cubic-bezier(.2,.8,.25,1), filter .3s ease!important;
}
.zw-meadow-result.zw-meadow-playing .zw-meadow-action:disabled:not(.is-selected){
 opacity:.52!important;filter:saturate(.65)!important;
}
.zw-meadow-result.zw-meadow-playing .zw-meadow-action.is-selected{
 opacity:1!important;filter:brightness(1.08) saturate(1.12)!important;
}
.zw-meadow-result .zw-all-care-item{
 position:absolute!important;pointer-events:none!important;
 z-index:30!important;opacity:0;
 width:clamp(25px,8vw,49px)!important;height:clamp(25px,8vw,49px)!important;
 left:46%!important;top:49%!important;
 transform-origin:50% 50%;will-change:transform,opacity;
}
.zw-meadow-result .zw-all-care-item.zw-all-care-feed{top:52%!important;left:48%!important}
.zw-meadow-result .zw-all-care-item.zw-all-care-water{top:48%!important;left:43%!important}
.zw-meadow-result .zw-all-care-item.zw-all-care-pet{top:9%!important;left:45%!important}
.zw-meadow-result .zw-all-care-item.zw-all-care-ball{top:59%!important;left:45%!important}
.zw-meadow-result .zw-all-care-item.zw-all-care-cuddle{top:13%!important;left:44%!important}
.zw-meadow-result .zw-all-care-item.zw-all-care-bubbles{
 top:4%!important;left:38%!important;width:clamp(35px,11vw,64px)!important;
 height:clamp(42px,12vw,75px)!important;
}
.zw-meadow-result .zw-care-spark{
 position:absolute;left:55%;top:10%;z-index:31!important;
 display:block;width:clamp(18px,5vw,29px)!important;
 height:clamp(18px,5vw,29px)!important;
 transform-origin:center center;opacity:0;pointer-events:none!important;
 will-change:opacity,transform;
 filter:drop-shadow(0 1px 1px #705b4680);
}
.zw-meadow-result .zw-care-spark svg{display:block;width:100%;height:100%}
.zw-meadow-result .zw-all-care-item svg{display:block;width:100%;height:100%;overflow:visible}
.zw-meadow-result .zw-meadow-leaving{animation:zw-meadow-fade-out .44s ease-in both!important;pointer-events:none!important}
@keyframes zw-meadow-fade-out{0%{opacity:1;filter:blur(0)}100%{opacity:.05;filter:blur(2px)}}
@media(orientation:landscape) and (max-height:620px){
 .zw-meadow-result .zw-meadow-action{width:clamp(48px,13vh,60px)!important;height:clamp(48px,13vh,60px)!important}
}
@media(prefers-reduced-motion:reduce){
 .zw-meadow-result.zw-meadow-playing .zw-meadow-action:disabled{transition:opacity .2s ease!important}
 .zw-meadow-result .zw-meadow-leaving{animation-duration:.2s!important}
}


/* source: meadow-layout-v68.css */
/* V68 – the illustrated animals must NEVER enter the bottom reward controls.
   High-count tasks reserve a dedicated, compact 3-row meadow. */
@media(orientation:portrait){
 #app .zw-meadow-result .animal-care-stage.zw-meadow-stage.zw-meadow-dense{
  top:32%!important;
  height:36%!important;
 }
 .zw-meadow-result .zw-meadow-stage.zw-meadow-dense .zw-meadow-animals .zw-meadow-pet{
  width:clamp(50px,17.1vw,74px)!important;
  height:clamp(56px,17.8vw,76px)!important;
 }
}
@media(orientation:landscape) and (max-height:620px){
 #app .zw-meadow-result .animal-care-stage.zw-meadow-stage.zw-meadow-dense{
  top:26%!important;
  height:35%!important;
 }
 .zw-meadow-result .zw-meadow-stage.zw-meadow-dense .zw-meadow-animals .zw-meadow-pet{
  width:clamp(39px,11vh,54px)!important;
  height:clamp(40px,12vh,54px)!important;
 }
}
/* Mobile phones with limited height still keep large enough animal faces. */
.zw-meadow-result .zw-meadow-stage.zw-meadow-dense .zw-meadow-pet img{
 width:100%!important;
 height:100%!important;
 object-fit:contain!important;
}
/* The cuddle applies to each creature, not a transparent animated card overlay. */
.zw-meadow-result.zw-care-cuddle .zw-meadow-pet{
 will-change:transform;
}


/* source: joy-motion-v69.css */
/* Zählwiese V69: joyful crayon stars and warm gestures without overlay rectangles. */
.zw-meadow-result .zw-baby-joy-doodle{
 position:absolute!important;
 top:3%!important;
 right:-1%!important;
 width:clamp(15px,5vw,27px)!important;
 height:clamp(15px,5vw,27px)!important;
 pointer-events:none!important;
 opacity:0;
 z-index:34!important;
 will-change:transform,opacity;
 transform-origin:50% 50%;
 filter:drop-shadow(0 1px 1px rgba(133,99,63,.30));
}
.zw-meadow-result .zw-baby-joy-doodle svg{
 display:block!important;
 width:100%!important;
 height:100%!important;
}
.zw-meadow-result.zw-meadow-playing .zw-meadow-pet img.zw-meadow-illustration{
 transform-origin:50% 88%!important;
 backface-visibility:hidden!important;
 -webkit-backface-visibility:hidden!important;
}
.zw-meadow-result .zw-meadow-pet .zw-care-spark{
 filter:drop-shadow(0 1px 1px rgba(133,99,63,.28));
}
@media(orientation:landscape) and (max-height:620px){
 .zw-meadow-result .zw-baby-joy-doodle{
  width:clamp(13px,4vh,20px)!important;
  height:clamp(13px,4vh,20px)!important;
 }
}
@media(prefers-reduced-motion:reduce){
 .zw-meadow-result .zw-baby-joy-doodle{transition:none!important;}
}


/* source: picnic-world-v71.css */
/* ZÄHLWIESE V71 / ZAHLEN-PICKNICK: all-new illustrated, text-free play scene. */
#app:has(.zw-picnic-world){
 position:relative!important;
 display:block!important;
 height:100dvh!important;min-height:100dvh!important;
 max-height:100dvh!important;
 overflow:hidden!important;
 background:#8acb6c!important;
}
#app:has(.zw-picnic-world)>.app-header{
 position:absolute!important;inset:0 0 auto!important;
 height:0!important;min-height:0!important;
 margin:0!important;padding:0!important;border:0!important;
 z-index:50!important;pointer-events:none!important;
 background:transparent!important;box-shadow:none!important;
}
#app:has(.zw-picnic-world)>.app-header .brand{display:none!important}
#app:has(.zw-picnic-world)>.app-header .header-tools{
 display:block!important;position:absolute!important;
 top:max(8px,env(safe-area-inset-top))!important;
 right:max(10px,env(safe-area-inset-right))!important;
 pointer-events:auto!important;
}
#app:has(.zw-picnic-world)>.app-header #homeBtn{
 display:grid!important;place-items:center!important;
 width:49px!important;height:49px!important;
 min-width:49px!important;min-height:49px!important;
 background:radial-gradient(circle at 35% 18%,#fff7db,#edca91)!important;
 border:3px solid #956b43!important;
 border-radius:50%!important;
 box-shadow:inset 0 1px 2px #fff7e5,0 3px 1px #75563888!important;
 color:#684f34!important;pointer-events:auto!important;
}
#app:has(.zw-picnic-world)>.app-header .zw-home-label{display:none!important}
#app:has(.zw-picnic-world)>.app-header .zw-go-home svg{width:27px!important;height:27px!important}
#app .zw-picnic-world.main-content{
 position:absolute!important;inset:0!important;
 display:block!important;
 height:100%!important;max-height:100%!important;min-height:0!important;
 width:100%!important;max-width:none!important;
 padding:0!important;margin:0!important;
 overflow:hidden!important;border:0!important;
 isolation:isolate!important;
 background:#86c56f!important;
}
.zw-picnic-world *{box-sizing:border-box}
.zw-pic-background{
 position:absolute;inset:0;z-index:-1;
 background:url('/baby-meadow-portrait-v67.webp') center center/100% 100% no-repeat;
}
.zw-pic-modes{
 position:absolute;z-index:25;
 top:10.5%;left:22%;width:56%;height:7%;
 display:flex;justify-content:space-evenly;gap:5px;align-items:center;
 pointer-events:auto;
}
.zw-pic-mode{
 display:grid;place-items:center;
 width:clamp(44px,12vw,57px);height:clamp(44px,12vw,57px);
 border:3px solid #9b764d;border-radius:50%;
 background:radial-gradient(circle at 35% 25%,#fffae0,#e6c99d 78%);
 box-shadow:inset 0 0 0 2px #fff7d0,0 3px #865e4090;
 padding:7px;
 transition:transform .2s,filter .3s;
 transform:scale(.87);
}
.zw-pic-mode.is-current{
 transform:scale(1.09);
 border-color:#86673f;
 box-shadow:inset 0 0 0 2px #fffde9,0 0 0 3px #e3f4ad,0 4px #815f4290;
}
.zw-pic-mode:active{transform:scale(.94)}
.zw-pic-mode-art{display:flex;align-items:center;justify-content:center;width:100%;height:100%}
.zw-pic-mode-art svg{width:76%;height:80%;flex:0 0 76%}
.zw-pic-mode-art:has(svg+svg) svg{width:53%;flex:0 0 53%;margin:-9%}
.zw-pic-wishes{
 position:absolute;z-index:15;
 top:20.5%;left:4%;width:92%;height:15%;
 display:flex;align-items:center;justify-content:center;gap:6px;
}
.zw-pic-wish{
 flex:1 1 0;min-width:0;max-width:175px;
 height:95%;padding:4px 5px;
 display:flex;align-items:center;justify-content:center;flex-wrap:wrap;
 gap:2px;position:relative;
 border:4px solid #a77c4d;border-radius:18px 19px 21px 17px;
 background:linear-gradient(157deg,#fff7d6,#f0d7a8 67%,#eac690);
 box-shadow:inset 0 1px #fff8e7,2px 4px 0 #865e3c6b;
 transition:transform .24s,filter .2s,opacity .2s;
 overflow:hidden;touch-action:manipulation;
}
.zw-pic-wish.is-current{transform:translateY(-3px);filter:drop-shadow(0 0 5px #fff6bd)}
.zw-pic-wish.is-complete{background:linear-gradient(#fcf6d0,#dbe3ad);border-color:#85a070}
.zw-pic-small-face{height:36%;width:25%;object-fit:contain;flex:0 0 25%}
.zw-pic-qty{
 font:900 clamp(20px,6.9vw,37px)/.98 'Trebuchet MS',system-ui,sans-serif;
 color:#7b5136;text-shadow:0 2px #fff7d3;
 margin-right:2px;flex:0 0 auto;
}
.zw-pic-picture{
 display:flex;align-content:center;justify-content:center;align-items:center;flex-wrap:wrap;
 flex:1 1 62%;min-width:0;max-height:100%;overflow:hidden;
 gap:0 2px;
}
.zw-pic-mini{display:block;flex:0 0 auto;width:clamp(14px,4vw,24px);height:clamp(14px,4vw,24px)}
.zw-pic-mini svg{width:100%;height:100%}
.zw-pic-wish:has(.zw-pic-mini:first-child:nth-last-child(-n+3)) .zw-pic-mini{width:clamp(25px,7vw,37px);height:clamp(25px,7vw,37px)}
.zw-pic-wishes:has(.zw-pic-wish:nth-child(3)) .zw-pic-mini{width:clamp(16px,4vw,25px);height:clamp(16px,4vw,25px)}
.zw-pic-characters{
 position:absolute;z-index:9;
 top:33%;left:0;width:100%;height:32%;
 pointer-events:none;
}
.zw-pic-friend{
 position:absolute;bottom:0;
 width:33%;height:86%;
 transform-origin:50% 89%;
 animation:zw-pic-idle 3.8s ease-in-out infinite;
 filter:drop-shadow(2px 5px 2px #507a3b52);
}
.zw-pic-friend img{display:block;width:100%;height:100%;object-fit:contain}
.zw-pic-moritz{left:3%;animation-delay:-.4s}
.zw-pic-igor{right:3%;animation-delay:-1.9s}
.zw-pic-cloth{
 position:absolute;z-index:7;
 left:16%;top:56%;width:68%;height:25%;
 transform:perspective(380px) rotateX(17deg);
 border:6px solid #f5deb5;border-radius:26% 19% 24% 21% / 21% 25% 26% 23%;
 background-color:#f8d6ce;
 background-image:
 linear-gradient(90deg,transparent 47%,#fff8d176 49%,#fff8d176 54%,transparent 56%),
 repeating-linear-gradient(0deg,transparent 0 19px,#ef9796ba 20px 34px,transparent 35px 49px),
 repeating-linear-gradient(90deg,#ffebd7 0 27px,#e9a1a6 28px 53px);
 box-shadow:0 7px 6px #4472314a,inset 0 0 0 4px #fff4db,0 0 1px 1px #b7786955;
}
.zw-pic-seam{position:absolute;inset:6px;border:2px dashed #fff8df96;border-radius:inherit}
.zw-pic-plates{
 position:absolute;z-index:17;
 top:56.8%;left:19%;width:62%;height:19%;
 display:flex;align-items:center;justify-content:center;gap:4px;
 pointer-events:auto;
}
.zw-pic-plate{
 position:relative;display:grid;place-items:center;
 flex:1 1 0;min-width:0;max-width:155px;
 height:90%;
 border:5px solid #c0b79e;border-radius:50%;
 background:radial-gradient(ellipse at 42% 37%,#fffdf4 0 42%,#f5e7cf 69%,#ebd1bb 80%,#fdf8e9 86%);
 box-shadow:inset 0 0 0 4px #fff8e9,0 4px 2px #805c4770;
 transform:rotate(-3deg);
 transition:filter .19s,transform .25s;
}
.zw-pic-plate:nth-child(even){transform:rotate(3deg)}
.zw-pic-plate.is-target{box-shadow:0 0 0 3px #fff0ad,0 4px 4px #805c4770,inset 0 0 0 4px #fff8e9}
.zw-pic-plate.is-hover{transform:scale(1.1) rotate(0);filter:drop-shadow(0 0 7px #fff6b6)}
.zw-pic-plate.is-complete{box-shadow:0 0 0 3px #b7df9a,0 3px 4px #805c4770,inset 0 0 0 4px #fff8e9}
.zw-pic-plate-inner{
 display:flex;align-items:center;justify-content:center;flex-wrap:wrap;align-content:center;
 gap:0;position:absolute;inset:11% 5% 16%;
 overflow:hidden;
}
.zw-pic-placed{display:inline-flex;align-items:center;justify-content:center;width:clamp(22px,6vw,38px);height:clamp(22px,6vw,38px);transform:rotate(calc((var(--k) - 2)*8deg))}
.zw-pic-placed svg{width:100%;height:100%}
.zw-pic-placed-new{animation:zw-pic-drop .57s cubic-bezier(.21,1.5,.4,1) both}
.zw-pic-plate-dots{
 position:absolute;bottom:3%;left:8%;right:8%;
 display:flex;justify-content:center;gap:3px;flex-wrap:wrap;
}
.zw-pic-plate-dots i{width:clamp(5px,1.5vw,9px);height:clamp(5px,1.5vw,9px);border-radius:50%;border:1px solid #b69e84;background:#f0e2d0}
.zw-pic-plate-dots i.is-filled{background:#93c67c;border-color:#688e57}
.zw-pic-basket{
 position:absolute;z-index:12;
 top:58%;left:1%;width:22%;height:20%;
 transform:rotate(-8deg);
 pointer-events:none;
}
.zw-pic-handle{position:absolute;top:0;left:17%;width:66%;height:70%;border:7px solid #aa774f;border-radius:50% 50% 12px 12px;box-shadow:inset 0 0 0 3px #e5c38f}
.zw-pic-basket-lid{position:absolute;top:32%;left:6%;width:88%;height:27%;border:4px solid #956843;border-radius:50%;background:#f3c889}
.zw-pic-weave{
 position:absolute;top:47%;left:3%;width:94%;height:48%;border:4px solid #946845;border-radius:13% 13% 31% 31%;
 background:repeating-linear-gradient(0deg,transparent 0 8px,#a9754666 9px 12px),repeating-linear-gradient(90deg,#e3b981 0 9px,#c18c53 10px 13px,#e0ab74 14px 21px);
 box-shadow:0 4px 3px #5273426b,inset 0 2px 2px #ffe0a7;
}
.zw-pic-foods{
 position:absolute;z-index:25;
 left:4%;top:84%;width:92%;height:10%;
 display:flex;gap:clamp(3px,2vw,12px);
 justify-content:center;align-items:center;
 pointer-events:auto;
}
.zw-pic-food{
 display:grid;place-items:center;
 flex:0 1 clamp(56px,17.5vw,81px);
 width:clamp(56px,17.5vw,81px);
 height:clamp(56px,17.5vw,81px);
 max-width:23%;min-width:0;
 padding:11%;
 border:4px solid #a27650;border-radius:50%;
 background:radial-gradient(circle at 31% 21%,#fff7d9,#eac69a 74%,#d59a70);
 box-shadow:inset 0 0 0 2px #fff1d0,0 4px 1px #84644986;
 touch-action:none;-webkit-tap-highlight-color:transparent;
 transition:filter .15s,transform .16s;
 user-select:none;
}
.zw-pic-food:nth-child(even){background:radial-gradient(circle at 35% 20%,#fcf2df,#cce4be 76%,#a9c99f)}
.zw-pic-food:nth-child(3n){background:radial-gradient(circle at 35% 20%,#fff4e0,#eec3be 76%,#d69b98)}
.zw-pic-food svg{width:100%;height:100%;min-width:33px;min-height:33px;pointer-events:none}
.zw-pic-food:active{transform:scale(.93)}
.zw-pic-food.is-lifted{opacity:.45;filter:saturate(.65)}
.zw-pic-food.zw-pic-wrong{animation:zw-pic-wrong .58s ease-out}
.zw-pic-food:focus-visible,.zw-pic-mode:focus-visible,.zw-pic-wish:focus-visible{outline:4px solid #fff4ac;outline-offset:2px}
.zw-pic-ghost{
 position:fixed;z-index:9999;
 width:78px;height:78px;
 left:0;top:0;display:grid;place-items:center;
 transform:translate(-50%,-60%) rotate(-6deg) scale(1.09);
 filter:drop-shadow(0 8px 4px #7052397a);
 pointer-events:none;
}
.zw-pic-ghost svg{width:100%;height:100%}
.zw-pic-result-actions{
 position:absolute;z-index:31;right:3%;
 bottom:2%;width:60px;height:60px;display:grid;place-items:center;
 pointer-events:none;
}
#zwPicNext{
 pointer-events:auto;display:grid;place-items:center;
 width:56px;height:56px;border:4px solid #946d48;border-radius:50%;
 background:radial-gradient(#fff7d3,#e4bf87);
 box-shadow:inset 0 0 0 2px #fff5d4,0 4px 2px #7e5f466b;
}
#zwPicNext[hidden]{display:none!important}
#zwPicNext svg{width:65%;height:65%}
.zw-pic-announcer{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.zw-pic-butterfly{position:absolute;top:39%;left:65%;width:21px;height:23px;opacity:.87;animation:zw-pic-butterfly 9s ease-in-out infinite}
.zw-pic-butterfly:before,.zw-pic-butterfly:after{content:'';position:absolute;width:14px;height:18px;top:2px;background:#b9a4deaa;border:2px solid #7d83a5;border-radius:75% 35% 75% 35%}
.zw-pic-butterfly:before{left:-4px;transform:rotate(-35deg)}.zw-pic-butterfly:after{right:-4px;transform:rotate(40deg)}
.zw-pic-thinking{animation:zw-pic-thinking .58s ease-in-out!important}
.zw-pic-small-cheer{animation:zw-pic-cheer .95s ease-in-out 2!important}
.zw-pic-plate.zw-pic-pop{animation:zw-pic-plate-pop .48s ease-out}
.zw-pic-party .zw-pic-cloth{animation:zw-pic-cloth-pulse .95s ease-out 1}
.zw-pic-eating .zw-pic-friend{animation:zw-pic-chew .55s ease-in-out 3!important}
.zw-pic-dance .zw-pic-friend{animation:zw-pic-dance 1.1s ease-in-out infinite!important}
.zw-pic-flying-bite{position:absolute;top:0;left:45%;width:37px;height:37px;z-index:30;pointer-events:none;animation:zw-pic-food-flight 1.7s ease-in-out both}
.zw-pic-flying-bite svg{width:100%;height:100%}
.zw-pic-flying-bite[style*="--lane:1"]{animation-delay:.18s}.zw-pic-flying-bite[style*="--lane:2"]{animation-delay:.4s}
.zw-picnic-world{animation:none!important}
.zw-picnic-world .zw-pic-wishes,.zw-picnic-world .zw-pic-plates,.zw-picnic-world .zw-pic-foods,.zw-picnic-world .zw-pic-characters{animation:zw-pic-scene-enter .39s ease-out both}
.zw-picnic-world.zw-pic-leaving{pointer-events:none!important}
.zw-picnic-world.zw-pic-leaving .zw-pic-wishes,.zw-picnic-world.zw-pic-leaving .zw-pic-plates,.zw-picnic-world.zw-pic-leaving .zw-pic-foods,.zw-picnic-world.zw-pic-leaving .zw-pic-characters{animation:zw-pic-scene-leave .39s ease-in both!important}
.zw-pic-basket.zw-pic-basket-wiggle .zw-pic-basket-lid{animation:zw-pic-basket-lid .68s ease-in-out both}
@keyframes zw-pic-scene-enter{from{opacity:.45;translate:0 7px}to{opacity:1;translate:0 0}}
@keyframes zw-pic-scene-leave{from{opacity:1;translate:0 0}to{opacity:.08;translate:0 -8px}}
@keyframes zw-pic-basket-lid{0%,100%{transform:translateY(0) rotate(0)}30%{transform:translateY(-12px) rotate(-8deg)}64%{transform:translateY(-5px) rotate(4deg)}}
@keyframes zw-pic-idle{0%,65%,100%{transform:translateY(0) rotate(-1deg)}77%{transform:translateY(-4px) rotate(1.3deg)}91%{transform:translateY(-2px) rotate(-1deg)}}
@keyframes zw-pic-drop{0%{transform:translateY(-37px) scale(.62) rotate(-15deg);opacity:.1}60%{transform:translateY(5px) scale(1.15) rotate(7deg);opacity:1}100%{transform:translateY(0) scale(1);opacity:1}}
@keyframes zw-pic-wrong{0%,100%{transform:translateX(0);filter:none}18%{transform:translateX(-5px);filter:drop-shadow(0 0 7px #ef707d)}35%{transform:translateX(6px)}56%{transform:translateX(-4px)}74%{transform:translateX(3px)}}
@keyframes zw-pic-plate-pop{0%,100%{scale:1}50%{scale:1.07}}
@keyframes zw-pic-thinking{0%,100%{rotate:0}26%{rotate:-6deg}53%{rotate:5deg}75%{rotate:-3deg}}
@keyframes zw-pic-cheer{0%,100%{transform:translateY(0) rotate(0)}25%{transform:translateY(-14px) rotate(-7deg)}65%{transform:translateY(-6px) rotate(8deg)}}
@keyframes zw-pic-chew{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(3px) scale(1.04,.96)}}
@keyframes zw-pic-dance{0%,100%{transform:translateY(0) rotate(-2deg)}28%{transform:translateY(-13px) rotate(6deg)}55%{transform:translateY(-2px) rotate(-5deg)}78%{transform:translateY(-9px) rotate(4deg)}}
@keyframes zw-pic-cloth-pulse{0%,100%{scale:1}48%{scale:1.04}}
@keyframes zw-pic-butterfly{0%,100%{transform:translate(0,0) rotate(-5deg)}26%{transform:translate(-19px,-12px) rotate(8deg)}51%{transform:translate(8px,10px) rotate(-5deg)}76%{transform:translate(23px,-17px) rotate(10deg)}}
@keyframes zw-pic-food-flight{0%{transform:translate(0,0) scale(1);opacity:1}55%{transform:translate(var(--pic-mid-x,-30px),var(--pic-mid-y,-100px)) scale(.88);opacity:1}87%{transform:translate(var(--pic-dx,-60px),var(--pic-dy,-150px)) scale(.38);opacity:1}100%{transform:translate(var(--pic-dx,-60px),var(--pic-dy,-150px)) scale(.19);opacity:0}}
@media(max-width:359px) and (orientation:portrait){
 .zw-pic-wishes{top:21%;height:14%}.zw-pic-wish{padding:2px;border-width:3px}
 .zw-pic-qty{font-size:20px}.zw-pic-mini{width:15px;height:15px}
 .zw-pic-friend{width:34%}
 .zw-pic-plates{left:20%;width:60%}
 .zw-pic-food{width:56px;height:56px;padding:10px}
}
@media(orientation:landscape) and (max-height:620px){
 #app .zw-picnic-world.main-content{background:#8fcd7a!important}
 .zw-pic-background{background-image:url('/animal-meadow-land-v64.webp');background-size:100% 100%}
 .zw-pic-modes{left:6%;top:13%;width:25%;height:18%}
 .zw-pic-wishes{left:34%;top:10%;width:60%;height:25%}
 .zw-pic-wish{max-width:185px}
 .zw-pic-characters{top:23%;height:58%;width:100%}
 .zw-pic-friend{width:19%;height:81%;bottom:10%}
 .zw-pic-moritz{left:1%}.zw-pic-igor{right:1%}
 .zw-pic-cloth{left:25%;top:48%;width:50%;height:40%}
 .zw-pic-plates{left:31%;top:50%;width:39%;height:29%}
 .zw-pic-basket{left:14%;top:52%;width:12%;height:38%}
 .zw-pic-foods{left:31%;top:81%;width:40%;height:14%}
 .zw-pic-food{width:clamp(44px,12vh,64px);height:clamp(44px,12vh,64px);padding:7px;max-width:none}
 .zw-pic-mini{width:18px;height:18px}
 .zw-pic-qty{font-size:clamp(20px,4vw,29px)}
 .zw-pic-mode{width:48px;height:48px}
 .zw-pic-result-actions{right:5%;bottom:3%}
}
@media(prefers-reduced-motion:reduce){
 .zw-picnic-world *{animation-duration:.001ms!important;transition-duration:.001ms!important}
 .zw-pic-food.zw-pic-wrong{animation-duration:.25s!important}
}

/* V71 finishing: readable picture-only wishes and seamless motion. */
.zw-pic-wish.zw-pic-many .zw-pic-picture{gap:0 1px}
.zw-pic-wish.zw-pic-many .zw-pic-mini{width:clamp(13px,3.7vw,21px);height:clamp(13px,3.7vw,21px)}
.zw-pic-wishes:has(.zw-pic-wish:nth-child(3)) .zw-pic-wish.zw-pic-many .zw-pic-mini{width:clamp(12px,3.3vw,17px);height:clamp(12px,3.3vw,17px)}
.zw-pic-return-ghost{position:fixed;z-index:99998;display:grid;place-items:center;width:76px;height:76px;pointer-events:none}
.zw-pic-return-ghost svg{width:100%;height:100%}
.zw-pic-sipping .zw-pic-friend{animation:zw-pic-sip .68s ease-in-out 3!important}
@keyframes zw-pic-sip{
 0%,100%{transform:translateY(0) rotate(0deg)}
 38%{transform:translateY(2px) rotate(-7deg)}
 72%{transform:translateY(1px) rotate(3deg)}
}


/* source: picnic-storybook-v73.css */
/* ZÄHLWIESE V73 — storybook picnic scene, visually aligned to Finger/Tiere zählen.
   Real hand-drawn artwork and illustrated paper, not glossy interface cards. */
#app:has(.zw-picnic-world) .zw-picnic-world.main-content{
 background:#8ac66c!important;
}
.zw-picnic-world .zw-pic-background{
 background:url('/baby-meadow-portrait-v67.webp') center center/100% 100% no-repeat!important;
}
.zw-picnic-world .zw-pic-modes{
 z-index:80!important;
 top:11.6%!important;
 left:22%!important;
 width:56%!important;
 height:7.3%!important;
 gap:6px!important;
}
.zw-picnic-world .zw-pic-mode{
 width:clamp(45px,13vw,59px)!important;
 height:clamp(45px,13vw,59px)!important;
 background:linear-gradient(155deg,#f8ebc3,#c99a63 77%,#986e42)!important;
 border:3px solid #825a37!important;
 box-shadow:0 2px 0 #684b31ad,inset 0 0 0 3px #fff0bf!important;
 border-radius:50% 48% 51% 49%!important;
}
.zw-picnic-world .zw-pic-mode.is-current{
 transform:scale(1.04) rotate(-3deg)!important;
 outline:3px solid #ffe4a5!important;
 outline-offset:2px!important;
}
.zw-picnic-world .zw-pic-wishes{
 top:20.6%!important;
 height:16%!important;
 gap:9px!important;
 left:4%!important;
 width:92%!important;
}
.zw-picnic-world .zw-pic-wish{
 border:4px solid #987348!important;
 border-radius:24px 21px 23px 25px / 21px 24px 25px 22px!important;
 background:
   radial-gradient(circle at 18% 20%,#fff7d9 0%,transparent 51%),
   repeating-linear-gradient(-4deg,#fff0c6 0px,#fff0c6 9px,#f5e3b6 10px,#f3e0b3 12px),
   #f3deae!important;
 box-shadow:inset 0 0 0 3px #fff7dd,1px 4px 0 #98714791,0 6px 8px #536e3831!important;
 gap:2px!important;
 padding:7px!important;
}
.zw-picnic-world .zw-pic-wish.is-current{
 transform:rotate(-1.5deg) translateY(-3px)!important;
 filter:none!important;
 box-shadow:inset 0 0 0 3px #fff7dd,0 0 0 3px #f5d981,1px 4px 0 #987147a3!important;
}
.zw-picnic-world .zw-pic-wish.is-complete{
 border-color:#82a06c!important;
 background:#f0ebc6!important;
}
.zw-picnic-world .zw-pic-small-face{
 height:39%!important;width:26%!important;
 object-fit:contain!important;
 image-rendering:auto;
}
.zw-picnic-world .zw-pic-qty{
 color:#755138!important;
 font-family:'Trebuchet MS',system-ui,sans-serif!important;
 text-shadow:1px 2px #fff7d3!important;
}
.zw-picnic-world .zw-pic-picture{
 min-width:0!important;
 max-height:100%!important;
 gap:1px!important;
}
.zw-picnic-world .zw-pic-mini{
 filter:drop-shadow(0 1px #aa895b58)!important;
}
.zw-picnic-world .zw-pic-characters{
 top:35.5%!important;
 height:28%!important;
 left:1%!important;
 width:98%!important;
}
.zw-picnic-world .zw-pic-friend{
 width:34%!important;
 height:99%!important;
 transform-origin:50% 90%!important;
 filter:drop-shadow(2px 5px 1px #517c4157)!important;
}
.zw-picnic-world .zw-pic-moritz{left:1.5%!important}
.zw-picnic-world .zw-pic-igor{right:1.5%!important}
.zw-picnic-world .zw-pic-friend img{
 display:block!important;
 width:100%!important;
 height:100%!important;
 object-fit:contain!important;
}
.zw-picnic-world .zw-pic-cloth{
 left:13%!important;
 top:58.4%!important;
 width:75%!important;
 height:22%!important;
 border:5px solid #fff1c9!important;
 border-radius:19% 20% 21% 22%/13% 14% 13% 14%!important;
 box-shadow:0 5px 4px #6b854a55,inset 0 0 0 3px #ffd0b8!important;
 background-image:
  repeating-linear-gradient(90deg,transparent 0 23px,#fff3d1ac 24px 43px),
  repeating-linear-gradient(0deg,#efacb1 0 29px,#ffdfc8 31px 51px)!important;
 transform:perspective(450px) rotateX(11deg) rotate(-1deg)!important;
}
.zw-picnic-world .zw-pic-seam{
 border:3px dashed #fff3e5bc!important;
 inset:8px!important;
 border-radius:inherit!important;
}
.zw-picnic-world .zw-pic-plates{
 top:59.5%!important;
 left:21%!important;
 width:64%!important;
 height:16.5%!important;
 gap:5px!important;
}
.zw-picnic-world .zw-pic-plate{
 border:5px solid #aa997d!important;
 background:radial-gradient(ellipse at 36% 29%,#fffdf2 0 38%,#f0e5cf 60%,#dfd1ba 78%,#fff5da 89%)!important;
 box-shadow:inset 0 0 0 4px #fffaf0,0 4px 2px #79594373!important;
}
.zw-picnic-world .zw-pic-plate.is-target{
 box-shadow:0 0 0 3px #f7e19f,inset 0 0 0 4px #fffaf0,0 4px 2px #79594373!important;
}
.zw-picnic-world .zw-pic-plate.is-complete{
 box-shadow:0 0 0 3px #b7d89f,inset 0 0 0 4px #fffaf0,0 4px 2px #79594373!important;
}
.zw-picnic-world .zw-pic-plate-dots i.is-filled{
 background:#a8c778!important;
 border-color:#738c55!important;
}
.zw-picnic-world .zw-pic-basket{
 top:58.5%!important;
 left:.8%!important;
 transform:rotate(-7deg) scale(.92)!important;
 filter:drop-shadow(1px 3px 2px #72533363)!important;
}
.zw-picnic-world .zw-pic-foods{
 top:83.2%!important;
 left:3%!important;width:94%!important;height:11.2%!important;
 gap:clamp(4px,2vw,13px)!important;
}
.zw-picnic-world .zw-pic-food{
 flex:0 1 clamp(58px,18vw,82px)!important;
 width:clamp(58px,18vw,82px)!important;
 height:clamp(58px,18vw,82px)!important;
 max-width:24%!important;
 border:4px solid #8d6842!important;
 background:radial-gradient(circle at 37% 21%,#fff8d9,#eed29f 66%,#bc915b)!important;
 box-shadow:inset 0 0 0 3px #fff4d5,0 3px 1px #76543892!important;
}
.zw-picnic-world .zw-pic-food:nth-child(2n){
 background:radial-gradient(circle at 37% 21%,#f5f5d1,#dbe6af 68%,#b0bd81)!important;
}
.zw-picnic-world .zw-pic-food:nth-child(3n){
 background:radial-gradient(circle at 37% 21%,#fff2e0,#f1d2c9 68%,#d2a48e)!important;
}
.zw-picnic-world .zw-pic-food svg{
 width:90%!important;height:90%!important;
 max-height:56px!important;
}
.zw-picnic-world .zw-pic-result-actions{
 right:1%!important;bottom:2%!important;
}
.zw-picnic-world #zwPicNext{
 background:radial-gradient(circle at 37% 21%,#fff8da,#e7c28d 75%,#bd8850)!important;
 border-color:#926c44!important;
}
.zw-picnic-world .zw-pic-party .zw-pic-friend:after{content:none!important}
.zw-picnic-world .zw-pic-trail{
 position:absolute;
 left:50%;top:64%;width:28px;height:28px;
 transform:translate(-50%,-50%);
 opacity:0;pointer-events:none;z-index:27;
}
.zw-picnic-world .zw-pic-trail svg{width:100%;height:100%}
.zw-picnic-world .zw-pic-portion-joy{position:absolute;left:47%;top:14%;width:27px;height:27px;z-index:30;pointer-events:none;animation:zw-pic-joy-up .64s ease-out both}
.zw-picnic-world .zw-pic-portion-joy svg{width:100%;height:100%}
@keyframes zw-pic-joy-up{0%{opacity:0;transform:translateY(14px) scale(.3) rotate(-20deg)}35%{opacity:1;transform:translateY(-12px) scale(1.03) rotate(5deg)}100%{opacity:0;transform:translateY(-34px) scale(.6) rotate(20deg)}}
@media (max-width:360px) and (orientation:portrait){
 .zw-picnic-world .zw-pic-food{
  flex-basis:clamp(51px,18vw,63px)!important;
  width:clamp(51px,18vw,63px)!important;
  height:clamp(51px,18vw,63px)!important;
  padding:7%!important;
 }
 .zw-picnic-world .zw-pic-wishes{top:21.3%!important;height:16.1%!important}
 .zw-picnic-world .zw-pic-characters{top:34.5%!important;height:29%!important}
 .zw-picnic-world .zw-pic-basket{transform:rotate(-7deg) scale(.81)!important}
}
#app:has(.zw-picnic-world)>.app-header .header-tools{pointer-events:none!important}
#app:has(.zw-picnic-world)>.app-header #homeBtn{pointer-events:auto!important}
@media (orientation:landscape) and (max-height:620px){
 .zw-picnic-world .zw-pic-modes{left:29%!important;top:5%!important;height:14%!important;width:42%!important}
 .zw-picnic-world .zw-pic-wishes{left:17%!important;top:19%!important;width:66%!important;height:19%!important}
 .zw-picnic-world .zw-pic-characters{top:27%!important;height:47%!important}
 .zw-picnic-world .zw-pic-friend{width:20%!important;height:90%!important}
 .zw-picnic-world .zw-pic-moritz{left:4%!important}
 .zw-picnic-world .zw-pic-igor{right:4%!important}
 .zw-picnic-world .zw-pic-cloth{left:26%!important;top:56%!important;width:48%!important;height:30%!important}
 .zw-picnic-world .zw-pic-plates{left:31%!important;top:59%!important;width:44%!important;height:22%!important}
 .zw-picnic-world .zw-pic-foods{top:84%!important;left:24%!important;width:53%!important;height:14%!important}
 .zw-picnic-world .zw-pic-food{width:clamp(44px,11vh,55px)!important;height:clamp(44px,11vh,55px)!important;flex-basis:clamp(44px,11vh,55px)!important;padding:5%!important}
 .zw-picnic-world .zw-pic-basket{left:18%!important;top:54%!important;width:12%!important;height:31%!important}
}


/* source: picnic-adventure-v76.css */
/* Zählwiese v76 – redesigned picnic artwork matching Finger zählen / Tiere zählen.
   Performance: static illustrated scenery, only isolated small elements animate. */
#app .zw-picnic-world.main-content{
 background:#91c777!important;
 contain:layout style!important;
 backface-visibility:hidden!important;
}
.zw-picnic-world .zw-pic-background{
 background-image:url('/baby-meadow-portrait-v67.webp')!important;
 background-size:100% 100%!important;
 background-position:center!important;
 background-repeat:no-repeat!important;
 opacity:1!important;animation:none!important;
}
.zw-picnic-world .zw-pic-new-sun{display:none!important}
.zw-picnic-world .zw-pic-new-sun{
 position:absolute!important;right:6%!important;top:3%!important;
 width:clamp(50px,13vw,85px)!important;height:auto!important;
 z-index:1!important;opacity:.98!important;pointer-events:none!important;
}
.zw-picnic-world .zw-pic-butterfly{
 z-index:3!important;top:37%!important;left:70%!important;
 animation:zw-v76-butterfly 8s ease-in-out infinite!important;
 transform:translate3d(0,0,0)!important;
}
@keyframes zw-v76-butterfly{
 0%,100%{transform:translate3d(0,0,0) rotate(-4deg)}
 48%{transform:translate3d(-19px,-11px,0) rotate(6deg)}
}
.zw-picnic-world .zw-pic-modes{
 top:10.0%!important;left:20%!important;width:60%!important;
 height:7.5%!important;gap:clamp(8px,3vw,18px)!important;
 z-index:35!important;
}
.zw-picnic-world .zw-pic-mode{
 flex:0 0 auto!important;
 width:clamp(49px,13vw,64px)!important;
 height:clamp(49px,13vw,64px)!important;
 border:4px solid #96724c!important;
 background:radial-gradient(circle at 30% 19%,#fff4d7,#eacb95 75%,#a98159)!important;
 border-radius:48% 52% 47% 54%!important;
 box-shadow:inset 0 0 0 3px #fff9dd,0 3px 0 #694d3991!important;
 transition:transform .22s ease!important;
 filter:none!important;
}
.zw-picnic-world .zw-pic-mode.is-current{
 transform:translate3d(0,-3px,0) scale(1.08)!important;
 border-color:#8c6a49!important;
 box-shadow:inset 0 0 0 3px #fff9dd,0 0 0 3px #f6d87a,0 3px 0 #694d3991!important;
}
.zw-picnic-world .zw-pic-wishes{
 top:19.4%!important;left:6%!important;width:88%!important;height:17.0%!important;
 gap:clamp(5px,2vw,11px)!important;
 z-index:12!important;
}
.zw-picnic-world .zw-pic-wish{
 min-width:0!important;
 border:0!important;border-radius:17px!important;
 background:url('/picnic-art-v76/wish.svg') center/100% 100% no-repeat!important;
 padding:clamp(8px,1.7vh,14px)!important;
 box-shadow:0 4px 2px #715c3a38!important;
 filter:none!important;
 transition:transform .22s ease!important;
}
.zw-picnic-world .zw-pic-wish.is-current{
 transform:translate3d(0,-3px,0) rotate(-.8deg)!important;
 outline:3px solid #f5d67e!important;outline-offset:0!important;
 box-shadow:0 3px 2px #856b4e5e!important;
}
.zw-picnic-world .zw-pic-wish.is-complete{
 outline:3px solid #91b47d!important;
}
.zw-picnic-world .zw-pic-qty{
 color:#77513a!important;
 font-family:'Trebuchet MS',system-ui,sans-serif!important;
 font-weight:900!important;text-shadow:0 1px #fff9dc!important;
 font-size:clamp(19px,5.8vw,35px)!important;
}
.zw-picnic-world .zw-pic-wish .zw-pic-small-face{
 display:block!important;
 width:clamp(27px,7vw,42px)!important;
 height:clamp(30px,7.2vw,45px)!important;
 object-fit:contain!important;
 -webkit-mask-image:linear-gradient(#000 0 74%,transparent 100%)!important;
 mask-image:linear-gradient(#000 0 74%,transparent 100%)!important;
}
.zw-picnic-world .zw-pic-picture{
 display:flex!important;align-content:center!important;align-items:center!important;
 justify-content:center!important;flex-wrap:wrap!important;
 gap:1px 2px!important;overflow:visible!important;
}
.zw-picnic-world .zw-pic-mini{
 width:clamp(15px,4.4vw,25px)!important;
 height:clamp(15px,4.4vw,25px)!important;
 filter:none!important;
}
.zw-picnic-world .zw-pic-wish.zw-pic-many .zw-pic-mini{
 width:clamp(13px,3.5vw,19px)!important;
 height:clamp(13px,3.5vw,19px)!important;
}
.zw-picnic-world .zw-pic-wishes:has(.zw-pic-wish:nth-child(3)) .zw-pic-mini{
 width:clamp(12px,3.1vw,17px)!important;
 height:clamp(12px,3.1vw,17px)!important;
}
.zw-picnic-world .zw-pic-characters{
 top:36.5%!important;left:0!important;width:100%!important;height:27%!important;
 z-index:10!important;animation:none!important;translate:none!important;
 overflow:visible!important;
}
.zw-picnic-world .zw-pic-friend{
 width:34%!important;height:100%!important;bottom:0!important;
 filter:none!important;
 transform:translate3d(0,0,0);
 animation:zw-v76-idle 5.2s ease-in-out infinite!important;
 will-change:transform!important;
}
.zw-picnic-world .zw-pic-moritz{left:1%!important;animation-delay:-1s!important}
.zw-picnic-world .zw-pic-igor{right:1%!important;animation-delay:-3.1s!important}
.zw-picnic-world .zw-pic-friend img{
 width:100%!important;height:100%!important;object-fit:contain!important;
 /* Fade only the original lower-body cut; keep eyes, smile and clothing crisp. */
 -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 60%,rgba(0,0,0,.93) 64%,rgba(0,0,0,.58) 70%,transparent 83%)!important;
 mask-image:linear-gradient(to bottom,#000 0%,#000 60%,rgba(0,0,0,.93) 64%,rgba(0,0,0,.58) 70%,transparent 83%)!important;
 filter:none!important;
}
@keyframes zw-v76-idle{0%,60%,100%{transform:translate3d(0,0,0) rotate(-1deg)}
 77%{transform:translate3d(0,-4px,0) rotate(1.6deg)}}
.zw-picnic-world .zw-pic-character-grass{
 position:absolute;z-index:11;pointer-events:none;
 left:0;top:50%;width:100%;height:12%;
 background:url('/picnic-art-v76/foreground-grass.svg') center/100% 100% no-repeat!important;
 opacity:.8;
}
.zw-picnic-world .zw-pic-cloth{
 top:57.5%!important;left:11%!important;width:78%!important;height:23%!important;
 border:0!important;box-shadow:none!important;
 border-radius:15%!important;
 background:url('/picnic-art-v76/blanket.svg') center/100% 100% no-repeat!important;
 transform:translate3d(0,0,0)!important;
 z-index:14!important;
 animation:none!important;
}
.zw-picnic-world .zw-pic-seam{display:none!important}
.zw-picnic-world .zw-pic-plates{
 top:61.1%!important;left:19%!important;width:67%!important;height:17.3%!important;
 z-index:18!important;gap:clamp(3px,1.2vw,8px)!important;
 animation:none!important;translate:none!important;
}
.zw-picnic-world .zw-pic-plate{
 border:0!important;box-shadow:none!important;
 border-radius:50%!important;
 background:url('/picnic-art-v76/plate.svg') center/contain no-repeat!important;
 height:100%!important;max-width:145px!important;
 transform:translate3d(0,0,0)!important;
 transition:transform .21s ease!important;filter:none!important;
}
.zw-picnic-world .zw-pic-plate.is-target{
 transform:scale(1.04)!important;
 filter:drop-shadow(0 0 3px #ffe5a2)!important;
}
.zw-picnic-world .zw-pic-plate.is-complete{
 filter:drop-shadow(0 0 3px #c4dda2)!important;
}
.zw-picnic-world .zw-pic-plate.is-hover{
 transform:scale(1.095)!important;
}
.zw-picnic-world .zw-pic-placed{
 will-change:transform;transform:rotate(calc((var(--k) - 2)*6deg)) translateZ(0);
}
.zw-picnic-world .zw-pic-placed-new{
 animation:none!important;
}
.zw-picnic-world .zw-pic-plate-dots{
 bottom:8%!important;
}
.zw-picnic-world .zw-pic-basket{
 top:61.0%!important;left:1%!important;width:24%!important;height:20%!important;
 background:url('/picnic-art-v76/basket.svg') center/contain no-repeat!important;
 border:0!important;filter:none!important;
 transform:rotate(-5deg)!important;animation:none!important;
 z-index:20!important;pointer-events:none!important;
}
.zw-picnic-world .zw-pic-basket>*{visibility:hidden!important}
.zw-picnic-world .zw-pic-foods{
 left:3%!important;top:83%!important;width:94%!important;height:12.3%!important;
 gap:clamp(4px,1.5vw,12px)!important;z-index:35!important;
 animation:none!important;translate:none!important;
}
.zw-picnic-world .zw-pic-food{
 width:clamp(58px,19vw,83px)!important;height:clamp(58px,19vw,83px)!important;
 flex:0 1 clamp(58px,19vw,83px)!important;
 max-width:24%!important;
 border:4px solid #9c754b!important;
 background:radial-gradient(circle at 35% 24%,#fff8e3,#ecd4aa 70%,#c19a66)!important;
 box-shadow:inset 0 0 0 3px #fffae9,0 4px 0 #7a583b9f!important;
 border-radius:49% 51% 50% 48%!important;
 filter:none!important;
 touch-action:none!important;
 will-change:transform;
 transition:transform .17s ease!important;
}
.zw-picnic-world .zw-pic-food:nth-child(even){background:radial-gradient(circle at 35% 24%,#f8f7df,#e1e6bf 70%,#b1bc87)!important}
.zw-picnic-world .zw-pic-food:nth-child(3n){background:radial-gradient(circle at 35% 24%,#fff5eb,#eacecb 70%,#c69b8c)!important}
.zw-picnic-world .zw-pic-food svg{max-width:91%!important;max-height:91%!important}
.zw-picnic-world .zw-pic-ghost{
 left:0!important;top:0!important;width:78px;height:78px;
 transform:translate3d(-150px,-150px,0);
 will-change:transform!important;
 filter:none!important;
}
.zw-picnic-world .zw-pic-wishes,
.zw-picnic-world .zw-pic-plates,
.zw-picnic-world .zw-pic-foods,
.zw-picnic-world .zw-pic-characters{
 animation:none!important;translate:none!important;
}
.zw-picnic-world.zw-pic-leaving .zw-pic-wishes,
.zw-picnic-world.zw-pic-leaving .zw-pic-plates,
.zw-picnic-world.zw-pic-leaving .zw-pic-foods,
.zw-picnic-world.zw-pic-leaving .zw-pic-characters{
 animation:none!important;opacity:1!important;translate:none!important;
}
.zw-picnic-world.zw-pic-leaving::after{
 content:"";position:absolute;inset:0;z-index:45;pointer-events:none;
 background:#fbf0ca;
 animation:zw-v76-next .38s ease-in both;
}
@keyframes zw-v76-next{from{opacity:0}to{opacity:1}}
.zw-picnic-world .zw-pic-party .zw-pic-cloth,
.zw-picnic-world.zw-pic-party .zw-pic-cloth{animation:none!important}
.zw-picnic-world.zw-pic-dance .zw-pic-friend{animation:zw-v76-dance 1.15s ease-in-out 2!important}
.zw-picnic-world.zw-pic-eating .zw-pic-friend{animation:zw-v76-eat .6s ease-in-out 3!important}
@keyframes zw-v76-dance{0%,100%{transform:translate3d(0,0,0) rotate(0)}35%{transform:translate3d(0,-14px,0) rotate(-5deg)}68%{transform:translate3d(0,-7px,0) rotate(5deg)}}
@keyframes zw-v76-eat{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(0,2px,0) scale(1.03,.97)}}
.zw-picnic-world .zw-pic-result-actions{z-index:38!important}
@media(max-width:360px) and (orientation:portrait){
 .zw-picnic-world .zw-pic-food{width:clamp(51px,18.5vw,63px)!important;height:clamp(51px,18.5vw,63px)!important;flex-basis:clamp(51px,18.5vw,63px)!important}
 .zw-picnic-world .zw-pic-wishes{top:20.3%!important;height:16%!important}
 .zw-picnic-world .zw-pic-characters{top:36%!important;height:28%!important}
 .zw-picnic-world .zw-pic-wish{padding:4px!important}
}
@media(orientation:landscape) and (max-height:620px){
 .zw-picnic-world .zw-pic-background{background-image:url('/animal-meadow-land-v64.webp')!important}
 .zw-picnic-world .zw-pic-new-sun{top:2%!important;right:2%!important;width:45px!important}
 .zw-picnic-world .zw-pic-modes{top:5%!important;left:30%!important;width:42%!important;height:15%!important}
 .zw-picnic-world .zw-pic-wishes{top:20%!important;left:28%!important;width:46%!important;height:19%!important}
 .zw-picnic-world .zw-pic-characters{top:28%!important;height:41%!important}
 .zw-picnic-world .zw-pic-friend{width:20%!important;height:92%!important}
 .zw-picnic-world .zw-pic-moritz{left:2%!important}
 .zw-picnic-world .zw-pic-igor{right:2%!important}
 .zw-picnic-world .zw-pic-character-grass{top:48%!important;height:17%!important}
 .zw-picnic-world .zw-pic-cloth{top:56%!important;left:23%!important;width:54%!important;height:34%!important}
 .zw-picnic-world .zw-pic-plates{top:59%!important;left:29%!important;width:46%!important;height:26%!important}
 .zw-picnic-world .zw-pic-basket{top:57%!important;left:17%!important;width:14%!important;height:30%!important}
 .zw-picnic-world .zw-pic-foods{top:84%!important;left:25%!important;width:50%!important;height:14%!important}
 .zw-picnic-world .zw-pic-food{width:clamp(44px,12vh,54px)!important;height:clamp(44px,12vh,54px)!important;flex-basis:clamp(44px,12vh,54px)!important}
 .zw-picnic-world .zw-pic-wish .zw-pic-mini{width:clamp(11px,2vh,18px)!important;height:clamp(11px,2vh,18px)!important}
}
@media(prefers-reduced-motion:reduce){
 .zw-picnic-world .zw-pic-friend,.zw-picnic-world .zw-pic-butterfly{animation:none!important}
 .zw-picnic-world.zw-pic-dance .zw-pic-friend,.zw-picnic-world.zw-pic-eating .zw-pic-friend{animation:none!important}
}

/* Bigger picture-only wishes; food pictures, not a sentence, are the main task. */
.zw-picnic-world .zw-pic-wish.is-current{outline:none!important;filter:none!important}
.zw-picnic-world .zw-pic-wish:only-child{
 flex:0 1 min(84%,300px)!important;max-width:300px!important;
 height:96%!important;
}
.zw-picnic-world .zw-pic-wish:only-child .zw-pic-small-face{
 flex:0 0 19%!important;width:19%!important;height:45%!important;
}
.zw-picnic-world .zw-pic-wish:only-child .zw-pic-picture{
 flex:1 1 68%!important;min-width:0!important;
 max-height:86%!important;align-content:center!important;
}
.zw-picnic-world .zw-pic-wish:only-child:not(.zw-pic-many) .zw-pic-mini{
 width:clamp(26px,8.2vw,41px)!important;
 height:clamp(26px,8.2vw,41px)!important;
}
.zw-picnic-world .zw-pic-wish:only-child.zw-pic-many .zw-pic-mini{
 width:clamp(17px,5vw,25px)!important;
 height:clamp(17px,5vw,25px)!important;
}
.zw-picnic-world .zw-pic-food{padding:6px!important;place-items:center!important}
.zw-picnic-world .zw-pic-food svg{
 width:80%!important;height:80%!important;min-width:38px!important;min-height:38px!important;
 max-width:66px!important;max-height:66px!important;
 display:block!important;
}
@media(orientation:landscape) and (max-height:620px){
 .zw-picnic-world .zw-pic-wish:only-child{
  flex-basis:76%!important;height:98%!important;
 }
 .zw-picnic-world .zw-pic-food{padding:3px!important}
 .zw-picnic-world .zw-pic-food svg{min-width:32px!important;min-height:32px!important}
}



/* source: animal-feeding-v85.css */
/* Tier-Picknick V85 – pure illustrated, image-led preschool play.
   No UI card gradients, emoji, text instructions or digital looking control shapes. */
#app .zw85.main-content{
 position:absolute!important;inset:0!important;isolation:isolate!important;
 display:block!important;width:100%!important;height:100%!important;
 overflow:hidden!important;box-sizing:border-box!important;margin:0!important;padding:0!important;
 background:#88b57c url('/animal-feeding-v85/meadow-portrait.webp') center / 100% 100% no-repeat!important;
 font-family:'Segoe Print','Chalkboard SE',system-ui,sans-serif!important;
 transform:none!important;touch-action:pan-x pan-y!important;
}
.zw85 *, .zw85 *::before,.zw85 *::after{box-sizing:border-box}
.zw85 .zw85-head{
 position:absolute;z-index:13;left:22%;top:1%;width:74%;height:11%;
 background:url('/animal-feeding-v85/title.webp') center / contain no-repeat;
 pointer-events:none;filter:drop-shadow(0 3px 2px #5c473947);
}
.zw85 .zw85-request{
 position:absolute;z-index:15;left:7%;top:12.6%;width:86%;height:16.9%;
 min-height:75px;display:grid!important;place-items:center!important;
 filter:drop-shadow(0 5px 3px #74583b4a);
}
.zw85 .zw85-paper{
 position:absolute;inset:0;pointer-events:none;
 background:url('/animal-feeding-v85/wish-board.webp') center/100% 100% no-repeat;
}
.zw85 .zw85-request-inner{
 position:relative;z-index:1;width:85%;height:84%;
 display:flex;align-items:center;justify-content:center;gap:clamp(3px,2vw,12px);
 overflow:hidden;
}
.zw85 .zw85-number{
 display:block;flex:0 0 auto;width:clamp(36px,12vw,60px);height:75%;
 object-fit:contain;filter:drop-shadow(1px 2px 0 #d9b38d80);
}
.zw85 .zw85-request-items{
 min-width:0;flex:1;max-width:78%;height:96%;
 display:flex;align-items:center;justify-content:center;gap:clamp(2px,1.5vw,10px);
}
.zw85 .zw85-request-item{
 display:grid;place-items:center;flex:0 1 92px;min-width:0;
 height:94%;transition:transform .35s,opacity .35s,filter .35s;
}
.zw85 .zw85-request-item img{width:100%;height:100%;max-width:94px;object-fit:contain;filter:drop-shadow(0 3px 1px #886a4939)}
.zw85 .zw85-request-item.is-given{
 opacity:.24;transform:rotate(-9deg) scale(.75);filter:grayscale(.45);
}
.zw85 .zw85-animal-zone{
 position:absolute;z-index:12;left:7%;top:31%;width:86%;height:43%;
 touch-action:manipulation;pointer-events:auto;
}
.zw85 .zw85-animal-wrap{
 position:absolute;left:9%;top:-3%;width:82%;height:99%;
 transform-origin:50% 86%;
 animation:zw85-breathe 5.2s ease-in-out infinite;
 filter:drop-shadow(0 7px 3px #64574242);
 transition:filter .23s ease;
}
.zw85 .zw85-animal{
 display:block;width:100%;height:100%;
 object-fit:contain;user-select:none;-webkit-user-drag:none;pointer-events:none;
}
.zw85 .zw85-animal-wrap.is-chewing{animation:zw85-chew .63s cubic-bezier(.2,.1,.34,1) 1 both!important}
.zw85.is-happy .zw85-animal-wrap{animation:zw85-happy 1.5s ease-in-out infinite!important}
.zw85 .zw85-animal-wrap.is-receiving{filter:drop-shadow(0 0 14px #fff5cf) drop-shadow(0 6px 3px #64574255)}
.zw85 .zw85-bowl{
 position:absolute;z-index:-1;left:23%;width:54%;height:27%;bottom:-9%;
 background:url('/animal-feeding-v85/bowl.webp') center / 100% 100% no-repeat;
 pointer-events:none;filter:drop-shadow(0 3px 2px #8061494a);
}
.zw85 .zw85-options{
 position:absolute;z-index:45;left:4%;top:79%;width:92%;height:16.5%;
 display:flex!important;align-items:center!important;justify-content:space-between!important;
 flex-wrap:nowrap!important;gap:clamp(4px,1.4vw,12px)!important;
 padding:0!important;margin:0!important;
}
.zw85 button.zw85-option{
 appearance:none!important;-webkit-appearance:none!important;
 position:relative!important;display:grid!important;place-items:center!important;
 flex:0 0 auto!important;min-width:0!important;min-height:72px!important;
 width:min(28vw,120px)!important;height:min(28vw,120px)!important;max-width:120px!important;
 padding:0!important;margin:0!important;
 border:0!important;outline:0!important;box-shadow:none!important;
 border-radius:50%!important;background:transparent!important;
 color:inherit!important;touch-action:none!important;
 transform:none!important;transition:transform .22s ease,filter .22s ease!important;
 filter:drop-shadow(0 4px 2px #594b3866);
}
.zw85 button.zw85-option .zw85-coin{
 position:absolute;inset:0;
 background:url('/animal-feeding-v85/food-button.webp') center / 100% 100% no-repeat;
 pointer-events:none;
}
.zw85 button.zw85-option img{
 position:relative;z-index:1;display:block;
 width:83%!important;height:83%!important;max-width:85%!important;max-height:85%!important;
 padding:0!important;margin:0!important;object-fit:contain!important;
 user-select:none;-webkit-user-drag:none;pointer-events:none!important;
 filter:drop-shadow(0 2px 1px #7f634248);
}
.zw85 button.zw85-option:active{transform:scale(.94)!important}
.zw85 button.zw85-option.is-dragging{filter:brightness(1.18) drop-shadow(0 0 7px #fff0c9);transform:scale(.94)!important}
.zw85 button.zw85-option.is-wrong{animation:zw85-wrong .51s ease-out 1}
.zw85 button.zw85-option:focus-visible{outline:4px solid #fff7d1!important;outline-offset:1px!important}
.zw85 button.zw85-option:disabled{opacity:.78!important;pointer-events:none!important}
.zw85 .zw85-effects{position:absolute;inset:0;z-index:75;overflow:hidden;pointer-events:none;contain:layout style}
.zw85 .zw85-fly{
 position:absolute;z-index:73;width:clamp(82px,24vw,116px);height:clamp(82px,24vw,116px);
 object-fit:contain;pointer-events:none;filter:drop-shadow(0 3px 2px #755e4e66);
 will-change:transform,opacity;
}
.zw85 .zw85-particle{
 position:absolute;width:var(--size);height:var(--size);object-fit:contain;
 opacity:0;pointer-events:none;will-change:transform,opacity;
 animation:zw85-burst 1.75s ease-out var(--delay) both;
}
.zw85 .zw85-status{
 position:absolute!important;width:1px!important;height:1px!important;
 overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;
}
.zw85-drag{
 display:block!important;position:fixed!important;left:0!important;top:0!important;
 width:102px!important;height:102px!important;object-fit:contain!important;
 z-index:99999!important;pointer-events:none!important;filter:drop-shadow(0 9px 5px #45392455);
 will-change:transform;
}
@keyframes zw85-breathe{0%,100%{transform:translateY(0) rotate(-1.3deg)}50%{transform:translateY(-5px) rotate(1.1deg)}}
@keyframes zw85-chew{0%{transform:translateY(0) scale(1)}24%{transform:translateY(-13px) rotate(-4deg) scale(1.045,.955)}48%{transform:translateY(0) rotate(3deg) scale(.97,1.035)}72%{transform:translateY(-9px) rotate(-2deg) scale(1.04,.96)}100%{transform:translateY(0) scale(1)}}
@keyframes zw85-happy{0%,100%{transform:translateY(0) rotate(-3deg) scale(1)}28%{transform:translateY(-19px) rotate(8deg) scale(1.055,.98)}57%{transform:translateY(0) rotate(-7deg) scale(.965,1.025)}76%{transform:translateY(-13px) rotate(5deg) scale(1.045,.985)}}
@keyframes zw85-wrong{0%,100%{transform:translateX(0) rotate(0deg)}21%{transform:translateX(-7px) rotate(-5deg)}44%{transform:translateX(7px) rotate(5deg)}68%{transform:translateX(-4px) rotate(-3deg)}}
@keyframes zw85-burst{
 0%{opacity:0;transform:translate3d(-50%,-50%,0) scale(.25) rotate(-20deg)}
 16%{opacity:1;transform:translate3d(-50%,-66%,0) scale(1.12) rotate(12deg)}
 77%{opacity:1;transform:translate3d(calc(-50% + var(--dx)),calc(-50% + var(--dy)),0) scale(1) rotate(var(--rot))}
 100%{opacity:0;transform:translate3d(calc(-50% + var(--dx)),calc(-50% + var(--dy) + 15px),0) scale(.64) rotate(var(--rot))}
}
@media (orientation:landscape) and (max-height:650px){
 #app .zw85.main-content{background-image:url('/animal-feeding-v85/meadow-landscape.webp')!important}
 .zw85 .zw85-head{left:12%;top:1%;width:30%;height:17%}
 .zw85 .zw85-request{left:49%;top:18%;width:47%;height:33%}
 .zw85 .zw85-request-inner{width:88%}
 .zw85 .zw85-number{width:clamp(37px,7vh,55px)}
 .zw85 .zw85-animal-zone{left:-1%;top:20%;width:47%;height:78%}
 .zw85 .zw85-animal-wrap{left:12%;width:76%;height:100%}
 .zw85 .zw85-bowl{left:23%;width:54%;height:21%;bottom:0%}
 .zw85 .zw85-options{left:49%;top:60%;width:47%;height:32%;gap:clamp(4px,1vw,12px)!important}
 .zw85 button.zw85-option{width:clamp(76px,24vh,104px)!important;height:clamp(76px,24vh,104px)!important;min-width:76px!important;min-height:76px!important}
 .zw85 .zw85-fly{width:82px;height:82px}
}
@media (max-width:354px) and (orientation:portrait){
 .zw85 .zw85-head{left:22%;width:76%;top:1%}
 .zw85 .zw85-request{left:5%;width:90%}
 .zw85 .zw85-number{width:33px}
 .zw85 .zw85-request-inner{width:89%;gap:2px}
 .zw85 .zw85-options{left:3%;width:94%;gap:3px!important}
 .zw85 button.zw85-option{width:28.5vw!important;height:28.5vw!important;min-height:72px!important}
}
@media (prefers-reduced-motion:reduce){
 .zw85 .zw85-animal-wrap{animation:none!important}
 .zw85 .zw85-particle{animation-duration:.4s!important}
 .zw85 button.zw85-option{transition:none!important}
}

/* v85: articulated pencil animal meshes in the picture-led picnic. */
.zw85 .zw85-animal-wrap svg.zw85-animal{width:100%;height:100%;display:block;overflow:visible}


/* source: animal-feed-motion-v86.css */
/* Zählwiese V86: gestisch nachvollziehbares Fressen und Trinken.
   Jedes Tier bewegt seine handgezeichneten SVG-Teile, nicht nur die ganze Figur. */
.zw85 svg.zw-rig{
 --zw86-look:5deg;--zw86-reach:9deg;--zw86-height:-4px;
 --zw86-joy-tilt:10deg;--zw86-joy-hop:-14px;--zw86-chew-time:.35s;
}
.zw85 svg.zw-rig[data-baby="rabbit"]{--zw86-look:7deg;--zw86-reach:10deg;--zw86-height:-6px;--zw86-joy-hop:-19px}
.zw85 svg.zw-rig[data-baby="cat"]{--zw86-look:9deg;--zw86-reach:8deg;--zw86-joy-hop:-8px}
.zw85 svg.zw-rig[data-baby="duck"]{--zw86-look:5deg;--zw86-reach:6deg;--zw86-joy-tilt:7deg;--zw86-chew-time:.27s}
.zw85 svg.zw-rig[data-baby="bear"]{--zw86-look:4deg;--zw86-reach:6deg;--zw86-joy-hop:-7px;--zw86-chew-time:.51s}
.zw85 svg.zw-rig[data-baby="fox"]{--zw86-look:11deg;--zw86-reach:12deg;--zw86-joy-hop:-15px}
.zw85 svg.zw-rig[data-baby="dog"]{--zw86-look:8deg;--zw86-reach:12deg;--zw86-joy-hop:-22px;--zw86-joy-tilt:12deg}
.zw85 svg.zw-rig[data-baby="chick"]{--zw86-look:6deg;--zw86-reach:9deg;--zw86-joy-hop:-16px;--zw86-chew-time:.23s}
.zw85 svg.zw-rig[data-baby="goat"]{--zw86-look:4deg;--zw86-reach:6deg;--zw86-chew-time:.45s}
.zw85 svg.zw-rig[data-baby="turtle"]{--zw86-look:3deg;--zw86-reach:3deg;--zw86-height:-1px;--zw86-joy-hop:-4px;--zw86-chew-time:.55s}
.zw85 svg.zw-rig[data-baby="spider"]{--zw86-look:4deg;--zw86-reach:6deg;--zw86-joy-hop:-9px}
/* Head and moving jaw are separate from limbs, ears and tail. */
.zw85 svg.zw-rig .zw-rig-head{
 transform-origin:50% 75%;transform-box:fill-box;
 animation:none!important;
}
.zw85 svg.zw-rig .zw86-mouth-aperture{
 opacity:0;transform:scaleY(.03);transform-origin:50% 8%;transform-box:fill-box;
}
.zw85 svg.zw-rig .zw-rig-beak-bottom{transform-origin:50% 8%;transform-box:fill-box}
.zw85 svg.zw-rig .zw86-mouth-anchor{pointer-events:none;fill:transparent}
.zw85 svg.zw-rig:is([data-phase="notice"],[data-phase="no"]) .zw-rig-head{
 animation:zw86-gaze .45s ease-in-out both!important;
}
.zw85 svg.zw-rig:is([data-phase="reach"],[data-phase="open"]) .zw-rig-head{
 animation:zw86-lean .50s ease-out both!important;
}
.zw85 svg.zw-rig:is([data-phase="bite"],[data-phase="chew"]) .zw-rig-head{
 animation:zw86-bite-nod var(--zw86-chew-time) ease-in-out infinite alternate!important;
}
.zw85 svg.zw-rig:is([data-phase="sip"],[data-phase="drink"]) .zw-rig-head{
 animation:zw86-sip-nod .62s ease-in-out infinite alternate!important;
}
.zw85 svg.zw-rig[data-phase="swallow"] .zw-rig-head{
 animation:zw86-swallow .3s ease-out both!important;
}
/* Jaw aperture is a hand-drawn ink opening inside each original face. */
.zw85 svg.zw-rig:is([data-phase="open"],[data-phase="bite"],[data-phase="chew"],[data-phase="sip"],[data-phase="drink"]) .zw86-mouth-aperture{opacity:1}
.zw85 svg.zw-rig:is([data-phase="open"],[data-phase="bite"],[data-phase="sip"],[data-phase="drink"]) .zw86-mouth-aperture{
 animation:zw86-mouth-open .24s ease-out both!important;
}
.zw85 svg.zw-rig[data-phase="chew"] .zw86-mouth-aperture{
 animation:zw86-mouth-chew var(--zw86-chew-time) ease-in-out infinite!important;
}
.zw85 svg.zw-rig:is([data-phase="open"],[data-phase="bite"],[data-phase="chew"],[data-phase="sip"],[data-phase="drink"]) .zw-rig-mouth{opacity:.05!important}
.zw85 svg.zw-rig[data-phase="chew"] .zw-rig-mouth{animation:none!important}
.zw85 svg.zw-rig[data-phase="swallow"] .zw86-mouth-aperture{
 animation:zw86-close .25s ease-out both!important;
}
.zw85 svg.zw-rig:is([data-phase="open"],[data-phase="bite"],[data-phase="sip"],[data-phase="drink"]) .zw-rig-beak-bottom{
 animation:zw86-beak-open .28s ease-out both!important;
}
.zw85 svg.zw-rig[data-phase="chew"] .zw-rig-beak-bottom{
 animation:zw86-beak-chew .24s ease-in-out infinite!important;
}
/* Watching food and reaching uses paws/wings, not whole-character shaking. */
.zw85 svg.zw-rig:is([data-phase="reach"],[data-phase="open"],[data-phase="bite"]) .zw-rig-arm-left{
 animation:zw86-reach-left .65s cubic-bezier(.2,.6,.2,1) both!important;
}
.zw85 svg.zw-rig:is([data-phase="reach"],[data-phase="open"],[data-phase="bite"]) .zw-rig-arm-right{
 animation:zw86-reach-right .65s cubic-bezier(.2,.6,.2,1) both!important;
}
.zw85 svg.zw-rig:is([data-phase="chew"],[data-phase="drink"]) .zw-rig-arm-left{
 animation:zw86-paw-hold .65s ease-in-out infinite!important;
}
.zw85 svg.zw-rig:is([data-phase="chew"],[data-phase="drink"]) .zw-rig-arm-right{
 animation:zw86-paw-hold-r .67s ease-in-out infinite!important;
}
/* Each animal has a species-specific movement grammar. */
.zw85 svg.zw-rig[data-baby="rabbit"]:is([data-phase="open"],[data-phase="chew"],[data-phase="celebrate"]) .zw-rig-ear-left{
 animation:zw86-rabbit-ear-l .56s ease-in-out infinite!important;
}
.zw85 svg.zw-rig[data-baby="rabbit"]:is([data-phase="open"],[data-phase="chew"],[data-phase="celebrate"]) .zw-rig-ear-right{
 animation:zw86-rabbit-ear-r .69s ease-in-out infinite!important;
}
.zw85 svg.zw-rig[data-baby="cat"]:is([data-phase="open"],[data-phase="chew"],[data-phase="celebrate"]) .zw-rig-tail{
 animation:zw86-cat-tail 1.02s ease-in-out infinite!important;
}
.zw85 svg.zw-rig[data-baby="dog"]:is([data-phase="notice"],[data-phase="chew"],[data-phase="celebrate"]) .zw-rig-tail{
 animation:zw86-dog-tail .28s ease-in-out infinite!important;
}
.zw85 svg.zw-rig[data-baby="fox"]:is([data-phase="reach"],[data-phase="chew"],[data-phase="celebrate"]) .zw-rig-tail{
 animation:zw86-fox-tail .66s ease-in-out infinite!important;
}
.zw85 svg.zw-rig[data-baby="duck"]:is([data-phase="chew"],[data-phase="celebrate"]) .zw-rig-arm-left,
.zw85 svg.zw-rig[data-baby="chick"]:is([data-phase="chew"],[data-phase="celebrate"]) .zw-rig-arm-left{
 animation:zw86-flap-left .35s ease-in-out infinite!important;
}
.zw85 svg.zw-rig[data-baby="duck"]:is([data-phase="chew"],[data-phase="celebrate"]) .zw-rig-arm-right,
.zw85 svg.zw-rig[data-baby="chick"]:is([data-phase="chew"],[data-phase="celebrate"]) .zw-rig-arm-right{
 animation:zw86-flap-right .38s ease-in-out infinite!important;
}
.zw85 svg.zw-rig[data-baby="bear"][data-phase="chew"] .zw-rig-body,
.zw85 svg.zw-rig[data-baby="goat"][data-phase="chew"] .zw-rig-body{
 animation:zw86-belly .55s ease-in-out infinite!important;
}
.zw85 svg.zw-rig[data-baby="turtle"]:is([data-phase="reach"],[data-phase="open"],[data-phase="chew"]) .zw-rig-head{
 animation:zw86-turtle-extend 1s ease-in-out both!important;
}
.zw85 svg.zw-rig[data-baby="spider"]:is([data-phase="notice"],[data-phase="reach"],[data-phase="chew"],[data-phase="celebrate"]) .zw-rig-leg-left-1,
.zw85 svg.zw-rig[data-baby="spider"]:is([data-phase="notice"],[data-phase="reach"],[data-phase="chew"],[data-phase="celebrate"]) .zw-rig-leg-left-3,
.zw85 svg.zw-rig[data-baby="spider"]:is([data-phase="notice"],[data-phase="reach"],[data-phase="chew"],[data-phase="celebrate"]) .zw-rig-leg-right-2,
.zw85 svg.zw-rig[data-baby="spider"]:is([data-phase="notice"],[data-phase="reach"],[data-phase="chew"],[data-phase="celebrate"]) .zw-rig-leg-right-4{
 animation:zw86-spider-step .46s ease-in-out infinite!important;
}
.zw85 svg.zw-rig[data-baby="spider"][data-phase="celebrate"] .zw-rig-leg-left-2,
.zw85 svg.zw-rig[data-baby="spider"][data-phase="celebrate"] .zw-rig-leg-right-1{
 animation:zw86-spider-step .4s ease-in-out infinite reverse!important;
}
/* At celebration, every animal smiles, then makes its own delighted motion. */
.zw85 svg.zw-rig[data-phase="celebrate"] .zw-rig-head{
 animation:zw86-happy-head .8s ease-in-out infinite!important;
}
.zw85 svg.zw-rig[data-phase="celebrate"] .zw-rig-eye-left,
.zw85 svg.zw-rig[data-phase="celebrate"] .zw-rig-eye-right{
 animation:zw86-eye-smile 1.15s ease-in-out infinite!important;
}
.zw85 svg.zw-rig[data-phase="celebrate"] .zw-rig-mouth{opacity:1!important}
.zw85 svg.zw-rig[data-phase="celebrate"] .zw-rig-arm-left{
 animation:zw86-cheer-l .73s ease-in-out infinite!important;
}
.zw85 svg.zw-rig[data-phase="celebrate"] .zw-rig-arm-right{
 animation:zw86-cheer-r .76s ease-in-out infinite!important;
}
.zw85 svg.zw-rig[data-phase="celebrate"] .zw-rig-foot-left,
.zw85 svg.zw-rig[data-phase="celebrate"] .zw-rig-foot-right{
 animation:zw86-happy-feet .61s ease-in-out infinite!important;
}
.zw85 svg.zw-rig[data-baby="turtle"][data-phase="celebrate"] .zw-rig-head{
 animation:zw86-turtle-happy 1.3s ease-in-out infinite!important;
}
.zw85 svg.zw-rig[data-baby="bear"][data-phase="celebrate"] .zw-rig-body{
 animation:zw86-belly .9s ease-in-out infinite!important;
}
.zw85 svg.zw-rig[data-baby="goat"][data-phase="celebrate"] .zw-rig-ear-left,
.zw85 svg.zw-rig[data-baby="goat"][data-phase="celebrate"] .zw-rig-ear-right{
 animation:zw86-rabbit-ear-r .65s ease-in-out infinite!important;
}
.zw85 svg.zw-rig[data-baby="chick"][data-phase="celebrate"] .zw-rig-tuft{
 animation:zw86-tuft .4s ease-in-out infinite!important;
}
.zw85 svg.zw-rig[data-phase="no"] .zw-rig-head{
 animation:zw86-no .38s ease-in-out 2!important;
}
.zw85 .zw86-flying-food{
 position:absolute;z-index:88;width:clamp(76px,21vw,104px);height:clamp(76px,21vw,104px);
 object-fit:contain;pointer-events:none;transform-origin:center center;
 will-change:transform,opacity;filter:drop-shadow(0 3px 2px #7e634555);
}
.zw85 .zw86-sip-bottle{
 position:absolute;z-index:87;width:68px;height:68px;object-fit:contain;pointer-events:none;
 transform-origin:45% 70%;animation:zw86-tip-bottle .52s ease-in-out infinite alternate;
}
@keyframes zw86-gaze{from{transform:rotate(0)}to{transform:translateX(2px) rotate(var(--zw86-look))}}
@keyframes zw86-lean{from{transform:rotate(var(--zw86-look))}to{transform:translate3d(5px,var(--zw86-height),0) rotate(var(--zw86-reach))}}
@keyframes zw86-bite-nod{from{transform:translateY(-1px) rotate(-3deg)}to{transform:translateY(5px) rotate(3deg)}}
@keyframes zw86-sip-nod{from{transform:translateY(-2px) rotate(-7deg)}to{transform:translateY(1px) rotate(-13deg)}}
@keyframes zw86-swallow{0%{transform:translateY(3px) scaleY(.97)}65%{transform:translateY(-4px) scaleY(1.03)}100%{transform:none}}
@keyframes zw86-mouth-open{from{transform:scaleY(.05)}to{transform:scaleY(1)}}
@keyframes zw86-mouth-chew{0%,100%{transform:scaleY(.22)}45%{transform:scaleY(1.08)}75%{transform:scaleY(.43)}}
@keyframes zw86-close{from{opacity:1;transform:scaleY(.8)}to{opacity:0;transform:scaleY(.02)}}
@keyframes zw86-beak-open{to{transform:translateY(7px) rotate(3deg)}}
@keyframes zw86-beak-chew{0%,100%{transform:translateY(1px)}50%{transform:translateY(7px)}}
@keyframes zw86-reach-left{0%{transform:rotate(0)}100%{transform:rotate(-29deg) translateY(-4px)}}
@keyframes zw86-reach-right{0%{transform:rotate(0)}100%{transform:rotate(24deg) translateY(-3px)}}
@keyframes zw86-paw-hold{0%,100%{transform:rotate(-22deg)}50%{transform:rotate(-15deg)}}
@keyframes zw86-paw-hold-r{0%,100%{transform:rotate(20deg)}50%{transform:rotate(13deg)}}
@keyframes zw86-rabbit-ear-l{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(11deg)}}
@keyframes zw86-rabbit-ear-r{0%,100%{transform:rotate(5deg)}50%{transform:rotate(-12deg)}}
@keyframes zw86-cat-tail{0%,100%{transform:rotate(-10deg)}50%{transform:rotate(18deg)}}
@keyframes zw86-dog-tail{0%,100%{transform:rotate(-24deg)}50%{transform:rotate(25deg)}}
@keyframes zw86-fox-tail{0%,100%{transform:rotate(-17deg)}50%{transform:rotate(22deg)}}
@keyframes zw86-flap-left{0%,100%{transform:rotate(12deg)}50%{transform:rotate(-27deg)}}
@keyframes zw86-flap-right{0%,100%{transform:rotate(-9deg)}50%{transform:rotate(25deg)}}
@keyframes zw86-belly{0%,100%{transform:scale(1)}50%{transform:scale(1.045,.96)}}
@keyframes zw86-turtle-extend{from{transform:translate(0,0)}to{transform:translate(0,-8px)}}
@keyframes zw86-spider-step{0%,100%{transform:rotate(-9deg)}50%{transform:rotate(18deg)}}
@keyframes zw86-happy-head{0%,100%{transform:rotate(-7deg)}35%{transform:translateY(-5px) rotate(var(--zw86-joy-tilt))}67%{transform:translateY(1px) rotate(-6deg)}}
@keyframes zw86-eye-smile{0%,100%{transform:scaleY(1)}16%,40%{transform:scaleY(.34)}52%{transform:scaleY(.87)}}
@keyframes zw86-cheer-l{0%,100%{transform:rotate(0)}25%,69%{transform:rotate(-34deg)}50%,82%{transform:rotate(14deg)}}
@keyframes zw86-cheer-r{0%,100%{transform:rotate(0)}25%,69%{transform:rotate(31deg)}50%,82%{transform:rotate(-13deg)}}
@keyframes zw86-happy-feet{0%,100%{transform:rotate(0)}50%{transform:rotate(12deg)}}
@keyframes zw86-turtle-happy{0%,100%{transform:translateY(0)}35%{transform:translateY(-7px) rotate(4deg)}70%{transform:translateY(2px) rotate(-3deg)}}
@keyframes zw86-tuft{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(7deg)}}
@keyframes zw86-tip-bottle{from{transform:rotate(-26deg)}to{transform:rotate(-43deg)}}
@keyframes zw86-no{0%,100%{transform:rotate(0)}25%,75%{transform:rotate(-9deg)}50%{transform:rotate(9deg)}}
@media (prefers-reduced-motion:reduce){
 .zw85 svg.zw-rig[data-phase] .zw-rig-part{animation:none!important;will-change:auto!important}
 .zw85 svg.zw-rig:is([data-phase="open"],[data-phase="bite"],[data-phase="chew"],[data-phase="sip"],[data-phase="drink"]) .zw86-mouth-aperture{transform:scaleY(.9);opacity:1}
 .zw85 svg.zw-rig[data-phase="celebrate"] .zw-rig-head{transform:rotate(3deg)}
}


/* source: animal-pencils-v87.css */
/* V87 – painted cut-out puppets: real raster pencil art, independent moving layers. */
.zw85 .zw87-puppet{
 position:relative;display:block;width:100%;height:100%;overflow:visible!important;
 pointer-events:none;isolation:isolate;transform-origin:50% 82%;
}
.zw85 .zw87-puppet .zw87-part{
 position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none;
 user-select:none;-webkit-user-drag:none;max-width:none;max-height:none;opacity:1;
 transform:translate3d(0,0,0);
}
.zw85 .zw87-puppet .zw87-head-group{
 position:absolute;inset:0;transform-origin:50% 44%;will-change:transform;
 animation:zw87-idle-head 5s ease-in-out infinite;
}
.zw85 .zw87-puppet .zw87-ear0,.zw85 .zw87-puppet .zw87-ear2{
 transform-origin:33% 34%;animation:zw87-ear-left 4.8s ease-in-out infinite;
}
.zw85 .zw87-puppet .zw87-ear1,.zw85 .zw87-puppet .zw87-ear3{
 transform-origin:69% 34%;animation:zw87-ear-right 4.4s ease-in-out infinite;
}
.zw85 .zw87-puppet .zw87-arm0{transform-origin:27% 63%;animation:zw87-idle-paw 5.5s ease-in-out infinite}
.zw85 .zw87-puppet .zw87-arm1{transform-origin:74% 63%;animation:zw87-idle-paw 5.5s ease-in-out -2.2s infinite}
.zw85 .zw87-puppet .zw87-tail{transform-origin:76% 67%;animation:zw87-tail 2.3s ease-in-out infinite}
.zw85 .zw87-puppet .zw87-mouth{opacity:0;transform-origin:50% 59%;transform:scaleY(.15)}
.zw85 .zw87-puppet .zw87-blink{opacity:0;animation:zw87-blink 5.5s ease-in-out infinite}
.zw85 .zw87-puppet[data-baby="turtle"] .zw87-head-group{animation-duration:6s}
.zw85 .zw87-puppet[data-baby="dog"] .zw87-tail{animation-duration:1.1s}
.zw85 .zw87-puppet[data-baby="fox"] .zw87-tail{animation-duration:1.65s}
.zw85 .zw87-puppet[data-baby="cat"] .zw87-tail{animation-duration:3s}
.zw85 .zw87-puppet[data-baby="duck"] .zw87-arm0,
.zw85 .zw87-puppet[data-baby="chick"] .zw87-arm0{transform-origin:34% 62%}
.zw85 .zw87-puppet[data-baby="duck"] .zw87-arm1,
.zw85 .zw87-puppet[data-baby="chick"] .zw87-arm1{transform-origin:70% 62%}
/* The actual hand-painted head/ears/paws are transformed, never vector paths. */
.zw85 .zw87-puppet:is([data-phase="notice"],[data-phase="no"]) .zw87-head-group{
 animation:zw87-look .42s ease-out both!important;
}
.zw85 .zw87-puppet:is([data-phase="reach"],[data-phase="open"]) .zw87-head-group{
 animation:zw87-lean .42s ease-out both!important;
}
.zw85 .zw87-puppet:is([data-phase="bite"],[data-phase="chew"]) .zw87-head-group{
 animation:zw87-chew-head .38s ease-in-out infinite alternate!important;
}
.zw85 .zw87-puppet:is([data-phase="sip"],[data-phase="drink"]) .zw87-head-group{
 animation:zw87-drink-head .58s ease-in-out infinite alternate!important;
}
.zw85 .zw87-puppet[data-phase="swallow"] .zw87-head-group{
 animation:zw87-swallow .32s ease-out both!important;
}
.zw85 .zw87-puppet:is([data-phase="open"],[data-phase="bite"],[data-phase="chew"],[data-phase="sip"],[data-phase="drink"]) .zw87-mouth{
 opacity:1!important;animation:zw87-mouth-open .25s ease-out both!important;
}
.zw85 .zw87-puppet[data-phase="chew"] .zw87-mouth{animation:zw87-mouth-chew .32s ease-in-out infinite!important}
.zw85 .zw87-puppet[data-phase="drink"] .zw87-mouth{animation:zw87-mouth-drink .7s ease-in-out infinite!important}
.zw85 .zw87-puppet[data-phase="swallow"] .zw87-mouth{animation:zw87-mouth-close .24s ease-out both!important}
.zw85 .zw87-puppet:is([data-phase="reach"],[data-phase="open"],[data-phase="bite"]) .zw87-arm0{
 animation:zw87-reach-left .55s cubic-bezier(.25,.8,.23,1) both!important;
}
.zw85 .zw87-puppet:is([data-phase="reach"],[data-phase="open"],[data-phase="bite"]) .zw87-arm1{
 animation:zw87-reach-right .6s cubic-bezier(.25,.8,.23,1) both!important;
}
.zw85 .zw87-puppet:is([data-phase="chew"],[data-phase="drink"]) .zw87-arm0{
 animation:zw87-hold-left .55s ease-in-out infinite!important;
}
.zw85 .zw87-puppet:is([data-phase="chew"],[data-phase="drink"]) .zw87-arm1{
 animation:zw87-hold-right .6s ease-in-out infinite!important;
}
.zw85 .zw87-puppet[data-baby="rabbit"]:is([data-phase="open"],[data-phase="chew"],[data-phase="celebrate"]) .zw87-ear0{
 animation:zw87-rabbit-ear-a .62s ease-in-out infinite!important;
}
.zw85 .zw87-puppet[data-baby="rabbit"]:is([data-phase="open"],[data-phase="chew"],[data-phase="celebrate"]) .zw87-ear1{
 animation:zw87-rabbit-ear-b .78s ease-in-out infinite!important;
}
.zw85 .zw87-puppet[data-baby="dog"]:is([data-phase="notice"],[data-phase="chew"],[data-phase="celebrate"]) .zw87-tail{
 animation:zw87-dog-tail .27s ease-in-out infinite!important;
}
.zw85 .zw87-puppet[data-baby="fox"]:is([data-phase="notice"],[data-phase="chew"],[data-phase="celebrate"]) .zw87-tail{
 animation:zw87-fox-tail .71s ease-in-out infinite!important;
}
.zw85 .zw87-puppet[data-baby="cat"]:is([data-phase="notice"],[data-phase="chew"],[data-phase="celebrate"]) .zw87-tail{
 animation:zw87-cat-tail 1.35s ease-in-out infinite!important;
}
.zw85 .zw87-puppet[data-baby="duck"]:is([data-phase="chew"],[data-phase="celebrate"]) .zw87-arm0,
.zw85 .zw87-puppet[data-baby="chick"]:is([data-phase="chew"],[data-phase="celebrate"]) .zw87-arm0{
 animation:zw87-flap-a .32s ease-in-out infinite!important;
}
.zw85 .zw87-puppet[data-baby="duck"]:is([data-phase="chew"],[data-phase="celebrate"]) .zw87-arm1,
.zw85 .zw87-puppet[data-baby="chick"]:is([data-phase="chew"],[data-phase="celebrate"]) .zw87-arm1{
 animation:zw87-flap-b .38s ease-in-out infinite!important;
}
.zw85 .zw87-puppet[data-baby="turtle"]:is([data-phase="reach"],[data-phase="chew"],[data-phase="celebrate"]) .zw87-head-group{
 animation:zw87-turtle-nod 1.15s ease-in-out infinite!important;
}
.zw85 .zw87-puppet[data-baby="spider"]:is([data-phase="reach"],[data-phase="chew"],[data-phase="celebrate"]) .zw87-arm0{
 animation:zw87-spider-leg .45s ease-in-out infinite!important;
}
.zw85 .zw87-puppet[data-baby="spider"]:is([data-phase="reach"],[data-phase="chew"],[data-phase="celebrate"]) .zw87-arm1{
 animation:zw87-spider-leg .49s ease-in-out infinite reverse!important;
}
.zw85 .zw87-puppet[data-phase="celebrate"] .zw87-head-group{
 animation:zw87-happy-head .8s ease-in-out infinite!important;
}
.zw85 .zw87-puppet[data-phase="celebrate"] .zw87-arm0{
 animation:zw87-cheer-left .68s ease-in-out infinite!important;
}
.zw85 .zw87-puppet[data-phase="celebrate"] .zw87-arm1{
 animation:zw87-cheer-right .74s ease-in-out infinite!important;
}
.zw85 .zw87-puppet[data-phase="celebrate"] .zw87-blink{
 opacity:1;animation:zw87-happy-eyes 1.25s ease-in-out infinite!important;
}
.zw85 .zw87-puppet[data-phase="no"] .zw87-head-group{animation:zw87-no .43s ease-in-out 2!important}
@keyframes zw87-idle-head{0%,37%,100%{transform:rotate(0)}48%{transform:rotate(2.1deg)}76%{transform:rotate(-1.7deg)}}
@keyframes zw87-idle-paw{0%,71%,100%{transform:rotate(0)}79%{transform:rotate(-3deg)}91%{transform:rotate(1.5deg)}}
@keyframes zw87-ear-left{0%,62%,100%{transform:rotate(0)}74%{transform:rotate(-6deg)}85%{transform:rotate(3deg)}}
@keyframes zw87-ear-right{0%,72%,100%{transform:rotate(0)}81%{transform:rotate(7deg)}91%{transform:rotate(-3deg)}}
@keyframes zw87-tail{0%,100%{transform:rotate(-6deg)}50%{transform:rotate(11deg)}}
@keyframes zw87-blink{0%,5%,7%,52%,55%,100%{opacity:0}5.6%,53%{opacity:1}}
@keyframes zw87-look{to{transform:translateY(-2px) rotate(4deg)}}
@keyframes zw87-lean{to{transform:translate3d(4px,-4px,0) rotate(7deg)}}
@keyframes zw87-chew-head{from{transform:translateY(2px) rotate(-2deg)}to{transform:translateY(-4px) rotate(3deg)}}
@keyframes zw87-drink-head{from{transform:translateY(2px) rotate(-6deg)}to{transform:translateY(-2px) rotate(-11deg)}}
@keyframes zw87-swallow{0%{transform:translateY(4px)}65%{transform:translateY(-5px)}100%{transform:translateY(0)}}
@keyframes zw87-mouth-open{from{opacity:0;transform:scaleY(.1)}to{opacity:1;transform:scaleY(1)}}
@keyframes zw87-mouth-chew{0%,100%{transform:scaleY(.42)}42%{transform:scaleY(1)}75%{transform:scaleY(.58)}}
@keyframes zw87-mouth-drink{0%,100%{transform:scaleY(.45)}50%{transform:scaleY(.85)}}
@keyframes zw87-mouth-close{from{opacity:1;transform:scaleY(.7)}to{opacity:0;transform:scaleY(.05)}}
@keyframes zw87-reach-left{to{transform:translateY(-5px) rotate(-15deg)}}
@keyframes zw87-reach-right{to{transform:translateY(-5px) rotate(17deg)}}
@keyframes zw87-hold-left{0%,100%{transform:rotate(-13deg)}50%{transform:rotate(-6deg)}}
@keyframes zw87-hold-right{0%,100%{transform:rotate(13deg)}50%{transform:rotate(6deg)}}
@keyframes zw87-rabbit-ear-a{0%,100%{transform:rotate(-2deg)}50%{transform:rotate(11deg)}}
@keyframes zw87-rabbit-ear-b{0%,100%{transform:rotate(3deg)}50%{transform:rotate(-10deg)}}
@keyframes zw87-dog-tail{0%,100%{transform:rotate(-19deg)}50%{transform:rotate(24deg)}}
@keyframes zw87-fox-tail{0%,100%{transform:rotate(-15deg)}50%{transform:rotate(18deg)}}
@keyframes zw87-cat-tail{0%,100%{transform:rotate(-9deg)}50%{transform:rotate(14deg)}}
@keyframes zw87-flap-a{0%,100%{transform:rotate(9deg)}50%{transform:rotate(-23deg)}}
@keyframes zw87-flap-b{0%,100%{transform:rotate(-10deg)}50%{transform:rotate(26deg)}}
@keyframes zw87-turtle-nod{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes zw87-spider-leg{0%,100%{transform:rotate(-7deg)}50%{transform:rotate(16deg)}}
@keyframes zw87-happy-head{0%,100%{transform:rotate(-5deg)}33%{transform:translateY(-8px) rotate(8deg)}66%{transform:rotate(-6deg)}}
@keyframes zw87-cheer-left{0%,100%{transform:rotate(0)}40%{transform:rotate(-27deg)}73%{transform:rotate(12deg)}}
@keyframes zw87-cheer-right{0%,100%{transform:rotate(0)}40%{transform:rotate(29deg)}73%{transform:rotate(-11deg)}}
@keyframes zw87-happy-eyes{0%,100%{opacity:0}12%,48%{opacity:1}65%{opacity:0}}
@keyframes zw87-no{0%,100%{transform:rotate(0)}25%,75%{transform:rotate(-6deg)}50%{transform:rotate(6deg)}}
@media(prefers-reduced-motion:reduce){
 /* Respect quiet idle mode, but retain a small, legible response to every child action. */
 .zw85 .zw87-puppet[data-phase="idle"] .zw87-head-group,
 .zw85 .zw87-puppet[data-phase="idle"] .zw87-part{animation:none!important}
 .zw85 .zw87-puppet[data-phase="celebrate"] .zw87-head-group{animation:zw87-gentle-joy .88s ease-in-out 2!important}
 .zw85 .zw87-puppet[data-phase="celebrate"] .zw87-arm0{animation:zw87-cheer-left .88s ease-in-out 2!important}
 .zw85 .zw87-puppet[data-phase="celebrate"] .zw87-arm1{animation:zw87-cheer-right .88s ease-in-out 2!important}
}
@keyframes zw87-gentle-joy{0%,100%{transform:rotate(0)}50%{transform:translateY(-3px) rotate(3deg)}}
/* Previous SVG animation styles cannot override the new image layers. */
.zw85 .zw87-puppet.zw85-animal{width:100%;height:100%;display:block}


/* source: animal-painted-v88.css */
/* V88: a single seamless illustrated figure, NOT detached body parts. */
.zw85 .zw88-puppet.zw85-animal{
 position:relative;width:100%;height:100%;display:block!important;
 overflow:visible!important;isolation:isolate;
 user-select:none;-webkit-user-select:none;pointer-events:none;
 animation:zw88-breathe 5s ease-in-out infinite;
}
.zw85 .zw88-puppet .zw88-frame{
 display:block!important;position:absolute!important;inset:0!important;
 width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;
 object-fit:contain!important;image-rendering:auto!important;
 filter:drop-shadow(0 3px 1px rgba(73,56,41,.12));
 user-select:none;-webkit-user-drag:none;pointer-events:none;
}
.zw85 .zw88-puppet:not([data-phase="idle"]) {animation:none!important}
.zw85 .zw88-puppet[data-phase="celebrate"]{
 animation:zw88-happy 1.18s cubic-bezier(.22,.48,.28,1) infinite!important;
}
.zw85 .zw88-puppet[data-baby="turtle"][data-phase="celebrate"]{
 animation:zw88-turtle-joy 1.5s ease-in-out infinite!important
}
.zw85 .zw88-puppet[data-baby="chick"][data-phase="celebrate"],
.zw85 .zw88-puppet[data-baby="rabbit"][data-phase="celebrate"],
.zw85 .zw88-puppet[data-baby="dog"][data-phase="celebrate"]{
 animation:zw88-bounce 1s cubic-bezier(.21,.5,.3,1) infinite!important
}
@keyframes zw88-breathe{
 0%,100%{transform:translateY(0) rotate(-.6deg)}
 40%{transform:translateY(-3px) rotate(.7deg)}
 70%{transform:translateY(0) rotate(.4deg)}
}
@keyframes zw88-happy{
 0%,100%{transform:translateY(0) rotate(-1deg)}
 35%{transform:translateY(-13px) rotate(5deg)}
 70%{transform:translateY(0) rotate(-3deg)}
}
@keyframes zw88-bounce{
 0%,100%{transform:translateY(0) rotate(0)}
 34%{transform:translateY(-22px) rotate(-4deg)}
 60%{transform:translateY(0) rotate(4deg)}
}
@keyframes zw88-turtle-joy{
 0%,100%{transform:translateY(0)}
 45%{transform:translateY(-5px) rotate(3deg)}
}
@media (prefers-reduced-motion:reduce){
 .zw85 .zw88-puppet[data-phase="idle"]{animation:none!important}
 .zw85 .zw88-puppet[data-phase="celebrate"]{animation:zw88-turtle-joy 1.2s ease-in-out 2!important}
}


/* source: character-artwork-v75.css */
/* Zählwiese v75 – polish approved artwork.
   The approved individual figure exports intentionally end at the lower body.
   Fade only the last edge into the illustrated grass; keep faces, overalls and
   hoodie identical to the user-approved original. */
.zw-picnic-world .zw-pic-friend img[src$="-approved.webp"],
.zw-trip-friend[src$="-approved.webp"],
.zw-mascot-decor[src$="-approved.webp"],
.peek-mouse[src$="-approved.webp"],
.peek-hedgehog[src$="-approved.webp"],
.extra-mouse img[src$="-approved.webp"],
.extra-hedgehog img[src$="-approved.webp"]{
 -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 80%,rgba(0,0,0,.95) 87%,transparent 100%);
 mask-image:linear-gradient(to bottom,#000 0%,#000 80%,rgba(0,0,0,.95) 87%,transparent 100%);
 -webkit-mask-size:100% 100%;
 mask-size:100% 100%;
}
.zw-picnic-world .zw-pic-friend{
 z-index:10!important;
}
.zw-picnic-world .zw-pic-friend img{
 filter:drop-shadow(1px 3px 1px #58794145);
}
/* Keep the center picnic activity visually separate from the character faces. */
.zw-picnic-world .zw-pic-wishes,
.zw-picnic-world .zw-pic-foods,
.zw-picnic-world .zw-pic-plates{isolation:isolate}
@media (prefers-reduced-motion:reduce){
 .zw-picnic-world .zw-pic-friend{animation:none!important}
}


/* source: home-reference-v80.css */
/* ZÄHLWIESE V80 – The user's EXACT approved screenshot reassembled as
   responsive, accessible, real UI. Zero reused legacy home illustrations. */
html:has(.zw80-home),body:has(.zw80-home){
 margin:0!important;padding:0!important;min-width:0!important;width:100%!important;
 min-height:100dvh!important;max-height:100dvh!important;overflow:hidden!important;
}
#app:has(>.zw80-home){
 position:relative!important;isolation:isolate!important;
 display:block!important;box-sizing:border-box!important;
 width:100%!important;max-width:none!important;
 height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important;
 padding:0!important;margin:0!important;
 overflow:hidden!important;border:0!important;border-radius:0!important;
 background:#8cbd69!important;box-shadow:none!important;transform:none!important;
}
#app:has(>.zw80-home)::before,#app:has(>.zw80-home)::after{display:none!important}
#app>.zw80-home,#app>.zw80-home *{box-sizing:border-box}
#app>.zw80-home{
 position:relative;display:flex;align-items:center;justify-content:center;
 width:100%;height:100%;max-height:100%;overflow:hidden;
 padding:max(2px,env(safe-area-inset-top,0px)) max(3px,env(safe-area-inset-right,0px))
         max(3px,env(safe-area-inset-bottom,0px)) max(3px,env(safe-area-inset-left,0px));
 background:#8bbc67 url('/reference-v80/landscape-painted.webp') center/cover no-repeat;
 font-family:"Trebuchet MS",sans-serif;
}
.zw80-home .zw80-scene{
 display:flex;flex-direction:column;align-items:center;justify-content:space-between;
 gap:clamp(2px,1.05dvh,14px);
 width:min(100%,1024px);
 height:100%;min-height:0;margin:0 auto;
 position:relative;z-index:1;
}
.zw80-home .zw80-hero{
 position:relative;flex:0 0 auto;
 display:block;width:min(100%,610px);max-width:100%;
 aspect-ratio:1024/614;
 padding:0;border:0;background:transparent;box-shadow:none;
 overflow:visible;
}
.zw80-home .zw80-hero-img{
 position:absolute;inset:0;width:100%;height:100%;object-fit:fill;
 pointer-events:none;user-select:none;
 image-rendering:auto;display:block;
 filter:none;
}
.zw80-home .zw80-settings{
 position:absolute;top:2.3%;left:1.8%;
 width:13%;height:23%;
 border:0!important;outline-offset:1px!important;border-radius:50%!important;
 padding:0;margin:0;background:transparent!important;
 cursor:pointer;touch-action:manipulation;
}
.zw80-home .zw80-wippe{
 position:absolute;left:21%;top:54%;width:56%;height:46%;
 border:0!important;outline-offset:3px!important;
 border-radius:25%!important;background:transparent!important;
 cursor:pointer;touch-action:manipulation;padding:0;
}
.zw80-home .zw80-wippe::after{
 content:"";position:absolute;top:0;left:33%;
 width:30px;height:30px;opacity:0;pointer-events:none;
 background:url('/reference-v80/joy.svg') center/contain no-repeat;
 transform:scale(.1) translateY(20px);
}
.zw80-home .zw80-wippe.zw-seesaw-tapped::after{
 animation:zw80-joy 1.8s ease-out both;
}
@keyframes zw80-joy{
 0%{opacity:0;transform:translateY(12px) scale(.25) rotate(-15deg)}
 20%{opacity:1;transform:translateY(-8px) scale(.9) rotate(8deg)}
 70%{opacity:1;transform:translateY(-32px) scale(1.1) rotate(-12deg)}
 100%{opacity:0;transform:translateY(-56px) scale(.6) rotate(17deg)}
}
.zw80-home .zw80-hero button:focus-visible{
 outline:3px solid #fff0a6!important;
 outline-offset:2px!important;
}
.zw80-home .zw80-grid{
 width:min(100%,730px);
 height:min(53dvh,565px);min-height:0;
 display:grid;flex:0 1 auto;
 grid-template-columns:repeat(3,minmax(0,1fr));
 grid-template-rows:repeat(3,minmax(0,1fr));
 gap:clamp(1px,.5dvh,9px) clamp(0px,.45vw,8px);
 align-items:stretch;justify-items:stretch;
 margin:0;
}
.zw80-home .zw80-tile{
 all:unset;box-sizing:border-box;
 position:relative;
 display:flex;align-items:center;justify-content:center;
 height:100%;width:100%;min-height:0;min-width:0;
 cursor:pointer;touch-action:manipulation;
 padding:0;margin:0;border:0!important;
 border-radius:18px;overflow:visible;
 background:transparent!important;box-shadow:none!important;
 transition:transform .16s ease-out;
}
.zw80-home .zw80-tile img{
 display:block;width:100%;height:100%;
 object-fit:contain;object-position:center center;
 pointer-events:none;user-select:none;
 filter:drop-shadow(0 2px 1px #416d3652);
}
.zw80-home .zw80-tile:active{transform:translate3d(0,2px,0) scale(.95)}
.zw80-home .zw80-tile:focus-visible{
 outline:3px solid #fff3b1!important;outline-offset:2px!important;
}
.zw80-home .zw80-footer{
 width:min(71%,452px);height:clamp(31px,6dvh,65px);
 flex:0 0 auto;display:flex;align-items:center;justify-content:center;
 margin:0 auto clamp(3px,.9dvh,12px);padding:0;
}
.zw80-home .zw80-footer img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}
.zw80-home .zw80-sr{
 position:absolute!important;width:1px!important;height:1px!important;
 padding:0!important;margin:-1px!important;overflow:hidden!important;
 clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;
}
/* Short devices prioritize button size over decorative margins. */
@media (max-width:359px) and (orientation:portrait){
 .zw80-home .zw80-grid{height:min(55dvh,326px);gap:0}
 .zw80-home .zw80-hero{width:100%}
 .zw80-home .zw80-footer{height:31px;width:min(76%,300px);margin-bottom:2px}
 .zw80-home .zw80-scene{gap:0}
}
/* Landscape/desktop: same source illustrations, correctly reflowed. */
@media(orientation:landscape) and (max-height:660px){
 #app>.zw80-home{
  background-image:url('/reference-v80/landscape-painted.webp');
 }
 .zw80-home .zw80-scene{
  width:min(100%,1440px);
  display:grid;grid-template-columns:minmax(0,44%) minmax(0,56%);
  grid-template-rows:minmax(0,1fr) auto;
  justify-content:center;align-items:center;
  gap:0 clamp(2px,.8vw,13px);
  padding:0 clamp(4px,.8vw,15px);
 }
 .zw80-home .zw80-hero{
  grid-column:1;grid-row:1;
  width:100%;max-width:none;max-height:100%;
  align-self:center;
 }
 .zw80-home .zw80-grid{
  grid-column:2;grid-row:1;
  height:min(100%,85dvh);
  max-height:100%;width:100%;margin:0;
  gap:0 clamp(0px,.6vw,9px);
 }
 .zw80-home .zw80-footer{
  grid-column:1/3;grid-row:2;align-self:center;
  height:clamp(21px,5.5dvh,37px);
  width:min(35%,325px);margin:0 auto 2px;
 }
}
/* Desktop and tablets get a spacious two-column composition. */
@media(min-width:680px) and (min-height:661px){
 .zw80-home .zw80-scene{
  width:min(96%,1540px);max-width:none;
  display:grid;grid-template-columns:minmax(0,43%) minmax(0,57%);
  grid-template-rows:minmax(0,1fr) clamp(40px,8dvh,78px);
  gap:0 clamp(8px,1.5vw,35px);
  padding:clamp(4px,1.2dvh,20px);
  justify-content:center;align-items:center;
 }
 .zw80-home .zw80-hero{
  grid-column:1;grid-row:1;
  width:100%;max-width:760px;align-self:start;
  margin-top:clamp(18px,9dvh,94px);
 }
 .zw80-home .zw80-grid{
  grid-column:2;grid-row:1;
  width:100%;height:min(72dvh,740px);
  max-height:100%;gap:clamp(4px,.7vw,13px);
 }
 .zw80-home .zw80-footer{
  grid-column:1/3;grid-row:2;
  width:min(34%,460px);height:100%;margin:0 auto;
 }
}
@media(prefers-reduced-motion:reduce){
 .zw80-home .zw80-tile{transition:none!important}
 .zw80-home .zw80-wippe.zw-seesaw-tapped::after{animation:none!important;opacity:1;transform:none}
}


/* source: home-joy-landscape-v81.css */
/* V81 – cohesive illustrated playground landscape and original-art joy burst. */
.zw80-home .zw81-joy-layer{
 position:absolute;inset:0;z-index:15;pointer-events:none!important;
 overflow:visible!important;contain:layout style;
}
.zw80-home .zw81-joy{
 position:absolute;left:0;top:0;display:block;
 width:var(--joy-size,23px);height:var(--joy-size,23px);
 pointer-events:none!important;will-change:transform,opacity;
 transform:translate3d(-200px,-200px,0);opacity:0;
}
.zw80-home .zw81-joy-heart{
 background:linear-gradient(135deg,#ffe8ee,#ff709d 70%);
 width:calc(var(--joy-size,23px) * .75);
 height:calc(var(--joy-size,23px) * .75);
 border:2px solid #c95f88;border-radius:3px;
 transform-origin:center;
}
.zw80-home .zw81-joy-heart::before,
.zw80-home .zw81-joy-heart::after{
 content:"";position:absolute;
 width:100%;height:100%;border-radius:50%;
 background:#ff83a6;box-sizing:content-box;
 border:2px solid #c95f88;
}
.zw80-home .zw81-joy-heart::before{left:-2px;top:-52%;border-bottom:0}
.zw80-home .zw81-joy-heart::after{left:48%;top:-2px;border-left:0}
.zw80-home .zw81-joy-bubble{
 border-radius:50%;
 border:2px solid rgba(255,250,255,.92);
 background:radial-gradient(circle at 31% 25%,rgba(255,255,255,.96) 0%,rgba(203,242,255,.47) 30%,rgba(168,191,250,.36) 67%,rgba(247,196,225,.34) 90%);
 box-shadow:inset -3px -4px 6px #759fc73d,0 1px 5px #fff9d28c;
}
.zw80-home .zw81-joy-balloon{
 width:calc(var(--joy-size,23px) * .79);
 height:calc(var(--joy-size,23px) * 1.13);
 border:2px solid #a96f6f;
 border-radius:47% 51% 47% 50%;
 background:radial-gradient(circle at 30% 22%,#fff4de 0%,var(--joy-color,#ff95a5) 29%,var(--joy-color,#ff95a5) 100%);
 box-shadow:inset -4px -4px 7px #8e5c7d38;
}
.zw80-home .zw81-joy-balloon::after{
 content:"";position:absolute;top:100%;left:49%;
 width:2px;height:calc(var(--joy-size,23px) * .72);
 background:#796d6caa;transform:rotate(14deg);
 border-radius:90%;
}
.zw80-home .zw81-joy-confetti{
 width:calc(var(--joy-size,23px) * .35);
 height:calc(var(--joy-size,23px) * .75);
 border-radius:3px;border:1px solid #745b483d;
 background:var(--joy-color,#f6c56b);
 box-shadow:inset 2px 2px 1px #fff5d188;
}
@media(orientation:landscape){
 #app>.zw80-home{
  padding:0!important;
  background-color:#86c676!important;
  background-image:url('/home-v81/landscape-stage.webp')!important;
  background-size:100% 100%!important;
  background-position:center!important;
 }
 .zw80-home .zw80-scene{
  display:grid!important;position:relative!important;
  grid-template-columns:minmax(0,47.4%) minmax(0,52.6%)!important;
  grid-template-rows:minmax(0,1fr) clamp(24px,6.8dvh,57px)!important;
  gap:0!important;
  justify-items:center!important;align-items:center!important;
  width:100%!important;height:100%!important;
  max-width:none!important;min-height:0!important;
  padding:clamp(4px,1.3dvh,14px) 1% clamp(2px,.5dvh,8px)!important;
  margin:0!important;overflow:hidden!important;
  background:transparent!important;
 }
 .zw80-home .zw80-hero{
  position:relative!important;
  grid-column:1!important;grid-row:1!important;
  align-self:start!important;justify-self:center!important;
  display:block!important;
  width:99%!important;max-width:745px!important;
  height:auto!important;min-height:0!important;max-height:100%!important;
  aspect-ratio:1024 / 614!important;
  background:transparent url('/home-v81/hero-seamless.webp') center/contain no-repeat!important;
  box-shadow:none!important;border:0!important;border-radius:0!important;
  margin:0!important;padding:0!important;
  margin-top:clamp(6px,8dvh,85px)!important;
  transform:none!important;overflow:visible!important;
 }
 .zw80-home .zw80-hero-img{visibility:hidden!important}
 .zw80-home .zw80-grid{
  position:relative!important;grid-column:2!important;grid-row:1!important;
  width:100%!important;height:100%!important;
  max-width:none!important;max-height:none!important;
  min-width:0!important;min-height:0!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-template-rows:repeat(3,minmax(0,1fr))!important;
  gap:clamp(1px,.6dvh,9px) clamp(2px,.5vw,13px)!important;
  margin:0!important;padding:clamp(13px,3.2dvh,34px) clamp(16px,3.8vw,62px) clamp(7px,2.7dvh,26px) clamp(12px,2vw,35px)!important;
  background:transparent!important;
  border:0!important;box-shadow:none!important;overflow:visible!important;
 }
 .zw80-home .zw80-tile{
  position:relative!important;width:100%!important;height:100%!important;
  min-width:0!important;min-height:0!important;
  border:0!important;outline-offset:2px!important;
  box-shadow:none!important;background:transparent!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  padding:0!important;margin:0!important;
 }
 .zw80-home .zw80-tile img{
  display:block!important;
  width:100%!important;height:100%!important;
  max-width:100%!important;max-height:100%!important;
  object-fit:contain!important;
  filter:drop-shadow(1px 3px 2px #7a603c59)!important;
 }
 .zw80-home .zw80-settings{
  position:absolute!important;left:1.8%!important;top:2.3%!important;
  width:13%!important;height:23%!important;
  background:transparent url('/home-v81/settings-exact.webp') center/contain no-repeat!important;
  filter:drop-shadow(0 2px 2px #644d3b55)!important;
 }
 .zw80-home .zw80-wippe{
  position:absolute!important;left:21%!important;top:54%!important;
  width:56%!important;height:46%!important;
 }
 .zw80-home .zw80-footer{
  grid-column:1/3!important;grid-row:2!important;
  justify-self:center!important;align-self:center!important;
  display:flex!important;
  width:min(31%,390px)!important;height:100%!important;
  max-width:90%!important;max-height:none!important;
  padding:0!important;margin:0!important;
  background:transparent!important;
 }
 .zw80-home .zw80-footer img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important}
}
@media(orientation:landscape) and (max-height:460px){
 .zw80-home .zw80-scene{grid-template-rows:minmax(0,1fr) 24px!important}
 .zw80-home .zw80-grid{padding:clamp(4px,2dvh,9px) clamp(7px,1.9vw,18px) 2px 4px!important;gap:0 3px!important}
 .zw80-home .zw80-footer{height:23px!important;width:min(35%,240px)!important}
 .zw80-home .zw80-hero{width:100%!important}
}
@media(prefers-reduced-motion:reduce){
 .zw80-home .zw81-joy{will-change:auto!important}
}


/* source: home-portrait-landscape-match-v82.css */
/* Zählwiese v82 – the same hand-painted stage, hero and game medallions
   in portrait and landscape. Original game references and all IDs unchanged. */
@media (orientation: portrait) {
 #app:has(>.zw80-home){
  background:#a0ca82!important;
  overflow:hidden!important;
 }
 #app>.zw80-home{
  width:100%!important;height:100%!important;
  max-width:none!important;max-height:100%!important;
  background-color:#8ec077!important;
  background-image:url('/home-v82/portrait-stage.webp')!important;
  background-position:center center!important;
  background-size:100% 100%!important;
  background-repeat:no-repeat!important;
  padding:max(3px,env(safe-area-inset-top,0px)) max(5px,env(safe-area-inset-right,0px))
          max(3px,env(safe-area-inset-bottom,0px)) max(5px,env(safe-area-inset-left,0px))!important;
 }
 .zw80-home .zw80-scene{
  position:relative!important;
  width:100%!important;height:100%!important;
  min-width:0!important;min-height:0!important;
  max-width:min(100%,680px)!important;max-height:none!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:minmax(0,31%) minmax(0,63%) minmax(0,6%)!important;
  align-items:center!important;justify-items:center!important;
  gap:0!important;padding:0!important;margin:0 auto!important;
  overflow:hidden!important;
  isolation:isolate;
 }
 .zw80-home .zw80-original-portrait{
  display:none!important;visibility:hidden!important;
 }
 .zw80-home .zw80-hero{
  position:relative!important;
  grid-column:1!important;grid-row:1!important;
  display:block!important;
  width:min(100%,52dvh)!important;
  height:auto!important;min-width:0!important;min-height:0!important;
  max-width:100%!important;max-height:100%!important;
  aspect-ratio:1024/614!important;
  align-self:center!important;justify-self:center!important;
  margin:0!important;padding:0!important;
  border:0!important;box-shadow:none!important;border-radius:0!important;
  overflow:visible!important;transform:none!important;
  background:transparent url('/home-v81/hero-seamless.webp') center/contain no-repeat!important;
 }
 .zw80-home .zw80-hero-img{
  display:block!important;
  visibility:hidden!important;
  width:100%!important;height:100%!important;
  pointer-events:none!important;
 }
 .zw80-home .zw80-settings{
  display:block!important;position:absolute!important;
  left:1.8%!important;top:2.3%!important;
  width:13%!important;height:23%!important;
  padding:0!important;margin:0!important;
  background:transparent url('/home-v81/settings-exact.webp') center/contain no-repeat!important;
  border:0!important;border-radius:50%!important;
  z-index:10!important;
  filter:drop-shadow(0 2px 2px #644d3b55)!important;
 }
 .zw80-home .zw80-wippe{
  position:absolute!important;
  left:21%!important;top:54%!important;
  width:56%!important;height:46%!important;
  padding:0!important;margin:0!important;
  z-index:10!important;
  border:0!important;background:transparent!important;
 }
 .zw80-home .zw80-grid{
  position:relative!important;
  grid-column:1!important;grid-row:2!important;
  display:grid!important;
  width:100%!important;height:100%!important;
  min-height:0!important;max-height:100%!important;
  min-width:0!important;max-width:none!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-template-rows:repeat(3,minmax(0,1fr))!important;
  gap:clamp(1px,.5dvh,8px) clamp(1px,1.1vw,10px)!important;
  padding:clamp(9px,1.6dvh,18px) clamp(5px,1.5vw,15px)!important;
  margin:0!important;
  border:clamp(3px,.85vw,5px) solid #785b36!important;
  border-radius:clamp(18px,6vw,34px)!important;
  background:linear-gradient(165deg,rgba(250,240,202,.97),rgba(236,219,163,.97))!important;
  box-shadow:inset 0 0 0 4px #fff6d5b0,0 5px 0 #5f70383a,0 10px 15px #405d3330!important;
  pointer-events:auto!important;
  overflow:hidden!important;
 }
 .zw80-home .zw80-grid::before{
  content:"";position:absolute;inset:9px;
  border:2px dashed #be9c6e55;
  border-radius:clamp(12px,4vw,24px);
  z-index:0;pointer-events:none;
 }
 .zw80-home .zw80-tile{
  all:unset;box-sizing:border-box!important;
  position:relative!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  grid-column:auto!important;grid-row:auto!important;
  width:100%!important;height:100%!important;
  min-width:0!important;min-height:0!important;
  border-radius:18px!important;
  padding:0!important;margin:0!important;
  background:transparent!important;border:0!important;box-shadow:none!important;
  pointer-events:auto!important;cursor:pointer!important;
  touch-action:manipulation!important;
  transition:transform .18s ease!important;
 }
 .zw80-home .zw80-tile img{
  display:block!important;
  width:100%!important;height:100%!important;
  min-height:0!important;min-width:0!important;
  max-width:100%!important;max-height:100%!important;
  object-fit:contain!important;
  pointer-events:none!important;
  filter:drop-shadow(0 2px 1px #85614444)!important;
 }
 .zw80-home .zw80-tile:active{transform:scale(.95)!important}
 .zw80-home .zw80-tile:focus-visible{
  outline:3px solid #fff0a5!important;
  outline-offset:1px!important;
 }
 .zw80-home .zw80-footer{
  grid-column:1!important;grid-row:3!important;
  position:relative!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  width:min(73%,420px)!important;height:100%!important;
  max-width:100%!important;max-height:100%!important;
  padding:0!important;margin:0!important;
  border:0!important;box-shadow:none!important;background:transparent!important;
 }
 .zw80-home .zw80-footer img{
  display:block!important;width:100%!important;height:100%!important;
  object-fit:contain!important;pointer-events:none!important;
 }
}
@media (orientation:portrait) and (max-width:359px){
 .zw80-home .zw80-grid{padding:6px 3px!important;gap:0!important;border-width:3px!important}
 .zw80-home .zw80-hero{width:min(100%,53dvh)!important}
 .zw80-home .zw80-footer{width:min(80%,320px)!important}
}
@media (prefers-reduced-motion:reduce){
 .zw80-home .zw80-tile{transition:none!important}
}

/* Override legacy positional :nth-child hotspot rules from portrait v80. */
@media(orientation:portrait){
 .zw80-home .zw80-grid > .zw80-tile:nth-child(n){
  position:relative!important;
  left:auto!important;top:auto!important;right:auto!important;bottom:auto!important;
  width:100%!important;height:100%!important;
  min-width:0!important;min-height:0!important;
  transform:none;
 }
 .zw80-home .zw80-grid > .zw80-tile:nth-child(n):active{
  transform:scale(.95)!important;
 }
}



/* source: toddler-buttons-garden-v83.css */
/* V83 – Hand-painted discovery garden and toddler-safe, clearly circular controls.
   All nine games and all existing touch/drag handlers are preserved. */

/* The nine hand-drawn game medallions remain above the decorative paper painting. */
@media(orientation:portrait){
 .zw80-home .zw80-grid{
  background-image:url('/home-v83/storybook-garden-panel.webp')!important;
  background-color:#f5ebce!important;
  background-size:100% 100%!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  padding:clamp(9px,2.5vw,16px)!important;
  border-color:#957448!important;
  box-shadow:inset 0 0 0 4px #fff5d3cf,0 5px 0 #536c3744,0 10px 17px #405e3039!important;
 }
 .zw80-home .zw80-grid::before{
  border:2px dashed #bc996c70!important;
  inset:8px!important;
 }
}
@media(orientation:landscape){
 .zw80-home .zw80-grid::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  z-index:0!important;
  inset:1.4% 0.3%!important;
  border:5px solid #a5885a88!important;
  border-radius:clamp(21px,3vw,49px)!important;
  background:#f6edcf url('/home-v83/storybook-garden-panel.webp') center/100% 100% no-repeat!important;
  box-shadow:inset 0 0 0 4px #fff3d9a3,0 4px 12px #6c69462d!important;
  opacity:1!important;
  pointer-events:none!important;
 }
 .zw80-home .zw80-tile{
  z-index:1!important;
 }
}
.zw80-home .zw80-tile{
 -webkit-tap-highlight-color:transparent!important;
 touch-action:manipulation!important;
}
.zw80-home .zw80-tile:focus-visible{
 outline:4px solid #fff5aa!important;
 outline-offset:2px!important;
 border-radius:28px!important;
}
.zw80-home .zw80-tile:active{
 filter:drop-shadow(0 0 9px #f2d775)!important;
}

/* Circular hand-painted back button, safely within the play area.
   Finger/animal picture-book overlays retain their native painted back hotspots. */
#app:not(:has(.zw-finger-book-v53)):not(:has(.zw-animal-book-v63)) > .app-header #homeBtn{
 appearance:none!important;
 display:grid!important;place-items:center!important;
 position:relative!important;
 left:auto!important;top:auto!important;right:auto!important;bottom:auto!important;
 flex:0 0 auto!important;
 width:clamp(54px,13.6vw,66px)!important;
 height:clamp(54px,13.6vw,66px)!important;
 min-width:54px!important;min-height:54px!important;
 padding:0!important;margin:0!important;
 border:0!important;border-radius:50%!important;
 color:transparent!important;
 font-size:0!important;
 background:transparent url('/home-v83/round-home.svg') center/100% 100% no-repeat!important;
 box-shadow:none!important;
 filter:drop-shadow(0 3px 2px #775a3e75)!important;
 opacity:1!important;visibility:visible!important;
 pointer-events:auto!important;touch-action:manipulation!important;
 transform:none!important;
}
#app:not(:has(.zw-finger-book-v53)):not(:has(.zw-animal-book-v63)) > .app-header #homeBtn svg,
#app:not(:has(.zw-finger-book-v53)):not(:has(.zw-animal-book-v63)) > .app-header #homeBtn .zw-home-label{
 display:none!important;
}
#app:not(:has(.zw-finger-book-v53)):not(:has(.zw-animal-book-v63)) > .app-header .header-tools{
 display:flex!important;align-items:center!important;justify-content:flex-start!important;
 padding:0!important;margin-left:max(12px,env(safe-area-inset-left,0px))!important;
 overflow:visible!important;
}
#app:has(.zw-picnic-world) > .app-header #homeBtn{
 position:absolute!important;
 left:max(12px,env(safe-area-inset-left,0px))!important;
 top:max(8px,env(safe-area-inset-top,0px))!important;
 z-index:70!important;
}
#app:has(.zw-picnic-world) > .app-header .header-tools{
 position:absolute!important;
 inset:0!important;
 width:100%!important;height:0!important;
 margin:0!important;
 overflow:visible!important;
 pointer-events:none!important;
}

/* All three picnic mode icons remain touchable and look like big painted coins. */
.zw-picnic-world .zw-pic-modes{
 gap:clamp(6px,1.9vw,13px)!important;
}
.zw-picnic-world button.zw-pic-mode{
 width:clamp(52px,15vw,65px)!important;
 height:clamp(52px,15vw,65px)!important;
 min-width:52px!important;min-height:52px!important;
 flex:0 0 clamp(52px,15vw,65px)!important;
 border:4px solid #997144!important;
 border-radius:50%!important;
 box-shadow:inset 0 0 0 3px #fff9e0,0 4px 2px #71533f85!important;
 touch-action:manipulation!important;
}
.zw-picnic-world button.zw-pic-mode[aria-pressed="true"],
.zw-picnic-world button.zw-pic-mode.is-current{
 outline:3px solid #f9db83!important;
 outline-offset:2px!important;
}
@media(max-height:650px) and (orientation:portrait){
 .zw-picnic-world .zw-pic-modes{top:7.3%!important}
}
.zw-picnic-world button.zw-pic-food{
 border-radius:50%!important;
 min-width:54px!important;min-height:54px!important;
}
.zw-picnic-world button.zw-pic-food:focus-visible,
.zw-picnic-world button.zw-pic-mode:focus-visible{
 outline:4px solid #ffe5a0!important;outline-offset:2px!important;
}

/* Counting answer choices are colorful circles, without moving the hand-drawn numbers. */
.zw-book-answer-row button.zw-book-answer-value{
 border-radius:50%!important;
 outline-offset:1px!important;
 touch-action:manipulation!important;
}

/* An animal selection is a big illustrated round button with its label below. */
.extra-animal-choice .extra-animal-round,
.kitchen-recipe-button .kitchen-round{
 border-radius:50%!important;
 filter:drop-shadow(0 4px 3px #745c4270)!important;
}
.extra-animal-choice:focus-visible .extra-animal-round,
.kitchen-recipe-button:focus-visible .kitchen-round{
 outline:4px solid #f7d783!important;outline-offset:3px!important;
}
.extra-food-choice,.kitchen-ingredient-choice,.kitchen-item-choice{
 border-radius:50%!important;
 touch-action:manipulation!important;
}

/* Seven crayons should all be reachable without a tiny clipped horizontal scroll.
   A predictable 4+3 circular palette gives three-year-olds clear visible choices. */
.connect-game .connect-colors{
 padding:4px max(7px,2vw) 6px!important;
 border-radius:27px!important;
}
.connect-game .connect-crayons{
 display:grid!important;
 grid-template-columns:repeat(4,minmax(0,1fr))!important;
 grid-auto-rows:minmax(48px,auto)!important;
 align-content:center!important;justify-content:center!important;
 justify-items:center!important;align-items:center!important;
 width:100%!important;
 gap:4px clamp(5px,1.6vw,10px)!important;
 padding:3px 5px!important;
 overflow:visible!important;
}
.connect-game button.connect-crayon{
 box-sizing:border-box!important;
 display:flex!important;align-items:center!important;justify-content:center!important;
 flex:none!important;
 width:clamp(48px,12.7vw,57px)!important;
 height:clamp(48px,12.7vw,57px)!important;
 min-width:48px!important;min-height:48px!important;
 border:3px solid #ac8560!important;
 border-radius:50%!important;
 background:radial-gradient(circle at 36% 28%,#fff9e9,#f1d9b2 73%,#d5b180)!important;
 box-shadow:inset 0 0 0 2px #fff6db,0 3px 1px #7b65458a!important;
 padding:1px!important;
 margin:0!important;
 transform:none!important;
 touch-action:manipulation!important;
}
.connect-game button.connect-crayon[aria-pressed="true"]{
 outline:3px solid var(--ink,#dfb369)!important;
 outline-offset:1px!important;
 background:#fff9df!important;
 transform:translateY(-2px)!important;
}
.connect-game .connect-crayon-shape{font-size:clamp(22px,6vw,30px)!important;line-height:1!important}
.connect-game .connect-crayon-name{font-size:8px!important;line-height:1!important}
.connect-game button.connect-num{width:clamp(47px,13vw,64px)!important;height:clamp(47px,13vw,64px)!important;border-radius:50%!important}
.connect-secondary,.connect-continue,.drive-again{
 border-radius:50%!important;
 width:clamp(55px,14vw,64px)!important;
 height:clamp(55px,14vw,64px)!important;
 min-width:55px!important;min-height:55px!important;
 padding:7px!important;
 box-shadow:inset 0 2px #fff5de,0 4px 1px #87654491!important;
}
@media(orientation:portrait) and (max-height:690px){
 .connect-game .connect-board{height:min(var(--board-height),37dvh)!important}
 .connect-game{overflow-y:auto!important}
 .connect-game .connect-crayons{grid-auto-rows:minmax(48px,auto)!important}
}
@media(orientation:landscape) and (max-height:530px){
 .connect-game .connect-crayon-shape{font-size:23px!important}
 .connect-game .connect-crayons{grid-auto-rows:48px!important;gap:2px 4px!important}
 .connect-game button.connect-crayon{width:48px!important;height:48px!important}
 .connect-game{overflow-y:auto!important}
}

/* Maze restart stays a clearly visible, fully reachable round button. */
.family-maze-screen .family-maze-restart,
.family-maze-screen .family-maze-next{
 width:clamp(54px,14vw,66px)!important;
 height:clamp(54px,14vw,66px)!important;
 min-width:54px!important;min-height:54px!important;
 border-radius:50%!important;
 box-shadow:inset 0 1px #fff6d9,0 4px 2px #7d684c72!important;
}
@media(orientation:portrait) and (max-height:700px){
 .family-maze-screen .family-maze-restart{
  position:fixed!important;
  bottom:max(12px,env(safe-area-inset-bottom,0px))!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  z-index:40!important;
 }
}
:where(.zw-picnic-world,.connect-game,.extra-page,.kitchen-page,.family-maze-screen) button:focus-visible{
 outline:4px solid #ffdd82!important;outline-offset:2px!important;
}
@media(prefers-reduced-motion:reduce){
 .zw80-home .zw80-tile,.connect-game button.connect-crayon{transition:none!important}
}

/* Final safety correction: picnic has a 0px-high app header. Flex centering
   otherwise moves the round home button halfway above the screen. */
#app:has(.zw-picnic-world)>.app-header .header-tools{
 position:absolute!important;
 top:0!important;left:0!important;
 height:0!important;width:100%!important;
 margin:0!important;padding:0!important;
 overflow:visible!important;
 pointer-events:none!important;
}
#app:has(.zw-picnic-world)>.app-header #homeBtn{
 position:absolute!important;
 top:max(10px,env(safe-area-inset-top,0px))!important;
 left:max(10px,env(safe-area-inset-left,0px))!important;
 right:auto!important;bottom:auto!important;
 width:clamp(54px,13.6vw,64px)!important;
 height:clamp(54px,13.6vw,64px)!important;
 min-width:54px!important;min-height:54px!important;
 margin:0!important;
 transform:none!important;
 pointer-events:auto!important;
}
.zw-picnic-world button.zw-pic-mode:not(.is-current){
 transform:none!important;
 opacity:1!important;
}
#app .family-maze-screen button.family-maze-restart,
#app .family-maze-screen button.family-maze-next{
 border-radius:50%!important;
}

/* Outrank generic application navigation specificity on picnic's zero-height header. */
#app:has(.zw-picnic-world)>.app-header .header-tools button#homeBtn.zw-go-home{
 position:absolute!important;
 top:max(10px,env(safe-area-inset-top,0px))!important;
 left:-2px!important;
 right:auto!important;bottom:auto!important;
 margin:0!important;transform:none!important;
}


/* source: storybook-games-v91.css */
/* ZÄHLWIESE V91 – Original watercolor/pencil pictures on all six rebuilt games.
   This stylesheet intentionally overrides each legacy minigame without altering
   the three already-approved reference games. */
#app .zw91.main-content{
 position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
 margin:0!important;padding:0!important;box-sizing:border-box!important;overflow:hidden!important;
 display:block!important;background-color:#8fb890!important;
 background-image:url('/storybook-games-v91/world-feeding-portrait.webp')!important;
 background-size:100% 100%!important;background-position:center!important;
 background-repeat:no-repeat!important;touch-action:manipulation!important;
 font-family:'Segoe Print','Chalkboard SE','Comic Sans MS',sans-serif!important;
 isolation:isolate!important;transform:none!important;
}
#app .zw91-cooking.main-content{background-image:url('/storybook-games-v91/world-cooking-portrait.webp')!important}
#app .zw91-connect.main-content{background-image:url('/storybook-games-v91/world-connect-portrait.webp')!important}
#app .zw91-drive.main-content{background-image:url('/storybook-games-v91/world-drive-portrait.webp')!important}
#app .zw91-hunt.main-content{background-image:url('/storybook-games-v91/world-hunt-portrait.webp')!important}
#app .zw91-maze.main-content{background-image:url('/storybook-games-v91/world-maze-portrait.webp')!important}
.zw91 *,.zw91 *:before,.zw91 *:after{box-sizing:border-box}
.zw91 img{display:block;max-width:100%;object-fit:contain;user-select:none;-webkit-user-drag:none;pointer-events:none}
.zw91 .zw91-title{
 position:absolute;z-index:13;left:19%;top:1%;width:78%;height:11%;
 background-position:center;background-size:contain;background-repeat:no-repeat;
 filter:drop-shadow(0 3px 2px #6e533d50);pointer-events:none;
}
.zw91 .zw91-goal{
 position:absolute;z-index:15;left:6%;top:13%;width:88%;height:17%;
 min-height:76px;display:grid!important;place-items:center!important;
 filter:drop-shadow(0 4px 3px #6e513f40);
}
.zw91 .zw91-board-art{width:100%;height:100%;object-fit:fill;position:absolute;inset:0}
.zw91 .zw91-goal-inner{
 position:relative;z-index:2;width:85%;height:85%;display:flex;
 align-items:center;justify-content:center;gap:clamp(4px,2vw,14px);overflow:hidden;
}
.zw91 .zw91-number{height:70%;width:clamp(34px,13vw,70px);object-fit:contain;flex-shrink:0}
.zw91 .zw91-wish-units{flex:1;max-width:79%;height:93%;min-width:0;display:flex;align-items:center;justify-content:center;gap:3px}
.zw91 .zw91-wish-unit{flex:1 1 0;min-width:0;height:94%;transition:opacity .34s,transform .34s}
.zw91 .zw91-wish-unit img{width:100%;height:100%;object-fit:contain}
.zw91 .zw91-wish-unit.is-given{opacity:.24;transform:scale(.75) rotate(-8deg)}
.zw91 .zw91-goal-large{width:30%;height:92%;object-fit:contain}
.zw91 .zw91-goal-small{width:15%;height:75%;object-fit:contain;transform:rotate(-25deg);opacity:.6}
.zw91 .zw91-goal-arrow{width:16%;height:65%;transform:rotate(95deg)}
.zw91 .zw91-stage{
 position:absolute;z-index:12;left:5%;top:32%;width:90%;height:45%;
 display:block;overflow:visible;touch-action:manipulation;
}
.zw91 .zw91-character{
 position:absolute;left:10%;top:0;width:80%;height:95%;object-fit:contain;
 filter:drop-shadow(0 6px 3px #60523c44);animation:zw91-breathe 4.2s ease-in-out infinite;
}
.zw91 .zw91-character.is-eating{animation:zw91-eating .65s ease-in-out infinite}
.zw91 .zw91-character.is-cheering{animation:zw91-cheer .78s ease-in-out 2}
.zw91 .zw91-ground-bowl{position:absolute;z-index:-1;left:19%;bottom:-5%;width:62%;height:21%;object-fit:contain}
.zw91 .zw91-choices{
 position:absolute;z-index:30;left:4%;top:80%;width:92%;height:17%;
 display:flex!important;align-items:center!important;justify-content:space-around!important;
 flex-wrap:nowrap!important;gap:clamp(5px,1vw,15px)!important;overflow:visible!important;
 padding:0!important;margin:0!important;
}
.zw91 button.zw91-coin{
 appearance:none!important;-webkit-appearance:none!important;position:relative!important;
 display:block!important;flex:none!important;width:clamp(76px,26vw,118px)!important;
 height:clamp(76px,26vw,118px)!important;min-width:72px!important;min-height:72px!important;
 border:0!important;outline:0!important;box-shadow:none!important;border-radius:50%!important;
 margin:0!important;padding:0!important;background:transparent!important;
 color:inherit!important;touch-action:manipulation;cursor:pointer!important;
 filter:drop-shadow(0 4px 2px #59442e55);
 transition:transform .22s ease,filter .22s ease!important;
}
.zw91 .zw91-coin-art{position:absolute;inset:0;width:100%;height:100%;object-fit:fill}
.zw91 .zw91-coin-icon{position:absolute;left:12%;top:10%;width:76%;height:77%;object-fit:contain}
.zw91 button.zw91-coin:active{transform:scale(.93)!important}
.zw91 button.zw91-coin:focus-visible,.zw91 button.zw91-bubble:focus-visible,.zw91 .zw91-number-node:focus-visible{outline:4px solid #fff3ce!important;outline-offset:3px!important}
.zw91 button.zw91-coin.zw91-wrong,.zw91 button.zw91-bubble.zw91-wrong,.zw91 button.zw91-number-node.zw91-wrong{animation:zw91-wrong .53s ease-in-out!important}
.zw91 .zw91-effects{position:absolute;z-index:90;inset:0;pointer-events:none;overflow:hidden}
.zw91 .zw91-party-piece{
 position:absolute;width:clamp(18px,5vw,34px);height:clamp(18px,5vw,34px);
 opacity:0;object-fit:contain;pointer-events:none;animation:zw91-particle 2.6s ease-out var(--delay) forwards;
}
.zw91 .zw91-party-piece.is-balloon{width:clamp(41px,10vw,64px);height:clamp(95px,25vw,145px);animation:zw91-balloon 3.2s ease-in-out var(--delay) forwards}
.zw91 .zw91-ghost{
 position:absolute;z-index:85;width:clamp(75px,25vw,105px);height:clamp(75px,25vw,105px);
 object-fit:contain;pointer-events:none;will-change:transform;
 filter:drop-shadow(0 3px 2px #6d55454b);
}
.zw91 .zw91-live{position:absolute!important;width:1px!important;height:1px!important;clip:rect(0,0,0,0)!important;overflow:hidden!important}
.zw91 .zw91-animal-grid{
 position:absolute;z-index:20;left:6%;top:13%;width:88%;height:82%;
 display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(5,minmax(0,1fr));
 justify-items:center;align-items:center;gap:1.1%;overflow:hidden;
}
.zw91 .zw91-animal-grid button.zw91-coin{width:min(24vw,100px)!important;height:min(24vw,100px)!important;min-height:64px!important;min-width:64px!important}
.zw91 .zw91-recipe-grid{
 position:absolute;z-index:20;left:10%;top:22%;width:80%;height:63%;
 display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));
 justify-items:center;align-items:center;gap:3%;
}
.zw91 .zw91-recipe-grid button.zw91-coin{width:min(35vw,146px)!important;height:min(35vw,146px)!important}
.zw91 .zw91-cooking-stage{top:34%;height:42%}
.zw91 .zw91-cooking-stage .zw91-main-illustration{
 position:absolute;left:25%;top:3%;width:50%;height:90%;
 animation:zw91-breathe 5.8s ease-in-out infinite;
}
.zw91 .zw91-cooking-stage .zw91-main-illustration.is-working{animation:zw91-mix .48s ease-in-out infinite}
.zw91 .zw91-ingredients-in-bowl{
 position:absolute;z-index:4;left:24%;top:50%;width:52%;height:26%;
 display:flex;justify-content:center;align-items:center;
}
.zw91 .zw91-ingredients-in-bowl img{width:29%;height:100%}
.zw91 .zw91-serving .zw91-main-illustration{left:31%;width:38%;height:70%;top:22%}
.zw91 .zw91-friend{position:absolute;top:10%;width:34%;height:74%;animation:zw91-cheer 2.4s ease-in-out infinite}
.zw91 .zw91-friend-left{left:-1%}.zw91 .zw91-friend-right{right:-1%;animation-delay:.9s}
.zw91 .zw91-small-tools{
 position:absolute;z-index:30;left:40%;bottom:2%;width:20%;height:11%;
 display:grid;place-items:center;
}
.zw91 .zw91-small-tools button.zw91-coin{width:clamp(62px,17vw,86px)!important;height:clamp(62px,17vw,86px)!important;min-width:62px!important;min-height:62px!important}
.zw91 .zw91-board-stage,.zw91 .zw91-maze-stage{
 top:32%;left:5%;width:90%;height:54%;touch-action:none;overflow:hidden;border-radius:21px;
 filter:drop-shadow(0 3px 2px #59452f50);
}
.zw91 .zw91-card-background{width:100%;height:100%;position:absolute;inset:0;object-fit:fill}
.zw91 .zw91-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:3}
.zw91 .zw91-number-node{
 position:absolute!important;z-index:5;transform:translate(-50%,-50%);width:clamp(58px,17vw,86px);height:clamp(58px,17vw,86px);
 background:transparent!important;border:0!important;padding:0!important;outline:0!important;
 filter:drop-shadow(0 2px 2px #6d543d48);cursor:pointer;touch-action:none;
}
.zw91 .zw91-number-node>img:first-child{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.zw91 .zw91-number-node .zw91-number{position:absolute;left:25%;top:15%;width:50%;height:65%}
.zw91 .zw91-number-node.is-selected{filter:drop-shadow(0 0 7px #fff9d1) brightness(1.08);transform:translate(-50%,-50%) scale(1.08)}
.zw91 .zw91-number-node.is-matched{opacity:.55}
.zw91 .zw91-hunt-stage{top:32%;height:64%;overflow:hidden}
.zw91 .zw91-bubble{
 appearance:none!important;position:absolute!important;transform:translate(-5%,-5%);
 width:clamp(64px,20vw,108px);height:clamp(64px,20vw,108px);
 border:0!important;border-radius:50%!important;box-shadow:none!important;padding:0!important;
 background:transparent!important;touch-action:manipulation;
 animation:none;
}
.zw91 .zw91-bubble:nth-child(3n)>img{animation-delay:-1.2s}
.zw91 .zw91-bubble:nth-child(3n+1)>img{animation-delay:-2.6s}
.zw91 .zw91-bubble>img:first-child{position:absolute;inset:0;width:100%;height:100%}
.zw91 .zw91-bubble .zw91-number{position:absolute;left:29%;top:20%;width:42%;height:58%}
.zw91 .zw91-bubble.is-burst{animation:zw91-bubble-pop .43s ease-out forwards!important}
.zw91 .zw91-bubble.is-popped{opacity:0;pointer-events:none;animation:none!important}
.zw91 .zw91-hunt-step{flex:1;height:40%;display:flex;align-items:center;justify-content:center;gap:3px}
.zw91 .zw91-hunt-step i{width:8%;max-width:15px;aspect-ratio:1;display:block;border-radius:50%;background:#d8bb8f;box-shadow:inset 1px 2px #9b805e}
.zw91 .zw91-hunt-step i.is-past{background:#8aaa83}
.zw91 .zw91-road-stage{
 top:31%;left:4%;width:92%;height:57%;max-height:60%;
 overflow:hidden;border-radius:21px;touch-action:none;box-shadow:0 3px 1px #624f3b45;
 border:6px solid #edcea0;background:#9ab98c;
}
.zw91 .zw91-road-map{position:absolute;inset:0;width:100%;height:100%;object-fit:fill}
.zw91 .zw91-destination{
 position:absolute;z-index:4;width:20%;height:20%;transform:translate(-50%,-50%);filter:drop-shadow(0 3px 1px #735e4260);
}
.zw91 .zw91-car{
 position:absolute;z-index:6;width:18%;height:18%;transform:translate(-50%,-50%);
 transition:left .12s linear,top .12s linear;filter:drop-shadow(0 4px 2px #5a4b3955);
 pointer-events:auto;touch-action:none;
}
.zw91 .zw91-car img{width:100%;height:100%}
.zw91 .zw91-car.is-arrived{animation:zw91-cheer 1s ease-in-out 3}
.zw91 .zw91-maze-stage{border-radius:23px;touch-action:none}
.zw91 .zw91-maze-player,.zw91 .zw91-maze-friend{
 position:absolute;z-index:8;transform:translate(-50%,-50%);
 pointer-events:auto;touch-action:none;filter:drop-shadow(0 2px 1px #75583d50);
 transition:left .14s ease-out,top .14s ease-out;
}
.zw91 .zw91-maze-player img,.zw91 .zw91-maze-friend img{width:100%;height:100%}
.zw91 .zw91-cuddle{
 position:absolute;z-index:12;left:25%;top:30%;width:50%;height:42%;
 display:flex;align-items:center;justify-content:center;gap:0;
 opacity:0;transform:scale(.3);pointer-events:none;
}
.zw91 .zw91-cuddle img{width:60%;height:100%;animation:zw91-hug 1.2s ease-in-out infinite}
.zw91 .zw91-cuddle img:nth-child(2){margin-left:-13%;animation-delay:-.4s}
.zw91 .zw91-cuddle.is-visible{opacity:1;transform:scale(1);transition:transform .8s ease-out,opacity .5s ease-out}
@keyframes zw91-breathe{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-7px) rotate(1deg)}}
@keyframes zw91-eating{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(4px) rotate(2deg)}}
@keyframes zw91-cheer{0%,100%{transform:translateY(0) rotate(-2deg)}35%{transform:translateY(-12px) rotate(5deg)}75%{transform:translateY(0) rotate(-4deg)}}
@keyframes zw91-wrong{0%,100%{transform:translateX(0)}24%,72%{transform:translateX(-6px) rotate(-3deg)}48%{transform:translateX(6px) rotate(3deg)}}
@keyframes zw91-particle{0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}15%{opacity:1}75%{opacity:1}100%{opacity:0;transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) rotate(var(--rot)) scale(.65)}}
@keyframes zw91-balloon{0%{opacity:0;transform:translate(-50%,0) scale(.45)}17%{opacity:1}80%{opacity:1}100%{opacity:0;transform:translate(calc(-50% + var(--dx)),calc(-140% + var(--dy))) rotate(11deg) scale(1.05)}}
@keyframes zw91-float{0%,100%{transform:translate(-5%,-5%) rotate(-3deg)}50%{transform:translate(-5%,-12%) rotate(4deg)}}
@keyframes zw91-bubble-pop{0%{opacity:1;transform:scale(1)}40%{opacity:1;transform:scale(1.23)}100%{opacity:0;transform:scale(1.56)}}
@keyframes zw91-mix{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(6deg)}}
@keyframes zw91-hug{0%,100%{transform:translateX(0) rotate(-4deg)}50%{transform:translateX(7px) rotate(5deg)}}
@media (max-width:355px) and (orientation:portrait){
 .zw91 .zw91-goal{left:4%;width:92%}
 .zw91 .zw91-title{left:20%;width:79%}
 .zw91 button.zw91-coin{width:29vw!important;height:29vw!important;min-width:70px!important;min-height:70px!important}
 .zw91 .zw91-number-node{width:55px;height:55px}
 .zw91 .zw91-bubble{width:64px;height:64px}
}
@media (orientation:landscape) and (max-height:650px){
 #app .zw91.main-content{background-image:url('/storybook-games-v91/world-feeding-landscape.webp')!important}
 #app .zw91-cooking.main-content{background-image:url('/storybook-games-v91/world-cooking-landscape.webp')!important}
 #app .zw91-connect.main-content{background-image:url('/storybook-games-v91/world-connect-landscape.webp')!important}
 #app .zw91-drive.main-content{background-image:url('/storybook-games-v91/world-drive-landscape.webp')!important}
 #app .zw91-hunt.main-content{background-image:url('/storybook-games-v91/world-hunt-landscape.webp')!important}
 #app .zw91-maze.main-content{background-image:url('/storybook-games-v91/world-maze-landscape.webp')!important}
 .zw91 .zw91-title{left:10%;top:1%;width:42%;height:17%}
 .zw91 .zw91-goal{left:50%;top:12%;width:46%;height:29%;min-height:0}
 .zw91 .zw91-number{width:clamp(30px,10vh,55px)}
 .zw91 .zw91-stage{left:3%;top:19%;width:46%;height:78%}
 .zw91 .zw91-choices{left:53%;top:49%;width:43%;height:43%;gap:3px!important}
 .zw91 button.zw91-coin{width:clamp(64px,21vh,108px)!important;height:clamp(64px,21vh,108px)!important}
 .zw91 .zw91-animal-grid{left:9%;top:22%;width:82%;height:73%;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr))}
 .zw91 .zw91-animal-grid button.zw91-coin{width:clamp(61px,20vh,90px)!important;height:clamp(61px,20vh,90px)!important}
 .zw91 .zw91-recipe-grid{left:12%;top:23%;width:76%;height:72%;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:1fr}
 .zw91 .zw91-recipe-grid button.zw91-coin{width:clamp(72px,24vh,140px)!important;height:clamp(72px,24vh,140px)!important}
 .zw91 .zw91-cooking-stage{left:5%;top:19%;width:43%;height:79%}
 .zw91 .zw91-board-stage,.zw91 .zw91-maze-stage{left:2%;top:13%;width:48%;height:83%;border-radius:15px}
 .zw91 .zw91-number-node{width:clamp(47px,15vh,72px);height:clamp(47px,15vh,72px)}
 .zw91 .zw91-road-stage{left:2%;top:7%;width:48%;height:90%}
 .zw91 .zw91-hunt-stage{left:3%;top:12%;width:46%;height:84%}
 .zw91 .zw91-bubble{width:clamp(50px,15vh,81px);height:clamp(50px,15vh,81px)}
 .zw91 .zw91-small-tools{left:68%;top:61%;width:14%;height:25%;bottom:auto}
 .zw91 .zw91-small-tools button.zw91-coin{width:clamp(62px,19vh,78px)!important;height:clamp(62px,19vh,78px)!important}
}
@media (prefers-reduced-motion:reduce){
 .zw91 .zw91-character,.zw91 .zw91-bubble,.zw91 .zw91-main-illustration{animation-duration:9s}
 .zw91 .zw91-party-piece{animation-duration:3.8s}
 .zw91 .zw91-party-piece.is-balloon{animation-duration:4s}
}

.zw91 .zw91-character .zw91-animal-puppet{display:block;position:relative;width:100%;height:100%;overflow:visible;pointer-events:none}
.zw91 .zw91-character .zw88-frame{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.zw91 .zw91-choices button.zw91-coin{touch-action:none!important}
.zw91 .zw91-choices button.zw91-coin.is-dragging{transform:scale(.93)!important;filter:brightness(1.1) drop-shadow(0 0 7px #ffedc3)}
.zw91-drag-food{position:fixed!important;z-index:99999!important;pointer-events:none!important;width:100px!important;height:100px!important;object-fit:contain!important;transform:translate(-50%,-50%)!important;filter:drop-shadow(0 7px 3px #4f422e77)}

.zw91 .zw91-bubble>img{animation:zw91-bubble-drift 5.2s ease-in-out infinite}
@keyframes zw91-bubble-drift{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-5px) rotate(3deg)}}

/* Preschool-scale painted objects: avoid tiny images within large empty stages. */
.zw91 .zw91-character .zw91-animal-puppet{transform:scale(1.43);transform-origin:center center}
.zw91 .zw91-ground-bowl{left:14%;bottom:-5%;width:72%;height:25%}
.zw91 .zw91-cooking-stage .zw91-main-illustration{left:11%;top:-4%;width:78%;height:106%}
.zw91 .zw91-cooking-stage.zw91-serving .zw91-main-illustration{left:28%;top:19%;width:44%;height:75%}
.zw91 button.zw91-coin .zw91-coin-icon{left:3%;top:3%;width:94%;height:94%}
.zw91 .zw91-animal-grid .zw91-coin-icon{left:-10%;top:-10%;width:120%;height:120%}
.zw91 .zw91-recipe-grid .zw91-coin-icon{left:-1%;top:1%;width:102%;height:100%}
@media(orientation:landscape) and (max-height:650px){
 .zw91 .zw91-character .zw91-animal-puppet{transform:scale(1.32)}
 .zw91 .zw91-cooking-stage .zw91-main-illustration{left:11%;top:-5%;width:78%;height:108%}
}

@media(orientation:landscape) and (max-height:650px){
 .zw91 .zw91-road-stage{left:4%;top:5%;width:min(43vw,calc(90vh * 390 / 510));height:90%;max-height:90%;aspect-ratio:390/510}
}

/* A truly illustrated, always visible and thumb-friendly home button. */
#app:has(.zw91) .app-header{z-index:110!important;pointer-events:none}
#app:has(.zw91) .app-header #homeBtn{
 pointer-events:auto!important;z-index:120!important;
 background:transparent url('/storybook-games-v91/home-button.webp') center/100% 100% no-repeat!important;
 border:0!important;box-shadow:none!important;border-radius:50%!important;
 width:55px!important;height:55px!important;min-width:55px!important;min-height:55px!important;
 padding:0!important;margin:0!important;
 filter:drop-shadow(0 2px 2px #66503e44);
}
#app:has(.zw91) .app-header #homeBtn svg,
#app:has(.zw91) .app-header #homeBtn .zw-home-label{display:none!important}
@media (orientation:landscape) and (max-height:650px){
 .zw91 .zw91-road-stage{left:4%;top:18%;width:min(43vw,calc(80vh * 390 / 510));height:80%;max-height:80%;aspect-ratio:390/510}
}


/* source: cuddle-maze-v93.css */
/* Zählwiese Kuschel-Labyrinth V93 – warm illustrated responsive children's game */
#app .zw93.main-content{
 position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
 overflow:hidden!important;isolation:isolate!important;
 background:#acd49f url('/storybook-games-v91/world-maze-portrait.webp') center/100% 100% no-repeat!important;
 font-family:'Segoe Print','Comic Sans MS',sans-serif!important;
}
.zw93,.zw93 *{box-sizing:border-box}
.zw93 button{appearance:none!important;-webkit-appearance:none!important;background:none!important;border:0!important;
 margin:0!important;padding:0!important;box-shadow:none!important;outline:none;cursor:pointer;
 touch-action:manipulation!important;-webkit-tap-highlight-color:transparent}
.zw93 img{display:block;pointer-events:none;user-select:none;-webkit-user-drag:none;object-fit:contain;max-width:100%}
.zw93 .zw93-title{position:absolute;left:20%;top:1%;width:73%;height:10%;z-index:5;pointer-events:none}
.zw93 .zw93-title img{width:100%;height:100%;filter:drop-shadow(0 3px 2px #7a614944)}
.zw93 .zw93-progress{
 position:absolute;z-index:8;left:19%;top:11.5%;width:68%;height:7%;
 display:flex;align-items:center;justify-content:space-around;gap:5px;
 background:url('/storybook-games-v91/choice-board.webp') center/100% 100% no-repeat;
 filter:drop-shadow(0 2px 2px #5e4c3925);
}
.zw93 .zw93-progress-char{width:12%;height:89%;max-width:42px}
.zw93 .zw93-progress-petals{flex:1;display:flex;align-items:center;justify-content:center;gap:3px}
.zw93 .zw93-progress-petal{height:clamp(10px,3vw,16px);width:clamp(10px,3vw,16px);border-radius:45% 55% 50% 45%;
 display:block;background:#e7bea3;box-shadow:inset 1px 1px #b68f7b,0 1px 1px #fff9db;
 transform:rotate(-20deg);opacity:.75;transition:background .38s,transform .38s}
.zw93 .zw93-progress-petal:nth-child(even){transform:rotate(19deg)}
.zw93 .zw93-progress-petal.is-filled{background:#e39caa;opacity:1;transform:rotate(35deg) scale(1.11);box-shadow:0 1px 3px #bd7f85}
.zw93 .zw93-board{
 position:absolute;left:5%;top:19.5%;width:90%;height:58%;
 border-radius:25px;overflow:hidden;z-index:9;
 filter:drop-shadow(0 5px 3px rgba(88,68,46,.28));
 touch-action:none!important;overscroll-behavior:none!important;
}
.zw93 .zw93-paper{position:absolute;inset:0;width:100%;height:100%;object-fit:fill!important}
.zw93 .zw93-flecks{position:absolute;inset:0;width:100%;height:100%;opacity:.7;object-fit:fill!important}
.zw93 #zw93Canvas{position:absolute;inset:0;pointer-events:none;width:100%;height:100%;z-index:2;object-fit:fill}
.zw93 .zw93-friend{
 position:absolute!important;z-index:5;transform:translate(-50%,-50%);
 border-radius:50%!important;touch-action:none!important;
 transition:left .16s cubic-bezier(.22,.73,.4,1),top .16s cubic-bezier(.22,.73,.4,1),filter .18s ease;
 filter:drop-shadow(0 2px 2px #5a463c70);
}
.zw93 .zw93-friend img{width:100%;height:100%;animation:zw93-breathe 3.7s ease-in-out infinite}
.zw93 .zw93-friend.zw93-igor img{animation-delay:-1.2s}
.zw93 .zw93-friend.selected{
 filter:drop-shadow(0 0 6px #fff4ba) drop-shadow(0 2px 2px #694d3677)
}
.zw93 .zw93-friend.zw93-wiggle{animation:zw93-wiggle .4s ease-out}
.zw93 .zw93-friend.is-hugging{opacity:0!important;transition:opacity .5s}
.zw93 .zw93-hug{
 position:absolute;z-index:9;width:min(260px,65%);height:min(235px,56%);
 transform:translate(-50%,-50%) scale(.3);opacity:0;pointer-events:none;
 filter:drop-shadow(0 5px 3px #624c3d50);
}
.zw93 .zw93-hug img{width:100%;height:100%;object-fit:contain}
.zw93 .zw93-hug.is-visible{
 opacity:1;transform:translate(-50%,-50%) scale(1.15);
 transition:transform 1.1s cubic-bezier(.18,.75,.2,1),opacity .42s;
 animation:zw93-cuddle-pulse 1.4s ease-in-out 1.1s infinite;
}
.zw93 .zw93-effects{position:absolute;inset:0;z-index:25;pointer-events:none;overflow:hidden}
.zw93 .zw93-confetti{
 position:absolute;width:22px;height:26px;opacity:0;pointer-events:none;will-change:transform,opacity;
 animation:zw93-sparkle 3.5s cubic-bezier(.2,.44,.3,.94) forwards;
}
.zw93 .zw93-confetti.is-heart{width:30px;height:31px}
.zw93 .zw93-confetti.is-balloon{width:48px;height:99px;animation:zw93-float-up 4.5s ease-out forwards}
.zw93 .zw93-controls{
 position:absolute;z-index:15;left:3%;top:79%;width:94%;height:19.5%;
 display:grid;grid-template-columns:28% 39% 33%;
 gap:0;align-items:center;justify-items:center;
}
.zw93 .zw93-actors{width:100%;display:flex;justify-content:space-evenly;align-items:center;gap:1px}
.zw93 .zw93-pick{position:relative!important;flex:none!important;width:clamp(59px,18vw,76px)!important;
 height:clamp(59px,18vw,76px)!important;border-radius:50%!important;filter:drop-shadow(0 3px 2px #65493644)}
.zw93 .zw93-coin-bg{position:absolute;inset:0;width:100%;height:100%}
.zw93 .zw93-pick-img{position:absolute;inset:4%;width:92%;height:92%}
.zw93 .zw93-pick.is-selected{transform:scale(1.1);filter:drop-shadow(0 0 6px #fff4bd)}
.zw93 .zw93-directions{
 display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);
 justify-content:center;place-items:center;gap:1px;width:min(158px,100%);aspect-ratio:1;
}
.zw93 .zw93-direction,.zw93 .zw93-level,.zw93 .zw93-reset{
 position:relative!important;display:grid!important;place-items:center!important;
 border-radius:50%!important;filter:drop-shadow(0 2px 1px #6c563c45)
}
.zw93 .zw93-direction{width:clamp(44px,12vw,54px)!important;height:clamp(44px,12vw,54px)!important}
.zw93 .zw93-direction img,.zw93 .zw93-level img,.zw93 .zw93-reset img{width:100%;height:100%}
.zw93 .zw93-direction.zw93-n{grid-column:2;grid-row:1}
.zw93 .zw93-direction.zw93-w{grid-column:1;grid-row:2}
.zw93 .zw93-direction.zw93-e{grid-column:3;grid-row:2}
.zw93 .zw93-direction.zw93-s{grid-column:2;grid-row:3}
.zw93 .zw93-settings{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px}
.zw93 .zw93-levels{display:flex;width:100%;justify-content:center;align-items:center;gap:0}
.zw93 .zw93-level{width:clamp(38px,10vw,53px)!important;height:clamp(38px,10vw,53px)!important}
.zw93 .zw93-level.is-selected{transform:scale(1.14);filter:drop-shadow(0 0 5px #fffaac)}
.zw93 .zw93-reset{width:clamp(47px,13vw,61px)!important;height:clamp(47px,13vw,61px)!important}
.zw93 button:active:not(.zw93-friend){transform:scale(.9)}
.zw93 button:focus-visible{outline:4px solid #fff4c7!important;outline-offset:2px!important}
.zw93 .zw93-live{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@keyframes zw93-breathe{0%,100%{transform:translateY(0) rotate(-1.4deg)}47%{transform:translateY(-3px) rotate(1.5deg)}}
@keyframes zw93-wiggle{0%,100%{transform:translate(-50%,-50%) rotate(0)}30%{transform:translate(-50%,-50%) rotate(-7deg)}65%{transform:translate(-50%,-50%) rotate(6deg)}}
@keyframes zw93-cuddle-pulse{0%,100%{transform:translate(-50%,-50%) scale(1.13) rotate(-2deg)}50%{transform:translate(-50%,-50%) scale(1.19) rotate(2deg)}}
@keyframes zw93-sparkle{0%{opacity:0;transform:translate(0,0) scale(.3)}17%{opacity:1}72%{opacity:1}100%{opacity:0;transform:translate(var(--dx),var(--dy)) rotate(var(--turn)) scale(.85)}}
@keyframes zw93-float-up{0%{opacity:0;transform:translate(0,10px) scale(.55)}16%{opacity:1}78%{opacity:1}100%{opacity:0;transform:translate(var(--dx),calc(var(--dy) - 70px)) rotate(8deg) scale(1.04)}}
@media(orientation:landscape) and (max-height:650px){
 #app .zw93.main-content{background-image:url('/storybook-games-v91/world-maze-landscape.webp')!important}
 .zw93 .zw93-title{left:65%;top:1%;width:32%;height:17%}
 .zw93 .zw93-progress{left:64%;top:19%;width:34%;height:15%}
 .zw93 .zw93-progress-petal{width:clamp(7px,1.8vw,12px);height:clamp(7px,1.8vw,12px)}
 .zw93 .zw93-board{left:2%;top:10%;width:60%;height:86%}
 .zw93 .zw93-controls{left:64%;top:35%;width:34%;height:63%;
   display:grid;grid-template-columns:1fr;grid-template-rows:30% 35% 35%;gap:0}
 .zw93 .zw93-actors{width:85%;max-width:250px;gap:22px}
 .zw93 .zw93-pick{width:clamp(49px,15vh,70px)!important;height:clamp(49px,15vh,70px)!important}
 .zw93 .zw93-directions{width:100%;height:100%;max-width:280px;aspect-ratio:auto;
   display:flex;align-items:center;justify-content:center;gap:1px}
 .zw93 .zw93-direction{width:clamp(45px,15vh,61px)!important;height:clamp(45px,15vh,61px)!important}
 .zw93 .zw93-settings{flex-direction:row;gap:3px}
 .zw93 .zw93-level{width:clamp(43px,14vh,56px)!important;height:clamp(43px,14vh,56px)!important}
 .zw93 .zw93-reset{width:clamp(43px,14vh,56px)!important;height:clamp(43px,14vh,56px)!important}
 .zw93 .zw93-hug{width:min(245px,55%);height:min(218px,67%)}
}
@media(max-width:355px) and (orientation:portrait){
 .zw93 .zw93-board{left:2%;width:96%;top:20%;height:57%}
 .zw93 .zw93-controls{left:1%;width:98%;grid-template-columns:30% 37% 33%}
 .zw93 .zw93-directions{width:min(143px,100%)}
 .zw93 .zw93-direction{width:42px!important;height:42px!important}
 .zw93 .zw93-level{width:34px!important;height:34px!important}
 .zw93 .zw93-pick{width:54px!important;height:54px!important}
}
@media(prefers-reduced-motion:reduce){
 .zw93 .zw93-friend img{animation-duration:8s}
 .zw93 .zw93-confetti{animation-duration:5s}
 .zw93 .zw93-confetti.is-balloon{animation-duration:6s}
}

/* V93 touch target fixes: no actor-selection/directional-pad overlap on mobile. */
@media(orientation:portrait){
 .zw93 .zw93-actors{flex-direction:column;justify-content:center;align-items:center;height:100%;gap:5px}
 .zw93 .zw93-pick{width:clamp(52px,16vw,69px)!important;height:clamp(52px,16vw,69px)!important}
 .zw93 .zw93-directions{margin-left:7px}
}
@media(orientation:landscape) and (max-height:650px){
 .zw93 .zw93-actors{flex-direction:row;height:100%}
}
@media(max-width:355px) and (orientation:portrait){
 .zw93 .zw93-controls{grid-template-columns:25% 40% 35%}
 .zw93 .zw93-actors{gap:3px}
 .zw93 .zw93-pick{width:49px!important;height:49px!important}
 .zw93 .zw93-directions{
  width:100%;height:100%;margin:0;aspect-ratio:auto;
  grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr);gap:2px;
 }
 .zw93 .zw93-direction{width:46px!important;height:46px!important}
 .zw93 .zw93-direction.zw93-n{grid-column:1;grid-row:1}
 .zw93 .zw93-direction.zw93-e{grid-column:2;grid-row:1}
 .zw93 .zw93-direction.zw93-w{grid-column:1;grid-row:2}
 .zw93 .zw93-direction.zw93-s{grid-column:2;grid-row:2}
 .zw93 .zw93-level{width:38px!important;height:38px!important;margin-left:-3px!important}
 .zw93 .zw93-settings{gap:4px}
 .zw93 .zw93-reset{width:47px!important;height:47px!important}
}


/* source: auto-maze-v103/maze-v103.css */
/* Handpainted labyrinth selection and the second maze variant, Version 103 */
#app .zw103-hub.main-content{
 position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
 overflow:hidden!important;isolation:isolate!important;
 background:#aed2a0 url('/storybook-games-v91/world-maze-portrait.webp') center /100% 100% no-repeat!important;
}
#app .zw103-hub-heading{
 position:absolute;left:13%;right:13%;top:12%;z-index:2;
 text-align:center;font-family:'Segoe Print','Comic Sans MS',cursive;
 font-size:clamp(21px,5.7vw,38px);font-weight:900;line-height:1.2;
 color:#795944;text-shadow:2px 2px #fff3cf,0 3px 2px #6a594f40;
}
#app .zw103-hub-heart{position:absolute;left:36%;top:22%;width:28%;height:16%;display:flex;justify-content:center;align-items:center;pointer-events:none}
#app .zw103-hub-heart img{width:50%;height:100%;object-fit:contain;filter:drop-shadow(1px 2px 1px #8e6b5a55)}
#app .zw103-hub-heart img:first-child{animation:zw103-hub-wave 5.4s ease-in-out infinite}
#app .zw103-hub-heart img:last-child{animation:zw103-hub-wave 5.4s ease-in-out -2.7s infinite}
#app .zw103-hub-options{
 position:absolute;top:41%;left:7%;width:86%;height:47%;z-index:5;
 display:grid;grid-template-columns:1fr 1fr;gap:clamp(5px,3vw,30px);
 align-items:center;justify-items:center;
}
#app .zw103-hub .zw103-option{
 width:100%;height:100%;min-width:0;max-width:275px;
 display:flex;flex-direction:column;align-items:center;justify-content:center;
 border:0!important;border-radius:40px!important;background:none!important;
 padding:0!important;box-shadow:none!important;appearance:none!important;
 -webkit-tap-highlight-color:transparent;touch-action:manipulation!important;
 cursor:pointer;transition:transform 240ms ease-out;
}
#app .zw103-option img{display:block;width:100%;height:min(29dvh,220px);object-fit:contain;filter:drop-shadow(0 4px 3px #70573b49);pointer-events:none}
#app .zw103-option span{
 display:block;text-align:center;color:#715840;text-shadow:1px 1px #ffedc8;
 font:bold clamp(13px,3.1vw,22px)/1.2 'Segoe Print','Comic Sans MS',cursive;
 margin-top:-2px;pointer-events:none;
}
#app .zw103-option:active{transform:scale(.93)}
#app .zw103-option:focus-visible{outline:4px solid #fff4be!important;outline-offset:2px}
#app .zw103-hub-flowers{position:absolute;left:7%;right:7%;bottom:5%;height:6%;pointer-events:none;
 background:url('/storybook-games-v91/world-maze-portrait.webp') center 90% / cover no-repeat;mask-image:linear-gradient(transparent,#000)}
/* Automotive labyrinth uses the very same crayon hedge and sandy-path rendering
   and exactly the same responsive board geometry as the cuddling game. */
#app .zw103.zw93.main-content{background-image:url('/storybook-games-v91/world-maze-portrait.webp')!important}
#app .zw103 .zw103-title{
 left:21%!important;top:1.5%!important;width:73%!important;height:9%!important;
 text-align:center;display:grid;place-items:center;
 font:900 clamp(19px,6vw,33px)/1.1 'Segoe Print','Comic Sans MS',cursive;
 color:#795846;text-shadow:2px 2px #fff1c8,0 2px 2px #71574755;
}
#app .zw103 .zw103-progress .zw93-progress-char{
 width:14%;max-width:58px;object-fit:contain;filter:drop-shadow(0 2px 1px #795c4155)
}
#app .zw103 .zw103-car{
 overflow:visible!important;border-radius:50%!important;
 filter:drop-shadow(0 2px 2px #684e3966);
}
#app .zw103 .zw103-car .zw103-rotator{
 display:block;width:100%;height:100%;
 transform:rotate(var(--car-angle,0deg));transform-origin:center;
 transition:transform .23s cubic-bezier(.19,.67,.34,1);
}
#app .zw103 .zw103-car img{
 width:100%;height:100%;object-fit:contain;
 animation:zw103-idle-sway 4s ease-in-out infinite;
}
#app .zw103 .zw103-car.zw103-rolling img{
 animation:zw103-auto-bob 500ms ease-in-out infinite;
}
#app .zw103 .zw103-car .zw103-wheel{
 position:absolute;top:22%;width:9%;height:56%;
 border-radius:8px;background:repeating-linear-gradient(0deg,#635f57 0 5px,#888278 5px 8px);
 pointer-events:none;opacity:.55;animation-play-state:paused;
}
#app .zw103 .zw103-car .zw103-wheel-front{left:15%}
#app .zw103 .zw103-car .zw103-wheel-back{right:15%}
#app .zw103 .zw103-car.zw103-rolling .zw103-wheel{
 animation:zw103-tire-rolling .38s linear infinite;
}
#app .zw103 .zw103-meet{
 display:flex;justify-content:center;align-items:center;gap:3px;
 width:min(197px,53%);height:min(178px,46%);
}
#app .zw103 .zw103-meet-car{width:47%;height:100%;display:grid;place-items:center}
#app .zw103 .zw103-meet-car img{width:100%;height:80%;object-fit:contain}
#app .zw103 .zw103-meet.is-visible .zw103-meet-left img{animation:zw103-two-cars-left 2200ms cubic-bezier(.16,.8,.22,1) both}
#app .zw103 .zw103-meet.is-visible .zw103-meet-right img{animation:zw103-two-cars-right 2200ms cubic-bezier(.16,.8,.22,1) both}
#app .zw103 .zw103-meet-heart{
 position:absolute;left:42%;top:5%;width:17%;height:22%;
 animation:zw103-heart-up 2300ms ease-in-out 350ms infinite;pointer-events:none;
}
#app .zw103 .zw103-meet-heart img{width:100%;height:100%;object-fit:contain}
@keyframes zw103-hub-wave{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-5px) rotate(3deg)}}
@keyframes zw103-idle-sway{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-2px) rotate(2deg)}}
@keyframes zw103-auto-bob{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-3px) rotate(2deg)}}
@keyframes zw103-tire-rolling{to{background-position-y:26px}}
@keyframes zw103-two-cars-left{from{transform:translateX(-70px) rotate(-22deg)}65%{transform:translateX(6px) rotate(8deg)}to{transform:translateX(0) rotate(-4deg)}}
@keyframes zw103-two-cars-right{from{transform:translateX(70px) rotate(22deg)}65%{transform:translateX(-6px) rotate(-8deg)}to{transform:translateX(0) rotate(4deg)}}
@keyframes zw103-heart-up{0%,100%{transform:translateY(0) scale(.86)}55%{transform:translateY(-15px) scale(1.15)}}
@media(orientation:landscape) and (max-height:650px){
 #app .zw103-hub.main-content,#app .zw103.zw93.main-content{background-image:url('/storybook-games-v91/world-maze-landscape.webp')!important}
 #app .zw103-hub-heading{left:64%;right:4%;top:8%;font-size:clamp(19px,5vh,31px)}
 #app .zw103-hub-heart{left:68%;top:26%;width:24%;height:22%}
 #app .zw103-hub-options{left:2%;top:10%;width:59%;height:84%;gap:0}
 #app .zw103-hub .zw103-option{height:100%}
 #app .zw103-option img{height:clamp(130px,52vh,265px)}
 #app .zw103-option span{font-size:clamp(12px,3.5vh,21px)}
 #app .zw103 .zw103-title{left:65%!important;top:3%!important;width:32%!important;height:14%!important;font-size:clamp(17px,5vh,29px)}
 #app .zw103 .zw103-meet{width:min(162px,43%);height:min(138px,42%)}
}
@media(max-width:355px) and (orientation:portrait){
 #app .zw103-hub-heading{top:14%;font-size:22px}
 #app .zw103-hub-options{left:4%;width:92%;top:39%;height:44%;gap:0}
 #app .zw103-option img{height:190px}
 #app .zw103-option span{font-size:12px}
}
@media(prefers-reduced-motion:reduce){
 #app .zw103 *{animation-duration:3s!important}
 #app .zw103-option{transition:none}
 #app .zw103-hub-heart img{animation:none}
}


/* source: garden-games-v94.css */
/* Kuschel-Labyrinth V94: difficulty first; intuitive finger-only garden maze. */
#app .zw93.main-content{
 background-image:url('/garden-games-v94/garden-portrait.webp')!important;
}
.zw93 .zw94-level-bar{
 position:absolute;z-index:15;top:10.4%;left:26%;width:49%;height:8.2%;
 display:flex;justify-content:center;align-items:center;gap:clamp(14px,5vw,27px);
}
.zw93 .zw94-level-bar .zw93-level{width:clamp(54px,17vw,73px)!important;height:clamp(54px,17vw,73px)!important;min-width:50px!important;min-height:50px!important}
.zw93 .zw93-progress{top:19%;left:20%;width:66%;height:6.1%}
.zw93 .zw93-board{
 top:26%;height:62.7%;left:4.5%;width:91%;
 border:6px solid #9c785a;border-radius:30px;
 background:#a0c18c;box-shadow:inset 0 0 0 4px #e9d1a8;
}
.zw93 .zw93-paper,.zw93 .zw93-flecks{opacity:0;visibility:hidden}
.zw93 .zw94-restart{position:absolute;top:89%;left:39%;height:10.2%;width:22%;display:flex;justify-content:center;align-items:center;z-index:12}
.zw93 .zw94-restart .zw93-reset{width:clamp(61px,19vw,82px)!important;height:clamp(61px,19vw,82px)!important}
.zw93 .zw93-friend{z-index:7}
@media (orientation:landscape) and (max-height:650px){
 #app .zw93.main-content{background-image:url('/garden-games-v94/garden-landscape.webp')!important}
 .zw93 .zw93-title{left:63.5%;top:1.5%;width:35%;height:17%}
 .zw93 .zw94-level-bar{left:65%;top:23%;width:33%;height:19%;gap:clamp(9px,2vw,24px)}
 .zw93 .zw94-level-bar .zw93-level{width:clamp(47px,15vh,73px)!important;height:clamp(47px,15vh,73px)!important}
 .zw93 .zw93-progress{left:64%;top:47%;width:34%;height:13%}
 .zw93 .zw93-board{left:2%;top:8%;width:59%;height:88%;border-width:5px;border-radius:26px}
 .zw93 .zw94-restart{left:70%;top:65%;width:22%;height:24%}
 .zw93 .zw94-restart .zw93-reset{width:clamp(57px,18vh,75px)!important;height:clamp(57px,18vh,75px)!important}
}
@media(max-width:355px) and (orientation:portrait){
 .zw93 .zw94-level-bar{left:23%;width:54%;top:9.8%;gap:12px}
 .zw93 .zw94-level-bar .zw93-level{width:52px!important;height:52px!important}
 .zw93 .zw93-progress{top:19%;left:19%;width:69%;height:6.1%}
 .zw93 .zw93-board{top:26%;height:62%;left:2%;width:96%}
 .zw93 .zw94-restart{top:89%;height:11%}
}

/* Zählwiese V94 – original painted-number circles and real finger-painted lines. */
#app .zw94-connect.main-content{
 position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
 overflow:hidden!important;isolation:isolate!important;
 background:#acd4a2 url('/garden-games-v94/garden-portrait.webp') center/100% 100% no-repeat!important;
 font-family:'Segoe Print','Chalkboard SE','Comic Sans MS',sans-serif!important;
}
.zw94-connect,.zw94-connect *{box-sizing:border-box}
.zw94-connect img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;user-select:none;-webkit-user-drag:none}
.zw94-connect button{
 background:none!important;border:0!important;appearance:none!important;-webkit-appearance:none!important;
 box-shadow:none!important;outline:0;margin:0!important;padding:0!important;
 cursor:pointer;-webkit-tap-highlight-color:transparent;
}
.zw94-connect button:focus-visible{outline:4px solid #fff6cc!important;outline-offset:3px!important}
.zw94-connect .zw94-title{
 position:absolute;z-index:6;left:18%;top:1%;width:76%;height:10%;filter:drop-shadow(0 3px 2px #654a3c3a)
}
.zw94-connect .zw94-progress{
 position:absolute;z-index:5;left:16%;top:11.8%;width:70%;height:8%;
 display:flex;align-items:center;justify-content:center;gap:6px;
 background:url('/storybook-games-v91/choice-board.webp') center/100% 100% no-repeat;
 filter:drop-shadow(0 3px 2px #6d523a39);
}
.zw94-connect .zw94-progress-picture{width:12%;height:83%;object-fit:contain}
.zw94-connect .zw94-steps{flex:1;display:flex;align-items:center;justify-content:center;gap:3px}
.zw94-connect .zw94-step{
 width:clamp(7px,2.4vw,15px);height:clamp(7px,2.4vw,15px);border-radius:50%;
 background:#eab2a3;border:2px solid #c58c75;box-shadow:0 1px 1px #fff4cb;
 transform:rotate(-7deg);transition:transform .36s,background .36s
}
.zw94-connect .zw94-step.filled{background:#a4cf98;border-color:#6f9e70;transform:scale(1.24) rotate(7deg)}
.zw94-connect .zw94-board{
 position:absolute;z-index:9;left:4%;top:20.5%;width:92%;height:54%;
 overflow:hidden;border-radius:26px;
 touch-action:none!important;overscroll-behavior:none;
 border:5px solid #9f7555;background:#f3dfb5;
 box-shadow:inset 0 0 0 3px #fff2d5,0 5px 3px #5948323d;
}
.zw94-connect .zw94-paper{position:absolute;inset:0;object-fit:fill!important;width:100%;height:100%;opacity:.97}
.zw94-connect #zw94Draw{position:absolute;inset:0;z-index:2;pointer-events:none;width:100%;height:100%}
.zw94-connect .zw94-number{
 position:absolute!important;z-index:4;display:flex;align-items:center;justify-content:center;
 width:clamp(43px,14vw,66px)!important;height:clamp(43px,14vw,66px)!important;
 transform:translate(-50%,-50%);border-radius:50%!important;
 touch-action:none!important;filter:drop-shadow(0 3px 2px #74533c4a);
 transition:filter .25s,scale .24s;
}
.zw94-connect .zw94-painted-circle{position:absolute;inset:0;width:100%;height:100%}
.zw94-connect .zw94-digit{
 position:relative;z-index:2;color:#503c32;line-height:1.1;
 font-family:'Segoe Print','Comic Sans MS',sans-serif;font-size:clamp(25px,8vw,39px);
 font-weight:900;letter-spacing:-.08em;text-shadow:1px 2px 1px #fff4d7,-1px -1px #8c694544;
 pointer-events:none;margin-right:.08em;
}
.zw94-connect .zw94-number.matched{filter:drop-shadow(0 0 7px #fff6bd) drop-shadow(0 2px 2px #684a3f56);animation:zw94-match .7s ease-in-out}
.zw94-connect .zw94-number.is-cheering{animation:zw94-match 1.1s ease-in-out infinite}
.zw94-connect .zw94-palette{
 position:absolute;z-index:15;left:4%;top:76.8%;width:83%;height:21%;
 display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));
 justify-items:center;align-items:center;gap:0;
}
.zw94-connect .zw94-pot{
 position:relative!important;display:block!important;
 width:clamp(49px,15vw,78px)!important;height:clamp(49px,15vw,78px)!important;
 min-width:44px!important;min-height:44px!important;border-radius:45%!important;
 touch-action:manipulation!important;
 filter:drop-shadow(0 2px 2px #58473644);
 transition:filter .22s,transform .22s!important;
}
.zw94-connect .zw94-pot.active{transform:translateY(-5px) scale(1.14)!important;filter:drop-shadow(0 0 6px #fff6cb) drop-shadow(0 3px 2px #5e433a5c)}
.zw94-connect .zw94-pot:active{transform:scale(.96)!important}
.zw94-connect .zw94-erase{
 position:absolute!important;z-index:18;right:1%;bottom:4%;
 width:clamp(58px,17vw,77px)!important;height:clamp(58px,17vw,77px)!important;
 border-radius:50%!important;filter:drop-shadow(0 3px 2px #715b4d47)
}
.zw94-connect .zw94-hint{
 position:absolute;left:18%;bottom:0;width:64%;height:2px;overflow:hidden;
 clip-path:inset(50%);
}
.zw94-connect .zw94-board.zw94-nope{animation:zw94-try .42s ease}
@keyframes zw94-match{0%,100%{transform:translate(-50%,-50%) rotate(0)}40%{transform:translate(-50%,-60%) rotate(-7deg)}72%{transform:translate(-50%,-50%) rotate(6deg)}}
@keyframes zw94-try{0%,100%{filter:none}45%{filter:sepia(.36)}}
@media(orientation:landscape) and (max-height:650px){
 #app .zw94-connect.main-content{background-image:url('/garden-games-v94/garden-landscape.webp')!important}
 .zw94-connect .zw94-title{left:63%;top:1.5%;width:35%;height:17%}
 .zw94-connect .zw94-progress{left:64%;top:22%;width:34%;height:15%}
 .zw94-connect .zw94-progress-picture{width:12%}
 .zw94-connect .zw94-step{width:clamp(6px,1.2vw,10px);height:clamp(6px,1.2vw,10px)}
 .zw94-connect .zw94-board{left:2%;top:7%;width:60%;height:89%;border-width:4px}
 .zw94-connect .zw94-palette{left:64%;top:40%;width:34%;height:43%}
 .zw94-connect .zw94-pot{width:clamp(44px,14vh,65px)!important;height:clamp(44px,14vh,65px)!important}
 .zw94-connect .zw94-number{width:clamp(43px,13vh,63px)!important;height:clamp(43px,13vh,63px)!important}
 .zw94-connect .zw94-digit{font-size:clamp(25px,8vh,37px)}
 .zw94-connect .zw94-erase{right:14%;bottom:1%;width:clamp(47px,14vh,62px)!important;height:clamp(47px,14vh,62px)!important}
}
@media(max-width:355px) and (orientation:portrait){
 .zw94-connect .zw94-board{left:2%;width:96%;top:21%;height:53%}
 .zw94-connect .zw94-title{left:19%;width:77%}
 .zw94-connect .zw94-palette{top:76%;left:3%;width:82%;height:22%}
 .zw94-connect .zw94-pot{width:47px!important;height:47px!important}
 .zw94-connect .zw94-erase{width:49px!important;height:49px!important;right:3%;bottom:7%}
 .zw94-connect .zw94-number{width:clamp(41px,14vw,52px)!important;height:clamp(41px,14vw,52px)!important}
 .zw94-connect .zw94-digit{font-size:clamp(25px,8vw,33px)}
}


/* source: road-hunt-v95.css */
/* Zählwiese v95: the truly gridded 6×9 storybook driving carpet, restart for every game. */
#app #zw95Restart{
 position:absolute!important;right:max(14px,env(safe-area-inset-right,0px))!important;
 top:max(9px,env(safe-area-inset-top,0px))!important;
 width:clamp(54px,15vw,66px)!important;height:clamp(54px,15vw,66px)!important;
 padding:0!important;margin:0!important;z-index:160!important;
 display:grid!important;place-items:center!important;
 background:transparent!important;border:0!important;box-shadow:none!important;
 border-radius:50%!important;cursor:pointer;touch-action:manipulation!important;
 filter:drop-shadow(0 3px 2px #604b3660);
}
#app #zw95Restart img{display:block!important;width:100%!important;height:100%!important;object-fit:contain;pointer-events:none!important}
#app #zw95Restart:active{transform:scale(.92)}
#app #zw95Restart:focus-visible{outline:4px solid #fff3c2!important;outline-offset:3px}
#app .zw93 .zw94-restart{display:none!important}
#app .zw91 .zw91-small-tools:has([data-tool="reset"]){display:none!important}
#app .zw94-connect .zw94-erase{display:none!important}
#app .zw95-road.main-content{
 position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;
 margin:0!important;padding:0!important;overflow:hidden!important;isolation:isolate!important;box-sizing:border-box!important;
 background:#bad7a3 url('/storybook-games-v91/world-drive-portrait.webp') center/100% 100% no-repeat!important;
}
.zw95-road *{box-sizing:border-box}
.zw95-road img{display:block;max-width:100%;object-fit:contain;pointer-events:none;user-select:none;-webkit-user-drag:none}
.zw95-road .zw95-title{
 position:absolute;z-index:8;left:17%;top:1%;width:69%;height:10%;
 filter:drop-shadow(0 3px 2px #6f523b50);pointer-events:none
}
.zw95-road .zw95-title img{width:100%;height:100%}
.zw95-road .zw95-goal-card{
 position:absolute;z-index:9;top:12%;left:23%;width:54%;height:12%;
 display:flex;align-items:center;justify-content:center;overflow:visible;
 filter:drop-shadow(0 3px 2px #66503e50)
}
.zw95-road .zw95-goal-paper{position:absolute;inset:0;width:100%;height:100%;object-fit:fill}
.zw95-road .zw95-goal-crop{
 position:relative;z-index:2;width:auto;height:89%;aspect-ratio:1;max-width:65%;
 border:3px solid #fff2d0;border-radius:16px;object-fit:cover;
 filter:drop-shadow(0 1px 2px #714d364a)
}
.zw95-road .zw95-goal-magnify{
 position:absolute;right:16%;top:18%;width:11%;aspect-ratio:1;border-radius:50%;
 border:4px solid #af8b65;box-shadow:0 2px 1px #755a45a0;
}
.zw95-road .zw95-goal-magnify:after{content:'';position:absolute;left:88%;top:89%;
 width:55%;height:5px;background:#ad8965;transform:rotate(46deg);border-radius:5px}
.zw95-road .zw95-map{
 position:absolute;z-index:12;top:24.8%;left:50%;transform:translateX(-50%);
 height:min(63%,calc(92vw * 1.5));aspect-ratio:2/3;width:auto;max-width:93%;
 border-radius:15px;overflow:hidden;touch-action:none!important;overscroll-behavior:contain;
 border:6px solid #b68e69;background:#9ebe9d;
 box-shadow:0 0 0 3px #f1d8aa,0 5px 5px #6b503c6b;
}
.zw95-road .zw95-map-art{position:absolute;inset:0;width:100%;height:100%;object-fit:fill}
.zw95-road .zw95-car{
 position:absolute;z-index:15;width:13%;height:8.6%;transform:translate(-50%,-50%);
 pointer-events:none!important;filter:drop-shadow(0 3px 2px #534a396f);
 transition:left .1s linear,top .1s linear;
}
.zw95-road .zw95-car img{width:100%;height:100%;object-fit:contain;animation:zw95-car-idle 4.5s ease-in-out infinite}
.zw95-road .zw95-car.zw95-car-happy img{animation:zw95-car-celebrate 1.4s ease-in-out infinite}
.zw95-road .zw95-success{
 position:absolute;z-index:14;left:50%;top:50%;width:25%;height:19%;
 transform:translate(-50%,-50%) scale(.1);opacity:0;pointer-events:none
}
.zw95-road .zw95-success.is-visible{transform:translate(-50%,-50%) scale(1.18);
 opacity:1;transition:transform 1.1s cubic-bezier(.2,.8,.2,1),opacity .4s}
.zw95-road .zw95-success img{width:100%;height:100%}
.zw95-road .zw95-progress{
 position:absolute;z-index:10;bottom:2%;left:13%;width:74%;height:7%;
 display:flex;align-items:center;gap:4px;padding:2px 10px;
 border-radius:28px;background:rgba(255,232,191,.88);
 border:4px solid #a98162;box-shadow:0 3px 2px #71503d33
}
.zw95-road .zw95-progress>img{width:15%;height:95%}
.zw95-road .zw95-progress>img:last-child{border-radius:9px}
.zw95-road .zw95-progress-track{flex:1;height:17px;border-radius:20px;overflow:hidden;
 background:#dbb38c;border:2px solid #8d785f}
.zw95-road .zw95-progress-fill{height:100%;width:0;background:repeating-linear-gradient(135deg,#9bc49b 0 10px,#b8dba8 10px 20px);
 border-radius:20px;transition:width .27s ease-out}
.zw95-road .zw95-caption{position:absolute;left:9%;bottom:0%;width:82%;height:1px;overflow:hidden}
@keyframes zw95-car-idle{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-3px) rotate(1deg)}}
@keyframes zw95-car-celebrate{0%,100%{transform:translateY(0) rotate(-2deg)}45%{transform:translateY(-9px) rotate(7deg)}75%{transform:translateY(-2px) rotate(-4deg)}}
@media(orientation:landscape) and (max-height:650px){
 #app .zw95-road.main-content{background-image:url('/storybook-games-v91/world-drive-landscape.webp')!important}
 .zw95-road .zw95-title{left:63%;top:1%;width:30%;height:16%}
 .zw95-road .zw95-goal-card{left:67%;top:21%;width:27%;height:37%}
 .zw95-road .zw95-goal-crop{height:85%;max-width:70%}
 .zw95-road .zw95-map{left:25%;top:4%;height:90%;max-height:90%;width:auto;aspect-ratio:2/3}
 .zw95-road .zw95-progress{left:66%;top:67%;bottom:auto;width:28%;height:14%;padding:0 5px}
 .zw95-road .zw95-progress-track{height:10px}
}
@media(max-width:355px) and (orientation:portrait){
 .zw95-road .zw95-title{left:17%;top:1%;width:72%}
 .zw95-road .zw95-goal-card{top:12%;height:11%;left:24%;width:55%}
 .zw95-road .zw95-map{top:25%;height:min(61%,calc(91vw * 1.5))}
 .zw95-road .zw95-progress{bottom:1.5%;height:8%}
}
/* Hunting numbers 11, 12, ... without crowding 10 child-sized touch targets */
#app .zw95-hunt.main-content{background-image:url('/storybook-games-v91/world-hunt-portrait.webp')!important}
.zw95-hunt .zw95-hunt-goal{
 flex:none;display:flex;align-items:center;justify-content:center;
 max-width:31%;width:70px;height:78%;object-fit:contain;
 font:900 clamp(37px,11vw,60px)/1 'Segoe Print','Comic Sans MS',sans-serif;
 color:#765647;text-shadow:2px 2px #fff5cf
}
.zw95-hunt .zw95-hunt-stage{top:32%;height:64%;touch-action:manipulation}
.zw95-hunt .zw95-hunt-bubble-number{
 position:absolute!important;z-index:3;left:25%;top:20%;width:51%;height:58%;
 display:flex;align-items:center;justify-content:center;
 color:#765c54;font:900 clamp(25px,8vw,43px)/1 'Segoe Print','Comic Sans MS',sans-serif;
 text-shadow:1px 1px #fff6dc;white-space:nowrap
}
.zw95-hunt img.zw95-hunt-bubble-number{object-fit:contain}
.zw95-hunt .zw95-hunt-bubble.is-burst{animation:zw91-bubble-pop .45s ease-out forwards!important}
.zw95-hunt .zw95-hunt-sparks{position:absolute;z-index:95;inset:0;overflow:hidden;pointer-events:none}
.zw95-hunt .zw95-hunt-mini{position:absolute;width:27px;height:28px;object-fit:contain;pointer-events:none;
 opacity:0;animation:zw95-mini-spark 1.05s ease-out forwards;will-change:transform,opacity}
.zw95-hunt .zw95-hunt-mini.is-heart{width:30px;height:30px}
.zw95-hunt .zw95-hunt-mini.is-balloon{width:42px;height:84px;animation-duration:1.6s}
.zw95-hunt .zw95-hunt-state{position:absolute;left:12%;bottom:1%;width:76%;height:1px;overflow:hidden}
@keyframes zw95-mini-spark{0%{opacity:0;transform:translate(-50%,-50%) scale(.45)}
 17%{opacity:1}75%{opacity:1}100%{opacity:0;transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) rotate(var(--r)) scale(.75)}}
@media(orientation:landscape) and (max-height:650px){
 #app .zw95-hunt.main-content{background-image:url('/storybook-games-v91/world-hunt-landscape.webp')!important}
 .zw95-hunt .zw95-hunt-goal{font-size:clamp(31px,10vh,55px)}
 .zw95-hunt .zw95-hunt-bubble-number{font-size:clamp(23px,7vh,38px)}
}
@media(prefers-reduced-motion:reduce){
 .zw95-road .zw95-car img{animation-duration:9s}
 .zw95-hunt .zw95-hunt-mini{animation-duration:1.4s}
}

/* The original full-width header must not cover the top edge of the carpet in landscape. */
#app:has(.zw95-road) .app-header,#app:has(.zw95-road) .header-tools{pointer-events:none!important}
#app:has(.zw95-road) #homeBtn{pointer-events:auto!important}


/* source: polish-v96.css */

/* V96 — polished visual target preview and calm child-friendly feedback */
@media (orientation:portrait) {
  #app .zw95-road .zw95-goal-card {
    left:21%;width:58%;top:11.1%;height:13.1%;
  }
  #app .zw95-road .zw95-goal-crop{
    height:95%;max-width:78%;
  }
}
@media (orientation:landscape) and (max-height:650px){
  #app .zw95-road .zw95-goal-crop{height:92%;max-width:78%}
}
#app .zw95-road .zw95-goal-crop{
  border-color:#f8edc8;
  box-shadow:0 1px 1px rgba(90,62,43,.25);
  animation:zw96-goal-pulse 5.2s ease-in-out infinite;
}
#app .zw95-road .zw95-car img{
  animation-duration:5.4s;
}
@keyframes zw96-goal-pulse {
  0%,100%{transform:scale(1)}
  50%{transform:scale(1.035)}
}
/* A small handmade confetti burst after EVERY connected number pair. */
#app .zw94-connect .zw96-pair-spark{
  position:absolute;z-index:15;left:0;top:0;
  width:24px;height:27px;object-fit:contain;pointer-events:none;
  transform:translate(-50%,-50%) scale(.55);
  will-change:transform,opacity;
  opacity:0;animation:zw96-pair-burst 1.3s cubic-bezier(.23,.62,.32,1) forwards;
}
@keyframes zw96-pair-burst{
  0%{opacity:0;transform:translate(-50%,-50%) scale(.4)}
  18%{opacity:1}
  78%{opacity:1}
  100%{opacity:0;transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) rotate(var(--angle)) scale(.85)}
}
@media (prefers-reduced-motion:reduce){
  #app .zw95-road .zw95-goal-crop{animation:none}
  #app .zw94-connect .zw96-pair-spark{animation-duration:1.8s}
}

/* Instant illustrated carpet preview while the full artwork decodes. */
#app .zw95-road .zw95-map{background-image:url("data:image/webp;base64,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")!important;background-size:100% 100%!important;background-repeat:no-repeat!important}


/* source: motion-polish-v97.css */
/* Zählwiese V97 – restrained, handpainted motion language for all nine games. */
#zw97MotionLayer{position:fixed;inset:0;width:100vw;height:100dvh;z-index:450;pointer-events:none;overflow:hidden;contain:layout style paint}
#zw97MotionLayer .zw97-tap-ring{
 position:absolute;width:44px;height:44px;border:3px solid rgba(254,241,201,.93);border-radius:53% 47% 48% 52%;
 box-shadow:0 0 0 2px rgba(169,130,91,.40),inset 0 0 0 2px rgba(244,202,152,.40);
 transform:translate(-50%,-50%) scale(.32);opacity:0;pointer-events:none;
 animation:zw97-press-paint 700ms cubic-bezier(.12,.47,.27,1) both
}
@keyframes zw97-press-paint{
 0%{transform:translate(-50%,-50%) scale(.32) rotate(-8deg);opacity:0}
 20%{opacity:.83}
 100%{transform:translate(-50%,-50%) scale(1.22) rotate(9deg);opacity:0}
}
#zw97MotionLayer .zw97-mini-spark{
 position:absolute;width:clamp(13px,3.5vw,23px);height:clamp(13px,3.5vw,23px);
 pointer-events:none;opacity:0;object-fit:contain;will-change:transform;
 animation:zw97-mini-flight 1220ms cubic-bezier(.18,.59,.38,1) var(--delay,0ms) both
}
@keyframes zw97-mini-flight{
 0%{opacity:0;transform:translate(-50%,-50%) scale(.28) rotate(0deg)}
 18%{opacity:1}
 74%{opacity:1}
 100%{opacity:0;transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) rotate(var(--rot)) scale(.74)}
}
.main-content.zw97-enter .zw91-title,
.main-content.zw97-enter .zw94-title,
.main-content.zw97-enter .zw95-title,
.main-content.zw97-enter .zw93-title,
.main-content.zw97-enter .zw85-head,
.main-content.zw97-enter .zw-book-art{
 animation:zw97-gentle-entrance 680ms cubic-bezier(.16,.85,.31,1) both;
}
@keyframes zw97-gentle-entrance{
 from{opacity:.36;filter:brightness(1.05)}
 to{opacity:1;filter:brightness(1)}
}
/* The previously validated finger poses must remain motion-correct.
   They have an intentional !important entrance animation; softly animate their
   surrounding illustrated paper cards instead of changing finger anatomy. */
.main-content.zw-finger-book-v53:not(.zw-animal-book-v63) .zw-book-hand-card{
 animation:zw97-hand-card-ready 5.8s ease-in-out infinite;
}
@keyframes zw97-hand-card-ready{
 0%,100%{filter:brightness(1)}
 50%{filter:brightness(1.045)}
}
/* Fingers: tiny real-pencil hand bob, rather than a frozen illustration */
.main-content.zw-finger-book-v53:not(.zw-animal-book-v63) .zw-book-hand-card img.zw-fixed-hand{
 transform-origin:50% 87%;animation:zw97-hand-patient 6.1s ease-in-out infinite;
}
@keyframes zw97-hand-patient{
 0%,100%{transform:translate3d(0,0,0) rotate(-.45deg)}
 47%{transform:translate3d(0,-3px,0) rotate(1.1deg)}
}
/* Animal count: independently animated illustrated cards, with staggered rests. */
.main-content.zw-animal-book-v63 .zw-animal-panel{animation:zw97-animal-card-life 5.8s ease-in-out infinite}
.main-content.zw-animal-book-v63 .zw-animal-panel:nth-of-type(2){animation-delay:-2.4s}
@keyframes zw97-animal-card-life{
 0%,100%{filter:brightness(1)}
 48%{filter:brightness(1.055)}
}
/* The picnic's requests gently "ask" for food; food choices answer on touch. */
.main-content.zw85 .zw85-request-item img{animation:zw97-wish 5.7s ease-in-out infinite}
.main-content.zw85 .zw85-request-item:nth-child(2n) img{animation-delay:-2.1s}
@keyframes zw97-wish{0%,100%{transform:translate3d(0,0,0) rotate(-2deg)}52%{transform:translate3d(0,-3px,0) rotate(2deg)}}
.main-content.zw85 .zw85-option:active img{animation:zw97-nudge 460ms ease-out both}
@keyframes zw97-nudge{0%,100%{transform:scale(1)}45%{transform:scale(1.12) rotate(-6deg)}}
/* Feeding and baking: the requested objects react as the child works. */
.main-content.zw91-feeding .zw91-wish-unit:not(.is-given) img,
.main-content.zw91-cooking .zw91-wish-unit:not(.is-given) img{
 animation:zw97-wish 5.7s ease-in-out infinite
}
.main-content.zw91 .zw91-wish-unit:nth-child(2n) img{animation-delay:-1.8s}
.main-content.zw91 .zw91-wish-unit.is-given img{animation:zw97-earned 850ms ease-in-out both}
@keyframes zw97-earned{
 0%{transform:scale(.8) rotate(-6deg);opacity:.65}
 42%{transform:scale(1.12) rotate(5deg);opacity:1}
 100%{transform:scale(1) rotate(0)}
}
.main-content.zw91-feeding .zw91-ground-bowl{animation:zw97-bowl-idle 6.3s ease-in-out infinite}
@keyframes zw97-bowl-idle{
 0%,100%{filter:drop-shadow(0 2px 1px rgba(94,71,50,.3))}
 50%{filter:drop-shadow(0 5px 2px rgba(94,71,50,.20))}
}
.main-content.zw91-cooking .zw91-main-illustration:not(.is-working):not(.zw91-mixing){
 animation:zw97-cooking-idle 5.5s ease-in-out infinite;
}
.main-content.zw91-cooking .zw91-main-illustration.is-working,
.main-content.zw91-cooking .zw91-main-illustration.zw91-mixing{
 animation:zw97-cooking-work 1250ms ease-in-out infinite
}
@keyframes zw97-cooking-idle{
 0%,100%{transform:translateY(0) rotate(-1.2deg)}
 50%{transform:translateY(-4px) rotate(1.3deg)}
}
@keyframes zw97-cooking-work{
 0%,100%{transform:translateY(0) rotate(-5deg)}
 38%{transform:translateY(-5px) rotate(6deg)}
 72%{transform:translateY(1px) rotate(-3deg)}
}
/* Finger-painting: pots and finished number beads look alive but never move off the target. */
.main-content.zw94-connect .zw94-pot.active img{animation:zw97-paintpot-ready 4.2s ease-in-out infinite}
@keyframes zw97-paintpot-ready{
 0%,100%{transform:translate3d(0,0,0) rotate(-1.7deg)}
 50%{transform:translate3d(0,-3px,0) rotate(2deg)}
}
.main-content.zw94-connect .zw94-number.matched{filter:drop-shadow(0 0 7px rgba(255,246,190,.65))}
.main-content.zw94-connect .zw94-step.filled{animation:zw97-progress-cheer 920ms ease-out both}
@keyframes zw97-progress-cheer{
 0%{transform:scale(.72)}
 47%{transform:scale(1.34)}
 100%{transform:scale(1.13)}
}
/* Autoteppich: keep the car centered on the road with fluid movement. */
.main-content.zw95-road .zw95-car{transition:left 135ms linear,top 135ms linear;will-change:left,top}
.main-content.zw95-road .zw95-progress-fill{transition:width 490ms cubic-bezier(.23,.5,.24,1)}
.main-content.zw95-road.is-won .zw95-success,
.main-content.zw95-road .zw95-map.is-won .zw95-success{filter:drop-shadow(0 4px 5px rgba(97,70,44,.34))}
/* Numbers float independently. Correct answers burst; incorrect ones remain kind. */
.main-content.zw95-hunt .zw95-hunt-bubble>img:first-child{animation-duration:6.1s}
.main-content.zw95-hunt .zw95-hunt-bubble:nth-child(3n)>img:first-child{animation-delay:-2.8s}
.main-content.zw95-hunt .zw95-hunt-bubble:nth-child(4n)>img:first-child{animation-delay:-1.1s}
.main-content.zw95-hunt .zw95-hunt-goal{animation:zw97-number-focus 3.8s ease-in-out infinite}
@keyframes zw97-number-focus{0%,100%{transform:scale(1)}53%{transform:scale(1.045)}}
/* Moritz & Igor walk along the hedge, then cuddle for longer, softly. */
.main-content.zw93 .zw93-friend.zw97-stepping .zw93-friend-img{animation:zw97-little-step 450ms ease-in-out both!important}
@keyframes zw97-little-step{
 0%,100%{transform:translateY(0) rotate(-1deg)}
 35%{transform:translateY(-5px) rotate(5deg) scale(.96,1.03)}
 68%{transform:translateY(2px) rotate(-4deg) scale(1.035,.97)}
}
.main-content.zw93 .zw93-hug.is-visible img{animation:zw97-heart-hug 2600ms ease-in-out 1600ms infinite}
@keyframes zw97-heart-hug{0%,100%{transform:scale(1) rotate(-1deg)}48%{transform:scale(1.04) rotate(2deg)}}
.main-content.zw93 .zw93-progress-petal.is-filled{animation:zw97-progress-cheer 860ms ease-out both}
@media (orientation:landscape) and (max-height:650px){
 .main-content.zw95-road .zw95-car{transition-duration:110ms}
}
@media (prefers-reduced-motion:reduce){
 .main-content.zw-finger-book-v53 .zw-book-hand-card img.zw-fixed-hand,
 .main-content.zw85 .zw85-request-item img,
 .main-content.zw91 .zw91-wish-unit img,
 .main-content.zw91 .zw91-main-illustration,
 .main-content.zw91 .zw91-ground-bowl,
 .main-content.zw94-connect .zw94-pot.active img,
 .main-content.zw95-hunt .zw95-hunt-goal,
 .main-content.zw93 .zw93-hug.is-visible img{animation:none!important}
 #zw97MotionLayer .zw97-mini-spark,#zw97MotionLayer .zw97-tap-ring{animation-duration:1250ms}
 .main-content.zw97-enter *{animation-duration:500ms!important}
}


/* source: quality-v98.css */
/* Zählwiese V98 — visible illustrated games even before first network image loads. */
.zw80-home .zw80-grid::after{
 content:"";position:absolute!important;inset:clamp(9px,1.6dvh,18px) clamp(5px,1.5vw,15px);
 z-index:0!important;pointer-events:none!important;
 background:url("data:image/webp;base64,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") center/100% 100% no-repeat!important;
 opacity:.95;transition:opacity .25s ease;
}
.zw80-home .zw80-tile{z-index:1!important}
.zw80-home .zw80-grid.zw98-home-loaded::after{opacity:0}
@media (orientation:landscape) and (max-height:650px){
 .zw80-home .zw80-grid::after{inset:6px 3px!important}
}
@media (prefers-reduced-motion:reduce){
 .zw80-home .zw80-grid::after{transition:none!important}
}


/* source: zahlenmemory-v100/memory.css */
/* Zählwiese: textured, storybook hand-painted memory cards */
#app .memory100-page.main-content{box-sizing:border-box!important;position:relative!important;display:flex!important;flex-direction:column!important;align-items:center!important;gap:10px!important;overflow:auto!important;min-height:0!important;background:#f5edda!important;padding:14px clamp(9px,3vw,18px) max(14px,env(safe-area-inset-bottom,0px))!important}
.memory100-page h1{font:900 clamp(25px,7vw,37px)/1.1 "Chalkboard SE","Marker Felt",sans-serif!important;color:#8a6e59!important;margin:0!important}
.memory100-chooser{width:min(100%,420px);display:flex;align-items:center;justify-content:center;gap:clamp(13px,4vw,24px);margin-top:clamp(20px,6vh,55px)}
.memory100-chooser>button{display:flex;flex-direction:column;align-items:center;gap:10px;width:min(43%,170px);border:0!important;background:transparent!important;padding:4px!important;color:#8a6e59;font:900 20px "Chalkboard SE","Marker Felt",sans-serif}
.memory100-choice-ring{display:grid;place-items:center;width:clamp(117px,35vw,160px);height:clamp(117px,35vw,160px);max-width:100%;aspect-ratio:1;border:6px solid #c5a382;border-radius:50%;background:radial-gradient(circle,#fff4d9,#e7d0a7);box-shadow:inset 0 0 0 4px #fff9e9,0 5px #cdbb9e;overflow:hidden}
.memory100-choice-ring img{width:90%;height:93%;object-fit:contain}
.memory100-choice-digits{display:flex;justify-content:center;gap:6px;align-items:center;color:#a983bd;font:900 64px "Chalkboard SE","Marker Felt",sans-serif}
.memory100-choice-digits b:last-child{color:#82af8f;transform:translateY(10px) rotate(5deg)}
.memory100-greeting{display:flex;gap:24px;margin-top:30px}
.memory100-greeting span{width:68px;height:90px;border-radius:12px;border:5px solid #c6ab8b;background:repeating-linear-gradient(-25deg,#e8c9ac 0 6px,#f3dcc0 6px 14px);box-shadow:0 4px #ad957d}
.memory100-header{width:min(100%,430px);display:flex;align-items:center;justify-content:space-between;gap:14px;flex:0 0 auto}
.memory100-level{display:flex;align-items:center;gap:4px;min-width:70px;height:48px;border-radius:24px;border:2px dashed #c5ad8c;background:#fff4d5;padding:3px 8px;color:#94775c;font:900 18px "Chalkboard SE","Marker Felt",sans-serif}
.memory100-level img{height:43px;width:43px;object-fit:contain}.memory100-level b{font-size:28px;color:#8ea785}
.memory100-grid{width:min(100%,430px);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:auto;gap:clamp(6px,1.8vw,10px);align-items:start;justify-items:stretch;flex:0 0 auto;perspective:1000px}
.memory100-numbers .memory100-grid:has(.memory100-card:nth-child(-n+4):last-child){grid-template-columns:repeat(2,minmax(0,1fr));width:min(100%,250px)}
.memory100-numbers .memory100-grid:has(.memory100-card:nth-child(6):last-child){grid-template-columns:repeat(3,minmax(0,1fr));width:min(100%,315px)}
.memory100-card{display:block!important;aspect-ratio:4/5.1;width:100%;height:auto!important;padding:0!important;margin:0!important;border:0!important;border-radius:12px!important;background:transparent!important;box-shadow:none!important;cursor:pointer;touch-action:manipulation!important;-webkit-tap-highlight-color:transparent;perspective:800px}
.memory100-inner{display:block;position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .53s cubic-bezier(.23,.75,.33,1.08);will-change:transform}
.memory100-card.is-flipped .memory100-inner,.memory100-card.is-matched .memory100-inner{transform:rotateY(180deg)}
.memory100-back,.memory100-front{position:absolute;inset:0;display:grid;place-items:center;box-sizing:border-box;border:4px solid #c69d7a;border-radius:13px;overflow:hidden;backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:inset 0 0 0 3px #fbedcf,1px 3px 0 #b5a18a8a}
.memory100-back{background:repeating-linear-gradient(8deg,#eed6b5 0 12px,#e9cfb0 12px 15px,#f3ddc0 15px 25px)}
.memory100-back svg{width:78%;height:75%;filter:drop-shadow(1px 1px 1px #90705044)}
.memory100-front{transform:rotateY(180deg);background:radial-gradient(ellipse at 40% 28%,#fffaf0,#f3e6cb);border-color:#8db399}
.memory100-front img{width:93%;height:94%;object-fit:contain;pointer-events:none}
.memory100-number,.memory100-front>b{font:900 clamp(33px,10vw,63px)/1 "Chalkboard SE","Marker Felt",sans-serif;color:#997dc0;text-shadow:2px 3px #f1e8cf;transform:rotate(-4deg)}
.memory100-card:nth-child(3n+2) .memory100-front>b{color:#85a98a;transform:rotate(5deg)}
.memory100-card:nth-child(3n+3) .memory100-front>b{color:#bd9977;transform:rotate(-2deg)}
.memory100-card.is-matched .memory100-front{border-color:#80b58d;background:#e6efd6}
.memory100-card.is-matched{animation:memory100-joy .55s ease-out}
.memory100-card:focus-visible{outline:4px solid #baa5dc;outline-offset:3px}
.memory100-controls{flex:0 0 auto;display:flex;gap:25px;justify-content:center;margin-top:4px}
.memory100-controls button{width:54px;height:54px;padding:0;border:4px solid #b99578;border-radius:50%;background:#f5e0c0;color:#8c6b53;box-shadow:0 3px #c4ac8e;font:900 30px "Chalkboard SE",sans-serif}
.memory100-controls button:last-child{background:#dcebcf;border-color:#a5bd94;color:#638b78}
.memory100-fx{position:absolute;inset:0;z-index:30;pointer-events:none;overflow:hidden}
.memory100-confetti{position:absolute;width:11px;height:11px;border-radius:2px;animation:memory100-pop 1.2s cubic-bezier(.16,.8,.4,1) forwards}
.memory100-won{animation:memory100-win 1s ease-in-out infinite alternate}
@keyframes memory100-pop{0%{opacity:0;transform:scale(.3)}15%{opacity:1}85%{opacity:1}100%{opacity:0;transform:translate(var(--mx),var(--my)) rotate(170deg) scale(.65)}}
@keyframes memory100-joy{50%{filter:brightness(1.1);transform:scale(1.03)}}
@keyframes memory100-win{to{filter:drop-shadow(0 0 10px #e4d49b)}}
@media(orientation:portrait) and (max-height:740px){#app .memory100-page.main-content{gap:5px!important;padding-top:4px!important}.memory100-grid{width:min(100%,340px)}.memory100-game .memory100-card{max-height:77px}.memory100-animals .memory100-grid{width:min(100%,330px)}}
@media(orientation:landscape) and (max-height:550px){#app .memory100-page.main-content{display:grid!important;grid-template-columns:minmax(140px,30%) minmax(0,1fr)!important;grid-template-rows:auto 1fr auto!important;gap:5px 14px!important;align-items:center}.memory100-header{grid-area:1/1}.memory100-grid{grid-area:1/2/4/3;grid-template-columns:repeat(5,minmax(0,1fr))!important;width:min(100%,520px)}.memory100-card{aspect-ratio:1.0!important;max-height:60px}.memory100-controls{grid-area:3/1}.memory100-chooser{grid-column:1/3;margin:0}.memory100-greeting{display:none}}
@media(prefers-reduced-motion:reduce){.memory100-inner{transition:none!important}.memory100-card,.memory100-won,.memory100-confetti{animation-duration:.01ms!important;animation-iteration-count:1!important}}

/* Make restarting perceptible even at level 1 (two visually identical card backs). */
.memory100-grid.memory100-restarted .memory100-card{animation:memory100-deal .62s cubic-bezier(.2,.9,.28,1.14) both;transform-origin:center 80%}
.memory100-grid.memory100-restarted .memory100-card:nth-child(2n){animation-delay:.07s}
@keyframes memory100-deal{0%{opacity:.35;transform:translateY(-12px) scale(.9) rotate(-3deg)}65%{opacity:1;transform:translateY(2px) scale(1.025)}100%{opacity:1;transform:translateY(0) scale(1) rotate(0)}}


/* source: zahlenmemory-v100/home-grid.css */
/* Tenth hand-illustrated home game: responsive portrait 3+3+3+1, landscape 5+5. */
@media(orientation:portrait){#app .zw80-home .zw80-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:repeat(4,minmax(0,1fr))!important;gap:clamp(1px,.5dvh,7px) clamp(1px,1vw,8px)!important}
#app .zw80-home .zw80-grid>.zw80-tile:nth-child(10){grid-column:2!important;grid-row:4!important}
#app .zw80-home .zw80-grid>.zw80-tile:nth-child(n){min-height:0!important;max-height:100%!important}
}
@media(orientation:landscape){#app .zw80-home .zw80-grid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;grid-template-rows:repeat(2,minmax(0,1fr))!important;gap:2px!important;align-items:stretch!important}
#app .zw80-home .zw80-grid>.zw80-tile:nth-child(10){grid-column:auto!important;grid-row:auto!important}
}
#app .zw80-home .zw80-grid>.zw80-tile:nth-child(10) img{object-fit:contain!important;filter:drop-shadow(0 3px 2px #a58a7366)!important}


/* source: auto-maze-v103/home-grid-v103.css */
/* Version 103: nine equally sized illustrated game buttons; no empty fourth row. */
@media(orientation:portrait){
 #app .zw80-home .zw80-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-template-rows:repeat(3,minmax(0,1fr))!important;
  gap:clamp(1px,.5dvh,7px) clamp(1px,1vw,8px)!important;
 }
 #app .zw80-home .zw80-grid > .zw80-tile:nth-child(9){
  grid-column:3!important;grid-row:3!important;
 }
}
@media(orientation:landscape){
 #app .zw80-home .zw80-grid{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,minmax(0,1fr))!important;
 }
}
#app .zw80-home .zw80-grid::after{
 background:url("data:image/webp;base64,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") center/100% 100% no-repeat!important;
}

/* Avoid a small page-level scroll in landscape Memory; internal game area can still scroll. */
#app .memory100-page.main-content{position:absolute!important;inset:0!important;height:100%!important;max-height:100%!important;min-height:0!important;}



/* source: auto-maze-v104/auto-maze.css */
/* V104: Auto-Labyrinth has its own illustrated neighbourhood, not cuddle-hedges. */
#app .zw104.zw93.main-content{
 background:#d7c79e url('/auto-maze-v104/world-portrait.webp') center/100% 100% no-repeat!important;
}
#app .zw104 .zw104-board{
 border:5px solid #a68b67!important;
 border-radius:24px;
 background:#b5c99b!important;
 box-shadow:inset 0 0 0 3px #f2debd,0 5px 6px #674e3d45;
}
#app .zw104 #zw93Canvas{z-index:2}
#app .zw104 .zw104-task{
 background:rgba(246,225,186,.96)!important;border:3px solid #b38a60!important;
 border-radius:22px!important;
 box-shadow:inset 0 0 0 3px rgba(255,250,215,.75),0 3px 2px #624e363b!important;
 left:21%;width:66%;height:9.5%;top:11%;
 justify-content:center;gap:8px;
}
#app .zw104 .zw104-task img{height:94%;object-fit:contain;max-width:40%}
#app .zw104 .zw104-task-car{width:22%;filter:drop-shadow(1px 1px 1px #705a4e61)}
#app .zw104 .zw104-task-house{width:35%;filter:drop-shadow(1px 2px 1px #705a4e61)}
#app .zw104 .zw104-arrow{font-size:clamp(21px,6vw,38px);color:#ac7861;line-height:1;transform:rotate(-4deg);text-shadow:1px 1px #fff8da}
#app .zw104 .zw104-title{font-size:clamp(18px,5vw,29px);color:#775944}
#app .zw104 .zw104-car{
 border:0!important;background:none!important;z-index:7!important;
 transition:left 140ms cubic-bezier(.2,.65,.3,1),top 140ms cubic-bezier(.2,.65,.3,1)!important;
 filter:drop-shadow(1px 3px 2px #5f493a88);
}
#app .zw104 .zw104-car img{animation:zw104-idle-car 4.9s ease-in-out infinite!important}
#app .zw104 .zw104-car.zw103-rolling img{animation:zw104-car-moving .35s ease-in-out infinite!important}
#app .zw104 .zw104-car .zw103-wheel{display:none!important}
#app .zw104 .zw104-house{
 position:absolute!important;z-index:5;transform:translate(-50%,-55%);
 object-fit:contain;filter:drop-shadow(0 4px 3px #80675361);
 pointer-events:none;
}
#app .zw104 .zw104-goalring{
 position:absolute!important;z-index:4;border:4px dashed #f5e7ba;border-radius:50%;
 transform:translate(-50%,-50%) rotate(-11deg);
 filter:drop-shadow(0 2px 1px #9e6d57);
 animation:zw104-goal-pulse 3.3s ease-in-out infinite;pointer-events:none;
}
#app .zw104 .zw104-house.zw104-arrived{
 animation:zw104-house-happy 1.1s ease-in-out 3;
}
#app .zw104 .zw104-success{
 display:flex;justify-content:center;align-items:center;width:min(210px,58%);height:min(160px,44%);
 border:0!important;gap:0;
}
#app .zw104 .zw104-success img{width:50%;height:95%;object-fit:contain;filter:drop-shadow(0 2px 2px #614c3a55)}
#app .zw104 .zw104-success.is-visible .zw104-win-car{
 animation:zw104-arrive .95s cubic-bezier(.2,.7,.3,1) both;
}
#app .zw104 .zw104-success.is-visible .zw104-win-house{
 animation:zw104-welcome 1.35s ease-in-out infinite;
}
#app .zw104 .zw104-levels{z-index:12}
@keyframes zw104-idle-car{0%,100%{transform:translateY(0) rotate(-1deg)}48%{transform:translateY(-2px) rotate(1deg)}}
@keyframes zw104-car-moving{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-2px) rotate(2deg)}}
@keyframes zw104-goal-pulse{0%,100%{opacity:.88;scale:1}50%{opacity:1;scale:1.09}}
@keyframes zw104-house-happy{0%,100%{transform:translate(-50%,-55%) rotate(0)}40%{transform:translate(-50%,-59%) rotate(-2deg)}70%{transform:translate(-50%,-55%) rotate(2deg)}}
@keyframes zw104-arrive{from{opacity:0;transform:translateX(-48px) rotate(-14deg)}to{opacity:1;transform:translateX(0) rotate(0)}}
@keyframes zw104-welcome{0%,100%{transform:rotate(-2deg)}55%{transform:rotate(2deg)}}
@media(orientation:landscape) and (max-height:650px){
 #app .zw104.zw93.main-content{background-image:url('/auto-maze-v104/world-landscape.webp')!important}
 #app .zw104 .zw104-task{left:66%;width:31%;top:19%;height:19%;gap:3px}
 #app .zw104 .zw104-title{left:65%!important;width:33%!important;top:3%!important;height:13%!important;font-size:clamp(15px,4.4vh,26px)}
 #app .zw104 .zw104-arrow{font-size:clamp(17px,4vh,28px)}
 #app .zw104 .zw104-success{width:min(180px,48%);height:min(130px,39%)}
}
@media(prefers-reduced-motion:reduce){
 #app .zw104 .zw104-car img,#app .zw104 .zw104-goalring{animation:none!important}
}
/* V104: ONE consistent hand-drawn restart, with large real touch target.
   Safe-area alignment and placement outside the main board. */
#app #zw95Restart{
 position:absolute!important;left:auto!important;right:max(14px,env(safe-area-inset-right,0px))!important;
 top:auto!important;bottom:max(14px,env(safe-area-inset-bottom,0px))!important;
 width:clamp(62px,17vw,78px)!important;height:clamp(62px,17vw,78px)!important;
 padding:0!important;margin:0!important;border:0!important;background:transparent!important;
 box-shadow:none!important;border-radius:50%!important;z-index:200!important;
 display:grid!important;place-items:center!important;touch-action:manipulation!important;
 filter:drop-shadow(0 4px 2px #634a3666);transition:transform .18s ease!important;
}
#app #zw95Restart img{width:100%;height:100%;object-fit:contain}
#app #zw95Restart:active{transform:scale(.88)!important}
#app #zw95Restart:focus-visible{outline:4px solid #fff1b3!important;outline-offset:3px!important}
#app .zw103 .zw94-restart,#app .zw94-connect .zw94-erase,
#app .zw91 .zw91-small-tools:has([data-tool="reset"]){display:none!important}
/* Avoid two different restart buttons appearing in Memory. */
#app .memory100-controls #memory100Restart{display:none!important}
@media(orientation:landscape) and (max-height:650px){
 #app #zw95Restart{
  top:39%!important;right:max(10px,env(safe-area-inset-right,0px))!important;
  bottom:auto!important;width:clamp(58px,16vh,73px)!important;height:clamp(58px,16vh,73px)!important;
 }
}
@media(max-height:640px) and (orientation:portrait){
 #app #zw95Restart{width:58px!important;height:58px!important;bottom:max(9px,env(safe-area-inset-bottom,0px))!important}
}

/* Keep the pictorial task and difficulty choices in separate visual zones. */
#app .zw104 .zw104-task{top:11%!important;left:20%!important;width:70%!important;height:11%!important;z-index:12!important}
#app .zw104 .zw104-levels{
 top:89.7%!important;left:12%!important;width:69%!important;height:9.4%!important;
 justify-content:center!important;align-items:center!important;gap:clamp(6px,2vw,18px)!important;
}
#app .zw104 .zw104-levels .zw93-level{
 width:clamp(50px,13.8vw,63px)!important;height:clamp(50px,13.8vw,63px)!important;
}
#app .zw104 .zw104-board{top:25.8%!important;height:62.2%!important}
@media(orientation:landscape) and (max-height:650px){
 #app .zw104 .zw104-task{top:19%!important;left:65.5%!important;width:32.5%!important;height:21%!important}
 #app .zw104 .zw104-levels{top:47%!important;left:64%!important;width:34%!important;height:18%!important;gap:4px!important}
 #app .zw104 .zw104-levels .zw93-level{width:clamp(45px,13vh,62px)!important;height:clamp(45px,13vh,62px)!important}
 #app .zw104 .zw104-board{left:2%!important;top:8%!important;width:59%!important;height:88%!important}
 #app #zw95Restart{top:auto!important;bottom:max(11px,env(safe-area-inset-bottom,0px))!important;right:max(17px,env(safe-area-inset-right,0px))!important}
}
@media(max-width:355px) and (orientation:portrait){
 #app .zw104 .zw104-levels{left:7%!important;width:76%!important;gap:3px!important}
 #app .zw104 .zw104-levels .zw93-level{width:50px!important;height:50px!important}
 #app .zw104 .zw104-task{left:19%!important;width:72%!important}
}

/* Respect each activity's bottom-row choices; a restart never covers food, paints or answers. */
#app #zw95Restart[data-mode="picnic"],
#app #zw95Restart[data-mode="feeding"],
#app #zw95Restart[data-mode="cooking"],
#app #zw95Restart[data-mode="connect"]{
 top:max(76px,18dvh)!important;bottom:auto!important;
 right:max(14px,env(safe-area-inset-right,0px))!important;left:auto!important;
}
@media(orientation:landscape) and (max-height:650px){
 #app #zw95Restart[data-mode="hands"],
 #app #zw95Restart[data-mode="animals"]{
  right:auto!important;left:max(13px,env(safe-area-inset-left,0px))!important;
  top:auto!important;bottom:max(12px,env(safe-area-inset-bottom,0px))!important;
 }
}


/* source: cuddle-maze-v105/cuddle-maze.css */
/* Zählwiese V105 – real illustrated animals, a garden maze, and a gentle storybook embrace. */
#app .zw105.zw93.main-content{
 background:#b8d2a3 url('/storybook-games-v91/world-maze-portrait.webp') center/100% 100% no-repeat!important;
}
#app .zw105 .zw105-title{
 left:20%!important;top:1.5%!important;width:75%!important;height:8.8%!important;
 display:flex;justify-content:center;align-items:center;
 font:900 clamp(17px,5vw,31px)/1.08 'Segoe Print','Comic Sans MS',cursive!important;
 color:#815c61;text-shadow:2px 2px #fff1cf,0 3px 2px #73574746;
 text-align:center;
}
#app .zw105 .zw105-task{
 top:11.1%!important;left:20%!important;width:70%!important;height:11%!important;
 display:flex;gap:clamp(5px,2vw,14px);justify-content:center;align-items:center;
 border:3px solid #b59677;border-radius:23px;
 background:rgba(251,231,200,.96)!important;
 box-shadow:inset 0 0 0 3px #fff7d9bb,0 3px 2px #6d554038!important;
 filter:none!important;z-index:11!important;
}
#app .zw105 .zw105-task .zw105-task-animal{
 width:31%;height:94%;object-fit:contain;
 filter:drop-shadow(0 2px 1px #67503e39);
 animation:zw105-task-wiggle 5.8s ease-in-out infinite;
}
#app .zw105 .zw105-task .zw105-task-animal:last-child{animation-delay:-2.9s}
#app .zw105 .zw105-task .zw105-task-heart{
 width:17%;height:62%;max-width:65px;object-fit:contain;
 animation:zw105-heart-beat 2.7s ease-in-out infinite;
 filter:drop-shadow(0 2px 1px #9c667c44);
}
#app .zw105 .zw105-board{
 top:25.8%!important;left:5%!important;width:90%!important;height:62.2%!important;
 border:5px solid #ac956d;border-radius:25px;
 background:#b4c797!important;box-shadow:inset 0 0 0 3px #f5e1ba,0 5px 6px #634d3b49;
 overflow:hidden!important;
}
#app .zw105 .zw105-board #zw93Canvas{z-index:3}
#app .zw105 .zw105-animal{
 border:0!important;background:none!important;
 transition:left .15s cubic-bezier(.2,.7,.35,1),top .15s cubic-bezier(.2,.7,.35,1),filter .18s ease!important;
 touch-action:none!important;z-index:6!important;
 filter:drop-shadow(0 2px 2px #56473766);
}
#app .zw105 .zw105-animal img{
 width:100%;height:100%;object-fit:contain;
 animation:zw105-animal-breathe 3.8s ease-in-out infinite!important;
}
#app .zw105 .zw105-animal.zw105-igor img{animation-delay:-1.8s!important}
#app .zw105 .zw105-animal.zw105-walking img{
 animation:zw105-animal-step .46s ease-in-out infinite!important;
}
#app .zw105 .zw105-animal.selected{filter:drop-shadow(0 0 6px #fff8bd) drop-shadow(0 3px 2px #69514277)}
#app .zw105 .zw105-hug{
 width:min(202px,56%);height:min(166px,46%);
 display:flex;justify-content:center;align-items:flex-end;gap:0!important;
 z-index:12;
 filter:drop-shadow(0 4px 2px #684b3a55);
}
#app .zw105 .zw105-hug-animal{
 width:54%;height:100%;flex:0 0 54%;
 display:grid;align-items:end;justify-items:center;
}
#app .zw105 .zw105-hug-animal img{
 width:100%;height:100%;object-fit:contain;
}
#app .zw105 .zw105-hug.is-visible .zw105-hug-a{
 animation:zw105-embrace-left 3.2s cubic-bezier(.22,.7,.3,1) both;
}
#app .zw105 .zw105-hug.is-visible .zw105-hug-b{
 animation:zw105-embrace-right 3.2s cubic-bezier(.22,.7,.3,1) both;
}
#app .zw105 .zw105-hug-center{
 position:absolute;left:43%;top:1%;width:23%;height:25%;
 pointer-events:none;z-index:3;
}
#app .zw105 .zw105-hug-center img{width:100%;height:100%;object-fit:contain}
#app .zw105 .zw105-hug.is-visible .zw105-hug-center{
 animation:zw105-love-rise 2.1s ease-in-out .4s infinite;
}
#app .zw105 .zw105-levels{
 position:absolute!important;z-index:12;
 top:89.7%!important;left:12%!important;width:69%!important;height:9.4%!important;
 display:flex!important;align-items:center!important;justify-content:center!important;
 gap:clamp(6px,2vw,18px)!important;
}
#app .zw105 .zw105-levels .zw93-level{width:clamp(50px,13.8vw,63px)!important;height:clamp(50px,13.8vw,63px)!important}
#app .zw105 .zw94-restart{display:none!important}
@keyframes zw105-animal-breathe{
 0%,100%{transform:translateY(0) rotate(-1.5deg) scale(1)}
 50%{transform:translateY(-2px) rotate(1.5deg) scale(1.018)}
}
@keyframes zw105-animal-step{
 0%,100%{transform:translateY(0) rotate(-4deg)}
 50%{transform:translateY(-3px) rotate(3deg)}
}
@keyframes zw105-heart-beat{
 0%,100%{transform:scale(.95) rotate(-4deg)}
 38%{transform:scale(1.12) rotate(3deg)}
 50%{transform:scale(1.02)}
}
@keyframes zw105-task-wiggle{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}
@keyframes zw105-embrace-left{
 0%{transform:translateX(-47px) rotate(-9deg)}
 32%{transform:translateX(-9px) rotate(3deg)}
 62%{transform:translateX(32px) rotate(11deg)}
 80%{transform:translateX(35px) rotate(6deg)}
 100%{transform:translateX(34px) rotate(5deg)}
}
@keyframes zw105-embrace-right{
 0%{transform:translateX(47px) rotate(9deg)}
 32%{transform:translateX(9px) rotate(-3deg)}
 62%{transform:translateX(-32px) rotate(-11deg)}
 80%{transform:translateX(-35px) rotate(-6deg)}
 100%{transform:translateX(-34px) rotate(-5deg)}
}
@keyframes zw105-love-rise{0%,100%{transform:translateY(0) scale(.78);opacity:.8}50%{transform:translateY(-15px) scale(1.16);opacity:1}}
@media(orientation:landscape) and (max-height:650px){
 #app .zw105.zw93.main-content{background-image:url('/storybook-games-v91/world-maze-landscape.webp')!important}
 #app .zw105 .zw105-title{
  left:64.5%!important;width:34%!important;top:2%!important;height:13.5%!important;font-size:clamp(15px,4.4vh,27px)!important;
 }
 #app .zw105 .zw105-task{top:19%!important;left:65.5%!important;width:32.5%!important;height:21%!important;gap:3px}
 #app .zw105 .zw105-task .zw105-task-animal{width:33%;height:96%}
 #app .zw105 .zw105-task .zw105-task-heart{width:18%;height:58%}
 #app .zw105 .zw105-board{left:2%!important;top:8%!important;width:59%!important;height:88%!important}
 #app .zw105 .zw105-levels{
  left:64%!important;top:47%!important;width:34%!important;height:18%!important;gap:4px!important
 }
 #app .zw105 .zw105-levels .zw93-level{
  width:clamp(45px,13vh,62px)!important;height:clamp(45px,13vh,62px)!important
 }
 #app .zw105 .zw105-hug{width:min(165px,47%);height:min(137px,43%)}
}
@media(max-width:355px) and (orientation:portrait){
 #app .zw105 .zw105-task{left:19%!important;width:72%!important}
 #app .zw105 .zw105-levels{left:7%!important;width:76%!important;gap:3px!important}
 #app .zw105 .zw105-levels .zw93-level{width:50px!important;height:50px!important}
 #app .zw105 .zw105-board{left:2%!important;width:96%!important}
}
@media(prefers-reduced-motion:reduce){
 #app .zw105 .zw105-task img,#app .zw105 .zw105-animal img,
 #app .zw105 .zw105-hug-animal,#app .zw105 .zw105-hug-center{animation:none!important}
}


/* source: labyrinth-gallery-v106/maze-selection.css */
/* Version 106 – premium storybook Labyrinth menu, safe areas and responsive art */
#app .zw106-hub.main-content{
 background:#a7ca91 url('/storybook-games-v91/world-maze-portrait.webp') center/100% 100% no-repeat!important;
 position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
 overflow:hidden!important;isolation:isolate!important;
}
#app .zw106-hub .zw106-heading{
 position:absolute;z-index:4;top:8.1%;left:17%;width:77%;height:8%;
 border:4px solid #ad8865;border-radius:26px;
 background:linear-gradient(170deg,#fae5bd 0%,#f1d3a0 65%,#e9bb86 100%);
 box-shadow:inset 0 0 0 3px #fff2d3,0 4px 3px rgba(81,63,42,.24);
 display:grid;place-items:center;
 padding:0 7px!important;
 font:900 clamp(18px,5.1vw,31px)/1.15 'Segoe Print','Comic Sans MS',cursive;
 color:#78543f;text-shadow:1px 2px #fff2d1;text-align:center;
}
#app .zw106-hub .zw106-hero{
 position:absolute;z-index:3;top:17.8%;left:6%;width:88%;height:34%;
 border:5px solid #c8aa77;border-radius:25px;
 background:#a4d0cc;
 box-shadow:inset 0 0 0 2px #fff1d0,0 5px 5px #6c50364f;
 overflow:hidden;transform:rotate(-.4deg);
}
#app .zw106-hub .zw106-hero img{
 width:100%;height:100%;object-fit:cover;object-position:center 57%;
 display:block;pointer-events:none;user-select:none;-webkit-user-select:none;
}
#app .zw106-hub .zw106-choices{
 position:absolute;z-index:5;top:55.1%;left:4%;width:92%;height:36%;
 display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
 align-items:center;justify-content:center;column-gap:3%;
}
#app .zw106-hub .zw106-choice{
 width:100%!important;height:100%!important;
 min-width:0!important;min-height:0!important;padding:0!important;
 appearance:none!important;background:transparent!important;border:0!important;
 border-radius:39%!important;box-shadow:none!important;
 display:flex!important;align-items:center!important;justify-content:center!important;
 touch-action:manipulation!important;cursor:pointer;
 filter:drop-shadow(0 5px 3px #73543659);
 transition:transform .24s cubic-bezier(.16,.7,.34,1)!important;
 -webkit-tap-highlight-color:transparent;
}
#app .zw106-hub .zw106-choice img{
 width:100%!important;max-width:218px;max-height:100%;
 height:auto!important;aspect-ratio:340 / 390;
 object-fit:contain;pointer-events:none;
}
#app .zw106-hub .zw106-choice:active{transform:scale(.91)!important}
#app .zw106-hub .zw106-choice:focus-visible{outline:4px solid #fff2b7!important;outline-offset:2px!important}
@media(orientation:landscape) and (max-height:650px){
 #app .zw106-hub.main-content{background-image:url('/storybook-games-v91/world-maze-landscape.webp')!important}
 #app .zw106-hub .zw106-heading{top:8%;left:66%;width:32%;height:16%;font-size:clamp(17px,4.2vh,26px);border-radius:21px}
 #app .zw106-hub .zw106-hero{top:27%;left:65%;width:33%;height:64%;border-width:3px;border-radius:18px}
 #app .zw106-hub .zw106-hero img{object-fit:cover;object-position:center}
 #app .zw106-hub .zw106-choices{top:11%;left:2%;width:61%;height:83%;column-gap:1%}
 #app .zw106-hub .zw106-choice img{max-width:230px;max-height:100%}
}
@media(max-width:355px) and (orientation:portrait){
 #app .zw106-hub .zw106-heading{top:9%;left:17%;width:77%;font-size:18px}
 #app .zw106-hub .zw106-hero{left:4.5%;width:91%;top:19%;height:31%}
 #app .zw106-hub .zw106-choices{top:53%;height:38%;left:2%;width:96%;column-gap:1%}
}
@media(prefers-reduced-motion:reduce){
 #app .zw106-hub .zw106-choice{transition:none!important}
}
/* End of a successful cuddle: make the pair visibly touch, with overlapping
   cheeks and bodies. Use already trimmed pencil sprites for real proximity. */
#app .zw105 .zw105-hug{
 width:min(220px,69%)!important;height:min(180px,49%)!important;
 align-items:flex-end!important;justify-content:center!important;
 overflow:visible!important;
}
#app .zw105 .zw105-hug-animal{
 width:60%!important;flex:0 0 60%!important;
 height:98%!important;position:relative;
}
#app .zw105 .zw105-hug-a{margin-right:-8%!important;z-index:2}
#app .zw105 .zw105-hug-b{margin-left:-8%!important;z-index:1}
#app .zw105 .zw105-hug-animal img{
 display:block;width:118%!important;max-width:none!important;height:100%!important;
 object-fit:contain;filter:drop-shadow(0 2px 1px rgba(104,77,59,.2))
}
#app .zw105 .zw105-hug.is-visible .zw105-hug-a{
 animation:zw106-closer-left 2.6s cubic-bezier(.2,.7,.3,1) both!important;
}
#app .zw105 .zw105-hug.is-visible .zw105-hug-b{
 animation:zw106-closer-right 2.6s cubic-bezier(.2,.7,.3,1) both!important;
}
#app .zw105 .zw105-hug-center{left:40%!important;top:-12%!important;width:25%!important;height:30%!important}
@keyframes zw106-closer-left{
 0%{transform:translateX(-35%) rotate(-6deg)}
 37%{transform:translateX(3%) rotate(3deg)}
 65%{transform:translateX(17%) rotate(8deg)}
 83%{transform:translateX(18%) rotate(5deg)}
 100%{transform:translateX(17%) rotate(6deg)}
}
@keyframes zw106-closer-right{
 0%{transform:translateX(35%) rotate(6deg)}
 37%{transform:translateX(-3%) rotate(-3deg)}
 65%{transform:translateX(-17%) rotate(-8deg)}
 83%{transform:translateX(-18%) rotate(-5deg)}
 100%{transform:translateX(-17%) rotate(-6deg)}
}
@media(orientation:landscape) and (max-height:650px){
 #app .zw105 .zw105-hug{width:min(205px,62%)!important;height:min(150px,52%)!important}
}
@media(prefers-reduced-motion:reduce){
 #app .zw105 .zw105-hug.is-visible .zw105-hug-a{transform:translateX(17%)!important;animation:none!important}
 #app .zw105 .zw105-hug.is-visible .zw105-hug-b{transform:translateX(-17%)!important;animation:none!important}
}


/* source: labyrinth-gallery-v106/home-preview.css */
#app .zw80-grid::after{background-image:url("data:image/webp;base64,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")!important;background-size:100% 100%!important;background-position:center!important}


/* source: picnic-v107/game.css */
/* Zählwiese Picnic 107. Completely fresh illustration system. */
#app:has(.zw107) .app-header{position:absolute!important;top:env(safe-area-inset-top,0px)!important;left:0!important;width:100%!important;height:0!important;overflow:visible!important;z-index:130!important;background:none!important;border:0!important;box-shadow:none!important;padding:0!important;pointer-events:none!important}
#app:has(.zw107) .app-header .brand,#app:has(.zw107) .app-header .small-caption{display:none!important}
#app:has(.zw107) .app-header .header-tools{position:absolute!important;left:3%!important;top:12px!important;display:block!important;pointer-events:auto!important;width:max-content!important;right:auto!important;max-width:90px!important;}
#app:has(.zw107) .app-header button.zw-go-home{display:grid!important;place-items:center!important;min-width:58px!important;width:clamp(58px,8vw,80px)!important;height:clamp(58px,8vw,80px)!important;padding:12px!important;background:radial-gradient(circle at 35% 26%,#fff6dc,#f1d9a9 78%,#d1a776)!important;border:5px solid #71a5c1!important;border-radius:50%!important;box-shadow:inset 0 0 0 3px #fff8e5,0 5px 0 #517e9190,0 6px 12px #564f3766!important}
#app:has(.zw107) .app-header .zw-home-label{display:none!important}
#app:has(.zw107) .app-header button.zw-go-home svg{width:85%!important;height:85%!important}
#app .zw107.main-content{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;overflow:hidden!important;padding:0!important;margin:0!important;isolation:isolate!important;background:#9dd2c6!important;touch-action:pan-x pan-y}
.zw107,.zw107 *{box-sizing:border-box}
.zw107 .zw107-land{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;filter:saturate(1.02)}
.zw107 .zw107-title{position:absolute;z-index:5;top:1.5%;left:24%;width:52%;height:10%;pointer-events:none;filter:drop-shadow(0 4px 3px #704d2d44)}
.zw107 .zw107-title svg{width:100%;height:100%;overflow:visible}
.zw107 .zw107-controls{position:absolute;top:max(8px,2%);right:2%;z-index:60;display:flex;gap:clamp(4px,1.1vw,12px)}
.zw107 button.zw107-roundbtn{display:grid;place-items:center;width:clamp(52px,8vw,78px);height:clamp(52px,8vw,78px);border:5px solid #d7a475;border-radius:50%;padding:11px;background:radial-gradient(circle at 34% 22%,#fffaf0,#f1d7b1 72%,#cda478);box-shadow:inset 0 0 0 3px #fff8e1,0 3px 0 #937358,0 5px 10px #5e52355b;cursor:pointer;touch-action:manipulation;transition:transform .16s ease,filter .16s ease}
.zw107 button.zw107-roundbtn:hover{filter:brightness(1.08)}
.zw107 button.zw107-roundbtn:active{transform:scale(.91)}
.zw107 .zw107-help{border-color:#aa91c7!important}
.zw107 .zw107-restart{border-color:#de8985!important}
.zw107 button.zw107-roundbtn svg{width:100%;height:100%}
.zw107 .zw107-order{position:absolute;top:13%;left:14%;right:14%;height:16%;z-index:9;display:flex;justify-content:center;align-items:stretch;gap:clamp(4px,1.2vw,13px);padding:clamp(7px,1vw,12px);border:4px solid #dba663;outline:3px dashed #fff0c4;outline-offset:-10px;border-radius:36% 34% 22% 25% / 19% 17% 23% 24%;background:linear-gradient(115deg,#fef6db,#fff2d3 52%,#f5deac);box-shadow:0 6px 0 #b98553a1,0 10px 16px #8568464a;transform:rotate(-.5deg)}
.zw107 .zw107-goal{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border-radius:19px;transition:filter .3s,transform .3s;background:transparent}
.zw107 .zw107-goal+.zw107-goal{border-left:2px dashed #dbb27a}
.zw107 .zw107-goal.completed{filter:drop-shadow(0 0 6px #a6c97b);transform:scale(1.01)}
.zw107 .zw107-goal-food{width:100%;height:78%;display:flex;align-items:center;justify-content:center;gap:0;overflow:visible}
.zw107 .zw107-goal-piece{flex:1 1 0;max-width:65px;height:100%;min-width:0;transition:transform .3s,filter .3s;filter:drop-shadow(0 2px 2px #78583955)}
.zw107 .zw107-goal-piece.done{filter:brightness(1.09) drop-shadow(0 0 5px #8db75d);transform:translateY(-3px) scale(.9)}
.zw107 .zw107-foodsvg{display:block;width:100%;height:100%;overflow:visible}
.zw107 .zw107-goal-dots{display:flex;gap:8px;align-items:center;justify-content:center;flex:0 0 auto;min-height:9px}
.zw107 .zw107-goal-dots i{width:10px;height:10px;border-radius:50%;border:2px solid #b58b5b;background:#fff5db;box-shadow:inset 1px 1px 1px #fff}
.zw107 .zw107-goal-dots i.yes{background:#8ebc6f;border-color:#629152;box-shadow:0 0 6px #fff7c2}
.zw107 .zw107-garden{position:absolute;left:4%;top:30%;width:92%;height:39%;display:flex;align-items:flex-end;justify-content:space-between;z-index:6;pointer-events:none;transform-origin:center bottom}
.zw107 .zw107-friend{position:relative;width:31%;height:100%;display:flex;align-items:flex-end;justify-content:center;transform-origin:center bottom;filter:drop-shadow(0 4px 2px #4d6b3d66)}
.zw107 .zw107-friend svg{width:100%;height:100%;max-height:100%;overflow:visible;filter:drop-shadow(0 2px 0 #f9dfbf)}
.zw107 .zw107-moritz{animation:zw107-breathe 4.1s ease-in-out infinite}
.zw107 .zw107-igor{animation:zw107-breathe 3.5s .6s ease-in-out infinite}
@keyframes zw107-breathe{0%,100%{transform:rotate(-1deg) translateY(1px)}50%{transform:rotate(1deg) translateY(-5px)}}
.zw107 .zw107-basket-target{position:relative;width:42%;height:99%;pointer-events:auto;touch-action:none;transition:filter .25s;filter:drop-shadow(0 8px 4px #644b315d)}
.zw107 .zw107-basket-target.zw107-hover{filter:drop-shadow(0 0 20px #ffed98) drop-shadow(0 8px 4px #644b315d);transform:scale(1.05)}
.zw107 .zw107-basket-target.zw107-accepted{animation:zw107-pop .4s ease-out}
@keyframes zw107-pop{50%{transform:translateY(-5px) scale(1.045)}}
.zw107 .zw107-basket-illustration{position:absolute;inset:0}
.zw107 .zw107-handle{position:absolute;z-index:1;left:14%;top:9%;width:72%;height:56%;border:clamp(8px,1.6vw,19px) ridge #b87f3d;border-bottom:0;border-radius:55% 55% 0 0;box-shadow:inset 0 4px #e6b969,0 4px #794f35;transform:rotate(1deg)}
.zw107 .zw107-basket-interior{position:absolute;z-index:1;top:36%;left:9%;width:82%;height:36%;background:#7a4b2c;border:8px ridge #dca054;border-radius:50%}
.zw107 .zw107-wicker{position:absolute;z-index:5;bottom:7%;left:7%;width:86%;height:51%;border:clamp(7px,1vw,13px) ridge #d59a4d;border-radius:14% 14% 22% 22% / 16% 16% 20% 20%;background:repeating-linear-gradient(3deg,transparent 0 10px,#8d582d82 11px 13px,transparent 14px 20px),repeating-linear-gradient(90deg,#d18f3e 0 15px,#f2c46c 17px 25px,#bd803d 27px 39px);box-shadow:inset 0 4px 2px #fff3bb,0 5px 3px #77533880}
.zw107 .zw107-basket-clasp{position:absolute;top:-7%;left:45%;width:12%;height:33%;border:4px solid #8b562d;border-radius:12px;background:#a65e32;box-shadow:inset 0 3px #e8b16a}
.zw107 .zw107-basket-clasp:after{content:"";position:absolute;left:37%;top:50%;width:30%;aspect-ratio:1;border-radius:50%;background:#f6d46b}
.zw107 .zw107-lid{position:absolute;z-index:7;left:12%;top:15%;width:76%;height:36%;border:clamp(7px,1.2vw,13px) ridge #bd7a37;border-radius:48% 48% 15% 15% / 30% 30% 23% 23%;background:#da9f60;box-shadow:0 3px 2px #63472b91;transform:perspective(420px) rotateX(18deg) rotate(-2deg) translateY(-5%);transform-origin:bottom center;transition:transform 1s cubic-bezier(.2,.72,.3,1),top 1s ease}
.zw107 .zw107-lid-plaid{position:absolute;inset:6px;border-radius:inherit;border:2px dashed #fef1c8;background:repeating-linear-gradient(90deg,transparent 0 19px,#d55a4c95 20px 32px,transparent 33px 50px),repeating-linear-gradient(0deg,#fff0dc 0 17px,#d7564990 18px 31px,#fff0dc 32px 50px)}
.zw107 .zw107-lid-clasp{position:absolute;bottom:-20px;left:46%;width:10%;height:22px;border-radius:5px;background:#b46d35;border:3px solid #80552d}
.zw107 .zw107-basket-filled{position:absolute;z-index:3;inset:34% 17% 39%;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:0;overflow:visible}
.zw107 .zw107-collected{flex:0 0 22%;height:46%;min-width:0;transform:rotate(var(--angle));filter:drop-shadow(0 2px 2px #583b25a0);animation:zw107-food-arrival .35s both}
.zw107 .zw107-collected svg{width:100%;height:100%}
@keyframes zw107-food-arrival{from{transform:translateY(-45px) scale(.3);opacity:.2}75%{transform:translateY(3px) scale(1.15)}to{transform:rotate(var(--angle)) scale(1);opacity:1}}
.zw107 .zw107-drop-halo{position:absolute;inset:22% 0 12%;border:5px dashed #ffeaa2;border-radius:48%;opacity:0;transition:opacity .2s;z-index:10;pointer-events:none}
.zw107 .zw107-hover .zw107-drop-halo{opacity:1}
.zw107 .zw107-tray{position:absolute;left:1.8%;right:1.8%;bottom:1.2%;height:29%;z-index:11;border:6px solid #eab977;border-radius:46px 42px 30px 28px;background:#fff2da;box-shadow:inset 0 0 0 4px #fffbed,0 5px 2px #985d4f9c,0 0 0 5px #cc777066;overflow:hidden;transform:rotate(-.2deg)}
.zw107 .zw107-tray:before{content:"";position:absolute;inset:7px;border:2px dashed #dca27c;border-radius:inherit;pointer-events:none}
.zw107 .zw107-tray-seam{position:absolute;inset:0;background:repeating-linear-gradient(17deg,transparent 0 24px,#ddc4a323 25px 26px,transparent 27px 49px);pointer-events:none}
.zw107 .zw107-food-grid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));align-items:center;justify-items:center;gap:0 3px;height:100%;padding:15px 12px}
.zw107 .zw107-food-button{position:relative;width:min(100%,76px);height:100%;max-height:78px;min-width:0;min-height:0;padding:2px;display:grid;place-items:center;border:0;border-radius:38%;background:transparent;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;transition:filter .15s,transform .17s;filter:drop-shadow(0 3px 1px #b5917080)}
.zw107 .zw107-food-button svg{width:100%;height:100%;max-height:100%;pointer-events:none}
.zw107 .zw107-food-button:active,.zw107 .zw107-food-button.zw107-lift{cursor:grabbing;opacity:.36;transform:scale(.88)}
.zw107 .zw107-food-button.zw107-hintglow{animation:zw107-hint 1s ease-in-out 2}
.zw107 .zw107-food-button.zw107-incorrect{animation:zw107-shake .4s ease-in-out}
.zw107 .zw107-food-button.zw107-bounce{animation:zw107-pop .35s ease-in-out}
@keyframes zw107-hint{50%{filter:drop-shadow(0 0 9px #ffed69);transform:scale(1.17)}}
@keyframes zw107-shake{25%{transform:translateX(-7px) rotate(-7deg)}60%{transform:translateX(5px) rotate(5deg)}}
.zw107-ghost{position:fixed;top:0;left:0;width:94px;height:94px;z-index:99999;pointer-events:none;will-change:transform;filter:drop-shadow(1px 7px 7px #55432f77)}
.zw107-ghost svg{width:100%;height:100%}
.zw107 .zw107-sparkles{position:absolute;inset:0;z-index:90;pointer-events:none;overflow:hidden}
.zw107 .zw107-particle{position:absolute;width:13px;height:13px;border:2px solid #fff6cb;clip-path:polygon(50% 0,62% 37%,100% 50%,63% 63%,50% 100%,37% 63%,0 50%,37% 38%);animation:zw107-spark var(--t) ease-out forwards}
.zw107 .zw107-particle.zw107-red{background:#f07777!important}
@keyframes zw107-spark{0%{transform:translate(0,0) scale(.5) rotate(0);opacity:1}60%{opacity:1}100%{transform:translate(var(--dx),var(--dy)) scale(.2) rotate(var(--rot));opacity:0}}
.zw107 .zw107-next-wrap{position:absolute;right:6%;top:53%;z-index:99;pointer-events:none;opacity:0;transform:translateY(18px) scale(.7);transition:all .5s}
.zw107 .zw107-next{border-color:#7fb865!important;width:75px!important;height:75px!important;pointer-events:auto}
.zw107.zw107-arrived .zw107-next-wrap{opacity:1;transform:none;pointer-events:auto}
.zw107 .zw107-trip{position:absolute;right:1%;top:40%;width:40%;height:30%;z-index:2;opacity:0;transform:translate(30px,10px) scale(.75);transition:opacity .9s,transform 1.5s;pointer-events:none}
.zw107 .zw107-trip-blanket{position:absolute;inset:18% 0 6%;transform:skewY(-9deg) rotate(-3deg);border:8px solid #fcf3d0;border-radius:16px;background:repeating-linear-gradient(90deg,transparent 0 19px,#db625b99 20px 37px,transparent 38px 50px),repeating-linear-gradient(0deg,#ffedda 0 18px,#d45d55a0 19px 36px,#ffedda 37px 50px);box-shadow:0 4px 7px #4c624588}
.zw107.zw107-walk .zw107-trip{opacity:1;transform:translate(0,0) scale(1)}
.zw107.zw107-win .zw107-lid{top:32%;transform:perspective(420px) rotateX(0deg) rotate(0deg) translateY(4%)}
.zw107.zw107-win .zw107-friend{animation:zw107-cheer .8s ease-in-out 2!important}
@keyframes zw107-cheer{0%,100%{transform:translateY(0) rotate(0)}30%{transform:translateY(-26px) rotate(-7deg)}60%{transform:translateY(-15px) rotate(7deg)}}
.zw107.zw107-walk .zw107-garden{animation:zw107-travel 3s ease-in-out forwards}
@keyframes zw107-travel{0%{transform:translateX(0) scale(1)}50%{transform:translateX(7%) translateY(-16px) scale(.83)}100%{transform:translateX(25%) translateY(13%) scale(.68)}}
.zw107.zw107-walk .zw107-order{opacity:.45;transition:opacity 1s}
.zw107.zw107-walk .zw107-tray{opacity:.17;transform:translateY(105%);transition:all 1.2s}
.zw107.zw107-arrived .zw107-garden{animation:none;transform:translateX(22%) translateY(16%) scale(.71)}
.zw107.zw107-arrived .zw107-friend{animation:zw107-breathe 2s infinite!important}
@media (min-aspect-ratio: 6/5){
 .zw107 .zw107-title{top:0%;left:32%;width:36%;height:14%}
 .zw107 .zw107-order{top:13%;left:19%;right:19%;height:17%;border-radius:34px;padding:4px 11px}
 .zw107 .zw107-garden{top:29%;height:43%;left:19%;width:62%}
 .zw107 .zw107-tray{left:2%;right:2%;bottom:0%;height:29%;border-radius:32px}
 .zw107 .zw107-food-grid{grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));padding:8px 18px;gap:0 4px}
 .zw107 .zw107-food-button{width:min(100%,73px);max-height:74px}
 .zw107 .zw107-trip{right:2%;top:36%;width:30%}
 .zw107 .zw107-next-wrap{top:46%;right:7%}
 #app:has(.zw107) .app-header .header-tools{top:5px!important;left:2%!important}
}
@media (max-width:400px) and (orientation:portrait){
 .zw107 .zw107-title{left:21%;width:57%;top:2%}
 .zw107 .zw107-controls{right:1%;top:3%}
 .zw107 button.zw107-roundbtn{width:48px;height:48px;border-width:3px;padding:8px}
 .zw107 .zw107-controls{gap:4px}
 .zw107 .zw107-order{left:4%;right:4%;top:13%;height:15%;gap:1px;padding:5px 8px}
 .zw107 .zw107-goal-food{height:72%}
 .zw107 .zw107-goal-dots{gap:3px}
 .zw107 .zw107-goal-dots i{width:8px;height:8px}
 .zw107 .zw107-garden{top:29%;height:36%;left:2%;width:96%}
 .zw107 .zw107-basket-target{width:46%}
 .zw107 .zw107-friend{width:28%}
 .zw107 .zw107-tray{height:33%;bottom:.6%;border-width:4px;border-radius:35px}
 .zw107 .zw107-food-grid{padding:14px 7px}
 .zw107 .zw107-food-button{max-height:78px}
 #app:has(.zw107) .app-header button.zw-go-home{width:51px!important;min-width:51px!important;height:51px!important;border-width:3px!important}
}
@media (max-height:450px) and (orientation:landscape){
 .zw107 .zw107-title{height:13%}
 .zw107 .zw107-controls{top:1%}
 .zw107 button.zw107-roundbtn{width:49px;height:49px;padding:8px;border-width:3px}
 #app:has(.zw107) .app-header button.zw-go-home{width:52px!important;min-width:52px!important;height:52px!important;border-width:3px!important;padding:9px!important}
 .zw107 .zw107-order{top:12%;height:18%}
 .zw107 .zw107-garden{top:29%;height:43%}
 .zw107 .zw107-tray{height:29%}
 .zw107 .zw107-food-grid{padding:7px 11px}
}
@media (prefers-reduced-motion:reduce){
 .zw107 .zw107-friend{animation:none!important}
 .zw107 .zw107-particle{animation-duration:.5s!important}
 .zw107 .zw107-lid{transition-duration:.3s!important}
 .zw107.zw107-walk .zw107-garden{animation-duration:.6s!important}
}
/* Premium toddler QA corrections */
#app:has(.zw107) #zw95Restart{display:none!important}
.zw107::after{content:"";position:absolute;inset:0;z-index:110;pointer-events:none;background-image:url("/picnic-v107/paper-grain.webp");background-repeat:repeat;background-size:320px 320px;mix-blend-mode:multiply;opacity:.47}
.zw107 .zw107-garden::before{content:"";position:absolute;z-index:0;left:-4%;right:-4%;height:29%;bottom:-3%;border:5px solid #fff4df;border-radius:20% 26% 17% 20%;background:repeating-linear-gradient(90deg,transparent 0 19px,#da655f82 19px 37px,transparent 37px 55px),repeating-linear-gradient(0deg,#fff0dc 0 17px,#d65c548c 17px 36px,#fff0dc 36px 54px);box-shadow:0 5px 4px #57794955;transform:skewY(-3deg) scaleX(.88)}
.zw107 .zw107-garden>.zw107-friend,.zw107 .zw107-garden>.zw107-basket-target{z-index:1}
.zw107 .zw107-title svg,.zw107 .zw107-garden svg{filter:drop-shadow(0 0 1px #936f5580)}
@media (min-aspect-ratio:6/5){
 .zw107 .zw107-food-grid{padding:3px 13px!important}
 .zw107 .zw107-food-button{max-height:46px!important;width:min(100%,56px)!important}
 .zw107 .zw107-tray{height:31%!important}
}
@media (max-width:360px) and (orientation:portrait){
 .zw107 .zw107-food-grid{padding:8px 6px!important}
 .zw107 .zw107-food-button{max-height:51px!important;width:min(100%,58px)!important}
}
/* Keep the reward journey entirely on-screen, including on narrow iPhones. */
@keyframes zw107-travel{
  0%{transform:translateX(0) scale(1)}
  45%{transform:translateX(2%) translateY(-17px) scale(.82)}
  100%{transform:translateX(5%) translateY(7%) scale(.66)}
}
.zw107.zw107-arrived .zw107-garden{animation:none;transform:translateX(5%) translateY(7%) scale(.66)}
.zw107 .zw107-trip{right:10%;width:52%;top:42%}
@media (min-aspect-ratio:6/5){.zw107 .zw107-trip{right:12%;width:35%;top:38%}}
@media (max-width:400px) and (orientation:portrait){
 .zw107 .zw107-garden{left:5%;width:90%}
 .zw107 .zw107-basket-target{width:44%}
 .zw107 .zw107-friend{width:29%}
}

/* source: picnic-v108/upgrade.css */
/* ZÄHLWIESE 108 – visual master: approved home and finger-counting colored-pencil storybook.
All food, scenery, basket and controls use actual layered hand-drawn picture assets. */
#app .zw107.main-content{background:#79b9e1!important;isolation:isolate!important;overflow:hidden!important}
.zw107 .zw108-painting{position:absolute;inset:0;z-index:-1;pointer-events:none;background:url('/picnic-v108/meadow-portrait.webp') center center/100% 100% no-repeat!important}
.zw107:after{opacity:.09!important}
.zw107 .zw107-title{left:29%!important;top:1.2%!important;width:42%!important;height:10.8%!important;background:url('/picnic-v108/logo.webp') center/contain no-repeat!important;filter:drop-shadow(0 3px 2px #70452164)!important}
.zw107 .zw107-title svg{display:none!important}
#app:has(.zw107) .app-header button.zw-go-home{width:clamp(57px,9vw,80px)!important;min-width:clamp(57px,9vw,80px)!important;height:clamp(57px,9vw,80px)!important;border:none!important;box-shadow:none!important;outline:none!important;padding:0!important;background:transparent url('/picnic-v108/btn-home.webp') center/contain no-repeat!important;filter:drop-shadow(0 4px 3px #70482c68)}
#app:has(.zw107) .app-header button.zw-go-home svg{visibility:hidden!important}
#app:has(.zw107) .app-header .header-tools{top:7px!important;left:1.5%!important;max-width:82px!important}
.zw107 .zw107-controls{top:1.6%!important;right:1.5%!important;gap:7px!important}
.zw107 button.zw107-roundbtn{width:clamp(54px,9vw,78px)!important;height:clamp(54px,9vw,78px)!important;min-width:54px!important;min-height:54px!important;background-position:center!important;background-size:contain!important;background-repeat:no-repeat!important;background-color:transparent!important;border:none!important;border-radius:50%!important;padding:0!important;box-shadow:none!important;filter:drop-shadow(0 4px 3px #62493366)!important}
.zw107 button.zw107-roundbtn svg{display:none!important}
.zw107 button.zw107-help{background-image:url('/picnic-v108/btn-hint.webp')!important}
.zw107 button.zw107-restart{background-image:url('/picnic-v108/btn-restart.webp')!important}
.zw107 .zw107-order{top:12.5%!important;height:16.3%!important;left:5%!important;right:5%!important;padding:9px 10px!important;gap:3px!important;outline:none!important;border:clamp(4px,.8vw,9px) solid #bc8956!important;border-radius:35px 42px 35px 40px/23px 24px 26px 25px!important;background:#fff0ce url('/picnic-v108/paper-card.webp') center/100% 100% no-repeat!important;box-shadow:inset 0 0 0 3px #fce6b9,0 4px 0 #9e694999,0 6px 8px #65563a4b!important;transform:rotate(-.4deg)!important;overflow:visible!important}
.zw107 .zw107-order:before{content:"";position:absolute;inset:6px;border:2px dashed #d9a269;border-radius:29px 32px 29px 31px;pointer-events:none}
.zw107 .zw107-goal{position:relative;z-index:1;gap:1px!important;padding:0 2px;overflow:visible}
.zw107 .zw107-goal+.zw107-goal{border-left:2px dashed #d7aa7a!important}
.zw107 .zw107-goal-food{height:77%!important;overflow:visible!important}
.zw107 .zw107-goal-piece{height:100%!important;max-width:60px!important;filter:drop-shadow(1px 2px 1px #81572f55)!important}
.zw107 .zw107-goal-piece.done{filter:drop-shadow(0 0 5px #aad665)!important;transform:translateY(-3px) scale(.93)!important}
.zw107 .zw107-goal-dots{gap:6px}
.zw107 .zw107-goal-dots i{width:12px;height:12px;border-radius:50%;background:#ffefd1;border:2px solid #aa7a45}
.zw107 .zw107-goal-dots i.yes{background:#7eb25a;border-color:#60934b;box-shadow:0 0 5px #fef8c4}
.zw107 .zw107-garden{top:29%!important;left:4%!important;width:92%!important;height:37.5%!important;align-items:flex-end!important;z-index:6}
.zw107 .zw107-friend{height:97%!important;width:29%!important;display:flex!important;align-items:flex-end!important;filter:drop-shadow(0 3px 3px #4f612b82)!important;transform-origin:50% 90%}
.zw107 .zw108-character-img{display:block;width:115%;height:100%;min-width:0;object-fit:contain;object-position:center bottom;overflow:visible;filter:drop-shadow(0 1px 1px #ffecc4)}
.zw107 .zw107-igor .zw108-character-img{width:121%;max-width:none}
.zw107 .zw107-basket-target{width:43%!important;height:98%!important;touch-action:none!important;filter:drop-shadow(0 6px 3px #735b3488)!important}
.zw107 .zw107-basket-illustration{position:absolute;inset:0;overflow:visible}
.zw107 .zw108-basket-img{position:absolute;left:-6%;top:8%;width:112%;height:96%;object-fit:contain;filter:drop-shadow(0 2px 2px #71543a77)}
.zw107 .zw108-basket-lid-img{position:absolute;z-index:9;left:1%;top:13%;width:98%;height:47%;object-fit:contain;opacity:0;transform-origin:bottom center;transform:perspective(400px) rotateX(68deg) translateY(-15%);transition:opacity .4s ease,transform 1.1s cubic-bezier(.21,.72,.24,1),top 1.1s}
.zw107.zw107-win .zw108-basket-lid-img{opacity:1;transform:perspective(400px) rotateX(0deg) translateY(25%);top:38%}
.zw107 .zw107-basket-filled{z-index:8!important;top:47%!important;left:16%!important;width:68%!important;height:26%!important;inset:47% 16% 27%!important;gap:0!important;align-content:center}
.zw107 .zw107-collected{flex:0 0 21%;height:45%;max-height:48px;filter:drop-shadow(0 2px 1px #6548327d)}
.zw107.zw107-win .zw107-basket-filled{opacity:0;transition:opacity .6s}
.zw107 .zw107-collected img{object-fit:contain;display:block;width:100%;height:100%}
.zw107 .zw107-drop-halo{border:5px dashed #fff2aa!important;border-radius:40%!important}
.zw107 .zw107-garden:before{content:"";position:absolute;inset:auto 0 -2%;height:22%;z-index:0;border:6px solid #fdf0d7;border-radius:24% 24% 18% 19%;background:repeating-linear-gradient(90deg,transparent 0 14px,#d968627c 15px 32px,transparent 33px 47px),repeating-linear-gradient(0deg,#f8e9d4 0 14px,#d5655890 15px 32px,#f8e9d4 33px 48px);transform:rotate(-3deg);box-shadow:0 4px 4px #594f3161}
.zw107 .zw107-garden>.zw107-friend,.zw107 .zw107-garden>.zw107-basket-target{z-index:1}
.zw107 .zw107-tray{left:1.3%!important;right:1.3%!important;bottom:.6%!important;height:31.7%!important;border:6px solid #bd8158!important;border-radius:38px 42px 34px 36px!important;background:#f8e4c1 url('/picnic-v108/paper-tray.webp') center/100% 100% no-repeat!important;box-shadow:0 0 0 3px #e7ab8e,inset 0 0 0 3px #fff5dc,0 5px 6px #66553588!important}
.zw107 .zw107-tray:before{content:"";position:absolute;inset:9px;border:2px dashed #d6a17d;border-radius:30px;pointer-events:none}
.zw107 .zw107-food-grid{padding:16px 12px 12px!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-template-rows:repeat(3,minmax(0,1fr))!important;gap:2px 3px!important}
.zw107 .zw107-food-button{height:100%!important;width:100%!important;max-width:82px!important;max-height:none!important;cursor:grab;filter:drop-shadow(0 3px 1px #b58b6270)!important;touch-action:none!important}
.zw107 .zw107-food-button img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;pointer-events:none;user-select:none;-webkit-user-select:none;image-rendering:auto}
.zw107 .zw108-foodimg{width:100%!important;height:100%!important;object-fit:contain!important;filter:drop-shadow(1px 2px 1px #815d3778)}
.zw107 .zw107-goal-piece .zw108-foodimg{height:100%!important}
.zw107 .zw107-tray-seam{opacity:.11}
.zw107-ghost img{width:100%;height:100%;object-fit:contain}
.zw107 .zw107-trip-blanket{background:#fff0db url('/picnic-v108/plaid.webp') center/cover no-repeat!important;border:7px solid #fdf3d5!important;box-shadow:0 5px 7px #5b563479!important}
.zw107 .zw107-next{background-image:url('/picnic-v108/next.webp')!important;border:0!important}
.zw107 .zw107-next-wrap{top:50%!important;right:5%!important}
#app:has(.zw107) #zw95Restart{display:none!important}
@media (min-aspect-ratio:6/5){
 .zw107 .zw108-painting{background-image:url('/picnic-v108/meadow-landscape.webp')!important}
 .zw107 .zw107-title{left:34%!important;top:-1%!important;width:32%!important;height:15%!important}
 .zw107 .zw107-order{left:19%!important;right:19%!important;top:12.2%!important;height:18%!important;padding:3px 10px!important}
 .zw107 .zw107-garden{left:20%!important;width:60%!important;top:30%!important;height:40%!important}
 .zw107 .zw107-tray{left:1%!important;right:1%!important;height:29%!important;bottom:0!important;border-radius:28px!important}
 .zw107 .zw107-food-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important;grid-template-rows:repeat(2,minmax(0,1fr))!important;padding:5px 12px!important}
 .zw107 .zw107-food-button{width:100%!important;max-width:75px!important;max-height:100%!important}
 .zw107 .zw107-trip{right:10%;width:38%}
 #app:has(.zw107) .app-header button.zw-go-home{height:54px!important;width:54px!important;min-width:54px!important}
}
@media (max-width:400px) and (orientation:portrait){
 .zw107 .zw107-title{left:26%!important;width:48%!important;top:1.5%!important}
 .zw107 .zw107-controls{gap:2px!important;right:.5%!important;top:2.3%!important}
 .zw107 button.zw107-roundbtn{width:53px!important;height:53px!important;min-width:53px!important;min-height:53px!important}
 #app:has(.zw107) .app-header button.zw-go-home{width:53px!important;min-width:53px!important;height:53px!important}
 .zw107 .zw107-order{left:4%!important;right:4%!important;top:12%!important;height:16.5%!important;padding:6px 7px!important}
 .zw107 .zw107-goal-dots{gap:4px}
 .zw107 .zw107-goal-dots i{width:9px;height:9px}
 .zw107 .zw107-garden{left:1%!important;width:98%!important;top:29%!important;height:38%!important}
 .zw107 .zw107-friend{width:30%!important}
 .zw107 .zw107-basket-target{width:42%!important}
 .zw107 .zw107-tray{height:32.3%!important;bottom:.5%!important;border-width:4px!important}
 .zw107 .zw107-food-grid{padding:10px 6px!important}
 .zw107 .zw107-food-button{max-width:69px!important}
}
@media (max-height:450px) and (orientation:landscape){
 .zw107 .zw107-order{height:18%!important}
 .zw107 .zw107-garden{top:29%!important;height:42%!important}
 .zw107 .zw107-tray{height:28.6%!important}
 .zw107 .zw107-food-grid{padding:2px 13px!important}
 .zw107 .zw107-food-button{max-width:59px!important}
 .zw107 .zw107-title{height:13%!important}
 .zw107 button.zw107-roundbtn{height:51px!important;width:51px!important;min-width:51px!important;min-height:51px!important}
}
@media (prefers-reduced-motion:reduce){.zw107 .zw108-basket-lid-img{transition-duration:.3s!important}}

/* iPhone landscape regression: constrain each painted food to its own grid cell. */
.zw107 .zw107-food-button{position:relative!important;overflow:visible!important;box-sizing:border-box!important;min-height:0!important}
.zw107 .zw107-food-button img.zw108-foodimg{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;display:block!important}
.zw107 .zw107-goal-piece img.zw108-foodimg,.zw107 .zw107-collected img.zw108-foodimg{position:static!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important}


/* source: picnic-v109/upgrade.css */
/* ZÄHLWIESE v109 – illustrated character editions / toddler-friendly picnic polish */
.zw107 .zw109-character-stack{display:block;position:relative;width:126%;height:95%;pointer-events:none;transform:translateY(1%);filter:drop-shadow(0 3px 2px #59573566)}
.zw107 .zw109-character-stack img{position:absolute;left:0;bottom:0;width:100%;height:100%;object-fit:contain;object-position:center bottom;display:block;pointer-events:none;image-rendering:auto;transition:opacity .32s ease,transform .5s ease}
.zw107 .zw109-character-rest{opacity:1;transform:scale(1.08) translateY(4%)}
.zw107 .zw109-character-walk{opacity:0;transform:scale(.85) translateY(12%)}
.zw107.zw107-walk:not(.zw107-arrived) .zw109-character-rest{opacity:0;transform:scale(.9) translateY(9%)}
.zw107.zw107-walk:not(.zw107-arrived) .zw109-character-walk{opacity:1;transform:scale(1.04) translateY(1%)}
.zw107.zw107-arrived .zw109-character-rest{opacity:1;transform:scale(1.04) translateY(4%)}
.zw107.zw107-arrived .zw109-character-walk{opacity:0}
.zw107 .zw107-friend{pointer-events:auto!important;cursor:pointer!important;touch-action:manipulation!important;user-select:none!important;-webkit-user-select:none!important}
.zw107 .zw107-friend:focus-visible{outline:4px dashed #eac776;outline-offset:4px;border-radius:30px}
.zw107 .zw107-friend.zw109-joy .zw109-character-stack{animation:zw109-happy-dance 1.2s cubic-bezier(.28,.8,.39,1) 1!important}
@keyframes zw109-happy-dance{0%,100%{transform:translateY(1%) rotate(0)}18%{transform:translateY(-13%) rotate(-8deg)}40%{transform:translateY(0%) rotate(7deg)}60%{transform:translateY(-12%) rotate(-5deg)}82%{transform:translateY(-4%) rotate(4deg)}}
.zw107 .zw109-butterfly{position:absolute;z-index:3;pointer-events:none;user-select:none;object-fit:contain;width:clamp(24px,8vw,53px);height:auto;filter:drop-shadow(0 3px 3px #775c4873);will-change:transform}
.zw107 .zw109-butterfly-one{top:33%;right:8%;animation:zw109-flutter 9s ease-in-out infinite}
.zw107 .zw109-butterfly-two{top:55%;left:7%;width:clamp(18px,5vw,35px);animation:zw109-flutter 11s -3.1s ease-in-out infinite reverse}
@keyframes zw109-flutter{0%,100%{transform:translate(0,0) rotate(4deg)}25%{transform:translate(14px,-13px) rotate(-11deg)}50%{transform:translate(-8px,-24px) rotate(9deg)}75%{transform:translate(18px,-7px) rotate(3deg)}}
.zw107 .zw109-round-flowers{position:absolute;z-index:18;top:27.3%;left:50%;width:min(42%,220px);height:clamp(23px,3.4vw,33px);transform:translateX(-50%);display:flex;justify-content:center;align-items:center;gap:2px;pointer-events:none}
.zw107 .zw109-flower-stamp{width:20%;height:100%;min-width:0;opacity:.37;filter:grayscale(.6) drop-shadow(0 1px 1px #6951379e);transform:scale(.78);transition:opacity .4s,transform .4s,filter .4s}
.zw107 .zw109-flower-stamp.zw109-active{opacity:1;filter:drop-shadow(0 2px 2px #8e7453a0);transform:scale(1.03)}
.zw107 .zw109-flower-stamp img{display:block;width:100%;height:100%;object-fit:contain}
.zw107 .zw107-food-grid{gap:1px 3px!important}
.zw107 .zw107-food-button{overflow:visible!important;border:0!important;outline:0!important;background:transparent url('/picnic-v109/token-gold.webp') center / 100% 100% no-repeat!important;max-width:clamp(62px,23vw,110px)!important;max-height:124px!important;min-height:48px;filter:drop-shadow(0 3px 1px #69503c9c)!important;transform:translateZ(0)!important}
.zw107 .zw107-food-button:nth-child(4n+2){background-image:url('/picnic-v109/token-rose.webp')!important}
.zw107 .zw107-food-button:nth-child(4n+3){background-image:url('/picnic-v109/token-blue.webp')!important}
.zw107 .zw107-food-button:nth-child(4n+4){background-image:url('/picnic-v109/token-mint.webp')!important}
.zw107 .zw107-food-button img.zw108-foodimg{inset:13%!important;width:74%!important;height:74%!important;max-width:74%!important;max-height:74%!important;filter:drop-shadow(0 1px 2px #73553a7e)!important}
.zw107 .zw107-food-button:active{transform:scale(.91)!important;filter:drop-shadow(0 2px 1px #67513d99)!important}
.zw107 .zw107-food-button:focus-visible{outline:4px solid #f6d36b!important;outline-offset:-7px!important;border-radius:50%!important}
.zw107 .zw107-food-button.zw107-hintglow{animation:zw107-hint 1s ease-in-out 3!important}
.zw107 .zw107-food-grid:has(.zw107-food-button:nth-child(6):last-child){grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:repeat(2,minmax(0,1fr))!important}
.zw107 .zw107-food-grid:has(.zw107-food-button:nth-child(8):last-child){grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-template-rows:repeat(2,minmax(0,1fr))!important}
.zw107 .zw107-food-grid:has(.zw107-food-button:nth-child(10):last-child){grid-template-columns:repeat(5,minmax(0,1fr))!important;grid-template-rows:repeat(2,minmax(0,1fr))!important}
.zw107 .zw107-basket-filled{z-index:8!important;inset:36% 16% 33%!important;display:flex!important;gap:0;align-content:center;justify-content:center}
.zw107 .zw107-collected img{display:block!important;width:100%!important;height:100%!important;object-fit:contain}
.zw109-flying-food{position:fixed;pointer-events:none;width:62px;height:62px;z-index:100000;filter:drop-shadow(0 4px 4px #6e543b99);will-change:transform}
.zw109-flying-food img{width:100%!important;height:100%!important;object-fit:contain}
.zw107 .zw107-particle{clip-path:none!important;border:0!important;width:clamp(13px,2vw,22px)!important;height:clamp(13px,2vw,22px)!important;background:transparent url('/picnic-v109/star.webp') center/contain no-repeat!important}
.zw107 .zw107-particle.zw107-red{background-image:url('/picnic-v109/flower.webp')!important;filter:grayscale(.5)}
.zw107 .zw109-feast{position:absolute;top:59%;left:33%;width:40%;height:14%;z-index:16;display:flex;align-items:center;justify-content:center;gap:1%;pointer-events:none;opacity:0;transform:translateY(18px) scale(.65);transition:opacity .6s,transform 1s cubic-bezier(.3,1.1,.3,1)}
.zw107.zw109-feasting .zw109-feast{opacity:1;transform:translateY(0) scale(1)}
.zw107 .zw109-feast-food{width:30%;height:100%;display:block;filter:drop-shadow(0 4px 3px #5e4d3588)}
.zw107 .zw109-feast-food img{width:100%;height:100%;object-fit:contain}
.zw107 .zw107-order:has(.zw107-goal.completed) .zw107-goal.completed{filter:drop-shadow(0 0 3px #8bbe68)!important}
.zw107 .zw107-goal-piece.done img{filter:drop-shadow(0 0 2px #75ac45)}
.zw107 .zw107-basket-target.zw107-hover .zw108-basket-img{filter:drop-shadow(0 0 13px #fff2a5) drop-shadow(0 3px 3px #7b613f8a)}
@media (min-aspect-ratio:6/5){
 .zw107 .zw107-food-grid:has(.zw107-food-button:nth-child(6):last-child){grid-template-columns:repeat(6,minmax(0,1fr))!important;grid-template-rows:repeat(1,minmax(0,1fr))!important}
 .zw107 .zw107-food-grid:has(.zw107-food-button:nth-child(8):last-child){grid-template-columns:repeat(8,minmax(0,1fr))!important;grid-template-rows:repeat(1,minmax(0,1fr))!important}
 .zw107 .zw107-food-grid:has(.zw107-food-button:nth-child(10):last-child){grid-template-columns:repeat(5,minmax(0,1fr))!important;grid-template-rows:repeat(2,minmax(0,1fr))!important}
 .zw107 .zw107-food-button{max-width:clamp(52px,8.3vw,100px)!important;max-height:100%!important;min-height:44px!important}
 .zw107 .zw107-food-grid{padding:5px 9px!important}
 .zw107 .zw109-round-flowers{top:25.8%;left:50%;height:23px;width:160px}
 .zw107 .zw109-butterfly-one{right:17%;top:31%}
 .zw107 .zw109-butterfly-two{left:17%;top:51%}
 .zw107 .zw109-feast{top:53%;left:40%;width:24%;height:19%}
}
@media (max-width:400px) and (orientation:portrait){
 .zw107 .zw107-food-grid{padding:9px 8px!important}
 .zw107 .zw107-food-button{max-width:min(100%,103px)!important;max-height:112px!important;min-height:48px!important}
 .zw107 .zw109-round-flowers{top:27.2%;width:40%;height:24px}
 .zw107 .zw109-character-stack{width:138%;height:90%}
 .zw107 .zw109-feast{top:60%;left:32%;width:43%}
}
@media (max-height:450px) and (orientation:landscape){
 .zw107 .zw107-food-grid{padding:2px 7px!important}
 .zw107 .zw107-food-button{max-width:73px!important;max-height:90px!important;min-height:44px!important}
 .zw107 .zw109-character-stack{height:100%;width:128%}
}
@media (prefers-reduced-motion:reduce){.zw107 .zw109-butterfly{animation:none!important}.zw107 .zw109-character-stack{transition:none!important}}

/* V109 final layout: make the two newly illustrated characters genuine focal points. */
.zw107 .zw109-character-stack{flex:0 0 151%!important;width:151%!important;max-width:none!important;min-width:0!important;height:100%!important;flex-shrink:0!important;transform:translateY(-1%)!important}
.zw107 .zw109-character-rest{transform:scale(1.04) translateY(-2%)!important}
.zw107.zw107-arrived .zw109-character-rest{transform:scale(1.04) translateY(-2%)!important}
.zw107 .zw109-game-plaque{position:absolute;top:32.1%;left:30%;width:40%;height:7.3%;object-fit:contain;z-index:4;pointer-events:none;filter:drop-shadow(0 4px 3px #63452f64)}
@media (min-aspect-ratio:6/5){.zw107 .zw109-game-plaque{display:none!important}.zw107 .zw109-character-stack{width:141%!important;flex-basis:141%!important}}
@media (max-width:400px) and (orientation:portrait){.zw107 .zw109-character-stack{width:154%!important;flex-basis:154%!important}.zw107 .zw109-game-plaque{top:31.1%;left:28%;width:44%;height:7.5%}}

/* Reward scene: entirely new gingham fabric, no cropped copies of the protagonists. */
.zw107 .zw107-trip{position:absolute!important;z-index:2!important;left:17%!important;right:auto!important;top:58%!important;width:66%!important;height:15%!important;overflow:visible!important;opacity:0;transform:translateY(22px) scale(.8)!important;transition:opacity .8s,transform 1.1s}
.zw107.zw107-walk .zw107-trip{opacity:1!important;transform:translateY(0) scale(1)!important}
.zw107 .zw107-trip-blanket{position:absolute!important;inset:0!important;background:transparent url('/picnic-v109/blanket.webp') center/100% 100% no-repeat!important;border:none!important;border-radius:0!important;box-shadow:none!important;transform:none!important;filter:drop-shadow(0 4px 3px #4c5f3485)}
.zw107 .zw109-feast{top:59%!important;z-index:20!important}
@media (min-aspect-ratio:6/5){
 .zw107 .zw107-trip{top:53%!important;left:26%!important;width:48%!important;height:20%!important}
 .zw107 .zw109-feast{top:54%!important;left:39%!important;width:28%!important}
}

.zw107 .zw109-closed-basket{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;z-index:12;pointer-events:none;opacity:0;transform:translateY(-4%);transition:opacity .42s ease,transform .55s ease}
.zw107.zw107-win .zw109-closed-basket{opacity:1;transform:translateY(0);transition-delay:.74s}
.zw107.zw107-win .zw108-basket-img{opacity:0;transition:opacity .35s ease .74s}
.zw107.zw107-win .zw108-basket-lid-img{opacity:0!important;transition:opacity .3s ease .74s,transform .72s ease!important}

/* v116 native iOS Safari drag fix: the generic button rule forces manipulation,
   which was canceling pointer events as soon as children started swiping. */
#app .zw107 .zw107-food-button,
#app .zw107 .zw107-food-button img,
#app .zw107 .zw107-food-grid,
#app .zw107 .zw107-tray {
 touch-action:none!important;
 -webkit-user-select:none!important;
 user-select:none!important;
 -webkit-touch-callout:none!important;
}
#app .zw107 .zw107-food-button {
 cursor:grab!important;
 overscroll-behavior:contain!important;
}
#app .zw107 .zw107-food-button.zw107-lift{cursor:grabbing!important;}
#app .zw107 .zw107-basket-target{touch-action:none!important;z-index:9!important;}
/* Characters should be closer to the viewer than the basket, never behind it. */
#app .zw107 .zw107-moritz,
#app .zw107 .zw107-igor{z-index:18!important;isolation:isolate;}
#app .zw107 .zw107-garden>.zw107-friend{z-index:18!important;}
#app .zw107 .zw107-garden>.zw107-basket-target{z-index:9!important;}
/* The reward keeps the newly drawn versions of both characters. */
.zw107.zw107-walk:not(.zw107-arrived) .zw109-character-rest{opacity:0!important;}
.zw107.zw107-walk:not(.zw107-arrived) .zw109-character-walk{opacity:1!important;animation:zw116-picnic-step .8s ease-in-out infinite alternate!important;}
.zw107.zw107-arrived .zw109-character-walk{opacity:0!important;animation:none!important;}
.zw107.zw107-arrived .zw109-character-rest{opacity:1!important;}
@keyframes zw116-picnic-step {
 from{transform:translateY(2%) rotate(-3deg) scale(1.03)}
 to{transform:translateY(-7%) rotate(3deg) scale(1.03)}
}
/* Clear finished-order panels, avoiding translucent leftovers floating over reward artwork. */
.zw107.zw107-walk .zw107-order{opacity:0!important;visibility:hidden;transition:opacity .6s,visibility .7s!important;}
.zw107.zw107-walk .zw107-tray{opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:opacity .65s,transform 1s,visibility 1s!important;}
.zw107.zw107-walk .zw109-round-flowers{opacity:0;transition:opacity .5s;}
.zw107.zw107-walk .zw109-game-plaque{opacity:0;transition:opacity .5s;}
.zw107 .zw107-particle {pointer-events:none!important;}
/* Large mobile hit targets and clear stacking at all aspect ratios. */
@media (max-width:400px) and (orientation:portrait){
 #app .zw107 .zw107-moritz{margin-left:0!important;}
 #app .zw107 .zw107-igor{margin-right:0!important;}
}
@media (prefers-reduced-motion:reduce){
 .zw107.zw107-walk:not(.zw107-arrived) .zw109-character-walk{animation:none!important;}
}

/* v116: the reward must feature the same NEW characters at readable size. */
@keyframes zw116-walk-together{
  0%{transform:translateX(0) translateY(0) scale(1)}
  30%{transform:translateX(2%) translateY(-12px) scale(.97)}
  61%{transform:translateX(4%) translateY(2px) scale(.92)}
  100%{transform:translateX(5%) translateY(1%) scale(.87)}
}
.zw107.zw107-walk:not(.zw107-arrived) .zw107-garden{
 animation:zw116-walk-together 3s ease-in-out forwards!important;
}
.zw107.zw107-arrived .zw107-garden{
 animation:none!important;
 transform:translateX(5%) translateY(1%) scale(.87)!important;
}
.zw107.zw107-arrived .zw109-game-plaque{
 opacity:1!important;top:21.4%!important;left:25%!important;width:50%!important;height:8%!important;
 filter:drop-shadow(0 3px 4px #674b3270);
}
.zw107.zw107-arrived .zw109-feast{
 top:62%!important;left:24%!important;width:51%!important;height:13%!important;
}
@media (min-aspect-ratio:6/5){
 .zw107.zw107-arrived .zw109-game-plaque{display:none!important}
 .zw107.zw107-arrived .zw109-feast{top:56%!important;left:38%!important;width:26%!important;height:20%!important}
 .zw107.zw107-arrived .zw107-garden{transform:translateX(2%) translateY(1%) scale(.92)!important}
}


/* source: picnic-v117/reward.css */
/* ZÄHLWIESE v117 — ONE coherent reward scene, never layered copies */
.zw107 .zw107-trip{display:none!important}
.zw107 .zw109-feast{display:none!important}
.zw107.zw117-arrived .zw107-garden{
 opacity:0!important;visibility:hidden!important;pointer-events:none!important;
 animation:none!important;transition:opacity .3s ease,visibility .4s!important
}
.zw107.zw117-arrived .zw107-garden::before{display:none!important}
.zw107.zw117-arrived .zw109-round-flowers{opacity:0!important}
.zw107.zw117-arrived .zw107-order,
.zw107.zw117-arrived .zw107-tray{display:none!important}
.zw107 .zw117-reward{
 position:absolute;left:3%;top:39%;width:94%;height:37%;
 z-index:35;overflow:visible;pointer-events:none;
 opacity:0;transform:translateY(17px) scale(.94);
 transition:opacity .65s ease,transform .8s cubic-bezier(.25,.84,.27,1)
}
.zw107.zw117-arrived .zw117-reward{opacity:1;transform:none}
.zw107 .zw117-reward>img{position:absolute;display:block;object-fit:contain;pointer-events:none}
.zw107 .zw117-reward-blanket{
 z-index:1;left:2%;bottom:4%;width:96%;height:39%;object-fit:fill!important;
 filter:drop-shadow(0 6px 4px #65744e6e)
}
.zw107 .zw117-reward-friend{
 z-index:5;width:41%;height:79%;bottom:18%;
 filter:drop-shadow(0 3px 2px #67513e58)
}
.zw107 .zw117-reward-moritz{left:-2%;object-position:center bottom}
.zw107 .zw117-reward-igor{right:-2%;object-position:center bottom}
.zw107 .zw117-reward-basket{
 z-index:3;left:31%;width:38%;height:73%;bottom:25%;
 filter:drop-shadow(0 3px 3px #6b482d70)
}
.zw107 .zw117-reward-foods{
 position:absolute;z-index:8;bottom:10%;left:23%;width:54%;height:18%;
 display:flex;align-items:center;justify-content:center;gap:1%;
 pointer-events:none
}
.zw107 .zw117-reward-food{
 display:block;flex:0 1 20%;min-width:0;max-height:100%;height:100%;
 filter:drop-shadow(0 2px 2px #59453264)
}
.zw107 .zw117-reward-food img{display:block;width:100%;height:100%;object-fit:contain}
.zw107.zw117-arrived .zw107-next-wrap{top:79%!important;right:10%!important;z-index:70!important}
@media(min-aspect-ratio:6/5){
 .zw107 .zw117-reward{left:23%;top:31%;width:54%;height:47%}
 .zw107 .zw117-reward-friend{width:41%;height:84%;bottom:12%}
 .zw107 .zw117-reward-basket{width:40%;left:30%;height:74%;bottom:24%}
 .zw107 .zw117-reward-blanket{height:44%;bottom:2%}
 .zw107 .zw117-reward-foods{bottom:8%;left:23%;width:54%;height:21%}
 .zw107.zw117-arrived .zw107-next-wrap{top:72%!important;right:9%!important}
}
@media(max-width:360px) and (orientation:portrait){
 .zw107 .zw117-reward{left:2%;top:40%;width:96%;height:35%}
 .zw107 .zw117-reward-friend{width:40%}
 .zw107 .zw117-reward-basket{width:40%;left:30%}
}
@media(prefers-reduced-motion:reduce){
 .zw107 .zw117-reward{transition:none!important}
}

/* Eliminate the accidental food illustration used as the Next button. */
#app .zw107 .zw107-next{
 background-image:url('/picnic-v117/next-arrow.webp')!important;
 background-size:contain!important;
 border:0!important;outline:0!important;
 width:clamp(65px,14vw,81px)!important;
 height:clamp(65px,14vw,81px)!important;
 min-width:65px!important;min-height:65px!important;
}
#app .zw107 .zw107-next:focus-visible{
 outline:4px solid #fff2a9!important;outline-offset:3px!important;
}

/* Feathered pencil meadow eliminates rectangular cutout seams in reward and gameplay. */
#app .zw107 .zw108-painting{
 background-image:url('/picnic-v117/meadow-seamless-portrait.webp')!important;
 background-position:center center!important;
 background-size:100% 100%!important;
}
@media(min-aspect-ratio:6/5){
 #app .zw107 .zw108-painting{
  background-image:url('/picnic-v117/meadow-seamless-landscape.webp')!important;
 }
}

/* v117 final QA: no stacked picnic blankets at any point. */
.zw107.zw117-arrived .zw107-garden,
.zw107.zw117-arrived .zw107-trip,
.zw107.zw117-arrived .zw109-feast{
  display:none!important;visibility:hidden!important;opacity:0!important;
  animation:none!important;transition:none!important;
}
.zw107.zw107-walk:not(.zw117-arrived) .zw107-garden::before{
  display:none!important;
}
.zw107.zw117-arrived .zw117-reward{
  z-index:40!important;
  opacity:1;transform:none;
  animation:zw117-reward-enter .7s ease-out both!important;
}
@keyframes zw117-reward-enter{
 from{opacity:0;transform:translateY(10px) scale(.96)}
 to{opacity:1;transform:translateY(0) scale(1)}
}
/* Replaces previously accidental next-button image (orange juice + milk). */
#app .zw107 .zw107-next{
 background-image:url('/picnic-v117/next-arrow.webp')!important;
 background-color:transparent!important;background-position:center!important;
 background-size:contain!important;background-repeat:no-repeat!important;
 width:clamp(59px,11vw,77px)!important;height:clamp(59px,11vw,77px)!important;
 min-width:59px!important;min-height:59px!important;
 border:0!important;border-radius:50%!important;
 box-shadow:none!important;filter:drop-shadow(0 4px 3px #5e633e7c)!important;
 opacity:1!important;
}
#app .zw107.zw117-arrived .zw107-next-wrap{
 top:auto!important;bottom:16%!important;right:7%!important;
 pointer-events:auto!important;z-index:80!important;opacity:1!important;
}
#app .zw107.zw117-arrived .zw107-next:focus-visible{
 outline:4px solid #f9df7b!important;outline-offset:3px!important;
}
@media (min-aspect-ratio:6/5){
 #app .zw107.zw117-arrived .zw107-next-wrap{
  top:45%!important;bottom:auto!important;right:9%!important;
 }
}
@media (prefers-reduced-motion:reduce){
 .zw107.zw117-arrived .zw117-reward{animation:none!important}
}


/* source: picnic-v118/upgrade.css */
/* Picknick v118: complete illustrated icons and the storybook reward */
#app .zw107 .zw107-controls{
 top:max(9px,2.1%)!important;right:1.4%!important;gap:clamp(4px,1vw,9px)!important;
 overflow:visible!important;z-index:70!important;
}
#app .zw107 .zw107-controls .zw107-help,
#app .zw107 .zw107-controls .zw107-restart{
 width:clamp(53px,9vw,79px)!important;
 height:clamp(53px,9vw,79px)!important;
 min-width:53px!important;min-height:53px!important;
 background-size:100% 100%!important;background-position:center!important;
 background-repeat:no-repeat!important;overflow:visible!important;
 filter:drop-shadow(0 3px 2px #614c3580)!important;
 border:none!important;border-radius:50%!important;padding:0!important;
}
#app .zw107 .zw107-help{background-image:url('/picnic-v118/btn-hint.webp')!important}
#app .zw107 .zw107-restart{background-image:url('/picnic-v118/btn-restart.webp')!important}
#app .zw107 .zw107-food-button img.zw118-fullfood{
 position:absolute!important;
 inset:5%!important;
 width:90%!important;height:90%!important;
 max-width:90%!important;max-height:90%!important;
 object-fit:contain!important;
 display:block!important;
 overflow:visible!important;
 pointer-events:none!important;
 user-select:none!important;-webkit-user-select:none!important;
 filter:drop-shadow(0 2px 1px #73553a7e)!important;
}
#app .zw107 .zw107-goal-piece img.zw118-fullfood,
#app .zw107 .zw107-collected img.zw118-fullfood,
#app .zw107 .zw117-reward-food img.zw118-fullfood,
#app .zw107 .zw109-feast-food img.zw118-fullfood {
 position:static!important;
 inset:auto!important;
 width:100%!important;height:100%!important;
 max-width:100%!important;max-height:100%!important;
 object-fit:contain!important;overflow:visible!important;
}
#app .zw107 .zw107-food-button{
 overflow:visible!important;
 padding:0!important;
 -webkit-user-select:none!important;
 user-select:none!important;
 touch-action:none!important;
}
#app .zw107 .zw107-tray,
#app .zw107 .zw107-food-grid{overflow:visible!important}
#app .zw107 .zw107-tray{clip-path:inset(-3px round 34px)!important}
.zw107 .zw118-celebration{
 position:absolute;inset:0;z-index:65;pointer-events:none!important;
 overflow:hidden!important;isolation:isolate;
}
.zw107 .zw118-celebration>*{position:absolute;pointer-events:none!important;display:block}
.zw107 .zw118-confetti{
 left:var(--x);top:var(--y);
 width:clamp(8px,1.2vw,14px);height:clamp(13px,2vw,20px);
 background:var(--color);
 opacity:0;
 border-radius:2px 5px 1px 4px;
 box-shadow:inset 1px 1px 1px #fff9df99;
 animation:zw118-confetti-fall var(--duration) var(--delay) ease-out both;
}
@keyframes zw118-confetti-fall{
 0%{opacity:0;transform:translate3d(0,-115px,0) rotate(0) scale(.7)}
 14%{opacity:1}
 85%{opacity:1}
 100%{opacity:0;transform:translate3d(var(--dx),var(--fall),0) rotate(var(--rot)) scale(.75)}
}
.zw107 .zw118-heart{
 width:clamp(25px,6vw,49px);height:auto;
 left:var(--x);bottom:18%;
 opacity:0;
 filter:drop-shadow(0 2px 1px #744e5566);
 animation:zw118-heart-float var(--duration) var(--delay) ease-out both;
}
@keyframes zw118-heart-float{
 0%{opacity:0;transform:translate3d(0,30px,0) scale(.35) rotate(-12deg)}
 17%{opacity:1}
 70%{opacity:.97}
 100%{opacity:0;transform:translate3d(var(--sway),-295px,0) scale(var(--scale)) rotate(11deg)}
}
.zw107 .zw118-balloon{
 width:clamp(37px,8vw,67px);height:auto;object-fit:contain;
 left:var(--x);bottom:2%;
 opacity:0;
 filter:hue-rotate(var(--hue)) drop-shadow(0 2px 2px #65514944);
 animation:zw118-balloon-rise var(--duration) var(--delay) ease-in-out both;
}
@keyframes zw118-balloon-rise{
 0%{opacity:0;transform:translate3d(0,90px,0) rotate(-8deg)}
 12%{opacity:1}
 85%{opacity:1}
 100%{opacity:0;transform:translate3d(var(--sway),-460px,0) rotate(8deg)}
}
@media(min-aspect-ratio:6/5){
 .zw107 .zw118-heart{bottom:9%!important}
 .zw107 .zw118-balloon{bottom:-9%!important;width:clamp(30px,5vw,49px)!important}
 @keyframes zw118-balloon-rise{
 0%{opacity:0;transform:translate3d(0,75px,0)}
 13%{opacity:1}82%{opacity:1}
 100%{opacity:0;transform:translate3d(var(--sway),-320px,0)}
 }
}
@media(prefers-reduced-motion:reduce){
 .zw107 .zw118-celebration>*{animation:none!important;opacity:1!important}
 .zw107 .zw118-confetti{opacity:.95!important}
 .zw107 .zw118-heart{bottom:34%!important}
 .zw107 .zw118-balloon{bottom:44%!important}
}

/* v118.1: celebration graphics start above the picnic blanket, not below viewport. */
.zw107 .zw118-balloon{bottom:20%!important;width:clamp(42px,10vw,73px)!important}
.zw107 .zw118-heart{bottom:30%!important;width:clamp(30px,7.5vw,60px)!important}
.zw107 .zw118-confetti{width:clamp(10px,1.6vw,16px)!important;height:clamp(15px,2.3vw,24px)!important}
@keyframes zw118-confetti-fall{
 0%{opacity:0;transform:translate3d(0,-45px,0) rotate(0deg) scale(.8)}
 12%{opacity:1}
 78%{opacity:1}
 100%{opacity:0;transform:translate3d(var(--dx),var(--fall),0) rotate(var(--rot)) scale(.75)}
}
@keyframes zw118-heart-float{
 0%{opacity:0;transform:translate3d(0,18px,0) scale(.5) rotate(-8deg)}
 10%{opacity:1}
 76%{opacity:1}
 100%{opacity:0;transform:translate3d(var(--sway),-290px,0) scale(var(--scale)) rotate(12deg)}
}
@keyframes zw118-balloon-rise{
 0%{opacity:0;transform:translate3d(0,35px,0) rotate(-7deg)}
 11%{opacity:1}
 84%{opacity:1}
 100%{opacity:0;transform:translate3d(var(--sway),-420px,0) rotate(8deg)}
}
@media(min-aspect-ratio:6/5){
 .zw107 .zw118-balloon{bottom:13%!important;width:clamp(31px,6vw,54px)!important}
 .zw107 .zw118-heart{bottom:20%!important;width:clamp(24px,5vw,45px)!important}
 @keyframes zw118-balloon-rise{
 0%{opacity:0;transform:translate3d(0,28px,0)}
 11%{opacity:1}84%{opacity:1}
 100%{opacity:0;transform:translate3d(var(--sway),-300px,0)}
 }
}


/* source: picnic-v120/cleanup.css */
/* Zählwiese Picknick v120: actual alpha-transparent, handpainted round food tokens.
   No rectangles from the previous image crops. Reuses common game celebration. */
#app .zw107 .zw107-food-button{
 background: transparent url('/picnic-v120/token-gold.webp') center center / contain no-repeat!important;
 background-color:transparent!important;
 border:none!important;
 overflow:visible!important;
 box-shadow:none!important;
 outline-offset:-2px!important;
 padding:0!important;
 min-width:0!important;
 min-height:0!important;
 aspect-ratio:1 / 1;
 max-height:100%!important;
 touch-action:none!important;
 user-select:none!important;
 -webkit-user-select:none!important;
 -webkit-touch-callout:none!important;
}
#app .zw107 .zw107-food-button:nth-child(4n+2){
 background-image:url('/picnic-v120/token-rose.webp')!important;
}
#app .zw107 .zw107-food-button:nth-child(4n+3){
 background-image:url('/picnic-v120/token-blue.webp')!important;
}
#app .zw107 .zw107-food-button:nth-child(4n+4){
 background-image:url('/picnic-v120/token-mint.webp')!important;
}
#app .zw107 .zw107-food-button img.zw118-fullfood{
 display:block!important;
 position:absolute!important;
 inset:12%!important;
 width:76%!important;
 height:76%!important;
 max-width:76%!important;
 max-height:76%!important;
 object-fit:contain!important;
 object-position:center center!important;
 border:0!important;
 border-radius:0!important;
 background:transparent!important;
 box-shadow:none!important;
 filter:drop-shadow(0 1px 1px #634c3254)!important;
 pointer-events:none!important;
}
#app .zw107 .zw107-food-grid{
 align-items:center!important;
 justify-items:center!important;
 overflow:visible!important;
}
#app .zw107 .zw107-goal-piece img.zw118-fullfood,
#app .zw107 .zw107-collected img.zw118-fullfood,
#app .zw107 .zw117-reward-food img.zw118-fullfood{
 position:static!important;
 inset:auto!important;
 width:100%!important;
 height:100%!important;
 max-width:100%!important;
 max-height:100%!important;
 object-fit:contain!important;
}
#app .zw107 .zw107-food-button.zw107-hintglow{
 animation:zw107-hint 1s ease-in-out 2!important;
}
@media (max-width:400px) and (orientation:portrait){
 #app .zw107 .zw107-food-grid{gap:1px 4px!important}
 #app .zw107 .zw107-food-button{width:min(100%,95px)!important;max-width:95px!important}
}
@media (min-aspect-ratio:6/5){
 #app .zw107 .zw107-food-button{height:100%!important;aspect-ratio:1/1!important;max-width:min(100%,75px)!important}
}


/* source: picnic-v122/meadow.css */
/* Zählwiese Picknick v122 — one complete storybook meadow.
   Removes the four separately pasted scenery cutouts from the previous wallpaper. */
#app .zw107.main-content .zw108-painting{
 position:absolute!important;
 inset:0!important;
 z-index:-1!important;
 pointer-events:none!important;
 background-image:url('/picnic-v122/meadow-portrait.webp')!important;
 background-position:center center!important;
 background-size:100% 100%!important;
 background-repeat:no-repeat!important;
}
#app .zw107 .zw109-butterfly{
 display:none!important;
}
@media (min-aspect-ratio:6/5){
 #app .zw107.main-content .zw108-painting{
  background-image:url('/picnic-v122/meadow-landscape.webp')!important;
  background-position:center center!important;
  background-size:100% 100%!important;
 }
}


/* source: home-v123/home.css */
/* Zählwiese v123 — newly composed pencil-illustrated homepage.
   9 real games; accessible finger-sized buttons; animated articulated seesaw.
   Independent from legacy zw80/zw108 styling, preserves user-approved drawings. */
html:has(.zw123-home),body:has(.zw123-home){
 margin:0!important;padding:0!important;width:100%!important;height:100dvh!important;
 overflow:hidden!important;overscroll-behavior:none!important;
}
#app:has(>.zw123-home){
 position:relative!important;isolation:isolate!important;
 box-sizing:border-box!important;width:100%!important;max-width:none!important;
 height:100dvh!important;max-height:100dvh!important;min-height:100dvh!important;
 padding:0!important;margin:0!important;overflow:hidden!important;
 border:0!important;border-radius:0!important;
 background:#99ca89!important;box-shadow:none!important;transform:none!important;
}
#app:has(>.zw123-home)::before,#app:has(>.zw123-home)::after{display:none!important}
#app>.zw123-home,#app>.zw123-home *{box-sizing:border-box}
#app>.zw123-home{
 --zw123-paper:#f7e8c3;
 position:absolute!important;inset:0!important;display:block!important;
 width:100%!important;height:100%!important;
 padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px)
         env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px)!important;
 overflow:hidden!important;
 background:#b8dfdf url('/home-v123/background-portrait.webp') center/100% 100% no-repeat!important;
 user-select:none!important;-webkit-user-select:none!important;-webkit-touch-callout:none!important;
}
#app>.zw123-home img{
 display:block;object-fit:contain;pointer-events:none;-webkit-user-drag:none;
 user-select:none;-webkit-user-select:none;
}
#app .zw123-home button{
 -webkit-tap-highlight-color:transparent;touch-action:manipulation;cursor:pointer;
}
#app .zw123-home button:focus-visible{
 outline:4px solid #ffe38c!important;outline-offset:3px!important;
}
#app .zw123-home .zw123-scene{
 display:grid!important;
 grid-template-rows:minmax(0,40%) minmax(0,54%) minmax(0,6%)!important;
 grid-template-columns:minmax(0,1fr)!important;
 align-items:stretch!important;justify-items:center!important;
 position:relative!important;width:100%!important;height:100%!important;min-height:0!important;
 gap:0!important;margin:0 auto!important;padding:0 clamp(3px,.9vw,15px)!important;
 max-width:730px;
}
#app .zw123-home .zw123-hero{
 position:relative!important;grid-row:1;grid-column:1;overflow:visible!important;
 width:100%!important;height:100%!important;isolation:isolate!important;
}
#app .zw123-home .zw123-title{
 position:absolute;z-index:7;top:0.2%;left:13%;width:77%;height:33%;
 object-fit:contain!important;
 filter:drop-shadow(0 3px 3px #74603d58);
 animation:zw123-title-arrive .8s ease-out both;
}
#app .zw123-home .zw123-settings{
 all:unset;box-sizing:border-box;position:absolute!important;z-index:22;
 left:max(7px,1%);top:max(7px,1.3%);
 width:clamp(56px,13.8vw,77px)!important;height:clamp(56px,13.8vw,77px)!important;
 background:transparent!important;border:0!important;border-radius:50%!important;
 filter:drop-shadow(0 3px 2px #6f522e7b)!important;
 cursor:pointer!important;
}
#app .zw123-home .zw123-settings img{
 display:block;width:100%;height:100%;object-fit:contain;
}
#app .zw123-home .zw123-playground{
 position:absolute;left:5%;top:25%;width:90%;height:74%;
 isolation:isolate;
}
#app .zw123-home .zw123-stand{
 position:absolute;z-index:3;left:45%;top:48%;width:11%;height:45%;
 object-fit:contain!important;object-position:bottom center!important;
 filter:drop-shadow(0 5px 3px #4b58375d);
}
#app .zw123-home .zw123-seesaw{
 all:unset;box-sizing:border-box;position:absolute!important;z-index:8;inset:0;
 border:0!important;border-radius:24%!important;background:transparent!important;
 cursor:pointer!important;touch-action:manipulation!important;
}
#app .zw123-home .zw123-lever{
 position:absolute;z-index:4;inset:0;display:block;
 transform-origin:50% 66%;transform:rotate(-4deg);
 animation:zw123-gentle 5.5s ease-in-out infinite;
 will-change:transform;
}
#app .zw123-home .zw123-beam{
 position:absolute;left:3%;top:62%;width:94%;height:15%;
 object-fit:fill!important;filter:drop-shadow(0 3px 2px #564b356b);
}
#app .zw123-home .zw123-moritz{
 position:absolute;left:3%;top:4%;width:41%;height:68%;z-index:6;
 object-fit:contain!important;object-position:bottom center!important;
 filter:drop-shadow(0 2px 2px #5f513740);
}
#app .zw123-home .zw123-igor{
 position:absolute;right:2%;top:8%;width:40%;height:66%;z-index:6;
 object-fit:contain!important;object-position:bottom center!important;
 filter:drop-shadow(0 2px 2px #5f513740);
}
#app .zw123-home .zw123-pivot{
 position:absolute;z-index:12;left:46.5%;top:62%;width:7%;height:13%;
 object-fit:contain!important;pointer-events:none;
 filter:drop-shadow(0 2px 2px #75583876);
}
#app .zw123-home .zw123-seesaw.zw-seesaw-tapped .zw123-lever{
 animation:zw123-ride 3.7s cubic-bezier(.35,.57,.25,.95) both!important;
}
#app .zw123-home .zw123-seesaw:active .zw123-lever{filter:brightness(1.03)}
#app .zw123-home .zw123-joy{
 position:absolute;inset:-10% -5%;z-index:19;pointer-events:none;overflow:visible;
}
#app .zw123-home .zw123-joy-particle{
 position:absolute;display:block;width:var(--size,16px);height:var(--size,16px);
 left:var(--x);top:var(--y);
 background-size:contain;background-repeat:no-repeat;background-position:center;
 opacity:0;pointer-events:none;
 animation:zw123-celebrate var(--dur,3.6s) ease-out var(--delay,0s) both;
 filter:drop-shadow(0 2px 1px #66503653);
}
#app .zw123-home .zw123-joy-particle.heart{background-image:url('/animal-feeding-v85/heart.webp')}
#app .zw123-home .zw123-joy-particle.balloon{background-image:url('/storybook-games-v91/balloon-rose.webp')}
#app .zw123-home .zw123-joy-particle.star{background-image:url('/picnic-v109/star.webp')}
#app .zw123-home .zw123-board{
 grid-row:2;grid-column:1;position:relative;overflow:visible;
 width:100%;height:100%;min-height:0;
 background:transparent url('/home-v123/game-board.webp') center/100% 100% no-repeat;
 padding:3.8% 4.4% 3.2%;margin:0;
}
#app .zw123-home .zw123-grid{
 display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
 grid-template-rows:repeat(3,minmax(0,1fr));
 column-gap:1.4%;row-gap:1.6%;
 align-items:center;justify-items:center;
 width:100%;height:100%;min-height:0;min-width:0;
}
#app .zw123-home .zw123-tile{
 all:unset;box-sizing:border-box;position:relative;
 display:flex;align-items:center;justify-content:center;
 width:100%;height:100%;min-height:0;min-width:0;
 margin:0;padding:0;background:transparent!important;
 border:0!important;border-radius:28%!important;
 cursor:pointer;touch-action:manipulation!important;
 opacity:1;animation:zw123-tile-appear .54s cubic-bezier(.2,.9,.3,1) both;
 animation-delay:calc(var(--idx)*55ms);
 transition:filter .18s ease,transform .18s cubic-bezier(.2,.85,.3,1)!important;
}
#app .zw123-home .zw123-tile img{
 width:100%;height:100%;
 max-width:100%;max-height:100%;
 object-fit:contain!important;
 filter:drop-shadow(0 3px 2px #6c51356b);
}
#app .zw123-home .zw123-tile:active{
 transform:translateY(3px) rotate(-3deg) scale(.88)!important;
 filter:brightness(1.07)!important;
}
@media(hover:hover){
 #app .zw123-home .zw123-tile:hover{
  transform:translateY(-4px) rotate(1deg) scale(1.045);
  filter:saturate(1.1);
 }
}
#app .zw123-home .zw123-footer{
 grid-row:3;grid-column:1;display:flex;justify-content:center;align-items:center;
 width:100%;height:100%;padding:0 12%;
}
#app .zw123-home .zw123-footer img{
 width:min(100%,365px);height:85%;object-fit:contain;
 filter:drop-shadow(0 2px 2px #64492f5e);
}
#app .zw123-home .zw123-sr{
 position:absolute!important;width:1px!important;height:1px!important;
 padding:0!important;margin:-1px!important;overflow:hidden!important;
 clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;
}
@keyframes zw123-gentle{
 0%,100%{transform:rotate(-3deg)}
 50%{transform:rotate(2deg)}
}
@keyframes zw123-ride{
 0%{transform:rotate(-3deg)}
 15%{transform:rotate(11deg)}
 31%{transform:rotate(-11deg)}
 48%{transform:rotate(10deg)}
 64%{transform:rotate(-8deg)}
 83%{transform:rotate(5deg)}
 100%{transform:rotate(-3deg)}
}
@keyframes zw123-tile-appear{
 0%{opacity:0;transform:translateY(13px) scale(.87)}
 75%{opacity:1;transform:translateY(-2px) scale(1.025)}
 100%{opacity:1;transform:translateY(0) scale(1)}
}
@keyframes zw123-title-arrive{
 from{opacity:0;transform:translateY(-12px) scale(.96)}
 to{opacity:1;transform:none}
}
@keyframes zw123-celebrate{
 0%{opacity:0;transform:translate(0,18px) rotate(-9deg) scale(.5)}
 14%{opacity:1}
 75%{opacity:.95}
 100%{opacity:0;transform:translate(var(--dx,0px),var(--dy,-100px)) rotate(var(--rotate,15deg)) scale(1.05)}
}
@media (orientation:portrait) and (max-height:650px){
 #app .zw123-home .zw123-scene{grid-template-rows:minmax(0,37%) minmax(0,57%) minmax(0,6%)!important}
 #app .zw123-home .zw123-settings{width:clamp(50px,12vw,60px)!important;height:clamp(50px,12vw,60px)!important}
 #app .zw123-home .zw123-title{height:31%}
}
@media (orientation:portrait) and (max-width:355px){
 #app .zw123-home .zw123-scene{grid-template-rows:minmax(0,38%) minmax(0,56%) minmax(0,6%)!important}
 #app .zw123-home .zw123-board{padding:4.2% 4.1% 3.4%}
 #app .zw123-home .zw123-grid{gap:.9% .6%}
 #app .zw123-home .zw123-title{left:13%;width:83%}
 #app .zw123-home .zw123-playground{left:1%;width:98%}
}
@media (orientation:landscape){
 #app>.zw123-home{background-image:url('/home-v123/background-landscape.webp')!important}
 #app .zw123-home .zw123-scene{
  display:grid!important;width:100%!important;max-width:1440px!important;
  grid-template-columns:minmax(0,47%) minmax(0,53%)!important;
  grid-template-rows:minmax(0,91%) minmax(0,9%)!important;
  gap:0!important;padding:0 clamp(5px,1vw,20px)!important;
 }
 #app .zw123-home .zw123-hero{
  grid-column:1;grid-row:1;width:100%;height:100%;
 }
 #app .zw123-home .zw123-title{
  left:17%;top:1%;width:76%;height:29%;
 }
 #app .zw123-home .zw123-settings{
  left:max(4px,1%);top:max(4px,1%);
  width:clamp(44px,12vh,67px)!important;height:clamp(44px,12vh,67px)!important;
 }
 #app .zw123-home .zw123-playground{
  top:29%;height:69%;left:1%;width:98%;
 }
 #app .zw123-home .zw123-board{
  grid-column:2;grid-row:1;width:100%;height:100%;
  padding:2.9% 3.9% 2.8%;
 }
 #app .zw123-home .zw123-grid{
  gap:1% .6%;
 }
 #app .zw123-home .zw123-footer{
  grid-column:1/3;grid-row:2;width:100%;height:100%;
 }
 #app .zw123-home .zw123-footer img{height:92%;width:min(46%,310px)}
}
@media (prefers-reduced-motion:reduce){
 #app .zw123-home .zw123-lever{animation:none!important;transform:rotate(-2deg)!important}
 #app .zw123-home .zw123-seesaw.zw-seesaw-tapped .zw123-lever{animation:zw123-ride 5.5s ease-in-out 1!important}
 #app .zw123-home .zw123-tile,#app .zw123-home .zw123-title{animation:none!important}
 #app .zw123-home .zw123-joy-particle{animation-duration:.85s!important}
}


/* source: home-v123/final-polish.css */
/* Final v124 visual polish for the approved V123 rebuilt home */
#app .zw123-home .zw123-stand{
 top:34%!important;
 height:45%!important;
}
/* Make individual hand-painted game buttons tactile and gently alive. */
#app .zw123-home .zw123-tile{
 transition:transform .22s cubic-bezier(.2,.84,.28,1),filter .2s ease!important;
}
#app .zw123-home .zw123-tile img{
 animation:zw124-tile-breathe 6.7s ease-in-out infinite!important;
 animation-delay:calc(var(--idx) * -.61s)!important;
 will-change:transform;
}
#app .zw123-home .zw123-tile:active img{
 animation:none!important;
 transform:scale(.91) translateY(3px)!important;
 filter:drop-shadow(0 1px 1px #84684c88)!important;
}
@keyframes zw124-tile-breathe{
 0%,100%{transform:translateY(0px) rotate(0deg) scale(1)}
 46%{transform:translateY(-2px) rotate(-.55deg) scale(1.02)}
 75%{transform:translateY(0px) rotate(.4deg) scale(1.007)}
}
@media(orientation:landscape){
 #app .zw123-home .zw123-stand{top:34%!important}
}
@media(prefers-reduced-motion:reduce){
 #app .zw123-home .zw123-tile img{animation:none!important;will-change:auto!important}
}

/* Restore full approved Moritz/Igor, red seats and the hand-painted beam.
   A separately cutout foundation stays still while the upper see-saw rocks. */
#app .zw123-home .zw123-playground .zw123-master-stand{
 position:absolute!important;inset:0!important;
 width:100%!important;height:100%!important;
 z-index:3!important;object-fit:contain!important;
 object-position:center center!important;
 pointer-events:none!important;
 filter:drop-shadow(0 3px 2px #645b3e4c)!important;
}
#app .zw123-home .zw123-playground .zw123-master-top{
 position:absolute!important;inset:0!important;
 width:100%!important;height:100%!important;
 z-index:5!important;object-fit:contain!important;
 object-position:center center!important;
 pointer-events:none!important;
 filter:drop-shadow(0 3px 2px #66553e6c)!important;
}
#app .zw123-home .zw123-lever{
 transform-origin:50% 72%!important;
}


/* source: home-v125/start.css */
/* Zählwiese start V125 — matching the approved hand-drawn park reference.
   Graphics remain independent game links; only homepage illustration/layout changes. */
#app>.zw123-home{
  background:#8fcbdc url('/home-v125/playground-portrait.webp') center center/100% 100% no-repeat!important;
}
#app .zw123-home .zw123-board{
  background-image:url('/home-v125/game-board-golden.webp')!important;
  filter:drop-shadow(0 5px 3px #70472e5b)!important;
}
#app .zw123-home .zw123-settings{
  left:auto!important;right:max(10px,2%)!important;top:max(12px,2.2%)!important;
  z-index:28!important;width:clamp(60px,14vw,81px)!important;
  height:clamp(60px,14vw,81px)!important;
  border-radius:50%!important;
  filter:drop-shadow(0 4px 3px #7957398c)!important;
}
#app .zw123-home .zw123-title{
  left:14%!important;width:72%!important;height:32%!important;
}
#app .zw123-home .zw123-tile{
  isolation:isolate!important;overflow:visible!important;position:relative!important;
  border-radius:50% 50% 22% 22%!important;
}
#app .zw123-home .zw123-tile::after{
  content:""!important;
  position:absolute!important;
  display:block!important;
  width:103%!important;
  height:76%!important;
  top:-.7%!important;
  left:-1.5%!important;
  z-index:5!important;
  background:transparent url('/home-v125/ring-red.webp') center center/100% 100% no-repeat!important;
  pointer-events:none!important;
  transform:translateZ(0)!important;
  filter:drop-shadow(0 1px 1px #824a305c)!important;
}
#app .zw123-home .zw123-tile img{
  display:block!important;position:relative!important;z-index:3!important;
  width:97%!important;height:97%!important;max-width:97%!important;max-height:97%!important;
  object-fit:contain!important;filter:drop-shadow(0 2px 2px #7c563b64)!important;
  border-radius:0!important;
}
#app .zw123-home #chooseMemory img{
  width:94%!important;height:94%!important;max-width:94%!important;max-height:94%!important;
  image-rendering:auto!important;
}
#app .zw123-home #chooseMemory::after{display:none!important}
#app .zw123-home .zw123-grid{
  row-gap:1.4%!important;column-gap:1.5%!important;
}
#app .zw123-home .zw123-tile:hover::after{
  filter:brightness(1.08) drop-shadow(0 2px 2px #9d5c397b)!important;
}
#app .zw123-home .zw123-seesaw{
  touch-action:manipulation!important;
}
@media(orientation:landscape){
 #app>.zw123-home{
   background-image:url('/home-v125/playground-landscape.webp')!important;
 }
 #app .zw123-home .zw123-settings{
   top:7px!important;right:clamp(4px,1.5vw,24px)!important;
   width:clamp(47px,12vh,73px)!important;
   height:clamp(47px,12vh,73px)!important;
 }
 #app .zw123-home .zw123-title{
   left:17%!important;width:76%!important;height:29%!important;
 }
 #app .zw123-home .zw123-tile::after{
   top:-.5%!important;
   height:76%!important;
 }
}
@media(max-width:355px) and (orientation:portrait){
 #app .zw123-home .zw123-settings{
   top:7px!important;right:6px!important;width:55px!important;height:55px!important;
 }
 #app .zw123-home .zw123-title{left:12%!important;width:74%!important}
 #app .zw123-home .zw123-grid{row-gap:.7%!important;column-gap:.5%!important}
}
@media(prefers-reduced-motion:reduce){
 #app .zw123-home .zw123-tile::after{filter:none!important}
}

/* Final visual fit: pencil red outlines hug only the round picture and never cover nameplates. */
#app .zw123-home .zw123-tile::after{
 width:94%!important;
 height:61%!important;
 top:4.5%!important;
 left:3%!important;
 filter:drop-shadow(0 1px 1px #8b543d42)!important;
}
#app .zw123-home .zw123-tile img{
 width:99%!important;height:99%!important;
 max-width:99%!important;max-height:99%!important;
}
@media(orientation:landscape){
 #app .zw123-home .zw123-tile::after{
   top:4%!important;
   height:60%!important;
   width:95%!important;
   left:2.5%!important;
 }
}


/* source: home-v126/home.css */
/* Zählwiese V126 — direct use of approved illustrated, raster-printed source artwork.
   Do NOT paint replacement circles or duplicate text over the nine real picture buttons. */
#app>.zw123-home.zw126-home{
 position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
 display:block!important;overflow:hidden!important;margin:0!important;
 background:#86cceb url('/home-v126/background-portrait.webp') center center / 100% 100% no-repeat!important;
 touch-action:manipulation!important;
}
#app .zw126-home .zw126-scene{
 display:grid!important;
 grid-template-columns:minmax(0,1fr)!important;
 grid-template-rows:minmax(0,40%) minmax(0,54%) minmax(0,6%)!important;
 width:100%!important;max-width:820px!important;height:100%!important;
 position:relative!important;margin:auto!important;padding:0 1%!important;
 min-height:0!important;min-width:0!important;
}
#app .zw126-home .zw126-hero{
 grid-column:1!important;grid-row:1!important;
 position:relative!important;width:100%!important;height:100%!important;min-height:0!important;
 z-index:4!important;pointer-events:none!important;
}
#app .zw126-home .zw126-title{
 position:absolute!important;display:block!important;z-index:3!important;
 top:0!important;left:10%!important;width:80%!important;height:35%!important;
 object-fit:contain!important;filter:drop-shadow(0 3px 2px #604d3260)!important;
 pointer-events:none!important;
}
#app .zw126-home .zw126-settings{
 all:unset!important;box-sizing:border-box!important;position:absolute!important;display:block!important;
 top:3%!important;right:1%!important;z-index:12!important;
 width:clamp(56px,13vw,85px)!important;height:clamp(56px,13vw,85px)!important;
 border-radius:50%!important;touch-action:manipulation!important;cursor:pointer!important;
 pointer-events:auto!important;filter:drop-shadow(0 3px 2px #65482f68)!important;
}
#app .zw126-home .zw126-settings img{
 display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;
}
#app .zw126-home .zw126-playground{
 position:absolute!important;z-index:5!important;left:50%!important;bottom:-6%!important;
 height:min(80%,calc(100vw * .70))!important;width:auto!important;
 aspect-ratio:1100/825!important;transform:translateX(-50%)!important;
 max-width:100%!important;isolation:isolate!important;pointer-events:none!important;
}
#app .zw126-home .zw126-foot{
 position:absolute!important;inset:0!important;z-index:3!important;
 width:100%!important;height:100%!important;object-fit:contain!important;pointer-events:none!important;
 filter:drop-shadow(0 4px 2px #72664066)!important;
}
#app .zw126-home .zw126-seesaw{
 all:unset!important;box-sizing:border-box!important;display:block!important;
 position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
 cursor:pointer!important;pointer-events:auto!important;touch-action:manipulation!important;
 border:0!important;background:none!important;z-index:8!important;
}
#app .zw126-home .zw126-lever{
 position:absolute!important;display:block!important;inset:0!important;z-index:5!important;
 width:100%!important;height:100%!important;
 transform:rotate(-2deg);transform-origin:49.655% 65.285%!important;
 animation:zw126-idle 6.8s ease-in-out infinite!important;
 will-change:transform!important;pointer-events:none!important;
}
#app .zw126-home .zw126-top{
 position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
 display:block!important;object-fit:contain!important;pointer-events:none!important;
 filter:drop-shadow(0 3px 2px #69553d5a)!important;
}
#app .zw126-home .zw126-seesaw.zw-seesaw-tapped .zw126-lever{
 animation:zw126-rock 2.5s cubic-bezier(.3,.67,.3,1) both!important;
}
@keyframes zw126-idle{
 0%,100%{transform:rotate(-2deg)}
 50%{transform:rotate(1.5deg)}
}
@keyframes zw126-rock{
 0%{transform:rotate(-3deg)}
 17%{transform:rotate(10deg)}
 36%{transform:rotate(-10deg)}
 57%{transform:rotate(8deg)}
 75%{transform:rotate(-6deg)}
 100%{transform:rotate(-2deg)}
}
#app .zw126-home .zw123-joy{
 position:absolute!important;z-index:16!important;inset:0!important;
 display:block!important;pointer-events:none!important;overflow:visible!important;
}
#app .zw126-home .zw126-board{
 grid-column:1!important;grid-row:2!important;position:relative!important;
 display:flex!important;align-items:center!important;justify-content:center!important;
 width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;
 margin:0!important;padding:0!important;z-index:6!important;
}
#app .zw126-home .zw126-artboard{
 position:relative!important;display:block!important;
 width:min(100%,calc(100dvh * .54 * 918 / 872))!important;
 max-width:100%!important;max-height:100%!important;
 height:auto!important;aspect-ratio:918/872!important;
 margin:auto!important;
 filter:drop-shadow(0 4px 3px #62533955)!important;
}
#app .zw126-home .zw126-board-image{
 position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
 display:block!important;object-fit:fill!important;
 pointer-events:none!important;
}
#app .zw126-home .zw126-grid{
 position:absolute!important;z-index:5!important;inset:0!important;
 display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
 grid-template-rows:repeat(3,minmax(0,1fr))!important;
 width:100%!important;height:100%!important;gap:0!important;padding:3.5% 4.1% 2.7%!important;
}
#app .zw126-home .zw126-tile{
 all:unset!important;box-sizing:border-box!important;
 display:block!important;position:relative!important;
 width:100%!important;height:100%!important;
 min-width:0!important;min-height:0!important;
 margin:0!important;padding:0!important;z-index:3!important;
 background:none!important;border:0!important;border-radius:43%!important;
 box-shadow:none!important;cursor:pointer!important;touch-action:manipulation!important;
 -webkit-tap-highlight-color:transparent!important;
 transition:transform .16s ease,filter .16s ease!important;
}
#app .zw126-home .zw126-tile::before,#app .zw126-home .zw126-tile::after{
 display:none!important;content:none!important;
}
#app .zw126-home .zw126-tile:active{
 transform:scale(.93) translateY(2px)!important;
 filter:brightness(1.1)!important;
}
#app .zw126-home .zw126-tile:focus-visible,
#app .zw126-home .zw126-settings:focus-visible,
#app .zw126-home .zw126-seesaw:focus-visible{
 outline:4px solid #fff0a0!important;outline-offset:-4px!important;border-radius:34%!important;
}
#app .zw126-home .zw126-sr{
 position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;
 padding:0!important;border:0!important;white-space:nowrap!important;overflow:hidden!important;
 clip:rect(0,0,0,0)!important;
}
#app .zw126-home .zw126-footer{
 grid-column:1!important;grid-row:3!important;display:flex!important;
 align-items:center!important;justify-content:center!important;
 height:100%!important;width:100%!important;
 margin:0!important;padding:0!important;
}
#app .zw126-home .zw126-footer img{
 display:block!important;height:82%!important;width:77%!important;max-width:350px!important;
 object-fit:contain!important;filter:drop-shadow(0 2px 1px #59483055)!important;
}
/* Wider devices keep original illustrated scenery proportions and avoid stretching buttons. */
@media(orientation:landscape){
 #app>.zw123-home.zw126-home{
  background-image:url('/home-v126/background-landscape.webp')!important;
  background-size:100% 100%!important;
 }
 #app .zw126-home .zw126-scene{
  max-width:1440px!important;
  grid-template-columns:minmax(0,47%) minmax(0,53%)!important;
  grid-template-rows:minmax(0,93%) minmax(0,7%)!important;
 }
 #app .zw126-home .zw126-hero{grid-column:1!important;grid-row:1!important;}
 #app .zw126-home .zw126-title{left:11%!important;width:79%!important;top:0!important;height:30%!important;}
 #app .zw126-home .zw126-settings{
  top:2%!important;right:1%!important;
  width:clamp(48px,12vh,68px)!important;height:clamp(48px,12vh,68px)!important;
 }
 #app .zw126-home .zw126-playground{
  height:76%!important;width:auto!important;max-width:100%!important;bottom:-3%!important;
 }
 #app .zw126-home .zw126-board{grid-column:2!important;grid-row:1!important;}
 #app .zw126-home .zw126-artboard{
  width:min(100%,calc(100dvh * .93 * 918 / 872))!important;
 }
 #app .zw126-home .zw126-footer{grid-column:1 / 3!important;grid-row:2!important;}
 #app .zw126-home .zw126-footer img{width:26%!important;height:90%!important}
}
@media(orientation:portrait) and (max-width:355px){
 #app .zw126-home .zw126-scene{
  grid-template-rows:minmax(0,38%) minmax(0,56%) minmax(0,6%)!important;
 }
 #app .zw126-home .zw126-title{left:9%!important;width:82%!important;height:34%!important}
 #app .zw126-home .zw126-settings{
  top:2%!important;right:1%!important;width:51px!important;height:51px!important;
 }
 #app .zw126-home .zw126-playground{height:75%!important}
 #app .zw126-home .zw126-artboard{width:min(100%,calc(100dvh * .56 * 918 / 872))!important;}
}
@media(prefers-reduced-motion:reduce){
 #app .zw126-home .zw126-lever{animation:none!important;transform:rotate(-2deg)!important}
 #app .zw126-home .zw126-seesaw.zw-seesaw-tapped .zw126-lever{animation:zw126-rock 3s ease both!important}
 #app .zw126-home .zw126-tile{transition:none!important}
}


/* source: home-v126/home.css */
/* Zählwiese V126 — direct use of approved illustrated, raster-printed source artwork.
   Do NOT paint replacement circles or duplicate text over the nine real picture buttons. */
#app>.zw123-home.zw126-home{
 position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
 display:block!important;overflow:hidden!important;margin:0!important;
 background:#86cceb url('/home-v126/background-portrait.webp') center center / 100% 100% no-repeat!important;
 touch-action:manipulation!important;
}
#app .zw126-home .zw126-scene{
 display:grid!important;
 grid-template-columns:minmax(0,1fr)!important;
 grid-template-rows:minmax(0,40%) minmax(0,54%) minmax(0,6%)!important;
 width:100%!important;max-width:820px!important;height:100%!important;
 position:relative!important;margin:auto!important;padding:0 1%!important;
 min-height:0!important;min-width:0!important;
}
#app .zw126-home .zw126-hero{
 grid-column:1!important;grid-row:1!important;
 position:relative!important;width:100%!important;height:100%!important;min-height:0!important;
 z-index:4!important;pointer-events:none!important;
}
#app .zw126-home .zw126-title{
 position:absolute!important;display:block!important;z-index:3!important;
 top:0!important;left:10%!important;width:80%!important;height:35%!important;
 object-fit:contain!important;filter:drop-shadow(0 3px 2px #604d3260)!important;
 pointer-events:none!important;
}
#app .zw126-home .zw126-settings{
 all:unset!important;box-sizing:border-box!important;position:absolute!important;display:block!important;
 top:3%!important;right:1%!important;z-index:12!important;
 width:clamp(56px,13vw,85px)!important;height:clamp(56px,13vw,85px)!important;
 border-radius:50%!important;touch-action:manipulation!important;cursor:pointer!important;
 pointer-events:auto!important;filter:drop-shadow(0 3px 2px #65482f68)!important;
}
#app .zw126-home .zw126-settings img{
 display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;
}
#app .zw126-home .zw126-playground{
 position:absolute!important;z-index:5!important;left:50%!important;bottom:-6%!important;
 height:min(80%,calc(100vw * .70))!important;width:auto!important;
 aspect-ratio:1100/825!important;transform:translateX(-50%)!important;
 max-width:100%!important;isolation:isolate!important;pointer-events:none!important;
}
#app .zw126-home .zw126-foot{
 position:absolute!important;inset:0!important;z-index:3!important;
 width:100%!important;height:100%!important;object-fit:contain!important;pointer-events:none!important;
 filter:drop-shadow(0 4px 2px #72664066)!important;
}
#app .zw126-home .zw126-seesaw{
 all:unset!important;box-sizing:border-box!important;display:block!important;
 position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
 cursor:pointer!important;pointer-events:auto!important;touch-action:manipulation!important;
 border:0!important;background:none!important;z-index:8!important;
}
#app .zw126-home .zw126-lever{
 position:absolute!important;display:block!important;inset:0!important;z-index:5!important;
 width:100%!important;height:100%!important;
 transform:rotate(-2deg);transform-origin:49.655% 65.285%!important;
 animation:zw126-idle 6.8s ease-in-out infinite!important;
 will-change:transform!important;pointer-events:none!important;
}
#app .zw126-home .zw126-top{
 position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
 display:block!important;object-fit:contain!important;pointer-events:none!important;
 filter:drop-shadow(0 3px 2px #69553d5a)!important;
}
#app .zw126-home .zw126-seesaw.zw-seesaw-tapped .zw126-lever{
 animation:zw126-rock 2.5s cubic-bezier(.3,.67,.3,1) both!important;
}
@keyframes zw126-idle{
 0%,100%{transform:rotate(-2deg)}
 50%{transform:rotate(1.5deg)}
}
@keyframes zw126-rock{
 0%{transform:rotate(-3deg)}
 17%{transform:rotate(10deg)}
 36%{transform:rotate(-10deg)}
 57%{transform:rotate(8deg)}
 75%{transform:rotate(-6deg)}
 100%{transform:rotate(-2deg)}
}
#app .zw126-home .zw123-joy{
 position:absolute!important;z-index:16!important;inset:0!important;
 display:block!important;pointer-events:none!important;overflow:visible!important;
}
#app .zw126-home .zw126-board{
 grid-column:1!important;grid-row:2!important;position:relative!important;
 display:flex!important;align-items:center!important;justify-content:center!important;
 width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;
 margin:0!important;padding:0!important;z-index:6!important;
}
#app .zw126-home .zw126-artboard{
 position:relative!important;display:block!important;
 width:min(100%,calc(100dvh * .54 * 918 / 872))!important;
 max-width:100%!important;max-height:100%!important;
 height:auto!important;aspect-ratio:918/872!important;
 margin:auto!important;
 filter:drop-shadow(0 4px 3px #62533955)!important;
}
#app .zw126-home .zw126-board-image{
 position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
 display:block!important;object-fit:fill!important;
 pointer-events:none!important;
}
#app .zw126-home .zw126-grid{
 position:absolute!important;z-index:5!important;inset:0!important;
 display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
 grid-template-rows:repeat(3,minmax(0,1fr))!important;
 width:100%!important;height:100%!important;gap:0!important;padding:3.5% 4.1% 2.7%!important;
}
#app .zw126-home .zw126-tile{
 all:unset!important;box-sizing:border-box!important;
 display:block!important;position:relative!important;
 width:100%!important;height:100%!important;
 min-width:0!important;min-height:0!important;
 margin:0!important;padding:0!important;z-index:3!important;
 background:none!important;border:0!important;border-radius:43%!important;
 box-shadow:none!important;cursor:pointer!important;touch-action:manipulation!important;
 -webkit-tap-highlight-color:transparent!important;
 transition:transform .16s ease,filter .16s ease!important;
}
#app .zw126-home .zw126-tile::before,#app .zw126-home .zw126-tile::after{
 display:none!important;content:none!important;
}
#app .zw126-home .zw126-tile:active{
 transform:scale(.93) translateY(2px)!important;
 filter:brightness(1.1)!important;
}
#app .zw126-home .zw126-tile:focus-visible,
#app .zw126-home .zw126-settings:focus-visible,
#app .zw126-home .zw126-seesaw:focus-visible{
 outline:4px solid #fff0a0!important;outline-offset:-4px!important;border-radius:34%!important;
}
#app .zw126-home .zw126-sr{
 position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;
 padding:0!important;border:0!important;white-space:nowrap!important;overflow:hidden!important;
 clip:rect(0,0,0,0)!important;
}
#app .zw126-home .zw126-footer{
 grid-column:1!important;grid-row:3!important;display:flex!important;
 align-items:center!important;justify-content:center!important;
 height:100%!important;width:100%!important;
 margin:0!important;padding:0!important;
}
#app .zw126-home .zw126-footer img{
 display:block!important;height:82%!important;width:77%!important;max-width:350px!important;
 object-fit:contain!important;filter:drop-shadow(0 2px 1px #59483055)!important;
}
/* Wider devices keep original illustrated scenery proportions and avoid stretching buttons. */
@media(orientation:landscape){
 #app>.zw123-home.zw126-home{
  background-image:url('/home-v126/background-landscape.webp')!important;
  background-size:100% 100%!important;
 }
 #app .zw126-home .zw126-scene{
  max-width:1440px!important;
  grid-template-columns:minmax(0,47%) minmax(0,53%)!important;
  grid-template-rows:minmax(0,93%) minmax(0,7%)!important;
 }
 #app .zw126-home .zw126-hero{grid-column:1!important;grid-row:1!important;}
 #app .zw126-home .zw126-title{left:11%!important;width:79%!important;top:0!important;height:30%!important;}
 #app .zw126-home .zw126-settings{
  top:2%!important;right:1%!important;
  width:clamp(48px,12vh,68px)!important;height:clamp(48px,12vh,68px)!important;
 }
 #app .zw126-home .zw126-playground{
  height:76%!important;width:auto!important;max-width:100%!important;bottom:-3%!important;
 }
 #app .zw126-home .zw126-board{grid-column:2!important;grid-row:1!important;}
 #app .zw126-home .zw126-artboard{
  width:min(100%,calc(100dvh * .93 * 918 / 872))!important;
 }
 #app .zw126-home .zw126-footer{grid-column:1 / 3!important;grid-row:2!important;}
 #app .zw126-home .zw126-footer img{width:26%!important;height:90%!important}
}
@media(orientation:portrait) and (max-width:355px){
 #app .zw126-home .zw126-scene{
  grid-template-rows:minmax(0,38%) minmax(0,56%) minmax(0,6%)!important;
 }
 #app .zw126-home .zw126-title{left:9%!important;width:82%!important;height:34%!important}
 #app .zw126-home .zw126-settings{
  top:2%!important;right:1%!important;width:51px!important;height:51px!important;
 }
 #app .zw126-home .zw126-playground{height:75%!important}
 #app .zw126-home .zw126-artboard{width:min(100%,calc(100dvh * .56 * 918 / 872))!important;}
}
@media(prefers-reduced-motion:reduce){
 #app .zw126-home .zw126-lever{animation:none!important;transform:rotate(-2deg)!important}
 #app .zw126-home .zw126-seesaw.zw-seesaw-tapped .zw126-lever{animation:zw126-rock 3s ease both!important}
 #app .zw126-home .zw126-tile{transition:none!important}
}


/* source: toddler-finish-v110.css */
/* ZÄHLWIESE v110 – gezielter Kinder-UX-Feinschliff.
   Bewahrt die freigegebene handgezeichnete Startseite und sämtliche Spielwelten. */

/* Spiel-Auswahl: Originalillustrationen niemals verdecken oder künstlich ersetzen. */
#app .zw80-home .zw80-tile {
 -webkit-tap-highlight-color:transparent!important;
 touch-action:manipulation!important;
 -webkit-user-select:none!important;user-select:none!important;
 transform-origin:50% 65%;
}
#app .zw80-home .zw80-tile:focus-visible,
#app .zw80-home .zw80-settings:focus-visible,
#app .zw80-home .zw80-wippe:focus-visible{
 outline:4px solid #fff6b5!important;outline-offset:3px!important;
 filter:drop-shadow(0 0 5px rgba(73,116,68,.7))!important;
}
#app .zw80-home .zw80-tile:active {
 transform:translateY(2px) scale(.956)!important;
 filter:brightness(1.045)!important;
}
#app .zw80-home #choosePicnic img,
#app .zw80-home #chooseMemory img{
 object-fit:contain!important;
 filter:drop-shadow(0 3px 2px rgba(78,61,42,.24))!important;
}

/* A gentle tactile press and clear keyboard focus across storybook choice screens. */
#app button.zw106-choice,
#app button.zw91-coin,
#app button.zw91-bubble,
#app button.zw95-hunt-bubble,
#app button.zw107-food-button,
#app .memory100-page button{
 -webkit-tap-highlight-color:transparent!important;
 touch-action:manipulation!important;
 -webkit-user-select:none!important;user-select:none!important;
}
#app button.zw106-choice:focus-visible,
#app button.zw91-coin:focus-visible,
#app button.zw91-bubble:focus-visible,
#app button.zw95-hunt-bubble:focus-visible,
#app button.zw107-food-button:focus-visible,
#app .memory100-page button:focus-visible,
#app #zw95Restart:focus-visible,
#app #homeBtn:focus-visible{
 outline:4px solid #fff2a1!important;
 outline-offset:3px!important;
 border-radius:22px;
}
#app button.zw106-choice:active,
#app button.zw91-coin:active,
#app button.zw107-food-button:active{
 filter:brightness(1.085) drop-shadow(0 2px 1px rgba(72,54,32,.28))!important;
}
#app .zw91-bubble:active,
#app .zw95-hunt-bubble:active {filter:brightness(1.14)!important;}
#app #homeBtn,#app #zw95Restart{
 touch-action:manipulation!important;
 -webkit-tap-highlight-color:transparent!important;
}
#app #homeBtn:active,#app #zw95Restart:active{filter:brightness(1.1)!important;}

/* Memory gehört sichtbar zur gleichen gemalten Gartenwelt wie die übrigen Spiele. */
#app:has(.memory100-page){background:#88bd88!important;overflow:hidden!important}
#app .memory100-page.main-content{
 position:absolute!important;inset:0!important;
 width:100%!important;max-width:none!important;
 height:100%!important;min-height:0!important;
 box-sizing:border-box!important;
 overflow:hidden!important;
 padding:max(78px,calc(env(safe-area-inset-top,0px) + 66px))
         max(12px,env(safe-area-inset-right,0px))
         max(16px,env(safe-area-inset-bottom,0px))
         max(12px,env(safe-area-inset-left,0px))!important;
 background:#9acaa0 url('/garden-games-v94/garden-portrait.webp') center/100% 100% no-repeat!important;
 font-family:'Segoe Print','Chalkboard SE','Marker Felt',sans-serif!important;
 gap:clamp(7px,1.6dvh,13px)!important;
}
#app .memory100-page h1{
 text-align:center!important;
 color:#75523b!important;
 text-shadow:0 1px 0 #fff9e5!important;
 font:900 clamp(24px,6.4vw,37px)/1.1 'Segoe Print','Chalkboard SE',sans-serif!important;
}
#app .memory100-select{
 justify-content:flex-start!important;
 align-items:center!important;
}
#app .memory100-select h1{
 display:grid!important;place-items:center!important;
 width:min(100%,345px)!important;
 min-height:68px!important;
 padding:12px 16px!important;
 margin:0 auto 3px!important;
 background:url('/storybook-games-v91/choice-board.webp') center/100% 100% no-repeat!important;
 filter:drop-shadow(0 4px 2px #4f40285e);
}
#app .memory100-chooser{
 width:min(100%,450px)!important;
 margin:clamp(8px,3dvh,28px) auto 0!important;
 gap:clamp(9px,2vw,30px)!important;
}
#app .memory100-chooser>button{
 padding:7px 4px!important;
 min-width:0!important;
 width:min(47%,180px)!important;
 gap:8px!important;
 font:900 clamp(18px,4vw,24px)/1.25 'Segoe Print','Chalkboard SE',sans-serif!important;
 color:#79553b!important;
 text-shadow:0 1px 0 #fffbe9;
 border-radius:24px!important;
 transition:filter .18s ease,transform .18s ease!important;
}
#app .memory100-chooser>button:active{transform:scale(.957)!important;filter:brightness(1.06)!important;}
#app .memory100-choice-ring{
 width:clamp(118px,35vw,172px)!important;
 height:clamp(118px,35vw,172px)!important;
 border:6px solid #b48a65!important;
 background:#f4e3bf url('/storybook-games-v91/choice-board.webp') center/cover no-repeat!important;
 box-shadow:inset 0 0 0 3px #f6e9cb,0 5px 3px rgba(92,64,42,.22)!important;
 overflow:hidden!important;
}
#app .memory100-choice-ring>*{position:relative;z-index:1}
#app .memory100-choice-digits{font-size:clamp(49px,14vw,67px)!important;}
#app .memory100-choice-ring img{width:94%!important;height:94%!important;}
#app .memory100-greeting{display:none!important;}

/* Gameplay: illustrated surface, clear level counter and painted round controls. */
#app .memory100-game .memory100-header{
 width:min(100%,520px)!important;z-index:1!important;
}
#app .memory100-game .memory100-header h1{
 padding:10px 16px!important;
 min-height:46px!important;
 background:url('/storybook-games-v91/choice-board.webp') center/100% 100% no-repeat!important;
}
#app .memory100-level{
 background:#f8eccf!important;
 border:3px solid #b48c68!important;
 border-radius:22px!important;
 box-shadow:0 3px 2px rgba(81,53,29,.22)!important;
}
#app .memory100-game .memory100-grid{
 max-width:min(100%,470px)!important;
 margin:clamp(5px,2dvh,19px) auto 0!important;
}
#app .memory100-card:focus-visible{outline-offset:2px!important;border-radius:12px!important}
#app .memory100-controls{margin:clamp(6px,1.5dvh,14px) auto 0!important;gap:clamp(20px,6vw,40px)!important;}
#app .memory100-controls button{
 width:clamp(60px,15vw,76px)!important;height:clamp(60px,15vw,76px)!important;
 border:0!important;border-radius:50%!important;
 font-size:0!important;color:transparent!important;
 background:#f6dbac url('/cuddle-maze-v93/retry.webp') center/100% 100% no-repeat!important;
 box-shadow:0 3px 2px rgba(67,51,29,.28)!important;
 transition:transform .18s ease,filter .18s ease!important;
}
#app .memory100-controls button:last-child{
 background-image:url('/labyrinth-gallery-v106/zahlen-memory.webp')!important;
}
#app .memory100-controls button:active{transform:scale(.92)!important;filter:brightness(1.1)!important;}

/* Short portrait devices: fit all 20 animal cards without game scrolling. */
@media (orientation:portrait) and (max-height:700px){
 #app .memory100-page.main-content{padding-top:max(64px,calc(env(safe-area-inset-top,0px) + 56px))!important;gap:4px!important}
 #app .memory100-game .memory100-header h1{padding:5px 10px!important;min-height:40px!important}
 #app .memory100-game .memory100-grid{margin:3px auto!important;gap:4px!important}
 #app .memory100-game .memory100-card{aspect-ratio:1!important;max-height:clamp(47px,9.2dvh,65px)!important}
 #app .memory100-game .memory100-controls{margin:2px auto 0!important}
 #app .memory100-controls button{width:52px!important;height:52px!important}
}
/* Landscape: use the whole screen, never the old beige half-width column. */
@media (orientation:landscape) and (max-height:650px){
 #app .memory100-page.main-content{
  background-image:url('/garden-games-v94/garden-landscape.webp')!important;
  padding:max(27px,env(safe-area-inset-top,0px))
          max(26px,env(safe-area-inset-right,0px))
          max(10px,env(safe-area-inset-bottom,0px))
          max(82px,calc(env(safe-area-inset-left,0px) + 75px))!important;
  gap:clamp(8px,2vw,25px)!important;
 }
 #app .memory100-page.memory100-select{
  display:grid!important;
  grid-template-columns:minmax(170px,1fr) minmax(320px,1.65fr)!important;
  grid-template-rows:minmax(0,1fr)!important;
  align-items:center!important;justify-items:center!important;
 }
 #app .memory100-select h1{width:100%!important;grid-column:1!important;grid-row:1!important;
  min-height:clamp(64px,18dvh,110px)!important;font-size:clamp(22px,3vw,35px)!important}
 #app .memory100-chooser{
  grid-column:2!important;grid-row:1!important;
  margin:0!important;
  width:100%!important;gap:clamp(8px,2vw,27px)!important;
 }
 #app .memory100-choice-ring{
  width:clamp(105px,31dvh,146px)!important;height:clamp(105px,31dvh,146px)!important;
 }
 #app .memory100-choice-digits{font-size:clamp(44px,15dvh,65px)!important;}
 #app .memory100-chooser>button{width:48%!important;font-size:clamp(15px,4dvh,21px)!important;}
 #app .memory100-page.memory100-game{
  display:grid!important;
  grid-template-columns:minmax(140px,28%) minmax(0,1fr)!important;
  grid-template-rows:minmax(0,1fr) auto!important;
  align-items:center!important;justify-items:center!important;
 }
 #app .memory100-game .memory100-header{
  grid-column:1!important;grid-row:1!important;
  display:flex!important;flex-direction:column!important;
  gap:9px!important;align-items:center!important;justify-content:center!important;
  width:100%!important;align-self:center!important;
 }
 #app .memory100-game .memory100-header h1{width:100%!important;padding:10px 8px!important;font-size:clamp(22px,5dvh,31px)!important}
 #app .memory100-level{margin:auto!important;}
 #app .memory100-game .memory100-grid{
  grid-column:2!important;grid-row:1/3!important;
  width:min(100%,560px)!important;max-width:none!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:5px!important;align-self:center!important;justify-self:center!important;
  margin:0 auto!important;
 }
 #app .memory100-game .memory100-grid .memory100-card{
  width:100%!important;aspect-ratio:1!important;max-height:clamp(50px,17.5dvh,69px)!important;
 }
 #app .memory100-game .memory100-controls{
  grid-column:1!important;grid-row:2!important;
  justify-self:center!important;margin:0 auto!important;gap:14px!important;
 }
 #app .memory100-controls button{width:clamp(50px,14dvh,63px)!important;height:clamp(50px,14dvh,63px)!important;}
}
/* Sensory-friendly: no needless motion, but all choices remain fully usable. */
@media (prefers-reduced-motion:reduce){
 #app .zw80-home .zw80-tile,
 #app .memory100-controls button,
 #app .memory100-chooser>button{transition:none!important}
}

/* MEMORY_FACE_FIX: Safari must not show a hidden front face.
   Explicit 2D card states are more reliable than WebKit 3D backface rendering. */
#app .memory100-card .memory100-inner{
 transform:none!important;transform-style:flat!important;
 transition:none!important;perspective:none!important;
}
#app .memory100-card .memory100-back,
#app .memory100-card .memory100-front{
 transform:none!important;-webkit-backface-visibility:visible!important;
 backface-visibility:visible!important;
 transition:opacity .24s ease,visibility .24s ease!important;
}
#app .memory100-card .memory100-back{
 z-index:2!important;opacity:1!important;visibility:visible!important;
}
#app .memory100-card .memory100-front{
 z-index:1!important;opacity:0!important;visibility:hidden!important;
}
#app .memory100-card.is-flipped .memory100-back,
#app .memory100-card.is-matched .memory100-back{
 opacity:0!important;visibility:hidden!important;z-index:1!important;
}
#app .memory100-card.is-flipped .memory100-front,
#app .memory100-card.is-matched .memory100-front{
 opacity:1!important;visibility:visible!important;z-index:2!important;
}
/* Keep toddler targets separate: the game's two illustrated controls replace the
   global floating restart button, which otherwise covers the bottom-right card. */
#app:has(.memory100-page) #zw95Restart{display:none!important}
/* A legacy car-maze rule had disabled Memory's own Restart button. */
#app:has(.memory100-game) .memory100-controls #memory100Restart{display:block!important;}
@media(prefers-reduced-motion:reduce){
 #app .memory100-card .memory100-back,
 #app .memory100-card .memory100-front{transition:none!important}
}


/* source: interaction-lock-v119.css */
/* Zaehlwiese – native-app-like touch safeguards (v119).
   Keep gameplay pointer gestures intact: do not force touch-action:none
   on interactive descendants. */
html, body {
  touch-action: pan-x pan-y;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}
html, body, #app, #app *,
#app *::before, #app *::after {
  -webkit-user-select: none !important;
  user-select: none !important;
  -webkit-touch-callout: none !important;
  -webkit-tap-highlight-color: transparent;
}
#app img, #app svg, #app picture {
  -webkit-user-drag: none !important;
  user-drag: none !important;
}
#app input:not([type="checkbox"]):not([type="radio"]),
#app textarea, #app select {
  font-size: max(16px, 1rem);
  -webkit-user-select: text !important;
  user-select: text !important;
}
/* Child game pads keep their individual touch-action declarations.
   Parent-level pan support allows deliberate scrolling, not browser pinch. */


/* source: memory-v127/memory.css */
/* Zählwiese V127 – Bilder-Memory in a fully illustrated children's book world. */
#app .memory127-page.main-content{
 position:relative!important;display:flex!important;flex-direction:column!important;align-items:center!important;
 width:100%!important;min-height:0!important;height:100%!important;flex:1 1 auto!important;
 padding:8px max(11px,3vw) max(11px,env(safe-area-inset-bottom,0px))!important;
 margin:0!important;gap:8px!important;overflow:hidden!important;
 box-sizing:border-box!important;isolation:isolate!important;
 background:#9bd2b5 url('/home-v126/background-portrait.webp') center /100% 100% no-repeat!important;
 font-family:'Segoe Print','Comic Neue',cursive!important;
}
#app .memory127-page *{box-sizing:border-box!important}
#app .memory127-page button{cursor:pointer!important;-webkit-tap-highlight-color:transparent!important;touch-action:manipulation!important}
#app .memory127-page button:focus-visible{outline:4px solid #ffda7b!important;outline-offset:2px!important}
.memory127-title{
 position:relative;display:grid;place-items:center;flex:0 0 auto;
 min-width:155px;min-height:46px;padding:4px 17px;
 border:5px solid #9c653e;border-radius:38% 30% 34% 34% / 20% 22% 23% 23%;
 background:#f6d59d url('/home-paint-v78/wood-plaque.webp') center/100% 100% no-repeat!important;
 color:#765038;font-size:clamp(20px,5.4vw,31px);font-weight:900;line-height:1.1;text-shadow:1px 1px #fff0c4;
 filter:drop-shadow(0 3px 2px #75583e4c);
}
.memory127-select .memory127-title{margin-top:2.2vh!important;font-size:clamp(30px,8vw,43px);min-width:230px;min-height:65px}
.memory127-heroes{
 position:relative;width:min(100%,420px);height:clamp(110px,26vh,210px);display:flex;justify-content:center;align-items:end;gap:0;
}
.memory127-heroes img{max-height:100%;height:100%;width:47%;object-fit:contain;object-position:center bottom;filter:drop-shadow(2px 4px 2px #6753395c)}
.memory127-heroes img:nth-child(1){transform:rotate(-4deg)}
.memory127-heroes img:nth-child(2){transform:rotate(4deg)}
.memory127-choices{
 position:relative;width:min(100%,540px);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(6px,2vw,14px);
 align-items:start;justify-items:center;margin:auto 0;
}
.memory127-choice{width:100%;max-width:174px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:0;background:none;padding:0;color:#654534;font-size:clamp(16px,4vw,22px);font-weight:950;text-shadow:1px 1px #fff7db}
.memory127-choice img{
 width:min(100%,174px);aspect-ratio:1;object-fit:contain;filter:drop-shadow(1px 4px 2px #76533b71);
 transition:transform .25s ease;
}
.memory127-choice:active img{transform:scale(.9) rotate(-6deg)}
.memory127-choice span{background:#f7dca6eb;border-radius:30px;border:3px solid #a9794b;padding:3px 9px;line-height:1.12}
.memory127-hint{
 font-size:clamp(15px,4vw,19px);text-align:center;font-weight:900;line-height:1.1;
 padding:5px 9px;border-radius:24px;background:#fff1cae8;color:#825742;margin:0 auto 3vh;
}
.memory127-game{gap:4px!important}
.memory127-header{width:min(100%,520px);min-height:51px;flex:0 0 auto;display:flex;gap:9px;align-items:center;justify-content:space-between}
.memory127-header .memory127-title{min-width:0;min-height:45px;font-size:clamp(19px,5vw,26px);max-width:65%;padding:4px 13px}
.memory127-level-img{display:grid;place-items:center;width:55px;height:55px;background:#f8e6c5;border:3px solid #a97549;border-radius:50%}
.memory127-level-img img{width:90%;height:90%;object-fit:contain}
.memory127-progress{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;max-width:140px;gap:3px;padding:5px 7px;background:#fdf0cadc;border:3px solid #bc8a57;border-radius:18px}
.memory127-progress i{width:10px;height:10px;background:#d6c2a4;border:1px solid #ae9074;border-radius:50%}
.memory127-progress i.is-done{background:#e7a45e;border-color:#a46b40;box-shadow:inset 1px 1px #fff5af}
.memory127-grid{
 position:relative;flex:1 1 auto;align-self:center;
 display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(5,minmax(0,1fr));
 gap:clamp(5px,1.7vw,11px);
 width:min(100%,min(430px,calc((100dvh - 180px)*.75)));
 max-height:calc(100% - 113px);height:100%;align-content:center;justify-content:center;place-items:stretch;
 padding:4px 0;perspective:900px;min-height:0;
}
.memory127-grid:has(>.memory127-card:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(1,minmax(0,1fr));width:min(100%,280px);height:min(55%,240px)}
.memory127-grid:has(>.memory127-card:nth-child(4):last-child){grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));width:min(100%,310px);height:min(70%,360px)}
.memory127-grid:has(>.memory127-card:nth-child(6):last-child){grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));width:min(100%,350px);height:min(70%,280px)}
.memory127-card{
 all:unset!important;display:block!important;position:relative!important;
 width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;
 border:0!important;background:transparent!important;padding:0!important;margin:0!important;
 border-radius:11px!important;cursor:pointer!important;
 perspective:1000px!important;touch-action:manipulation!important;
}
.memory127-inner{position:relative;display:block;width:100%;height:100%;transform-style:preserve-3d;transition:transform .51s cubic-bezier(.2,.75,.3,1);will-change:transform}
.memory127-card.is-flipped .memory127-inner,.memory127-card.is-matched .memory127-inner{transform:rotateY(180deg)}
.memory127-back,.memory127-front{
 position:absolute;inset:0;display:grid;place-items:center;overflow:hidden;
 border:4px solid #b77a62;border-radius:12px;
 backface-visibility:hidden;-webkit-backface-visibility:hidden;
 box-shadow:0 2px 2px #66483172,inset 1px 1px #fff8cb;
 background:#f6deb7;
}
.memory127-back img{width:100%;height:100%;object-fit:fill;pointer-events:none;-webkit-user-drag:none}
.memory127-front{transform:rotateY(180deg);border-color:#bf716a;background:#f9eed6}
.memory127-front-face{position:relative;width:100%;height:100%;display:grid;place-items:center}
.memory127-front-face img{width:100%;height:100%;object-fit:contain;pointer-events:none;-webkit-user-drag:none}
.memory127-fingers .memory127-front-face img{width:99%;height:100%;object-fit:contain}
.memory127-card.is-matched .memory127-front{border-color:#79ae7c;box-shadow:0 0 0 3px #fff1b5aa}
.memory127-card.is-matched{animation:memory127-joy .45s ease}
@keyframes memory127-joy{50%{filter:brightness(1.11);transform:scale(1.025)}}
.memory127-won{animation:memory127-win 1.1s ease-in-out infinite alternate}
@keyframes memory127-win{to{filter:drop-shadow(0 0 10px #f7d996)}}
.memory127-controls{display:flex;justify-content:center;gap:24px;align-items:center;flex:0 0 auto;min-height:52px}
.memory127-round{
 width:54px;height:54px;display:grid;place-items:center;border-radius:50%;background:#f4dba9 url('/picnic-v118/btn-restart.webp') center/cover no-repeat;
 border:0;box-shadow:0 2px 3px #664b3975;padding:0;
}
.memory127-round span{font-size:39px;line-height:1;color:#904f3b}
.memory127-switch{background:#e4d8ab url('/picnic-v118/btn-hint.webp') center/cover no-repeat}
.memory127-switch img{width:47%;height:47%;object-fit:contain;filter:drop-shadow(1px 1px #75634f)}
.memory127-fx{pointer-events:none;position:absolute;inset:0;overflow:hidden;z-index:15}
.memory127-confetti{position:absolute;width:10px;height:13px;border-radius:3px;animation:memory127-pop 1.2s ease-out both}
@keyframes memory127-pop{0%{opacity:0;transform:scale(.4)}18%{opacity:1}75%{opacity:1}100%{opacity:0;transform:translate(var(--dx),var(--dy)) rotate(200deg) scale(.75)}}
.memory127-dealing .memory127-card{animation:memory127-deal .55s ease-out both}
@keyframes memory127-deal{0%{opacity:.2;transform:translateY(-13px) scale(.88)}100%{opacity:1;transform:none}}
.memory127-title.memory127-complete{animation:memory127-joy 1s infinite alternate}
.memory127-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@media(orientation:portrait) and (max-height:730px){
 #app .memory127-page.main-content{gap:3px!important;padding-top:2px!important}
 .memory127-heroes{height:clamp(110px,23vh,170px)}
 .memory127-header{min-height:42px}
 .memory127-header .memory127-title{min-height:37px;font-size:19px}
 .memory127-grid{max-height:calc(100% - 95px);width:min(100%,min(350px,calc((100dvh - 150px)*.76)))}
 .memory127-controls{min-height:40px}
 .memory127-round{width:43px;height:43px}
}
@media(orientation:landscape){
 #app .memory127-page.main-content{
  display:grid!important;grid-template-columns:minmax(0,33%) minmax(0,67%)!important;
  grid-template-rows:auto 1fr auto!important;gap:2px 8px!important;
  background-image:url('/home-v125/playground-landscape.webp')!important;
 }
 .memory127-header{grid-area:1/1;flex-direction:column;max-width:100%;min-height:32px}
 .memory127-header .memory127-title{font-size:clamp(17px,3vh,23px)}
 .memory127-select .memory127-title{grid-column:1/-1;margin:0!important;min-height:44px}
 .memory127-select .memory127-heroes{grid-area:2/1;height:78%;width:100%}
 .memory127-select .memory127-choices{grid-area:1/2/4/3;margin:auto;max-width:480px}
 .memory127-select .memory127-hint{grid-area:3/1;margin:0!important;font-size:14px}
 .memory127-grid{grid-area:1/2/4/3;width:min(100%,min(510px,calc((100dvh - 65px)*2.1)))!important;
  max-height:98%!important;height:98%!important;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr));
 }
 .memory127-grid:has(>.memory127-card:nth-child(2):last-child){width:min(260px,100%)!important;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:1fr}
 .memory127-controls{grid-area:3/1}
 .memory127-choice img{max-width:118px}
}
@media(prefers-reduced-motion:reduce){
 .memory127-inner{transition:none!important}
 .memory127-card,.memory127-won,.memory127-confetti{animation-duration:.01ms!important;animation-iteration-count:1!important}
}


/* source: memory-v127/polish-v128.css */
/* v128 toddler QA: preserve the real proportions of 2–20 handpainted memory cards */
#app .memory127-page.memory127-game .memory127-grid{
 flex:0 1 auto!important;
 width:min(94%,440px)!important;
 height:min(75%,615px)!important;
 max-width:100%!important;
 max-height:calc(100% - 115px)!important;
 min-height:0!important;align-self:center!important;
 justify-items:stretch!important;align-items:stretch!important;
 display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
 grid-template-rows:repeat(5,minmax(0,1fr))!important;
 padding:3px!important;gap:clamp(4px,1.4vw,10px)!important;
}
#app .memory127-page .memory127-grid:has(>.memory127-card:nth-child(2):last-child){
 grid-template-columns:repeat(2,minmax(0,1fr))!important;
 grid-template-rows:1fr!important;
 width:min(70%,254px)!important;height:clamp(155px,30vh,245px)!important;
 flex:0 0 auto!important;max-height:36%!important;
}
#app .memory127-page .memory127-grid:has(>.memory127-card:nth-child(4):last-child){
 grid-template-columns:repeat(2,minmax(0,1fr))!important;
 grid-template-rows:repeat(2,minmax(0,1fr))!important;
 width:min(80%,285px)!important;height:clamp(240px,47vh,370px)!important;
 flex:0 0 auto!important;
}
#app .memory127-page .memory127-grid:has(>.memory127-card:nth-child(6):last-child){
 grid-template-columns:repeat(3,minmax(0,1fr))!important;
 grid-template-rows:repeat(2,minmax(0,1fr))!important;
 width:min(90%,350px)!important;height:clamp(205px,43vh,320px)!important;
 flex:0 0 auto!important;
}
#app .memory127-page .memory127-grid:has(>.memory127-card:nth-child(8):last-child){
 grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-template-rows:repeat(2,minmax(0,1fr))!important;
 width:min(95%,420px)!important;height:clamp(200px,41vh,300px)!important;
}
#app .memory127-page .memory127-grid:has(>.memory127-card:nth-child(10):last-child),
#app .memory127-page .memory127-grid:has(>.memory127-card:nth-child(12):last-child){
 grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-template-rows:repeat(3,minmax(0,1fr))!important;
 width:min(95%,420px)!important;height:min(62%,430px)!important;
}
#app .memory127-page .memory127-grid:has(>.memory127-card:nth-child(14):last-child),
#app .memory127-page .memory127-grid:has(>.memory127-card:nth-child(16):last-child){
 grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-template-rows:repeat(4,minmax(0,1fr))!important;
 width:min(95%,420px)!important;height:min(68%,530px)!important;
}
#app .memory127-page .memory127-grid .memory127-card{
 overflow:visible!important;width:100%!important;height:100%!important;
 min-width:0!important;min-height:0!important;
}
#app .memory127-page .memory127-card .memory127-inner{width:100%!important;height:100%!important}
#app .memory127-page .memory127-back,
#app .memory127-page .memory127-front{
 border-radius:clamp(9px,2vw,18px)!important;overflow:hidden!important;
 border:0!important;background:none!important;
 box-shadow:0 2px 3px #70503877!important;
}
#app .memory127-page .memory127-back img{
 width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;
 object-fit:contain!important;
}
#app .memory127-page .memory127-front{
 background:url('/memory-v127/card-cream.webp') center/100% 100% no-repeat!important;
}
#app .memory127-page .memory127-front-face{
 width:84%!important;height:78%!important;max-width:84%!important;max-height:78%!important;
 display:grid!important;place-items:center!important;
}
#app .memory127-page .memory127-front-face img{
 width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;
 object-fit:contain!important;
}
#app .memory127-page .memory127-controls{
 flex:0 0 auto!important;min-height:45px!important;margin-top:0!important;
}
#app .memory127-page .memory127-choices img{
 object-fit:contain!important;
}
@media(orientation:portrait) and (max-height:630px){
 #app .memory127-page .memory127-grid:has(>.memory127-card:nth-child(2):last-child){height:135px!important}
 #app .memory127-page .memory127-grid:has(>.memory127-card:nth-child(4):last-child){height:220px!important}
 #app .memory127-page .memory127-grid{max-height:calc(100% - 90px)!important}
}
@media(orientation:landscape){
 #app .memory127-page.memory127-game .memory127-grid{
  grid-area:1/2/4/3!important;width:min(100%,580px)!important;
  max-width:100%!important;height:96%!important;max-height:96%!important;
  align-self:center!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  grid-template-rows:repeat(4,minmax(0,1fr))!important;
 }
 #app .memory127-page .memory127-grid:has(>.memory127-card:nth-child(2):last-child){
  width:min(41%,260px)!important;height:75%!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:1fr!important;
 }
 #app .memory127-page .memory127-grid:has(>.memory127-card:nth-child(4):last-child){
  width:min(56%,330px)!important;height:92%!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:repeat(2,minmax(0,1fr))!important;
 }
 #app .memory127-page .memory127-grid:has(>.memory127-card:nth-child(6):last-child){
  width:min(70%,390px)!important;height:85%!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:repeat(2,minmax(0,1fr))!important;
 }
}

/* Landscape 20-card rounds: no horizontal stretching and no cut-off at bottom */
@media (orientation:landscape){
 #app .memory127-page.memory127-game .memory127-grid:has(>.memory127-card:nth-child(20):last-child),
 #app .memory127-page.memory127-game .memory127-grid:has(>.memory127-card:nth-child(18):last-child){
   width:min(calc(100dvh * .76),510px)!important;
   height:83%!important;
   max-height:83%!important;
   grid-template-columns:repeat(5,minmax(0,1fr))!important;
   grid-template-rows:repeat(4,minmax(0,1fr))!important;
   align-self:center!important;
   margin:0 auto!important;
 }
}


/* source: memory-v127/polish-v129.css */
/* V129 – premium Memory finish: legible illustrations, no stretched cards or duplicate caption. */
#app .memory127-page .memory127-choice span{display:none!important}
#app .memory127-page .memory127-choice{gap:0!important}
#app .memory127-page .memory127-choices{align-items:center!important}
@media(orientation:portrait){
 #app .memory127-page.memory127-game:has(.memory127-card:nth-child(2):last-child){
  justify-content:center!important;
 }
 #app .memory127-page.memory127-game:has(.memory127-card:nth-child(4):last-child){
  justify-content:center!important;
 }
}
@media(orientation:landscape){
 #app .memory127-page.memory127-game .memory127-grid:has(>.memory127-card:nth-child(20):last-child){
  grid-template-columns:repeat(7,minmax(0,1fr))!important;
  grid-template-rows:repeat(3,minmax(0,1fr))!important;
  width:min(100%,515px)!important;
  height:96%!important;
 }
 #app .memory127-page.memory127-game .memory127-grid:has(>.memory127-card:nth-child(18):last-child),
 #app .memory127-page.memory127-game .memory127-grid:has(>.memory127-card:nth-child(16):last-child),
 #app .memory127-page.memory127-game .memory127-grid:has(>.memory127-card:nth-child(14):last-child){
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  grid-template-rows:repeat(3,minmax(0,1fr))!important;
  width:min(100%,470px)!important;
  height:96%!important;
 }
 #app .memory127-page.memory127-game .memory127-grid:has(>.memory127-card:nth-child(12):last-child){
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,minmax(0,1fr))!important;
  width:min(100%,490px)!important;
  height:78%!important;
 }
}

/* Two first-round cards keep the real portrait proportions instead of becoming narrow strips. */
@media(orientation:portrait){
 #app .memory127-page.memory127-game .memory127-grid:has(>.memory127-card:nth-child(2):last-child){
   width:min(90%,320px)!important;
   height:clamp(160px,26vh,205px)!important;
   max-height:33%!important;
   grid-template-columns:repeat(2,minmax(0,1fr))!important;
   grid-template-rows:1fr!important;
 }
}


/* source: hunt-v174/hunt.css */
/* Zählwiese – Zahlenjagd 174. Pencil-and-wax illustrated game, no sterile circles. */
#app .zw95-hunt.main-content{
 position:absolute!important;inset:0!important;
 width:100%!important;height:100%!important;max-height:100dvh!important;
 margin:0!important;padding:0!important;
 overflow:hidden!important;isolation:isolate!important;
 background:#bde4ab url('/home-v126/background-portrait.webp') center / 100% 100% no-repeat!important;
 touch-action:manipulation!important;
}
#app .zw95-hunt .zw91-title{
 position:absolute!important;
 left:15%!important;top:1.5%!important;width:76%!important;height:13%!important;
 background-image:url('/game-start-v173/hunt-sign.webp')!important;
 background-repeat:no-repeat!important;background-size:contain!important;background-position:center!important;
 filter:drop-shadow(0 4px 3px #6e513858)!important;
 pointer-events:none!important;
}
#app .zw95-hunt .zw91-goal{
 position:absolute!important;
 left:4%!important;top:15%!important;width:92%!important;height:18%!important;
 min-height:0!important;
 margin:0!important;padding:0!important;
 display:grid!important;place-items:center!important;
 background:none!important;border:none!important;
 filter:drop-shadow(0 4px 3px #78503844)!important;
}
#app .zw95-hunt .zw91-board-art{
 position:absolute!important;inset:0!important;
 width:100%!important;height:100%!important;
 object-fit:fill!important;
}
#app .zw95-hunt .zw91-goal-inner{
 position:relative!important;z-index:3!important;
 width:84%!important;height:84%!important;
 display:flex!important;justify-content:center!important;align-items:center!important;gap:clamp(5px,2vw,17px)!important;
 overflow:visible!important;
}
#app .zw95-hunt .zw95-hunt-goal{
 width:clamp(53px,17vw,74px)!important;height:73%!important;max-width:none!important;
 font-family:'Segoe Print','Chalkboard SE',cursive!important;
 font-size:clamp(37px,11vw,61px)!important;
 color:#80563c!important;text-shadow:1px 1px 0 #fff1d1!important;
 animation:none!important;
}
#app .zw95-hunt .zw91-hunt-step{
 flex:1 1 auto!important;min-width:0!important;height:36%!important;
 display:flex!important;align-items:center!important;justify-content:center!important;
 gap:clamp(0px,.32vw,3px)!important;
}
#app .zw95-hunt .zw91-hunt-step i{
 display:block!important;flex:0 1 22px!important;
 min-width:0!important;max-width:22px!important;width:8%!important;
 height:100%!important;aspect-ratio:1!important;
 background:transparent url('/picnic-v109/flower.webp') center / contain no-repeat!important;
 border:none!important;border-radius:0!important;box-shadow:none!important;
 filter:grayscale(1) opacity(.37)!important;
 transform:scale(.76)!important;transition:filter .15s ease,transform .15s ease!important;
}
#app .zw95-hunt .zw91-hunt-step i.is-past{
 filter:none!important;transform:scale(1)!important;
}
#app .zw95-hunt .zw95-hunt-stage{
 position:absolute!important;
 left:4%!important;top:34%!important;width:92%!important;height:53%!important;
 overflow:visible!important;touch-action:manipulation!important;
 background:none!important;border:0!important;box-shadow:none!important;
}
#app .zw95-hunt .zw95-hunt-bubble{
 appearance:none!important;
 position:absolute!important;
 width:clamp(67px,20vw,88px)!important;height:clamp(67px,20vw,88px)!important;
 min-width:67px!important;min-height:67px!important;
 margin:0!important;padding:0!important;
 border:0!important;border-radius:0!important;
 background:transparent!important;box-shadow:none!important;
 transform:translate(-50%,-50%)!important;transform-origin:center center!important;
 touch-action:manipulation!important;cursor:pointer!important;
 overflow:visible!important;filter:drop-shadow(0 2px 1px rgba(93,117,87,.25))!important;
 transition:none!important;animation:none!important;
}
#app .zw95-hunt .zw95-hunt-bubble>img:first-child{
 display:block!important;width:100%!important;height:100%!important;
 object-fit:contain!important;position:absolute!important;inset:0!important;
 pointer-events:none!important;
 animation:zw174-bubble-float 5.8s ease-in-out infinite!important;
}
#app .zw95-hunt .zw95-hunt-bubble:nth-child(3n)>img:first-child{animation-delay:-1.9s!important}
#app .zw95-hunt .zw95-hunt-bubble:nth-child(3n+1)>img:first-child{animation-delay:-3.1s!important}
#app .zw95-hunt .zw95-hunt-bubble-number{
 position:absolute!important;z-index:3!important;
 left:24%!important;top:19%!important;width:52%!important;height:61%!important;
 display:flex!important;align-items:center!important;justify-content:center!important;
 font-family:'Segoe Print','Chalkboard SE',cursive!important;
 color:#704b39!important;text-shadow:1px 1px 0 #fff8e6!important;
 font-size:clamp(27px,8vw,41px)!important;line-height:1!important;
 object-fit:contain!important;
 pointer-events:none!important;white-space:nowrap!important;
}
#app .zw95-hunt .zw95-hunt-bubble:active:not(.is-popped){filter:brightness(1.06) drop-shadow(0 2px 1px #84674655)!important}
#app .zw95-hunt .zw95-hunt-bubble.is-burst{
 animation:zw174-burst .44s ease-out forwards!important;
 pointer-events:none!important;
}
#app .zw95-hunt .zw95-hunt-bubble.is-popped{
 opacity:0!important;pointer-events:none!important;
 animation:none!important;
}
#app .zw95-hunt .zw95-hunt-bubble.zw91-wrong{animation:zw91-wrong .5s ease-in-out!important}
#app .zw95-hunt #zw95Restart,#app:has(.zw95-hunt) #zw95Restart{
 position:absolute!important;
 top:auto!important;bottom:max(5px,env(safe-area-inset-bottom))!important;
 right:max(9px,env(safe-area-inset-right))!important;
 width:clamp(55px,14vw,65px)!important;height:clamp(55px,14vw,65px)!important;
}
#app .zw95-hunt .zw95-hunt-sparks{
 position:absolute!important;inset:0!important;pointer-events:none!important;z-index:99!important;
 overflow:hidden!important;
}
@keyframes zw174-bubble-float{
 0%,100%{transform:translate(0,0) rotate(-2deg)}
 50%{transform:translate(0,-5px) rotate(2deg)}
}
@keyframes zw174-burst{
 0%{opacity:1;transform:translate(-50%,-50%) scale(1)}
 35%{opacity:1;transform:translate(-50%,-50%) scale(1.15)}
 100%{opacity:0;transform:translate(-50%,-50%) scale(1.5)}
}
@media(orientation:portrait) and (max-height:655px){
 #app .zw95-hunt .zw91-title{top:0%;height:13%!important}
 #app .zw95-hunt .zw91-goal{top:13%!important;height:18%!important}
 #app .zw95-hunt .zw95-hunt-stage{top:32%!important;height:58%!important}
 #app .zw95-hunt .zw95-hunt-bubble{width:clamp(62px,19vw,76px)!important;height:clamp(62px,19vw,76px)!important}
}
@media(orientation:landscape) and (max-height:630px){
 #app .zw95-hunt.main-content{
  background-image:url('/home-v126/background-landscape.webp')!important;
 }
 #app .zw95-hunt .zw91-title{
  left:57%!important;top:2%!important;width:38%!important;height:21%!important;
 }
 #app .zw95-hunt .zw91-goal{
  left:58%!important;top:26%!important;width:38%!important;height:37%!important;
 }
 #app .zw95-hunt .zw91-goal-inner{width:91%!important;height:92%!important}
 #app .zw95-hunt .zw95-hunt-goal{width:clamp(48px,10vh,71px)!important;height:70%!important;font-size:clamp(31px,9vh,49px)!important}
 #app .zw95-hunt .zw91-hunt-step{gap:0!important}
 #app .zw95-hunt .zw91-hunt-step i{max-width:17px!important}
 #app .zw95-hunt .zw95-hunt-stage{
  left:2%!important;top:7%!important;width:55%!important;height:85%!important;
 }
 #app .zw95-hunt .zw95-hunt-bubble{
  width:clamp(52px,15vh,70px)!important;height:clamp(52px,15vh,70px)!important;
  min-width:52px!important;min-height:52px!important;
 }
 #app .zw95-hunt .zw95-hunt-bubble-number{font-size:clamp(23px,8vh,34px)!important}
 #app:has(.zw95-hunt) #zw95Restart{right:max(8px,env(safe-area-inset-right))!important;bottom:max(5px,env(safe-area-inset-bottom))!important}
}
@media(prefers-reduced-motion:reduce){
 #app .zw95-hunt .zw95-hunt-bubble>img:first-child{animation:none!important}
 #app .zw95-hunt .zw95-hunt-bubble.is-burst{animation-duration:.08s!important}
 #app .zw95-hunt .zw91-hunt-step i{transition:none!important}
}


/* source: hunt-v174/legibility.css */

/* Stable immediately legible illustrations on entry: no fade that hides the numbers. */
#app .zw95-hunt.zw97-enter{animation:none!important;opacity:1!important}
#app .zw95-hunt .zw91-hunt-step i{filter:grayscale(.6) opacity(.68)!important}
#app .zw95-hunt .zw91-hunt-step i.is-past{filter:none!important;transform:scale(1.07)!important}


/* source: feeding-bakery-v175/game.css */
/* Zählwiese Feeding × Backstube V175 – real colored-pencil assets, shared room aesthetics. */
#app:has(.zw175-feeding)>.app-header{display:none!important}
#app .zw175-feeding.main-content{
 position:absolute!important;inset:0!important;
 width:100%!important;height:100dvh!important;
 max-height:100dvh!important;min-height:0!important;overflow:hidden!important;
 box-sizing:border-box!important;
 background:#f5e6c9 url('/bakery-v165/kitchen-stage.webp') center/100% 100% no-repeat!important;
 touch-action:manipulation!important;-webkit-user-select:none!important;user-select:none!important;
 -webkit-touch-callout:none!important;
}
#app .zw175-feeding *,#app .zw175-feeding *:before,#app .zw175-feeding *:after{
 box-sizing:border-box!important;
 -webkit-user-select:none!important;user-select:none!important;
}
#app .zw175-feeding img{object-fit:contain!important;max-width:100%!important;max-height:100%!important;pointer-events:none!important;-webkit-user-drag:none!important}
#app .zw175-feeding .zw91-title{
 left:17%!important;top:16.2%!important;width:76%!important;height:13.4%!important;
 background:url('/game-start-v173/feeding-sign.webp') center / contain no-repeat!important;
 filter:drop-shadow(0 4px 3px #70462d5c)!important;
 z-index:21!important;
}
#app .zw175-feeding .zw91-animal-grid{
 position:absolute!important;z-index:19!important;
 top:30.5%!important;left:4%!important;width:92%!important;height:66%!important;
 padding:clamp(13px,2.9vw,22px)!important;
 grid-template-columns:repeat(3,minmax(0,1fr))!important;
 grid-template-rows:repeat(4,minmax(0,1fr))!important;
 gap:clamp(3px,1vh,10px)!important;
 align-items:center!important;justify-items:center!important;
 background:url('/bakery-v165/instruction-clean.webp') center / 100% 100% no-repeat!important;
 overflow:hidden!important;border:0!important;border-radius:0!important;
}
#app .zw175-feeding .zw91-animal-grid button.zw91-coin,
#app .zw175-feeding .zw91-choices button.zw91-coin{
 position:relative!important;display:grid!important;place-items:center!important;
 width:min(100%,clamp(70px,24vw,111px))!important;
 height:auto!important;aspect-ratio:1!important;min-height:0!important;min-width:0!important;
 max-height:100%!important;max-width:120px!important;
 overflow:visible!important;border-radius:50%!important;
 border:0!important;padding:clamp(7px,1.6vw,12px)!important;
 background:transparent url('/bakery-v163/button-honey.webp') center/contain no-repeat!important;
 box-shadow:none!important;filter:drop-shadow(0 3px 2px #65492f55)!important;
 touch-action:none!important;
}
#app .zw175-feeding .zw91-animal-grid button.zw91-coin:nth-child(3n),
#app .zw175-feeding .zw91-choices button.zw91-coin:nth-child(3n){
 background-image:url('/bakery-v163/button-mint.webp')!important;
}
#app .zw175-feeding .zw91-animal-grid button.zw91-coin:nth-child(3n+2),
#app .zw175-feeding .zw91-choices button.zw91-coin:nth-child(3n+2){
 background-image:url('/bakery-v163/button-berry.webp')!important;
}
#app .zw175-feeding .zw91-coin-art{display:none!important}
#app .zw175-feeding button.zw91-coin .zw91-coin-icon{
 position:static!important;
 width:90%!important;height:90%!important;
 max-height:90%!important;max-width:90%!important;
 display:block!important;object-fit:contain!important;
 margin:auto!important;transform:none!important;
 filter:drop-shadow(0 2px 1px #805d3c42)!important;
}
#app .zw175-feeding .zw91-choices button.zw91-coin .zw91-coin-icon{
 width:91%!important;height:91%!important;max-width:91%!important;max-height:91%!important;
}
#app .zw175-feeding button.zw91-coin:active{transform:scale(.94)!important}
#app .zw175-feeding .zw91-goal{
 top:29.1%!important;left:4%!important;width:92%!important;height:15.2%!important;
 min-height:0!important;
 background:url('/bakery-v165/instruction-clean.webp') center/100% 100% no-repeat!important;
 z-index:18!important;
}
#app .zw175-feeding .zw91-board-art{display:none!important}
#app .zw175-feeding .zw91-goal-inner{
 width:87%!important;height:79%!important;
 overflow:visible!important;gap:clamp(5px,2vw,12px)!important;
}
#app .zw175-feeding .zw91-number{width:clamp(38px,12vw,65px)!important;height:77%!important;flex:none!important}
#app .zw175-feeding .zw91-wish-units{
 flex:1 1 auto!important;width:auto!important;max-width:76%!important;
 height:85%!important;display:flex!important;
 align-items:center!important;justify-content:center!important;gap:3px!important;
}
#app .zw175-feeding .zw91-wish-unit{display:grid!important;place-items:center!important;height:100%!important;min-width:0!important}
#app .zw175-feeding .zw91-wish-unit img{max-width:100%!important;max-height:100%!important;object-fit:contain!important}
#app .zw175-feeding .zw91-goal-large{height:90%!important;width:clamp(56px,21vw,95px)!important}
#app .zw175-feeding .zw91-feeding-stage{
 left:3%!important;top:45.5%!important;width:94%!important;height:33.5%!important;
 overflow:visible!important;z-index:15!important;
}
#app .zw175-feeding .zw91-feeding-stage .zw91-character{
 left:28%!important;top:0%!important;width:44%!important;height:92%!important;z-index:5!important;
 filter:drop-shadow(0 4px 3px #76513445)!important;
 transform-origin:50% 84%!important;
 pointer-events:none!important;
}
#app .zw175-feeding .zw175-moritz,#app .zw175-feeding .zw175-igor{
 position:absolute!important;z-index:4!important;
 width:30%!important;height:79%!important;bottom:0!important;max-width:none!important;
 object-fit:contain!important;object-position:center bottom!important;
 filter:drop-shadow(0 3px 2px #71503344)!important;
}
#app .zw175-feeding .zw175-moritz{left:-1%!important}
#app .zw175-feeding .zw175-igor{right:-1%!important;transform:scaleX(-1)!important}
#app .zw175-feeding .zw91-ground-bowl{
 position:absolute!important;z-index:7!important;
 bottom:-1%!important;left:38%!important;width:24%!important;height:30%!important;
 object-fit:contain!important;filter:drop-shadow(0 2px 2px #77533b45)!important;
}
#app .zw175-feeding .zw91-choices{
 top:79.6%!important;left:4%!important;width:92%!important;height:18.4%!important;
 z-index:23!important;display:flex!important;align-items:center!important;justify-content:space-evenly!important;
 gap:clamp(7px,2vw,16px)!important;padding:clamp(10px,2.7vw,21px)!important;
 background:url('/bakery-v165/instruction-clean.webp') center/100% 100% no-repeat!important;
 overflow:visible!important;
}
#app .zw175-feeding .zw91-choices button.zw91-coin{
 width:min(29vw,122px)!important;height:auto!important;aspect-ratio:1!important;
 max-height:100%!important;
 flex:0 1 122px!important;min-width:70px!important;min-height:70px!important;
}
#app .zw175-feeding .zw91-ghost{width:clamp(56px,15vw,92px)!important;height:clamp(56px,15vw,92px)!important}
#app .zw175-feeding .zw91-effects{pointer-events:none!important}
#app .zw175-feeding .zw91-animal-grid button.zw91-coin:focus-visible,
#app .zw175-feeding .zw91-choices button.zw91-coin:focus-visible{
 outline:4px dashed #8e5d39!important;outline-offset:3px!important;
}
/* iPhone mini: preserve all ten pets and all large fingers-first buttons. */
@media(orientation:portrait) and (max-height:650px){
 #app .zw175-feeding .zw91-title{top:13%!important;height:13%!important}
 #app .zw175-feeding .zw91-animal-grid{top:27.5%!important;height:69.5%!important;padding:10px!important;gap:2px!important}
 #app .zw175-feeding .zw91-animal-grid button.zw91-coin{width:min(22vw,84px)!important;min-height:0!important}
 #app .zw175-feeding .zw91-goal{top:27%!important;height:16%!important}
 #app .zw175-feeding .zw91-feeding-stage{top:44%!important;height:33%!important}
 #app .zw175-feeding .zw91-choices{top:78.5%!important;height:20%!important;padding:8px!important}
 #app .zw175-feeding .zw91-choices button.zw91-coin{width:24vw!important;min-width:66px!important;min-height:66px!important}
}
@media(orientation:landscape) and (max-height:650px){
 #app .zw175-feeding.main-content{
  background-image:url('/bakery-v165/kitchen-landscape.webp')!important;
 }
 #app .zw175-feeding .zw91-title{top:2%!important;left:52%!important;width:43%!important;height:19%!important}
 #app .zw175-feeding .zw91-animal-grid{
  top:23%!important;left:6%!important;width:88%!important;height:74%!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,minmax(0,1fr))!important;padding:10px!important;
 }
 #app .zw175-feeding .zw91-animal-grid button.zw91-coin{
  width:min(14vw,21vh,100px)!important;
 }
 #app .zw175-feeding .zw91-goal{left:56%!important;top:24%!important;width:41%!important;height:31%!important}
 #app .zw175-feeding .zw91-goal-inner{width:87%!important}
 #app .zw175-feeding .zw91-number{width:clamp(36px,8vh,54px)!important}
 #app .zw175-feeding .zw91-feeding-stage{left:2%!important;top:16%!important;width:54%!important;height:81%!important}
 #app .zw175-feeding .zw91-feeding-stage .zw91-character{width:43%!important;left:29%!important}
 #app .zw175-feeding .zw175-moritz,#app .zw175-feeding .zw175-igor{height:84%!important;width:29%!important}
 #app .zw175-feeding .zw91-choices{
  left:56%!important;top:59%!important;width:41%!important;height:37%!important;
  padding:6px!important;gap:3px!important;
 }
 #app .zw175-feeding .zw91-choices button.zw91-coin{
  width:min(10vw,21vh,100px)!important;
  min-width:55px!important;min-height:55px!important;
 }
}
@media(prefers-reduced-motion:reduce){
 #app .zw175-feeding .zw91-character,
 #app .zw175-feeding .zw91-coin{animation:none!important;transition:none!important}
}
/* Backstube V175. The bowl contains only painted, free-standing ingredients, not their buttons. */
#app .zw165.zw160-collect .zw160-bowl-unit .zw166-bowl-stash{
 position:absolute!important;z-index:10!important;
 top:33%!important;left:14%!important;width:72%!important;height:30%!important;
 min-height:0!important;overflow:visible!important;
 display:grid!important;align-items:center!important;justify-items:center!important;
 grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-auto-rows:50%!important;
 gap:0!important;
 border-radius:0!important;
 pointer-events:none!important;
}
#app .zw165.zw160-collect .zw160-bowl-unit .zw166-bowl-stash.zw166-stash-1{
 left:36%!important;width:28%!important;grid-template-columns:1fr!important;grid-auto-rows:100%!important;
}
#app .zw165.zw160-collect .zw160-bowl-unit .zw166-bowl-stash.zw166-stash-2{
 left:27%!important;width:46%!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:100%!important;
}
#app .zw165.zw160-collect .zw160-bowl-unit .zw166-bowl-stash.zw166-stash-3{
 left:19%!important;width:62%!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-auto-rows:100%!important;
}
#app .zw165.zw160-collect .zw160-bowl-unit .zw166-bowl-stash.zw166-stash-4{
 left:13%!important;width:74%!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-auto-rows:100%!important;
}
#app .zw165.zw160-collect .zw160-bowl-unit .zw166-stash-item{
 width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;
 display:grid!important;place-items:center!important;
 transform-origin:center!important;
 overflow:visible!important;
 rotate:0deg!important;
}
#app .zw165.zw160-collect .zw160-bowl-unit .zw166-stash-item img{
 display:block!important;max-width:89%!important;max-height:92%!important;
 width:89%!important;height:92%!important;
 object-fit:contain!important;object-position:center!important;
 filter:drop-shadow(0 2px 1px #61452e42)!important;
}
#app .zw165.zw160-collect .zw160-bowl-unit .zw160-bowl-foreground{z-index:8!important}
#app .zw165.zw160-collect .zw160-ingredient{
 display:grid!important;place-items:center!important;padding:0!important;
 overflow:visible!important;border-radius:50%!important;
 background:none!important;
}
#app .zw165.zw160-collect .zw160-ingredient img{
 width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;
 object-fit:contain!important;object-position:center!important;margin:0 auto!important;
 transform:none!important;
}
#app .zw165.zw160-collect .zw160-count-item img{
 object-fit:contain!important;object-position:center!important;
}
@media(orientation:landscape) and (max-height:650px){
 #app .zw165.zw160-collect .zw160-bowl-unit .zw166-bowl-stash{top:29%!important;height:35%!important}
}


/* source: hunt-v176/legible-numbers.css */
/* Zahlenjagd V176: toddler-friendly, consistent typography for target and every bubble. */
/* Never use the old irregular numeric image assets again in this game. */
#app .zw95-hunt .zw176-legible-digit{
 font-family:"Arial Rounded MT Bold","Trebuchet MS",Verdana,Arial,sans-serif!important;
 font-style:normal!important;font-weight:900!important;
 font-variant-numeric:lining-nums tabular-nums!important;
 font-feature-settings:"lnum" 1,"tnum" 1!important;
 letter-spacing:0!important;
 color:#56371f!important;
 -webkit-text-stroke:.18px #603b24!important;
 text-shadow:0 1px 0 #fff5dd,0 0 1px #5c3d2c33!important;
 text-align:center!important;text-decoration:none!important;
 white-space:nowrap!important;
 opacity:1!important;
 pointer-events:none!important;
 text-rendering:optimizeLegibility!important;
 -webkit-font-smoothing:antialiased!important;
}
#app .zw95-hunt .zw95-hunt-bubble .zw95-hunt-bubble-number.zw176-legible-digit{
 display:flex!important;align-items:center!important;justify-content:center!important;
 position:absolute!important;z-index:5!important;
 left:13%!important;top:10%!important;width:74%!important;height:80%!important;
 max-width:none!important;max-height:none!important;
 font-size:clamp(32px,10vw,49px)!important;
 line-height:1!important;
 background:none!important;object-fit:initial!important;
}
#app .zw95-hunt .zw95-hunt-bubble .zw95-hunt-bubble-number.zw176-digits-2{
 font-size:clamp(28px,8.8vw,42px)!important;
}
#app .zw95-hunt .zw95-hunt-bubble .zw95-hunt-bubble-number.zw176-digits-3{
 font-size:clamp(23px,7.2vw,35px)!important;
}
#app .zw95-hunt .zw91-goal-inner .zw95-hunt-goal.zw176-legible-digit{
 display:flex!important;align-items:center!important;justify-content:center!important;
 position:relative!important;flex:0 0 auto!important;
 width:clamp(47px,15vw,72px)!important;max-width:none!important;
 height:83%!important;max-height:83%!important;
 font-size:clamp(44px,13vw,65px)!important;line-height:1!important;
 object-fit:initial!important;
}
#app .zw95-hunt .zw91-goal-inner .zw95-hunt-goal.zw176-digits-2{
 font-size:clamp(35px,10.3vw,55px)!important;
}
#app .zw95-hunt .zw91-goal-inner .zw95-hunt-goal.zw176-digits-3{
 font-size:clamp(27px,8.7vw,44px)!important;
}
@media(orientation:portrait) and (max-width:354px){
 #app .zw95-hunt .zw95-hunt-bubble .zw95-hunt-bubble-number.zw176-digits-1{font-size:35px!important}
 #app .zw95-hunt .zw95-hunt-bubble .zw95-hunt-bubble-number.zw176-digits-2{font-size:29px!important}
 #app .zw95-hunt .zw91-goal-inner .zw95-hunt-goal.zw176-digits-1{font-size:43px!important}
 #app .zw95-hunt .zw91-goal-inner .zw95-hunt-goal.zw176-digits-2{font-size:36px!important}
}
@media(orientation:landscape) and (max-height:650px){
 #app .zw95-hunt .zw95-hunt-bubble .zw95-hunt-bubble-number.zw176-digits-1{font-size:clamp(26px,8vh,37px)!important}
 #app .zw95-hunt .zw95-hunt-bubble .zw95-hunt-bubble-number.zw176-digits-2{font-size:clamp(23px,7vh,32px)!important}
 #app .zw95-hunt .zw95-hunt-bubble .zw95-hunt-bubble-number.zw176-digits-3{font-size:clamp(21px,6vh,28px)!important}
 #app .zw95-hunt .zw91-goal-inner .zw95-hunt-goal.zw176-legible-digit{font-size:clamp(33px,11vh,48px)!important;width:clamp(48px,11vh,68px)!important}
 #app .zw95-hunt .zw91-goal-inner .zw95-hunt-goal.zw176-digits-2{font-size:clamp(27px,9vh,42px)!important}
 #app .zw95-hunt .zw91-goal-inner .zw95-hunt-goal.zw176-digits-3{font-size:clamp(23px,7.5vh,35px)!important}
}


/* source: hunt-v177/modes.css */
/* V177 – zwei Varianten der handgemalten Zahlenjagd */
#app .zw170-launch .zw177-hunt-modes{
 width:min(96%,520px)!important;flex:0 0 auto!important;
 display:flex!important;align-items:flex-end!important;justify-content:space-evenly!important;
 gap:clamp(8px,4vw,28px)!important;margin-bottom:1.1vh!important;
}
#app .zw170-launch .zw177-mode-button{
 position:relative!important;display:flex!important;flex-direction:column!important;
 align-items:center!important;justify-content:center!important;
 width:47%!important;max-width:190px!important;
 min-height:91px!important;padding:0!important;gap:1px!important;
 background:transparent!important;border:none!important;box-shadow:none!important;
 cursor:pointer!important;touch-action:manipulation!important;
 -webkit-tap-highlight-color:transparent!important;
}
#app .zw170-launch .zw177-mode-button img{
 width:clamp(70px,21vw,100px)!important;height:clamp(70px,21vw,100px)!important;
 object-fit:contain!important;pointer-events:none!important;
 filter:drop-shadow(0 3px 3px #533d2d66)!important;
}
#app .zw170-launch .zw177-mode-button span{
 display:block!important;max-width:100%!important;
 padding:5px 10px 6px!important;white-space:nowrap!important;
 font-family:"Trebuchet MS","Arial Rounded MT Bold",Arial,sans-serif!important;
 font-size:clamp(12px,3.6vw,17px)!important;font-weight:800!important;
 color:#70462b!important;line-height:1.05!important;text-shadow:0 1px 0 #ffefc0!important;
 background:#f8e7c8 url('/bakery-v166/woodlabel.webp') center/100% 100% no-repeat!important;
 border-radius:18px!important;
}
#app .zw170-launch .zw177-mode-button:active img{transform:scale(.92)!important}
#app .zw170-launch .zw177-mode-button:focus-visible{outline:3px solid #86552f!important;border-radius:20px!important}
#app .zw95-hunt .zw95-hunt-bubble{width:clamp(56px,17vw,78px)!important;height:clamp(56px,17vw,78px)!important;min-width:56px!important;min-height:56px!important}
#app .zw95-hunt.zw177-still .zw95-hunt-bubble:not(.is-popped):not(.is-burst):not(.zw91-wrong){
 animation:zw177-soft-sway 5.3s ease-in-out infinite!important;
 animation-delay:var(--wobble-delay,0s)!important;
}
#app .zw95-hunt.zw177-still .zw95-hunt-bubble>img:first-child{
 animation:none!important;
}
#app .zw95-hunt.zw177-flying .zw95-hunt-bubble>img:first-child{
 animation:none!important;
}
@keyframes zw177-soft-sway {
 0%,100%{transform:translate(-50%,-50%) rotate(-1.4deg)}
 25%{transform:translate(calc(-50% + 2px),calc(-50% - 2px)) rotate(.8deg)}
 50%{transform:translate(calc(-50% - 1px),calc(-50% + 2px)) rotate(1.4deg)}
 75%{transform:translate(calc(-50% + 1px),calc(-50% - 2px)) rotate(-.7deg)}
}
#app .zw95-hunt.zw177-flying .zw91-title{background-image:url('/hunt-v177/flying-title.webp')!important}
#app .zw95-hunt.zw177-flying .zw95-hunt-bubble{will-change:left,top!important}
#app .zw95-hunt .zw91-hunt-step i{max-width:18px!important;min-width:0!important}
@media(orientation:portrait) and (max-width:354px){
 #app .zw95-hunt .zw95-hunt-bubble{width:clamp(53px,16.8vw,63px)!important;height:clamp(53px,16.8vw,63px)!important;min-width:53px!important;min-height:53px!important}
 #app .zw170-launch .zw177-mode-button span{font-size:11px!important;padding:4px 7px!important}
}
@media(orientation:landscape) and (max-height:650px){
 #app .zw170-launch .zw177-hunt-modes{
  grid-area:2/3!important;align-self:center!important;justify-self:center!important;
  width:100%!important;height:100%!important;flex-direction:column!important;
  justify-content:center!important;align-items:center!important;gap:5px!important;
 }
 #app .zw170-launch .zw177-mode-button{width:100%!important;min-height:0!important;max-height:50%!important;gap:0!important}
 #app .zw170-launch .zw177-mode-button img{width:min(19vh,78px)!important;height:min(19vh,78px)!important}
 #app .zw170-launch .zw177-mode-button span{font-size:clamp(10px,2.8vh,15px)!important;padding:2px 5px!important}
 #app .zw95-hunt .zw95-hunt-bubble{width:clamp(49px,13vh,64px)!important;height:clamp(49px,13vh,64px)!important;min-width:49px!important;min-height:49px!important}
}
@media(prefers-reduced-motion:reduce){
 #app .zw95-hunt.zw177-still .zw95-hunt-bubble{animation:none!important;transform:translate(-50%,-50%)!important}
 #app .zw95-hunt.zw177-flying .zw95-hunt-bubble{will-change:auto!important}
}


/* source: hunt-v179/motion.css */
/* v179: recognizable movement and original-looking free scattering (positions are calculated in JS). */
#app .zw95-hunt.zw177-still .zw95-hunt-bubble:not(.is-popped):not(.is-burst):not(.zw91-wrong){
 animation:zw179-wobble 3.5s ease-in-out infinite!important;
 animation-delay:var(--wobble-delay,0s)!important;
}
/* Animate individual translate/rotate properties: the legacy bubble's
   transform:translate(-50%,-50%) !important otherwise cancels animation transforms. */
@keyframes zw179-wobble{
 0%,100%{translate:0px 0px;rotate:-2deg}
 26%{translate:6px -5px;rotate:2deg}
 52%{translate:-5px 4px;rotate:2.6deg}
 76%{translate:4px -4px;rotate:-1.8deg}
}
#app .zw95-hunt.zw177-flying .zw95-hunt-bubble>img:first-child{
 animation:zw179-flying-pulse 5.5s ease-in-out infinite!important;
 animation-delay:var(--wobble-delay,0s)!important;
}
@keyframes zw179-flying-pulse{
 0%,100%{transform:rotate(-2deg)}
 50%{transform:rotate(2deg)}
}
@media(prefers-reduced-motion:reduce){
 html:not(.zw-force-motion) #app .zw95-hunt.zw177-still .zw95-hunt-bubble{animation:none!important;transform:translate(-50%,-50%)!important}
 html:not(.zw-force-motion) #app .zw95-hunt.zw177-flying .zw95-hunt-bubble>img:first-child{animation:none!important}
}
@media(prefers-reduced-motion:reduce){
 html.zw-force-motion #app .zw95-hunt.zw177-still .zw95-hunt-bubble:not(.is-popped):not(.is-burst):not(.zw91-wrong){animation:zw179-wobble 3.5s ease-in-out infinite!important}
 html.zw-force-motion #app .zw95-hunt.zw177-flying .zw95-hunt-bubble>img:first-child{animation:zw179-flying-pulse 5.5s ease-in-out infinite!important}
}


/* source: hunt-v180/flight-control.css */
/* v180. Deliberate selection of flying mode opts into movement even on iOS with Reduce Motion. */
#app .zw95-hunt.zw177-flying .zw180-motion-control{
 position:absolute!important;
 left:max(12px,env(safe-area-inset-left))!important;
 right:auto!important;top:auto!important;
 bottom:max(8px,env(safe-area-inset-bottom))!important;
 width:clamp(54px,14vw,65px)!important;height:clamp(54px,14vw,65px)!important;
 border:0!important;padding:0!important;
 border-radius:50%!important;
 background:transparent!important;
 display:grid!important;place-items:center!important;
 z-index:101!important;overflow:visible!important;
 touch-action:manipulation!important;cursor:pointer!important;
 -webkit-tap-highlight-color:transparent!important;
 filter:drop-shadow(0 3px 2px #55432d80)!important;
}
#app .zw95-hunt.zw177-flying .zw180-motion-control img{
 display:block!important;width:100%!important;height:100%!important;
 object-fit:contain!important;pointer-events:none!important;
}
#app .zw95-hunt.zw177-flying .zw180-motion-control:active{
 scale:.93!important;
}
#app .zw95-hunt.zw177-flying .zw180-motion-control:focus-visible{
 outline:3px solid #8e5834!important;outline-offset:2px!important;
}
@media(orientation:landscape){
 #app .zw95-hunt.zw177-flying .zw180-motion-control{
  width:clamp(47px,13vh,62px)!important;height:clamp(47px,13vh,62px)!important;
  left:max(8px,env(safe-area-inset-left))!important;bottom:max(6px,env(safe-area-inset-bottom))!important;
 }
}


/* source: game-start-v181/play-position.css */
/* v181 — larger red Play buttons, moved up on every illustrated game entrance. */
#app .zw170-launch .zw170-play{
 width:clamp(122px,39vw,158px)!important;
 height:clamp(122px,39vw,158px)!important;
 margin-bottom:clamp(24px,4.5vh,42px)!important;
 position:relative!important;top:-7px!important;
 flex-shrink:0!important;
}
#app .zw170-launch .zw177-hunt-modes{
 width:min(98%,540px)!important;
 gap:clamp(9px,3vw,24px)!important;
 margin-bottom:clamp(22px,4vh,38px)!important;
 position:relative!important;top:-8px!important;
}
#app .zw170-launch .zw177-hunt-modes .zw177-mode-button{
 width:48%!important;max-width:205px!important;
 min-height:0!important;
 flex:0 1 48%!important;
}
#app .zw170-launch .zw177-hunt-modes .zw177-mode-button img{
 width:clamp(96px,31vw,132px)!important;
 height:clamp(96px,31vw,132px)!important;
}
#app .zw170-launch .zw177-hunt-modes .zw177-mode-button span{
 font-size:clamp(12px,3.7vw,17px)!important;
}
@media(orientation:portrait) and (max-height:650px){
 #app .zw170-launch .zw170-play{
  width:clamp(108px,34vw,124px)!important;
  height:clamp(108px,34vw,124px)!important;
  margin-bottom:clamp(16px,3vh,25px)!important;top:-4px!important;
 }
 #app .zw170-launch .zw177-hunt-modes{
  margin-bottom:clamp(12px,2.8vh,23px)!important;top:-4px!important;
 }
 #app .zw170-launch .zw177-hunt-modes .zw177-mode-button img{
  width:clamp(80px,25vw,103px)!important;height:clamp(80px,25vw,103px)!important;
 }
}
@media(orientation:landscape){
 #app .zw170-launch .zw170-play{
  width:clamp(108px,min(36vh,19vw),149px)!important;
  height:clamp(108px,min(36vh,19vw),149px)!important;
  margin-bottom:0!important;top:-clamp(4px,2vh,12px)!important;
 }
 #app .zw170-launch .zw177-hunt-modes{
  grid-area:2/3!important;
  align-self:center!important;justify-self:end!important;
  width:min(100%,190px)!important;
  height:auto!important;max-height:100%!important;
  gap:clamp(3px,1.3vh,7px)!important;
  margin-bottom:0!important;top:-clamp(3px,2vh,9px)!important;
 }
 #app .zw170-launch .zw177-hunt-modes .zw177-mode-button{
  width:100%!important;max-width:100%!important;
  flex:0 1 auto!important;
  max-height:50%!important;min-height:0!important;
 }
 #app .zw170-launch .zw177-hunt-modes .zw177-mode-button img{
  width:clamp(68px,min(25vh,12vw),96px)!important;
  height:clamp(68px,min(25vh,12vw),96px)!important;
 }
}


/* Frame-smooth composited flight. The position remains a fixed percentage; only the
   individual translate property changes at requestAnimationFrame. */
#app .zw95-hunt.zw177-flying .zw95-hunt-bubble{
 will-change:translate!important;
 backface-visibility:hidden!important;
}
@media(prefers-reduced-motion:reduce){
 #app .zw95-hunt.zw177-flying .zw95-hunt-bubble{
  will-change:translate!important;
 }
}

#app .zw160-ghost{will-change:translate!important}

/* ---- /auto-maze-v107/auto-maze.css?v=107 ---- */
/* Zählwiese V105: gemalte Auto-Labyrinth-Welt mit glattem Fahrverhalten */
#app .zw105.zw93.main-content{
  background:#8dca6a url('/auto-maze-v106/world-portrait.webp') center/cover no-repeat!important;
}
#app .zw105 #zw93Board.zw104-board{
  border:11px solid #bc854a!important;
  border-radius:27px!important;
  background:#78bb53 url('/auto-maze-v106/meadow-board.webp') center/cover no-repeat!important;
  box-shadow:inset 0 0 0 4px #f9e3a9,inset 0 0 0 7px #a87b45,0 7px 8px #63442b73!important;
  overflow:hidden!important;
}
#app .zw105 #zw93Canvas{z-index:2!important}
#app .zw105 .zw104-task{
  border:4px solid #b98a55!important;border-radius:25px 21px 27px 23px!important;
  background:#fff0cbf5!important;
  box-shadow:inset 0 0 0 3px #fff9e8,1px 4px 3px #75533955!important;
}
#app .zw105 .zw105-car{
  background:none!important;border:0!important;outline:0!important;
  transition:left 280ms cubic-bezier(.19,.7,.3,1),top 280ms cubic-bezier(.19,.7,.3,1)!important;
  transform:translate(-50%,-50%)!important;
  animation:none!important;margin:0!important;
  filter:drop-shadow(1px 3px 2px #66543c73)!important;
  will-change:left,top;
}
#app .zw105 .zw105-car .zw103-rotator,
#app .zw105 .zw105-car img,
#app .zw105 .zw105-car.zw103-rolling img,
#app .zw105 .zw105-car.zw97-stepping,
#app .zw105 .zw105-car.zw93-wiggle{
  animation:none!important;transition:none!important;transform:none!important;
}
#app .zw105 .zw105-car .zw103-wheel{display:none!important}
#app .zw105 .zw104-house{
  z-index:8!important;
  filter:drop-shadow(0 4px 3px #5743298c)!important;
  transform:translate(-50%,-53%)!important;
}
#app .zw105 .zw104-goalring{display:none!important}
#app .zw105 .zw104-title{color:#704729!important;text-shadow:1px 2px #fff2cc}
#app .zw105 .zw104-task .zw104-arrow{color:#bd7840!important}
#app .zw105 .zw104-levels .zw93-level{filter:drop-shadow(0 3px 3px #664f2a77)}
@media(orientation:landscape) and (max-height:650px){
 #app .zw105.zw93.main-content{
   background-image:url('/auto-maze-v106/world-landscape.webp')!important;
 }
 #app .zw105 #zw93Board.zw104-board{border-width:8px!important}
}
@media(prefers-reduced-motion:reduce){
 #app .zw105 .zw105-car{transition:none!important;will-change:auto}
}

/* Zählwiese V106 – Bildkachel-Labyrinth, ohne Canvas-Grafiken */
#app .zw106 #zw93Board{background:#75bb4f url('/auto-maze-v106/meadow-board.webp') center/cover no-repeat!important;}
#app .zw106 .zw106-scene,
#app .zw106 .zw106-road-tiles{
 position:absolute!important;inset:0!important;pointer-events:none!important;
 overflow:hidden!important;
}
#app .zw106 .zw106-scene{z-index:1!important}
#app .zw106 .zw106-road-tiles{z-index:3!important}
#app .zw106 .zw106-road-art{position:absolute!important;object-fit:fill!important;
 display:block!important;max-width:none!important;opacity:1!important;filter:none!important;
 user-select:none!important;-webkit-user-drag:none!important}
#app .zw106 .zw106-scenery{position:absolute!important;transform:translate(-50%,-50%)!important;
 object-fit:contain!important;filter:drop-shadow(1px 2px 1px #425f3066)!important;
 pointer-events:none!important;user-select:none!important}
#app .zw106 .zw104-house{z-index:8!important;}
#app .zw106 .zw105-car{z-index:9!important;}

/* V107 – unabhängige Buntstift-Illustrationen, sanfte Bewegungen */
#app .zw107.main-content{
 background:#83c96f url('/auto-maze-v107/world-portrait.webp') center/cover no-repeat!important;
}
#app .zw107 #zw93Board{
 background:#84c961 url('/auto-maze-v107/meadow-board.webp') center/cover no-repeat!important;
}
#app .zw107 .zw106-scene{z-index:1!important}
#app .zw107 .zw106-road-tiles{z-index:3!important}
#app .zw107 .zw107-ambient,#app .zw107 .zw107-traffic-layer{
 position:absolute!important;inset:0!important;pointer-events:none!important;overflow:hidden!important;
}
#app .zw107 .zw107-ambient{z-index:4!important}
#app .zw107 .zw107-traffic-layer{z-index:7!important}
#app .zw107 .zw107-ambient-item{
 position:absolute!important;transform:translate(-50%,-50%);
 pointer-events:none!important;object-fit:contain!important;opacity:.94;
 filter:drop-shadow(1px 2px 2px #536b4142);
}
#app .zw107 .zw107-ambient-item.is-butterfly{
 animation:zw107Butterfly 7.3s ease-in-out infinite alternate;
}
#app .zw107 .zw107-ambient-item.is-duck{
 animation:zw107Duck 5.7s ease-in-out infinite alternate;
}
#app .zw107 .zw107-ambient-item.is-bird{
 animation:zw107Bird 8.5s ease-in-out infinite alternate;
}
#app .zw107 .zw107-scenery{
 animation:zw107SceneryReveal .5s ease-out both;
}
#app .zw107 .zw107-scenery.is-tree,
#app .zw107 .zw107-scenery.is-flower{
 animation:zw107FlowerBreathe 5.2s ease-in-out infinite alternate;
}
#app .zw107 .zw107-traffic-image{
 position:absolute!important;display:block!important;object-fit:contain!important;
 transform:translate(-50%,-50%)!important;
 filter:drop-shadow(1px 3px 2px #6a493f85);
}
#app .zw107 .zw107-traffic-image[data-light="red"]{
 filter:drop-shadow(0 0 4px #f5a19cbb) drop-shadow(1px 2px 1px #664d4190);
}
#app .zw107 .zw107-traffic-image.is-stopping{
 animation:zw107StopSignal .5s ease-out 1;
}
#app .zw107 .zw107-dust,
#app .zw107 .zw107-goal-sparkles{
 position:absolute!important;pointer-events:none!important;object-fit:contain!important;
 max-width:none!important;transform:translate(-50%,-50%)!important;
}
#app .zw107 .zw107-dust{z-index:6!important;height:auto!important;opacity:0}
#app .zw107 .zw107-goal-sparkles{
 z-index:7!important;height:auto!important;opacity:.35;
 animation:zw107Glint 4.2s ease-in-out infinite;
}
#app .zw107 .zw107-goal-sparkles.is-celebrating{
 animation:zw107GlintWin .8s ease-in-out 3;
}
#app .zw107 .zw105-car{
 transition:left 250ms cubic-bezier(.18,.7,.25,1),top 250ms cubic-bezier(.18,.7,.25,1)!important;
 animation:none!important;transform:translate(-50%,-50%)!important;
}
#app .zw107 .zw105-car.zw107-arrived{
 animation:zw107ParkedJoy .7s ease-out 1!important;
}
#app .zw107 .zw104-house{
 transition:none!important;filter:drop-shadow(0 4px 3px #71552d7d)!important;
}
@keyframes zw107Butterfly{
 0%{transform:translate(-58%,-50%) rotate(-9deg) scale(.9)}
 25%{transform:translate(-35%,-80%) rotate(8deg) scale(1.06)}
 55%{transform:translate(-80%,-105%) rotate(-7deg) scale(.96)}
 100%{transform:translate(-8%,-35%) rotate(11deg) scale(1.02)}
}
@keyframes zw107Duck{
 0%{transform:translate(-65%,-50%) rotate(-3deg)}
 50%{transform:translate(-48%,-57%) rotate(1deg)}
 100%{transform:translate(-32%,-49%) rotate(3deg)}
}
@keyframes zw107Bird{
 0%{transform:translate(-52%,-54%) scale(.95);opacity:.8}
 100%{transform:translate(-46%,-63%) scale(1.04);opacity:.98}
}
@keyframes zw107FlowerBreathe{
 from{opacity:.87;filter:drop-shadow(0 2px 2px #5f77503d) saturate(.98)}
 to{opacity:1;filter:drop-shadow(0 3px 2px #5f775055) saturate(1.08)}
}
@keyframes zw107SceneryReveal{
 from{opacity:0}to{opacity:.98}
}
@keyframes zw107StopSignal{
 0%,100%{opacity:1}35%{opacity:.72}70%{opacity:1}
}
@keyframes zw107Glint{
 0%,100%{opacity:.16;filter:saturate(.9)}
 50%{opacity:.48;filter:saturate(1.12)}
}
@keyframes zw107GlintWin{
 0%,100%{opacity:.45;transform:translate(-50%,-50%) scale(1)}
 50%{opacity:1;transform:translate(-50%,-50%) scale(1.15)}
}
@keyframes zw107ParkedJoy{
 0%,100%{transform:translate(-50%,-50%) scale(1)}
 50%{transform:translate(-50%,-54%) scale(1.04)}
}
@media (orientation:landscape) and (max-height:650px){
 #app .zw107.main-content{
  background:#8ac97a url('/auto-maze-v107/world-landscape.webp') center/cover no-repeat!important;
 }
}
@media (prefers-reduced-motion:reduce){
 #app .zw107 .zw107-ambient-item,
 #app .zw107 .zw107-scenery,
 #app .zw107 .zw107-goal-sparkles,
 #app .zw107 .zw105-car,
 #app .zw107 .zw107-traffic-image{
  animation:none!important;transition:none!important;
 }
}

/* V107 mobile control fix: make restart visible only inside Auto-Labyrinth. */
#app:has(.zw107) #zw95Restart{
 display:flex!important;visibility:visible!important;opacity:1!important;
 align-items:center!important;justify-content:center!important;
 width:56px!important;height:56px!important;min-width:56px!important;min-height:56px!important;
 border:0!important;background:transparent!important;box-shadow:none!important;
 position:absolute!important;right:max(10px,env(safe-area-inset-right))!important;
 bottom:max(12px,env(safe-area-inset-bottom))!important;
 z-index:220!important;pointer-events:auto!important;
 padding:0!important;
}
#app:has(.zw107) #zw95Restart img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;}
#app .zw107 .zw107-scenery.is-tree,#app .zw107 .zw107-scenery.is-flower{
 animation:zw107FlowerBreathe 5.2s ease-in-out infinite alternate!important;
}

/* Keep the actual car visible at arrival; do not replace it by a second ghost image. */
#app .zw107 .zw105-car.zw107-arrived,
#app .zw107 .zw105-car.is-hugging{
 opacity:1!important;visibility:visible!important;
 transform:translate(-50%,-50%)!important;
}
#app .zw107 .zw104-success{display:none!important;}
#app .zw107 .zw104-house.zw104-arrived{opacity:1!important;visibility:visible!important;}

/* ---- /labyrinth-premium-v109/maze-menu.css?v=109 ---- */
/* V108 Zählwiese – large illustrated cards, like the Backstube. */
#app .zw108-hub.main-content{
 position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
 overflow:hidden!important;isolation:isolate!important;
 background:#9fce83 url('/labyrinth-premium-v109/world-menu-portrait.webp')
 center center/100% 100% no-repeat!important;
}
#app .zw108-hub .zw108-page-title{
 position:absolute;z-index:2;top:2.8%;left:15%;width:70%;height:10.3%;
 object-fit:contain!important;filter:drop-shadow(0 3px 3px #6b552b77);
 pointer-events:none!important;
}
#app .zw108-hub .zw108-card-column{
 position:absolute;z-index:5;left:3.7%;width:92.6%;top:15%;height:78.3%;
 display:flex;flex-direction:column;align-items:stretch;gap:2.4%;
}
#app .zw108-hub .zw108-choice{
 position:relative!important;display:block!important;box-sizing:border-box!important;
 width:100%!important;height:calc(50% - .8%)!important;min-height:0!important;min-width:0!important;
 flex:1 1 0!important;
 padding:0!important;margin:0!important;border:none!important;background:transparent!important;
 outline:0!important;box-shadow:none!important;border-radius:19px!important;
 cursor:pointer!important;touch-action:manipulation!important;
 -webkit-tap-highlight-color:transparent;filter:drop-shadow(0 5px 4px #4b382751);
 transition:transform .24s cubic-bezier(.17,.75,.3,1),filter .24s ease!important;
}
#app .zw108-hub .zw108-choice .zw108-cardart{
 display:block!important;width:100%!important;height:100%!important;
 object-fit:fill!important;pointer-events:none!important;
 user-select:none!important;-webkit-user-select:none!important;
}
#app .zw108-hub .zw108-choice .zw108-play{
 position:absolute!important;z-index:2!important;bottom:-3%;left:40%;
 width:20%!important;height:27%!important;object-fit:contain!important;
 pointer-events:none!important;filter:drop-shadow(0 4px 2px #65432970);
 animation:zw108-play-breathe 3.8s ease-in-out infinite;
}
#app .zw108-hub .zw108-choice:nth-child(2) .zw108-play{animation-delay:-1.8s}
#app .zw108-hub .zw108-choice:active{transform:scale(.965)!important}
#app .zw108-hub .zw108-choice:focus-visible{outline:4px solid #fff6b8!important;outline-offset:-4px!important}
#app .zw108-hub .zw108-garden-butterfly{
 position:absolute;z-index:4;left:68%;top:13%;width:clamp(30px,8vw,62px);
 filter:drop-shadow(0 2px 2px #765b4559);pointer-events:none!important;
 animation:zw108-butterfly-flight 7.4s ease-in-out infinite alternate;
}
@keyframes zw108-play-breathe{
 0%,100%{transform:translateY(0) scale(.99)}
 50%{transform:translateY(-2px) scale(1.055)}
}
@keyframes zw108-butterfly-flight{
 0%{transform:translate(-18px,-2px) rotate(-7deg) scale(.88)}
 30%{transform:translate(15px,-17px) rotate(8deg) scale(1.09)}
 65%{transform:translate(-10px,6px) rotate(-8deg) scale(.96)}
 100%{transform:translate(25px,-22px) rotate(11deg) scale(1.04)}
}
@media (orientation:landscape) and (max-height:650px){
 #app .zw108-hub.main-content{
  background-image:url('/labyrinth-premium-v109/world-menu-landscape.webp')!important;
 }
 #app .zw108-hub .zw108-page-title{top:1.4%;height:17%;left:31%;width:38%}
 #app .zw108-hub .zw108-card-column{
  top:19%;left:4%;width:92%;height:76%;
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2%;
 }
 #app .zw108-hub .zw108-choice{
  height:100%!important;min-height:0!important;align-self:stretch!important;
 }
 #app .zw108-hub .zw108-choice .zw108-play{width:21%!important;height:29%!important}
 #app .zw108-hub .zw108-garden-butterfly{top:12%;left:80%;width:28px}
}
@media (max-width:350px) and (orientation:portrait){
 #app .zw108-hub .zw108-card-column{left:1%;width:98%;top:16%;height:77%}
 #app .zw108-hub .zw108-page-title{top:4%;left:13%;width:74%;height:10%}
}
@media(prefers-reduced-motion:reduce){
 #app .zw108-hub .zw108-play,#app .zw108-hub .zw108-garden-butterfly{
  animation:none!important
 }
 #app .zw108-hub .zw108-choice{transition:none!important}
}
#app .zw108-hub .zw108-choice-cuddle{
 background:transparent url('/labyrinth-premium-v109/card-cuddle.webp') center/100% 100% no-repeat!important;
}
#app .zw108-hub .zw108-choice-auto{
 background:transparent url('/labyrinth-premium-v109/card-auto.webp') center/100% 100% no-repeat!important;
}

/* ---- /labyrinth-premium-v109/cuddle-premium.css?v=109 ---- */
/* V108 handpainted garden maze: independent illustrated image assets, NO canvas. */
#app .zw108-cuddle.zw105.main-content{
 background:#9dcb83 url('/labyrinth-premium-v109/world-menu-portrait.webp') center/100% 100% no-repeat!important;
}
#app .zw108-cuddle .zw105-title{
 background:transparent url('/labyrinth-premium-v109/title-cuddle.webp') center/100% 100% no-repeat!important;
 left:17%!important;top:1%!important;width:79%!important;height:10%!important;
 filter:drop-shadow(0 3px 2px #5d473958)!important;
}
#app .zw108-cuddle .zw105-title span{
 font-size:0!important;color:transparent!important;text-shadow:none!important;
}
#app .zw108-cuddle .zw105-task{
 background:#fff2d2 url('/storybook-games-v91/choice-board.webp') center/100% 100% no-repeat!important;
 border:0!important;box-shadow:0 4px 3px #704d3150!important;
 border-radius:24px!important;
 top:12.1%!important;height:11.2%!important;
}
#app .zw108-cuddle .zw105-board{
 top:26%!important;left:4%!important;width:92%!important;height:59.7%!important;
 border:10px solid #ba8244!important;border-radius:28px!important;
 background:#90ca6f url('/labyrinth-premium-v109/cuddle-meadow.webp') center/cover no-repeat!important;
 box-shadow:inset 0 0 0 4px #f7e4a8,inset 0 0 0 7px #966439,0 8px 5px #4f3c2850!important;
 overflow:hidden!important;
}
#app .zw108-cuddle .zw93-paper,#app .zw108-cuddle .zw93-flecks,#app .zw108-cuddle #zw93Canvas{
 display:none!important;
}
#app .zw108-cuddle .zw108-cuddle-scene,
#app .zw108-cuddle .zw108-cuddle-roads{
 position:absolute!important;inset:0!important;pointer-events:none!important;overflow:hidden!important;
}
#app .zw108-cuddle .zw108-cuddle-scene{z-index:1!important}
#app .zw108-cuddle .zw108-cuddle-roads{z-index:3!important}
#app .zw108-cuddle .zw108-cuddle-path{
 position:absolute!important;object-fit:fill!important;
 display:block!important;max-width:none!important;filter:none!important;
 pointer-events:none!important;user-select:none!important;-webkit-user-drag:none!important;
}
#app .zw108-cuddle .zw108-cuddle-deco{
 position:absolute!important;object-fit:contain!important;
 transform:translate(-50%,-50%)!important;pointer-events:none!important;
 filter:drop-shadow(0 3px 3px #355c333a)!important;opacity:.96;
 animation:zw108-scene-breathe 5s ease-in-out infinite alternate!important;
}
#app .zw108-cuddle .zw108-cuddle-deco:nth-child(2){animation-delay:-2.8s!important}
#app .zw108-cuddle .zw105-animal{
 z-index:6!important;opacity:1!important;
 border:0!important;background:transparent!important;
 transform:translate(-50%,-50%)!important;
 transition:left .29s cubic-bezier(.15,.74,.28,1),top .29s cubic-bezier(.15,.74,.28,1)!important;
 filter:drop-shadow(0 3px 2px #4d4c325a)!important;
}
#app .zw108-cuddle .zw105-animal img{
 animation:zw108-animal-breathe 4.2s ease-in-out infinite!important;transform:none;
}
#app .zw108-cuddle .zw105-animal.selected{
 filter:drop-shadow(0 0 6px #ffefa4) drop-shadow(0 3px 2px #5e473a65)!important;
}
#app .zw108-cuddle .zw105-hug.zw108-hug{
 position:absolute!important;display:none!important;
 width:min(260px,70%)!important;height:min(224px,48%)!important;
 overflow:visible!important;z-index:16!important;
 transform:translate(-50%,-50%)!important;pointer-events:none!important;
}
#app .zw108-cuddle .zw108-hug.is-visible{
 display:flex!important;align-items:center!important;justify-content:center!important;
 animation:zw108-hug-reveal 2.2s ease-out both!important;
}
#app .zw108-cuddle .zw108-hug-pair{
 width:100%!important;height:100%!important;object-fit:contain!important;
 filter:drop-shadow(0 5px 4px #75564165);
 transform:translateZ(0)!important;
}
#app .zw108-cuddle .zw105-levels{
 top:87.8%!important;left:3%!important;width:84%!important;height:11.1%!important;
 gap:clamp(3px,2vw,17px)!important;
}
#app .zw108-cuddle .zw105-levels .zw93-level{
 width:clamp(63px,18vw,85px)!important;height:clamp(63px,18vw,85px)!important;
 background-position:center!important;background-repeat:no-repeat!important;background-size:contain!important;
 filter:drop-shadow(0 3px 2px #72533d44)!important;
 border:0!important;padding:0!important;box-shadow:none!important;
}
#app .zw108-cuddle .zw105-levels .zw93-level img{opacity:0!important}
#app .zw108-cuddle .zw105-levels .zw93-level:nth-child(1){background-image:url('/labyrinth-premium-v109/difficulty-0.webp')!important}
#app .zw108-cuddle .zw105-levels .zw93-level:nth-child(2){background-image:url('/labyrinth-premium-v109/difficulty-1.webp')!important}
#app .zw108-cuddle .zw105-levels .zw93-level:nth-child(3){background-image:url('/labyrinth-premium-v109/difficulty-2.webp')!important}
#app .zw108-cuddle .zw105-levels .zw93-level.is-selected{
 filter:drop-shadow(0 0 6px #fff0a9) drop-shadow(0 4px 3px #6e5c344a)!important;
 transform:scale(1.06)!important;
}
#app:has(.zw108-cuddle) #zw95Restart{
 display:flex!important;visibility:visible!important;opacity:1!important;
 width:54px!important;height:54px!important;min-width:54px!important;min-height:54px!important;
 background:transparent!important;border:0!important;padding:0!important;box-shadow:none!important;
 position:absolute!important;right:max(9px,env(safe-area-inset-right))!important;
 bottom:max(12px,env(safe-area-inset-bottom))!important;z-index:220!important;
 align-items:center!important;justify-content:center!important;
}
#app:has(.zw108-cuddle) #zw95Restart img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;}
@keyframes zw108-animal-breathe{0%,100%{transform:scale(.985)}50%{transform:scale(1.018)}}
@keyframes zw108-scene-breathe{0%{opacity:.91}100%{opacity:1}}
@keyframes zw108-hug-reveal{
 0%{opacity:0;transform:translate(-50%,-50%) scale(.72)}
 22%{opacity:1;transform:translate(-50%,-50%) scale(1.07)}
 55%{opacity:1;transform:translate(-50%,-50%) scale(.99)}
 75%{opacity:1;transform:translate(-50%,-50%) rotate(-2deg) scale(1.03)}
 100%{opacity:1;transform:translate(-50%,-50%) rotate(1deg) scale(1)}
}
@media(orientation:landscape) and (max-height:650px){
 #app .zw108-cuddle.zw105.main-content{
  background-image:url('/labyrinth-premium-v109/world-menu-landscape.webp')!important;
 }
 #app .zw108-cuddle .zw105-title{top:1%!important;left:64%!important;width:35%!important;height:15%!important}
 #app .zw108-cuddle .zw105-board{left:2%!important;top:8%!important;width:59%!important;height:87%!important}
 #app .zw108-cuddle .zw105-task{top:18%!important;height:22%!important;left:65%!important;width:33%!important}
 #app .zw108-cuddle .zw105-levels{top:46%!important;left:64%!important;width:34%!important;height:21%!important}
 #app .zw108-cuddle .zw105-levels .zw93-level{
  width:clamp(43px,13.5vh,69px)!important;height:clamp(43px,13.5vh,69px)!important;
 }
}
@media(max-width:350px) and (orientation:portrait){
 #app .zw108-cuddle .zw105-levels{left:0%!important;width:85%!important;gap:0!important}
 #app .zw108-cuddle .zw105-levels .zw93-level{width:57px!important;height:57px!important}
}
@media(prefers-reduced-motion:reduce){
 #app .zw108-cuddle .zw105-animal img,#app .zw108-cuddle .zw108-cuddle-deco,
 #app .zw108-cuddle .zw108-hug.is-visible{animation:none!important}
 #app .zw108-cuddle .zw105-animal{transition:none!important}
}

/* Final V108 safe-area and reward polish */
@media(orientation:portrait){
 #app .zw108-cuddle .zw105-title{
  left:4%!important;width:76%!important;top:1.4%!important;height:9.4%!important;
 }
}
#app .zw108-cuddle .zw93-friend.is-hugging{
 opacity:0!important;visibility:hidden!important;
 transition:opacity .1s ease-out!important;
}
#app .zw108-cuddle .zw108-hug.is-visible{
 animation:zw108-hug-reveal 2.2s ease-out both!important;
}
@keyframes zw108-hug-reveal{
 0%{opacity:.22;transform:translate(-50%,-50%) scale(.79)}
 22%{opacity:1;transform:translate(-50%,-50%) scale(1.065)}
 55%{opacity:1;transform:translate(-50%,-50%) scale(.99)}
 75%{opacity:1;transform:translate(-50%,-50%) rotate(-1.5deg) scale(1.025)}
 100%{opacity:1;transform:translate(-50%,-50%) rotate(1deg) scale(1)}
}

/* ---- /labyrinth-premium-v109/auto-premium.css?v=109 ---- */
/* Zählwiese V108 – Auto-Labyrinth im bunten Backstube-Kinderbuchstil */
#app .zw107.zw93.main-content{
 background:#9dcd7e url('/labyrinth-premium-v109/world-menu-portrait.webp')
 center/100% 100% no-repeat!important;
}
#app .zw107 .zw103-title{
 top:1%!important;left:18%!important;width:78%!important;height:10%!important;
 background:transparent url('/labyrinth-premium-v109/title-auto.webp') center/100% 100% no-repeat!important;
 filter:drop-shadow(0 3px 3px #5e462c73)!important;
}
#app .zw107 .zw103-title span{
 color:transparent!important;text-shadow:none!important;font-size:0!important;
}
#app .zw107 .zw104-task{
 top:12.1%!important;left:19%!important;width:76%!important;height:11.4%!important;
 border:0!important;background:#fff1cf url('/storybook-games-v91/choice-board.webp')
 center/100% 100% no-repeat!important;box-shadow:0 4px 3px #60442c46!important;
 border-radius:24px!important;z-index:13!important;
}
#app .zw107 .zw104-task-car{
 width:30%!important;height:85%!important;
 animation:zw108-car-preview 5s ease-in-out infinite!important;
 filter:drop-shadow(0 2px 2px #76533665)!important;
}
#app .zw107 .zw104-task-house{width:32%!important;height:96%!important;object-fit:contain!important}
#app .zw107 .zw104-task .zw104-arrow{
 color:#aa6640!important;text-shadow:1px 2px #fae5bd;
 font-weight:900!important;
}
#app .zw107 #zw93Board.zw104-board{
 top:26.1%!important;left:4%!important;width:92%!important;height:59.5%!important;
 border:10px solid #c48a49!important;border-radius:28px!important;
 background:#91d06c url('/auto-maze-v107/meadow-board.webp') center/cover no-repeat!important;
 box-shadow:inset 0 0 0 3px #ffdfa2,inset 0 0 0 6px #9b6e41,
 0 7px 5px #65442663!important;
}
#app .zw107 .zw104-house{
 filter:drop-shadow(0 4px 3px #765d3e75)!important;
 transform:translate(-50%,-53%)!important;
}
#app .zw107 .zw104-levels{
 top:87.8%!important;left:3%!important;width:84%!important;height:11.2%!important;
 gap:clamp(4px,1.8vw,17px)!important;
}
#app .zw107 .zw104-levels .zw93-level{
 width:clamp(63px,18vw,85px)!important;height:clamp(63px,18vw,85px)!important;
 border:0!important;box-shadow:none!important;padding:0!important;
 background-position:center!important;background-repeat:no-repeat!important;background-size:contain!important;
 filter:drop-shadow(0 3px 2px #71523a55)!important;
}
#app .zw107 .zw104-levels .zw93-level:nth-child(1){background-image:url('/labyrinth-premium-v109/difficulty-0.webp')!important}
#app .zw107 .zw104-levels .zw93-level:nth-child(2){background-image:url('/labyrinth-premium-v109/difficulty-1.webp')!important}
#app .zw107 .zw104-levels .zw93-level:nth-child(3){background-image:url('/labyrinth-premium-v109/difficulty-2.webp')!important}
#app .zw107 .zw104-levels .zw93-level img{opacity:0!important}
#app .zw107 .zw104-levels .zw93-level.is-selected{
 filter:drop-shadow(0 0 6px #fff5ba) drop-shadow(0 5px 2px #7052355b)!important;
 transform:scale(1.06)!important;
}
#app .zw107 .zw105-car{
 transition:left .275s cubic-bezier(.2,.72,.3,1),top .275s cubic-bezier(.2,.72,.3,1)!important;
 transform:translate(-50%,-50%)!important;
 animation:none!important;
}
#app .zw107 .zw105-car img{animation:none!important;transform:none!important}
#app .zw107 .zw107-goal-sparkles{filter:drop-shadow(0 0 7px #ffe9a86e)}
@keyframes zw108-car-preview{
 0%,100%{transform:translateX(0) scale(.985)}
 50%{transform:translateX(3px) scale(1.025)}
}
@media (orientation:landscape) and (max-height:650px){
 #app .zw107.zw93.main-content{
  background-image:url('/labyrinth-premium-v109/world-menu-landscape.webp')!important;
 }
 #app .zw107 .zw103-title{left:64%!important;width:35%!important;top:1%!important;height:15%!important}
 #app .zw107 .zw104-task{left:65%!important;width:33%!important;top:18%!important;height:21%!important}
 #app .zw107 #zw93Board.zw104-board{
  left:2%!important;top:8%!important;width:59%!important;height:87%!important;
 }
 #app .zw107 .zw104-levels{left:64%!important;width:34%!important;top:45%!important;height:22%!important}
 #app .zw107 .zw104-levels .zw93-level{
  width:clamp(43px,13.5vh,69px)!important;height:clamp(43px,13.5vh,69px)!important;
 }
}
@media(max-width:350px) and (orientation:portrait){
 #app .zw107 .zw104-levels{left:0%!important;width:85%!important;gap:0!important}
 #app .zw107 .zw104-levels .zw93-level{width:57px!important;height:57px!important}
}
@media(prefers-reduced-motion:reduce){
 #app .zw107 .zw104-task-car{animation:none!important}
 #app .zw107 .zw105-car{transition:none!important}
}

@media(orientation:portrait){
 #app .zw107 .zw103-title{
  left:4%!important;width:76%!important;top:1.4%!important;height:9.4%!important;
 }
}

/* ---- /labyrinth-premium-v109/finish-v109.css?v=109 ---- */
/* Zählwiese V109 – einheitlicher Buntstift-Kinderbuchstil wie Backstube.
   Spielfeldwege, Rahmen, Blumen, Autos, Tiere: vorgerenderte WebP-Assets.
   Keine Canvas-Zeichnungen und keine Auswahl-Ringe beim Steuern. */
#app .zw108-cuddle.zw105.main-content{
 background:#a9d18c url('/labyrinth-premium-v109/world-menu-portrait.webp') center/100% 100% no-repeat!important;
}
#app .zw108-cuddle #zw93Board.zw105-board{
 border:0!important;border-radius:21px!important;
 background:#8dcc72 url('/labyrinth-premium-v109/garden-painted.webp') center/100% 100% no-repeat!important;
 box-shadow:0 7px 9px #5c523b53!important;overflow:hidden!important;
}
#app .zw108-cuddle #zw93Board::after{
 content:"";position:absolute;inset:0;display:block;z-index:19;
 background:url('/labyrinth-premium-v109/board-frame-portrait.webp') center/100% 100% no-repeat!important;
 pointer-events:none!important;
}
#app .zw108-cuddle .zw105-title{left:18%!important;width:64%!important;top:1.5%!important}
#app .zw108-cuddle .zw105-task{
 background:#fff0d2 url('/bakery-v166/panel-blank.webp') center/100% 100% no-repeat!important;
}
#app .zw108-cuddle .zw93-friend,
#app .zw108-cuddle .zw93-friend.selected,
#app .zw108-cuddle .zw93-friend.zw93-wiggle{
 border:0!important;outline:0!important;border-radius:0!important;
 box-shadow:none!important;background:transparent!important;
 filter:drop-shadow(1px 3px 2px #5f4b3555)!important;
 animation:none!important;
}
#app .zw108-cuddle .zw93-friend img{
 animation:zw109-animal-idle 5.8s ease-in-out infinite!important;
 transform-origin:50% 85%!important;
}
#app .zw108-cuddle .zw93-friend.selected img{
 filter:none!important;
}
#app .zw108-cuddle .zw108-hug-pair{
 width:100%!important;height:100%!important;object-fit:contain!important;
 animation:zw109-hug-soft 3.6s ease-in-out .6s infinite!important;
 border-radius:23%!important;
}
#app .zw108-cuddle .zw108-hug.is-visible{
 z-index:21!important;
 animation:zw108-hug-reveal 2.2s ease-out both!important;
}
#app .zw108-cuddle .zw93-effects{z-index:28!important}
#app .zw108-cuddle .zw108-cuddle-deco-0{
 animation:zw109-butterfly 7.6s ease-in-out infinite alternate!important;
}
#app .zw108-cuddle .zw108-cuddle-deco-1{
 animation:zw109-duck 5.8s ease-in-out infinite alternate!important;
}
#app .zw108-cuddle .zw93-hug img{max-width:100%!important}
#app .zw109-auto.zw93.main-content{
 background:#aed68a url('/labyrinth-premium-v109/world-menu-portrait.webp') center/100% 100% no-repeat!important;
}
#app .zw109-auto #zw93Board.zw104-board{
 border:0!important;border-radius:21px!important;
 background:#85c86d url('/labyrinth-premium-v109/roadside-painted.webp') center/100% 100% no-repeat!important;
 box-shadow:0 7px 9px #5c523b53!important;
}
#app .zw109-auto #zw93Board::after{
 content:"";position:absolute;inset:0;display:block;z-index:18;
 background:url('/labyrinth-premium-v109/board-frame-portrait.webp') center/100% 100% no-repeat!important;
 pointer-events:none!important;
}
#app .zw109-auto .zw103-title{
 left:18%!important;width:64%!important;top:1.5%!important;
}
#app .zw109-auto .zw104-task{
 background:#fff0d2 url('/bakery-v166/panel-blank.webp') center/100% 100% no-repeat!important;
}
#app .zw109-auto .zw105-car,
#app .zw109-auto .zw105-car.selected,
#app .zw109-auto .zw105-car.zw93-wiggle{
 border:0!important;outline:0!important;border-radius:0!important;
 box-shadow:none!important;background:transparent!important;
 filter:drop-shadow(1px 3px 2px #51433166)!important;
 animation:none!important;transform:translate(-50%,-50%)!important;
 transition:left 290ms cubic-bezier(.24,.7,.3,1),top 290ms cubic-bezier(.24,.7,.3,1)!important;
}
#app .zw109-auto .zw105-car img{animation:none!important;transform:none!important}
#app .zw109-auto .zw104-goalring,#app .zw109-auto .zw107-dust{display:none!important}
#app .zw109-auto .zw107-goal-sparkles:not(.is-celebrating){opacity:.16!important}
#app .zw109-auto .zw104-success{display:none!important}
#app .zw109-auto .zw107-ambient-item{will-change:transform}
@keyframes zw109-butterfly{
 from{transform:translate(-50%,-50%) rotate(-10deg) scale(.92)}
 33%{transform:translate(-8%,-80%) rotate(10deg) scale(1.01)}
 66%{transform:translate(-75%,-100%) rotate(-8deg) scale(.96)}
 to{transform:translate(-28%,-60%) rotate(5deg) scale(1.02)}
}
@keyframes zw109-duck{
 from{transform:translate(-54%,-49%) rotate(-2deg)}
 to{transform:translate(-44%,-56%) rotate(2deg)}
}
@keyframes zw109-animal-idle{
 0%,100%{transform:scale(.98) translateY(0)}
 50%{transform:scale(1.008) translateY(-1px)}
}
@keyframes zw109-hug-soft{
 0%,100%{transform:scale(1)}
 50%{transform:scale(1.017)}
}
@media(orientation:landscape) and (max-height:650px){
 #app .zw108-cuddle.zw105.main-content,
 #app .zw109-auto.zw93.main-content{
  background-image:url('/labyrinth-premium-v109/world-menu-landscape.webp')!important;
 }
 #app .zw108-cuddle #zw93Board::after,
 #app .zw109-auto #zw93Board::after{
  background-image:url('/labyrinth-premium-v109/board-frame-landscape.webp')!important;
 }
 #app .zw108-cuddle .zw105-title,
 #app .zw109-auto .zw103-title{left:66%!important;width:29%!important;top:1%!important}
}
@media(prefers-reduced-motion:reduce){
 #app .zw108-cuddle .zw93-friend img,
 #app .zw108-cuddle .zw108-hug-pair,
 #app .zw108-cuddle .zw108-cuddle-deco,
 #app .zw109-auto .zw107-ambient-item{animation:none!important}
 #app .zw108-cuddle .zw93-friend,#app .zw109-auto .zw105-car{transition:none!important}
}

/* Final V109 – feste Kinderbuch-Belohnung ohne Bildlücken. */
#app .zw108-cuddle .zw108-hug{
 width:min(315px,86%)!important;
 height:min(229px,44%)!important;
 max-width:86%!important;
 display:none!important;
 background:none!important;box-shadow:none!important;
}
#app .zw108-cuddle .zw108-hug.is-visible{
 display:flex!important;opacity:1!important;
 transform:translate(-50%,-50%) scale(1)!important;
 animation:zw109-reward-enter .75s cubic-bezier(.16,.75,.3,1) both!important;
}
#app .zw108-cuddle .zw108-hug-pair{
 object-fit:contain!important;
 border-radius:0!important;
 filter:drop-shadow(0 5px 4px #73523466)!important;
 animation:zw109-reward-breathe 4.2s ease-in-out 1s infinite!important;
}
@keyframes zw109-reward-enter{
 from{opacity:0;transform:translate(-50%,-50%) scale(.72)}
 65%{opacity:1;transform:translate(-50%,-50%) scale(1.05)}
 to{opacity:1;transform:translate(-50%,-50%) scale(1)}
}
@keyframes zw109-reward-breathe{0%,100%{transform:scale(.995)}50%{transform:scale(1.018)}}
@media(prefers-reduced-motion:reduce){
 #app .zw108-cuddle .zw108-hug.is-visible,#app .zw108-cuddle .zw108-hug-pair{animation:none!important}
}

/* ---- /labyrinth-hug-restore-v110/hug-restore.css?v=110 ---- */
/* Zählwiese V110 – Restore der ORIGINALEN Moritz/Igor-Kuschel-Animation
   aus cuddle-maze-v93, neun einzelne handgezeichnete Frames.
   Keine Canvas-Assets, keine Farb-/Computerringe, keine Schritt-Töne. */
#app .zw108-cuddle .zw93-friend img{
  object-fit:contain!important;
  transform-origin:50% 78%!important;
}
#app .zw108-cuddle .zw93-friend,
#app .zw108-cuddle .zw93-friend.selected,
#app .zw108-cuddle .zw93-friend:focus,
#app .zw108-cuddle .zw93-friend:active{
  border:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
#app .zw108-cuddle .zw108-hug{
  position:absolute!important;
  width:min(395px,99%)!important;
  height:min(272px,60%)!important;
  max-height:60%!important;
  max-width:99%!important;
  overflow:visible!important;
  background:none!important;
  box-shadow:none!important;
  border:none!important;
  z-index:25!important;
  pointer-events:none!important;
  transform:translate(-50%,-50%)!important;
}
#app .zw108-cuddle .zw108-hug.is-visible{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  opacity:1!important;
  animation:zw110-hug-appear 440ms ease-out both!important;
}
#app .zw108-cuddle .zw108-hug-pair{
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  display:block!important;
  border-radius:0!important;
  background:transparent!important;
  filter:drop-shadow(0 5px 4px #66432e44)!important;
  transform:none!important;
  animation:none!important;
  transition:none!important;
  image-rendering:auto!important;
}
#app .zw108-cuddle .zw93-friend.is-hugging{
  opacity:0!important;
  pointer-events:none!important;
}
#app .zw108-cuddle .zw93-effects{
  z-index:27!important;
}
@keyframes zw110-hug-appear{
  from{opacity:0;transform:translate(-50%,-50%) scale(.91)}
  to{opacity:1;transform:translate(-50%,-50%) scale(1)}
}
@media (prefers-reduced-motion:reduce){
 #app .zw108-cuddle .zw108-hug.is-visible{animation:none!important}
 #app .zw108-cuddle .zw108-hug-pair{animation:none!important}
}

/* ---- /hunt-v184/menu.css?v=184 ---- */
/* Zählwiese v184 — portrait + landscape illustrated Zahlenjagd selector.
   All artwork is composed from the approved hand-painted assets (not a flattened UI image). */
#app .zw170-launch .zw170-home{
 left:auto!important;right:max(12px,env(safe-area-inset-right))!important;
 top:max(12px,env(safe-area-inset-top))!important;z-index:45!important;
 width:clamp(50px,14vw,66px)!important;height:clamp(50px,14vw,66px)!important;
}
#app .app-header .header-tools{margin-left:auto!important;justify-content:flex-end!important}
#app .app-header #homeBtn{margin-left:auto!important;right:0!important;left:auto!important}
#app .zw170-launch[data-game-start="hunt"]{
 display:block!important;position:relative!important;padding:0!important;
 width:100%!important;height:100dvh!important;max-height:100dvh!important;
 overflow:hidden!important;background:#80c454 url('/home-v126/background-portrait.webp') center center / 100% 100% no-repeat!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw170-title{
 position:absolute!important;z-index:11!important;left:3%!important;top:16%!important;
 display:block!important;width:94%!important;height:16%!important;max-height:none!important;
 object-fit:fill!important;margin:0!important;filter:drop-shadow(0 5px 3px #79451d55)!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw184-characters{
 position:absolute!important;inset:0!important;z-index:8!important;pointer-events:none!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw184-character{
 position:absolute!important;bottom:25%!important;width:47%!important;height:29%!important;
 object-fit:contain!important;object-position:center bottom!important;filter:drop-shadow(0 3px 3px #5c612555)!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw184-moritz{left:-3%!important}
#app .zw170-launch[data-game-start="hunt"] .zw184-igor{right:-3%!important}
#app .zw170-launch[data-game-start="hunt"] .zw184-butterfly{
 position:absolute!important;z-index:6!important;top:35%!important;left:19%!important;
 width:20%!important;height:11%!important;object-fit:contain!important;pointer-events:none!important;
 animation:zw184-butterfly 6s ease-in-out infinite!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw184-floating-field{
 position:absolute!important;z-index:7!important;top:33%!important;left:19%!important;
 width:62%!important;height:24%!important;overflow:visible!important;touch-action:manipulation!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw184-ambient-bubble{
 position:absolute!important;left:0;top:0;z-index:2;display:block!important;
 width:var(--zw184-size,90px)!important;height:var(--zw184-size,90px)!important;
 padding:0!important;border:4px solid #ffffffe8!important;border-radius:50%!important;
 background:radial-gradient(circle at 25% 18%,#fff8 0%,#ecf9ff88 11%,#d8ecff70 38%,#f2d5e24a 71%,#b8e4e141 100%)!important;
 box-shadow:inset -7px -7px 13px #a3cbd63d,inset 7px 8px 10px #fff9,0 3px 5px #2d705b34!important;
 backdrop-filter:blur(1px)!important;-webkit-backdrop-filter:blur(1px)!important;
 -webkit-tap-highlight-color:transparent!important;touch-action:manipulation!important;
 cursor:pointer!important;will-change:transform!important;transform:translate3d(0,0,0);
}
#app .zw170-launch[data-game-start="hunt"] .zw184-ambient-bubble:before{
 content:"";position:absolute;left:13%;top:11%;width:34%;height:26%;
 border-left:4px solid white;border-top:5px solid white;border-radius:60%;
 transform:rotate(-30deg);opacity:.95;pointer-events:none;
}
#app .zw170-launch[data-game-start="hunt"] .zw184-ambient-bubble:focus-visible{outline:5px solid #ab4164!important;outline-offset:5px!important}
#app .zw170-launch[data-game-start="hunt"] .zw184-ambient-bubble.zw184-popping{
 animation:zw184-pop .35s ease-out forwards!important;pointer-events:none!important;
}
@keyframes zw184-pop{0%{scale:1;opacity:1}35%{scale:1.20;opacity:.8}100%{scale:1.6;opacity:0}}
@keyframes zw184-butterfly{0%,100%{transform:translate3d(0,0,0) rotate(-3deg)}50%{transform:translate3d(7px,-7px,0) rotate(4deg)}}
#app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes{
 position:absolute!important;z-index:15!important;left:2%!important;bottom:4.5%!important;top:auto!important;
 width:96%!important;height:22%!important;margin:0!important;padding:0!important;
 display:flex!important;flex-direction:row!important;align-items:flex-end!important;justify-content:space-around!important;
 gap:4%!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button{
 display:flex!important;flex:0 0 47%!important;position:relative!important;
 width:47%!important;max-width:none!important;height:100%!important;max-height:none!important;
 align-items:center!important;justify-content:flex-end!important;gap:0!important;
 flex-direction:column!important;min-height:0!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button img{
 flex:0 0 auto!important;width:min(34vw,17.2dvh,158px)!important;
 height:min(34vw,17.2dvh,158px)!important;max-width:100%!important;
 object-fit:contain!important;filter:drop-shadow(0 3px 3px #4d2f2470)!important;
 transition:transform .15s ease!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw177-mode-button .zw184-plaque{
 display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;
 width:100%!important;min-width:0!important;max-width:200px!important;
 height:clamp(57px,7.5dvh,91px)!important;min-height:0!important;margin-top:-7px!important;
 padding:4px 5px 7px!important;box-sizing:border-box!important;white-space:normal!important;
 border:3px solid #dfa04c!important;border-radius:42% 47% 40% 46% / 32% 34% 28% 38%!important;
 background:radial-gradient(ellipse,#fffce8 55%,#f9e2a7 100%)!important;
 box-shadow:inset 0 0 0 3px #fff9d4,0 3px 1px #9c572d66!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw177-mode-button .zw184-plaque b{
 display:block;font-family:"Trebuchet MS","Arial Rounded MT Bold",Arial,sans-serif!important;
 font-weight:1000!important;line-height:1.04!important;white-space:nowrap!important;letter-spacing:-.4px!important;
 font-size:clamp(18px,4.85vw,27px)!important;
 background:linear-gradient(90deg,#e73b42 0%,#e18b2d 20%,#359bc9 37%,#8732ac 62%,#d64187 83%,#54a23c 100%);
 background-clip:text;-webkit-background-clip:text;color:transparent!important;
 -webkit-text-stroke:.46px #723921!important;text-shadow:none!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw177-mode-button:active img{transform:scale(.91)!important}
#app .zw170-launch[data-game-start="hunt"] .zw177-mode-button:focus-visible{outline:5px solid #724825!important;outline-offset:3px!important}
@media(orientation:landscape){
 #app .zw170-launch[data-game-start="hunt"]{
  background:#61b744 url('/hunt-v184/landscape-meadow.webp') center / 100% 100% no-repeat!important;
 }
 #app .zw170-launch[data-game-start="hunt"] .zw170-title{
  left:22%!important;top:2%!important;width:56%!important;height:21%!important;
 }
 #app .zw170-launch[data-game-start="hunt"] .zw184-character{
  bottom:9%!important;width:29%!important;height:47%!important;
 }
 #app .zw170-launch[data-game-start="hunt"] .zw184-moritz{left:1%!important}
 #app .zw170-launch[data-game-start="hunt"] .zw184-igor{right:1%!important}
 #app .zw170-launch[data-game-start="hunt"] .zw184-butterfly{
  left:24%!important;top:25%!important;width:14%!important;height:19%!important;
 }
 #app .zw170-launch[data-game-start="hunt"] .zw184-floating-field{
  left:35%!important;top:21%!important;width:30%!important;height:38%!important;
 }
 #app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes{
  left:25%!important;bottom:3%!important;width:50%!important;height:54%!important;
  grid-area:auto!important;display:flex!important;flex-direction:row!important;gap:6%!important;
  align-self:auto!important;justify-self:auto!important;
 }
 #app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button{
  flex:1 1 47%!important;width:47%!important;height:100%!important;
  max-height:none!important;max-width:none!important;
 }
 #app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button img{
  width:min(31dvh,16vw,155px)!important;height:min(31dvh,16vw,155px)!important;
 }
 #app .zw170-launch[data-game-start="hunt"] .zw177-mode-button .zw184-plaque{
  height:clamp(50px,16dvh,83px)!important;max-width:245px!important;margin-top:-8px!important;
 }
 #app .zw170-launch[data-game-start="hunt"] .zw177-mode-button .zw184-plaque b{
  font-size:clamp(15px,3.5vh,28px)!important;
 }
 #app .zw170-launch .zw170-home{
  right:max(10px,env(safe-area-inset-right))!important;
  top:max(5px,env(safe-area-inset-top))!important;
  width:clamp(44px,12vh,64px)!important;height:clamp(44px,12vh,64px)!important;
 }
}
@media(orientation:portrait) and (max-height:700px){
 #app .zw170-launch[data-game-start="hunt"] .zw170-title{top:12%!important;height:17%!important}
 #app .zw170-launch[data-game-start="hunt"] .zw184-floating-field{top:30%!important}
 #app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes{bottom:3%!important;height:25%!important}
 #app .zw170-launch[data-game-start="hunt"] .zw177-mode-button .zw184-plaque b{font-size:clamp(16px,4.3vw,23px)!important}
}
@media(prefers-reduced-motion:reduce){
 #app .zw170-launch[data-game-start="hunt"] .zw184-butterfly{animation:none!important}
}

/* Large individual rainbow letters remain sharp and readable on 320px iPhones. */
#app .zw170-launch[data-game-start="hunt"] .zw177-mode-button .zw184-plaque b{
 font-size:clamp(23px,6.3vw,30px)!important;
 line-height:1.02!important;
 letter-spacing:-1px!important;
 background:none!important;-webkit-background-clip:initial!important;
 -webkit-text-stroke:0!important;text-shadow:none!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw177-mode-button .zw184-plaque b .zw184-letter{
 display:inline-block!important;font:inherit!important;font-style:normal!important;
 text-shadow:0 1px #fff6d1!important;
 -webkit-text-stroke:.55px #71341a!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw184-letter:nth-of-type(7n+1){color:#db3647!important}
#app .zw170-launch[data-game-start="hunt"] .zw184-letter:nth-of-type(7n+2){color:#1688bb!important}
#app .zw170-launch[data-game-start="hunt"] .zw184-letter:nth-of-type(7n+3){color:#753db1!important}
#app .zw170-launch[data-game-start="hunt"] .zw184-letter:nth-of-type(7n+4){color:#e59b23!important}
#app .zw170-launch[data-game-start="hunt"] .zw184-letter:nth-of-type(7n+5){color:#278d49!important}
#app .zw170-launch[data-game-start="hunt"] .zw184-letter:nth-of-type(7n+6){color:#c73e75!important}
#app .zw170-launch[data-game-start="hunt"] .zw184-letter:nth-of-type(7n+7){color:#b45b18!important}
@media(orientation:landscape){
 #app .zw170-launch[data-game-start="hunt"] .zw177-mode-button .zw184-plaque b{
  font-size:clamp(19px,5.7vh,29px)!important;
 }
}
@media(orientation:portrait) and (max-width:350px){
 #app .zw170-launch[data-game-start="hunt"] .zw177-mode-button .zw184-plaque b{
  font-size:21px!important;
 }
}

/* v185: home is consistently on the RIGHT in the painted bakery entry and gameplay topbar. */
#app .zw165-intro{background-image:url('/hunt-v184/bakery-intro-home-right.webp')!important}
#app .zw165-intro .zw165-intro-home{
 left:auto!important;right:1%!important;top:.5%!important;
 width:13%!important;height:11%!important;
}
#app .zw165-intro .zw165-intro-restart{
 right:auto!important;left:2%!important;top:.5%!important;
 width:18%!important;height:12%!important;
}
#app .zw165-topbar .zw165-header-home{
 margin-right:0!important;order:10!important;flex-shrink:0!important;
}
@media(orientation:landscape){
 #app .zw165-intro .zw165-intro-home{
  left:auto!important;right:1%!important;top:1%!important;width:8%!important;height:18%!important;
 }
 #app .zw165-intro .zw165-intro-restart{
  left:1%!important;right:auto!important;top:1%!important;width:8%!important;height:18%!important;
 }
}

/* ---- /bakery-v185/right-home.css?v=185 ---- */
/* v185 — single right-hand position for the Home control across Zählwiese,
   including the baking game, whose menu controls were baked into artwork. */
#app .zw165-intro{
 background-image:url('/bakery-v185/intro-home-right.webp')!important;
}
#app .zw165-intro .zw165-intro-home{
 left:auto!important;right:1%!important;top:.5%!important;
 width:16%!important;height:12%!important;
}
#app .zw165-intro .zw165-intro-restart{
 right:auto!important;left:1.5%!important;top:.5%!important;
 width:16%!important;height:12%!important;
}
#app .zw165 .zw165-topbar .zw165-header-home{
 left:auto!important;right:2%!important;top:0!important;
 margin:0!important;
}
#app .zw165 .zw165-topbar .zw165-header-restart{
 left:2%!important;right:auto!important;top:0!important;
 margin:0!important;
}
#app .zw165 .zw165-topbar .zw165-header-hint{
 right:auto!important;
 left:calc(2% + clamp(47px,13vw,63px) + 8px)!important;
 top:0!important;margin:0!important;
}
@media(orientation:landscape){
 #app .zw165-intro .zw165-wide-home{
  left:auto!important;right:1%!important;top:1%!important;
  width:8%!important;height:18%!important;
 }
 #app .zw165-intro .zw165-wide-restart{
  left:1%!important;right:auto!important;top:1%!important;
  width:8%!important;height:18%!important;
 }
 #app .zw165-intro .zw165-intro-home{
  left:auto!important;right:1%!important;top:1%!important;
  width:8%!important;height:18%!important;
 }
 #app .zw165-intro .zw165-intro-restart{
  left:1%!important;right:auto!important;top:1%!important;
  width:8%!important;height:18%!important;
 }
}
/* Other illustrated game entry screens stay consistent with the Zahlenjagd menu. */
#app .zw170-launch .zw170-home{
 left:auto!important;right:max(10px,env(safe-area-inset-right))!important;
}

/* ---- /hunt-v187/polish.css?v=187 ---- */
/* Zählwiese v187: real pencil-and-wax wood label artwork replaces pale flat plaques. */
#app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button .zw184-plaque{
 display:flex!important;position:relative!important;flex:0 0 auto!important;
 flex-direction:column!important;align-items:center!important;justify-content:center!important;
 box-sizing:border-box!important;
 width:100%!important;max-width:222px!important;
 height:clamp(60px,8.05dvh,80px)!important;
 min-height:60px!important;padding:11px 12% 12px!important;margin-top:-9px!important;
 border:none!important;border-radius:0!important;box-shadow:none!important;
 background:transparent url('/hunt-v187/wood-sign.webp') center center / 100% 100% no-repeat!important;
 overflow:visible!important;isolation:isolate!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button .zw184-plaque b{
 display:block!important;position:relative!important;max-width:100%!important;
 white-space:nowrap!important;overflow:visible!important;
 flex:0 0 auto!important;text-align:center!important;
 line-height:1.08!important;letter-spacing:0!important;
 font-family:'Trebuchet MS','Arial Rounded MT Bold',Arial,sans-serif!important;
 font-weight:1000!important;font-size:clamp(18px,5.1vw,23px)!important;
 background:none!important;color:#6b3019!important;
 -webkit-background-clip:initial!important;background-clip:initial!important;
 -webkit-text-stroke:0!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button .zw184-plaque .zw184-letter{
 display:inline-block!important;
 font:inherit!important;line-height:inherit!important;
 -webkit-text-stroke:.62px #613218!important;
 text-shadow:0 1px 0 #ffe9a6,1px 1px 0 #ffe8b9!important;
 letter-spacing:-.55px!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button img{
 flex:0 0 auto!important;max-width:100%!important;
 width:min(33vw,16.5dvh,146px)!important;
 height:min(33vw,16.5dvh,146px)!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes{
 height:clamp(177px,24dvh,226px)!important;
 bottom:2.6%!important;
}
@media (orientation:portrait) and (max-width:350px){
 #app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button .zw184-plaque{
  height:58px!important;min-height:58px!important;padding:10px 12% 11px!important;
 }
 #app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button .zw184-plaque b{
  font-size:18px!important;
 }
 #app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes{
  height:clamp(155px,29dvh,181px)!important;bottom:2.2%!important;
 }
 #app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button img{
  width:min(28vw,15.2dvh,110px)!important;height:min(28vw,15.2dvh,110px)!important;
 }
}
@media (orientation:landscape){
 #app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes{
  height:54%!important;bottom:2.2%!important;
 }
 #app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button img{
  width:min(30dvh,15vw,149px)!important;height:min(30dvh,15vw,149px)!important;
 }
 #app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button .zw184-plaque{
  width:100%!important;max-width:245px!important;height:clamp(58px,16dvh,74px)!important;
  min-height:58px!important;margin-top:-7px!important;padding:11px 12% 12px!important;
 }
 #app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button .zw184-plaque b{
  font-size:clamp(18px,5.1dvh,23px)!important;
 }
}
/* The balloon pops: pearly expansion, two ripple rings, hand-colored fragments and little floating droplets. */
#app .zw170-launch[data-game-start="hunt"] .zw184-ambient-bubble.zw187-popping{
 animation:zw187-shell-pop .58s cubic-bezier(.12,.8,.3,1) forwards!important;
 pointer-events:none!important;transform-origin:center!important;
}
@keyframes zw187-shell-pop{
 0%{scale:1;opacity:1;filter:brightness(1)}
 21%{scale:1.19;opacity:1;filter:brightness(1.30)}
 42%{scale:1.36;opacity:.76;filter:brightness(1.7)}
 69%{scale:1.55;opacity:.20;filter:brightness(1.9)}
 100%{scale:1.72;opacity:0;filter:brightness(2)}
}
#app .zw170-launch[data-game-start="hunt"] .zw187-burst{
 position:absolute!important;z-index:38!important;left:0;top:0;
 width:0!important;height:0!important;overflow:visible!important;pointer-events:none!important;
 transform:translate3d(var(--bx,0px),var(--by,0px),0)!important;
 contain:layout style!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw187-ring{
 position:absolute!important;top:0;left:0;display:block!important;
 width:var(--ring-size,82px)!important;height:var(--ring-size,82px)!important;
 margin:calc(var(--ring-size,82px) / -2) 0 0 calc(var(--ring-size,82px) / -2)!important;
 border:4px solid #ffffffe8!important;border-radius:50%!important;
 box-shadow:0 0 12px 3px #dcfaffdd,inset 0 0 5px #ffeedcc9!important;
 background:radial-gradient(circle,#ffffff65,transparent 68%)!important;
 animation:zw187-ring-expand .78s cubic-bezier(.08,.62,.25,1) forwards!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw187-ring.zw187-ring-two{
 border-color:#ffe7f5d9!important;
 animation-delay:.09s!important;
}
@keyframes zw187-ring-expand{
 0%{scale:.36;opacity:0}
 18%{opacity:1}
 64%{opacity:.75}
 100%{scale:1.92;opacity:0}
}
#app .zw170-launch[data-game-start="hunt"] .zw187-spark{
 position:absolute!important;left:0!important;top:0!important;display:block!important;
 width:var(--spark-w,9px)!important;height:var(--spark-h,15px)!important;
 border:0!important;border-radius:0!important;
 background:transparent!important;object-fit:contain!important;
 box-shadow:none!important;filter:drop-shadow(0 1px 2px #31523b62)!important;
 transform:translate(-50%,-50%) scale(.15) rotate(var(--spark-turn,0deg));
 animation:zw187-scatter .83s cubic-bezier(.12,.68,.32,1) forwards!important;
}
@keyframes zw187-scatter{
 0%{opacity:0;transform:translate(-50%,-50%) scale(.15) rotate(0deg)}
 12%{opacity:1}
 36%{opacity:1}
 100%{opacity:0;transform:translate(calc(-50% + var(--spark-x,0px)),calc(-50% + var(--spark-y,0px))) scale(.34) rotate(var(--spark-turn,40deg))}
}
#app .zw170-launch[data-game-start="hunt"] .zw187-droplet{
 position:absolute!important;left:0!important;top:0!important;display:block!important;
 width:var(--drop-size,12px)!important;height:var(--drop-size,12px)!important;
 border:3px solid #fff9!important;border-radius:50%!important;
 background:#bbedf74a!important;
 box-shadow:inset -3px -3px 4px #8ac7ec70,0 2px 4px #28666330!important;
 animation:zw187-drop .95s ease-out forwards!important;
}
@keyframes zw187-drop{
 0%{opacity:0;transform:translate(-50%,-50%) scale(.2)}
 18%{opacity:1;transform:translate(-50%,-50%) scale(1)}
 100%{opacity:0;transform:translate(calc(-50% + var(--spark-x,0px)),calc(-50% + var(--spark-y,-45px))) scale(.55)}
}
@media (prefers-reduced-motion:reduce){
 #app .zw170-launch[data-game-start="hunt"] .zw187-spark,
 #app .zw170-launch[data-game-start="hunt"] .zw187-ring,
 #app .zw170-launch[data-game-start="hunt"] .zw187-droplet{
  animation-duration:.35s!important;
 }
}

/* ---- /hunt-v187/global-home.css?v=188 ---- */
/* Zählwiese v188 — consistent painted Home button at the top-right of EVERY game.
   Legacy screens that hide their app-header get the same accessible button moved out of it. */
#app #homeBtn.zw-go-home {
 display:grid!important;place-items:center!important;
 position:fixed!important;top:max(8px,env(safe-area-inset-top))!important;
 right:max(9px,env(safe-area-inset-right))!important;left:auto!important;
 width:clamp(52px,14vw,67px)!important;height:clamp(52px,14vw,67px)!important;
 min-width:0!important;min-height:0!important;
 max-width:67px!important;max-height:67px!important;
 margin:0!important;padding:0!important;opacity:1!important;visibility:visible!important;
 z-index:220!important;
 background:transparent url('/bakery-v166/home.webp') center center/contain no-repeat!important;
 border:0!important;border-radius:50%!important;
 box-shadow:none!important;filter:drop-shadow(0 3px 3px #7a4f4260)!important;
 transform:none!important;pointer-events:auto!important;
 -webkit-tap-highlight-color:transparent!important;touch-action:manipulation!important;
}
#app #homeBtn.zw-go-home > *{visibility:hidden!important;pointer-events:none!important}
#app #homeBtn.zw-go-home:focus-visible{outline:4px solid #62442d!important;outline-offset:3px!important}
#app #homeBtn.zw-go-home:active{filter:brightness(1.08) drop-shadow(0 1px 2px #55351a66)!important}
@media(orientation:landscape){
 #app #homeBtn.zw-go-home{
  right:max(7px,env(safe-area-inset-right))!important;
  top:max(4px,env(safe-area-inset-top))!important;
  width:clamp(45px,12dvh,60px)!important;height:clamp(45px,12dvh,60px)!important;
 }
}

/* The Picnic help/restart pair moves opposite the Home control, so they cannot overlap. */
#app .zw107 .zw107-controls{
 left:1.6%!important;right:auto!important;justify-content:flex-start!important;
}

/* ---- /hunt-v189/selector.css?v=190 ---- */
/* ZÄHLWIESE v189 — real interactive entrance based on the approved portrait/landscape artwork.
   Individual hand-painted assets, not a flattened mock-up. */
#app .zw170-launch[data-game-start="hunt"]{
 background:#74c45b url('/hunt-v189/meadow-portrait.webp') center center / 100% 100% no-repeat!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw170-title{
 z-index:12!important;
 left:3%!important;top:8.5%!important;width:94%!important;
 height:15%!important;object-fit:fill!important;
 content:url('/hunt-v189/title.webp')!important;
 filter:drop-shadow(0 6px 3px #66401662) saturate(1.12)!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw184-character{
 bottom:33%!important;height:30%!important;width:49%!important;
 object-fit:contain!important;object-position:center bottom!important;
 filter:drop-shadow(0 3px 3px #62572b4c)!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw184-moritz{
 left:-2.5%!important;content:url('/hunt-v189/moritz.webp')!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw184-igor{
 right:-2.5%!important;content:url('/hunt-v189/igor.webp')!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw184-butterfly{
 left:19%!important;top:24%!important;width:17%!important;height:11%!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw184-floating-field{
 z-index:13!important;left:13%!important;top:24%!important;
 width:74%!important;height:29%!important;
 overflow:visible!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw184-ambient-bubble{
 background:transparent url('/hunt-v189/pearl-bubble.webp') center / 100% 100% no-repeat!important;
 border:0!important;box-shadow:none!important;
 -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
 filter:drop-shadow(0 3px 6px #3a756a35)!important;
 opacity:.97!important;
 transition:opacity .12s ease!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw184-ambient-bubble:before{
 content:none!important;display:none!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes{
 left:2%!important;bottom:8%!important;top:auto!important;
 height:33%!important;width:96%!important;gap:0!important;
 align-items:flex-end!important;justify-content:space-around!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button{
 z-index:15!important;flex:0 0 49%!important;width:49%!important;
 max-width:none!important;height:100%!important;
 justify-content:flex-end!important;gap:0!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button img{
 width:min(40vw,20.5dvh,178px)!important;
 height:min(40vw,20.5dvh,178px)!important;
 max-width:100%!important;object-fit:contain!important;
 content:url('/hunt-v189/play.webp')!important;
 filter:drop-shadow(0 5px 3px #62471b82) saturate(1.13)!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button .zw184-plaque{
 width:100%!important;max-width:248px!important;
 height:clamp(76px,10.2dvh,105px)!important;min-height:75px!important;
 padding:12px 12% 13px!important;margin-top:-5px!important;
 background:transparent url('/hunt-v189/wood-sign.webp') center / 100% 100% no-repeat!important;
 border:0!important;border-radius:0!important;box-shadow:none!important;
 overflow:visible!important;align-items:center!important;justify-content:center!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button .zw184-plaque b{
 font-family:'Trebuchet MS','Arial Rounded MT Bold',Arial,sans-serif!important;
 font-size:clamp(22px,6.7vw,29px)!important;line-height:1.07!important;
 font-weight:1000!important;letter-spacing:-.35px!important;
 text-align:center!important;white-space:nowrap!important;
 max-width:100%!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button .zw184-plaque .zw184-letter{
 text-shadow:1px 1.5px 0 #7d3b22c4,0 -1px 0 #ffe6a0!important;
 -webkit-text-stroke:.5px #72331a!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw177-mode-button:active img{
 transform:scale(.91)!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw187-burst .zw189-star{
 position:absolute!important;left:0!important;top:0!important;
 display:block!important;z-index:1!important;
 width:var(--star-size,210px)!important;
 height:var(--star-size,210px)!important;
 margin:calc(var(--star-size,210px)/-2) 0 0 calc(var(--star-size,210px)/-2)!important;
 background:transparent url('/hunt-v189/burst-star.webp') center/contain no-repeat!important;
 pointer-events:none!important;
 animation:zw189-flare .79s cubic-bezier(.22,.74,.3,1) both!important;
 filter:drop-shadow(0 0 10px #fff599a8)!important;
}
@keyframes zw189-flare{
 0%{transform:scale(.25) rotate(-17deg);opacity:0}
 18%{transform:scale(.80) rotate(4deg);opacity:1}
 40%{transform:scale(1.10) rotate(12deg);opacity:1}
 70%{transform:scale(1.28) rotate(19deg);opacity:.8}
 100%{transform:scale(1.55) rotate(26deg);opacity:0}
}
#app .zw170-launch[data-game-start="hunt"] .zw187-spark{
 z-index:5!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw187-ring{
 z-index:4!important;animation-duration:.85s!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw187-droplet{
 z-index:5!important;
}
@media (orientation:portrait) and (max-width:350px){
 #app .zw170-launch[data-game-start="hunt"] .zw170-title{top:9%!important;height:15%!important}
 #app .zw170-launch[data-game-start="hunt"] .zw184-character{
  bottom:32%!important;height:29%!important;
 }
 #app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes{
  bottom:6%!important;height:37%!important;
 }
 #app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button img{
  width:min(38vw,21dvh,138px)!important;height:min(38vw,21dvh,138px)!important;
 }
 #app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button .zw184-plaque{
  min-height:70px!important;height:72px!important;padding:10px 11% 11px!important;
 }
 #app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button .zw184-plaque b{
  font-size:clamp(20px,6.2vw,23px)!important;
 }
}
@media (orientation:landscape){
 #app .zw170-launch[data-game-start="hunt"]{
  background:#6bbf50 url('/hunt-v189/meadow-landscape.webp') center/100% 100% no-repeat!important;
 }
 #app .zw170-launch[data-game-start="hunt"] .zw170-title{
  left:23%!important;top:2.2%!important;width:54%!important;height:20%!important;
  object-fit:fill!important;
 }
 #app .zw170-launch[data-game-start="hunt"] .zw184-character{
  bottom:11%!important;height:51%!important;width:31%!important;
 }
 #app .zw170-launch[data-game-start="hunt"] .zw184-moritz{left:0%!important}
 #app .zw170-launch[data-game-start="hunt"] .zw184-igor{right:0%!important}
 #app .zw170-launch[data-game-start="hunt"] .zw184-butterfly{
  left:22%!important;top:21%!important;width:11%!important;height:19%!important;
 }
 #app .zw170-launch[data-game-start="hunt"] .zw184-floating-field{
  left:32%!important;top:21%!important;width:36%!important;height:39%!important;
 }
 #app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes{
  left:24%!important;bottom:6%!important;width:52%!important;height:54%!important;
  gap:3%!important;
 }
 #app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button{
  width:49%!important;flex:0 0 49%!important;max-height:100%!important;
 }
 #app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button img{
  width:min(34dvh,16.8vw,155px)!important;
  height:min(34dvh,16.8vw,155px)!important;
 }
 #app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button .zw184-plaque{
  height:clamp(70px,19dvh,96px)!important;min-height:70px!important;
  width:100%!important;max-width:266px!important;
  padding:10px 12% 13px!important;
 }
 #app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button .zw184-plaque b{
  font-size:clamp(23px,7dvh,30px)!important;line-height:1.07!important;
 }
}
@media (prefers-reduced-motion:reduce){
 #app .zw170-launch[data-game-start="hunt"] .zw189-star{animation-duration:.35s!important}
}

/* ---- /hunt-v191/pop.css?v=191 ---- */
/* V191: real painted soap-film shatter, selector and number hunt */
.zw191-burst{position:fixed!important;z-index:10000!important;display:block!important;width:0!important;height:0!important;overflow:visible!important;pointer-events:none!important;contain:layout style!important}
.zw191-slice{position:absolute!important;left:calc(var(--diameter)/-2)!important;top:calc(var(--diameter)/-2)!important;width:var(--diameter)!important;height:var(--diameter)!important;display:block!important;pointer-events:none!important;background:var(--bubble-image) center/100% 100% no-repeat!important;clip-path:var(--slice-shape)!important;-webkit-clip-path:var(--slice-shape)!important;animation:zw191-shatter .8s cubic-bezier(.15,.65,.25,1) both!important;will-change:transform,opacity!important}
@keyframes zw191-shatter{0%{transform:translate3d(0,0,0) rotate(0) scale(1);opacity:1}15%{transform:translate3d(calc(var(--burst-x)*.14),calc(var(--burst-y)*.14),0) rotate(calc(var(--spin)*.2)) scale(1.07);opacity:1}55%{transform:translate3d(calc(var(--burst-x)*.76),calc(var(--burst-y)*.76),0) rotate(calc(var(--spin)*.75)) scale(.94);opacity:.9}100%{transform:translate3d(var(--burst-x),var(--burst-y),0) rotate(var(--spin)) scale(.4);opacity:0}}
.zw191-halo{position:absolute!important;display:block!important;left:calc(var(--diameter)/-2)!important;top:calc(var(--diameter)/-2)!important;width:var(--diameter)!important;height:var(--diameter)!important;border:5px solid #fffde9e0!important;border-radius:50%!important;box-shadow:0 0 16px #fbf1debb,inset 0 0 10px #bceefcd9!important;animation:zw191-halo .75s ease-out both!important}
.zw191-halo.secondary{border-color:#b6f5ffdd!important;animation-delay:.11s!important}
@keyframes zw191-halo{0%{transform:scale(.45);opacity:0}16%{transform:scale(.85);opacity:1}100%{transform:scale(2.1);opacity:0}}
.zw191-flash{position:absolute!important;display:block!important;left:calc(var(--diameter)*-.95)!important;top:calc(var(--diameter)*-.95)!important;width:calc(var(--diameter)*1.9)!important;height:calc(var(--diameter)*1.9)!important;background:transparent url('/hunt-v189/burst-star.webp') center/contain no-repeat!important;animation:zw191-flash .7s ease-out both!important}
@keyframes zw191-flash{0%{opacity:.2;transform:scale(.2) rotate(-14deg)}24%{opacity:1;transform:scale(1) rotate(8deg)}100%{opacity:0;transform:scale(1.38) rotate(22deg)}}
.zw191-spark{position:absolute!important;left:0!important;top:0!important;display:block!important;width:var(--spark-size)!important;height:var(--spark-size)!important;object-fit:contain!important;pointer-events:none!important;animation:zw191-spark .87s ease-out both!important;filter:drop-shadow(0 1px 1px #65645455)!important}
@keyframes zw191-spark{0%{opacity:0;transform:translate(-50%,-50%) scale(.25)}15%{opacity:1}75%{opacity:.9}100%{opacity:0;transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) rotate(var(--spin)) scale(.5)}}
#app .zw170-launch[data-game-start="hunt"] .zw184-floating-field{z-index:18!important;pointer-events:none!important}
#app .zw170-launch[data-game-start="hunt"] .zw184-ambient-bubble{pointer-events:auto!important;touch-action:manipulation!important;-webkit-tap-highlight-color:transparent!important}
#app .zw170-launch[data-game-start="hunt"] .zw184-ambient-bubble.zw191-disappeared{visibility:hidden!important;pointer-events:none!important;opacity:0!important;animation:none!important}
#app .zw95-hunt .zw95-hunt-bubble.zw191-disappeared{visibility:hidden!important;pointer-events:none!important;animation:none!important}
@media(prefers-reduced-motion:reduce){.zw191-slice,.zw191-halo,.zw191-flash,.zw191-spark{animation-duration:.3s!important}}

/* ---- /connect-v192/style.css?v=193 ---- */
/* Zählwiese v192 — same illustrated pencil garden, game board and paint pot vocabulary as v94. */
#app .zw192-choice.main-content,#app .zw192-shapes.main-content{
 position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
 max-width:none!important;min-height:0!important;overflow:hidden!important;
 background:#a4d2a0 url('/garden-games-v94/garden-portrait.webp') center / 100% 100% no-repeat!important;
 padding:0!important;isolation:isolate!important;
 font-family:'Trebuchet MS','Segoe Print',Arial,sans-serif!important;
}
#app .zw192-choice *,#app .zw192-shapes *{box-sizing:border-box}
#app .zw192-choice button,#app .zw192-shapes button{
 appearance:none!important;-webkit-appearance:none!important;border:none!important;
 background:transparent!important;box-shadow:none!important;padding:0!important;
 -webkit-tap-highlight-color:transparent!important;touch-action:manipulation!important;
}
#app .zw192-choice button:focus-visible,#app .zw192-shapes button:focus-visible{
 outline:4px solid #fbe8ad!important;outline-offset:4px!important;border-radius:24px!important;
}
#app .zw192-choice img,#app .zw192-shapes img{object-fit:contain;pointer-events:none!important;user-select:none!important;-webkit-user-drag:none}
#app .zw192-choice-title{
 position:absolute!important;left:12%;top:9%;width:76%;height:11%;z-index:5;
}
#app .zw192-choice-title img{width:100%;height:100%;filter:drop-shadow(0 4px 3px #664a3c66)}
#app .zw192-choice-tiles{
 position:absolute!important;left:4%;top:21%;width:92%;height:73%;
 display:grid!important;grid-template-columns:1fr;grid-template-rows:repeat(2,minmax(0,1fr));
 align-items:stretch;justify-items:stretch;gap:2.5%!important;z-index:5;
}
#app .zw192-choice .zw192-tile{
 display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-end!important;
 position:relative!important;width:100%!important;height:100%!important;min-width:0;min-height:0;
 border-radius:27px!important;
 background:transparent url('/storybook-games-v91/choice-board.webp') center/100% 100% no-repeat!important;
 filter:drop-shadow(0 4px 3px #73583e55)!important;
 overflow:hidden!important;
}
#app .zw192-choice .zw192-tile:active{transform:scale(.97)!important}
#app .zw192-choice .zw192-thumb{
 display:block!important;width:92%!important;height:65%!important;max-height:65%!important;
 object-fit:contain!important;mix-blend-mode:multiply!important;margin:0 auto!important;
}
#app .zw192-choice .zw192-tile-footer{
 display:flex!important;align-items:center!important;justify-content:center!important;
 width:96%!important;height:33%!important;gap:3%;margin:0 auto 2%;
}
#app .zw192-choice .zw192-go{
 width:clamp(72px,23vw,104px)!important;height:clamp(72px,23vw,104px)!important;
 flex:0 0 auto!important;filter:drop-shadow(0 4px 3px #684c2e5e);
}
#app .zw192-choice .zw192-plaque{
 flex:1!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;
 width:100%!important;max-width:225px!important;min-height:57px!important;height:82%!important;
 background:transparent url('/hunt-v189/wood-sign.webp') center/100% 100% no-repeat!important;
 color:#813d29!important;font-family:'Trebuchet MS',Arial,sans-serif!important;
 text-align:center!important;
}
#app .zw192-choice .zw192-plaque b{
 font-weight:1000!important;line-height:1.1!important;
 font-size:clamp(19px,5.4vw,27px)!important;
 text-shadow:0 1px #fef2bf!important;
}
/* Interactive new picture puzzle */
#app .zw192-shapes .zw192-back,#app .zw94-connect .zw192-back{
 position:absolute!important;z-index:26!important;left:1.5%!important;top:1.4%!important;
 width:clamp(52px,14vw,68px)!important;height:clamp(52px,14vw,68px)!important;
 background:transparent url('/storybook-games-v91/retry.webp') center/contain no-repeat!important;
 border:0!important;pointer-events:auto!important;
}
#app .zw192-shapes .zw192-back img,#app .zw94-connect .zw192-back img{width:100%;height:100%;opacity:0}
#app .zw192-shapes .zw192-title{
 position:absolute!important;z-index:5!important;left:18%!important;top:1%!important;width:73%!important;height:10%!important;
}
#app .zw192-shapes .zw192-title img{width:100%;height:100%}
#app .zw192-shapes .zw192-progress{
 position:absolute!important;z-index:5!important;left:20%;top:11.5%;width:63%;height:8%;
 display:flex!important;justify-content:center!important;align-items:center!important;gap:3px!important;
 padding:0 12px;background:transparent url('/storybook-games-v91/choice-board.webp') center / 100% 100% no-repeat!important;
}
#app .zw192-shapes .zw192-progress i{
 display:block!important;flex:0 1 16px!important;width:clamp(8px,2.5vw,17px)!important;
 max-width:17px!important;aspect-ratio:1!important;border-radius:50%!important;
 background:#f7d4c1!important;border:2px solid #d2a188!important;box-shadow:0 1px #fff8d4!important;
 transition:transform .18s ease!important;
}
#app .zw192-shapes .zw192-progress i.is-done{
 background:#8bc67c!important;border-color:#558747!important;transform:scale(1.16)!important;
}
#app .zw192-shapes .zw192-board{
 position:absolute!important;z-index:9!important;left:4%!important;top:20.5%!important;width:92%!important;height:54%!important;
 touch-action:none!important;overscroll-behavior:none!important;
 border:5px solid #a17c5b!important;border-radius:26px!important;
 background:#f7e5bf!important;overflow:hidden!important;
 box-shadow:inset 0 0 0 3px #fff0ce,0 4px 4px #60452d51!important;
}
#app .zw192-shapes .zw192-paper{
 position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:fill!important;
}
#app .zw192-shapes #zw192Canvas{
 position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
 z-index:2!important;pointer-events:none!important;
}
#app .zw192-shapes .zw192-dot{
 display:flex!important;position:absolute!important;z-index:6!important;
 width:clamp(46px,13.5vw,59px)!important;height:clamp(46px,13.5vw,59px)!important;
 border:0!important;border-radius:50%!important;
 align-items:center!important;justify-content:center!important;
 transform:translate(-50%,-50%)!important;
 touch-action:none!important;
 filter:drop-shadow(0 2px 2px #64573b3c)!important;
 transition:filter .15s ease,scale .15s ease!important;
}
#app .zw192-shapes .zw192-dot .zw192-circle{
 position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
}
#app .zw192-shapes .zw192-dot .zw192-digit{
 position:relative!important;z-index:3!important;color:#593522!important;
 font-family:'Trebuchet MS',Arial,sans-serif!important;
 font-weight:1000!important;font-size:clamp(24px,7.3vw,34px)!important;line-height:1!important;
 text-shadow:1px 1px #fff6df,-1px -1px #fff4cb!important;
}
#app .zw192-shapes .zw192-dot.is-next{
 z-index:7!important;filter:drop-shadow(0 0 6px #fff6a3) drop-shadow(0 2px 2px #88663e)!important;
 animation:zw192-next-pulse 1.45s ease-in-out infinite!important;
}
#app .zw192-shapes .zw192-dot.is-linked{opacity:.88;filter:drop-shadow(0 1px 2px #436a4d55)!important}
#app .zw192-shapes .zw192-dot.zw192-nudge{animation:zw192-nudge .46s ease!important}
@keyframes zw192-next-pulse{0%,100%{filter:drop-shadow(0 0 5px #fff7a4)}50%{filter:drop-shadow(0 0 11px #ffed67)}}
@keyframes zw192-nudge{0%,100%{translate:0 0}25%{translate:-6px 0}50%{translate:6px 0}75%{translate:-3px 0}}
#app .zw192-shapes .zw192-palette{
 position:absolute!important;z-index:15!important;left:4%;top:76.5%;width:83%;height:21%;
 display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));
 align-items:center!important;justify-items:center!important;
}
#app .zw192-shapes .zw192-pot{
 display:block!important;position:relative!important;
 width:clamp(47px,14.7vw,76px)!important;height:clamp(47px,14.7vw,76px)!important;
 filter:drop-shadow(0 2px 2px #65463859)!important;border-radius:50%!important;
}
#app .zw192-shapes .zw192-pot img{width:100%;height:100%}
#app .zw192-shapes .zw192-pot.active{transform:translateY(-5px) scale(1.12)!important;filter:drop-shadow(0 0 6px #fff4be) drop-shadow(0 2px 2px #7e563e66)!important}
#app .zw192-shapes .zw192-restart,#app .zw192-shapes .zw192-next{
 position:absolute!important;z-index:19!important;right:1.5%;bottom:5%;
 width:clamp(53px,16vw,73px)!important;height:clamp(53px,16vw,73px)!important;
 border-radius:50%!important;filter:drop-shadow(0 3px 2px #71574270)!important;
}
#app .zw192-shapes .zw192-restart img,#app .zw192-shapes .zw192-next img{width:100%;height:100%}
#app .zw192-shapes .zw192-next{right:20%;animation:zw192-bob 1.5s ease-in-out infinite!important}
@keyframes zw192-bob{0%,100%{filter:drop-shadow(0 0 2px #fff29b)}50%{filter:drop-shadow(0 0 9px #ffe25a)}}
#app .zw192-shapes .zw192-confetti{
 position:absolute!important;z-index:12!important;width:18px;height:18px;pointer-events:none!important;
 animation:zw192-confetti 1.5s ease-out forwards!important;
}
@keyframes zw192-confetti{
 0%{opacity:0;transform:translate(-50%,-50%) scale(.4)}
 10%{opacity:1}
 100%{opacity:0;transform:translate(calc(-50% + var(--tx)),calc(-50% + var(--ty))) rotate(var(--rot)) scale(.5)}
}
@media(orientation:landscape) and (max-height:650px){
 #app .zw192-choice.main-content,#app .zw192-shapes.main-content{
  background-image:url('/garden-games-v94/garden-landscape.webp')!important;
 }
 #app .zw192-choice-title{left:30%!important;top:1%!important;width:40%!important;height:17%}
 #app .zw192-choice-tiles{
  left:8%!important;top:19%!important;width:84%!important;height:76%!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:1fr!important;gap:3%!important;
 }
 #app .zw192-choice .zw192-thumb{height:59%!important;max-height:59%!important}
 #app .zw192-choice .zw192-tile-footer{height:38%!important}
 #app .zw192-choice .zw192-go{width:clamp(60px,18vh,96px)!important;height:clamp(60px,18vh,96px)!important}
 #app .zw192-choice .zw192-plaque b{font-size:clamp(16px,4.5vh,24px)!important}
 #app .zw192-shapes .zw192-title{left:63%!important;top:1.5%!important;width:35%!important;height:17%}
 #app .zw192-shapes .zw192-progress{left:64%!important;top:22%!important;width:34%!important;height:15%}
 #app .zw192-shapes .zw192-progress i{width:clamp(7px,1.15vw,12px)!important;flex-basis:12px!important}
 #app .zw192-shapes .zw192-board{left:2%!important;top:7%!important;width:60%!important;height:89%!important;border-width:4px!important}
 #app .zw192-shapes .zw192-dot{width:clamp(43px,12.5vh,62px)!important;height:clamp(43px,12.5vh,62px)!important}
 #app .zw192-shapes .zw192-dot .zw192-digit{font-size:clamp(22px,7.4vh,36px)!important}
 #app .zw192-shapes .zw192-palette{left:64%!important;top:40%!important;width:34%!important;height:43%}
 #app .zw192-shapes .zw192-pot{width:clamp(43px,13vh,65px)!important;height:clamp(43px,13vh,65px)!important}
 #app .zw192-shapes .zw192-restart,#app .zw192-shapes .zw192-next{width:clamp(43px,12vh,62px)!important;height:clamp(43px,12vh,62px)!important;bottom:1%}
 #app .zw192-shapes .zw192-restart{right:13%}
 #app .zw192-shapes .zw192-next{right:24%}
 #app .zw192-shapes .zw192-back{left:1%!important;top:1%!important;width:clamp(45px,12vh,63px)!important;height:clamp(45px,12vh,63px)!important}
}
@media(orientation:portrait) and (max-width:355px){
 #app .zw192-choice-title{left:14%!important;width:72%!important;top:9.5%}
 #app .zw192-choice-tiles{top:21%!important;height:74%!important;left:3%!important;width:94%}
 #app .zw192-choice .zw192-thumb{height:62%!important;max-height:62%!important}
 #app .zw192-choice .zw192-go{width:71px!important;height:71px!important}
 #app .zw192-choice .zw192-plaque b{font-size:18px!important}
 #app .zw192-shapes .zw192-board{left:2%!important;width:96%!important;top:21%!important;height:53%}
 #app .zw192-shapes .zw192-dot{width:43px!important;height:43px!important}
 #app .zw192-shapes .zw192-dot .zw192-digit{font-size:24px!important}
 #app .zw192-shapes .zw192-palette{top:76%!important;left:3%!important;width:82%!important;height:22%}
 #app .zw192-shapes .zw192-pot{width:47px!important;height:47px!important}
 #app .zw192-shapes .zw192-restart{width:52px!important;height:52px!important;right:3%}
 #app .zw192-shapes .zw192-next{width:52px!important;height:52px!important}
}
/* Give the classic numbers mode the same return-to-two-modes button, without changing its game. */
#app .zw94-connect .zw192-back{border:0!important;position:absolute!important;z-index:100!important}

/* Child-friendly back control, with painted red Play style facing left. */
#app .zw192-shapes .zw192-back,#app .zw94-connect .zw192-back{
 left:1%!important;top:11.3%!important;
 background:transparent url('/connect-v192/back-red.webp') center / contain no-repeat!important;
 border:0!important;filter:drop-shadow(0 2px 2px #7954386e)!important;
}
#app .zw192-shapes .zw192-back img,#app .zw94-connect .zw192-back img{
 width:100%!important;height:100%!important;opacity:1!important;
}
@media (orientation:landscape) and (max-height:650px){
 #app .zw192-shapes .zw192-back,#app .zw94-connect .zw192-back{
  left:1%!important;top:1%!important;width:clamp(43px,12vh,60px)!important;height:clamp(43px,12vh,60px)!important;
 }
}

/* ---- /connect-v194/polish.css?v=194 ---- */
/* Connect v194 – precise touch states, toddler-friendly finish, original crayon art. */
#app .zw192-shapes .zw192-dot.zw194-close-target{
 z-index:12!important;
 filter:drop-shadow(0 0 7px #fff19b) drop-shadow(0 2px 3px #6f533d7a)!important;
 animation:zw194-finish-glow 1.15s ease-in-out infinite!important;
}
#app .zw192-shapes .zw192-dot.zw194-close-target::after{
 content:"";position:absolute;z-index:-1;inset:-9px;
 border:4px dashed #f5cf54;
 border-radius:50%;pointer-events:none;
 box-shadow:0 0 0 2px #fff3c5a1;
 animation:zw194-finish-outline 1.15s ease-in-out infinite;
}
#app .zw192-shapes .zw192-progress i.zw194-last-step:not(.is-done){
 background:#ffdf96!important;border-color:#c99645!important;
 animation:zw194-finish-outline 1.35s ease-in-out infinite!important;
}
#app .zw192-shapes .zw192-progress i.zw194-last-step.is-done{
 background:#91cc80!important;border-color:#5b9a4f!important;
}
@keyframes zw194-finish-glow{
 0%,100%{filter:drop-shadow(0 0 5px #fff1a7)}
 50%{filter:drop-shadow(0 0 12px #fff7ca)}
}
@keyframes zw194-finish-outline{
 0%,100%{opacity:.65}
 50%{opacity:1}
}
#app .zw94-connect .zw94-number.zw194-picked{
 z-index:12!important;
 filter:drop-shadow(0 0 9px #fff5ad) drop-shadow(0 2px 2px #5e423e60)!important;
}
#app .zw94-connect .zw94-number.zw194-picked::after{
 content:"";position:absolute;inset:-7px;border:3px dashed #ffe37a;
 border-radius:50%;pointer-events:none;
 animation:zw194-finish-outline 1.15s ease-in-out infinite;
}
#app .zw94-connect .zw94-number:not(.matched){touch-action:none!important}
#app .zw192-shapes .zw192-board,#app .zw94-connect .zw94-board{touch-action:none!important}
#app .zw192-shapes #zw192Canvas{contain:paint!important}
@media(prefers-reduced-motion:reduce){
 #app .zw192-shapes .zw192-dot.zw194-close-target,
 #app .zw192-shapes .zw192-progress i.zw194-last-step,
 #app .zw94-connect .zw94-number.zw194-picked::after{
  animation:none!important;
 }
}

/* ---- /polish-v195/polish.css?v=195 ---- */
/* Zählwiese v195: fully illustrated win reveal, handdrawn animal cuddles, clean collection bowl */
#app .zw192-shapes .zw195-painted-motif{
 position:absolute!important;inset:0!important;z-index:1!important;
 display:block!important;width:100%!important;height:100%!important;
 object-fit:fill!important;object-position:center center!important;
 pointer-events:none!important;user-select:none!important;
 animation:zw195-picture-appear .95s cubic-bezier(.16,.68,.29,1) both!important;
 filter:saturate(1.08)!important;
}
@keyframes zw195-picture-appear{
 0%{opacity:0;transform:scale(.94);filter:saturate(.3)}
 38%{opacity:.86;transform:scale(1.017);filter:saturate(1.22)}
 100%{opacity:1;transform:scale(1);filter:saturate(1.08)}
}
#app .zw192-shapes .zw192-board.is-finished .zw192-dot{
 transition:opacity .25s ease,filter .25s ease!important;
}
#app .zw192-shapes .zw192-board.is-finished #zw192Canvas{z-index:2!important}
#app .memory127-page .zw195-cuddle{
 position:absolute!important;z-index:70!important;
 left:50%!important;top:50%!important;
 width:clamp(155px,49vw,245px)!important;
 height:clamp(98px,19vh,155px)!important;
 border-radius:50%!important;
 background:radial-gradient(ellipse,#fff6cecc 0%,#fff6d85b 51%,transparent 78%)!important;
 transform:translate(-50%,-50%)!important;
 animation:zw195-hug-in 1.3s ease-out both!important;
 pointer-events:none!important;
 filter:drop-shadow(0 2px 4px #685b4270)!important;
}
#app .memory127-page .zw195-cuddle-animal{
 position:absolute!important;top:10%!important;
 width:63%!important;height:90%!important;
 object-fit:contain!important;transform-origin:50% 90%!important;
 filter:drop-shadow(0 2px 1px #7a5d4f54)!important;
}
#app .memory127-page .zw195-cuddle-left{
 left:-7%!important;
 animation:zw195-hug-left 1.15s cubic-bezier(.14,.8,.28,1) both!important;
}
#app .memory127-page .zw195-cuddle-right{
 right:-7%!important;
 animation:zw195-hug-right 1.15s cubic-bezier(.14,.8,.28,1) both!important;
}
#app .memory127-page .zw195-cuddle-heart{
 position:absolute!important;left:46%!important;top:30%!important;
 width:clamp(17px,5vw,28px)!important;height:clamp(17px,5vw,28px)!important;
 object-fit:contain!important;
 animation:zw195-hug-heart 1.12s ease-in-out both!important;
 animation-delay:calc(var(--i) * 80ms)!important;
 transform-origin:50% 70%!important;
}
@keyframes zw195-hug-in{
 0%{opacity:0;scale:.85}
 13%{opacity:1;scale:1}
 75%{opacity:1;scale:1.02}
 100%{opacity:0;scale:.96}
}
@keyframes zw195-hug-left{
 0%{transform:translateX(-37%) rotate(-9deg)}
 43%{transform:translateX(20%) rotate(10deg)}
 61%{transform:translateX(17%) rotate(6deg)}
 80%,100%{transform:translateX(18%) rotate(9deg)}
}
@keyframes zw195-hug-right{
 0%{transform:translateX(37%) scaleX(-1) rotate(-9deg)}
 43%{transform:translateX(-20%) scaleX(-1) rotate(10deg)}
 61%{transform:translateX(-17%) scaleX(-1) rotate(6deg)}
 80%,100%{transform:translateX(-18%) scaleX(-1) rotate(9deg)}
}
@keyframes zw195-hug-heart{
 0%,18%{opacity:0;transform:translate(0,12px) scale(.25) rotate(-18deg)}
 36%{opacity:1;transform:translate(var(--hx),-13px) scale(1)}
 75%{opacity:.92;transform:translate(var(--hx),var(--hy)) scale(.9) rotate(8deg)}
 100%{opacity:0;transform:translate(var(--hx),-63px) scale(.54)}
}
@media(orientation:landscape){
 #app .memory127-page .zw195-cuddle{
  left:64%!important;top:48%!important;
  width:clamp(150px,27vw,235px)!important;
  height:clamp(85px,28vh,142px)!important;
 }
}
#app .zw160-collect .zw166-bowl-stash,
#app .zw160-collect .zw166-stash-item{
 display:none!important;
}
@media(prefers-reduced-motion:reduce){
 #app .zw192-shapes .zw195-painted-motif,
 #app .memory127-page .zw195-cuddle,
 #app .memory127-page .zw195-cuddle-animal,
 #app .memory127-page .zw195-cuddle-heart{
 animation-duration:.15s!important;animation-iteration-count:1!important;
 }
}

/* ---- /memory-cuddle-v212/cuddle.css?v=212 ---- */
/* Memory v212: genuine gentle cheek-to-cheek cuddle, using existing hand-drawn animals. */
#app .memory127-page .zw195-cuddle.zw212-cuddle {
  left:50%!important; top:51%!important;
  width:clamp(250px,78vw,390px)!important;
  height:clamp(175px,32vh,270px)!important;
  border-radius:45%!important;
  background:radial-gradient(ellipse at 50% 78%,#fff5c7c9 0%,#fff7d478 43%,transparent 73%)!important;
  transform:translate(-50%,-50%)!important;
  animation:zw212-stage 3.6s ease-in-out both!important;
  isolation:isolate!important;
  filter:drop-shadow(0 3px 3px #8b775536)!important;
}
#app .memory127-page .zw212-cuddle .zw195-cuddle-animal {
  top:auto!important;bottom:3%!important;
  width:48%!important;height:89%!important;
  object-fit:contain!important;object-position:center bottom!important;
  transform-origin:50% 85%!important;
  will-change:transform!important;
  filter:drop-shadow(0 3px 2px #725b4d40)!important;
}
#app .memory127-page .zw212-cuddle .zw195-cuddle-left {
  left:0%!important;right:auto!important;z-index:2!important;
  animation:zw212-lean-left 3.6s cubic-bezier(.38,.05,.28,1) both!important;
}
#app .memory127-page .zw212-cuddle .zw195-cuddle-right {
  right:0%!important;left:auto!important;z-index:3!important;
  animation:zw212-lean-right 3.6s cubic-bezier(.38,.05,.28,1) both!important;
}
#app .memory127-page .zw212-cuddle .zw195-cuddle-heart {
  z-index:4!important;top:22%!important;left:47%!important;
  width:clamp(18px,5vw,28px)!important;height:clamp(18px,5vw,28px)!important;
  animation:zw212-float-heart 3.6s ease-in-out both!important;
  animation-delay:calc(var(--i)*90ms)!important;
}
@keyframes zw212-stage {
  0%{opacity:0;scale:.97}
  10%{opacity:1;scale:1}
  87%{opacity:1;scale:1}
  100%{opacity:0;scale:.985}
}
@keyframes zw212-lean-left {
  0%{transform:translateX(-34%) rotate(-8deg)}
  18%{transform:translateX(-8%) rotate(-2deg)}
  40%{transform:translateX(30%) rotate(11deg)}
  49%{transform:translateX(24%) rotate(5deg)}
  60%{transform:translateX(31%) rotate(12deg)}
  72%{transform:translateX(29%) rotate(9deg)}
  83%{transform:translateX(31%) rotate(12deg)}
  94%,100%{transform:translateX(29%) rotate(10deg)}
}
@keyframes zw212-lean-right {
  0%{transform:translateX(34%) scaleX(-1) rotate(-8deg)}
  18%{transform:translateX(8%) scaleX(-1) rotate(-2deg)}
  40%{transform:translateX(-30%) scaleX(-1) rotate(11deg)}
  49%{transform:translateX(-24%) scaleX(-1) rotate(5deg)}
  60%{transform:translateX(-31%) scaleX(-1) rotate(12deg)}
  72%{transform:translateX(-29%) scaleX(-1) rotate(9deg)}
  83%{transform:translateX(-31%) scaleX(-1) rotate(12deg)}
  94%,100%{transform:translateX(-29%) scaleX(-1) rotate(10deg)}
}
@keyframes zw212-float-heart {
  0%,29%{opacity:0;transform:translate(0,12px) scale(.15) rotate(-12deg)}
  46%{opacity:.96;transform:translate(var(--hx),-6px) scale(.88) rotate(-4deg)}
  68%{opacity:1;transform:translate(var(--hx),var(--hy)) scale(1.04) rotate(6deg)}
  85%{opacity:.9;transform:translate(var(--hx),calc(var(--hy) - 10px)) scale(.83) rotate(-5deg)}
  100%{opacity:0;transform:translate(var(--hx),-74px) scale(.48) rotate(8deg)}
}
@media(orientation:landscape){
  #app .memory127-page .zw195-cuddle.zw212-cuddle {
    left:61%!important;top:50%!important;
    width:clamp(215px,34vw,345px)!important;
    height:clamp(150px,53vh,225px)!important;
  }
}
@media(max-width:360px) and (orientation:portrait){
  #app .memory127-page .zw195-cuddle.zw212-cuddle{
    width:clamp(226px,80vw,300px)!important;
    height:clamp(165px,27vh,235px)!important;
  }
}
@media(prefers-reduced-motion:reduce){
  #app .memory127-page .zw195-cuddle.zw212-cuddle{
    animation:none!important;opacity:1!important;
  }
  #app .memory127-page .zw212-cuddle .zw195-cuddle-left{
    animation:none!important;transform:translateX(29%) rotate(10deg)!important;
  }
  #app .memory127-page .zw212-cuddle .zw195-cuddle-right{
    animation:none!important;transform:translateX(-29%) scaleX(-1) rotate(10deg)!important;
  }
  #app .memory127-page .zw212-cuddle .zw195-cuddle-heart{animation:none!important;opacity:.75!important}
}

/* ---- /memory-match-v213/celebrate.css?v=213 ---- */
/* Zählwiese Memory v213: hand-painted pair celebrations and faster cuddling. */
#app .memory127-page .zw195-cuddle.zw212-cuddle,
#app .memory127-page .zw212-cuddle .zw195-cuddle-animal,
#app .memory127-page .zw212-cuddle .zw195-cuddle-heart {
  animation-duration:2.6s!important;
}
/* Entire celebration is outside the clipped memory grid, without stealing touches. */
.zw213-pair-fx {
  position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;
  z-index:999997!important;pointer-events:none!important;overflow:hidden!important;
  contain:layout style paint!important;isolation:isolate!important;
}
.zw213-pair-fx img{position:absolute!important;display:block!important;object-fit:contain!important;pointer-events:none!important;user-select:none!important;-webkit-user-drag:none!important;}
.zw213-pair-fx .zw213-confetti{
  opacity:0;width:clamp(11px,3.5vw,17px)!important;height:clamp(15px,4.5vw,23px)!important;
  filter:drop-shadow(0 1px 1px #6f593843)!important;
  animation:zw213-confetti-flight var(--duration,2300ms) cubic-bezier(.19,.57,.41,1) var(--delay,0ms) both!important;
  will-change:transform,opacity!important;
}
.zw213-pair-fx .zw213-balloon {
  opacity:0;width:clamp(34px,9vw,54px)!important;height:clamp(62px,17vw,92px)!important;
  transform-origin:50% 90%!important;
  filter:drop-shadow(0 2px 2px #6f593848)!important;
  animation:zw213-balloon-flight var(--duration,2550ms) cubic-bezier(.3,.05,.27,1) var(--delay,0ms) both!important;
  will-change:transform,opacity!important;
}
@keyframes zw213-confetti-flight{
  0%{opacity:0;transform:translate3d(0,6px,0) rotate(0deg) scale(.5)}
  12%{opacity:1}
  38%{opacity:1;transform:translate3d(var(--mid-x),var(--mid-y),0) rotate(var(--mid-rot)) scale(1.08)}
  77%{opacity:1}
  100%{opacity:0;transform:translate3d(var(--end-x),var(--end-y),0) rotate(var(--end-rot)) scale(.78)}
}
@keyframes zw213-balloon-flight{
  0%{opacity:0;transform:translate3d(0,28px,0) rotate(-5deg) scale(.62)}
  17%{opacity:1}
  55%{opacity:1;transform:translate3d(var(--sway),-105px,0) rotate(var(--tilt)) scale(.9)}
  80%{opacity:.96}
  100%{opacity:0;transform:translate3d(var(--end-x),-232px,0) rotate(-7deg) scale(1)}
}
/* Keep simple success feedback accessible for children with reduced motion. */
@media(prefers-reduced-motion:reduce){
  .zw213-pair-fx .zw213-confetti{animation-duration:450ms!important;}
  .zw213-pair-fx .zw213-balloon{animation-duration:900ms!important;}
  #app .memory127-page .zw212-cuddle .zw195-cuddle-animal{animation-duration:.01ms!important;}
  #app .memory127-page .zw195-cuddle.zw212-cuddle{animation:none!important;opacity:1!important;}
}

/* ---- /memory-polish-v214/memory.css?v=214 ---- */
/* Zählwiese Memory 214: picture-led progress, gentler interactions, hand-painted details. */
#app .memory127-page .memory214-progress{
 display:grid!important;grid-template-columns:repeat(5, minmax(0,1fr))!important;
 grid-template-rows:repeat(2, minmax(0,1fr))!important;
 align-items:center!important;justify-items:center!important;
 width:clamp(104px,30vw,133px)!important;height:52px!important;
 min-width:100px!important;flex:0 0 auto!important;
 gap:1px 2px!important;padding:4px 6px!important;
 border-radius:18px 22px 18px 20px!important;
 background:#fff5d9df url('/memory-v127/card-cream.webp') center / 100% 100% no-repeat!important;
 border:2px solid #b47b4fa8!important;
 box-shadow:0 2px 4px #68533e4a!important;
}
#app .memory127-page .memory214-progress .memory214-token{
 display:block!important;width:100%!important;height:100%!important;
 background:transparent!important;box-shadow:none!important;border:0!important;
 margin:0!important;padding:0!important;min-width:0!important;
}
#app .memory127-page .memory214-progress .memory214-token img{
 width:100%!important;height:100%!important;display:block!important;object-fit:contain!important;
 filter:grayscale(.73) sepia(.16) opacity(.67)!important;
 transform:scale(.94)!important;
 transition:filter .24s ease,transform .28s cubic-bezier(.16,.9,.25,1.22)!important;
}
#app .memory127-page .memory214-progress .memory214-token.is-done img{
 filter:drop-shadow(0 1px 1px #8b644656)!important;
 transform:scale(1)!important;
}
#app .memory127-page .memory214-progress .memory214-token.is-new img{
 animation:zw214-stamp .6s cubic-bezier(.22,1.3,.35,1) both!important;
}
@keyframes zw214-stamp{
 0%{opacity:.35;transform:scale(.55) rotate(-13deg)}
 52%{opacity:1;transform:scale(1.25) rotate(7deg)}
 100%{opacity:1;transform:scale(1) rotate(0deg)}
}
/* Fast enough for little hands, without a harsh card snap. */
#app .memory127-page .memory127-card .memory127-inner{
 transition:transform .36s cubic-bezier(.16,.73,.27,1)!important;
 will-change:auto!important;
}
#app .memory127-page .memory127-card.is-flipped .memory127-inner{
 will-change:transform!important;
}
#app .memory127-page .memory214-enter .memory127-card:not(.is-matched){
 animation:zw214-deal .38s cubic-bezier(.17,.8,.26,1) both!important;
 animation-delay:calc(var(--deal-index,0) * 15ms)!important;
}
@keyframes zw214-deal{
 0%{opacity:.15;transform:translateY(12px) rotate(2deg) scale(.93)}
 70%{opacity:1;transform:translateY(-2px) rotate(-.5deg) scale(1.015)}
 100%{opacity:1;transform:none}
}
#app .memory127-page .memory127-card.is-matched{
 animation:zw214-match-pop .52s cubic-bezier(.2,.75,.22,1) both!important;
}
@keyframes zw214-match-pop{
 0%{transform:scale(1)}
 48%{transform:scale(1.055) rotate(-1deg)}
 80%{transform:scale(.985) rotate(1deg)}
 100%{transform:none}
}
#app .memory127-page .memory127-card.is-matched::after{
 content:''!important;position:absolute!important;z-index:15!important;
 top:3px!important;right:3px!important;
 width:clamp(15px,3.5vw,24px)!important;height:clamp(15px,3.5vw,24px)!important;
 background:url('/animal-feeding-v85/heart.webp') center / contain no-repeat!important;
 filter:drop-shadow(0 1px 1px #6e4c4180)!important;
 pointer-events:none!important;
 animation:zw214-stamp .43s .12s both!important;
}
#app .memory127-page .memory127-card.is-matched .memory127-front{
 filter:saturate(1.09) brightness(1.04)!important;
}
/* Round illustrated controls; avoid close-to-edge hit areas. */
#app .memory127-page .memory127-controls{
 gap:clamp(20px,6vw,35px)!important;min-height:58px!important;
 padding:2px 5px 4px!important;
}
#app .memory127-page .memory127-round{
 width:clamp(52px,14vw,63px)!important;height:clamp(52px,14vw,63px)!important;
 flex-shrink:0!important;transition:transform .18s ease,filter .18s ease!important;
}
#app .memory127-page .memory127-round:active{transform:scale(.91) rotate(-6deg)!important;filter:brightness(1.1)!important}
/* Portrait: progress lives in the clear garden space below the buttons, never behind Home. */
@media(orientation:portrait){
 #app .memory127-page .memory214-progress{
  position:absolute!important;left:50%!important;top:auto!important;
  bottom:max(8px,env(safe-area-inset-bottom,0px))!important;
  transform:translateX(-50%)!important;
  width:clamp(139px,43vw,178px)!important;height:40px!important;
  z-index:4!important;
 }
}
@media(orientation:portrait) and (min-height:690px){
 #app .memory127-page .memory214-progress{
  bottom:max(14px,env(safe-area-inset-bottom,0px))!important;
  height:46px!important;
 }
}
@media(orientation:landscape) and (max-height:450px){
 #app .memory127-page .memory214-progress{height:39px!important;width:112px!important;padding:2px 6px!important}
 #app .memory127-page .memory127-controls{min-height:45px!important}
 #app .memory127-page .memory127-round{width:clamp(42px,10vh,51px)!important;height:clamp(42px,10vh,51px)!important}
}
@media(orientation:portrait) and (max-height:640px){
 #app .memory127-page .memory214-progress{height:38px!important}
 #app .memory127-page .memory127-controls{min-height:45px!important;padding:1px 4px!important}
 #app .memory127-page .memory127-round{width:46px!important;height:46px!important}
}
@media(prefers-reduced-motion:reduce){
 #app .memory127-page .memory214-enter .memory127-card,
 #app .memory127-page .memory127-card.is-matched,
 #app .memory127-page .memory214-progress .memory214-token.is-new img{
 animation:none!important;
 }
 #app .memory127-page .memory127-card .memory127-inner{transition:none!important}
}

/* Reliable two-face card flip in Safari and Chromium.
   Earlier preserve-3d implementation showed the front even while unflipped. */
#app .memory127-page .memory127-card .memory127-inner{
 transform:none!important;transform-style:flat!important;transition:none!important;
}
#app .memory127-page .memory127-card .memory127-back,
#app .memory127-page .memory127-card .memory127-front{
 backface-visibility:visible!important;-webkit-backface-visibility:visible!important;
 transform-origin:center center!important;
}
#app .memory127-page .memory127-card .memory127-back{
 transform:perspective(700px) rotateY(0deg)!important;
 opacity:1!important;visibility:visible!important;
 transition:transform .18s ease-in,opacity .03s .15s linear,visibility 0s 0s!important;
}
#app .memory127-page .memory127-card .memory127-front{
 transform:perspective(700px) rotateY(-90deg)!important;
 opacity:0!important;visibility:hidden!important;
 transition:transform .18s .16s ease-out,opacity .03s .16s linear,visibility 0s .16s!important;
}
#app .memory127-page .memory127-card.is-flipped .memory127-back,
#app .memory127-page .memory127-card.is-matched .memory127-back{
 transform:perspective(700px) rotateY(90deg)!important;
 opacity:0!important;visibility:hidden!important;
 transition:transform .18s ease-in,opacity .03s .16s linear,visibility 0s .17s!important;
}
#app .memory127-page .memory127-card.is-flipped .memory127-front,
#app .memory127-page .memory127-card.is-matched .memory127-front{
 transform:perspective(700px) rotateY(0deg)!important;
 opacity:1!important;visibility:visible!important;
 transition:transform .18s .16s ease-out,opacity .03s .16s linear,visibility 0s .16s!important;
}
@media(prefers-reduced-motion:reduce){
 #app .memory127-page .memory127-card .memory127-front,
 #app .memory127-page .memory127-card .memory127-back{transition:none!important}
}

/* ---- /memory-delight-v215/delight.css?v=215 ---- */
/* Zählwiese 215 | Pictured-memory: three modes, soothing touch response, joyful crayon rewards. */

/* The hand-drawn animals lean their heads together, then visibly sway and nuzzle
   three times, with a tiny breathing bounce. No drawn-in-CSS replacement art. */
#app .memory127-page .zw212-cuddle.zw215-hug .zw195-cuddle-left {
  left:0%!important;
  animation:zw215-hug-left 2.6s linear both!important;
  transform-origin:50% 88%!important;
  will-change:transform!important;
}
#app .memory127-page .zw212-cuddle.zw215-hug .zw195-cuddle-right {
  right:0%!important;
  animation:zw215-hug-right 2.6s linear both!important;
  transform-origin:50% 88%!important;
  will-change:transform!important;
}
@keyframes zw215-hug-left{
  0%{transform:translate3d(-38%,5px,0) rotate(-9deg) scale(.96)}
  23%{transform:translate3d(2%,0,0) rotate(-2deg) scale(1)}
  34%{transform:translate3d(31%,0,0) rotate(11deg) scale(1.035)}
  42%{transform:translate3d(29%,-5px,0) rotate(5deg) scale(1.035)}
  49%{transform:translate3d(34%,2px,0) rotate(14deg) scale(1.025)}
  56%{transform:translate3d(29%,-4px,0) rotate(6deg) scale(1.035)}
  64%{transform:translate3d(33%,2px,0) rotate(13deg) scale(1.03)}
  72%{transform:translate3d(29%,-3px,0) rotate(6deg) scale(1.04)}
  81%{transform:translate3d(32%,0,0) rotate(11deg) scale(1.025)}
  91%,100%{transform:translate3d(31%,0,0) rotate(9deg) scale(1.025)}
}
@keyframes zw215-hug-right{
  0%{transform:translate3d(38%,5px,0) scaleX(-1) rotate(-9deg) scale(.96)}
  23%{transform:translate3d(-2%,0,0) scaleX(-1) rotate(-2deg) scale(1)}
  34%{transform:translate3d(-31%,0,0) scaleX(-1) rotate(11deg) scale(1.035)}
  42%{transform:translate3d(-29%,5px,0) scaleX(-1) rotate(5deg) scale(1.035)}
  49%{transform:translate3d(-34%,-2px,0) scaleX(-1) rotate(14deg) scale(1.025)}
  56%{transform:translate3d(-29%,4px,0) scaleX(-1) rotate(6deg) scale(1.035)}
  64%{transform:translate3d(-33%,-2px,0) scaleX(-1) rotate(13deg) scale(1.03)}
  72%{transform:translate3d(-29%,3px,0) scaleX(-1) rotate(6deg) scale(1.04)}
  81%{transform:translate3d(-32%,0,0) scaleX(-1) rotate(11deg) scale(1.025)}
  91%,100%{transform:translate3d(-31%,0,0) scaleX(-1) rotate(9deg) scale(1.025)}
}
/* A soft illustrated glow and floating heart around each nuzzle. */
#app .memory127-page .zw212-cuddle.zw215-hug {
  background:radial-gradient(ellipse at 50% 71%,#fff9caeb 0%,#fff6d59a 35%,transparent 74%)!important;
  filter:drop-shadow(0 3px 2px #705a3438)!important;
}
#app .memory127-page .zw215-hug .zw195-cuddle-heart {
  animation:zw215-hug-heart 2.6s ease-out both!important;
  animation-delay:calc(var(--i)*70ms)!important;
}
@keyframes zw215-hug-heart{
  0%,28%{opacity:0;transform:translate3d(0,12px,0) scale(.2)}
  39%{opacity:1;transform:translate3d(var(--hx),-6px,0) scale(.9) rotate(-8deg)}
  64%{opacity:.96;transform:translate3d(var(--hx),var(--hy),0) scale(1.1) rotate(6deg)}
  82%{opacity:.95;transform:translate3d(var(--hx),calc(var(--hy) - 16px),0) scale(.9) rotate(-5deg)}
  100%{opacity:0;transform:translate3d(var(--hx),-78px,0) scale(.6) rotate(12deg)}
}

/* Extra handpainted hearts, flowers and stars fly up with confetti and balloons.
   All images come from existing illustrated asset files. */
.zw213-pair-fx .zw215-reward {
  opacity:0!important;
  width:clamp(21px,6.5vw,35px)!important;
  height:clamp(21px,6.5vw,35px)!important;
  filter:drop-shadow(0 2px 2px #5b4b3948)!important;
  animation:zw215-reward-float var(--float-time,2300ms) cubic-bezier(.17,.7,.31,1) var(--delay,0ms) both!important;
  transform-origin:50% 70%!important;
  will-change:transform,opacity!important;
}
@keyframes zw215-reward-float{
  0%{opacity:0;transform:translate3d(0,14px,0) scale(.25) rotate(-18deg)}
  16%{opacity:.98;transform:translate3d(var(--drift-x),-16px,0) scale(1.15) rotate(7deg)}
  48%{opacity:1;transform:translate3d(var(--drift-mid),-63px,0) scale(.95) rotate(-8deg)}
  81%{opacity:.9;transform:translate3d(var(--drift-x),-110px,0) scale(.9) rotate(11deg)}
  100%{opacity:0;transform:translate3d(var(--drift-end),-150px,0) scale(.62) rotate(-14deg)}
}
/* Clear pictorial match feedback: heart for animals, stars for counting. */
#app .memory127-numbers .memory127-card.is-matched::after,
#app .memory127-fingers .memory127-card.is-matched::after{
  background-image:url('/bakery-v140/star-gold.webp')!important;
  width:clamp(18px,4vw,26px)!important;height:clamp(18px,4vw,26px)!important;
}
#app .memory127-animals .memory127-card.is-matched::after{
  background-image:url('/animal-feeding-v85/heart.webp')!important;
}
#app .memory127-page .memory127-card.zw215-wrong{
  animation:zw215-gentle-no .28s ease-in-out 1!important;
}
@keyframes zw215-gentle-no{
  0%,100%{transform:translateX(0) rotate(0)}
  24%{transform:translateX(-3px) rotate(-1.2deg)}
  53%{transform:translateX(3px) rotate(1.1deg)}
  77%{transform:translateX(-1.5px) rotate(-.6deg)}
}
#app .memory127-page .memory127-card.zw215-wrong .memory127-front{
  filter:saturate(.93) brightness(1.03)!important;
}
/* Restrain the smallest round's celebration: cards stay clearly visible. */
.zw213-pair-fx[data-mode="numbers"] .zw213-balloon,
.zw213-pair-fx[data-mode="fingers"] .zw213-balloon{
  width:clamp(29px,8vw,45px)!important;
  height:clamp(50px,14vw,78px)!important;
}
@media(prefers-reduced-motion:reduce){
 #app .memory127-page .zw212-cuddle.zw215-hug .zw195-cuddle-left{
  animation:none!important;transform:translateX(31%) rotate(8deg) scale(1.025)!important;
 }
 #app .memory127-page .zw212-cuddle.zw215-hug .zw195-cuddle-right{
  animation:none!important;transform:translateX(-31%) scaleX(-1) rotate(8deg) scale(1.025)!important;
 }
 #app .memory127-page .memory127-card.zw215-wrong{animation:none!important}
 .zw213-pair-fx .zw215-reward{animation-duration:.65s!important}
}

/* ---- /memory-redesign-v218/design.css?v=218 ---- */
/* Zählwiese Memory v218 — functional illustrated selection, not a screenshot overlay.
   All touch targets are actual buttons; all art is raster pencil illustration. */
#app .memory127-page.memory127-select.memory218-select{
 position:relative!important;
 display:block!important;
 width:100%!important;height:100%!important;min-height:0!important;
 padding:0!important;margin:0!important;overflow:hidden!important;
 background:#91cb9c url('/home-v126/background-portrait.webp') center / 100% 100% no-repeat!important;
 isolation:isolate!important;
}
#app .memory218-select .memory218-title{
 position:absolute!important;z-index:5!important;
 top:3%!important;left:17%!important;width:65%!important;height:9.2%!important;
 display:grid!important;place-items:center!important;
 margin:0!important;padding:4px 10px!important;
 min-width:0!important;min-height:0!important;max-width:none!important;
 border:0!important;border-radius:0!important;
 background:transparent url('/home-paint-v78/wood-plaque.webp') center / 100% 100% no-repeat!important;
 box-shadow:none!important;filter:drop-shadow(0 3px 2px #58412765)!important;
 font-family:'Monotype Corsiva','Segoe Script','Georgia',serif!important;
 font-style:italic!important;font-weight:700!important;
 font-size:clamp(31px,8.4vw,48px)!important;
 line-height:1.05!important;color:#6a3d25!important;
 text-shadow:1px 1px 0 #fff1c6bb!important;
 letter-spacing:.4px!important;
}
#app .memory218-select .memory218-title::before,
#app .memory218-select .memory218-title::after{
 content:''!important;position:absolute!important;
 top:5%!important;width:clamp(15px,5vw,25px)!important;height:90%!important;
 background:url('/bakery-v140/flower-gold.webp') center/contain no-repeat!important;
 opacity:.85!important;pointer-events:none!important;
}
#app .memory218-select .memory218-title::before{left:4%!important;transform:rotate(-18deg)!important}
#app .memory218-select .memory218-title::after{right:4%!important;transform:rotate(20deg)!important}
#app .memory218-select .memory218-heroes{
 position:absolute!important;z-index:4!important;
 top:17%!important;left:2%!important;width:96%!important;height:31%!important;
 margin:0!important;max-width:none!important;
 display:flex!important;gap:0!important;align-items:flex-end!important;
 justify-content:space-between!important;overflow:visible!important;
}
#app .memory218-select .memory218-hero{
 all:unset!important;display:block!important;position:relative!important;
 flex:0 0 50%!important;width:50%!important;height:100%!important;
 text-align:center!important;cursor:pointer!important;
 user-select:none!important;touch-action:manipulation!important;
 -webkit-tap-highlight-color:transparent!important;
}
#app .memory218-select .memory218-hero img.memory218-character{
 display:block!important;width:100%!important;height:100%!important;
 object-fit:contain!important;object-position:center bottom!important;
 max-width:none!important;max-height:none!important;
 filter:drop-shadow(1px 4px 3px #59483372)!important;
 transform-origin:center 82%!important;
 animation:zw218-breathe 3.3s ease-in-out infinite alternate!important;
}
#app .memory218-select .memory218-hero:first-child img.memory218-character{
 transform:scale(1.2) rotate(-4deg)!important;
 animation-name:zw218-breathe-left!important;
}
#app .memory218-select .memory218-hero:last-child img.memory218-character{
 transform:scale(1.16) rotate(4deg)!important;
 animation-name:zw218-breathe-right!important;
 animation-delay:-1.4s!important;
}
@keyframes zw218-breathe-left{
 0%{transform:scale(1.17) translateY(2px) rotate(-5deg)}
 100%{transform:scale(1.2) translateY(-3px) rotate(-3deg)}
}
@keyframes zw218-breathe-right{
 0%{transform:scale(1.14) translateY(2px) rotate(3deg)}
 100%{transform:scale(1.17) translateY(-2px) rotate(5deg)}
}
#app .memory218-select .memory218-hero:focus-visible{
 outline:3px solid #ffd975!important;outline-offset:2px!important;border-radius:40%!important;
}
#app .memory218-select .memory218-hero:active img.memory218-character{
 filter:drop-shadow(1px 4px 3px #59483372) brightness(1.1)!important;
}
#app .memory218-select .memory218-hero-effects{
 position:absolute!important;z-index:15!important;inset:0!important;
 pointer-events:none!important;overflow:visible!important;
}
#app .memory218-select .memory218-hero-effects img{
 position:absolute!important;display:block!important;
 width:clamp(18px,5vw,29px)!important;height:clamp(18px,5vw,29px)!important;
 object-fit:contain!important;pointer-events:none!important;
 animation:zw218-tap-heart 1.4s ease-out both!important;
}
@keyframes zw218-tap-heart{
 0%{opacity:0;transform:translate3d(0,18px,0) scale(.2) rotate(-12deg)}
 23%{opacity:1;transform:translate3d(0,-8px,0) scale(1.06) rotate(6deg)}
 77%{opacity:.95;transform:translate3d(var(--drift),-48px,0) scale(.9) rotate(-6deg)}
 100%{opacity:0;transform:translate3d(var(--drift),-83px,0) scale(.4) rotate(12deg)}
}
/* Three substantial round painted mode choices, with centered raster art & embedded labels. */
#app .memory218-select .memory218-choices{
 position:absolute!important;z-index:8!important;
 top:55.5%!important;left:2%!important;width:96%!important;height:25.4%!important;
 display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
 gap:clamp(2px,1vw,9px)!important;
 align-items:center!important;justify-items:center!important;
 margin:0!important;padding:0!important;
 max-width:none!important;
}
#app .memory218-select .memory218-choices .memory218-choice{
 all:unset!important;display:grid!important;place-items:center!important;
 position:relative!important;cursor:pointer!important;
 width:100%!important;height:100%!important;
 max-width:none!important;margin:0!important;padding:0!important;
 border-radius:28px!important;
 touch-action:manipulation!important;-webkit-tap-highlight-color:transparent!important;
}
#app .memory218-select .memory218-choice img{
 width:100%!important;height:100%!important;
 max-width:100%!important;max-height:100%!important;
 object-fit:contain!important;object-position:center center!important;
 display:block!important;
 filter:drop-shadow(0 3px 3px #60473270)!important;
 transition:transform .2s cubic-bezier(.19,.8,.3,1.25),filter .2s ease!important;
 transform-origin:50% 50%!important;
}
#app .memory218-select .memory218-choice:active img{
 transform:scale(.92) rotate(-3deg)!important;
 filter:drop-shadow(0 1px 1px #60473260) brightness(1.08)!important;
}
#app .memory218-select .memory218-choice:focus-visible{outline:4px solid #ffdd83!important;outline-offset:2px!important}
#app .memory218-select .memory218-hint{
 position:absolute!important;z-index:6!important;
 bottom:6.8%!important;left:50%!important;top:auto!important;
 transform:translateX(-50%)!important;
 margin:0!important;padding:9px 16px!important;
 width:max-content!important;max-width:94%!important;min-width:0!important;
 color:#6b3a21!important;text-align:center!important;
 background:#ffe6aeed!important;
 border:3px solid #ac7046!important;
 border-radius:24px 29px 23px 27px!important;
 box-shadow:0 3px 2px #6a513b70,inset 0 0 0 1px #fff1bd!important;
 font-family:'Segoe Print','Comic Neue',cursive!important;
 font-size:clamp(13px,3.45vw,20px)!important;
 font-weight:900!important;line-height:1.2!important;
 white-space:nowrap!important;
}
/* Landscape distributes controls without shrinking them into narrow columns. */
@media(orientation:landscape){
 #app .memory127-page.memory218-select{background-image:url('/home-v126/background-landscape.webp')!important;}
 #app .memory218-select .memory218-title{
  top:0.2%!important;left:39%!important;width:40%!important;height:18%!important;
  font-size:clamp(24px,5.2vh,40px)!important;
 }
 #app .memory218-select .memory218-heroes{
  left:1.5%!important;top:18%!important;width:38%!important;height:67%!important;
 }
 #app .memory218-select .memory218-hero:first-child img.memory218-character{animation-duration:3.1s!important}
 #app .memory218-select .memory218-choices{
  left:40%!important;top:21%!important;width:58%!important;height:62%!important;
  gap:3px!important;
 }
 #app .memory218-select .memory218-hint{
  left:69%!important;bottom:2.8%!important;
  font-size:clamp(12px,2.6vh,17px)!important;
  padding:5px 12px!important;
 }
}
@media(orientation:portrait) and (max-height:650px){
 #app .memory218-select .memory218-title{top:2%!important;height:10%!important;font-size:clamp(25px,7.2vw,35px)!important}
 #app .memory218-select .memory218-heroes{top:15%!important;height:31%!important}
 #app .memory218-select .memory218-choices{top:53%!important;height:28.5%!important}
 #app .memory218-select .memory218-hint{bottom:4.5%!important;padding:5px 9px!important}
}
@media(prefers-reduced-motion:reduce){
 #app .memory218-select .memory218-hero img.memory218-character{animation:none!important;}
 #app .memory218-select .memory218-hero-effects img{animation-duration:.25s!important;}
}
/* Game: more obvious soft nuzzle with real expression-frame drawings. */
#app .memory127-page .zw212-cuddle.zw215-hug .zw195-cuddle-left{
 animation:zw218-hug-left 2.6s cubic-bezier(.37,.05,.24,1) both!important;
}
#app .memory127-page .zw212-cuddle.zw215-hug .zw195-cuddle-right{
 animation:zw218-hug-right 2.6s cubic-bezier(.37,.05,.24,1) both!important;
}
@keyframes zw218-hug-left{
 0%{transform:translate3d(-43%,10px,0) rotate(-10deg) scale(.91)}
 24%{transform:translate3d(5%,0,0) rotate(-1deg) scale(1)}
 36%{transform:translate3d(32%,0,0) rotate(14deg) scale(1.06)}
 46%{transform:translate3d(27%,-11px,0) rotate(3deg) scale(1.04)}
 55%{transform:translate3d(35%,6px,0) rotate(17deg) scale(1.08)}
 65%{transform:translate3d(27%,-10px,0) rotate(4deg) scale(1.04)}
 74%{transform:translate3d(34%,5px,0) rotate(15deg) scale(1.07)}
 83%{transform:translate3d(28%,-7px,0) rotate(6deg) scale(1.05)}
 94%,100%{transform:translate3d(32%,0,0) rotate(11deg) scale(1.05)}
}
@keyframes zw218-hug-right{
 0%{transform:translate3d(43%,10px,0) scaleX(-1) rotate(-10deg) scale(.91)}
 24%{transform:translate3d(-5%,0,0) scaleX(-1) rotate(-1deg) scale(1)}
 36%{transform:translate3d(-32%,0,0) scaleX(-1) rotate(14deg) scale(1.06)}
 46%{transform:translate3d(-27%,11px,0) scaleX(-1) rotate(3deg) scale(1.04)}
 55%{transform:translate3d(-35%,-6px,0) scaleX(-1) rotate(17deg) scale(1.08)}
 65%{transform:translate3d(-27%,10px,0) scaleX(-1) rotate(4deg) scale(1.04)}
 74%{transform:translate3d(-34%,-5px,0) scaleX(-1) rotate(15deg) scale(1.07)}
 83%{transform:translate3d(-28%,7px,0) scaleX(-1) rotate(6deg) scale(1.05)}
 94%,100%{transform:translate3d(-32%,0,0) scaleX(-1) rotate(11deg) scale(1.05)}
}
@media(prefers-reduced-motion:reduce){
 #app .memory127-page .zw212-cuddle.zw215-hug .zw195-cuddle-left{
  animation:none!important;transform:translateX(31%) rotate(9deg)!important;
 }
 #app .memory127-page .zw212-cuddle.zw215-hug .zw195-cuddle-right{
  animation:none!important;transform:translateX(-31%) scaleX(-1) rotate(9deg)!important;
 }
}

/* ---- /memory-layout-v219/layout.css?v=219 ---- */
/* Memory 219 — responsive to the REAL narrow play surface, not the outer desktop window.
   No additional launch screen; these are actual painted and clickable game buttons. */
#app .memory127-page.memory218-select{
 background-repeat:no-repeat!important;
}
/* Refine three drawn mode buttons, retaining proper round proportions and labels. */
#app .memory218-select .memory218-choices{
 left:1.5%!important;width:97%!important;
 top:54.2%!important;height:28.5%!important;
 gap:clamp(1px,.6vw,8px)!important;
}
#app .memory218-select .memory218-choice{
 min-width:0!important;min-height:0!important;
 overflow:visible!important;border:0!important;
 outline-offset:1px!important;
}
#app .memory218-select .memory218-choice img{
 width:100%!important;height:100%!important;
 object-fit:contain!important;
 object-position:50% 50%!important;
 filter:drop-shadow(0 4px 2px #61442c70)!important;
 transform:translateZ(0) scale(1)!important;
 transition:transform .19s cubic-bezier(.2,.8,.3,1.25),filter .19s ease!important;
}
#app .memory218-select .memory218-choice:active img{
 transform:translateY(2px) scale(.92)!important;
 filter:drop-shadow(0 1px 1px #61442c65) brightness(1.06)!important;
}
#app .memory218-select .memory218-choice:focus-visible{
 outline:4px solid #fff1a3!important;outline-offset:2px!important;
 border-radius:28px!important;
}
@media(hover:hover) and (pointer:fine){
 #app .memory218-select .memory218-choice:hover img{
  transform:translateY(-5px) scale(1.045)!important;
  filter:drop-shadow(0 7px 4px #61442c70) brightness(1.035)!important;
 }
 #app .memory218-select .memory218-choice:active img{
  transform:translateY(1px) scale(.94)!important;
 }
}
/* A browser on desktop can be landscape outside while the actual game stays
   414px-wide portrait inside. Treat that narrow app as portrait. */
@media(orientation:landscape) and (min-height:540px){
 #app .memory127-page.memory218-select{
   background-image:url('/home-v126/background-portrait.webp')!important;
   background-size:100% 100%!important;
 }
 #app .memory218-select .memory218-title{
   left:17%!important;top:3%!important;width:65%!important;height:9.2%!important;
   font-size:clamp(28px,7vw,42px)!important;
 }
 #app .memory218-select .memory218-heroes{
   left:2%!important;top:17%!important;width:96%!important;height:31%!important;
   display:flex!important;justify-content:space-between!important;
 }
 #app .memory218-select .memory218-hero{
   width:50%!important;height:100%!important;flex:0 0 50%!important;
 }
 #app .memory218-select .memory218-choices{
   display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
   flex-direction:row!important;align-items:center!important;
   left:1.5%!important;top:54.2%!important;
   width:97%!important;height:28.5%!important;gap:2px!important;
 }
 #app .memory218-select .memory218-choice{
   display:grid!important;place-items:center!important;
   width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;
 }
 #app .memory218-select .memory218-hint{
   left:50%!important;bottom:6.8%!important;top:auto!important;
   font-size:clamp(13px,3.4vw,20px)!important;
   padding:9px 13px!important;
 }
}
/* True phone landscape: use the wider three-button row, not the desktop portrait override. */
@media(orientation:landscape) and (max-height:539px){
 #app .memory218-select .memory218-choices{
  left:40%!important;top:21%!important;width:58%!important;height:62%!important;
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:2px!important;
 }
}
@media(orientation:portrait) and (max-height:650px){
 #app .memory218-select .memory218-choices{
  top:52.5%!important;height:30%!important;
 }
}
@media(prefers-reduced-motion:reduce){
 #app .memory218-select .memory218-choice img{transition:none!important}
}

/* Home button belongs to the centered app, never the outer desktop viewport. */
#app:has(.memory218-select) #homeBtn{
 position:absolute!important;top:6px!important;right:8px!important;left:auto!important;
 z-index:60!important;
}

/* Do not stretch the tall phone illustration across a wide phone in landscape. */
@media (min-width:650px) and (max-height:539px){
 #app .memory127-page.memory218-select.memory127-select{
  background-image:url('/home-v126/background-landscape.webp')!important;
  background-size:cover!important;background-position:center center!important;
 }
}

/* ---- /memory-finish-v221/memory.css?v=221 ---- */
/* Zählwiese Memory V221 – hand-drawn art, responsive play-surface proportions, touch polish. */
#app .memory218-select .memory218-choice img{
 filter:drop-shadow(0 3px 3px #6a482c61)!important;
 transform:translateZ(0)!important;
 transition:transform .18s cubic-bezier(.19,.8,.25,1.14),filter .18s ease!important;
}
#app .memory218-select .memory218-choice:active img{
 transform:translateY(2px) scale(.93)!important;
 filter:drop-shadow(0 1px 2px #6a482c50) brightness(1.04)!important;
}
@media(hover:hover) and (pointer:fine){
 #app .memory218-select .memory218-choice:hover img{
   transform:translateY(-3px) scale(1.025)!important;
   filter:drop-shadow(0 5px 3px #6a482c65)!important;
 }
}
#app .memory127-page.memory127-game .memory127-card.is-matched .memory127-front{
 filter:saturate(1.04)!important;
}
#app .memory127-page.memory127-game .memory127-card:focus-visible{
 outline:3px solid #ffda79!important;outline-offset:2px!important;
}
/* Desktop has a portrait-width 430px game surface inside a wide browser.
   Match the CSS layout to that surface, not window orientation. */
@media(orientation:landscape) and (min-height:540px){
 #app .memory127-page.memory127-game.main-content{
  display:flex!important;flex-direction:column!important;
  grid-template-columns:none!important;grid-template-rows:none!important;
  align-items:center!important;justify-content:flex-start!important;
  gap:6px!important;
  padding:8px 10px 14px!important;
  background:#9bd2b5 url('/home-v126/background-portrait.webp') center/100% 100% no-repeat!important;
 }
 #app .memory127-page.memory127-game .memory127-header{
  grid-area:auto!important;flex-direction:row!important;
  width:100%!important;height:64px!important;
  max-width:none!important;min-height:54px!important;
  justify-content:space-between!important;gap:8px!important;
 }
 #app .memory127-page.memory127-game .memory127-header .memory127-title{
  min-width:0!important;max-width:62%!important;
  font-size:clamp(19px,4.6vw,25px)!important;
  min-height:44px!important;
 }
 #app .memory127-page.memory127-game .memory214-progress{
  position:relative!important;left:auto!important;bottom:auto!important;
  top:auto!important;right:auto!important;transform:none!important;
  width:130px!important;height:50px!important;
  grid-area:auto!important;flex:0 0 auto!important;
 }
 #app .memory127-page.memory127-game .memory127-grid{
  grid-area:auto!important;align-self:center!important;
  margin:0 auto!important;display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  grid-template-rows:repeat(5,minmax(0,1fr))!important;
  width:min(94%,390px)!important;
  height:min(75%,580px)!important;
  max-height:calc(100% - 140px)!important;
  padding:4px!important;gap:7px!important;
  min-height:0!important;flex:0 1 auto!important;
  justify-content:stretch!important;align-content:center!important;
 }
 #app .memory127-page.memory127-game .memory127-grid:has(>.memory127-card:nth-child(18):last-child),
 #app .memory127-page.memory127-game .memory127-grid:has(>.memory127-card:nth-child(20):last-child){
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  grid-template-rows:repeat(5,minmax(0,1fr))!important;
  width:min(94%,390px)!important;height:min(75%,580px)!important;
 }
 #app .memory127-page.memory127-game .memory127-grid:has(>.memory127-card:nth-child(14):last-child),
 #app .memory127-page.memory127-game .memory127-grid:has(>.memory127-card:nth-child(16):last-child){
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  grid-template-rows:repeat(4,minmax(0,1fr))!important;
  width:min(94%,390px)!important;height:min(69%,540px)!important;
 }
 #app .memory127-page.memory127-game .memory127-grid:has(>.memory127-card:nth-child(10):last-child),
 #app .memory127-page.memory127-game .memory127-grid:has(>.memory127-card:nth-child(12):last-child){
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  grid-template-rows:repeat(3,minmax(0,1fr))!important;
  width:min(90%,380px)!important;height:min(60%,410px)!important;
 }
 #app .memory127-page.memory127-game .memory127-grid:has(>.memory127-card:nth-child(8):last-child){
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,minmax(0,1fr))!important;
  width:min(90%,370px)!important;height:min(49%,312px)!important;
 }
 #app .memory127-page.memory127-game .memory127-grid:has(>.memory127-card:nth-child(6):last-child){
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,minmax(0,1fr))!important;
  width:min(82%,336px)!important;height:min(49%,310px)!important;
 }
 #app .memory127-page.memory127-game .memory127-grid:has(>.memory127-card:nth-child(4):last-child){
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,minmax(0,1fr))!important;
  width:min(70%,284px)!important;height:min(49%,330px)!important;
 }
 #app .memory127-page.memory127-game .memory127-grid:has(>.memory127-card:nth-child(2):last-child){
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  grid-template-rows:1fr!important;
  width:min(77%,286px)!important;height:min(33%,215px)!important;
  max-height:33%!important;flex:0 0 auto!important;
 }
 #app .memory127-page.memory127-game .memory127-controls{
  grid-area:auto!important;flex:0 0 auto!important;
  align-self:center!important;justify-content:center!important;
  margin:0!important;padding:0!important;
 }
 #app:has(.memory127-game) #homeBtn{
  position:absolute!important;top:6px!important;right:8px!important;
  left:auto!important;z-index:60!important;
 }
}
/* Lightweight animations still honor accessibility preferences. */
@media(prefers-reduced-motion:reduce){
 #app .memory218-select .memory218-choice img{transition:none!important}
}

/* ---- /memory-celebration-v222/celebration.css?v=222 ---- */
/* Zählwiese Memory v222: abundant illustrated rewards with bounded, low-overdraw animations. */
body .zw213-pair-fx.zw222-celebration{
  position:fixed!important;
  inset:auto!important;
  left:var(--scene-left)!important;
  top:var(--scene-top)!important;
  width:var(--scene-width)!important;
  height:var(--scene-height)!important;
  max-width:var(--scene-width)!important;
  max-height:var(--scene-height)!important;
  overflow:hidden!important;
  z-index:999997!important;
  pointer-events:none!important;
  contain:layout style paint!important;
}
body .zw222-celebration .zw213-confetti{
  width:clamp(9px,2.5vw,14px)!important;
  height:clamp(12px,3.2vw,19px)!important;
  filter:drop-shadow(0 1px 1px #66533d27)!important;
}
body .zw222-celebration .zw213-balloon{
  width:clamp(27px,8vw,48px)!important;
  height:clamp(48px,15vw,82px)!important;
  filter:drop-shadow(0 2px 1px #7c513835)!important;
}
body .zw222-celebration .zw215-reward{
  width:clamp(18px,5vw,29px)!important;
  height:clamp(18px,5vw,29px)!important;
}
body .zw222-celebration.zw222-finale .zw213-balloon{
  animation-duration:3.1s!important;
}
#app .memory127-page .zw222-clap{
  position:absolute!important;
  z-index:30!important;
  width:min(78%,340px)!important;
  height:clamp(148px,24vh,230px)!important;
  left:50%!important;top:49%!important;
  transform:translate(-50%,-50%)!important;
  overflow:visible!important;
  isolation:isolate!important;
  pointer-events:none!important;
  animation:zw222-clap-stage 1.9s ease both!important;
}
#app .memory127-page .zw222-clap::before{
  content:''!important;
  position:absolute!important;inset:0!important;
  background:radial-gradient(ellipse at 50% 59%,#fff6c2d4 0%,#fff2c88c 42%,transparent 73%)!important;
  border-radius:50%!important;filter:blur(2px)!important;
  z-index:-1!important;
}
#app .memory127-page .zw222-clap img.zw222-clap-hand{
  position:absolute!important;
  width:48%!important;height:97%!important;
  top:0!important;object-fit:contain!important;
  object-position:center bottom!important;
  filter:drop-shadow(0 3px 2px #74503952)!important;
  transform-origin:50% 90%!important;
  will-change:transform!important;
}
#app .memory127-page .zw222-clap-left{
  left:0!important;
  animation:zw222-hand-left 1.9s cubic-bezier(.22,.73,.3,1) both!important;
}
#app .memory127-page .zw222-clap-right{
  right:0!important;
  animation:zw222-hand-right 1.9s cubic-bezier(.22,.73,.3,1) both!important;
}
#app .memory127-page .zw222-clap-spark{
  position:absolute!important;
  left:50%!important;top:22%!important;
  width:clamp(23px,6vw,34px)!important;
  height:clamp(23px,6vw,34px)!important;
  object-fit:contain!important;pointer-events:none!important;
  filter:drop-shadow(0 2px 2px #85523348)!important;
  animation:zw222-clap-spark 1.9s ease both!important;
  animation-delay:calc(var(--spark-index)*110ms)!important;
}
@keyframes zw222-clap-stage{
  0%{opacity:0}9%{opacity:1}87%{opacity:1}100%{opacity:0}
}
@keyframes zw222-hand-left{
  0%{transform:translate3d(-39%,12px,0) rotate(-14deg) scale(.89)}
  20%{transform:translate3d(-20%,2px,0) rotate(-7deg) scale(.97)}
  30%{transform:translate3d(19%,0,0) rotate(12deg) scale(1.06)}
  37%{transform:translate3d(-18%,7px,0) rotate(-9deg) scale(.98)}
  49%{transform:translate3d(22%,0,0) rotate(13deg) scale(1.07)}
  57%{transform:translate3d(-14%,6px,0) rotate(-6deg) scale(.99)}
  68%{transform:translate3d(23%,0,0) rotate(12deg) scale(1.07)}
  77%{transform:translate3d(-10%,5px,0) rotate(-5deg) scale(1)}
  88%,100%{transform:translate3d(10%,0,0) rotate(5deg) scale(1.03)}
}
@keyframes zw222-hand-right{
  0%{transform:translate3d(39%,12px,0) rotate(14deg) scale(.89)}
  20%{transform:translate3d(20%,2px,0) rotate(7deg) scale(.97)}
  30%{transform:translate3d(-19%,0,0) rotate(-12deg) scale(1.06)}
  37%{transform:translate3d(18%,7px,0) rotate(9deg) scale(.98)}
  49%{transform:translate3d(-22%,0,0) rotate(-13deg) scale(1.07)}
  57%{transform:translate3d(14%,6px,0) rotate(6deg) scale(.99)}
  68%{transform:translate3d(-23%,0,0) rotate(-12deg) scale(1.07)}
  77%{transform:translate3d(10%,5px,0) rotate(5deg) scale(1)}
  88%,100%{transform:translate3d(-10%,0,0) rotate(-5deg) scale(1.03)}
}
@keyframes zw222-clap-spark{
  0%,22%{opacity:0;transform:translate3d(0,15px,0) scale(.15) rotate(-20deg)}
  32%{opacity:1;transform:translate3d(var(--dx),var(--dy),0) scale(1.08) rotate(5deg)}
  50%{opacity:.85;transform:translate3d(var(--dx),calc(var(--dy) - 22px),0) scale(.95) rotate(-12deg)}
  83%{opacity:.8;transform:translate3d(var(--dx),calc(var(--dy) - 34px),0) scale(.8) rotate(14deg)}
  100%{opacity:0;transform:translate3d(var(--dx),-96px,0) scale(.4) rotate(-10deg)}
}
@media(orientation:landscape) and (max-height:539px){
  #app .memory127-page .zw222-clap{
    left:67%!important;top:48%!important;
    width:min(50%,300px)!important;height:clamp(126px,49vh,187px)!important;
  }
}
@media(prefers-reduced-motion:reduce){
  #app .memory127-page .zw222-clap{animation:none!important;opacity:1!important}
  #app .memory127-page .zw222-clap-left{animation:none!important;transform:translateX(12%) rotate(5deg)!important}
  #app .memory127-page .zw222-clap-right{animation:none!important;transform:translateX(-12%) rotate(-5deg)!important}
  #app .memory127-page .zw222-clap-spark{animation:none!important;opacity:.9!important}
  body .zw222-celebration .zw213-balloon{animation-duration:.9s!important}
  body .zw222-celebration .zw213-confetti{animation-duration:.7s!important}
}

/* ---- /memory-performance-v223/performance.css?v=223 ---- */
/* Zählwiese Memory v223 — faster illustrated confetti, fuller balloons, consistent cards. */
body .zw222-celebration .zw223-sprinkle {
  position:absolute!important;
  display:block!important;
  width:clamp(86px,25vw,134px)!important;
  height:clamp(86px,25vw,134px)!important;
  pointer-events:none!important;
  object-fit:contain!important;
  opacity:0;
  will-change:transform,opacity!important;
  filter:drop-shadow(0 1px 1px #6d4b2a24)!important;
  animation:zw223-sprinkle var(--duration,2400ms) cubic-bezier(.17,.56,.3,1) var(--delay,0ms) both!important;
}
@keyframes zw223-sprinkle {
  0% {opacity:0;transform:translate3d(-9px,13px,0) scale(.66) rotate(-20deg)}
  10% {opacity:1}
  34% {opacity:1;transform:translate3d(var(--half-x),var(--half-y),0) scale(1.07) rotate(28deg)}
  74% {opacity:1}
  100% {opacity:0;transform:translate3d(var(--end-x),var(--end-y),0) scale(.83) rotate(var(--end-rot))}
}
body .zw222-celebration .zw213-balloon {
  filter:drop-shadow(0 2px 1px #66472c36)!important;
}
/* Subtle single-time celebration on the matched cards, not continuous expensive glows. */
#app .memory127-page.memory127-game .memory127-card.is-matched .memory127-front {
  animation:zw223-card-warmth .6s ease-out 1 both!important;
}
@keyframes zw223-card-warmth {
  0% {filter:brightness(1) saturate(1)}
  40% {filter:brightness(1.12) saturate(1.1)}
  100% {filter:brightness(1.025) saturate(1.04)}
}
/* The twenty equal back illustrations use a single CSS image, avoiding twenty img elements. */
#app .memory127-page.memory127-game .memory127-back{
  background-size:100% 100%!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
}
#app .memory127-page.memory127-numbers .memory127-back {
  background-image:url('/memory-painted-v220/back-numbers.webp')!important;
}
#app .memory127-page.memory127-animals .memory127-back {
  background-image:url('/memory-painted-v220/back-animals.webp')!important;
}
#app .memory127-page.memory127-fingers .memory127-back {
  background-image:url('/memory-painted-v220/back-fingers.webp')!important;
}
/* Keep labels and buttons crisp in the narrow desktop game canvas. */
#app .memory127-page.memory127-game .memory127-card {
  -webkit-tap-highlight-color:transparent!important;
  touch-action:manipulation!important;
}
@media (prefers-reduced-motion:reduce) {
  body .zw222-celebration .zw223-sprinkle {
    animation-duration:480ms!important;will-change:auto!important;
  }
  #app .memory127-page.memory127-game .memory127-card.is-matched .memory127-front {
    animation:none!important;
  }
}

/* ---- /memory-clap-v224/clap.css?v=224 ---- */
/* Zählwiese Memory v224: visible THREE CONTACT claps, not two hands waving side by side. */
#app .memory127-page .zw222-clap.zw224-real-clap{
  animation:zw224-clap-stage 1.95s ease-in-out both!important;
  isolation:isolate!important;
}
#app .memory127-page .zw222-clap.zw224-real-clap img.zw222-clap-hand{
  width:48%!important;
  height:97%!important;
  backface-visibility:visible!important;
  -webkit-backface-visibility:visible!important;
  transform-style:preserve-3d!important;
  transform-origin:50% 86%!important;
  will-change:transform!important;
}
#app .memory127-page .zw222-clap.zw224-real-clap img.zw222-clap-left{
  left:0!important;
  right:auto!important;
  z-index:3!important;
  animation:zw224-three-claps-left 1.95s cubic-bezier(.27,.73,.3,1) both!important;
}
#app .memory127-page .zw222-clap.zw224-real-clap img.zw222-clap-right{
  right:0!important;
  left:auto!important;
  z-index:2!important;
  animation:zw224-three-claps-right 1.95s cubic-bezier(.27,.73,.3,1) both!important;
}
/* Three clearly separated cycles:
  contact at 28%, 48%, 67% (0.55s, 0.94s, 1.31s);
  palms meet and turn inward, then open visibly before next clap. */
@keyframes zw224-three-claps-left{
  0%{transform:perspective(660px) translate3d(-42%,12px,0) rotate(-17deg) rotateY(-8deg) scale(.92)}
  17%{transform:perspective(660px) translate3d(4%,2px,0) rotate(-6deg) rotateY(-20deg) scale(.98)}
  28%{transform:perspective(660px) translate3d(51%,0,0) rotate(4deg) rotateY(-66deg) scale(1.1)}
  37%{transform:perspective(660px) translate3d(-3%,7px,0) rotate(-10deg) rotateY(-12deg) scale(.97)}
  48%{transform:perspective(660px) translate3d(53%,0,0) rotate(4deg) rotateY(-68deg) scale(1.11)}
  57%{transform:perspective(660px) translate3d(-3%,7px,0) rotate(-9deg) rotateY(-13deg) scale(.98)}
  67%{transform:perspective(660px) translate3d(52%,0,0) rotate(5deg) rotateY(-68deg) scale(1.12)}
  77%{transform:perspective(660px) translate3d(-3%,3px,0) rotate(-7deg) rotateY(-16deg) scale(1.01)}
  89%,100%{transform:perspective(660px) translate3d(25%,0,0) rotate(-2deg) rotateY(-22deg) scale(1.02)}
}
@keyframes zw224-three-claps-right{
  0%{transform:perspective(660px) translate3d(42%,12px,0) rotate(17deg) rotateY(8deg) scale(.92)}
  17%{transform:perspective(660px) translate3d(-4%,2px,0) rotate(6deg) rotateY(20deg) scale(.98)}
  28%{transform:perspective(660px) translate3d(-51%,0,0) rotate(-4deg) rotateY(66deg) scale(1.1)}
  37%{transform:perspective(660px) translate3d(3%,7px,0) rotate(10deg) rotateY(12deg) scale(.97)}
  48%{transform:perspective(660px) translate3d(-53%,0,0) rotate(-4deg) rotateY(68deg) scale(1.11)}
  57%{transform:perspective(660px) translate3d(3%,7px,0) rotate(9deg) rotateY(13deg) scale(.98)}
  67%{transform:perspective(660px) translate3d(-52%,0,0) rotate(-5deg) rotateY(68deg) scale(1.12)}
  77%{transform:perspective(660px) translate3d(3%,3px,0) rotate(7deg) rotateY(16deg) scale(1.01)}
  89%,100%{transform:perspective(660px) translate3d(-25%,0,0) rotate(2deg) rotateY(22deg) scale(1.02)}
}
@keyframes zw224-clap-stage{
  0%{opacity:0}9%{opacity:1}89%{opacity:1}100%{opacity:0}
}
/* Actual hand-to-hand contact has three distinct hand-painted impact glints. */
#app .memory127-page .zw222-clap.zw224-real-clap .zw224-impact{
  position:absolute!important;
  z-index:6!important;
  width:clamp(32px,8vw,48px)!important;
  height:clamp(32px,8vw,48px)!important;
  left:50%!important;top:37%!important;
  margin-left:-20px!important;margin-top:-20px!important;
  object-fit:contain!important;
  filter:drop-shadow(0 1px 2px #81501d60)!important;
  pointer-events:none!important;
  opacity:0;
  animation:zw224-impact-flash .3s ease-out var(--clap-delay,0ms) both!important;
}
@keyframes zw224-impact-flash{
  0%{opacity:0;transform:scale(.15) rotate(-18deg)}
  23%{opacity:1;transform:scale(1.18) rotate(8deg)}
  60%{opacity:.95;transform:scale(1) rotate(-4deg)}
  100%{opacity:0;transform:scale(.55) rotate(22deg)}
}
@media(prefers-reduced-motion:reduce){
  #app .memory127-page .zw222-clap.zw224-real-clap img.zw222-clap-left{
    animation:none!important;transform:translateX(49%) rotate(-5deg)!important;
  }
  #app .memory127-page .zw222-clap.zw224-real-clap img.zw222-clap-right{
    animation:none!important;transform:translateX(-49%) rotate(5deg)!important;
  }
  #app .memory127-page .zw222-clap.zw224-real-clap .zw224-impact{
    animation:none!important;opacity:.7!important;
  }
}
/* Finger reward foreground: keep illustrated hand contact above the celebration particles. */
body .zw222-celebration .zw222-clap.zw224-real-clap{
  position:absolute!important;
  z-index:100!important;
  width:min(78%,340px)!important;
  height:clamp(148px,24vh,230px)!important;
  left:50%!important;top:49%!important;
  transform:translate(-50%,-50%)!important;
  overflow:visible!important;
  pointer-events:none!important;
  isolation:isolate!important;
  animation:zw224-clap-stage 1.95s ease both!important;
}
body .zw222-celebration .zw224-real-clap::before{
  content:''!important;
  position:absolute!important;
  z-index:-1!important;inset:0!important;border-radius:50%!important;
  background:radial-gradient(ellipse at 50% 60%,#fff5c1ca 0%,#ffefc26b 42%,transparent 73%)!important;
}
body .zw222-celebration .zw224-real-clap img.zw222-clap-hand{
  position:absolute!important;
  width:48%!important;height:97%!important;
  top:0!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  transform-origin:50% 86%!important;
  will-change:transform!important;
  filter:drop-shadow(0 3px 2px #74503952)!important;
  backface-visibility:visible!important;
  -webkit-backface-visibility:visible!important;
}
body .zw222-celebration .zw224-real-clap img.zw222-clap-left{
  left:0!important;right:auto!important;z-index:3!important;
  animation:zw224-three-claps-left 1.95s cubic-bezier(.27,.73,.3,1) both!important;
}
body .zw222-celebration .zw224-real-clap img.zw222-clap-right{
  right:0!important;left:auto!important;z-index:2!important;
  animation:zw224-three-claps-right 1.95s cubic-bezier(.27,.73,.3,1) both!important;
}
body .zw222-celebration .zw224-real-clap .zw224-impact{
  position:absolute!important;z-index:6!important;
  width:clamp(32px,8vw,48px)!important;
  height:clamp(32px,8vw,48px)!important;
  left:50%!important;top:37%!important;
  margin-left:-20px!important;margin-top:-20px!important;
  object-fit:contain!important;pointer-events:none!important;
  filter:drop-shadow(0 1px 2px #81501d60)!important;
  opacity:0;
  animation:zw224-impact-flash .3s ease-out var(--clap-delay,0ms) both!important;
}
@media (orientation:landscape) and (max-height:539px){
 body .zw222-celebration .zw224-real-clap{
  left:67%!important;top:48%!important;
  width:min(50%,300px)!important;height:clamp(126px,49vh,187px)!important;
 }
}
@media(prefers-reduced-motion:reduce){
 body .zw222-celebration .zw224-real-clap img.zw222-clap-left{
  animation:none!important;transform:translateX(49%) rotate(-5deg)!important;
 }
 body .zw222-celebration .zw224-real-clap img.zw222-clap-right{
  animation:none!important;transform:translateX(-49%) rotate(5deg)!important;
 }
 body .zw222-celebration .zw224-real-clap .zw224-impact{
  animation:none!important;opacity:.75!important;
 }
}

/* Keep inherited pencil-drawn heart/flower particles correctly sized in the top layer. */
body .zw222-celebration .zw224-real-clap .zw222-clap-spark{
 position:absolute!important;
 z-index:5!important;
 left:50%!important;top:22%!important;
 width:clamp(21px,5.5vw,33px)!important;
 height:clamp(21px,5.5vw,33px)!important;
 object-fit:contain!important;
 pointer-events:none!important;
 filter:drop-shadow(0 1px 1px #85523342)!important;
 opacity:0;
 animation:zw222-clap-spark 1.95s ease both!important;
 animation-delay:calc(var(--spark-index)*90ms)!important;
}
@media(prefers-reduced-motion:reduce){
 body .zw222-celebration .zw224-real-clap .zw222-clap-spark{
  animation:none!important;opacity:.75!important;
 }
}

/* ---- /memory-iphone-clap-v225/iphone-clap.css?v=225 ---- */
/* Memory v225: 2D clapping that remains visible on iPhone Safari.
   Motion starts only after both real illustrated WebP hands have decoded. */
body .zw222-celebration .zw225-clap {
  position:absolute!important;
  left:50%!important;top:49%!important;
  width:min(86%,360px)!important;
  height:clamp(150px,25vh,225px)!important;
  transform:translate(-50%,-50%)!important;
  z-index:150!important;
  overflow:visible!important;
  pointer-events:none!important;
  isolation:isolate!important;
  animation:none!important;
  opacity:1!important;
}
body .zw222-celebration .zw225-clap.zw225-running {
  animation:zw225-stage 1.95s linear both!important;
}
body .zw222-celebration .zw225-clap img.zw222-clap-hand {
  position:absolute!important;
  top:0!important;width:46%!important;height:98%!important;
  object-fit:contain!important;object-position:center bottom!important;
  backface-visibility:visible!important;
  -webkit-backface-visibility:visible!important;
  transform-origin:50% 88%!important;
  animation:none!important;
  filter:drop-shadow(1px 2px 2px #74503956)!important;
  will-change:auto!important;
}
body .zw222-celebration .zw225-clap.zw225-running img.zw222-clap-left {
  left:0!important;right:auto!important;z-index:3!important;
  animation:zw225-clap-left 1.95s linear both!important;
  will-change:transform!important;
}
body .zw222-celebration .zw225-clap.zw225-running img.zw222-clap-right {
  right:0!important;left:auto!important;z-index:2!important;
  animation:zw225-clap-right 1.95s linear both!important;
  will-change:transform!important;
}
/* Moving fully apart between 3 palm contacts. Pure 2D: stable in Safari and low-power mode. */
@keyframes zw225-clap-left {
  0% {transform:translateX(-46%) rotate(-17deg) scale(.92)}
  16%{transform:translateX(-19%) rotate(-11deg) scale(.98)}
  28%{transform:translateX(41%) rotate(15deg) scale(1.075)}
  37%{transform:translateX(-28%) rotate(-17deg) scale(.97)}
  48%{transform:translateX(43%) rotate(16deg) scale(1.085)}
  57%{transform:translateX(-28%) rotate(-16deg) scale(.97)}
  67%{transform:translateX(43%) rotate(16deg) scale(1.085)}
  77%{transform:translateX(-25%) rotate(-15deg) scale(.98)}
  88%,100%{transform:translateX(24%) rotate(7deg) scale(1.01)}
}
@keyframes zw225-clap-right {
  0% {transform:translateX(46%) rotate(17deg) scale(.92)}
  16%{transform:translateX(19%) rotate(11deg) scale(.98)}
  28%{transform:translateX(-41%) rotate(-15deg) scale(1.075)}
  37%{transform:translateX(28%) rotate(17deg) scale(.97)}
  48%{transform:translateX(-43%) rotate(-16deg) scale(1.085)}
  57%{transform:translateX(28%) rotate(16deg) scale(.97)}
  67%{transform:translateX(-43%) rotate(-16deg) scale(1.085)}
  77%{transform:translateX(25%) rotate(15deg) scale(.98)}
  88%,100%{transform:translateX(-24%) rotate(-7deg) scale(1.01)}
}
@keyframes zw225-stage{
  0%{opacity:0}
  8%,88%{opacity:1}
  100%{opacity:0}
}
/* Confetti cannot cover the palms: the hands have a dedicated foreground stacking context. */
body .zw222-celebration .zw225-clap .zw222-clap-spark {
  z-index:5!important;
  width:clamp(18px,5.6vw,29px)!important;
  height:clamp(18px,5.6vw,29px)!important;
}
body .zw222-celebration .zw225-clap .zw224-impact {
  z-index:6!important;
  width:clamp(23px,6vw,37px)!important;
  height:clamp(23px,6vw,37px)!important;
}
/* Reduced-motion iPhones still show 3 small, local claps instead of completely frozen hands.
   No scene translation or spinning; smaller amplitude and no drifting backdrop. */
@keyframes zw225-soft-left {
  0%,17%,37%,57%,77%,100%{transform:translateX(-10%) rotate(-5deg)}
  28%,48%,67%{transform:translateX(34%) rotate(5deg)}
}
@keyframes zw225-soft-right {
  0%,17%,37%,57%,77%,100%{transform:translateX(10%) rotate(5deg)}
  28%,48%,67%{transform:translateX(-34%) rotate(-5deg)}
}
@media (prefers-reduced-motion:reduce) {
  body .zw222-celebration .zw225-clap.zw225-running img.zw222-clap-left{
    animation:zw225-soft-left 1.95s linear both!important;
  }
  body .zw222-celebration .zw225-clap.zw225-running img.zw222-clap-right{
    animation:zw225-soft-right 1.95s linear both!important;
  }
  body .zw222-celebration .zw225-clap .zw222-clap-spark,
  body .zw222-celebration .zw225-clap .zw224-impact {
    animation:none!important;
    opacity:.55!important;
  }
}
@media(orientation:landscape) and (max-height:539px){
  body .zw222-celebration .zw225-clap {
    left:64%!important;top:50%!important;
    width:min(60%,315px)!important;
    height:clamp(120px,46vh,190px)!important;
  }
}
body .zw222-celebration .zw225-clap::before{
 content:''!important;
 position:absolute!important;inset:9% 5%!important;
 z-index:-1!important;
 border-radius:48%!important;
 background:radial-gradient(ellipse at 50% 60%,#fff6cebf 0%,#fff8df59 53%,transparent 78%)!important;
}
body .zw222-celebration .zw225-clap .zw222-clap-spark{
 position:absolute!important;z-index:5!important;
 left:50%!important;top:22%!important;
 width:clamp(18px,5.6vw,29px)!important;
 height:clamp(18px,5.6vw,29px)!important;
 object-fit:contain!important;
 opacity:0;
 pointer-events:none!important;
 animation:zw222-clap-spark 1.95s ease both!important;
 animation-delay:calc(var(--spark-index)*90ms)!important;
}
body .zw222-celebration .zw225-clap .zw224-impact{
 position:absolute!important;z-index:6!important;
 left:50%!important;top:36%!important;
 width:clamp(23px,6vw,37px)!important;
 height:clamp(23px,6vw,37px)!important;
 margin-left:-17px!important;margin-top:-14px!important;
 object-fit:contain!important;pointer-events:none!important;
 opacity:0;
 animation:zw224-impact-flash .29s ease-out var(--clap-delay,0ms) both!important;
}

/* ---- /connect-v196/polish.css?v=196 ---- */
/* Zählwiese v196 — genuine wax-crayon paint splashes in BOTH connect games. */
#app .zw94-connect .zw94-pot,
#app .zw192-shapes .zw192-pot{
 display:flex!important;align-items:center!important;justify-content:center!important;
 position:relative!important;
 width:clamp(52px,15.7vw,78px)!important;
 height:clamp(52px,15.7vw,78px)!important;
 min-width:48px!important;min-height:48px!important;
 border:0!important;border-radius:50%!important;
 background:transparent!important;
 touch-action:manipulation!important;
 -webkit-tap-highlight-color:transparent!important;
 filter:drop-shadow(0 3px 2px #6450394c)!important;
 transition:transform .18s cubic-bezier(.2,.68,.22,1),filter .18s ease!important;
}
#app .zw94-connect .zw94-pot img,
#app .zw192-shapes .zw192-pot img{
 display:block!important;width:100%!important;height:100%!important;
 object-fit:contain!important;
 transform:scale(1.16)!important;
 filter:drop-shadow(0 1px 1px #fff3d8b8) drop-shadow(0 2px 1px #533f3470)!important;
 border:0!important;border-radius:0!important;
 pointer-events:none!important;user-select:none!important;
}
#app .zw94-connect .zw94-pot.active,
#app .zw192-shapes .zw192-pot.active{
 transform:translateY(-5px) scale(1.13)!important;
 filter:drop-shadow(0 0 7px #fff5b8) drop-shadow(0 3px 3px #56402d84)!important;
 z-index:3!important;
}
#app .zw94-connect .zw94-pot.active::after,
#app .zw192-shapes .zw192-pot.active::after{
 content:"";position:absolute!important;inset:6%!important;
 border:3px dashed #fff2bd!important;border-radius:46% 53% 47% 52%!important;
 box-shadow:0 0 0 2px #8b582b66,0 0 7px #fff3c0af!important;
 transform:rotate(-13deg)!important;
 pointer-events:none!important;
 animation:zw196-paint-glow 2s ease-in-out infinite!important;
}
@keyframes zw196-paint-glow{
 0%,100%{opacity:.75;scale:1}
 50%{opacity:1;scale:1.04}
}
#app .zw94-connect .zw94-pot:active,
#app .zw192-shapes .zw192-pot:active{
 transform:translateY(-2px) scale(.94)!important;
}
#app .zw94-connect .zw94-pot:focus-visible,
#app .zw192-shapes .zw192-pot:focus-visible{
 outline:4px solid #ffe9a0!important;outline-offset:2px!important;
}
#app .zw192-shapes .zw192-palette,
#app .zw94-connect .zw94-palette{
 gap:0!important;overflow:visible!important;
}
/* Small iPhones: keep real 48px+ finger targets, not cramped 36px thumbnails. */
@media(max-width:355px) and (orientation:portrait){
 #app .zw192-shapes .zw192-pot,
 #app .zw94-connect .zw94-pot{
  width:51px!important;height:51px!important;min-width:48px!important;min-height:48px!important;
 }
}
/* Landscape keeps a 4x2 grid with tap-safe spacing beside the painting board. */
@media(orientation:landscape) and (max-height:650px){
 #app .zw192-shapes .zw192-pot,
 #app .zw94-connect .zw94-pot{
  width:clamp(45px,13.2vh,69px)!important;
  height:clamp(45px,13.2vh,69px)!important;
  min-width:44px!important;min-height:44px!important;
 }
}
/* Illustrated completed figures replace the former plain fills. The drawn outline
   remains visible above the watercolor/crayon artwork until next is pressed. */
#app .zw192-shapes .zw195-painted-motif{
 animation:zw196-paint-reveal 1.15s cubic-bezier(.17,.77,.28,1) both!important;
 filter:saturate(1.16) contrast(1.05)!important;
}
@keyframes zw196-paint-reveal{
 0%{opacity:0;transform:scale(.90);filter:saturate(.42)}
 40%{opacity:.9;transform:scale(1.012);filter:saturate(1.19)}
 100%{opacity:1;transform:scale(1);filter:saturate(1.16) contrast(1.05)}
}
@media(prefers-reduced-motion:reduce){
 #app .zw94-connect .zw94-pot.active::after,
 #app .zw192-shapes .zw192-pot.active::after{
 animation:none!important;
 }
 #app .zw192-shapes .zw195-painted-motif{animation-duration:.25s!important}
}

/* ---- /connect-v197/polish.css?v=197 ---- */
/* Zählwiese v197 — polish of both hand-drawn number games. */

/* After winning, reveal the COMPLETE finished illustration.
   Markers and drawing practice lines fade away, so eyes, windows and small
   picture details are no longer hidden behind giant numbered circles. */
#app .zw192-shapes .zw192-board.is-finished .zw192-dot{
 opacity:0!important;
 pointer-events:none!important;
 transition:opacity .72s ease .42s!important;
 animation:none!important;
}
#app .zw192-shapes .zw192-board.is-finished #zw192Canvas{
 opacity:.09!important;
 transition:opacity .72s ease .42s!important;
}
#app .zw192-shapes .zw192-board.is-finished .zw195-painted-motif{
 filter:saturate(1.13) contrast(1.04)!important;
}
#app .zw192-shapes .zw197-dot-spark{
 position:absolute!important;z-index:18!important;
 pointer-events:none!important;
 display:block!important;
 width:clamp(13px,4vw,21px)!important;height:clamp(13px,4vw,21px)!important;
 object-fit:contain!important;
 transform:translate(-50%,-50%) scale(.25);
 animation:zw197-spark-rise .68s cubic-bezier(.12,.68,.31,1) both!important;
 filter:drop-shadow(0 1px 1px #6b522d65)!important;
}
@keyframes zw197-spark-rise{
 0%{opacity:0;transform:translate(-50%,-50%) scale(.25)}
 18%{opacity:1;transform:translate(-50%,-50%) scale(1)}
 75%{opacity:.85}
 100%{opacity:0;transform:translate(calc(-50% + var(--sx)),calc(-50% + var(--sy))) scale(.5)}
}
/* Clicking one number makes its matching partner visually invite the next tap. */
#app .zw94-connect .zw94-number.zw197-partner:not(.matched){
 z-index:12!important;
 filter:drop-shadow(0 0 8px #fff0a1) drop-shadow(0 3px 3px #74623d75)!important;
 animation:zw197-partner-glow 1.45s ease-in-out infinite!important;
}
#app .zw94-connect .zw94-number.zw197-partner:not(.matched)::after{
 content:"";position:absolute!important;inset:-7px!important;
 border-radius:50%!important;
 border:3px dashed #fff3a2!important;
 box-shadow:0 0 0 2px #ba924d87!important;
 pointer-events:none!important;
}
@keyframes zw197-partner-glow{
 0%,100%{scale:1;filter:drop-shadow(0 0 5px #ffe49b)}
 50%{scale:1.07;filter:drop-shadow(0 0 12px #ffefb1)}
}
/* A wrong second number never resets the correct starting number. */
#app .zw94-connect .zw94-number.zw197-hint-nudge:not(.matched){
 animation:zw197-hint-nudge .56s ease-out 1!important;
}
@keyframes zw197-hint-nudge{
 0%,100%{translate:0 0}
 20%,60%{translate:-4px 0}
 40%,80%{translate:4px 0}
}
/* Keep selected paint blot crisp during play without any layout shift. */
#app .zw192-shapes .zw192-pot.active,
#app .zw94-connect .zw94-pot.active{
 outline-offset:2px!important;
}
@media(prefers-reduced-motion:reduce){
 #app .zw192-shapes .zw192-board.is-finished .zw192-dot,
 #app .zw192-shapes .zw192-board.is-finished #zw192Canvas{
  transition:none!important;
 }
 #app .zw192-shapes .zw197-dot-spark,
 #app .zw94-connect .zw94-number.zw197-partner,
 #app .zw94-connect .zw94-number.zw197-hint-nudge{
  animation-duration:.15s!important;
 }
}

/* ---- /connect-v198/solved-numbers.css?v=198 ---- */
/* Zählwiese v198 — solved drawings keep ALL numbered points visible.
   Keep the finished illustration readable: numbers stay crisp, their painted circles
   become a bit smaller and softly translucent only after the hand-drawn last line. */
#app .zw192-shapes .zw192-board.is-finished .zw192-dot{
 opacity:1!important;
 scale:.72!important;
 pointer-events:none!important;
 animation:none!important;
 filter:drop-shadow(0 2px 2px #765c367a)!important;
 transition:scale .46s ease .23s,filter .35s ease!important;
}
#app .zw192-shapes .zw192-board.is-finished .zw192-dot .zw192-circle{
 opacity:.79!important;
 filter:saturate(1.10)!important;
}
#app .zw192-shapes .zw192-board.is-finished .zw192-dot .zw192-digit{
 opacity:1!important;
 color:#51301f!important;
 font-weight:1000!important;
 -webkit-text-stroke:.25px #5a3723!important;
 text-shadow:1px 1px 0 #fff7de,-1px 0 0 #fff7de,0 1px 0 #fff3d0!important;
}
@media (orientation:portrait) and (max-width:355px){
 #app .zw192-shapes .zw192-board.is-finished .zw192-dot{
  scale:.84!important;
 }
}
@media (prefers-reduced-motion:reduce){
 #app .zw192-shapes .zw192-board.is-finished .zw192-dot{
  transition:none!important;
 }
}

/* ---- /connect-v200/intro.css?v=200 ---- */
/* Zählwiese 200 — two direct game buttons, same painted scene as Zahlenjagd */
#app .zw170-launch[data-game-start="connect"]{
 background:#96cf7c url('/home-v126/background-portrait.webp') center/100% 100% no-repeat!important;
 overflow:hidden!important;isolation:isolate!important;
}
#app .zw170-launch[data-game-start="connect"] .zw170-title{
 position:absolute!important;left:4%!important;top:12%!important;
 width:92%!important;height:16%!important;max-width:none!important;max-height:none!important;
 object-fit:fill!important;z-index:12!important;filter:drop-shadow(0 4px 3px #71432666)!important;
}
#app .zw170-launch[data-game-start="connect"] .zw170-art{
 position:absolute!important;left:0!important;top:26%!important;width:100%!important;height:49%!important;
 min-height:0!important;max-width:none!important;z-index:5!important;pointer-events:none!important;
 display:flex!important;align-items:center!important;justify-content:center!important;
}
#app .zw170-launch[data-game-start="connect"] .zw170-scene{
 width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;
 transform:none!important;object-fit:contain!important;filter:drop-shadow(0 3px 3px #5c4d354b)!important;
}
#app .zw170-launch[data-game-start="connect"] .zw170-home{
 position:absolute!important;z-index:35!important;right:max(9px,env(safe-area-inset-right))!important;
 left:auto!important;top:max(8px,env(safe-area-inset-top))!important;
 width:clamp(56px,15vw,72px)!important;height:clamp(56px,15vw,72px)!important;
}
#app .zw170-launch[data-game-start="connect"] .zw200-connect-modes{
 position:absolute!important;left:2%!important;bottom:3.9%!important;
 width:96%!important;height:29%!important;
 display:flex!important;flex-direction:row!important;justify-content:space-around!important;
 align-items:flex-end!important;gap:1%!important;z-index:21!important;pointer-events:none!important;
}
#app .zw170-launch[data-game-start="connect"] .zw200-mode-button{
 width:49%!important;max-width:270px!important;height:100%!important;flex:0 0 49%!important;
 display:flex!important;flex-direction:column!important;justify-content:flex-end!important;
 align-items:center!important;gap:2px!important;position:relative!important;
 background:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important;
 padding:0!important;margin:0!important;pointer-events:auto!important;touch-action:manipulation!important;
 -webkit-tap-highlight-color:transparent!important;
}
#app .zw170-launch[data-game-start="connect"] .zw200-mode-button .zw200-play-image{
 width:min(37vw,17.2dvh,166px)!important;height:min(37vw,17.2dvh,166px)!important;
 display:block!important;flex:0 0 auto!important;object-fit:contain!important;
 filter:drop-shadow(0 4px 4px #69452c87)!important;
 transition:transform .17s ease,filter .17s ease!important;
}
#app .zw170-launch[data-game-start="connect"] .zw200-mode-button:active .zw200-play-image{
 transform:scale(.91)!important;filter:brightness(1.12) drop-shadow(0 2px 3px #6e4935aa)!important;
}
#app .zw170-launch[data-game-start="connect"] .zw200-wood-sign{
 box-sizing:border-box!important;flex:0 0 auto!important;position:relative!important;
 display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;
 width:100%!important;max-width:245px!important;height:clamp(68px,9.5dvh,85px)!important;
 padding:11px 11% 12px!important;margin-top:-3px!important;
 border:0!important;border-radius:0!important;overflow:visible!important;
 background:transparent url('/hunt-v189/wood-sign.webp') center/100% 100% no-repeat!important;
 color:#723c23!important;text-align:center!important;
 filter:drop-shadow(0 2px 3px #583b2459)!important;
}
#app .zw170-launch[data-game-start="connect"] .zw200-wood-sign b{
 display:block!important;font-family:'Trebuchet MS','Arial Rounded MT Bold',Arial,sans-serif!important;
 font-size:clamp(21px,5.9vw,28px)!important;font-weight:1000!important;
 line-height:1.03!important;white-space:nowrap!important;letter-spacing:-.3px!important;
 color:#b65c40!important;-webkit-text-stroke:.42px #694128!important;
 text-shadow:1px 1px 0 #ffe4a0,-1px -1px 0 #fcf0d0!important;
}
#app .zw170-launch[data-game-start="connect"] #zw200Shapes .zw200-wood-sign b:first-child{
 color:#647eb2!important;
}
#app .zw170-launch[data-game-start="connect"] #zw200Pairs .zw200-wood-sign b:first-child{
 color:#c36d66!important;
}
#app .zw170-launch[data-game-start="connect"] .zw200-mode-button:focus-visible{
 outline:4px solid #fff0b0!important;outline-offset:0!important;border-radius:25px!important;
}
@media(orientation:portrait) and (max-width:355px){
 #app .zw170-launch[data-game-start="connect"] .zw170-title{top:12%!important;height:16%!important}
 #app .zw170-launch[data-game-start="connect"] .zw170-art{top:26%!important;height:45%!important}
 #app .zw170-launch[data-game-start="connect"] .zw200-connect-modes{bottom:3%!important;height:33%!important}
 #app .zw170-launch[data-game-start="connect"] .zw200-mode-button .zw200-play-image{
  width:min(41vw,19.5dvh,133px)!important;height:min(41vw,19.5dvh,133px)!important;
 }
 #app .zw170-launch[data-game-start="connect"] .zw200-wood-sign{
  padding:11px 9% 13px!important;height:clamp(67px,11dvh,76px)!important;
 }
 #app .zw170-launch[data-game-start="connect"] .zw200-wood-sign b{
  font-size:clamp(18px,5.9vw,22px)!important;
 }
}
@media(orientation:landscape){
 #app .zw170-launch[data-game-start="connect"]{
  background-image:url('/home-v126/background-landscape.webp')!important;display:block!important;
 }
 #app .zw170-launch[data-game-start="connect"] .zw170-title{
  left:25%!important;top:2%!important;width:50%!important;height:19%!important;max-height:none!important;
 }
 #app .zw170-launch[data-game-start="connect"] .zw170-art{
  left:1%!important;top:17%!important;width:66%!important;height:79%!important;
 }
 #app .zw170-launch[data-game-start="connect"] .zw200-connect-modes{
  left:49%!important;bottom:6%!important;width:49%!important;height:66%!important;gap:0!important;
 }
 #app .zw170-launch[data-game-start="connect"] .zw200-mode-button{
  width:49%!important;max-width:none!important;flex:0 0 49%!important;height:100%!important;
 }
 #app .zw170-launch[data-game-start="connect"] .zw200-mode-button .zw200-play-image{
  width:min(33dvh,15vw,133px)!important;height:min(33dvh,15vw,133px)!important;
 }
 #app .zw170-launch[data-game-start="connect"] .zw200-wood-sign{
  height:clamp(61px,18dvh,88px)!important;min-height:61px!important;padding:9px 9% 12px!important;
 }
 #app .zw170-launch[data-game-start="connect"] .zw200-wood-sign b{
  font-size:clamp(18px,5.5dvh,25px)!important;
 }
}
@media(prefers-reduced-motion:reduce){
 #app .zw170-launch[data-game-start="connect"] .zw200-play-image{transition:none!important}
}

/* ---- /connect-v201/intro.css?v=201 ---- */
/* Zählwiese v201: Directly implemented illustrated entrance from approved artwork.
   Only dynamic art layers are changed. Both Play buttons remain real controls. */
#app .zw170-launch[data-game-start="connect"]{
 background:#8bd471 url('/connect-v201/meadow-portrait.webp') center center / 100% 100% no-repeat!important;
 contain:layout style!important;
}
#app .zw170-launch[data-game-start="connect"] .zw170-title{
 left:3.2%!important;top:12.0%!important;
 width:93.6%!important;height:15.6%!important;
 max-height:none!important;object-fit:fill!important;
 filter:drop-shadow(0 5px 3px #68432670)!important;
}
#app .zw170-launch[data-game-start="connect"] .zw170-art{
 top:29.2%!important;height:38.5%!important;
 left:-4.5%!important;width:109%!important;
 overflow:visible!important;
}
#app .zw170-launch[data-game-start="connect"] .zw170-scene{
 width:100%!important;height:100%!important;
 max-width:none!important;max-height:none!important;
 object-fit:fill!important;
 image-rendering:auto!important;
 filter:saturate(1.12) contrast(1.07) drop-shadow(0 3px 3px #6c532c45)!important;
}
#app .zw170-launch[data-game-start="connect"] .zw200-connect-modes{
 left:3%!important;bottom:9.8%!important;
 width:94%!important;height:30.8%!important;
 gap:1%!important;
 align-items:flex-end!important;
}
#app .zw170-launch[data-game-start="connect"] .zw200-mode-button{
 width:49.5%!important;max-width:none!important;
 flex:0 0 49.5%!important;
 gap:0!important;
}
#app .zw170-launch[data-game-start="connect"] .zw200-mode-button .zw200-play-image{
 width:clamp(110px,32vw,157px)!important;
 height:clamp(110px,32vw,157px)!important;
 min-height:108px!important;
 flex:0 0 auto!important;
 filter:drop-shadow(0 4px 3px #593d2766) saturate(1.2)!important;
 transition:transform .17s ease,filter .17s ease!important;
}
#app .zw170-launch[data-game-start="connect"] .zw200-wood-sign{
 width:100%!important;max-width:232px!important;
 height:clamp(80px,10.7dvh,103px)!important;min-height:78px!important;
 padding:10px 9% 11px!important;margin-top:-6px!important;
 background-image:url('/connect-v201/wood-light.webp')!important;
 background-size:100% 100%!important;
 filter:drop-shadow(0 3px 3px #67472f70)!important;
}
#app .zw170-launch[data-game-start="connect"] .zw200-wood-sign b,
#app .zw170-launch[data-game-start="connect"] #zw200Shapes .zw200-wood-sign b:first-child,
#app .zw170-launch[data-game-start="connect"] #zw200Pairs .zw200-wood-sign b:first-child{
 font-family:'Trebuchet MS', 'Arial Rounded MT Bold', Arial, sans-serif!important;
 font-size:clamp(22px,6.1vw,29px)!important;
 line-height:1.05!important;
 font-weight:1000!important;
 letter-spacing:-.55px!important;
 color:#783718!important;
 -webkit-text-stroke:.50px #663419!important;
 text-shadow:1px 1px 0 #fff3c7,0 -1px 0 #eed29a!important;
 white-space:nowrap!important;
}
#app .zw170-launch[data-game-start="connect"] .zw170-home{
 right:max(8px,env(safe-area-inset-right))!important;
 top:max(7px,env(safe-area-inset-top))!important;
 width:clamp(57px,15vw,71px)!important;
 height:clamp(57px,15vw,71px)!important;
 filter:drop-shadow(0 3px 3px #694e3475)!important;
}
@media (orientation:portrait) and (max-width:355px){
 #app .zw170-launch[data-game-start="connect"] .zw170-title{
  top:12.4%!important;height:15.6%!important;
 }
 #app .zw170-launch[data-game-start="connect"] .zw170-art{
  top:29.2%!important;height:36.5%!important;
 }
 #app .zw170-launch[data-game-start="connect"] .zw200-connect-modes{
  left:1%!important;width:98%!important;bottom:8.3%!important;height:34%!important;
 }
 #app .zw170-launch[data-game-start="connect"] .zw200-mode-button .zw200-play-image{
  width:clamp(102px,33vw,132px)!important;height:clamp(102px,33vw,132px)!important;
  min-height:100px!important;
 }
 #app .zw170-launch[data-game-start="connect"] .zw200-wood-sign{
  height:clamp(72px,11dvh,86px)!important;
  min-height:72px!important;padding:9px 7% 9px!important;
 }
 #app .zw170-launch[data-game-start="connect"] .zw200-wood-sign b,
 #app .zw170-launch[data-game-start="connect"] #zw200Shapes .zw200-wood-sign b:first-child,
 #app .zw170-launch[data-game-start="connect"] #zw200Pairs .zw200-wood-sign b:first-child{
  font-size:clamp(19px,6vw,24px)!important;letter-spacing:-.6px!important;
 }
}
@media(orientation:landscape){
 #app .zw170-launch[data-game-start="connect"]{
  background-image:url('/connect-v201/meadow-landscape.webp')!important;
 }
 #app .zw170-launch[data-game-start="connect"] .zw170-title{
  left:23.5%!important;top:1.5%!important;width:53%!important;height:20%!important;
 }
 #app .zw170-launch[data-game-start="connect"] .zw170-art{
  top:23%!important;left:-1%!important;width:59%!important;height:68%!important;
 }
 #app .zw170-launch[data-game-start="connect"] .zw200-connect-modes{
  left:50%!important;bottom:8%!important;width:49%!important;height:63%!important;
  align-items:flex-end!important;
 }
 #app .zw170-launch[data-game-start="connect"] .zw200-mode-button .zw200-play-image{
  width:clamp(91px,28dvh,141px)!important;height:clamp(91px,28dvh,141px)!important;
  min-height:90px!important;
 }
 #app .zw170-launch[data-game-start="connect"] .zw200-wood-sign{
  height:clamp(70px,19dvh,92px)!important;min-height:67px!important;
  padding:7px 7% 9px!important;margin-top:-4px!important;
 }
 #app .zw170-launch[data-game-start="connect"] .zw200-wood-sign b,
 #app .zw170-launch[data-game-start="connect"] #zw200Shapes .zw200-wood-sign b:first-child,
 #app .zw170-launch[data-game-start="connect"] #zw200Pairs .zw200-wood-sign b:first-child{
  font-size:clamp(19px,5.8dvh,27px)!important;letter-spacing:-.6px!important;
 }
}
@media(prefers-reduced-motion:reduce){
 #app .zw170-launch[data-game-start="connect"] .zw200-mode-button .zw200-play-image{
  transition:none!important;
 }
}

/* ---- /connect-v202/no-stretch.css?v=202 ---- */
/* Zählwiese v202 — original proportions restored. No stretching of artwork. */
#app .zw170-launch[data-game-start="connect"]{
 background-size:cover!important;
 background-position:left center!important;
}
/* The wooden title is a 1330×380 illustration. */
#app .zw170-launch[data-game-start="connect"] .zw170-title{
 left:3%!important;top:12%!important;
 width:94%!important;height:auto!important;
 max-height:none!important;aspect-ratio:1330 / 380!important;
 object-fit:contain!important;
}
/* Keep the crayon characters' true 960×900 proportions. */
#app .zw170-launch[data-game-start="connect"] .zw170-art{
 left:4%!important;top:27.9%!important;
 width:92%!important;height:42%!important;
 display:flex!important;align-items:center!important;justify-content:center!important;
}
#app .zw170-launch[data-game-start="connect"] .zw170-scene{
 width:100%!important;height:100%!important;
 object-fit:contain!important;object-position:center center!important;
 transform:none!important;
}
/* Hand-painted wooden nameplates: 563×196, not a squeezed rectangle. */
#app .zw170-launch[data-game-start="connect"] .zw200-wood-sign{
 width:100%!important;height:auto!important;
 max-height:none!important;min-height:0!important;
 aspect-ratio:563 / 196!important;
 flex:0 0 auto!important;
 background-size:contain!important;
 padding:7px 8% 8px!important;
}
#app .zw170-launch[data-game-start="connect"] .zw200-connect-modes{
 bottom:8.5%!important;
}
@media (orientation:portrait) and (max-width:355px){
 #app .zw170-launch[data-game-start="connect"] .zw170-title{
  width:96%!important;left:2%!important;top:12.7%!important;
 }
 #app .zw170-launch[data-game-start="connect"] .zw170-art{
  left:3%!important;top:28%!important;
  width:94%!important;height:40%!important;
 }
 #app .zw170-launch[data-game-start="connect"] .zw200-connect-modes{
  bottom:7%!important;
 }
 #app .zw170-launch[data-game-start="connect"] .zw200-wood-sign{
  height:auto!important;min-height:0!important;
  padding:5px 7% 6px!important;
 }
}
@media (orientation:landscape){
 #app .zw170-launch[data-game-start="connect"]{
  background-size:cover!important;background-position:center center!important;
 }
 #app .zw170-launch[data-game-start="connect"] .zw170-title{
  left:25%!important;top:1.5%!important;
  width:50%!important;height:20%!important;
  aspect-ratio:auto!important;object-fit:contain!important;
 }
 #app .zw170-launch[data-game-start="connect"] .zw170-art{
  left:1%!important;top:23%!important;
  width:40%!important;height:73%!important;
 }
 #app .zw170-launch[data-game-start="connect"] .zw170-scene{
  width:100%!important;height:100%!important;object-fit:contain!important;
 }
 #app .zw170-launch[data-game-start="connect"] .zw200-wood-sign{
  width:100%!important;height:auto!important;min-height:0!important;
  aspect-ratio:563 / 196!important;padding:6px 7% 7px!important;
 }
 #app .zw170-launch[data-game-start="connect"] .zw200-connect-modes{
  bottom:7%!important;
 }
}

/* ---- /bakery-v203/polish.css?v=203 ---- */
/* Zählwiese Backstube v203 — premium hand-drawn controls, small gesture animations,
   fully functional finger dragging and no accumulated ingredients in the bowl. */

/* Recipe selection — clear generous rounded tactile surfaces, same existing hand-drawn art. */
#app .zw165-choose .zw160-recipe{
 position:relative!important;overflow:visible!important;
 transform-origin:50% 65%!important;
 filter:drop-shadow(0 5px 2px #73503973)!important;
 transition:transform .18s cubic-bezier(.12,.83,.24,1.2),filter .18s ease!important;
 touch-action:manipulation!important;
}
#app .zw165-choose .zw160-recipe::after{
 content:"";position:absolute!important;pointer-events:none!important;
 inset:5%!important;border:3px solid #f8dba899!important;
 border-radius:49% 53% 47% 54%!important;
 box-shadow:0 1px 0 #815c4354,0 0 2px #fff2c6b7 inset!important;
 transform:rotate(-8deg)!important;
}
#app .zw165-choose .zw160-recipe:nth-child(2n)::after{transform:rotate(11deg)!important}
#app .zw165-choose .zw160-recipe img{
 filter:drop-shadow(0 2px 2px #815c4348)!important;
 transform-origin:50% 50%!important;
 transition:transform .17s cubic-bezier(.18,.9,.3,1)!important;
}
#app .zw165-choose .zw160-recipe:active,
#app .zw165-choose .zw160-recipe:focus-visible{
 transform:translateY(2px) scale(.945)!important;
 filter:drop-shadow(0 1px 2px #71482e8a) drop-shadow(0 0 7px #fff0ae)!important;
}
#app .zw165-choose .zw160-recipe:active img{transform:scale(.96) rotate(-3deg)!important}

/* Five original food tokens, improved contrast and unmistakable touch areas. */
#app .zw165-collect .zw160-ingredient{
 position:relative!important;
 width:100%!important;max-width:100%!important;
 min-width:48px!important;min-height:48px!important;
 transform-origin:center center!important;
 filter:drop-shadow(0 3px 2px #6f493977)!important;
 transition:transform .16s cubic-bezier(.19,1.1,.3,1),filter .15s ease!important;
 touch-action:none!important;
}
#app .zw165-collect .zw160-ingredient img{
 object-fit:contain!important;
 filter:saturate(1.15) contrast(1.035)!important;
}
#app .zw165-collect .zw160-ingredient:active,
#app .zw165-collect .zw160-ingredient.zw163-drag-origin{
 transform:translateY(-4px) scale(1.10)!important;
 filter:drop-shadow(0 5px 4px #724d338a) drop-shadow(0 0 6px #fff0b4)!important;
 z-index:5!important;
}
#app .zw165-collect .zw160-ingredient.zw160-hint{
 animation:zw203-point-hint 1.3s ease-in-out infinite!important;
}
#app .zw165-collect .zw160-ingredient.zw160-wrong{
 animation:zw203-tiny-wrong .34s ease-out 1!important;
}
@keyframes zw203-point-hint{
 0%,100%{filter:drop-shadow(0 2px 2px #64462e76)}
 50%{filter:drop-shadow(0 0 9px #fff4c8) drop-shadow(0 3px 2px #81592d76)}
}
@keyframes zw203-tiny-wrong{
 0%,100%{transform:translateX(0)}
 23%{transform:translateX(-5px) rotate(-3deg)}
 54%{transform:translateX(4px) rotate(3deg)}
 76%{transform:translateX(-2px)}
}
/* Show the completion of each instruction entirely by motion, no text. */
#app .zw165 .zw160-lesson.zw203-step-complete{
 animation:zw203-lesson-good .52s ease-out 1!important;
}
@keyframes zw203-lesson-good{
 0%,100%{filter:drop-shadow(0 3px 3px #76533a50)}
 40%{filter:drop-shadow(0 0 12px #f8d785) brightness(1.08)}
}
/* Large original hand-painted whisk and tray buttons. */
#app .zw165-mix .zw160-whisk-control,
#app .zw165-bake .zw160-tray-button{
 position:relative!important;
 width:clamp(103px,31vw,139px)!important;
 height:clamp(103px,31vw,139px)!important;
 min-width:103px!important;
 min-height:103px!important;
 aspect-ratio:1!important;
 border:0!important;border-radius:50%!important;
 background:transparent!important;
 box-shadow:none!important;
 padding:0!important;
 isolation:isolate!important;
 overflow:visible!important;
 touch-action:none!important;
 filter:drop-shadow(0 5px 3px #6e4a2f7d)!important;
 transition:transform .15s cubic-bezier(.18,.87,.3,1.2),filter .15s ease!important;
 animation:zw203-active-cta 2.1s ease-in-out infinite!important;
}
#app .zw165-mix .zw160-whisk-control img,
#app .zw165-bake .zw160-tray-button img{
 display:block!important;
 width:100%!important;height:100%!important;
 object-fit:contain!important;
 filter:saturate(1.12) contrast(1.04)!important;
}
#app .zw165-mix .zw160-whisk-control::after,
#app .zw165-bake .zw160-tray-button::after{
 content:"";position:absolute!important;
 inset:10%!important;border-radius:50%!important;
 border:3px dashed #fff1c39e!important;
 pointer-events:none!important;
 box-shadow:0 0 0 1px #9d663b52!important;
 z-index:3!important;
 transform:rotate(-6deg)!important;
}
#app .zw165-mix .zw160-whisk-control:active,
#app .zw165-bake .zw160-tray-button:active{
 animation:none!important;
 transform:scale(.92) translateY(3px)!important;
 filter:drop-shadow(0 1px 3px #77553f72)!important;
}
#app .zw165-mix .zw160-whisk-control.zw203-tool-active,
#app .zw165-bake .zw160-tray-button.zw203-tool-active{
 animation:zw203-button-work .6s ease-in-out infinite alternate!important;
 filter:drop-shadow(0 0 12px #ffdf8d) drop-shadow(0 4px 3px #7d533d69)!important;
}
@keyframes zw203-active-cta{
 0%,100%{filter:drop-shadow(0 4px 3px #76523a70)}
 50%{filter:drop-shadow(0 4px 3px #76523a70) drop-shadow(0 0 8px #fff2c4)}
}
@keyframes zw203-button-work{to{filter:drop-shadow(0 0 13px #fff1a8) drop-shadow(0 3px 2px #77523d6b)}}

/* Stage progress and mixing movement — carefully use composite-only properties. */
#app .zw165-mix .zw160-stir-progress{
 display:flex!important;justify-content:center!important;
 gap:clamp(13px,4vw,23px)!important;
 min-height:21px!important;height:22px!important;
}
#app .zw165-mix .zw160-stir-progress span{
 width:21px!important;height:21px!important;
 background:#fff0d1!important;border:3px solid #a16e3e!important;
 box-shadow:0 2px 2px #6a4a3152!important;
 transition:transform .2s ease,background .2s ease,filter .2s ease!important;
}
#app .zw165-mix .zw160-stir-progress span.done{
 background:#8fcb83!important;border-color:#5e9b60!important;
 transform:scale(1.18)!important;
 filter:drop-shadow(0 0 5px #fff2b8)!important;
}
#app .zw165-mix .zw160-bowl-unit{
 transform-origin:50% 75%!important;
}
#app .zw165-mix.zw160-stirring .zw160-whisk-actor{
 animation:zw203-whisk-stir .61s ease-in-out infinite!important;
 will-change:transform!important;
}
@keyframes zw203-whisk-stir{
 0%,100%{transform:translate(-7px,0) rotate(-13deg)}
 25%{transform:translate(2px,-6px) rotate(2deg)}
 50%{transform:translate(8px,1px) rotate(15deg)}
 75%{transform:translate(0,6px) rotate(-3deg)}
}
#app .zw165-mix.zw161-manual .zw160-whisk-actor{
 animation:none!important;
 transform:translate(var(--zw161-x,0px),var(--zw161-y,0px)) rotate(var(--zw161-angle,0deg))!important;
}
#app .zw165-mix.zw203-mix-finished .zw160-bowl-unit{
 animation:zw203-bowl-finished .52s ease-out 1!important;
}
@keyframes zw203-bowl-finished{50%{transform:scale(1.065) translateY(-4px)}}

/* Oven: natural glowing warmth around the EXISTING hand-drawn illustrated oven. */
#app .zw165-bake.zw160-baking .zw160-oven-art{
 animation:zw203-oven-warm 1.12s ease-in-out infinite alternate!important;
}
@keyframes zw203-oven-warm{
 from{filter:drop-shadow(0 0 3px #efbb7c67)}
 to{filter:drop-shadow(0 0 16px #ffca74dc) drop-shadow(0 0 5px #fbb36177)}
}
#app .zw165-bake .zw166-bake-star.zw166-baked{
 filter:drop-shadow(0 0 8px #ffda85)!important;
 animation:zw203-star-reward .46s cubic-bezier(.2,1.2,.27,1) both!important;
}
@keyframes zw203-star-reward{
 0%{transform:scale(.65) rotate(-14deg)}
 65%{transform:scale(1.20) rotate(8deg)}
 100%{transform:scale(1) rotate(0deg)}
}
#app .zw165-win .zw160-result-dish{
 filter:drop-shadow(0 6px 5px #8057357a)!important;
 animation:zw203-winning-dish 2.2s ease-in-out infinite alternate!important;
}
@keyframes zw203-winning-dish{
 from{transform:translateY(1px) scale(1)}
 to{transform:translateY(-7px) scale(1.06)}
}
/* Tiny ORIGINAL painted confetti particles, detached from layout. */
.zw203-confetti{
 position:fixed!important;z-index:99999!important;
 width:clamp(13px,3.8vw,22px)!important;height:clamp(13px,3.8vw,22px)!important;
 object-fit:contain!important;pointer-events:none!important;
 transform:translate(-50%,-50%) scale(.28);
 animation:zw203-crayon-spark 1.02s cubic-bezier(.15,.71,.32,1) both!important;
}
@keyframes zw203-crayon-spark{
 0%{opacity:0;transform:translate(-50%,-50%) scale(.25)}
 13%{opacity:1;transform:translate(-50%,-50%) scale(1.04)}
 75%{opacity:.9}
 100%{opacity:0;transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) rotate(var(--spin)) scale(.55)}
}
/* Keep bowl free of visibly stacked ingredients during collection. */
#app .zw165-collect .zw166-bowl-stash,
#app .zw165-collect .zw164-ingredients-in-bowl{display:none!important}
/* Landscape: action buttons dominate, but never obscure the instruction panel. */
@media(orientation:landscape){
 #app .zw165-collect .zw160-tray{
  padding:4px!important;gap:2px!important;
 }
 #app .zw165-mix .zw160-whisk-control,
 #app .zw165-bake .zw160-tray-button{
  width:clamp(82px,24dvh,120px)!important;
  height:clamp(82px,24dvh,120px)!important;
  min-width:82px!important;min-height:82px!important;
 }
 #app .zw165-mix .zw160-stir-progress span{
  width:17px!important;height:17px!important;
 }
 #app .zw165-choose .zw160-recipe{max-height:95%!important}
}
@media(orientation:portrait) and (max-height:660px){
 #app .zw165-mix .zw160-whisk-control,
 #app .zw165-bake .zw160-tray-button{
  width:clamp(85px,23dvh,105px)!important;
  height:clamp(85px,23dvh,105px)!important;
  min-width:85px!important;min-height:85px!important;
 }
}
@media(prefers-reduced-motion:reduce){
 #app .zw165 .zw160-whisk-control,
 #app .zw165 .zw160-tray-button,
 #app .zw165.zw160-stirring .zw160-whisk-actor,
 #app .zw165.zw160-baking .zw160-oven-art,
 #app .zw165-win .zw160-result-dish,
 .zw203-confetti{animation:none!important;transition:none!important}
 .zw203-confetti{display:none!important}
}

/* ---- /bakery-v204/touch.css?v=204 ---- */
/* Backstube v204: safe-size finger targets in iPhone landscape.
   Keep the original hand-drawn token artwork and spacing; enlarge the
   interactive hit surface without changing the five-column tray grid. */
@media(orientation:landscape){
 #app .zw165-collect .zw160-ingredient{
  scale:1.18!important;
  transform-origin:center center!important;
  z-index:3!important;
 }
 #app .zw165-collect .zw160-ingredient:active,
 #app .zw165-collect .zw160-ingredient.zw163-drag-origin{
  z-index:8!important;
 }
}
@media(orientation:landscape) and (max-height:390px){
 #app .zw165-mix .zw160-whisk-control,
 #app .zw165-bake .zw160-tray-button{
  min-width:76px!important;min-height:76px!important;
 }
}

/* ---- /bakery-v205/polish.css?v=205 ---- */
/* Zählwiese Backstube v205: softer crayon animations and better visual guidance.
   Original illustrated assets stay unchanged. No text instructions added. */
#app .zw165-collect .zw160-count-item.zw205-newly-counted{
 position:relative!important;
 animation:zw205-counted .55s cubic-bezier(.18,1.2,.34,1) both!important;
 filter:drop-shadow(0 0 4px #fff6b8) drop-shadow(0 1px 1px #86644d44)!important;
}
@keyframes zw205-counted{
 0%{transform:translateY(-7px) scale(.72);opacity:.48}
 60%{transform:translateY(2px) scale(1.16);opacity:1}
 100%{transform:translateY(0) scale(1);opacity:1}
}
#app .zw165-collect .zw160-ingredient.zw205-correct-nudge{
 animation:zw205-invite 1.4s ease-in-out infinite!important;
}
#app .zw165-collect .zw160-count-lesson.zw205-lesson-hint{
 filter:drop-shadow(0 0 8px #ffe6a4) drop-shadow(0 2px 2px #76523a58)!important;
}
@keyframes zw205-invite{
 0%,100%{filter:drop-shadow(0 3px 2px #6f493977);transform:scale(1)}
 50%{filter:drop-shadow(0 0 11px #fff1ba);transform:scale(1.075)}
}
/* Texture-conscious mixing: no synthetic mesh or digital gradients over the batter. */
#app .zw165-mix .zw160-bowl-base{
 filter:saturate(1.10) contrast(1.04) drop-shadow(0 2px 2px #70533c42)!important;
}
#app .zw165-mix.zw160-stirring .zw160-bowl-foreground{
 filter:drop-shadow(0 0 5px #fff1bb75)!important;
}
#app .zw165-mix .zw161-circle-guide{
 animation:zw205-guide-sway 1.35s ease-in-out infinite alternate!important;
 filter:drop-shadow(0 1px 2px #7c6a5577)!important;
}
@keyframes zw205-guide-sway{
 from{transform:translateX(-3px) rotate(-7deg);opacity:.75}
 to{transform:translateX(3px) rotate(8deg);opacity:1}
}
/* Three independent drawn curls rise from the warm oven. */
#app .zw165-bake .zw161-oven-steam{
 left:32%!important;width:36%!important;
 transform-origin:center bottom!important;
}
#app .zw165-bake .zw205-steam-left{
 left:19%!important;top:-8%!important;width:30%!important;
 scale:.72!important;
}
#app .zw165-bake .zw205-steam-right{
 left:53%!important;top:-7%!important;width:30%!important;
 scale:.78!important;
}
#app .zw165-bake.zw160-baking .zw161-oven-steam{
 animation:zw205-oven-vapor 2.15s ease-in-out infinite!important;
}
#app .zw165-bake.zw160-baking .zw205-steam-left{
 animation-delay:-.72s!important;
}
#app .zw165-bake.zw160-baking .zw205-steam-right{
 animation-delay:-1.39s!important;
}
@keyframes zw205-oven-vapor{
 0%{opacity:0;transform:translateY(11px) rotate(-6deg)}
 24%{opacity:.85}
 55%{opacity:.68;transform:translateY(-11px) rotate(5deg)}
 100%{opacity:0;transform:translateY(-34px) rotate(-9deg)}
}
/* Every baked pastry is delivered visibly to the child's chosen character. */
.zw205-snack-flight{
 position:fixed!important;z-index:99999!important;
 width:clamp(48px,13vw,84px)!important;
 height:clamp(48px,13vw,84px)!important;
 object-fit:contain!important;pointer-events:none!important;
 transform:translate(-50%,-50%);
 filter:drop-shadow(0 3px 4px #74523d6f)!important;
}
.zw205-heart-float{
 position:fixed!important;z-index:99998!important;
 width:clamp(20px,6vw,35px)!important;
 height:clamp(20px,6vw,35px)!important;
 object-fit:contain!important;pointer-events:none!important;
 animation:zw205-heart-rise .95s ease-out both!important;
 filter:drop-shadow(0 2px 2px #7d4a4f55)!important;
}
@keyframes zw205-heart-rise{
 0%{opacity:0;transform:translate(-50%,-30%) scale(.25) rotate(-12deg)}
 23%{opacity:1;transform:translate(-50%,-55%) scale(1.08)}
 66%{opacity:.95;transform:translate(calc(-50% + var(--dx)),calc(-55% + var(--dy))) scale(.93) rotate(8deg)}
 100%{opacity:0;transform:translate(calc(-50% + var(--dx)),calc(-55% + var(--dy))) scale(.62) rotate(16deg)}
}
#app .zw165-win .zw160-character.zw162-fed{
 filter:drop-shadow(0 0 8px #ffeca4)!important;
}
#app .zw165-win .zw162-serve-button:active{
 filter:drop-shadow(0 0 10px #ffe3a9)!important;
 transform:scale(.96)!important;
}
#app .zw165-collect .zw160-bowl-unit.zw160-bowl-hop{
 animation:zw205-bowl-nod .44s ease-out 1!important;
}
@keyframes zw205-bowl-nod{
 0%,100%{transform:translateY(0)}
 46%{transform:translateY(-5px) rotate(-1.5deg)}
}
@media(orientation:landscape){
 #app .zw165-collect .zw160-count-item.zw205-newly-counted{
  animation-duration:.43s!important;
 }
}
@media(prefers-reduced-motion:reduce){
 #app .zw165-collect .zw160-count-item.zw205-newly-counted,
 #app .zw165-collect .zw160-ingredient.zw205-correct-nudge,
 #app .zw165-mix .zw161-circle-guide,
 #app .zw165-bake.zw160-baking .zw161-oven-steam,
 .zw205-heart-float{
  animation:none!important;
 }
 .zw205-snack-flight{display:none!important}
}

/* ---- /bakery-v206/polish.css?v=206 ---- */
/* Backstube v206: better tactile mixing, rising pastry, direct animal feeding.
   Original pencil/wax illustrations remain the only visible art assets. */

/* The whisk moves WITH the finger, rather than the batter spinning on its own. */
#app .zw165-mix.zw161-manual .zw160-whisk-actor{
 transition:transform .045s linear!important;
 transform:translate(var(--zw161-x,0px),var(--zw161-y,0px)) rotate(var(--zw161-angle,0deg))!important;
 will-change:transform!important;
}
#app .zw165-mix.zw160-stirring .zw160-bowl-foreground{
 filter:drop-shadow(0 0 5px #fff2b8a8) saturate(1.03)!important;
}
#app .zw165-mix .zw160-stir-progress span.zw206-new-progress{
 animation:zw206-progress-pop .46s cubic-bezier(.18,.84,.23,1.25) both!important;
}
@keyframes zw206-progress-pop{
 0%{transform:scale(.60);opacity:.30}
 57%{transform:scale(1.42);opacity:1}
 100%{transform:scale(1.18);opacity:1}
}
#app .zw165-mix .zw160-bowl-unit.zw206-bowl-complete{
 animation:zw206-finish-batter .6s cubic-bezier(.2,.7,.32,1) both!important;
}
@keyframes zw206-finish-batter{
 0%,100%{transform:scale(1) rotate(0)}
 28%{transform:scale(1.055) rotate(-2deg)}
 62%{transform:scale(1.05) rotate(2deg)}
}
/* A friendly invitation to trace the illustrated circular guide. */
#app .zw165-mix .zw161-circle-guide{
 filter:drop-shadow(0 0 5px #ffeab18b) drop-shadow(0 2px 2px #6c4d3c4d)!important;
}
#app .zw165-mix.zw161-manual .zw161-circle-guide{
 animation:none!important;
 opacity:.55!important;
}
/* The recipe appears to rise and become baked inside the REAL illustrated oven.
   Baked pastry uses the existing per-recipe artwork, not a generic disc. */
#app .zw165-bake .zw160-oven-wrap .zw165-oven-pastry{
 transform-origin:50% 80%!important;
 transition:transform .65s cubic-bezier(.17,.77,.27,1),opacity .48s ease,filter .48s ease!important;
}
#app .zw165-bake .zw160-oven-wrap.zw206-bake-step-1 .zw165-oven-pastry{
 opacity:.32!important;
 transform:translateY(8px) scale(.72)!important;
 filter:saturate(.72) brightness(1.14) drop-shadow(0 1px 1px #8a593c42)!important;
}
#app .zw165-bake .zw160-oven-wrap.zw206-bake-step-2 .zw165-oven-pastry{
 opacity:.73!important;
 transform:translateY(3px) scale(.88)!important;
 filter:saturate(.91) brightness(1.07) drop-shadow(0 1px 2px #87553f74)!important;
}
#app .zw165-bake .zw160-oven-wrap.zw206-bake-step-3 .zw165-oven-pastry{
 opacity:1!important;
 transform:translateY(0px) scale(1)!important;
 filter:saturate(1.10) drop-shadow(0 2px 3px #8e603a8c)!important;
}
/* The progress symbols gently hop only once when earned. */
#app .zw165-bake .zw166-bake-star.zw166-baked{
 transform-origin:center center!important;
 filter:drop-shadow(0 0 7px #ffe8a1) saturate(1.12)!important;
}
/* At the end the child may feed either character with one tap, besides dragging
   the treat from the plate. Large original illustrated characters are the buttons. */
#app .zw165-win .zw160-character{
 cursor:pointer!important;
 touch-action:manipulation!important;
 -webkit-tap-highlight-color:transparent!important;
 transition:filter .18s ease,scale .18s ease!important;
}
#app .zw165-win .zw160-character:active{
 scale:.95!important;
 filter:drop-shadow(0 0 11px #ffe1a5) drop-shadow(0 2px 2px #855f425e)!important;
}
#app .zw165-win .zw160-character:focus-visible{
 outline:4px dashed #ffe7b0!important;outline-offset:2px!important;
}
#app .zw165-win .zw160-character.zw162-fed{
 animation:zw206-fed-giggle .66s cubic-bezier(.15,.86,.24,1) both!important;
 filter:drop-shadow(0 0 10px #ffe8a4)!important;
}
@keyframes zw206-fed-giggle{
 0%,100%{transform:rotate(0deg) scale(1)}
 22%{transform:rotate(-5deg) scale(1.07)}
 46%{transform:rotate(5deg) scale(1.09)}
 70%{transform:rotate(-3deg) scale(1.035)}
}
/* Keep page responsive and free of clipped controls on small iPhones. */
@media(orientation:landscape) and (max-height:440px){
 #app .zw165-mix .zw160-stir-progress span{width:17px!important;height:17px!important}
 #app .zw165-win .zw160-character:active{scale:.98!important}
}
@media(prefers-reduced-motion:reduce){
 #app .zw165-mix .zw160-stir-progress span.zw206-new-progress,
 #app .zw165-mix .zw160-bowl-unit.zw206-bowl-complete,
 #app .zw165-win .zw160-character.zw162-fed{
  animation:none!important;
 }
 #app .zw165-bake .zw160-oven-wrap .zw165-oven-pastry{
  transition:none!important;
 }
}

/* ---- /bakery-v207/layout.css?v=207 ---- */
/* Backstube v207 – true crayon-paper recipe artwork and one unified action-button system.
   Preserves Moritz Maus + Igor Igel and all existing game logic / touch targets. */

/* Recipe selection: real illustrated parchment cards with large, clear food pictures. */
#app .zw165-choose .zw160-recipe-grid{
 grid-template-columns:repeat(3,minmax(0,1fr))!important;
 grid-template-rows:repeat(2,minmax(0,1fr))!important;
 align-items:center!important;
 justify-items:center!important;
 gap:clamp(9px,2.4vw,18px)!important;
 padding:clamp(6px,2vw,12px)!important;
 overflow:visible!important;
}
#app .zw165-choose .zw160-recipe,
#app .zw165-choose .zw160-recipe:nth-child(even),
#app .zw165-choose .zw160-recipe:nth-child(3n){
 display:grid!important;place-items:center!important;
 width:min(100%,clamp(98px,27vw,155px))!important;
 height:auto!important;
 aspect-ratio:376 / 426!important;
 max-height:96%!important;
 min-width:86px!important;min-height:98px!important;
 background:none!important;
 border:0!important;border-radius:28px!important;
 box-shadow:none!important;padding:0!important;margin:0!important;
 filter:drop-shadow(0 4px 3px #7e5a4172)!important;
 overflow:visible!important;
 transform-origin:50% 75%!important;
 transition:transform .18s cubic-bezier(.18,.9,.3,1),filter .18s ease!important;
 touch-action:manipulation!important;
}
#app .zw165-choose .zw160-recipe::after{content:none!important}
#app .zw165-choose .zw160-recipe img{
 width:100%!important;height:100%!important;
 display:block!important;object-fit:contain!important;
 transform:none!important;
 filter:saturate(1.11) contrast(1.025)!important;
 pointer-events:none!important;
}
#app .zw165-choose .zw160-recipe:active{
 transform:translateY(3px) scale(.94)!important;
 filter:drop-shadow(0 2px 2px #6f4d3873) drop-shadow(0 0 6px #fff1ba)!important;
}
#app .zw165-choose .zw160-recipe:focus-visible{
 outline:4px dashed #f6c766!important;outline-offset:3px!important;
}
/* The food picture is fully handdrawn, and does not overlap the other buttons. */
#app .zw165-choose .zw160-choose-friends{
 pointer-events:none!important;
}

/* One shared illustrated, rounded elongated primary action button.
   The full painted WebP is a single asset; no overlaid circle/label conflicts. */
#app .zw165-mix #zw160Whisk,
#app .zw165-bake #zw160Bake,
#app .zw165-win #zw160Next{
 display:block!important;flex:0 0 auto!important;
 position:relative!important;
 width:clamp(184px,51vw,248px)!important;
 height:clamp(69px,11.7dvh,89px)!important;
 min-width:174px!important;min-height:68px!important;
 max-width:95%!important;
 border:0!important;border-radius:999px!important;
 padding:0!important;margin:0 auto!important;
 aspect-ratio:650 / 234!important;
 background-repeat:no-repeat!important;
 background-position:center!important;
 background-size:100% 100%!important;
 box-shadow:none!important;
 filter:drop-shadow(0 4px 3px #60433169)!important;
 isolation:isolate!important;
 overflow:visible!important;
 outline-offset:3px!important;
 transition:transform .16s cubic-bezier(.16,.84,.26,1),filter .16s ease!important;
 touch-action:manipulation!important;
}
#app .zw165-mix #zw160Whisk{background-image:url('/bakery-v207/button-mix.webp')!important}
#app .zw165-bake #zw160Bake{background-image:url('/bakery-v207/button-bake.webp')!important}
#app .zw165-win #zw160Next{background-image:url('/bakery-v207/button-next.webp')!important}
#app .zw165-mix #zw160Whisk img,
#app .zw165-bake #zw160Bake img,
#app .zw165-win #zw160Next img{
 opacity:0!important;
 width:100%!important;height:100%!important;
 pointer-events:none!important;
}
#app .zw165-mix #zw160Whisk::after,
#app .zw165-bake #zw160Bake::after,
#app .zw165-win #zw160Next::after{content:none!important}
#app .zw165-mix #zw160Whisk:active,
#app .zw165-bake #zw160Bake:active,
#app .zw165-win #zw160Next:active{
 animation:none!important;
 transform:translateY(2px) scale(.95)!important;
 filter:drop-shadow(0 1px 2px #61462f7a) brightness(1.04)!important;
}
#app .zw165-mix #zw160Whisk:focus-visible,
#app .zw165-bake #zw160Bake:focus-visible,
#app .zw165-win #zw160Next:focus-visible{
 outline:4px dashed #fff1b6!important;
}
/* Align primary button directly under its readable progress row,
   never against the absolute bottom edge of the device. */
#app .zw165-mix .zw160-mix-bottom{
 display:flex!important;flex-direction:column!important;
 align-items:center!important;justify-content:center!important;
 gap:clamp(8px,1.6dvh,13px)!important;
 padding:6px 10px max(10px,env(safe-area-inset-bottom))!important;
 min-height:0!important;
}
#app .zw165-mix .zw160-stir-progress{
 flex:0 0 auto!important;
 height:23px!important;
 gap:clamp(12px,4vw,21px)!important;
}
#app .zw165-mix .zw160-stir-progress span{
 width:21px!important;height:21px!important;
 border-width:3px!important;
}
#app .zw165-bake .zw160-bake-bottom{
 display:flex!important;flex-direction:column!important;
 align-items:center!important;justify-content:center!important;
 gap:clamp(8px,1.4dvh,12px)!important;
 padding:6px 10px max(10px,env(safe-area-inset-bottom))!important;
 min-height:0!important;
}
#app .zw165-bake .zw166-bake-stars{
 display:flex!important;align-items:center!important;justify-content:center!important;
 gap:clamp(8px,3vw,17px)!important;
 width:auto!important;height:30px!important;min-height:26px!important;
}
#app .zw165-bake .zw166-bake-stars img{
 max-height:30px!important;object-fit:contain!important;
}
#app .zw165-win .zw160-win-bottom{
 display:flex!important;align-items:center!important;justify-content:center!important;
 padding:8px 8px max(12px,env(safe-area-inset-bottom))!important;
}
#app .zw165-win .zw160-result-dish{
 filter:saturate(1.10) contrast(1.03) drop-shadow(0 5px 4px #76513d5b)!important;
}
@media(orientation:landscape){
 #app .zw165-choose .zw160-recipe-grid{
  gap:clamp(4px,1.4vw,11px)!important;
  padding:2px 6px!important;
 }
 #app .zw165-choose .zw160-recipe,
 #app .zw165-choose .zw160-recipe:nth-child(even),
 #app .zw165-choose .zw160-recipe:nth-child(3n){
  width:min(100%,clamp(75px,23dvh,126px))!important;
  min-width:68px!important;min-height:76px!important;
  max-height:98%!important;
 }
 #app .zw165-mix #zw160Whisk,
 #app .zw165-bake #zw160Bake,
 #app .zw165-win #zw160Next{
  width:clamp(172px,23vw,225px)!important;
  height:clamp(64px,19.5dvh,83px)!important;
  min-height:62px!important;min-width:166px!important;
 }
 #app .zw165-mix .zw160-mix-bottom,
 #app .zw165-bake .zw160-bake-bottom{gap:5px!important;padding:2px 4px 5px!important}
 #app .zw165-mix .zw160-stir-progress span{width:17px!important;height:17px!important}
}
@media(orientation:portrait) and (max-width:350px){
 #app .zw165-choose .zw160-recipe{
  width:min(100%,clamp(86px,27vw,105px))!important;
  min-width:82px!important;min-height:94px!important;
 }
 #app .zw165-mix #zw160Whisk,
 #app .zw165-bake #zw160Bake,
 #app .zw165-win #zw160Next{
  width:185px!important;height:70px!important;
 }
}
@media(prefers-reduced-motion:reduce){
 #app .zw165-mix #zw160Whisk,
 #app .zw165-bake #zw160Bake,
 #app .zw165-win #zw160Next{animation:none!important;transition:none!important}
}
/* Finishing alignment pass: the six picture cards form one centered 3×2 group,
   instead of occupying the upper/lower edges of a stretched grid. */
#app .zw165-choose .zw160-recipe-grid{
 grid-template-rows:repeat(2,max-content)!important;
 align-content:center!important;
 row-gap:clamp(10px,2.4dvh,20px)!important;
}
#app .zw165-mix .zw160-mix-bottom,
#app .zw165-bake .zw160-bake-bottom,
#app .zw165-win .zw160-win-bottom{
 transform:translateY(-16px)!important;
}
/* Limit the finished plate to the available space in landscape. */
@media(orientation:landscape){
 #app .zw165-win .zw160-win-scene .zw162-serve-button{
  width:160px!important;height:145px!important;
  left:50%!important;bottom:6%!important;
  transform:translateX(-50%)!important;
 }
 #app .zw165-win .zw160-win-scene .zw162-serve-button .zw160-result-dish{
  width:100%!important;height:100%!important;
  max-height:100%!important;max-width:100%!important;
  object-fit:contain!important;left:auto!important;bottom:auto!important;
 }

 #app .zw165-choose .zw160-recipe-grid{
  grid-template-rows:repeat(2,max-content)!important;
  row-gap:clamp(4px,1.7dvh,9px)!important;
  align-content:center!important;
 }
 #app .zw165-win .zw160-result-dish{
  width:43%!important;height:61%!important;
  left:28.5%!important;bottom:17%!important;
  object-fit:contain!important;
 }
 #app .zw165-win #zw160Next{
  translate:-27px 17px!important;
 }
 #app .zw165-mix .zw160-mix-bottom,
 #app .zw165-bake .zw160-bake-bottom{
  transform:translateY(-13px)!important;
 }
 #app .zw165-win .zw160-win-bottom{
  transform:none!important;
 }
}

/* Landscape victory fix: the dish belongs on the table, never below the screen. */
@media(orientation:landscape){
 #app .zw165-win .zw160-win-scene .zw162-serve-button{
  position:absolute!important;
  left:calc(50% - 102px)!important;
  right:auto!important;
  top:auto!important;
  bottom:19%!important;
  width:204px!important;
  height:198px!important;
  max-height:72%!important;
  transform:none!important;
 }
 #app .zw165-win .zw160-win-scene .zw162-serve-button .zw160-result-dish{
  position:relative!important;
  inset:auto!important;
  width:100%!important;
  height:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
 }
}

/* v207 final: prevent landscape victory art from covering either character. */
@media (orientation:landscape){
 #app .zw165-win .zw160-win-scene .zw162-serve-button{
  overflow:hidden!important;
  border-radius:50%!important;
 }
 #app .zw165-win .zw160-win-scene .zw162-serve-button .zw160-result-dish{
  width:92%!important;height:92%!important;
  max-width:92%!important;max-height:92%!important;
  object-fit:contain!important;
  animation:none!important;
 }
}

/* ---- /bakery-v208/restore-drag.css?v=208 ---- */
/* v208: return to illustrations and physical drag controls. */
#app .zw165-choose .zw160-recipe,
#app .zw165-choose .zw160-recipe:nth-child(even),
#app .zw165-choose .zw160-recipe:nth-child(3n){
 width:clamp(96px,28vw,146px)!important;height:auto!important;
 aspect-ratio:1!important;min-height:85px!important;min-width:85px!important;
 border:0!important;border-radius:50%!important;padding:0!important;
 background:transparent!important;box-shadow:none!important;overflow:visible!important;
 filter:drop-shadow(0 5px 3px #73513783)!important;
}
#app .zw165-choose .zw160-recipe img{
 width:100%!important;height:100%!important;object-fit:contain!important;
 filter:saturate(1.12) contrast(1.05)!important;
}
#app .zw165-mix #zw160Whisk,#app .zw165-bake #zw160Bake{
 display:grid!important;place-items:center!important;
 width:clamp(112px,32vw,143px)!important;height:clamp(112px,32vw,143px)!important;
 min-width:106px!important;min-height:106px!important;
 border:0!important;border-radius:50%!important;
 aspect-ratio:1!important;padding:0!important;max-height:none!important;
 background:transparent!important;background-image:none!important;
 box-shadow:none!important;touch-action:none!important;cursor:grab!important;
 filter:drop-shadow(0 5px 3px #74513785)!important;
 animation:zw208-tool-glow 2.1s ease-in-out infinite!important;
}
#app .zw165-mix #zw160Whisk img,#app .zw165-bake #zw160Bake img{
 width:100%!important;height:100%!important;opacity:1!important;
 object-fit:cover!important;border-radius:50%!important;
 clip-path:circle(43% at 50% 49%)!important;
 filter:saturate(1.1) contrast(1.05)!important;pointer-events:none!important;
}
#app .zw165-mix #zw160Whisk:active,#app .zw165-bake #zw160Bake:active,
#app .zw165-mix #zw160Whisk.zw163-drag-origin,#app .zw165-bake #zw160Bake.zw163-drag-origin{
 animation:none!important;transform:translateY(-2px) scale(1.05)!important;
 filter:drop-shadow(0 0 9px #fff1b7) drop-shadow(0 5px 3px #73503685)!important;
 cursor:grabbing!important;
}
@keyframes zw208-tool-glow{
 0%,100%{filter:drop-shadow(0 3px 3px #704e3981)}
 50%{filter:drop-shadow(0 0 7px #ffebad) drop-shadow(0 5px 3px #704e3981)}
}
#app .zw165-mix.zw208-whisk-in-bowl .zw160-bowl-mixing{
 filter:drop-shadow(0 0 9px #fff0b5ad)!important;touch-action:none!important;
}
#app .zw165-mix.zw208-whisk-in-bowl .zw161-circle-guide{
 filter:drop-shadow(0 0 7px #fff2bd)!important;
}
.zw160-ghost{z-index:9999!important;filter:drop-shadow(0 5px 3px #7850328a)!important}
.zw160-ghost img{opacity:1!important;border-radius:50%!important;clip-path:circle(44% at 50% 50%)!important;object-fit:contain!important}
#app .zw165-mix .zw160-mix-bottom,#app .zw165-bake .zw160-bake-bottom{
 align-items:center!important;justify-content:center!important;
 gap:6px!important;padding-bottom:max(12px,env(safe-area-inset-bottom))!important;
}
@media(orientation:landscape){
 #app .zw165-choose .zw160-recipe,
 #app .zw165-choose .zw160-recipe:nth-child(even),
 #app .zw165-choose .zw160-recipe:nth-child(3n){
  width:clamp(78px,22dvh,113px)!important;min-width:75px!important;min-height:75px!important;
 }
 #app .zw165-mix #zw160Whisk,#app .zw165-bake #zw160Bake{
  width:clamp(82px,26dvh,112px)!important;height:clamp(82px,26dvh,112px)!important;min-width:80px!important;min-height:80px!important;
 }
}
@media(orientation:portrait) and (max-height:620px){
 #app .zw165-mix #zw160Whisk,#app .zw165-bake #zw160Bake{width:94px!important;height:94px!important;min-width:90px!important;min-height:90px!important}
}
@media(prefers-reduced-motion:reduce){
 #app .zw165-mix #zw160Whisk,#app .zw165-bake #zw160Bake{animation:none!important}
}

/* ---- /bakery-v230/style.css?v=230 ---- */
/* ZÄHLWIESE · BACKSTUBE 209 — entirely new layout built from separately drawn
   wax / coloured-pencil artwork in the *exact* approved Zahlenjagd meadow.
   No CSS gradient, emojis, browser-default button, 3D or flattened mockup. */
#app .zw209{
 position:fixed!important;inset:0!important;z-index:500!important;
 width:100%!important;height:100dvh!important;min-height:0!important;
 padding:0!important;margin:0!important;overflow:hidden!important;
 background:#8bc960 url('/hunt-v189/meadow-portrait.webp') left center/cover no-repeat!important;
 isolation:isolate!important;
 font-family:'Trebuchet MS','Arial Rounded MT Bold',Arial,sans-serif!important;
 user-select:none!important;-webkit-user-select:none!important;
 touch-action:manipulation!important;
}
#app .zw209 *,#app .zw209 *::before,#app .zw209 *::after{
 box-sizing:border-box!important;-webkit-tap-highlight-color:transparent!important;
}
#app .zw209 img{display:block;max-width:100%;user-select:none;-webkit-user-drag:none}
#app .zw209 button{
 margin:0;border:0;padding:0;background:none;box-shadow:none;
 font:inherit;color:inherit;cursor:pointer;touch-action:manipulation;
}
#app .zw209 button:focus-visible{outline:4px dashed #ffed9b!important;outline-offset:2px!important}
#app .zw209-top{position:absolute!important;inset:0 0 auto!important;height:24%!important;z-index:11!important;pointer-events:none!important}
#app .zw209-title{
 position:absolute!important;width:84%!important;max-width:470px!important;
 height:auto!important;left:50%!important;top:35%!important;
 transform:translateX(-50%)!important;object-fit:contain!important;
 filter:drop-shadow(0 4px 3px #6440276b)!important;pointer-events:none!important;
}
#app .zw209 .zw209-home,#app .zw209 .zw209-reset{
 position:absolute!important;right:max(11px,env(safe-area-inset-right))!important;
 width:clamp(50px,14vw,73px)!important;height:clamp(50px,14vw,73px)!important;
 border-radius:50%!important;display:grid!important;place-items:center!important;
 pointer-events:auto!important;
 filter:drop-shadow(0 3px 3px #68483474)!important;
}
#app .zw209 .zw209-home{top:max(10px,env(safe-area-inset-top))!important}
#app .zw209 .zw209-reset{top:calc(max(10px,env(safe-area-inset-top)) + clamp(51px,14vw,75px))!important;width:clamp(39px,10vw,53px)!important;height:clamp(39px,10vw,53px)!important;right:max(18px,calc(env(safe-area-inset-right) + 7px))!important}
#app .zw209 .zw209-home img,#app .zw209 .zw209-reset img{width:100%!important;height:100%!important;object-fit:contain!important}
#app .zw209 .zw209-home:active,#app .zw209 .zw209-reset:active{transform:scale(.93)!important}
#app .zw209-stage-sign{
 position:absolute!important;left:50%!important;top:23%!important;
 width:min(81%,340px)!important;height:10.5%!important;
 transform:translateX(-50%)!important;z-index:10!important;
 display:flex!important;align-items:center!important;justify-content:center!important;
 filter:drop-shadow(0 3px 3px #79472f60)!important;pointer-events:none!important;
}
#app .zw209-stage-sign img{
 position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
 object-fit:contain!important;
}
#app .zw209-stage-sign span{
 position:relative!important;z-index:1!important;
 font-size:clamp(17px,5.8vw,27px)!important;font-weight:1000!important;
 letter-spacing:-.6px!important;white-space:nowrap!important;
 color:#7e3d25!important;text-shadow:1px 1px #fff4b8,-1px -1px #f6db9b!important;
 -webkit-text-stroke:.3px #633a2b!important;
}
#app .zw209-table{
 position:absolute!important;left:0!important;right:0!important;bottom:-2%!important;
 height:30%!important;z-index:2!important;pointer-events:none!important;
 background:url('/bakery-v229/counter.webp') center center / cover no-repeat!important;
 filter:drop-shadow(0 -5px 5px #74552b67)!important;
}
#app .zw209-friends{position:absolute!important;inset:0!important;pointer-events:none!important;z-index:5!important}
#app .zw209 .zw209-friend{
 position:absolute!important;width:clamp(83px,26vw,140px)!important;
 height:auto!important;aspect-ratio:1!important;
 bottom:20.3%!important;z-index:5!important;
 pointer-events:auto!important;
 filter:drop-shadow(0 4px 4px #365a2777)!important;
 transition:transform .35s cubic-bezier(.19,.73,.3,1.2)!important;
}
#app .zw209 .zw209-moritz{left:0.5%!important}
#app .zw209 .zw209-igor{right:0.5%!important}
#app .zw209 .zw209-friend img{width:100%!important;height:100%!important;object-fit:contain!important}
#app .zw209 .zw209-friend.zw209-fed{animation:zw209-celebrate .65s ease-in-out 1!important}
#app .zw209 .zw209-friend:active{transform:scale(1.055)!important}
@keyframes zw209-celebrate{
 0%,100%{transform:rotate(0) translateY(0)}
 25%{transform:rotate(-5deg) translateY(-9px)}
 55%{transform:rotate(6deg) translateY(-12px)}
}
/* Illustrated food selection. No card wrapper or hard-edged container. */
#app .zw209-choices{
 position:absolute!important;left:9%!important;top:34%!important;width:82%!important;
 height:41%!important;z-index:9!important;
 display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
 grid-template-rows:repeat(2,minmax(0,1fr))!important;
 gap:clamp(9px,2vw,18px)!important;align-items:center!important;justify-items:center!important;
}
#app .zw209 .zw209-choice{
 width:min(100%,clamp(78px,25vw,137px))!important;height:auto!important;
 aspect-ratio:1!important;min-width:72px!important;min-height:72px!important;
 display:grid!important;place-items:center!important;border-radius:50%!important;
 background:none!important;
 filter:drop-shadow(0 4px 3px #59492f77)!important;
 animation:zw209-choice-bob 3.2s ease-in-out infinite!important;
}
#app .zw209-choice:nth-child(2n){animation-delay:-1.4s!important}
#app .zw209-choice:nth-child(3n){animation-delay:-2.1s!important}
#app .zw209-choice img{width:100%!important;height:100%!important;object-fit:contain!important;filter:saturate(1.14) contrast(1.055)!important}
#app .zw209-choice:active{transform:scale(.9)!important;animation:none!important}
@keyframes zw209-choice-bob{0%,100%{translate:0 0}50%{translate:0 -5px}}
/* The ingredient request appears only as large pictures; no reading required. */
#app .zw209-clue{
 position:absolute!important;top:32.5%!important;left:17%!important;width:66%!important;height:13%!important;
 z-index:9!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;
 background:url('/bakery-v229/stage-wood.webp') center/100% 100% no-repeat!important;
 filter:drop-shadow(0 2px 2px #764b3061)!important;
}
#app .zw209-clue-icons{height:76%!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:1px!important;min-width:0!important}
#app .zw209-clue-icons img{height:100%!important;width:clamp(40px,12vw,68px)!important;object-fit:contain!important;transition:opacity .23s ease,transform .23s ease!important}
#app .zw209-clue-icons img.zw209-added{opacity:.25!important;transform:scale(.8)!important}
#app .zw209-clue-arrow{width:17%!important;height:65%!important}
#app .zw209-clue-arrow img{width:100%!important;height:100%!important;object-fit:contain!important}
/* Real object placement zone, same original handpainted blue bowl in each stage. */
#app .zw209-work{
 position:absolute!important;z-index:6!important;
 left:21%!important;top:46%!important;width:58%!important;height:24%!important;
 display:flex!important;align-items:center!important;justify-content:center!important;
 pointer-events:auto!important;
}
#app .zw209-work .zw209-bowl{width:100%!important;height:100%!important;object-fit:contain!important;filter:drop-shadow(0 7px 4px #3a663c65)!important}
#app .zw209-drop{position:absolute!important;inset:17% 10% 13% 10%!important;z-index:5!important;border-radius:50%!important;pointer-events:none!important;transition:filter .15s ease!important}
#app .zw209-drop.zw209-drop-hover{outline:7px dashed #fff4be!important;outline-offset:5px!important;filter:drop-shadow(0 0 14px #f3eaa9)!important}
#app .zw209-drop.zw209-invite{animation:zw209-invite 1s ease-in-out infinite!important}
@keyframes zw209-invite{50%{filter:drop-shadow(0 0 15px #fff0b4)}}
#app .zw209-tray{
 position:absolute!important;left:15%!important;bottom:2.1%!important;width:70%!important;height:22%!important;
 z-index:9!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
 grid-template-rows:repeat(2,minmax(0,1fr))!important;
 gap:3px 6px!important;justify-items:center!important;align-items:center!important;
}
#app .zw209 .zw209-ing{
 display:grid!important;place-items:center!important;
 width:clamp(47px,15.2vw,78px)!important;height:clamp(47px,15.2vw,78px)!important;
 min-width:45px!important;min-height:45px!important;border-radius:50%!important;
 background:rgba(255,247,209,.78)!important;
 border:3px solid #b67740!important;outline:2px dashed rgba(255,237,175,.84)!important;
 filter:drop-shadow(0 3px 3px #583a2568)!important;
 touch-action:none!important;
}
#app .zw209-ing img{width:94%!important;height:94%!important;object-fit:contain!important;pointer-events:none!important}
#app .zw209-ing.zw209-needed{animation:zw209-needed 1.3s ease-in-out infinite!important;border-color:#e9b44a!important;z-index:2!important}
#app .zw209-ing.zw209-wrong{animation:zw209-wrong .48s ease 1!important}
#app .zw209-ing.zw209-dragging{opacity:.6!important}
@keyframes zw209-needed{50%{filter:drop-shadow(0 0 10px #fff6b8) drop-shadow(0 3px 3px #583a2568);scale:1.06}}
@keyframes zw209-wrong{25%{transform:translateX(-6px)}50%{transform:translateX(6px)}75%{transform:translateX(-4px)}}
#app .zw209-mix .zw209-work,#app .zw209-bake .zw209-work{
 top:42%!important;height:29%!important;width:64%!important;left:18%!important;
}
#app .zw209 .zw209-whisk-in{
 position:absolute!important;z-index:7!important;left:50%!important;top:24%!important;
 width:25%!important;height:51%!important;object-fit:contain!important;
 transform:translate(calc(-50% + var(--wx,0px)),var(--wy,0px)) rotate(var(--wa,-14deg))!important;
 filter:drop-shadow(0 3px 2px #65503c59)!important;pointer-events:none!important;
}
#app .zw209-swirl-ring{
 position:absolute!important;inset:16% 19%!important;z-index:6!important;
 border:6px dashed #fff3ab!important;opacity:0!important;border-radius:50%!important;
 transform:rotate(-20deg)!important;pointer-events:none!important;
}
#app .zw209-mix-work.zw209-ready .zw209-swirl-ring{opacity:.8!important;animation:zw209-ring 2.8s linear infinite!important}
@keyframes zw209-ring{to{transform:rotate(340deg)}}
#app .zw209-pips{
 position:absolute!important;top:72%!important;left:50%!important;transform:translateX(-50%)!important;
 z-index:10!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:13px!important;
}
#app .zw209-pips span,.zw209-served-pips span{
 display:block!important;width:24px!important;height:24px!important;border-radius:50%!important;
 border:4px solid #aa6c3d!important;background:#fff0c4!important;
 box-shadow:0 2px 2px #62422d67!important;
 transition:background .2s ease,scale .2s ease!important;
}
#app .zw209-pips span.complete,.zw209-served-pips span.done{
 background:#77bb6c!important;border-color:#397e51!important;scale:1.14!important;
 filter:drop-shadow(0 0 7px #fff0b1)!important;
}
#app .zw209 .zw209-tool{
 position:absolute!important;left:50%!important;bottom:4%!important;
 transform:translateX(-50%)!important;z-index:12!important;
 width:clamp(98px,29vw,143px)!important;height:clamp(98px,29vw,143px)!important;
 border-radius:50%!important;touch-action:none!important;
 filter:drop-shadow(0 5px 4px #60432b76)!important;
 animation:zw209-tool-bob 2.1s ease-in-out infinite!important;
}
#app .zw209-tool img{width:100%!important;height:100%!important;object-fit:contain!important;pointer-events:none!important}
#app .zw209-tool.zw209-dragging{opacity:.55!important}
@keyframes zw209-tool-bob{50%{filter:drop-shadow(0 0 11px #fff1ba) drop-shadow(0 5px 4px #60432b76);translate:0 -4px}}
#app .zw209 .zw209-oven-work{top:39%!important;height:34%!important;left:23%!important;width:54%!important}
#app .zw209 .zw209-oven{
 position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
 object-fit:contain!important;filter:drop-shadow(0 5px 3px #7550367f)!important;z-index:4!important;
}
#app .zw209-oven-food{
 position:absolute!important;z-index:5!important;left:32%!important;top:53%!important;
 width:37%!important;height:23%!important;opacity:0!important;transform:scale(.45) translateY(12px)!important;
 transition:opacity .45s ease,transform .5s ease!important;
 filter:saturate(1.1) brightness(.85)!important;pointer-events:none!important;
}
#app .zw209-oven-food img{width:100%!important;height:100%!important;object-fit:contain!important}
#app .zw209-heat-1 .zw209-oven-food{opacity:.45!important;transform:scale(.65) translateY(6px)!important}
#app .zw209-heat-2 .zw209-oven-food{opacity:.75!important;transform:scale(.85) translateY(2px)!important}
#app .zw209-heat-3 .zw209-oven-food{opacity:1!important;transform:scale(1) translateY(0)!important}
#app .zw209-oven-work.zw209-baking{filter:drop-shadow(0 0 9px #ffc779)!important}
#app .zw209-bake-pips{top:74%!important}
#app .zw209-oven-smoke{position:absolute!important;left:30%!important;top:17%!important;width:40%!important;height:30%!important;pointer-events:none!important}
#app .zw209-baking .zw209-oven-smoke{animation:zw209-vapor 1.5s ease-in-out infinite!important;border-radius:50%!important;box-shadow:0 -8px 21px #ffe2ab8a!important}
@keyframes zw209-vapor{50%{opacity:.8;transform:translateY(-6px)}100%{opacity:.2;transform:translateY(-16px)}}
#app .zw209 .zw209-serve-work{
 top:42%!important;height:29%!important;left:23%!important;width:54%!important;
}
#app .zw209-serving-plate{
 position:absolute!important;inset:25% 4% 0!important;
 border-radius:50%!important;background:rgba(255,249,218,.88)!important;
 outline:7px solid #deb06e!important;box-shadow:0 4px 4px #66502e75!important;pointer-events:none!important;
}
#app .zw209 .zw209-serving{
 position:absolute!important;inset:0!important;z-index:7!important;
 display:grid!important;place-items:center!important;touch-action:none!important;
 filter:drop-shadow(0 5px 3px #7550356e)!important;
}
#app .zw209-serving img{width:100%!important;height:100%!important;object-fit:contain!important;pointer-events:none!important}
#app .zw209-served-pips{
 position:absolute!important;top:75%!important;left:50%!important;
 transform:translateX(-50%)!important;display:flex!important;gap:16px!important;z-index:10!important;
}
#app .zw209 .zw209-next{
 position:absolute!important;left:50%!important;bottom:3%!important;
 transform:translateX(-50%)!important;
 width:clamp(94px,26vw,136px)!important;height:auto!important;aspect-ratio:1!important;
 z-index:11!important;display:grid!important;justify-items:center!important;align-items:center!important;
 filter:drop-shadow(0 5px 3px #744d356f)!important;
}
#app .zw209-next img{width:100%!important;height:100%!important;object-fit:contain!important}
#app .zw209-next span{display:none!important}
.zw209-ghost{
 position:fixed!important;z-index:99998!important;
 width:clamp(65px,16vw,100px)!important;height:clamp(65px,16vw,100px)!important;
 object-fit:contain!important;transform:translate(-50%,-50%)!important;
 filter:drop-shadow(0 5px 4px #6a482a80)!important;
 pointer-events:none!important;touch-action:none!important;
}
.zw209-burst{
 position:fixed!important;z-index:99999!important;width:clamp(13px,4vw,22px)!important;height:clamp(13px,4vw,22px)!important;
 object-fit:contain!important;pointer-events:none!important;
 animation:zw209-confetti .75s ease-out both!important;
}
@keyframes zw209-confetti{
 from{opacity:0;transform:translate(-50%,-50%) scale(.2)}
 20%{opacity:1;transform:translate(-50%,-50%) scale(1)}
 to{opacity:0;transform:translate(calc(-50% + var(--bx)),calc(-50% + var(--by))) rotate(32deg) scale(.4)}
}
/* On a wide iPhone the illustrated background switches to Zahlenjagd's own
   landscape painting; proportions and the tactile objects remain independent. */
@media(orientation:landscape){
 #app .zw209{background-image:url('/hunt-v189/meadow-landscape.webp')!important;background-position:center center!important}
 #app .zw209-top{height:25%!important}
 #app .zw209-title{
  top:1%!important;width:36%!important;max-width:360px!important;
  transform:translateX(-50%)!important;
 }
 #app .zw209 .zw209-home{
  width:clamp(46px,11dvh,65px)!important;height:clamp(46px,11dvh,65px)!important;
  right:max(9px,env(safe-area-inset-right))!important;top:5px!important;
 }
 #app .zw209 .zw209-reset{
  width:clamp(37px,9dvh,49px)!important;height:clamp(37px,9dvh,49px)!important;
  top:calc(8px + clamp(45px,11dvh,65px))!important;
 }
 #app .zw209-stage-sign{top:19%!important;width:42%!important;height:17%!important}
 #app .zw209-stage-sign span{font-size:clamp(16px,5dvh,24px)!important}
 #app .zw209-table{height:34%!important}
 #app .zw209 .zw209-friend{width:clamp(108px,31dvh,164px)!important;bottom:12%!important}
 #app .zw209 .zw209-moritz{left:12%!important}
 #app .zw209 .zw209-igor{right:10%!important}
 #app .zw209-choices{
  top:35%!important;left:32%!important;width:36%!important;height:57%!important;
  gap:2px 9px!important;
 }
 #app .zw209 .zw209-choice{width:clamp(72px,23dvh,105px)!important;min-width:67px!important;min-height:67px!important}
 #app .zw209-clue{
  top:34%!important;left:38%!important;width:26%!important;height:20%!important;
 }
 #app .zw209-clue-icons img{width:clamp(33px,10dvh,57px)!important}
 #app .zw209-work,
 #app .zw209-mix .zw209-work,
 #app .zw209-bake .zw209-work{
  top:35%!important;left:38%!important;width:24%!important;height:47%!important;
 }
 #app .zw209-collect .zw209-work{top:47%!important;height:37%!important}
 #app .zw209-tray{
  left:34%!important;bottom:1%!important;width:32%!important;height:31%!important;
  grid-template-columns:repeat(8,minmax(0,1fr))!important;grid-template-rows:1fr!important;
  gap:2px!important;
 }
 #app .zw209 .zw209-ing{width:clamp(39px,11dvh,61px)!important;height:clamp(39px,11dvh,61px)!important;min-width:37px!important;min-height:37px!important;border-width:2px!important}
 #app .zw209-mix .zw209-work{top:40%!important;height:43%!important}
 #app .zw209-pips{top:79%!important;gap:7px!important}
 #app .zw209-pips span{width:18px!important;height:18px!important;border-width:3px!important}
 #app .zw209 .zw209-tool{
  left:83%!important;bottom:7%!important;
  width:clamp(78px,25dvh,105px)!important;height:clamp(78px,25dvh,105px)!important;
 }
 #app .zw209 .zw209-oven-work{top:37%!important;left:40%!important;width:20%!important;height:50%!important}
 #app .zw209-bake-pips{top:80%!important}
 #app .zw209 .zw209-serve-work{top:38%!important;left:40%!important;width:20%!important;height:49%!important}
 #app .zw209-served-pips{top:85%!important}
 #app .zw209 .zw209-next{
  left:83%!important;bottom:6%!important;width:clamp(77px,24dvh,112px)!important;
 }
}
@media(orientation:portrait) and (max-height:610px){
 #app .zw209-title{top:33%!important;width:76%!important}
 #app .zw209-stage-sign{top:24%!important;height:10%!important}
 #app .zw209-choices{top:34%!important;height:41%!important}
 #app .zw209 .zw209-choice{width:clamp(70px,24vw,91px)!important;min-width:65px!important;min-height:65px!important}
 #app .zw209-tray{height:23%!important}
 #app .zw209 .zw209-ing{width:clamp(44px,14vw,60px)!important;height:clamp(44px,14vw,60px)!important;min-width:43px!important;min-height:43px!important}
 #app .zw209 .zw209-tool{bottom:1%!important;width:clamp(76px,24vw,108px)!important;height:clamp(76px,24vw,108px)!important}
}
@media(prefers-reduced-motion:reduce){
 #app .zw209 *{animation-duration:.01ms!important;transition-duration:.01ms!important}
 .zw209-burst{display:none!important}
}/* v209 precision layout refinements after full in-browser visual inspection. */
#app .zw209 .zw209-choice{
 animation:none!important;
}
#app .zw209 .zw209-choice img{
 animation:zw209-choice-bob 3.2s ease-in-out infinite!important;
}
#app .zw209 .zw209-choice:nth-child(2n) img{animation-delay:-1.4s!important}
#app .zw209 .zw209-choice:nth-child(3n) img{animation-delay:-2.1s!important}
#app .zw209 .zw209-friend{
 width:clamp(119px,34vw,158px)!important;
 bottom:17.5%!important;
}
#app .zw209 .zw209-table{height:25%!important}
#app .zw209-stage-sign span{
 font-size:clamp(17px,5.4vw,25px)!important;
}
@media(orientation:landscape){
 #app .zw209 .zw209-friend{
  width:clamp(115px,35dvh,160px)!important;
  bottom:10%!important;
 }
 #app .zw209 .zw209-table{height:30%!important}
 #app .zw209-stage-sign span{font-size:clamp(17px,4.8dvh,24px)!important}
}
@media(prefers-reduced-motion:reduce){
 #app .zw209 .zw209-choice img{animation:none!important}
}/* Stable child-sized touch surfaces; animate the crayon pictures, not hitboxes. */
#app .zw209 .zw209-ing.zw209-needed{animation:none!important;scale:1!important}
#app .zw209 .zw209-ing.zw209-needed img{
 animation:zw209-needed-art 1.45s ease-in-out infinite!important;
}
@keyframes zw209-needed-art{
 0%,100%{transform:scale(1)}
 50%{transform:scale(1.07)}
}
@media(prefers-reduced-motion:reduce){
 #app .zw209 .zw209-ing.zw209-needed img{animation:none!important}
}/* v209 landscape corrections: no sign overlap, no controls on Igor, 3-year-old hit targets. */
@media(orientation:landscape){
 #app .zw209-title{width:27%!important;max-width:248px!important;top:1%!important}
 #app .zw209-stage-sign{top:22%!important;width:34%!important;height:16%!important}
 #app .zw209 .zw209-tool{
  left:27%!important;bottom:5%!important;
  width:clamp(82px,24dvh,108px)!important;height:clamp(82px,24dvh,108px)!important;
 }
 #app .zw209 .zw209-next{
  left:68%!important;bottom:5%!important;
  width:clamp(72px,21dvh,96px)!important;
 }
 #app .zw209-tray{
  left:31%!important;bottom:0%!important;width:38%!important;height:29%!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,minmax(0,1fr))!important;gap:1px 5px!important;
 }
 #app .zw209 .zw209-ing{
  width:clamp(47px,13.2dvh,60px)!important;height:clamp(47px,13.2dvh,60px)!important;
  min-width:46px!important;min-height:46px!important;
 }
 #app .zw209-collect .zw209-work{
  top:38%!important;height:36%!important;
 }
 #app .zw209-clue{
  top:36%!important;height:16%!important;
 }
}
@media(orientation:landscape) and (max-height:375px){
 #app .zw209 .zw209-ing{width:46px!important;height:46px!important;min-width:44px!important;min-height:44px!important}
 #app .zw209-stage-sign span{font-size:17px!important}
}/* Final landscape collect composition: separate wood labels and bowl,
   keep all eight ingredient buttons inside the safe-area. */
@media(orientation:landscape){
 #app .zw209-collect .zw209-stage-sign{top:16%!important;height:14%!important}
 #app .zw209-collect .zw209-clue{top:32%!important;height:16%!important}
 #app .zw209-collect .zw209-work{top:49%!important;height:27%!important}
 #app .zw209-collect .zw209-tray{bottom:4.5%!important;height:27%!important}
}/* Small phones: Moritz and Igor stay visible below the recipe artwork. */
@media(orientation:portrait) and (max-height:650px){
 #app .zw209-choose .zw209-friend{
  width:clamp(103px,31vw,118px)!important;
  bottom:5.5%!important;
 }
 #app .zw209-choose .zw209-choices{
  top:33.5%!important;height:38%!important;
 }
}
/* v210: Hand-drawn art always fully inside toddler-sized buttons. */
#app .zw209 .zw209-choice{
  padding:4%!important;box-sizing:border-box!important;overflow:visible!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
}
#app .zw209 .zw209-choice img{
  width:100%!important;height:100%!important;object-fit:contain!important;
  object-position:center center!important;display:block!important;
}
#app .zw209 .zw209-ing{padding:5%!important;box-sizing:border-box!important;overflow:visible!important}
#app .zw209 .zw209-ing img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center center!important}
#app .zw209 .zw209-tool{padding:7%!important;box-sizing:border-box!important;overflow:visible!important}
#app .zw209 .zw209-tool img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center center!important}
#app .zw209 .zw209-mix-work{touch-action:none!important;user-select:none!important;-webkit-user-select:none!important}
#app .zw209 .zw209-whisk-in{
  position:absolute!important;z-index:7!important;left:50%!important;top:25%!important;
  width:67%!important;height:63%!important;object-fit:contain!important;
  transform:translate(calc(-50% + var(--wx,0px)),var(--wy,0px)) rotate(var(--zw210-spin,-23deg))!important;
  transform-origin:50% 59%!important;
  filter:drop-shadow(0 4px 2px #65503c59)!important;pointer-events:none!important;
}
#app .zw209-ready:not(.zw210-stirring):not(.zw210-finished) .zw209-whisk-in{
  animation:zw210-whisk-wiggle 1.65s ease-in-out infinite!important;
}
@keyframes zw210-whisk-wiggle{
  0%,100%{rotate:-13deg;translate:0 0}
  50%{rotate:19deg;translate:0 -3px}
}
#app .zw210-stirring .zw209-whisk-in{animation:none!important}
#app .zw210-finished .zw209-whisk-in{
  animation:zw210-whisk-celebrate .5s ease-in-out 1!important;
}
@keyframes zw210-whisk-celebrate{50%{scale:1.16;rotate:85deg}}
#app .zw209-baking .zw209-oven{
  animation:zw210-oven-bake .84s ease-in-out 4!important;
}
@keyframes zw210-oven-bake{0%,100%{translate:0 0;scale:1}50%{translate:0 -3px;scale:1.025}}
#app .zw209-heat-1 .zw209-oven-food,
#app .zw209-heat-2 .zw209-oven-food,
#app .zw209-heat-3 .zw209-oven-food{animation:zw210-food-rise 1.2s ease-in-out infinite alternate!important}
@keyframes zw210-food-rise{to{translate:0 -6px;scale:1.07}}
@media(orientation:portrait){
  #app .zw209-choose .zw209-choices{top:31%!important;height:36%!important}
}
@media(orientation:landscape){
  #app .zw209-choose .zw209-choices{top:30%!important;height:45%!important}
}
@media(prefers-reduced-motion:reduce){
  #app .zw209 .zw209-whisk-in,#app .zw209 .zw209-oven,
  #app .zw209 .zw209-oven-food{animation:none!important}
}

/* v210 touch target stability: animate the artwork, never the button's hitbox. */
#app .zw209 .zw209-tool{animation:none!important;translate:0 0!important}
#app .zw209 .zw209-tool img{animation:zw210-tool-picture 2.1s ease-in-out infinite!important}
@keyframes zw210-tool-picture{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-3px) rotate(-5deg)}}
#app .zw209 .zw209-tool.zw209-dragging img{animation:none!important}
@media(prefers-reduced-motion:reduce){#app .zw209 .zw209-tool img{animation:none!important}}

/* v210 measured in rendered iPhone screenshots: prevent percentage padding shrinking artwork. */
#app .zw209 .zw209-choice{padding:2px!important}
#app .zw209 .zw209-ing{padding:3px!important}
#app .zw209 .zw209-tool{padding:3px!important}
#app .zw209 .zw209-tool img{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important}

/* v210 landscape: recipe drawings stay below the wooden stage sign. */
@media(orientation:landscape){
 #app .zw209-choose .zw209-choices{top:36%!important;height:35%!important}
 #app .zw209-choose .zw209-choice{width:clamp(64px,18dvh,76px)!important;min-width:62px!important;min-height:62px!important}
}

/* Version 211: A truly illustrated, layered stirring action with clean transparent WebP art.
   The actual game uses image elements and DOM pointer interactions, never Canvas. */
#app .zw209-mix-work{overflow:visible!important;touch-action:none!important}
#app .zw209 .zw211-whisk-holder{
 position:absolute!important;left:51%!important;top:-8%!important;
 width:43%!important;height:91%!important;z-index:7!important;
 display:flex!important;justify-content:center!important;align-items:center!important;
 pointer-events:none!important;
 transform-origin:50% 79%!important;
 animation:zw211-stirring 1.15s ease-in-out infinite!important;
}
#app .zw209 .zw211-whisk-art{
 display:block!important;width:100%!important;height:100%!important;
 object-fit:contain!important;object-position:center!important;
 filter:drop-shadow(1px 3px 1px rgba(93,55,30,.22))!important;
 pointer-events:none!important;
}
#app .zw209 .zw211-bowl-front{
 position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
 object-fit:contain!important;z-index:8!important;pointer-events:none!important;
}
#app .zw209-mix-work .zw209-drop{z-index:9!important;pointer-events:none!important}
#app .zw209-mix-work .zw209-bowl{z-index:4!important}
#app .zw209 .zw209-swirl-ring{display:none!important}
@keyframes zw211-stirring{
 0%,100%{transform:translateX(-50%) translate(-14px,-6px) rotate(-14deg)}
 25%{transform:translateX(-50%) translate(7px,3px) rotate(6deg)}
 50%{transform:translateX(-50%) translate(15px,-2px) rotate(14deg)}
 75%{transform:translateX(-50%) translate(-5px,5px) rotate(-3deg)}
}
#app .zw209-mix-work.zw211-finger-stir .zw211-whisk-holder{
 animation-duration:.8s!important;
}
#app .zw209-mix-work.zw211-mix-finished .zw211-whisk-holder{
 animation:zw211-finish .57s ease-in forwards!important;
}
@keyframes zw211-finish{
 to{transform:translateX(-50%) translateY(-28px) rotate(18deg) scale(.94)}
}
/* Baked-in crayon symbols are never stretched or clipped by their circular controls. */
#app .zw209 .zw209-tool img,#app .zw209 .zw209-ing img,
#app .zw209 .zw209-choice img{object-fit:contain!important;object-position:50% 50%!important}
@media(prefers-reduced-motion:reduce){
 #app .zw209 .zw211-whisk-holder{animation:none!important;transform:translateX(-50%)!important}
}

#app .zw209 .zw211-whisk-holder{top:-18%!important;width:47%!important}


/* Backstube v212: REAL stirring - image layers driven by animation frames. */
#app .zw209 .zw211-whisk-holder{
  top:-18%!important;
  animation:none!important;
  will-change:transform;
  transform:translateX(-50%)!important;
}
#app .zw209 .zw212-batter-motion{
 position:absolute!important;inset:0!important;
 width:100%!important;height:100%!important;object-fit:contain!important;
 transform-origin:55% 37%!important;
 will-change:transform!important;z-index:5!important;pointer-events:none!important;
}
#app .zw209 .zw211-bowl-front{z-index:8!important}
#app .zw209 .zw212-cheer{
 position:absolute!important;inset:0!important;z-index:2!important;opacity:0!important;
 width:100%!important;height:100%!important;object-fit:contain!important;
 transition:opacity .2s ease!important;pointer-events:none!important;
}
#app .zw209 .zw212-base{width:100%!important;height:100%!important;object-fit:contain!important}
#app .zw209 .zw212-delighted .zw212-cheer{opacity:1!important}
#app .zw209 .zw212-delighted .zw212-base{opacity:0!important}
#app .zw209 .zw212-waiting img.zw212-base{animation:zw212-wait .62s ease-in-out infinite!important}
#app .zw209 .zw212-chewing img.zw212-base{
 animation:zw212-chew .31s ease-in-out infinite!important;
 transform-origin:53% 36%!important;
}
#app .zw209 .zw212-delighted img.zw212-cheer{animation:zw212-cheer-bounce 1.2s ease-in-out 1!important}
@keyframes zw212-wait{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-8px) rotate(-4deg)}}
@keyframes zw212-chew{
 0%,100%{transform:translateY(0px) scaleY(1) rotate(-1deg)}
 50%{transform:translateY(3px) scaleY(.955) rotate(2deg)}
}
@keyframes zw212-cheer-bounce{
 0%,100%{transform:translateY(0) scale(1)}
 28%{transform:translateY(-15px) scale(1.06)}
 52%{transform:translateY(0px) scale(.97)}
 75%{transform:translateY(-8px) scale(1.03)}
}
.zw212-bite-flight{
 position:fixed!important;z-index:99992!important;pointer-events:none!important;
 width:clamp(73px,19vw,112px)!important;height:clamp(73px,19vw,112px)!important;
 object-fit:contain!important;transform:translate(-50%,-50%);
 filter:drop-shadow(0 3px 2px #6b4e3266)!important;will-change:left,top,transform;
}
.zw212-crumb{
 position:fixed!important;width:clamp(10px,2.7vw,19px)!important;
 height:clamp(10px,2.7vw,19px)!important;object-fit:contain!important;
 z-index:99993!important;pointer-events:none!important;
}
@media(prefers-reduced-motion:reduce){
 #app .zw209 .zw212-chewing img,#app .zw209 .zw212-delighted img,
 #app .zw209 .zw212-waiting img{animation:none!important}
}

/* v212 visual QA: the batter is now a 24-frame painted WebP with a STATIC bowl rim.
   Each hand-drawn dough frame is warped only inside the original dough oval. */
#app .zw209 .zw211-whisk-holder{transform:translateX(-50%)!important}
#app .zw209 .zw212-delighted .zw212-cheer{
 width:122%!important;height:122%!important;max-width:none!important;
 left:-11%!important;top:-8%!important;
}
#app .zw209 .zw212-portions-1 .zw209-serving img{
 transform:scale(.70) rotate(-5deg)!important;opacity:.82!important;
}
#app .zw209 .zw212-portions-2 .zw209-serving img{
 transform:scale(.2)!important;opacity:0!important;
}
#app .zw209 .zw209-serving img{
 transition:transform .48s ease,opacity .48s ease!important;
}

/* When both friends have eaten, the finished plate disappears rather than
   displaying the same full meal. Hand-painted hearts celebrate the two bites. */
#app .zw209 .zw212-portions-2 .zw209-serving-plate{
 opacity:0!important;transform:scale(.72)!important;
 transition:opacity .55s ease,transform .55s ease!important;
}
#app .zw209 .zw212-finale-hearts{
 position:absolute!important;left:50%!important;top:48%!important;
 transform:translateX(-50%)!important;
 width:clamp(130px,37vw,230px)!important;height:clamp(55px,11vh,95px)!important;
 display:flex!important;align-items:center!important;justify-content:space-around!important;
 z-index:9!important;pointer-events:none!important;
}
#app .zw209 .zw212-finale-hearts img{
 width:31%!important;height:75%!important;object-fit:contain!important;
 filter:drop-shadow(0 3px 2px rgba(105,55,60,.2))!important;
 animation:zw212-floating-heart 1.85s ease-in-out infinite alternate!important;
}
#app .zw209 .zw212-finale-hearts img:nth-child(2){animation-delay:-.63s!important}
#app .zw209 .zw212-finale-hearts img:nth-child(3){animation-delay:-1.26s!important}
@keyframes zw212-floating-heart{
 from{transform:translateY(4px) rotate(-9deg) scale(.9)}
 to{transform:translateY(-14px) rotate(10deg) scale(1.09)}
}
@media(orientation:landscape){
 #app .zw209 .zw212-finale-hearts{top:43%!important;left:50%!important;height:26%!important}
}
@media(prefers-reduced-motion:reduce){
 #app .zw209 .zw212-finale-hearts img{animation:none!important}
}

/* v213 six bespoke colored-pencil food paintings are now REAL game images,
   not CSS/Canvas art. Recipe buttons reuse the hand-painted plate rim. */
#app .zw209 .zw209-choice img.zw213-recipe-icon{
 width:100%!important;height:100%!important;object-fit:contain!important;
 object-position:center!important;filter:drop-shadow(0 3px 1px rgba(90,65,30,.16))!important;
}
#app .zw209-gather img.zw213-bowl-state{
 width:100%!important;height:100%!important;object-fit:contain!important;
 animation:zw213-bowl-added .4s cubic-bezier(.25,.65,.25,1) both!important;
}
@keyframes zw213-bowl-added{
 0%{transform:scale(.955) translateY(3px)}
 60%{transform:scale(1.045) translateY(-3px)}
 100%{transform:scale(1) translateY(0)}
}
/* The serving plate is also a genuine colored-pencil illustration. */
#app .zw209 .zw209-serving-plate{
 background:transparent url('/bakery-v229/recipe-plate-blank.webp') center center / contain no-repeat!important;
 outline:0!important;box-shadow:none!important;border:0!important;
 border-radius:0!important;inset:3% 0 0!important;
}
#app .zw209 .zw209-serving img{
 width:79%!important;height:79%!important;object-fit:contain!important;
 object-position:center!important;
}
#app .zw209 .zw209-oven-food img{object-fit:contain!important}
#app .zw209 .zw209-serving.zw213-serving-flash img{
 animation:zw213-serving-appearance .5s ease-out both!important;
}
@keyframes zw213-serving-appearance{0%{opacity:.5;scale:.85}100%{opacity:1;scale:1}}
@media(prefers-reduced-motion:reduce){
 #app .zw209-gather img.zw213-bowl-state{animation:none!important}
}

/* 214: hand-count clue: finger amount, numeral on the palm, then exactly
   that number of painted ingredient illustrations. Responsive without canvas. */
#app .zw209 .zw214-clue{
 gap:clamp(3px,1.2vw,9px)!important;
 justify-content:center!important;
 align-items:center!important;
 padding:4px 14px!important;
 box-sizing:border-box!important;
 overflow:visible!important;
}
#app .zw209 .zw214-hand{
 position:relative!important;flex:0 0 auto!important;
 display:flex!important;align-items:center!important;justify-content:center!important;
 height:96%!important;width:clamp(56px,19%,94px)!important;
 min-width:48px!important;
}
#app .zw209 .zw214-hand-art{
 display:block!important;max-width:100%!important;width:100%!important;
 height:100%!important;object-fit:contain!important;object-position:center center!important;
 filter:drop-shadow(0 2px 1px rgba(86,49,29,.25))!important;
}
#app .zw209 .zw214-hand-number{
 position:absolute!important;left:52%!important;top:68%!important;
 transform:translate(-50%,-50%) rotate(-6deg)!important;
 color:#623416!important;
 font-family:'Segoe Print','Comic Neue',cursive!important;
 font-size:clamp(22px,4.8vw,34px)!important;line-height:1!important;
 font-weight:900!important;
 -webkit-text-stroke:.35px #fff2d3!important;
 text-shadow:1px 1px 0 #fff3c9,0 0 3px #fff3c9!important;
 pointer-events:none!important;
}
#app .zw209 .zw214-remaining-icons{
 display:flex!important;flex:0 1 auto!important;min-width:0!important;
 height:82%!important;align-items:center!important;
 justify-content:center!important;gap:2px!important;
}
#app .zw209 .zw214-remaining-icons img.zw214-ingredient-icon{
 display:block!important;flex:0 1 auto!important;min-width:0!important;
 width:clamp(39px,11vw,65px)!important;height:100%!important;
 max-width:27%!important;
 object-fit:contain!important;object-position:center center!important;
 opacity:1!important;transform:none!important;
 filter:drop-shadow(0 2px 1px rgba(88,52,30,.2))!important;
}
@media(orientation:portrait) {
 #app .zw209 .zw214-clue{
  left:9%!important;width:82%!important;
  top:32%!important;height:15.5%!important;
 }
 #app .zw209 .zw214-hand{
  width:clamp(56px,24%,102px)!important;
 }
 #app .zw209 .zw214-hand-number{
  font-size:clamp(23px,6vw,36px)!important;
 }
 #app .zw209 .zw214-remaining-icons img.zw214-ingredient-icon{
  width:clamp(39px,14vw,67px)!important;
 }
}
@media(orientation:landscape){
 #app .zw209-collect .zw214-clue{
  left:34%!important;width:32%!important;
  top:30.5%!important;height:21.5%!important;
  padding:2px 6px!important;gap:1px!important;
 }
 #app .zw209 .zw214-hand{width:clamp(34px,19%,58px)!important;min-width:31px!important}
 #app .zw209 .zw214-hand-number{font-size:clamp(15px,4dvh,23px)!important}
 #app .zw209 .zw214-remaining-icons{gap:0!important;height:90%!important}
 #app .zw209 .zw214-remaining-icons img.zw214-ingredient-icon{
  width:clamp(25px,7dvh,40px)!important;
 }
}
@media(orientation:landscape) and (max-height:375px){
 #app .zw209-collect .zw214-clue{top:29.5%!important;height:22.5%!important}
}
@media(prefers-reduced-motion:reduce){
 #app .zw209 .zw214-hand{animation:none!important}
}

/* v214 visual QA: keep EACH remaining ingredient large (never relative to shrinking group). */
#app .zw209 .zw214-hand-number{
 top:54%!important;
 text-shadow:-1px -1px 0 #fff4d3,1px 1px 0 #fff4d3,0 0 3px #ffebbd!important;
}
#app .zw209 .zw214-remaining-icons{
 flex:0 1 auto!important;width:auto!important;max-width:72%!important;
 gap:clamp(2px,.7vw,6px)!important;
}
#app .zw209 .zw214-remaining-icons img.zw214-ingredient-icon{
 flex:0 0 clamp(41px,11.6vw,62px)!important;
 width:clamp(41px,11.6vw,62px)!important;
 min-width:41px!important;max-width:none!important;
}
@media(orientation:portrait){
 #app .zw209 .zw214-remaining-icons img.zw214-ingredient-icon{
  flex-basis:clamp(43px,13.2vw,62px)!important;
  width:clamp(43px,13.2vw,62px)!important;
 }
}
@media(orientation:landscape){
 #app .zw209 .zw214-remaining-icons{max-width:75%!important;gap:1px!important}
 #app .zw209 .zw214-remaining-icons img.zw214-ingredient-icon{
  flex-basis:clamp(31px,9.2dvh,44px)!important;
  width:clamp(31px,9.2dvh,44px)!important;
  min-width:30px!important;
 }
 #app .zw209 .zw214-hand-number{top:55%!important}
}

/* v215 high-contrast numbers are baked into 480px wax-crayon art: no fuzzy CSS glyphs */
#app .zw209 .zw214-hand-number{display:none!important}
#app .zw209 .zw214-hand-art{
  image-rendering:auto!important;filter:none!important;
  width:100%!important;height:100%!important;
  object-fit:contain!important;
}
#app .zw209 .zw214-hand{
 width:clamp(77px,26%,105px)!important;min-width:74px!important;
 height:108%!important;transform:none!important;transition:none!important;
}
#app .zw209 .zw214-clue{gap:clamp(4px,1vw,9px)!important}
#app .zw209 .zw214-remaining-icons img.zw214-ingredient-icon{
 transition:none!important;filter:none!important;
}
#app .zw209 .zw214-clue,#app .zw209 .zw214-remaining-icons{filter:none!important}
#app .zw209 .zw214-clue{contain:layout style!important}
#app .zw209 .zw213-bowl-state{animation:none!important;transition:none!important}
@media(orientation:landscape){
 #app .zw209 .zw214-hand{width:clamp(44px,21%,72px)!important;min-width:43px!important;height:110%!important}
 #app .zw209-collect .zw214-clue{height:23%!important;top:29.8%!important}
}
@media(orientation:portrait) and (max-width:360px){
 #app .zw209 .zw214-hand{width:71px!important;min-width:68px!important}
 #app .zw209 .zw214-remaining-icons img.zw214-ingredient-icon{
  width:clamp(40px,13vw,48px)!important;flex-basis:clamp(40px,13vw,48px)!important}
}

/* v216: each raster illustration is normalized to an exactly centered 300x300
   transparent circle. The button chrome does NOT move; only art pixels are fixed. */
#app .zw209 .zw209-choice,#app .zw209 .zw209-ing,#app .zw209 .zw209-tool{
 align-items:center!important;justify-content:center!important;
 padding:2px!important;box-sizing:border-box!important;
}
#app .zw209 .zw209-choice img.zw213-recipe-icon,
#app .zw209 .zw209-ing img,
#app .zw209 .zw209-tool img{
 width:100%!important;height:100%!important;
 object-fit:contain!important;object-position:50% 50%!important;
 margin:0!important;padding:0!important;
 transform:none;
}
#app .zw209 .zw209-ing img{pointer-events:none!important}
#app .zw209 .zw209-choice img.zw213-recipe-icon{filter:none!important}
#app .zw209 .zw209-tool.zw209-dragging img{animation:none!important}
@media(prefers-reduced-motion:reduce){
 #app .zw209 .zw209-choice img,#app .zw209 .zw209-ing img,#app .zw209 .zw209-tool img{
  animation:none!important;transition:none!important;
 }
}

/* v216 visual-QA fix: centered independent of intrinsic image dimensions.
   Keep button hitboxes fixed; move only their image layer. */
#app .zw209 .zw209-choice,#app .zw209 .zw209-ing,#app .zw209 .zw209-tool{
 position:relative!important;
}
#app .zw209 .zw209-choice > img,
#app .zw209 .zw209-ing > img,
#app .zw209 .zw209-tool > img{
 position:absolute!important;
 display:block!important;
 left:50%!important;
 top:50%!important;
 translate:-50% -50%!important;
 width:calc(100% - 4px)!important;
 height:calc(100% - 4px)!important;
 max-width:none!important;max-height:none!important;
 margin:0!important;padding:0!important;
 object-fit:contain!important;
 object-position:50% 50%!important;
 flex:none!important;
 pointer-events:none!important;
}

/* v218: two visible navigation controls in a separate horizontal row,
   leaving the painted title and draggable whisk completely unobstructed. */
#app .zw209 .zw209-home,
#app .zw209 .zw209-reset{
 top:max(6px,env(safe-area-inset-top))!important;
 width:clamp(58px,16vw,66px)!important;height:clamp(58px,16vw,66px)!important;
 min-width:58px!important;min-height:58px!important;
 border:0!important;padding:0!important;
 position:absolute!important;z-index:22!important;
 transform:none!important;
 display:flex!important;align-items:center!important;justify-content:center!important;
 overflow:visible!important;
}
#app .zw209 .zw209-home{right:max(9px,env(safe-area-inset-right))!important}
#app .zw209 .zw209-reset{
 right:calc(max(9px,env(safe-area-inset-right)) + clamp(58px,16vw,66px) + 9px)!important;
}
#app .zw209 .zw209-home img,
#app .zw209 .zw209-reset img{
 position:absolute!important;left:50%!important;top:50%!important;
 translate:-50% -50%!important;
 width:100%!important;height:100%!important;
 max-width:none!important;max-height:none!important;
 object-fit:contain!important;object-position:center!important;
 margin:0!important;padding:0!important;pointer-events:none!important;
}
#app .zw209-mix .zw209-tool.zw209-whisk-tool,
#app .zw209-bake .zw209-tool.zw209-tray-tool{
 position:absolute!important;
 top:auto!important;bottom:9%!important;
 left:50%!important;right:auto!important;
 transform:translateX(-50%)!important;
 translate:0 0!important;
 width:clamp(112px,29vw,132px)!important;
 height:clamp(112px,29vw,132px)!important;
 min-width:105px!important;min-height:105px!important;
 padding:0!important;
 z-index:13!important;
 overflow:visible!important;
 animation:none!important;
 touch-action:none!important;
}
#app .zw209-mix .zw209-tool.zw209-whisk-tool > img,
#app .zw209-bake .zw209-tool.zw209-tray-tool > img{
 position:absolute!important;
 left:50%!important;top:50%!important;translate:-50% -50%!important;
 width:100%!important;height:100%!important;
 object-fit:contain!important;object-position:center!important;
 padding:0!important;margin:0!important;
 pointer-events:none!important;
 animation:zw218-tool-welcome 1.9s ease-in-out infinite!important;
}
@keyframes zw218-tool-welcome {
  0%,100%{scale:1}
  50%{scale:1.055}
}
#app .zw209-gather .zw213-bowl-state.zw218-bowl-pop{
 animation:zw218-fill-pop .28s cubic-bezier(.2,.7,.3,1) both!important;
}
@keyframes zw218-fill-pop{0%{scale:.975}55%{scale:1.025}100%{scale:1}}
#app .zw209-gather .zw218-bowl-outgoing{
 position:absolute!important;inset:0!important;
 width:100%!important;height:100%!important;object-fit:contain!important;
 z-index:7!important;opacity:0!important;
 pointer-events:none!important;animation:zw218-fade-out .29s ease-out both!important;
}
@keyframes zw218-fade-out{0%{opacity:1}100%{opacity:0}}
@media(orientation:landscape){
 #app .zw209 .zw209-home,#app .zw209 .zw209-reset{
  top:5px!important;width:clamp(54px,13dvh,64px)!important;
  height:clamp(54px,13dvh,64px)!important;
  min-width:54px!important;min-height:54px!important;
 }
 #app .zw209 .zw209-reset{
  right:calc(max(9px,env(safe-area-inset-right)) + clamp(54px,13dvh,64px) + 9px)!important;
 }
 #app .zw209-mix .zw209-tool.zw209-whisk-tool,
 #app .zw209-bake .zw209-tool.zw209-tray-tool{
  left:71%!important;bottom:7%!important;top:auto!important;
  width:clamp(84px,24dvh,104px)!important;height:clamp(84px,24dvh,104px)!important;
  min-width:84px!important;min-height:84px!important;
 }
}
@media(prefers-reduced-motion:reduce){
 #app .zw209-mix .zw209-tool.zw209-whisk-tool > img,
 #app .zw209-bake .zw209-tool.zw209-tray-tool > img,
 #app .zw209-gather .zw213-bowl-state.zw218-bowl-pop,
 #app .zw209-gather .zw218-bowl-outgoing{
  animation:none!important;
 }
}

/* Short-screen iPhone / compact Safari: whisk stays BELOW progress pips. */
@media(orientation:portrait) and (max-height:650px){
 #app .zw209-mix .zw209-tool.zw209-whisk-tool,
 #app .zw209-bake .zw209-tool.zw209-tray-tool{
  bottom:1%!important;
  top:auto!important;
  width:clamp(95px,30vw,108px)!important;
  height:clamp(95px,30vw,108px)!important;
  min-width:95px!important;min-height:95px!important;
 }
 #app .zw209-title{
  width:58%!important;top:47%!important;
 }
}

/* v219: the hand-drawn bowl is FIXED. Only a precisely registered PNG/WebP
   illustration of the batter surface changes. No Canvas or vector fake assets. */
#app .zw209 .zw219-bowl-stack{
 position:relative!important;width:100%!important;height:100%!important;
 display:block!important;overflow:visible!important;
}
#app .zw209 .zw219-bowl-stack > img{
 display:block!important;position:absolute!important;
 inset:0!important;width:100%!important;height:100%!important;
 object-fit:contain!important;object-position:50% 50%!important;
 margin:0!important;padding:0!important;
 pointer-events:none!important;
 transform:none!important;scale:1!important;
 animation:none!important;transition:none!important;
}
#app .zw209 .zw219-bowl-shell{
 z-index:2!important;
 filter:drop-shadow(0 7px 4px #3a663c65)!important;
}
#app .zw209 .zw219-bowl-fill{
 z-index:3!important;filter:none!important;
 will-change:opacity!important;
}
#app .zw209 .zw219-bowl-front{
 z-index:4!important;filter:none!important;
}
#app .zw209 .zw219-bowl-stack > .zw209-drop{
 z-index:6!important;
}
#app .zw209 .zw218-bowl-outgoing{display:none!important}
#app .zw209 .zw213-bowl-state.zw218-bowl-pop{animation:none!important}
/* v219: keep oven movement alive through the entire baking phase. */
#app .zw209-bake .zw209-oven-work.zw209-baking .zw209-oven{
 animation:zw219-oven-breath 1.45s ease-in-out infinite!important;
}
@keyframes zw219-oven-breath{
 0%,100%{translate:0 0}
 50%{translate:0 -2px}
}
@media(prefers-reduced-motion:reduce){
 #app .zw209-bake .zw209-oven-work.zw209-baking .zw209-oven{
  animation:none!important;
 }
}

/* 220: remove every duplicate pale CSS disc or ring beneath the painted
   recipe/ingredient/tool pictures. Large touch targets remain intact. */
#app .zw209 .zw209-choice,
#app .zw209 .zw209-ing,
#app .zw209 .zw209-tool{
 background:transparent!important;
 background-image:none!important;
 border:0!important;
 outline:0!important;
 box-shadow:none!important;
 border-radius:50%!important;
 padding:0!important;
 min-width:48px!important;min-height:48px!important;
}
#app .zw209 .zw209-choice:before,#app .zw209 .zw209-choice:after,
#app .zw209 .zw209-ing:before,#app .zw209 .zw209-ing:after,
#app .zw209 .zw209-tool:before,#app .zw209 .zw209-tool:after{
 content:none!important;display:none!important;
}
#app .zw209 .zw209-ing img,
#app .zw209 .zw209-choice img.zw220-recipe-painting,
#app .zw209 .zw209-tool img.zw220-tool-painting{
 width:92%!important;height:92%!important;
 left:50%!important;top:50%!important;translate:-50% -50%!important;
 position:absolute!important;object-fit:contain!important;
 object-position:center!important;max-width:none!important;
 max-height:none!important;opacity:1!important;
 filter:drop-shadow(0 3px 3px rgba(72,51,31,.28))!important;
 margin:0!important;padding:0!important;
 pointer-events:none!important;
}
#app .zw209 .zw209-choice img.zw220-recipe-painting{
 width:99%!important;height:99%!important;
 filter:drop-shadow(0 4px 2px rgba(75,51,36,.36))!important;
 animation:zw220-tasty-float 3.2s ease-in-out infinite!important;
}
#app .zw209 .zw209-choice:nth-child(2n) img.zw220-recipe-painting{animation-delay:-.9s!important}
#app .zw209 .zw209-choice:nth-child(3n) img.zw220-recipe-painting{animation-delay:-1.9s!important}
@keyframes zw220-tasty-float{0%,100%{translate:-50% -50%;rotate:-2deg}50%{translate:-50% calc(-50% - 4px);rotate:2deg}}
#app .zw209 .zw209-ing.zw209-needed{
 background:transparent!important;border:0!important;outline:0!important;
 box-shadow:none!important;
 filter:drop-shadow(0 0 6px #fff5b1)!important;
}
#app .zw209 .zw209-ing.zw209-needed img{
 filter:drop-shadow(0 3px 2px rgba(65,42,28,.35)) drop-shadow(0 0 4px #fceba3)!important;
}
#app .zw209 .zw209-ing.zw209-wrong{background:transparent!important;border:0!important}
#app .zw209 .zw209-ing{
 filter:none!important;overflow:visible!important;
}
#app .zw209 .zw209-tool{
 filter:drop-shadow(0 4px 3px rgba(80,52,35,.36))!important;
 overflow:visible!important;
}
#app .zw209 .zw209-tool.zw209-whisk-tool > img.zw220-tool-painting,
#app .zw209 .zw209-tool.zw209-tray-tool > img.zw220-tool-painting{
 width:94%!important;height:94%!important;
}
#app .zw209 .zw209-tool:active img.zw220-tool-painting,
#app .zw209 .zw209-choice:active img.zw220-recipe-painting{
 scale:.94!important;
}
@media(prefers-reduced-motion:reduce){
 #app .zw209 .zw209-choice img.zw220-recipe-painting{
  animation:none!important;
 }
}

/* v221 - the ENTIRE Backstube takes place inside the same beautifully
   hand-painted coloured-pencil bakery. Never draw an oven into this background. */
#app .zw209 {
 background:#f4e4cb url('/bakery-v229/kitchen-portrait.webp') center center/cover no-repeat!important;
}
#app .zw209-table {display:none!important}
#app .zw209-choose .zw209-choices.zw221-choices {
 position:absolute!important;
 left:6%!important;top:36.5%!important;
 width:60%!important;height:42.5%!important;
 display:grid!important;
 grid-template-columns:repeat(2,minmax(0,1fr))!important;
 grid-template-rows:repeat(3,minmax(0,1fr))!important;
 gap:clamp(5px,1vw,13px)!important;
 align-items:center!important;justify-items:center!important;
 z-index:12!important;pointer-events:auto!important;
}
#app .zw209-choose .zw209-choice{
 min-width:56px!important;min-height:56px!important;
 width:min(100%,clamp(64px,24vw,102px))!important;
 aspect-ratio:1!important;height:auto!important;
 position:relative!important;
 background:transparent!important;outline:0!important;border:0!important;
}
#app .zw209-choose .zw221-oven-light{
 position:absolute!important;
 top:38.5%!important;left:65.2%!important;
 width:min(33%,156px)!important;height:auto!important;
 aspect-ratio:480/440!important;
 display:block!important;z-index:12!important;
 background:transparent!important;outline:0!important;
 border:0!important;padding:0!important;
 filter:drop-shadow(0 5px 4px rgba(84,50,30,.35))!important;
 pointer-events:auto!important;touch-action:manipulation!important;
 border-radius:16%!important;
 transition:filter .18s linear,transform .18s ease-out!important;
}
#app .zw209-choose .zw221-oven-light:active {transform:scale(.96)!important}
#app .zw209-choose .zw221-oven-art{
 width:100%!important;height:100%!important;
 object-fit:contain!important;object-position:center!important;
 display:block!important;pointer-events:none!important;
 filter:none!important;animation:none!important;
}
#app .zw209-choose .zw221-light-rays{
 position:absolute!important;width:25%!important;height:25%!important;
 top:13%!important;right:10%!important;
 object-fit:contain!important;
 pointer-events:none!important;
 opacity:.12!important;
 transform:scale(.7)!important;
 filter:grayscale(1)!important;
 transition:opacity .18s ease,transform .18s ease,filter .18s ease!important;
}
#app .zw209-choose .zw221-lit .zw221-light-rays{
 opacity:.96!important;transform:scale(1)!important;
 filter:drop-shadow(0 0 5px #ffc455)!important;
 animation:zw221-light-flicker 2.6s ease-in-out infinite!important;
}
@keyframes zw221-light-flicker {
 0%,100%{opacity:.9;scale:1}
 50%{opacity:1;scale:1.12}
}
#app .zw209-choose .zw221-oven-light:focus-visible {
 outline:3px dashed #ad692f!important;outline-offset:4px!important;
}
#app .zw209-choose .zw209-friend{
 bottom:7.2%!important;
}
@media(orientation:landscape) {
 #app .zw209{
  background:#f5e4c7 url('/bakery-v229/kitchen-landscape.webp') center center/cover no-repeat!important;
 }
 #app .zw209-choose .zw209-choices.zw221-choices{
  left:5%!important;top:31%!important;
  width:64%!important;height:46%!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,minmax(0,1fr))!important;
  gap:clamp(4px,.9vw,10px)!important;
 }
 #app .zw209-choose .zw209-choice{
  width:clamp(66px,23dvh,105px)!important;
  min-width:62px!important;min-height:62px!important;
 }
 #app .zw209-choose .zw221-oven-light{
  left:73%!important;top:30.5%!important;
  width:min(22%,210px)!important;max-height:53%!important;
 }
 #app .zw209-choose .zw209-friend{bottom:5%!important}
}
@media(orientation:portrait) and (max-height:640px){
 #app .zw209-choose .zw209-choices.zw221-choices{top:34.5%!important;height:45%!important}
 #app .zw209-choose .zw221-oven-light{top:38%!important}
 #app .zw209-choose .zw209-friend{bottom:5%!important}
}
@media(prefers-reduced-motion:reduce){
 #app .zw209-choose .zw221-lit .zw221-light-rays{animation:none!important}
}

/* final responsive QA: place ONE oven above Igor on short landscape screens. */
@media(orientation:landscape){
 #app .zw209-choose .zw221-oven-light{
  top:27.5%!important;left:75%!important;width:min(19%,185px)!important;
 }
 #app .zw209-choose .zw209-friend{
  bottom:3.5%!important;
 }
}
/* The wooden nav icons keep big round touch targets, without leftover white image mats. */
#app .zw209 .zw209-home img,
#app .zw209 .zw209-reset img{
 object-fit:contain!important;
 filter:drop-shadow(0 2px 2px rgba(70,44,24,.27))!important;
}

/* v222: recipe selection is oven-free. Only the game START owns the interactive oven.
   The real oven for baking remains exclusive to the baking step. */
#app .zw209-choose .zw209-choices.zw222-choices {
 position:absolute!important;
 left:7%!important;top:33%!important;
 width:86%!important;height:47%!important;
 display:grid!important;
 grid-template-columns:repeat(3,minmax(0,1fr))!important;
 grid-template-rows:repeat(2,minmax(0,1fr))!important;
 column-gap:clamp(6px,2vw,22px)!important;
 row-gap:clamp(12px,2vh,22px)!important;
 place-items:center!important;
 z-index:12!important;
}
#app .zw209-choose .zw222-choices .zw209-choice {
 width:min(100%,clamp(68px,27vw,130px))!important;
 min-width:60px!important;min-height:60px!important;
 height:auto!important;aspect-ratio:1!important;
 border:0!important;background:none!important;box-shadow:none!important;
}
#app .zw209-choose .zw222-choices .zw209-choice > img {
 width:97%!important;height:97%!important;
 object-fit:contain!important;
}
@media (orientation:landscape){
 #app .zw209-choose .zw209-choices.zw222-choices{
  top:31.5%!important;left:13%!important;
  width:74%!important;height:53%!important;
 }
 #app .zw209-choose .zw222-choices .zw209-choice{
  width:clamp(64px,22dvh,108px)!important;
 }
}
@media (orientation:portrait) and (max-width:350px){
 #app .zw209-choose .zw209-choices.zw222-choices{
  left:5%!important;width:90%!important;
 }
}

/* v224: Safari drag reliability. Disable browser gesture/selection on active
   drag surfaces before pointerdown, not after it starts. */
#app .zw209 .zw209-ing,
#app .zw209 .zw209-whisk-tool,
#app .zw209 .zw209-tray-tool,
#app .zw209 .zw209-serving,
#app .zw209 .zw209-mix-work{
 touch-action:none!important;-webkit-user-select:none!important;user-select:none!important;
 -webkit-touch-callout:none!important;overscroll-behavior:contain!important;
}
#app .zw209 .zw209-ghost{
 pointer-events:none!important;touch-action:none!important;
 will-change:left,top,transform!important;
}
#app .zw209 .zw209-ing img,
#app .zw209 .zw209-tool img,
#app .zw209 .zw209-serving img{
 user-select:none!important;-webkit-user-drag:none!important;
 pointer-events:none!important;
}

/* Backstube 2.25: animate the original coloured-pencil illustrations only.
   Transform and opacity are composited; no Canvas graphics. */
.zw225-ingredient-dust{
 position:fixed!important;z-index:99997!important;
 width:clamp(12px,3vw,18px)!important;height:clamp(12px,3vw,18px)!important;
 object-fit:contain!important;
 pointer-events:none!important;touch-action:none!important;
 will-change:transform,opacity!important;
}
.zw225-final-balloon{
 position:fixed!important;z-index:99997!important;
 width:clamp(30px,9vw,45px)!important;height:clamp(48px,12vw,67px)!important;
 object-fit:contain!important;
 pointer-events:none!important;touch-action:none!important;
 will-change:transform,opacity!important;
}
#app .zw209 .zw219-bowl-stack{
 transform-origin:52% 76%!important;
}
#app .zw209 .zw219-bowl-fill{
 transform-origin:56% 40%!important;
}
#app .zw209 .zw225-batter-surface{
 display:block!important;position:absolute!important;inset:0!important;
 width:100%!important;height:100%!important;
 object-fit:contain!important;object-position:center!important;
 pointer-events:none!important;z-index:5!important;
 transform-origin:56% 43%!important;
 animation:zw225-batter-swirls 2s ease-in-out infinite!important;
}
@keyframes zw225-batter-swirls{
 0%,100%{transform:rotate(-1.5deg) scale(1);opacity:.9}
 50%{transform:rotate(1.8deg) scale(1.025,.987);opacity:1}
}
#app .zw209 .zw225-whisk-orbit{
 display:block!important;position:absolute!important;
 inset:0!important;width:100%!important;height:100%!important;
 transform-origin:50% 78%!important;
 pointer-events:none!important;
}
#app .zw209 .zw225-whisk-orbit.zw225-whisk-moving{
 animation:zw225-oval-stir 1.65s linear infinite!important;
 will-change:transform!important;
}
@keyframes zw225-oval-stir{
 0%,100%{transform:translate3d(-22px,-3px,0) rotate(-17deg)}
 12.5%{transform:translate3d(-8px,-10px,0) rotate(-8deg)}
 25%{transform:translate3d(17px,-7px,0) rotate(8deg)}
 37.5%{transform:translate3d(26px,0,0) rotate(16deg)}
 50%{transform:translate3d(20px,8px,0) rotate(11deg)}
 62.5%{transform:translate3d(3px,11px,0) rotate(0deg)}
 75%{transform:translate3d(-15px,7px,0) rotate(-11deg)}
 87.5%{transform:translate3d(-25px,1px,0) rotate(-17deg)}
}
#app .zw209 .zw225-manual-stir .zw225-whisk-orbit.zw225-whisk-moving{
 animation-duration:.75s!important;
}
#app .zw209 .zw211-mix-finished .zw225-whisk-orbit{
 animation-play-state:paused!important;
}
#app .zw209 .zw211-whisk-holder{
 animation:none!important;transform:translateX(-50%)!important;
}
#app .zw209 .zw211-whisk-art{
 width:100%!important;height:100%!important;
 object-fit:contain!important;
}
#app .zw209-bake .zw209-oven-food img{
 animation:zw225-bake-food 3.3s ease-in-out infinite!important;
 transform-origin:50% 80%!important;
}
@keyframes zw225-bake-food{
 0%,100%{transform:translate3d(0,1px,0) scale(.985)}
 48%{transform:translate3d(0,-2px,0) scale(1.032)}
}
#app .zw209-bake .zw209-baking .zw209-oven-smoke{
 animation:zw225-warm-steam 2.2s ease-in-out infinite!important;
 will-change:transform,opacity!important;
}
@keyframes zw225-warm-steam{
 0%,100%{transform:translate3d(0,2px,0) scale(.93);opacity:.26}
 50%{transform:translate3d(0,-5px,0) scale(1.08);opacity:.65}
}
#app .zw209 .zw225-happy-moritz img.zw212-cheer{
 animation:zw225-moritz-happy .68s ease-in-out 2!important;
 transform-origin:50% 90%!important;
}
#app .zw209 .zw225-happy-igor img.zw212-cheer{
 animation:zw225-igor-happy .88s ease-in-out 2!important;
 transform-origin:50% 86%!important;
}
@keyframes zw225-moritz-happy{
 0%,100%{transform:translate3d(0,0,0) rotate(0)}
 38%{transform:translate3d(0,-13px,0) rotate(-5deg)}
 70%{transform:translate3d(0,0,0) rotate(4deg)}
}
@keyframes zw225-igor-happy{
 0%,100%{transform:translate3d(0,0,0) rotate(0)}
 24%{transform:translate3d(-6px,-5px,0) rotate(-6deg)}
 55%{transform:translate3d(6px,-7px,0) rotate(6deg)}
 80%{transform:translate3d(-3px,-2px,0) rotate(-3deg)}
}
#app .zw209-choose .zw209-friend.zw209-moritz img.zw212-base{
 animation:zw225-idle-moritz 4.9s ease-in-out infinite!important;
 transform-origin:50% 91%!important;
}
#app .zw209-choose .zw209-friend.zw209-igor img.zw212-base{
 animation:zw225-idle-igor 5.1s ease-in-out infinite!important;
 transform-origin:50% 95%!important;
}
@keyframes zw225-idle-moritz{
 0%,100%{transform:rotate(-2deg)}
 50%{transform:rotate(2deg)}
}
@keyframes zw225-idle-igor{
 0%,100%{transform:translate3d(0,0,0) rotate(0)}
 50%{transform:translate3d(0,-3px,0) rotate(-2deg)}
}
#app .zw209-collect .zw209-gather,
#app .zw209-mix .zw209-mix-work,
#app .zw209-bake .zw209-oven-work,
#app .zw209-serve .zw209-serve-work{
 animation:zw225-stage-entrance .24s ease-out 1 both!important;
}
@keyframes zw225-stage-entrance{
 from{opacity:.7;scale:.975}
 to{opacity:1;scale:1}
}
/* Drag movement now changes only one transform per frame; left/top stay fixed. */
.zw224-drag-ghost{
 left:0!important;top:0!important;
 will-change:transform!important;
}
@media(prefers-reduced-motion:reduce){
 #app .zw209 .zw225-batter-surface,
 #app .zw209 .zw225-whisk-orbit,
 #app .zw209-bake .zw209-oven-food img,
 #app .zw209-bake .zw209-baking .zw209-oven-smoke,
 #app .zw209 .zw225-happy-moritz img.zw212-cheer,
 #app .zw209 .zw225-happy-igor img.zw212-cheer,
 #app .zw209-choose .zw209-friend img.zw212-base,
 #app .zw209-collect .zw209-gather,
 #app .zw209-mix .zw209-mix-work,
 #app .zw209-bake .zw209-oven-work,
 #app .zw209-serve .zw209-serve-work{
  animation:none!important;
 }
}

@media (prefers-reduced-motion: reduce){
 #app .zw209 .zw225-whisk-orbit.zw225-whisk-moving{
  animation:none!important;transform:none!important;
 }
 #app .zw209 .zw225-manual-stir .zw225-whisk-orbit.zw225-whisk-moving{
  animation:none!important;transform:none!important;
 }
}

/* Backstube v226: restore the visible pencil-whisk stroke above the blue bowl.
   The fixed bowl illustration and teig are still independent behind it. */
#app .zw209-mix .zw209-mix-work .zw225-batter-surface{
 z-index:5!important;pointer-events:none!important;
}
#app .zw209-mix .zw209-mix-work .zw211-bowl-front{
 z-index:8!important;pointer-events:none!important;
}
#app .zw209-mix .zw209-mix-work .zw211-whisk-holder.zw226-whisk-visible{
 z-index:15!important;
 overflow:visible!important;pointer-events:none!important;
 opacity:1!important;visibility:visible!important;
 isolation:isolate!important;transform:translateX(-50%)!important;
}
#app .zw209-mix .zw209-mix-work .zw226-whisk-visible .zw225-whisk-orbit{
 position:absolute!important;inset:0!important;
 width:100%!important;height:100%!important;
 z-index:16!important;
 animation:zw226-whisk-real-stir 1.28s ease-in-out infinite!important;
 transform-origin:50% 76%!important;
 opacity:1!important;visibility:visible!important;
}
@keyframes zw226-whisk-real-stir{
 0%,100%{transform:translate3d(-24px,-5px,0) rotate(-21deg)}
 12.5%{transform:translate3d(-17px,-12px,0) rotate(-14deg)}
 25%{transform:translate3d(3px,-16px,0) rotate(2deg)}
 37.5%{transform:translate3d(22px,-10px,0) rotate(16deg)}
 50%{transform:translate3d(27px,1px,0) rotate(20deg)}
 62.5%{transform:translate3d(15px,10px,0) rotate(12deg)}
 75%{transform:translate3d(-8px,12px,0) rotate(-5deg)}
 87.5%{transform:translate3d(-22px,4px,0) rotate(-16deg)}
}
#app .zw209-mix .zw209-mix-work.zw225-manual-stir .zw226-whisk-visible .zw225-whisk-orbit{
 animation-duration:.69s!important;
}
#app .zw209-mix .zw209-mix-work.zw211-mix-finished .zw226-whisk-visible .zw225-whisk-orbit{
 animation-play-state:paused!important;
}
#app .zw209-mix .zw209-mix-work .zw226-whisk-visible .zw211-whisk-art{
 display:block!important;width:100%!important;height:100%!important;
 max-width:none!important;max-height:none!important;
 object-fit:contain!important;object-position:50% 50%!important;
 opacity:1!important;visibility:visible!important;
 filter:drop-shadow(1px 2px 1px rgba(83,55,33,.2))!important;
}
@media(prefers-reduced-motion:reduce){
 #app .zw209-mix .zw209-mix-work .zw226-whisk-visible .zw225-whisk-orbit,
 #app .zw209-mix .zw209-mix-work.zw225-manual-stir .zw226-whisk-visible .zw225-whisk-orbit{
  animation:none!important;transform:none!important;
 }
}

/* 2.27 — ONE unmistakably visible hand-painted whisk.
   Its DOM layer lives under document.body, outside all bowl stacking contexts. */
.zw227-whisk-layer{
 position:fixed!important;
 display:block!important;
 z-index:2147480000!important;
 pointer-events:none!important;
 touch-action:none!important;
 overflow:visible!important;
 opacity:1!important;
 visibility:visible!important;
 isolation:isolate!important;
 transform-origin:50% 66%!important;
 animation:zw227-real-oval-stir 1.23s linear infinite!important;
 will-change:transform!important;
}
.zw227-whisk-layer > .zw227-whisk-paint{
 position:absolute!important;inset:0!important;
 display:block!important;
 width:100%!important;height:100%!important;
 max-width:none!important;max-height:none!important;
 object-fit:contain!important;
 object-position:center!important;
 opacity:1!important;
 filter:drop-shadow(1px 3px 2px rgba(62,42,23,.36))!important;
 pointer-events:none!important;
 transform:none!important;
}
@keyframes zw227-real-oval-stir{
 0%,100%{transform:translate3d(-27px,-5px,0) rotate(-24deg)}
 12.5%{transform:translate3d(-16px,-16px,0) rotate(-14deg)}
 25%{transform:translate3d(4px,-20px,0) rotate(5deg)}
 37.5%{transform:translate3d(25px,-13px,0) rotate(21deg)}
 50%{transform:translate3d(31px,0,0) rotate(27deg)}
 62.5%{transform:translate3d(20px,14px,0) rotate(13deg)}
 75%{transform:translate3d(-3px,19px,0) rotate(-6deg)}
 87.5%{transform:translate3d(-25px,8px,0) rotate(-21deg)}
}
.zw227-whisk-layer.zw227-stir-fast{
 animation-duration:.72s!important;
}
.zw227-whisk-layer.zw227-mix-finished{
 animation-play-state:paused!important;
}
@media(prefers-reduced-motion:reduce){
 .zw227-whisk-layer,
 .zw227-whisk-layer.zw227-stir-fast{
  animation:none!important;
  transform:translate3d(0,0,0)!important;
 }
}

/* v228: remove the PAINTED-IN STATIC DOUGH IMAGE hiding real animation.
  A single empty ceramic bowl + animated original pencil batter + front rim.
  Each exported WebP shares exactly the same 271x199 registration canvas. */
#app .zw209-mix .zw209-mix-work > .zw209-bowl.zw209-batter{
 z-index:4!important;
}
#app .zw209-mix .zw209-mix-work > img.zw228-batter-animated,
#app .zw209-mix .zw209-mix-work > img.zw228-batter-static,
#app .zw209-mix .zw209-mix-work > img.zw228-bowl-lip{
 position:absolute!important;inset:0!important;
 width:100%!important;height:100%!important;
 max-width:none!important;max-height:none!important;
 margin:0!important;padding:0!important;
 object-fit:contain!important;
 object-position:center center!important;
 pointer-events:none!important;
 transform:none!important;animation:none!important;
 background:none!important;
}
#app .zw209-mix .zw209-mix-work > img.zw228-batter-animated{
 z-index:6!important;
 opacity:1!important;
 display:block!important;
 filter:none!important;
}
#app .zw209-mix .zw209-mix-work > img.zw228-batter-static{
 z-index:6!important;display:none!important;
}
#app .zw209-mix .zw209-mix-work > img.zw228-bowl-lip{
 z-index:8!important;
 opacity:1!important;
}
/* Rotate the actual whisk HEAD in a closed ellipse INSIDE the dough.
   No invisible canvas, no static bowl or reflowing top/left. */
body > .zw227-whisk-layer{
 transform-origin:26% 69%!important;
 animation:zw228-head-inside-batter 1.28s linear infinite!important;
}
@keyframes zw228-head-inside-batter{
 0%,100%{transform:translate3d(0,-6px,0) rotate(-14deg)}
 12.5%{transform:translate3d(13px,-4px,0) rotate(-4deg)}
 25%{transform:translate3d(19px,1px,0) rotate(7deg)}
 37.5%{transform:translate3d(12px,6px,0) rotate(17deg)}
 50%{transform:translate3d(0,9px,0) rotate(11deg)}
 62.5%{transform:translate3d(-12px,6px,0) rotate(1deg)}
 75%{transform:translate3d(-18px,-1px,0) rotate(-10deg)}
 87.5%{transform:translate3d(-9px,-5px,0) rotate(-18deg)}
}
body > .zw227-whisk-layer.zw227-stir-fast{
 animation-duration:.70s!important;
}
body > .zw227-whisk-layer.zw227-mix-finished{
 animation-play-state:paused!important;
}
@media(prefers-reduced-motion:reduce){
 #app .zw209-mix .zw209-mix-work > img.zw228-batter-animated{
  display:none!important;
 }
 #app .zw209-mix .zw209-mix-work > img.zw228-batter-static{
  display:block!important;
 }
 body > .zw227-whisk-layer,
 body > .zw227-whisk-layer.zw227-stir-fast{
  animation:none!important;
  transform:none!important;
 }
}

/* v229: Restore deterministic classic frame cycling (previously working).
   The bowl and rim are static; only the prepainted teig and whisk update. */
#app .zw209-mix .zw209-mix-work > img.zw229-batter-frame{
 position:absolute!important;inset:0!important;
 width:100%!important;height:100%!important;
 max-width:none!important;max-height:none!important;
 object-fit:contain!important;object-position:center!important;
 z-index:7!important;
 opacity:1!important;
 display:block!important;
 transform:none!important;animation:none!important;
 filter:none!important;
 pointer-events:none!important;
}
body > .zw229-whisk-clocked,body > .zw229-whisk-clocked.zw227-stir-fast,
body > .zw229-whisk-clocked.zw227-mix-finished{
 animation:none!important;animation-play-state:paused!important;
 transition:none!important;visibility:visible!important;opacity:1!important;
}
@media(prefers-reduced-motion:reduce){
 #app .zw209-mix .zw209-mix-work > img.zw229-batter-frame{
  display:block!important; /* essential mixing feedback, not decoration */
 }
 body > .zw229-whisk-clocked{animation:none!important}
}

/* ---- /home-v222/footer.css?v=222 ---- */
/* Zählwiese v222 – larger crayon-painted footer, keep original wood art. */
#app .zw126-home .zw126-footer {
  overflow:visible!important;
  position:relative!important;
}
#app .zw126-home .zw126-footer img {
  display:block!important;
  width:min(94vw,460px)!important;
  height:auto!important;
  max-width:none!important;
  max-height:none!important;
  min-width:0!important;
  flex:none!important;
  object-fit:contain!important;
  transform:translateY(-22px)!important;
  filter:drop-shadow(0 3px 3px #59483055)!important;
}
@media (orientation:landscape){
  #app .zw126-home .zw126-footer img {
    width:min(31vw,290px)!important;
    transform:translateY(-8px)!important;
  }
}
@media (orientation:portrait) and (max-width:355px){
  #app .zw126-home .zw126-footer img {
    width:94vw!important;
    transform:translateY(-17px)!important;
  }
}

/* ---- /home-v222/unified-play.css?v=222 ---- */
/* Zählwiese v222 — one original hand-painted red Play asset across all
   illustrated game start screens. Transparent cutout, no white backing. */
#app .zw170-launch .zw170-play,
#app .zw170-launch .zw177-hunt-modes .zw177-mode-button,
#app .zw170-launch[data-game-start="connect"] .zw200-mode-button {
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  outline-color:#ffe5a0;
  box-shadow:none!important;
  -webkit-appearance:none!important;
  appearance:none!important;
}
#app .zw170-launch .zw170-play::before,
#app .zw170-launch .zw170-play::after,
#app .zw170-launch .zw177-hunt-modes .zw177-mode-button::before,
#app .zw170-launch .zw177-hunt-modes .zw177-mode-button::after,
#app .zw170-launch[data-game-start="connect"] .zw200-mode-button::before,
#app .zw170-launch[data-game-start="connect"] .zw200-mode-button::after{
  display:none!important;content:none!important;
}
#app .zw170-launch .zw170-play > img,
#app .zw170-launch .zw177-hunt-modes .zw177-mode-button > img,
#app .zw170-launch[data-game-start="connect"] .zw200-mode-button > img.zw200-play-image {
  content:url('/hunt-v189/play.webp')!important;
  background:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:0!important;
  margin-left:auto!important;
  margin-right:auto!important;
  object-fit:contain!important;
  object-position:center!important;
  display:block!important;
  opacity:1!important;
  pointer-events:none!important;
  filter:drop-shadow(0 5px 3px #63411c79)!important;
}
/* Single-start games: considerably larger, with same crayon artwork. */
#app .zw170-launch .zw170-play{
  width:clamp(148px,45vw,200px)!important;
  height:clamp(148px,45vw,200px)!important;
  min-width:0!important;
  min-height:0!important;
  max-width:none!important;
  max-height:none!important;
  flex:0 0 auto!important;
  top:-9px!important;
  margin-bottom:clamp(14px,3vh,30px)!important;
  border-radius:50%!important;
}
#app .zw170-launch .zw170-play > img{
  width:100%!important;height:100%!important;
}
/* Two-choice screens: fill available round-icon spaces without exposing
   any rectangular white container behind the transparent Play artwork. */
#app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes,
#app .zw170-launch[data-game-start="connect"] .zw200-connect-modes{
  height:33.5%!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button > img,
#app .zw170-launch[data-game-start="connect"] .zw200-mode-button > img.zw200-play-image{
  width:min(46vw,23.5dvh,195px)!important;
  height:min(46vw,23.5dvh,195px)!important;
  min-width:0!important;min-height:0!important;
  max-width:100%!important;max-height:none!important;
  flex:0 0 auto!important;
}
#app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button .zw184-plaque,
#app .zw170-launch[data-game-start="connect"] .zw200-mode-button .zw200-wood-sign{
  flex-shrink:0!important;
}
@media(orientation:portrait) and (max-width:355px){
  #app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes,
  #app .zw170-launch[data-game-start="connect"] .zw200-connect-modes{
    height:36%!important;
  }
  #app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button > img,
  #app .zw170-launch[data-game-start="connect"] .zw200-mode-button > img.zw200-play-image{
    width:min(45vw,24dvh,160px)!important;
    height:min(45vw,24dvh,160px)!important;
  }
}
@media(orientation:landscape){
  #app .zw170-launch .zw170-play{
    width:min(39dvh,18vw,180px)!important;
    height:min(39dvh,18vw,180px)!important;
    margin-bottom:0!important;
  }
  #app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes,
  #app .zw170-launch[data-game-start="connect"] .zw200-connect-modes{
    height:65%!important;
  }
  #app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button > img,
  #app .zw170-launch[data-game-start="connect"] .zw200-mode-button > img.zw200-play-image{
    width:min(37dvh,17.5vw,158px)!important;
    height:min(37dvh,17.5vw,158px)!important;
  }
}
@media (orientation:portrait) and (max-height:650px){
  #app .zw170-launch .zw170-play{
    width:clamp(138px,41vw,168px)!important;
    height:clamp(138px,41vw,168px)!important;
    margin-bottom:6px!important;
  }
}

/* ---- /finger-v223/style.css?v=223 ---- */
/* Zaehlwiese Finger Rechner 2.0 – image-led storybook layout.
   Art: individual illustrated WebP images. No runtime canvas, SVG or emoji graphics. */
body:has(.zw223-finger){margin:0!important;overflow:hidden!important;background:#78b7c9!important}
#app:has(.zw223-finger){position:relative!important;display:block!important;isolation:isolate!important;overflow:hidden!important;width:100vw!important;max-width:none!important;min-width:0!important;height:100dvh!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important}
#app .main-content.zw223-finger{position:absolute!important;inset:0!important;z-index:1!important;display:block!important;width:100%!important;height:100%!important;max-width:none!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;overflow:hidden!important;background:transparent!important;box-shadow:none!important;touch-action:manipulation!important;user-select:none!important;-webkit-user-select:none!important}
.zw223-finger,.zw223-finger *{box-sizing:border-box}
.zw223-finger button{appearance:none;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.zw223-finger button:focus-visible{outline:4px solid #fff4b1!important;outline-offset:2px}
.zw223-world{position:absolute;inset:0;z-index:-1;background:#8bc9bb url('/home-v123/background-portrait.webp') center/cover no-repeat}
.zw223-stage{position:relative;z-index:2;display:grid;grid-template-rows:12% 4.5% 18% 32% 17.5% 16%;width:min(100%,680px);height:100%;min-height:0;margin:auto;padding:max(5px,env(safe-area-inset-top)) 6px max(5px,env(safe-area-inset-bottom))}
.zw223-top{position:relative;display:flex;justify-content:center;align-items:center;min-height:0;z-index:4}
.zw223-title{display:block;width:63%;height:94%;object-fit:contain;filter:drop-shadow(0 3px 2px #775b3660)}
.zw223-home,.zw223-round{position:absolute;top:50%;transform:translateY(-50%);display:flex;justify-content:center;align-items:center;flex-direction:column;width:17%;max-width:104px;min-width:48px;height:70%;min-height:38px;border:0;background:url('/finger-v223/button-4.webp') center/contain no-repeat;color:#4a482c;font:800 clamp(11px,2.8vw,16px)/1.05 'Chalkboard SE','Segoe Print',system-ui,sans-serif;text-shadow:0 1px #fff8df70;text-align:center;box-shadow:none}
.zw223-home{left:1.4%;padding:2px 0 3px}
.zw223-home span{font:900 clamp(25px,7vw,41px)/.8 Georgia,serif;transform:translateY(2px)}
.zw223-home small{font:inherit;font-size:clamp(9px,2.4vw,12px);margin-top:2px}
.zw223-round{right:1.4%;background-image:url('/finger-v223/button-2.webp');font-size:clamp(16px,4vw,24px)}
.zw223-progress{display:flex;gap:clamp(3px,1vw,8px);align-items:center;justify-content:center;min-height:0}
.zw223-progress i{display:block;flex:none;width:clamp(9px,2.5vw,17px);height:clamp(9px,2.5vw,17px);border-radius:50%;background:#faedcf;border:2px solid #937953;box-shadow:0 1px 1px #6b714c45,inset 0 1px #fff;transform:rotate(8deg)}
.zw223-progress i:nth-child(2n){transform:rotate(-12deg) scale(.93)}
.zw223-progress i.done{background:#76bf76;border-color:#538955}
.zw223-progress i.current{background:#ffce51;border-color:#a1763b;box-shadow:0 0 0 2px #fff3bb,0 2px 2px #7a7554;transform:scale(1.15)}
.zw223-board{align-self:center;justify-self:center;display:flex;align-items:center;justify-content:center;width:min(100%,600px);height:100%;max-height:178px;min-height:0;background:url('/finger-v223/chalkboard.webp') center/100% 100% no-repeat;filter:drop-shadow(0 2px 2px #4b553861);padding:7% 8% 8%}
.zw223-math{display:flex;align-items:center;justify-content:center;gap:clamp(5px,3.5vw,22px);width:100%;white-space:nowrap;color:#fff7d8;font:900 clamp(31px,10.2vw,65px)/1 'Chalkboard SE','Marker Felt','Segoe Print',system-ui,sans-serif;letter-spacing:-.04em;text-shadow:1px 2px #648378,0 0 2px #fcf3dc}
.zw223-math b{color:#fbeab6;font-size:.8em;line-height:1;font-weight:700}
.zw223-math strong{color:#ffde78;font-size:1.13em}
.zw223-math strong.zw223-known{animation:zw223-bounce .62s cubic-bezier(.19,.9,.2,1.2) both}
.zw223-hands{position:relative;display:flex;align-items:center;justify-content:space-around;gap:0;width:100%;height:100%;min-height:0}
.zw223-hand-slot{position:relative;display:block;flex:0 0 44%;height:94%;min-width:0;min-height:0;border:0;background:none;box-shadow:none;padding:0;overflow:visible;transform-origin:center 78%;transition:filter .15s}
.zw223-hand-slot .zw223-paper{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:fill;filter:drop-shadow(0 2px 3px #725e475a);pointer-events:none}
.zw223-slot-number{position:absolute;top:4%;left:9%;z-index:4;width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:#6d4c31;font:900 clamp(19px,4vw,31px)/1 'Chalkboard SE','Segoe Print',sans-serif;text-shadow:1px 1px #fff5d4}
.zw223-hand-image{position:absolute;z-index:3;left:7%;top:14%;display:block;width:86%;height:79%;max-width:none;max-height:none;object-fit:contain;filter:drop-shadow(0 2px 1px #7b644b45);pointer-events:none;transform-origin:50% 87%;animation:zw223-breathe 3.5s ease-in-out infinite}
.zw223-hand-slot:nth-of-type(3) .zw223-hand-image{animation-delay:-1.7s}
.zw223-empty-count{position:absolute;z-index:3;inset:20% 5% 12%;display:flex;align-items:center;justify-content:center;font:900 clamp(58px,15vw,102px)/1 'Chalkboard SE','Segoe Print',sans-serif;color:#bc9e72;opacity:.75;pointer-events:none}
.zw223-plus{position:absolute;left:50%;top:50%;z-index:6;transform:translate(-50%,-50%) rotate(-9deg);width:clamp(32px,10%,61px);aspect-ratio:1;display:flex;align-items:center;justify-content:center;background:url('/finger-v223/button-1.webp') center/contain no-repeat;color:#684a30;font:900 clamp(32px,8vw,56px)/1 'Chalkboard SE','Segoe Print',sans-serif;filter:drop-shadow(0 2px 1px #775d444d);pointer-events:none}
.zw223-hand-slot.zw223-touched .zw223-hand-image{animation:zw223-hand-tap .55s ease-out both!important}
.zw223-answers{display:flex;justify-content:space-evenly;align-items:center;gap:1.5%;width:100%;height:100%;min-height:0}
.zw223-answer{display:flex;align-items:center;justify-content:center;flex:0 0 auto;width:min(23%,116px);max-height:96%;aspect-ratio:1;border:0!important;border-radius:50%;background:var(--paint) center/100% 100% no-repeat!important;box-shadow:none!important;padding:2px 0 6px;color:#65432c!important;font:900 clamp(33px,9vw,59px)/1 'Chalkboard SE','Segoe Print','Marker Felt',sans-serif;letter-spacing:-.06em;text-shadow:1px 2px #fff8de,-1px -1px #805e3d5b;transition:transform .15s ease,filter .15s ease}
button.zw223-answer:active{transform:scale(.91)}
.zw223-answer.is-wrong,.zw223-answer.wrong{animation:zw223-no .36s ease-in-out;border-radius:50%;filter:saturate(1.5) sepia(.16)}
.zw223-answer.is-correct{filter:drop-shadow(0 0 7px #fff5a5);animation:zw223-bounce .55s ease-out both;color:#275c31!important}
.zw223-answer:not(.is-correct):is(span){opacity:.5}
.zw223-footer{position:relative;display:flex;align-items:center;justify-content:space-between;width:100%;min-height:0;height:100%;overflow:visible}
.zw223-friend{position:relative;align-self:end;display:block;width:23%;height:96%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 3px 2px #3d65444a);pointer-events:none}
.zw223-moritz{transform:rotate(-4deg)}
.zw223-igor{transform:rotate(3deg)}
.zw223-footer-center{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;min-width:0;height:100%;padding:0 1%;text-align:center}
.zw223-instruction,.zw223-success-message{display:block;border-radius:17px;padding:8px 13px;background:#fff2d1e3;color:#63472d;font:900 clamp(13px,3.3vw,22px)/1.2 'Chalkboard SE','Segoe Print',system-ui,sans-serif;text-shadow:0 1px #fff9e6;box-shadow:0 2px 3px #4b6c4636;white-space:normal}
.zw223-success-message{color:#387348;background:#fff5d9e8;font-size:clamp(16px,4.1vw,25px);padding:3px 8px;box-shadow:none}
.zw223-next{display:flex;flex-direction:column;align-items:center;justify-content:center;width:clamp(62px,18vw,100px);height:clamp(64px,18vw,102px);padding:0;border:0!important;background:transparent!important;position:relative;filter:drop-shadow(0 2px 2px #71594765);animation:zw223-bounce .5s ease-out both}
.zw223-next img{display:block;width:100%;height:80%;object-fit:contain;pointer-events:none}
.zw223-next span{font:900 clamp(11px,2.5vw,17px)/1 'Chalkboard SE','Segoe Print',system-ui,sans-serif;color:#4f372b;background:#fff0c5dd;border-radius:12px;padding:1px 6px;margin-top:-6px}
.zw223-next:active{transform:scale(.92)}
#app:has(.zw223-finger)>#zw95Restart{position:absolute!important;top:11.5%!important;left:2%!important;right:auto!important;z-index:12!important;width:clamp(40px,10vw,57px)!important;height:clamp(40px,10vw,57px)!important;min-width:0!important;min-height:0!important;opacity:.95!important}
#app:has(.zw223-finger)>#zw95Restart img{width:100%!important;height:100%!important;object-fit:contain!important}
.zw223-paper-rain{position:absolute;inset:0;z-index:8;overflow:hidden;pointer-events:none}
.zw223-spark{position:absolute;left:var(--x);top:-12%;width:clamp(7px,1.4vw,13px);height:clamp(13px,2vw,22px);border-radius:3px 5px 2px 4px;background:#f1cb55;box-shadow:inset 2px 0 #fff9bd7c,1px 1px #7b7b6a48;animation:zw223-confetti var(--dur) ease-in var(--delay) both}
.zw223-spark:nth-child(5n){background:#f09cb3}
.zw223-spark:nth-child(5n + 1){background:#88c2ed}
.zw223-spark:nth-child(5n + 2){background:#c6a5d6}
.zw223-spark:nth-child(5n + 3){background:#9ccc8f}
.zw223-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.zw223-result .zw223-hand-slot:first-child .zw223-hand-image{animation:zw223-clap-left 1.15s ease-in-out 1 both}
.zw223-result .zw223-hand-slot:last-child .zw223-hand-image{animation:zw223-clap-right 1.15s ease-in-out 1 both}
@keyframes zw223-breathe{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-3%) rotate(-1.5deg)}}
@keyframes zw223-hand-tap{0%,100%{transform:rotate(0)}40%{transform:rotate(-8deg) translateY(-5%)}75%{transform:rotate(4deg)}}
@keyframes zw223-bounce{0%{transform:scale(.82)}65%{transform:scale(1.1)}100%{transform:scale(1)}}
@keyframes zw223-no{0%,100%{transform:translateX(0)}20%,60%{transform:translateX(-5px)}40%,80%{transform:translateX(5px)}}
@keyframes zw223-clap-left{0%,100%{transform:translateX(0) rotate(0)}38%,70%{transform:translateX(23%) rotate(9deg)}}
@keyframes zw223-clap-right{0%,100%{transform:translateX(0) rotate(0)}38%,70%{transform:translateX(-23%) rotate(-9deg)}}
@keyframes zw223-confetti{0%{transform:translate(0,0) rotate(0);opacity:0}9%{opacity:1}95%{opacity:1}100%{transform:translate(var(--drift),110dvh) rotate(var(--turn));opacity:0}}
@media (orientation:landscape){
  .zw223-world{background-image:url('/home-v123/background-landscape.webp')}
  .zw223-stage{width:min(100%,1200px);height:min(100%,720px);top:50%;transform:translateY(-50%);grid-template-columns:32% 40% 28%;grid-template-rows:17% 65% 18%;padding:3px max(8px,env(safe-area-inset-right)) 3px max(8px,env(safe-area-inset-left))}
  .zw223-top{grid-column:1/4;grid-row:1}
  .zw223-title{width:37%;height:98%}
  .zw223-home,.zw223-round{width:10%;max-width:110px;height:78%;font-size:clamp(12px,2vw,19px)}
  .zw223-home span{font-size:clamp(26px,4vw,38px)}
  .zw223-progress{grid-column:1;grid-row:3;align-self:end;justify-self:center;margin-bottom:8%;gap:4px}
  .zw223-progress i{width:clamp(8px,1.2vw,13px);height:clamp(8px,1.2vw,13px)}
  .zw223-board{grid-column:1;grid-row:2;width:98%;height:57%;min-height:108px;max-height:180px;align-self:center;padding:6%}
  .zw223-math{font-size:clamp(26px,4vw,52px);gap:clamp(3px,1vw,12px)}
  .zw223-hands{grid-column:2;grid-row:2}
  .zw223-hand-slot{flex-basis:47%;height:95%}
  .zw223-plus{width:12%;font-size:clamp(29px,4vw,47px)}
  .zw223-slot-number{font-size:clamp(18px,3vw,28px)}
  .zw223-answers{grid-column:3;grid-row:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));align-items:center;justify-items:center;gap:1% 3%;padding:2%}
  .zw223-answer{width:min(91%,113px);height:auto;max-height:98%;font-size:clamp(31px,5.4vw,55px)}
  .zw223-footer{grid-column:2/4;grid-row:3;height:100%;align-self:end;justify-self:stretch}
  .zw223-friend{width:18%;height:100%}
  .zw223-footer-center{max-width:none}
  .zw223-instruction{font-size:clamp(12px,1.6vw,18px)}
  .zw223-success-message{font-size:clamp(13px,1.9vw,21px);padding:1px 8px}
  .zw223-next{width:clamp(51px,9vh,76px);height:clamp(46px,9vh,70px)}
  .zw223-next span{font-size:clamp(10px,1.5vw,13px)}
  #app:has(.zw223-finger)>#zw95Restart{top:auto!important;bottom:2%!important;left:1%!important;right:auto!important;width:42px!important;height:42px!important}
}
@media (orientation:landscape) and (max-height:430px){
  .zw223-stage{grid-template-rows:17% 66% 17%}
  .zw223-board{height:68%;min-height:95px}
  .zw223-hands .zw223-hand-image{top:13%;height:80%}
  .zw223-footer .zw223-instruction{padding:4px 8px}
  .zw223-title{width:34%}
}
@media (prefers-reduced-motion:reduce){
  .zw223-finger *, .zw223-finger *::before,.zw223-finger *::after{animation:none!important;transition:none!important}
}


/* v223 QA polish: the one-finger introduction has one centered paper card. */
.zw223-hands.zw223-one-hand{justify-content:center}
.zw223-one-hand .zw223-hand-slot{flex:0 0 64%;max-width:290px;height:97%}
.zw223-one-hand .zw223-slot-number{left:11%}
.zw223-result .zw223-one-hand .zw223-hand-image{animation:zw223-hand-tap 1.1s ease-out both}
#app .zw223-finger #nextBtn.zw223-next{background:none!important;border:none!important;box-shadow:none!important;opacity:1!important;transform:none}
#app .zw223-finger #nextBtn.zw223-next:before,#app .zw223-finger #nextBtn.zw223-next:after{content:none!important;display:none!important}
#app .zw223-finger #nextBtn.zw223-next img{display:block!important;position:relative!important;opacity:1!important;visibility:visible!important;width:100%!important;max-width:100%!important;height:75%!important;object-fit:contain!important;filter:none!important;transform:none!important}
@media(orientation:landscape){.zw223-one-hand .zw223-hand-slot{flex-basis:58%;max-width:235px}}


/* The shared app replaces the contents of #nextBtn with a generic SVG.
   Render the illustrated image as a CSS background so the button stays hand-painted. */
#app .zw223-finger button#nextBtn.zw223-next,
#app .zw223-finger button#nextBtn.zw223-next[data-zw-icon]{
  background:url('/bakery-v166/next.webp') center center / contain no-repeat!important;
  border:0!important;box-shadow:none!important;min-height:60px!important;
}
#app .zw223-finger button#nextBtn.zw223-next svg{display:none!important}

/* ---- /bakery-v226/intro.css?v=226 ---- */
/* Backstube 2.22: the true launch screen, not the recipe selection.
   Every illustrated object is a separate pencil-painted WebP element;
   no Canvas and no rendered second oven. */
#app .zw170-launch.zw222-bakery-entry{
 position:relative!important;
 display:block!important;
 box-sizing:border-box!important;
 width:100%!important;height:100dvh!important;
 min-height:0!important;max-height:100dvh!important;
 padding:0!important;margin:0!important;
 overflow:hidden!important;isolation:isolate!important;
 background:#f7e5cc url('/bakery-v222/kitchen-portrait.webp')
   center center/cover no-repeat!important;
 touch-action:manipulation!important;
}
#app .zw170-launch.zw222-bakery-entry .zw170-title.zw222-bakery-title{
 position:absolute!important;
 top:max(7%,calc(env(safe-area-inset-top) + 13px))!important;
 left:50%!important;
 width:min(91%,560px)!important;
 height:clamp(82px,17vh,145px)!important;
 max-height:20%!important;
 transform:translateX(-50%)!important;
 object-fit:contain!important;
 filter:drop-shadow(0 5px 3px rgba(77,48,23,.32))!important;
 z-index:10!important;
}
#app .zw170-launch.zw222-bakery-entry .zw170-home.zw222-bakery-home{
 position:absolute!important;
 top:max(10px,env(safe-area-inset-top))!important;
 right:max(9px,env(safe-area-inset-right))!important;
 left:auto!important;
 width:clamp(56px,15vw,67px)!important;
 height:clamp(56px,15vw,67px)!important;
 z-index:35!important;
 background:transparent!important;
 filter:drop-shadow(0 3px 2px rgba(87,58,30,.35))!important;
}
#app .zw170-launch.zw222-bakery-entry .zw222-oven-zone{
 position:absolute!important;
 left:0!important;right:0!important;
 top:24%!important;bottom:31%!important;
 display:flex!important;justify-content:center!important;align-items:center!important;
 pointer-events:none!important;
 z-index:9!important;
}
#app .zw170-launch.zw222-bakery-entry #zw222OvenLight.zw222-center-oven{
 position:relative!important;
 display:block!important;
 width:clamp(175px,64vw,275px)!important;
 max-width:74%!important;
 height:auto!important;
 aspect-ratio:480/440!important;
 padding:0!important;border:0!important;
 background:transparent!important;
 box-shadow:none!important;
 border-radius:12%!important;
 flex:0 0 auto!important;
 cursor:pointer!important;
 pointer-events:auto!important;
 touch-action:manipulation!important;
 filter:drop-shadow(0 7px 5px rgba(94,60,34,.30))!important;
 transform:translateZ(0)!important;
 transition:filter .25s ease!important;
 will-change:filter!important;
}
#app .zw170-launch.zw222-bakery-entry #zw222OvenLight::before{
 content:""!important;
 position:absolute!important;
 left:12%!important;right:12%!important;top:18%!important;bottom:10%!important;
 display:block!important;z-index:0!important;pointer-events:none!important;
 border-radius:38%!important;
 background:radial-gradient(ellipse at center,rgba(255,185,60,.48),rgba(255,199,92,.18) 45%,transparent 73%)!important;
 filter:blur(12px)!important;
 opacity:0!important;
 transform:scale(.86)!important;
 transition:opacity .5s ease,transform .52s ease!important;
}
#app .zw170-launch.zw222-bakery-entry #zw222OvenLight.zw222-lit::before{
 opacity:1!important;transform:scale(1.19)!important;
}
#app .zw170-launch.zw222-bakery-entry #zw222OvenLight .zw222-oven-image{
 display:block!important;
 position:absolute!important;inset:0!important;
 width:100%!important;height:100%!important;
 max-width:none!important;max-height:none!important;
 object-fit:contain!important;object-position:center center!important;
 z-index:1!important;
 margin:0!important;padding:0!important;
 pointer-events:none!important;
 transform:none!important;
 filter:none!important;
 opacity:1!important;
 animation:none!important;
 transition:opacity .5s cubic-bezier(.22,.71,.27,1)!important;
}
#app .zw170-launch.zw222-bakery-entry #zw222OvenLight .zw222-oven-lit{
 z-index:2!important;opacity:0!important;
}
#app .zw170-launch.zw222-bakery-entry #zw222OvenLight.zw222-lit .zw222-oven-lit{
 opacity:1!important;
}
#app .zw170-launch.zw222-bakery-entry #zw222OvenLight .zw222-sunburst{
 display:block!important;
 position:absolute!important;
 left:60%!important;top:30%!important;
 width:18%!important;height:18%!important;
 object-fit:contain!important;z-index:3!important;
 opacity:0!important;transform:scale(.35) rotate(-30deg)!important;
 transform-origin:center!important;
 pointer-events:none!important;
 transition:opacity .42s ease,transform .5s cubic-bezier(.16,.72,.2,1.18)!important;
 filter:drop-shadow(0 0 3px rgba(255,201,72,.9))!important;
}
#app .zw170-launch.zw222-bakery-entry #zw222OvenLight.zw222-lit .zw222-sunburst{
 opacity:.84!important;transform:scale(1.04) rotate(5deg)!important;
}
#app .zw170-launch.zw222-bakery-entry #zw222OvenLight.zw222-flick{
 animation:zw222-oven-bounce .26s cubic-bezier(.22,.66,.3,1)!important;
}
@keyframes zw222-oven-bounce{
 0%{scale:1}45%{scale:.978}100%{scale:1}
}
#app .zw170-launch.zw222-bakery-entry #zw222OvenLight:focus-visible{
 outline:3px dashed #a26835!important;outline-offset:4px!important;
}
#app .zw170-launch.zw222-bakery-entry .zw222-bakery-friends{
 position:absolute!important;left:4%!important;right:4%!important;
 bottom:18.8%!important;height:21.5%!important;
 display:flex!important;flex-direction:row!important;
 align-items:flex-end!important;justify-content:space-between!important;
 pointer-events:none!important;
 z-index:7!important;
}
#app .zw170-launch.zw222-bakery-entry .zw222-bakery-friends img{
 display:block!important;
 width:clamp(86px,26vw,155px)!important;
 height:100%!important;
 object-fit:contain!important;object-position:center bottom!important;
 filter:drop-shadow(0 4px 3px rgba(81,54,29,.35))!important;
}
#app .zw170-launch.zw222-bakery-entry #zw170Play.zw222-bakery-play{
 position:absolute!important;
 left:50%!important;top:auto!important;
 right:auto!important;bottom:4.1%!important;
 width:clamp(96px,27vw,125px)!important;
 height:clamp(96px,27vw,125px)!important;
 min-width:85px!important;min-height:85px!important;
 transform:translateX(-50%)!important;
 margin:0!important;padding:0!important;
 background:transparent!important;
 border:0!important;box-shadow:none!important;
 filter:drop-shadow(0 5px 3px rgba(75,45,26,.36))!important;
 z-index:22!important;
}
#app .zw170-launch.zw222-bakery-entry #zw170Play.zw222-bakery-play:active{
 transform:translateX(-50%) scale(.94)!important;
}
#app .zw170-launch.zw222-bakery-entry #zw170Play.zw222-bakery-play img{
 width:100%!important;height:100%!important;object-fit:contain!important;
}
@media (orientation:portrait) and (max-height:650px){
 #app .zw170-launch.zw222-bakery-entry .zw170-title.zw222-bakery-title{
  top:max(8%,env(safe-area-inset-top))!important;
  width:min(85%,440px)!important;height:clamp(69px,15vh,96px)!important;
 }
 #app .zw170-launch.zw222-bakery-entry .zw222-oven-zone{
  top:24%!important;bottom:30%!important;
 }
 #app .zw170-launch.zw222-bakery-entry #zw222OvenLight.zw222-center-oven{
  width:clamp(152px,59vw,205px)!important;
 }
 #app .zw170-launch.zw222-bakery-entry .zw222-bakery-friends{
  height:21%!important;bottom:18.2%!important;
 }
 #app .zw170-launch.zw222-bakery-entry #zw170Play.zw222-bakery-play{
  width:clamp(82px,26vw,105px)!important;height:clamp(82px,26vw,105px)!important;
  bottom:3%!important;
 }
}
@media (orientation:landscape){
 #app .zw170-launch.zw222-bakery-entry{
  background-image:url('/bakery-v222/kitchen-landscape.webp')!important;
  background-size:cover!important;
 }
 #app .zw170-launch.zw222-bakery-entry .zw170-title.zw222-bakery-title{
  top:1.2%!important;left:50%!important;
  width:clamp(235px,40vw,410px)!important;
  height:21%!important;
  max-height:21%!important;
 }
 #app .zw170-launch.zw222-bakery-entry .zw222-oven-zone{
  left:31%!important;right:31%!important;
  top:22%!important;bottom:23%!important;
 }
 #app .zw170-launch.zw222-bakery-entry #zw222OvenLight.zw222-center-oven{
  width:clamp(125px,47dvh,218px)!important;
  max-width:80%!important;
  max-height:100%!important;
 }
 #app .zw170-launch.zw222-bakery-entry .zw222-bakery-friends{
  left:9%!important;right:9%!important;
  height:45%!important;bottom:8%!important;
 }
 #app .zw170-launch.zw222-bakery-entry .zw222-bakery-friends img{
  width:clamp(85px,20vw,158px)!important;
  height:86%!important;
 }
 #app .zw170-launch.zw222-bakery-entry #zw170Play.zw222-bakery-play{
  bottom:2%!important;
  width:clamp(68px,21dvh,95px)!important;height:clamp(68px,21dvh,95px)!important;
  min-width:65px!important;min-height:65px!important;
 }
}
@media (prefers-reduced-motion:reduce){
 #app .zw170-launch.zw222-bakery-entry #zw222OvenLight .zw222-oven-image,
 #app .zw170-launch.zw222-bakery-entry #zw222OvenLight::before,
 #app .zw170-launch.zw222-bakery-entry #zw222OvenLight .zw222-sunburst{
  transition:none!important;
 }
 #app .zw170-launch.zw222-bakery-entry #zw222OvenLight.zw222-flick{
  animation:none!important;
 }
}

/* v222 final layout tuning after Safari screenshot inspection. */
#app .zw209-choose .zw209-choices.zw222-choices{
 top:36.8%!important;
 height:40%!important;
}
@media (orientation:landscape){
 #app .zw209-choose .zw209-choices.zw222-choices{
  left:25%!important;top:40%!important;
  width:50%!important;height:43%!important;
 }
 #app .zw209-choose .zw222-choices .zw209-choice{
  width:clamp(72px,23dvh,104px)!important;
 }
}
/* A warm hand-painted radiance springs to life when the child touches the oven.
   The oven picture itself remains fixed: one oven, two registered light states. */
#app .zw170-launch.zw222-bakery-entry #zw222OvenLight.zw222-lit{
 filter:drop-shadow(0 6px 4px rgba(89,50,27,.30)) drop-shadow(0 0 9px rgba(255,172,55,.23))!important;
}
#app .zw170-launch.zw222-bakery-entry #zw222OvenLight.zw222-flick.zw222-lit .zw222-sunburst{
 animation:zw222-switch-sparkle .48s cubic-bezier(.18,.64,.22,1.1) both!important;
}
@keyframes zw222-switch-sparkle{
 0%{opacity:.05;scale:.28;rotate:-16deg}
 54%{opacity:1;scale:1.26;rotate:9deg}
 100%{opacity:.84;scale:1.0;rotate:3deg}
}
@media(prefers-reduced-motion:reduce){
 #app .zw170-launch.zw222-bakery-entry #zw222OvenLight.zw222-flick.zw222-lit .zw222-sunburst{
  animation:none!important;
 }
}

/* v223: cleaned pencil-home, central oven LOWER and genuinely lit window.
   Scope strictly to Backstube launch: other games are unchanged. */
#app .zw170-launch.zw222-bakery-entry .zw170-home.zw222-bakery-home{
 position:absolute!important;
 top:max(10px,env(safe-area-inset-top))!important;
 right:max(10px,env(safe-area-inset-right))!important;
 left:auto!important;
 border:0!important;outline:0!important;
 border-radius:0!important;box-shadow:none!important;
 background:none!important;background-image:none!important;
 padding:0!important;
 width:clamp(56px,15vw,69px)!important;height:clamp(56px,15vw,69px)!important;
 filter:drop-shadow(0 3px 2px rgba(72,45,25,.35))!important;
}
#app .zw170-launch.zw222-bakery-entry .zw170-home.zw222-bakery-home::before,
#app .zw170-launch.zw222-bakery-entry .zw170-home.zw222-bakery-home::after{
 content:none!important;display:none!important;
}
#app .zw170-launch.zw222-bakery-entry .zw170-home.zw222-bakery-home > img{
 position:absolute!important;inset:0!important;
 width:100%!important;height:100%!important;
 max-width:none!important;max-height:none!important;
 margin:0!important;padding:0!important;
 object-fit:contain!important;
 background:none!important;border:0!important;
 filter:none!important;
}
#app .zw170-launch.zw222-bakery-entry .zw222-oven-zone{
 top:32%!important;bottom:19%!important;
}
#app .zw170-launch.zw222-bakery-entry #zw222OvenLight.zw222-center-oven{
 overflow:visible!important;
 transform:translateZ(0)!important;
}
#app .zw170-launch.zw222-bakery-entry #zw222OvenLight .zw223-window-warm{
 position:absolute!important;inset:0!important;z-index:3!important;
 width:100%!important;height:100%!important;
 max-width:none!important;max-height:none!important;
 object-fit:contain!important;object-position:center!important;
 pointer-events:none!important;
 opacity:0!important;
 transform:none!important;
 transition:opacity .42s cubic-bezier(.21,.72,.25,1)!important;
 will-change:opacity!important;
 filter:none!important;
}
#app .zw170-launch.zw222-bakery-entry #zw222OvenLight.zw222-lit .zw223-window-warm{
 opacity:.66!important;
 animation:zw223-handpainted-amber 2.8s ease-in-out infinite alternate!important;
}
@keyframes zw223-handpainted-amber{
 0%{filter:brightness(.97) saturate(1)!important}
 100%{filter:brightness(1.13) saturate(1.08)!important}
}
#app .zw170-launch.zw222-bakery-entry #zw222OvenLight .zw222-sunburst{
 z-index:4!important;left:30%!important;top:43%!important;
 width:15%!important;height:15%!important;
 filter:drop-shadow(0 0 3px #ffc65a)!important;
 opacity:0!important;
 transform:scale(.45) rotate(-12deg)!important;
 transition:opacity .38s ease,transform .43s ease!important;
}
#app .zw170-launch.zw222-bakery-entry #zw222OvenLight.zw222-lit .zw222-sunburst{
 opacity:.82!important;transform:scale(.9) rotate(7deg)!important;
}
#app .zw170-launch.zw222-bakery-entry #zw222OvenLight.zw222-flick{
 animation:zw223-paint-touch .3s ease-out!important;
}
@keyframes zw223-paint-touch{
 0%{scale:1}48%{scale:.962}100%{scale:1}
}
#app .zw170-launch.zw222-bakery-entry #zw222OvenLight.zw222-lit{
 filter:drop-shadow(0 6px 4px rgba(89,50,27,.30))
        drop-shadow(0 0 8px rgba(255,174,69,.21))!important;
}
@media(orientation:portrait) and (max-height:650px){
 #app .zw170-launch.zw222-bakery-entry .zw222-oven-zone{
  top:32%!important;bottom:19%!important;
 }
}
@media(orientation:landscape){
 #app .zw170-launch.zw222-bakery-entry .zw222-oven-zone{
  top:27%!important;bottom:19%!important;
 }
}
@media(prefers-reduced-motion:reduce){
 #app .zw170-launch.zw222-bakery-entry #zw222OvenLight.zw222-lit .zw223-window-warm{
  animation:none!important;
 }
 #app .zw170-launch.zw222-bakery-entry #zw222OvenLight .zw223-window-warm,
 #app .zw170-launch.zw222-bakery-entry #zw222OvenLight .zw222-sunburst{
  transition:none!important;
 }
}

/* Final screenshot tuning: the oven's little feet should sit ON the wooden
   worktop, not float in front of the wall. Keep landscape clear of Play. */
@media (orientation:portrait){
 #app .zw170-launch.zw222-bakery-entry .zw222-oven-zone{
  top:35%!important;bottom:16%!important;
 }
}
#app .zw170-launch.zw222-bakery-entry .zw170-home.zw222-bakery-home{
 top:max(5px,env(safe-area-inset-top))!important;
 width:clamp(55px,14.7vw,63px)!important;
 height:clamp(55px,14.7vw,63px)!important;
}

/* v225: calm touch feedback on the illustration-only play control.
   Animations are transform-only, and stop for reduced-motion preference. */
#app .zw170-launch.zw222-bakery-entry #zw170Play.zw222-bakery-play img{
 animation:zw225-play-breathe 3.2s ease-in-out infinite!important;
 transform-origin:50% 50%!important;
}
@keyframes zw225-play-breathe{
 0%,100%{scale:1}
 50%{scale:1.045}
}
@media(prefers-reduced-motion:reduce){
 #app .zw170-launch.zw222-bakery-entry #zw170Play.zw222-bakery-play img{
  animation:none!important;
 }
}

/* v226: two bigger hand-painted clickable characters, no white circles. */
#app .zw170-launch.zw222-bakery-entry .zw222-bakery-friends.zw226-interactive-friends{
 left:3%!important;right:3%!important;bottom:18.0%!important;
 height:27%!important;z-index:18!important;
 pointer-events:none!important;overflow:visible!important;
}
#app .zw170-launch.zw222-bakery-entry .zw226-friend-button{
 position:relative!important;
 flex:0 0 auto!important;
 display:block!important;
 width:clamp(122px,36vw,180px)!important;
 height:100%!important;
 min-width:100px!important;min-height:100px!important;
 padding:0!important;margin:0!important;
 border:0!important;outline:0!important;
 border-radius:0!important;background:transparent!important;
 box-shadow:none!important;overflow:visible!important;
 pointer-events:auto!important;touch-action:manipulation!important;
 cursor:pointer!important;
 isolation:isolate!important;
 -webkit-tap-highlight-color:transparent!important;
}
#app .zw170-launch.zw222-bakery-entry .zw226-friend-button > img.zw226-friend-base,
#app .zw170-launch.zw222-bakery-entry .zw226-friend-button > img.zw226-friend-cheer{
 position:absolute!important;inset:0!important;
 display:block!important;
 width:100%!important;height:100%!important;
 max-width:none!important;max-height:none!important;
 margin:0!important;padding:0!important;
 object-fit:contain!important;object-position:center bottom!important;
 filter:drop-shadow(0 4px 3px rgba(76,52,32,.28))!important;
 pointer-events:none!important;
 transform-origin:center 91%!important;
}
#app .zw170-launch.zw222-bakery-entry .zw226-friend-button > img.zw226-friend-cheer{
 opacity:0!important;z-index:2!important;
}
#app .zw170-launch.zw222-bakery-entry .zw226-friend-button.zw226-celebrating > img.zw226-friend-base{
 opacity:0!important;
}
#app .zw170-launch.zw222-bakery-entry .zw226-friend-button.zw226-celebrating > img.zw226-friend-cheer{
 opacity:1!important;
 animation:zw226-friend-hop .92s ease-in-out 2!important;
}
#app .zw170-launch.zw222-bakery-entry .zw226-friend-button.zw226-igor.zw226-celebrating > img.zw226-friend-cheer{
 animation:zw226-igor-happy .88s ease-in-out 2!important;
}
@keyframes zw226-friend-hop{
 0%,100%{transform:translate3d(0,0,0) rotate(0deg)}
 25%{transform:translate3d(-3px,-8px,0) rotate(-6deg)}
 51%{transform:translate3d(0,-14px,0) rotate(3deg)}
 77%{transform:translate3d(3px,-4px,0) rotate(5deg)}
}
@keyframes zw226-igor-happy{
 0%,100%{transform:translate3d(0,0,0) rotate(0deg)}
 22%{transform:translate3d(-6px,-5px,0) rotate(-7deg)}
 48%{transform:translate3d(6px,-8px,0) rotate(7deg)}
 73%{transform:translate3d(-4px,-3px,0) rotate(-4deg)}
}
#app .zw170-launch.zw222-bakery-entry .zw226-friend-button:focus-visible{
 outline:3px dashed #995d2c!important;outline-offset:2px!important;
}
.zw226-joy-particle{
 display:block!important;position:absolute!important;
 width:clamp(14px,4vw,24px)!important;height:clamp(14px,4vw,24px)!important;
 object-fit:contain!important;object-position:center!important;
 margin:0!important;padding:0!important;
 pointer-events:none!important;z-index:22!important;
 will-change:transform,opacity!important;
}
@media(orientation:landscape){
 #app .zw170-launch.zw222-bakery-entry .zw222-bakery-friends.zw226-interactive-friends{
  left:8%!important;right:8%!important;bottom:7%!important;
  height:54%!important;
 }
 #app .zw170-launch.zw222-bakery-entry .zw226-friend-button{
  width:clamp(124px,36dvh,175px)!important;
  min-width:105px!important;min-height:100px!important;
 }
}
@media(orientation:portrait) and (max-height:640px){
 #app .zw170-launch.zw222-bakery-entry .zw222-bakery-friends.zw226-interactive-friends{
  height:25%!important;bottom:18.5%!important;
 }
}
@media(prefers-reduced-motion:reduce){
 #app .zw170-launch.zw222-bakery-entry .zw226-friend-button.zw226-celebrating > img.zw226-friend-cheer{
  animation:none!important;
 }
 #app .zw170-launch.zw222-bakery-entry .zw226-friend-button.zw226-igor.zw226-celebrating > img.zw226-friend-cheer{
  animation:none!important;
 }
}

/* v226 final scale tuning, checked against portrait and landscape renders. */
#app .zw170-launch.zw222-bakery-entry .zw226-friend-button{
 width:clamp(128px,45vw,195px)!important;
}
#app .zw170-launch.zw222-bakery-entry .zw222-bakery-friends.zw226-interactive-friends{
 height:29%!important;bottom:17.5%!important;
}
@media(orientation:landscape){
 #app .zw170-launch.zw222-bakery-entry .zw226-friend-button{
  width:clamp(142px,43dvh,195px)!important;
 }
 #app .zw170-launch.zw222-bakery-entry .zw222-bakery-friends.zw226-interactive-friends{
  height:59%!important;bottom:6%!important;
 }
}
@media(orientation:portrait) and (max-height:640px){
 #app .zw170-launch.zw222-bakery-entry .zw222-bakery-friends.zw226-interactive-friends{
  height:27%!important;bottom:18%!important;
 }
}

/* ---- /ui-v225/buttons.css?v=225 ---- */
/* Zaehlwiese v225: shared illustrated images, no CSS content replacement. */
#app .zw170-launch .zw170-play,
#app .zw170-launch .zw177-hunt-modes .zw177-mode-button,
#app .zw170-launch[data-game-start="connect"] .zw200-mode-button{
 background:transparent!important;background-image:none!important;box-shadow:none!important;border:none!important;padding:0!important;
}
#app .zw170-launch .zw170-play>img,
#app .zw170-launch .zw177-hunt-modes .zw177-mode-button>img,
#app .zw170-launch[data-game-start="connect"] .zw200-mode-button>img.zw200-play-image{
 content:normal!important;
 background:transparent!important;box-shadow:none!important;border:0!important;
 object-fit:contain!important;object-position:center!important;
 filter:drop-shadow(0 4px 3px #533c2a60)!important;pointer-events:none!important;
}
#app .zw170-launch .zw170-play{
 width:clamp(158px,47vw,205px)!important;height:clamp(158px,47vw,205px)!important;
 max-width:none!important;max-height:none!important;
 top:-8px!important;position:relative!important;
}
#app .zw170-launch .zw170-play>img{width:100%!important;height:100%!important}
#app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button>img,
#app .zw170-launch[data-game-start="connect"] .zw200-mode-button>img.zw200-play-image{
 width:min(46vw,24dvh,195px)!important;height:min(46vw,24dvh,195px)!important;
 max-width:100%!important;max-height:none!important;flex:0 0 auto!important;
}
#app .zw170-launch #homeBtn.zw170-home,
#app .zw126-home #parentsBtn.zw126-settings{
 all:unset!important;box-sizing:border-box!important;display:block!important;
 position:absolute!important;left:auto!important;
 z-index:70!important;pointer-events:auto!important;
 background:transparent!important;border:0!important;border-radius:50%!important;
 box-shadow:none!important;cursor:pointer!important;touch-action:manipulation!important;
 filter:drop-shadow(0 4px 3px #55442d62)!important;
}
#app .zw170-launch #homeBtn.zw170-home{
 top:max(7px,env(safe-area-inset-top))!important;
 right:max(7px,env(safe-area-inset-right))!important;
 width:clamp(76px,24vw,100px)!important;height:clamp(76px,24vw,100px)!important;
}
#app .zw126-home #parentsBtn.zw126-settings{
 top:max(5px,env(safe-area-inset-top))!important;
 right:max(3px,env(safe-area-inset-right))!important;
 width:clamp(78px,25vw,104px)!important;height:clamp(78px,25vw,104px)!important;
}
#app .zw170-launch #homeBtn.zw170-home>img,
#app .zw126-home #parentsBtn.zw126-settings>img{
 display:block!important;width:100%!important;height:100%!important;
 object-fit:contain!important;content:normal!important;
 background:transparent!important;box-shadow:none!important;border:none!important;
}
#app .zw170-launch #homeBtn.zw170-home::before,
#app .zw170-launch #homeBtn.zw170-home::after,
#app .zw126-home #parentsBtn.zw126-settings::before,
#app .zw126-home #parentsBtn.zw126-settings::after{
 display:none!important;content:none!important;
}
#app .zw170-launch #homeBtn.zw170-home:focus-visible,
#app .zw126-home #parentsBtn.zw126-settings:focus-visible{
 outline:4px solid #ffe9a8!important;outline-offset:-3px!important;border-radius:50%!important;
}
@media (orientation:landscape){
 #app .zw170-launch #homeBtn.zw170-home{
  width:clamp(74px,20dvh,98px)!important;height:clamp(74px,20dvh,98px)!important;
 }
 #app .zw126-home #parentsBtn.zw126-settings{
  width:clamp(74px,21dvh,97px)!important;height:clamp(74px,21dvh,97px)!important;
 }
 #app .zw170-launch .zw170-play{
  width:min(39dvh,19vw,180px)!important;height:min(39dvh,19vw,180px)!important;
 }
 #app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes .zw177-mode-button>img,
 #app .zw170-launch[data-game-start="connect"] .zw200-mode-button>img.zw200-play-image{
  width:min(37dvh,17.5vw,158px)!important;height:min(37dvh,17.5vw,158px)!important;
 }
}
@media (orientation:portrait) and (max-width:355px){
 #app .zw170-launch #homeBtn.zw170-home{width:76px!important;height:76px!important}
 #app .zw126-home #parentsBtn.zw126-settings{width:80px!important;height:80px!important}
}

/* Important: old Zahlenjagd rules specified content:url() at higher
   specificity. Use each real img src rather than the legacy substitution. */
#app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes #zw177Still > img,
#app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes #zw177Flying > img{
  content:normal!important;
  width:min(46vw,24dvh,195px)!important;
  height:min(46vw,24dvh,195px)!important;
  max-width:100%!important;
  object-fit:contain!important;
  background:none!important;
  box-shadow:none!important;
}
@media(orientation:landscape){
 #app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes #zw177Still > img,
 #app .zw170-launch[data-game-start="hunt"] .zw177-hunt-modes #zw177Flying > img{
  width:min(37dvh,17.5vw,158px)!important;
  height:min(37dvh,17.5vw,158px)!important;
 }
}

/* ---- /finger-v224/polish.css?v=224 ---- */
/* Finger Rechner 2.1 – hand-painted UI refinement, no canvas */
#app .zw223-finger .zw223-top .zw223-home.zw224-home{
  width:clamp(51px,17.5%,79px)!important;height:clamp(49px,78%,77px)!important;
  min-height:48px!important;min-width:48px!important;
  left:0!important;padding:0!important;
  background:none!important;border:0!important;box-shadow:none!important;
  filter:drop-shadow(0 2px 1px #6d59424c);
}
#app .zw223-finger .zw223-home.zw224-home img{
  display:block!important;width:100%!important;height:100%!important;
  object-fit:contain!important;max-width:100%!important;max-height:100%!important;
  border:0!important;background:none!important;box-shadow:none!important;
  pointer-events:none!important;
}
#app .zw223-finger .zw223-top .zw223-title{
  width:clamp(190px,61%,380px)!important;height:94%!important;
  object-fit:contain!important;
}
#app .zw223-finger .zw223-top .zw223-round{
  right:0!important;width:clamp(50px,17%,75px)!important;
  min-width:50px!important;min-height:48px!important;height:74%!important;
  white-space:nowrap!important;word-break:keep-all!important;flex-wrap:nowrap!important;
  font:800 clamp(13px,3.6vw,18px)/1 'Chalkboard SE','Segoe Print',system-ui,sans-serif!important;
  letter-spacing:-.04em!important;padding:0 2px!important;
}
#app .zw223-finger .zw223-hand-slot .zw223-paper{object-fit:fill!important}
#app .zw223-finger .zw223-hand-slot{
  transition:filter .17s ease,transform .17s ease;
}
#app .zw223-finger .zw223-hand-slot:active{
  filter:drop-shadow(0 0 9px #ffefd9c4);
}
#app .zw223-finger .zw223-slot-number{
  top:6%;left:12%;font-weight:900!important;color:#694b30!important;
  font-size:clamp(24px,5.8vw,36px)!important;line-height:1!important;
}
#app .zw223-finger .zw223-hands.zw223-one-hand .zw223-slot-number{left:12%}
#app .zw223-finger .zw223-answer{
  text-shadow:0 1px #fff5df,-1px 1px #f8f1dd,1px 2px #74533b60!important;
  filter:drop-shadow(0 2px 1px #695f4e27);
  transform-origin:center!important;
}
#app .zw223-finger .zw223-answer.wrong{
  filter:drop-shadow(0 0 10px #df7e79)!important;
  animation:zw224-gentle-no .38s ease-in-out 1!important;
}
#app .zw223-finger .zw223-answer.is-correct{
  color:#2d6135!important;opacity:1!important;
  filter:drop-shadow(0 0 12px #ffe690)!important;
  animation:zw224-well-done .68s cubic-bezier(.2,.9,.25,1.15) both!important;
}
#app .zw223-finger .zw223-instruction{
  padding:6px 12px!important;
  font-size:clamp(14px,3.6vw,19px)!important;
  background:#fff2d9e8!important;
}
#app .zw223-finger .zw223-footer .zw223-success-message{
  background:#fff4d7ed!important;
  color:#476f44!important;
  font-size:clamp(15px,3.8vw,23px)!important;
  padding:4px 9px!important;
  box-shadow:0 2px 2px #756c4c29!important;
}
#app .zw223-finger button#nextBtn.zw223-next{
  width:clamp(78px,19vw,108px)!important;height:clamp(66px,18vw,97px)!important;
  min-width:66px!important;min-height:66px!important;
  margin:0!important;
  background:url('/bakery-v166/next.webp') center/contain no-repeat!important;
  filter:drop-shadow(0 3px 2px #765a3666);
  transform:translateZ(0)!important;
}
#app .zw223-finger button#nextBtn.zw223-next:active{
  transform:scale(.93)!important;
}
#app:has(.zw223-finger)>#zw95Restart{
  top:11.1%!important;left:3%!important;right:auto!important;
  width:clamp(43px,11vw,58px)!important;height:clamp(43px,11vw,58px)!important;
  filter:drop-shadow(0 3px 2px #755b3e4c)!important;
}
#app:has(.zw223-finger)>#zw95Restart::before,
#app:has(.zw223-finger)>#zw95Restart::after{display:none!important}
.zw224-reward{
  position:absolute;inset:0;z-index:7;overflow:hidden;pointer-events:none;
  contain:layout style paint;
}
.zw224-balloon{
  position:absolute;bottom:-17%;left:var(--x);
  display:block;width:clamp(28px,7vw,55px);height:auto;
  max-width:15%;max-height:18%;
  object-fit:contain;opacity:0;
  filter:drop-shadow(0 2px 2px #6b5c4850);
  transform:translate3d(0,0,0) rotate(-7deg);
  will-change:transform,opacity;
  animation:zw224-rise var(--dur) ease-out var(--delay) both;
}
.zw224-reward.zw224-grand .zw224-balloon{
  width:clamp(32px,9vw,64px);
}
.zw224-sky-star{
  position:absolute;left:var(--x);top:var(--y);
  display:block;width:clamp(21px,5vw,37px);height:auto;
  object-fit:contain;opacity:0;
  animation:zw224-shimmer 2.15s ease-out var(--delay) both;
  filter:drop-shadow(0 2px 3px #ba8f4a5a);
}
.zw224-tap-star{
  position:absolute;z-index:9;pointer-events:none;
  display:block;width:clamp(25px,6vw,38px);height:auto;
  left:var(--sx);top:23%;
  filter:drop-shadow(0 2px 1px #9b7a4959);
  animation:zw224-tap-spark .78s ease-out both!important;
}
#app .zw223-finger.zw223-result:not(:has(.zw223-one-hand)) .zw223-hand-slot:first-child .zw223-hand-image{
  animation:zw224-three-clap-left 1.95s cubic-bezier(.28,.65,.38,1) both!important;
}
#app .zw223-finger.zw223-result:not(:has(.zw223-one-hand)) .zw223-hand-slot:last-child .zw223-hand-image{
  animation:zw224-three-clap-right 1.95s cubic-bezier(.28,.65,.38,1) both!important;
}
#app .zw223-finger.zw223-result:has(.zw223-one-hand) .zw223-hand-image{
  animation:zw224-one-hand-cheer 1.1s ease-in-out both!important;
}
#app .zw223-finger.zw224-grand-finale .zw223-board{
  filter:drop-shadow(0 0 12px #ffe59a94) drop-shadow(0 4px 3px #414c3859);
}
#app .zw223-finger.zw224-grand-finale .zw223-moritz,
#app .zw223-finger.zw224-grand-finale .zw223-igor{
  animation:zw224-friend-bob 1s ease-in-out 2 both;
}
@keyframes zw224-rise{
  0%{opacity:0;transform:translate3d(0,25vh,0) rotate(-8deg)}
  12%{opacity:.96}
  78%{opacity:.96}
  100%{opacity:0;transform:translate3d(var(--drift),-125vh,0) rotate(14deg)}
}
@keyframes zw224-shimmer{
  0%{opacity:0;transform:scale(.4) rotate(-17deg)}
  27%{opacity:1;transform:scale(1.2) rotate(8deg)}
  58%{opacity:.9;transform:scale(.92) rotate(0)}
  100%{opacity:0;transform:scale(1.45) rotate(14deg)}
}
@keyframes zw224-tap-spark{
  0%{opacity:0;transform:translateY(10px) rotate(-20deg) scale(.55)}
  30%{opacity:1;transform:translateY(-11px) rotate(9deg) scale(1.15)}
  100%{opacity:0;transform:translateY(-45px) rotate(35deg) scale(.7)}
}
@keyframes zw224-gentle-no{
  0%,100%{transform:translateX(0) rotate(0)}
  25%{transform:translateX(-3px) rotate(-3deg)}
  55%{transform:translateX(3px) rotate(3deg)}
  75%{transform:translateX(-2px) rotate(-1deg)}
}
@keyframes zw224-well-done{
  0%{transform:scale(.95)}55%{transform:scale(1.16)}100%{transform:scale(1)}
}
@keyframes zw224-one-hand-cheer{
  0%,100%{transform:rotate(0) translateY(0)}
  35%{transform:rotate(-11deg) translateY(-6%)}
  68%{transform:rotate(8deg) translateY(-4%)}
}
@keyframes zw224-three-clap-left{
  0%,13%,100%{transform:translateX(0) rotate(0)}
  28%,48%,67%{transform:translateX(39%) rotate(10deg)}
  38%,58%,79%{transform:translateX(7%) rotate(-3deg)}
}
@keyframes zw224-three-clap-right{
  0%,13%,100%{transform:translateX(0) rotate(0)}
  28%,48%,67%{transform:translateX(-39%) rotate(-10deg)}
  38%,58%,79%{transform:translateX(-7%) rotate(3deg)}
}
@keyframes zw224-friend-bob{
  0%,100%{transform:translateY(0)}50%{transform:translateY(-8%) rotate(3deg)}
}
@media(orientation:landscape){
  #app .zw223-finger .zw223-top .zw223-home.zw224-home{
    width:clamp(48px,8.5%,70px)!important;height:90%!important;left:0!important;
  }
  #app .zw223-finger .zw223-top .zw223-title{width:min(39%,400px)!important}
  #app .zw223-finger .zw223-top .zw223-round{
    width:clamp(55px,8.5%,76px)!important;font-size:clamp(12px,1.7vw,17px)!important;
    height:82%!important;min-height:42px!important;
  }
  #app .zw223-finger .zw223-slot-number{font-size:clamp(18px,2.7vw,28px)!important}
  #app .zw223-finger button#nextBtn.zw223-next{
    width:clamp(65px,13vh,92px)!important;height:clamp(60px,14vh,85px)!important;
  }
  #app:has(.zw223-finger)>#zw95Restart{
    top:auto!important;left:2%!important;bottom:2%!important;
    width:clamp(42px,9vh,55px)!important;height:clamp(42px,9vh,55px)!important;
  }
  .zw224-balloon{width:clamp(20px,3.6vw,38px);max-height:20%}
  .zw224-sky-star{width:clamp(17px,2.9vw,29px)}
}
@media(max-width:350px), (max-height:620px) and (orientation:portrait){
  #app .zw223-finger .zw223-top .zw223-title{width:60%!important}
  #app .zw223-finger .zw223-top .zw223-round{font-size:13px!important}
  #app .zw223-finger button#nextBtn.zw223-next{
    width:65px!important;height:63px!important;min-height:58px!important;
  }
  #app .zw223-finger .zw223-footer .zw223-success-message{
    font-size:14px!important;padding:2px 6px!important;
  }
  #app .zw223-finger .zw223-instruction{font-size:13px!important}
}
@media(prefers-reduced-motion:reduce){
  #app .zw223-finger .zw224-reward *,
  #app .zw223-finger .zw224-tap-star,
  #app .zw223-finger .zw223-hand-image{animation:none!important;will-change:auto!important}
  #app .zw223-finger .zw224-reward{display:none!important}
}

/* ---- /finger-v225/buttons.css?v=225 ---- */
/* Finger Rechner v225 – fully transparent painted round button assets. */
#app .zw223-finger .zw223-answer{
  border:0!important;
  box-shadow:none!important;
  border-radius:50%!important;
  background-clip:padding-box!important;
  background-origin:border-box!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  filter:drop-shadow(0 2px 2px #4b5e492d);
}
#app .zw223-finger .zw223-plus{
  background-image:url('/finger-v225/button-1.webp')!important;
  background-color:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
#app .zw223-finger .zw223-round{
  background-image:url('/finger-v225/button-2.webp')!important;
  background-color:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
/* The game advances itself; only visual feedback remains on the success screen. */
#app .zw223-finger #nextBtn.zw223-next{
  display:none!important;
  pointer-events:none!important;
}
#app .zw223-finger .zw223-footer-center:has(#nextBtn){
  justify-content:center!important;
}
#app .zw223-finger .zw223-success-message{
  animation:zw225-well-done .55s ease-out both!important;
}
@keyframes zw225-well-done{
  0%{opacity:.5;transform:scale(.88)}
  65%{opacity:1;transform:scale(1.06)}
  100%{opacity:1;transform:scale(1)}
}
@media (prefers-reduced-motion:reduce) {
  #app .zw223-finger .zw223-success-message{animation:none!important}
}

/* ---- /applause-v230/applause.css?v=230 ---- */
/* Zählwiese applause v230: STATIC many-hands image with one entrance/exit motion. */
#app .zw223-finger .zw229-applause,
body .zw222-celebration .zw229-applause,
body .zw229-applause{
 position:absolute!important;
 left:50%!important;bottom:4%!important;top:auto!important;
 width:min(92%,410px)!important;height:min(73%,540px)!important;
 max-width:96%!important;z-index:180!important;
 display:flex!important;align-items:flex-end!important;justify-content:center!important;
 overflow:visible!important;pointer-events:none!important;
 opacity:0;transform:translate3d(-50%,75px,0);
 contain:layout style!important;
}
#app .zw223-finger .zw229-applause{
 bottom:10%!important;height:min(72%,500px)!important;
}
body .zw222-celebration .zw229-applause{
 bottom:15%!important;height:min(66%,490px)!important;
}
.zw229-applause.zw229-show{
 animation:zw229-float 2.55s cubic-bezier(.21,.78,.28,1) both!important;
}
.zw229-applause .zw229-applause-art{
 display:block!important;position:relative!important;
 width:100%!important;height:100%!important;
 object-fit:contain!important;object-position:center bottom!important;
 max-width:100%!important;max-height:100%!important;
 opacity:1!important;transform:none!important;animation:none!important;
 filter:drop-shadow(0 2px 2px #5e745349)!important;
 border:0!important;background:transparent!important;
 pointer-events:none!important;user-select:none!important;-webkit-user-select:none!important;
}
.zw229-applause .zw229-sparkles{
 position:absolute;inset:-5% -6% 0!important;z-index:3!important;
 pointer-events:none!important;overflow:visible!important;
}
.zw229-applause .zw229-spark{
 position:absolute!important;bottom:7%!important;left:var(--x)!important;
 width:clamp(20px,7vw,38px)!important;height:clamp(20px,7vw,38px)!important;
 opacity:0;max-width:none!important;object-fit:contain!important;
 pointer-events:none!important;
 filter:drop-shadow(0 2px 2px #906f4866)!important;
}
.zw229-applause.zw229-show .zw229-spark{
 animation:zw229-sparkle 1.7s ease-out var(--delay) both!important;
}
@keyframes zw229-float{
 0%{opacity:0;transform:translate3d(-50%,85px,0)}
 20%{opacity:1;transform:translate3d(-50%,17px,0)}
 59%{opacity:1;transform:translate3d(-50%,0,0)}
 78%{opacity:1;transform:translate3d(-50%,-30px,0)}
 100%{opacity:0;transform:translate3d(-50%,-125px,0)}
}
@keyframes zw229-sparkle{
 0%{opacity:0;transform:translate3d(0,15px,0) rotate(-13deg) scale(.6)}
 20%{opacity:1;transform:translate3d(0,-8px,0) rotate(6deg) scale(1.1)}
 80%{opacity:.85}
 100%{opacity:0;transform:translate3d(var(--travel),-125px,0) rotate(27deg) scale(.85)}
}
/* Keep original counting hands clear but non-competing beneath the reward. */
#app .zw227-finger.zw223-result:has(.zw229-applause.zw229-show) .zw227-hand-art{
 opacity:.22!important;transition:opacity .12s linear!important;
}
#app .zw227-finger.zw223-result:has(.zw229-applause.zw229-show) .zw227-hand-number{
 opacity:.18!important;
}
@media(orientation:landscape) and (max-height:530px){
 #app .zw223-finger .zw229-applause{
  bottom:6%!important;top:auto!important;
  width:min(48%,430px)!important;
  height:min(86%,310px)!important;
 }
 body .zw222-celebration .zw229-applause{
  bottom:8%!important;
  width:min(58%,470px)!important;
  height:min(83%,310px)!important;
 }
}
@media(prefers-reduced-motion:reduce){
 .zw229-applause.zw229-show{animation:zw229-reduced 2.55s linear both!important}
 .zw229-applause.zw229-show .zw229-spark{animation:none!important;opacity:0!important}
}
@keyframes zw229-reduced{
 0%,100%{opacity:0;transform:translate3d(-50%,0,0)}
 15%,80%{opacity:1;transform:translate3d(-50%,0,0)}
}

/* ---- /unified-layout-v227.css?v=227 ---- */
/* Zählwiese v227: consistent 2D illustrated controls; original game art kept. */
#app .zw170-launch #homeBtn.zw170-home,
#app:has(.memory127-page) #homeBtn.zw-go-home {
 position:absolute!important;box-sizing:border-box!important;
 top:max(7px,env(safe-area-inset-top))!important;
 right:max(7px,env(safe-area-inset-right))!important;left:auto!important;
 width:clamp(76px,24vw,100px)!important;height:clamp(76px,24vw,100px)!important;
 z-index:75!important;display:block!important;
 padding:0!important;margin:0!important;
 background:transparent!important;border:0!important;box-shadow:none!important;
 cursor:pointer!important;touch-action:manipulation!important;
}
#app:has(.memory127-page) #homeBtn.zw-go-home{
 border-radius:50%!important;
 background:transparent url('/ui-v225/home.webp') center/contain no-repeat!important;
 filter:drop-shadow(0 4px 3px #55442d62)!important;
}
#app:has(.memory127-page) #homeBtn.zw-go-home svg,
#app:has(.memory127-page) #homeBtn.zw-go-home .zw-home-label{
 display:none!important;
}
#app:has(.memory127-page) #homeBtn.zw-go-home::before,
#app:has(.memory127-page) #homeBtn.zw-go-home::after{
 display:none!important;content:none!important;
}
#app:has(.memory127-page) #homeBtn.zw-go-home:focus-visible{
 outline:4px solid #ffe6a0!important;outline-offset:1px!important;border-radius:50%!important;
}
/* Memory keeps its three painted modes but follows the same safe corner layout. */
@media(orientation:portrait){
 #app .memory218-select .memory218-title{
  left:13%!important;width:60%!important;top:8.8%!important;height:9.1%!important;
 }
 #app .memory218-select .memory218-heroes{
  top:18%!important;height:30%!important;
 }
 #app .memory218-select .memory218-choices{
  left:.5%!important;width:99%!important;top:53%!important;height:30%!important;
  gap:clamp(0px,.4vw,5px)!important;
 }
}
#app .memory218-select .memory218-hint{
 background:transparent url('/hunt-v189/wood-sign.webp') center/100% 100% no-repeat!important;
 border:0!important;box-shadow:none!important;
 color:#764224!important;text-shadow:0 1px #ffedd0!important;
 padding:12px 18px!important;min-height:45px!important;
 font-family:'Segoe Print','Trebuchet MS',sans-serif!important;
 filter:drop-shadow(0 3px 2px #65482f58)!important;
}
/* Backstube keeps its real oven/light functionality; only navigation and
   red Play dimensions are aligned with the other entrance screens. */
#app .zw170-launch.zw222-bakery-entry #homeBtn.zw222-bakery-home{
 top:max(7px,env(safe-area-inset-top))!important;
 right:max(7px,env(safe-area-inset-right))!important;
 width:clamp(76px,24vw,100px)!important;height:clamp(76px,24vw,100px)!important;
}
#app .zw170-launch.zw222-bakery-entry #zw170Play.zw222-bakery-play{
 left:50%!important;right:auto!important;top:auto!important;bottom:4.5%!important;
 width:clamp(125px,40vw,164px)!important;height:clamp(125px,40vw,164px)!important;
 min-width:0!important;min-height:0!important;
 transform:translateX(-50%)!important;background:transparent!important;
}
#app .zw170-launch.zw222-bakery-entry #zw170Play.zw222-bakery-play:active{
 transform:translateX(-50%) scale(.94)!important;
}
@media(orientation:portrait) and (max-height:650px){
 #app .zw170-launch.zw222-bakery-entry #zw170Play.zw222-bakery-play{
  width:clamp(105px,37vw,140px)!important;height:clamp(105px,37vw,140px)!important;
  bottom:2.2%!important;
 }
}
@media(orientation:landscape){
 #app .zw170-launch #homeBtn.zw170-home,
 #app:has(.memory127-page) #homeBtn.zw-go-home,
 #app .zw170-launch.zw222-bakery-entry #homeBtn.zw222-bakery-home{
  width:clamp(74px,20dvh,98px)!important;height:clamp(74px,20dvh,98px)!important;
 }
 #app .zw170-launch.zw222-bakery-entry #zw170Play.zw222-bakery-play{
  width:clamp(90px,26dvh,120px)!important;height:clamp(90px,26dvh,120px)!important;
  bottom:1.5%!important;
 }
}
@media(orientation:portrait) and (max-width:355px){
 #app .zw170-launch #homeBtn.zw170-home,
 #app:has(.memory127-page) #homeBtn.zw-go-home,
 #app .zw170-launch.zw222-bakery-entry #homeBtn.zw222-bakery-home{
  width:76px!important;height:76px!important;
 }
 #app .memory218-select .memory218-title{
  top:10%!important;height:8.8%!important;
 }
}

/* Shared in-game navigation: same hand-painted house in the upper-right. */
#app #homeBtn.zw-go-home{
  box-sizing:border-box!important;display:block!important;
  position:absolute!important;
  top:max(7px,env(safe-area-inset-top))!important;
  right:max(7px,env(safe-area-inset-right))!important;left:auto!important;
  width:clamp(72px,19vw,84px)!important;
  height:clamp(72px,19vw,84px)!important;
  min-width:0!important;min-height:0!important;
  max-width:none!important;max-height:none!important;
  padding:0!important;margin:0!important;
  border:0!important;border-radius:50%!important;box-shadow:none!important;
  background:transparent url('/ui-v225/home.webp') center/contain no-repeat!important;
  z-index:95!important;
  filter:drop-shadow(0 3px 3px #5c483762)!important;
  cursor:pointer!important;touch-action:manipulation!important;
}
#app #homeBtn.zw-go-home>svg,
#app #homeBtn.zw-go-home>.zw-home-label{
  display:none!important;
}
#app #homeBtn.zw-go-home::before,#app #homeBtn.zw-go-home::after{
  display:none!important;content:none!important;
}
/* Memory SELECT uses the larger introduction-size home button. */
#app:has(.memory218-select) #homeBtn.zw-go-home{
 width:clamp(76px,24vw,100px)!important;
 height:clamp(76px,24vw,100px)!important;
 max-width:none!important;max-height:none!important;
}
/* Finger-Rechner has its own stage header: shift its actual home button to
   the common corner, without touching the game or the counting controls. */
#app .zw223-finger .zw223-top #homeBtn.zw223-home{
  position:absolute!important;
  top:7px!important;bottom:auto!important;
  right:7px!important;left:auto!important;
  width:clamp(72px,19vw,84px)!important;
  height:clamp(72px,19vw,84px)!important;
  min-width:0!important;min-height:0!important;
  max-width:none!important;max-height:none!important;
  padding:0!important;margin:0!important;
  background:transparent!important;border:0!important;box-shadow:none!important;
  border-radius:50%!important;
  z-index:95!important;
  transform:none!important;
  filter:drop-shadow(0 3px 3px #5c483762)!important;
}
#app .zw223-finger .zw223-top #homeBtn.zw223-home img{
  content:url('/ui-v225/home.webp')!important;
  display:block!important;width:100%!important;height:100%!important;
  max-width:none!important;object-fit:contain!important;
  background:transparent!important;
}
@media(orientation:portrait){
  #app .zw223-finger .zw223-title{
    width:58%!important;transform:translateX(-8%)!important;
  }
}
/* The Backstube selection has its own controls, but shares the same wood home
   artwork and safe right inset as every other game. */
#app .zw209 #homeBtn.zw209-home{
  width:clamp(72px,19vw,84px)!important;
  height:clamp(72px,19vw,84px)!important;
  max-width:none!important;max-height:none!important;
  right:max(7px,env(safe-area-inset-right))!important;
  top:max(7px,env(safe-area-inset-top))!important;
  background:transparent!important;border:0!important;
  box-shadow:none!important;z-index:96!important;
}
#app .zw209 #homeBtn.zw209-home img{
  content:url('/ui-v225/home.webp')!important;
  width:100%!important;height:100%!important;object-fit:contain!important;
}
#app .zw209 #zw209Restart.zw209-reset{
  top:calc(max(7px,env(safe-area-inset-top)) + clamp(75px,20vw,88px))!important;
  right:max(12px,calc(env(safe-area-inset-right) + 5px))!important;
  width:clamp(53px,15vw,63px)!important;height:clamp(53px,15vw,63px)!important;
  max-width:none!important;max-height:none!important;z-index:96!important;
}
/* Make the smallest restart controls more touch-friendly, without moving
   them over gameplay or changing the game's established restart logic. */
#app:has(.zw223-finger)>#zw95Restart{
  width:clamp(55px,15vw,66px)!important;
  height:clamp(55px,15vw,66px)!important;
  min-width:0!important;min-height:0!important;
}
#app .memory127-game #memory127Restart{
  width:clamp(58px,16vw,70px)!important;
  height:clamp(58px,16vw,70px)!important;
  min-width:0!important;min-height:0!important;
}
/* Compact landscape: keep the corner controls readable without covering UI. */
@media(orientation:landscape){
  #app #homeBtn.zw-go-home,
  #app .zw223-finger .zw223-top #homeBtn.zw223-home,
  #app .zw209 #homeBtn.zw209-home{
    width:clamp(60px,18dvh,76px)!important;
    height:clamp(60px,18dvh,76px)!important;
  }
  #app:has(.memory218-select) #homeBtn.zw-go-home{
    width:clamp(74px,20dvh,98px)!important;
    height:clamp(74px,20dvh,98px)!important;
  }
  #app:has(.zw223-finger)>#zw95Restart{
    width:52px!important;height:52px!important;
  }
  #app .memory127-game #memory127Restart{
    width:54px!important;height:54px!important;
  }
  #app .zw209 #zw209Restart.zw209-reset{
    top:calc(max(7px,env(safe-area-inset-top)) + clamp(61px,19dvh,80px))!important;
    width:clamp(47px,14dvh,57px)!important;
    height:clamp(47px,14dvh,57px)!important;
  }
}

/* Final corner alignment: distinguish Memory's selection and play screens. */
#app:has(.memory127-game) #homeBtn.zw-go-home{
  width:clamp(72px,19vw,84px)!important;
  height:clamp(72px,19vw,84px)!important;
  max-width:none!important;max-height:none!important;
}
#app .zw223-finger .zw223-top #homeBtn.zw223-home{
  top:2px!important;right:0!important;
}
@media(orientation:landscape){
  #app:has(.memory127-game) #homeBtn.zw-go-home{
    width:clamp(60px,18dvh,76px)!important;
    height:clamp(60px,18dvh,76px)!important;
  }
}

/* ---- /finger-v226/polish.css?v=226 ---- */
/* Zählwiese Finger Rechner v226 – non-canvas polishing of hand-painted assets */
#app .zw223-finger .zw226-answer{
  background-image:var(--paint)!important;
  background-color:transparent!important;
  border:0!important;
  box-shadow:none!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:100% 100%!important;
  color:#65422f!important;
  padding:0 0 .035em!important;
  text-align:center!important;
  font-variant-numeric:lining-nums tabular-nums!important;
  font-feature-settings:"lnum" 1!important;
  font-weight:900!important;
  line-height:1!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  text-shadow:0 1px 0 #fff4dd,0 2px 1px #b7a284!important;
  filter:drop-shadow(0 2px 1px #405e4c28);
}
#app .zw223-finger button.zw226-answer:focus-visible{
  outline:3px solid #ffecaf!important;outline-offset:3px!important;
}
#app .zw223-finger button.zw226-answer:active{
  transform:scale(.94)!important;
  filter:drop-shadow(0 1px 1px #384d411c)!important;
}
#app .zw223-finger .zw226-answer.is-correct{
  color:#24643c!important;
  opacity:1!important;
  filter:drop-shadow(0 0 10px #ffeb9e)!important;
}
#app .zw223-finger .zw226-answer.wrong{
  color:#a8584e!important;
  filter:drop-shadow(0 0 6px #e5a19180)!important;
}
#app .zw223-finger .zw226-hands .zw223-hand-slot{
  min-width:0!important;
  box-shadow:none!important;
  border:0!important;
  background-color:transparent!important;
  -webkit-touch-callout:none;
}
#app .zw223-finger .zw226-hands .zw223-hand-image{
  object-position:center bottom!important;
  filter:drop-shadow(0 2px 1px #79544035)!important;
}
#app .zw223-finger .zw223-slot-number{
  font-family:'Chalkboard SE','Segoe Print',system-ui,sans-serif!important;
  text-shadow:0 1px 0 #fff5dc!important;
}
#app .zw223-finger .zw226-reward-line{
  display:flex!important;justify-content:center!important;align-items:center!important;
  gap:3px!important;max-width:100%;min-width:0;
  position:relative;z-index:2;
}
#app .zw223-finger .zw226-reward-star{
  display:block!important;flex:none!important;
  width:clamp(21px,5.3vw,34px)!important;
  height:clamp(21px,5.3vw,34px)!important;
  object-fit:contain!important;
  filter:drop-shadow(0 1px 1px #8f754559);
  animation:zw226-star-bounce .7s ease-out both;
}
#app .zw223-finger .zw226-reward-line .zw223-success-message{
  padding:4px 8px!important;
  margin:0!important;line-height:1.15!important;
  white-space:nowrap!important;
  font-size:clamp(13px,3.5vw,22px)!important;
  border:0!important;
}
#app .zw223-finger .zw226-stage{
  overflow:visible!important;
}
#app .zw223-finger.zw223-question .zw226-board{
  animation:zw226-intro-board .4s ease-out both;
}
#app .zw223-finger.zw223-question .zw226-hands .zw223-hand-slot{
  animation:zw226-intro-card .45s ease-out both;
}
#app .zw223-finger.zw223-question .zw226-hands .zw223-hand-slot:last-child{
  animation-delay:.06s;
}
#app .zw223-finger.zw223-question .zw226-answers{
  animation:none!important;
}
#app .zw223-finger .zw226-count-star{
  position:absolute!important;z-index:15!important;
  left:var(--sx)!important;top:var(--sy)!important;
  width:clamp(20px,6vw,31px)!important;
  height:clamp(20px,6vw,31px)!important;
  max-width:20%!important;object-fit:contain!important;
  pointer-events:none!important;
  opacity:0;
  filter:drop-shadow(0 1px 2px #8f6a4880);
  animation:zw226-count-star 1.05s cubic-bezier(.2,.7,.25,1) calc(var(--i)*.10s) both!important;
}
#app .zw223-finger .zw223-progress i.current{
  outline:2px solid #fff5c0;outline-offset:1px;
  animation:zw226-progress-pulse 2.6s ease-in-out infinite;
}
#app .zw223-finger .zw223-title{
  image-rendering:auto!important;
}
#app .zw223-finger #zw95Restart,
#app:has(.zw223-finger)>#zw95Restart{
  border:0!important;box-shadow:none!important;background:transparent!important;
}
@keyframes zw226-intro-board{
  from{opacity:1;transform:translateY(-3px) scale(.99)}
  to{opacity:1;transform:translateY(0) scale(1)}
}
@keyframes zw226-intro-card{
  from{opacity:1;transform:translateY(4px) rotate(-1deg)}
  to{opacity:1;transform:translateY(0) rotate(0)}
}
@keyframes zw226-intro-answers{
  from{opacity:1;transform:translateY(0)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes zw226-count-star{
  0%{opacity:0;transform:translateY(5px) rotate(-9deg) scale(.65)}
  20%{opacity:.98;transform:translateY(-5px) rotate(8deg) scale(1.16)}
  55%{opacity:1;transform:translateY(-10px) rotate(0) scale(1)}
  100%{opacity:0;transform:translateY(-28px) rotate(23deg) scale(.6)}
}
@keyframes zw226-star-bounce{
  0%{opacity:0;transform:scale(.5) rotate(-16deg)}
  62%{opacity:1;transform:scale(1.2) rotate(11deg)}
  100%{opacity:1;transform:scale(1) rotate(0)}
}
@keyframes zw226-progress-pulse{
  0%,100%{transform:scale(1.09)}
  50%{transform:scale(1.22)}
}
@media(orientation:landscape){
  #app .zw223-finger .zw226-reward-star{
    width:clamp(18px,3vw,28px)!important;
    height:clamp(18px,3vw,28px)!important;
  }
  #app .zw223-finger .zw226-reward-line .zw223-success-message{
    font-size:clamp(11px,1.65vw,18px)!important;
    padding:3px 6px!important;
  }
  #app .zw223-finger .zw226-count-star{
    width:clamp(18px,2.5vw,29px)!important;height:clamp(18px,2.5vw,29px)!important;
  }
}
@media(max-width:350px) and (orientation:portrait){
  #app .zw223-finger .zw226-reward-line{gap:1px!important}
  #app .zw223-finger .zw226-reward-line .zw223-success-message{
    font-size:12px!important;padding:3px 4px!important;
  }
  #app .zw223-finger .zw226-reward-star{width:22px!important;height:22px!important}
}
@media(prefers-reduced-motion:reduce){
  #app .zw223-finger .zw226-stage *,
  #app .zw223-finger .zw226-count-star{
    animation:none!important;transition:none!important;
  }
  #app .zw223-finger .zw226-count-star{display:none!important}
}

/* ---- /finger-v227/layout.css?v=227 ---- */
/* Finger Rechner 2.4: board-free hand-focused layout, original illustrated WebP assets.
   No Canvas, SVG-generated fingers or baked-in UI text. */
#app .main-content.zw223-finger.zw227-finger .zw227-stage {
  grid-template-rows:12% 4.5% 8% 46% 17% 12.5%!important;
  grid-template-columns:minmax(0,1fr)!important;
}
#app .zw227-finger .zw227-sumline {
  grid-row:3!important;grid-column:1!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  align-self:stretch!important;justify-self:center!important;
  gap:clamp(6px,3vw,18px)!important;
  width:100%!important;min-width:0!important;
  color:#62442d!important;
  font:900 clamp(28px,8vw,52px)/1 'Chalkboard SE','Marker Felt','Segoe Print',system-ui,sans-serif!important;
  letter-spacing:-.035em!important;
  white-space:nowrap!important;
  text-shadow:1px 1px #fff5d7,-1px -1px #fff3d6,0 2px 2px #faf1d9c7!important;
  pointer-events:none!important;
}
#app .zw227-finger .zw227-sumline b{
  font:inherit!important;font-weight:900!important;color:#96643a!important;
}
#app .zw227-finger .zw227-sumline strong{
  font:inherit!important;font-size:1.12em!important;color:#b46d43!important;
  text-shadow:1px 1px #fff4d9,-1px -1px #fff4d9,0 2px 2px #8a6c4b55!important;
}
#app .zw227-finger.zw223-result .zw227-sumline strong{
  color:#297348!important;
}
#app .zw227-finger .zw227-hands,
#app .zw227-finger .zw226-hands {
  grid-row:4!important;grid-column:1!important;
  justify-content:space-around!important;align-items:center!important;
  gap:0!important;height:100%!important;
}
#app .zw227-finger .zw227-hands .zw223-hand-slot,
#app .zw227-finger .zw226-hands .zw223-hand-slot {
  flex:0 0 47%!important;
  height:98%!important;
  min-width:0!important;max-width:none!important;
  position:relative!important;padding:0!important;
  border:0!important;box-shadow:none!important;background:transparent!important;
  overflow:visible!important;
}
#app .zw227-finger .zw223-hands.zw223-one-hand .zw223-hand-slot{
  flex-basis:70%!important;max-width:365px!important;
}
#app .zw227-finger .zw223-hands .zw223-paper{
  position:absolute!important;inset:0!important;
  width:100%!important;height:100%!important;
  object-fit:fill!important;pointer-events:none!important;
  background:transparent!important;
}
#app .zw227-finger .zw227-hand-art{
  position:absolute!important;z-index:5!important;
  inset:3% 2% 4%!important;
  display:block!important;overflow:visible!important;
  pointer-events:none!important;
  transform-origin:50% 75%;
  animation:zw223-breathe 3.5s ease-in-out infinite;
}
#app .zw227-finger .zw227-hand-image,
#app .zw227-finger .zw227-hand-art .zw223-hand-image{
  position:absolute!important;left:0!important;top:0!important;
  width:100%!important;height:100%!important;
  max-height:none!important;max-width:none!important;
  object-fit:contain!important;object-position:center center!important;
  transform:none!important;animation:none!important;
  filter:drop-shadow(0 2px 2px #926c4d35)!important;
  pointer-events:none!important;
}
#app .zw227-finger .zw227-hand-number{
  position:absolute!important;left:50%!important;top:60%!important;
  z-index:10!important;display:flex!important;align-items:center!important;justify-content:center!important;
  transform:translate(-50%,-50%) rotate(-5deg)!important;
  width:clamp(38px,11vw,65px)!important;height:clamp(38px,11vw,65px)!important;
  padding:0!important;background:transparent!important;border:0!important;
  border-radius:0!important;box-shadow:none!important;
  color:#6b432c!important;
  font:900 clamp(29px,8vw,47px)/1 'Chalkboard SE','Segoe Print','Marker Felt',system-ui,sans-serif!important;
  text-shadow:
    1px 1px 0 #fff2d8,-1px -1px 0 #fff2d8,1px -1px 0 #fff2d8,
    -1px 1px 0 #fff2d8,0 2px 2px #754e3559!important;
  -webkit-text-stroke:.4px #fff0d7!important;
  pointer-events:none!important;
}
#app .zw227-finger .zw227-hand-art.zw227-hand-5 .zw227-hand-number{
  top:59%!important;
}
#app .zw227-finger .zw227-hand-art.zw227-hand-1 .zw227-hand-number{
  top:59%!important;
}
#app .zw227-finger .zw223-plus{
  width:clamp(33px,10%,59px)!important;top:53%!important;z-index:8!important;
}
#app .zw227-finger .zw227-answers,
#app .zw227-finger .zw226-answers{
  grid-row:5!important;grid-column:1!important;
  display:flex!important;
  width:100%!important;height:100%!important;min-height:0!important;
}
#app .zw227-finger .zw227-footer,
#app .zw227-finger .zw226-footer{
  grid-row:6!important;grid-column:1!important;
  height:100%!important;min-height:0!important;
}
#app .zw227-finger .zw223-footer .zw223-friend{height:96%!important}
#app .zw227-finger.zw223-result .zw223-hand-slot:first-child .zw227-hand-art{
  animation:zw224-three-clap-left 1.95s cubic-bezier(.28,.65,.38,1) both!important;
}
#app .zw227-finger.zw223-result .zw223-hand-slot:last-child .zw227-hand-art{
  animation:zw224-three-clap-right 1.95s cubic-bezier(.28,.65,.38,1) both!important;
}
#app .zw227-finger.zw223-result .zw223-one-hand .zw227-hand-art{
  animation:zw224-one-hand-cheer 1.1s ease-in-out both!important;
}
/* Legacy clap and breathe transforms must not separate the drawn number from its hand. */
#app .zw227-finger.zw223-result .zw223-hand-slot .zw227-hand-image,
#app .zw227-finger .zw223-hand-slot.zw223-touched .zw227-hand-image{
  animation:none!important;transform:none!important;
}
#app .zw227-finger .zw223-hand-slot.zw223-touched .zw227-hand-art{
  animation:zw223-hand-tap .55s ease-out both!important;
}
#app .zw227-finger .zw227-sumline:has(+ .zw227-hands){
  margin:0!important;
}
@media(orientation:landscape){
  #app .main-content.zw223-finger.zw227-finger .zw227-stage{
    grid-template-columns:24% 50% 26%!important;
    grid-template-rows:17% 66% 17%!important;
  }
  #app .zw227-finger .zw227-sumline {
    grid-column:1!important;grid-row:2!important;
    font-size:clamp(29px,3.9vw,51px)!important;
    gap:clamp(3px,.8vw,12px)!important;
    height:100%!important;
  }
  #app .zw227-finger .zw227-hands,
  #app .zw227-finger .zw226-hands{
    grid-column:2!important;grid-row:2!important;
    width:100%!important;height:100%!important;
  }
  #app .zw227-finger .zw227-hands .zw223-hand-slot,
  #app .zw227-finger .zw226-hands .zw223-hand-slot{
    flex-basis:48%!important;height:97%!important;
  }
  #app .zw227-finger .zw223-hands.zw223-one-hand .zw223-hand-slot{
    flex-basis:64%!important;max-width:320px!important;
  }
  #app .zw227-finger .zw227-hand-number{
    width:clamp(34px,4.2vw,56px)!important;height:clamp(34px,4.2vw,56px)!important;
    font-size:clamp(25px,3.6vw,42px)!important;
  }
  #app .zw227-finger .zw227-answers,
  #app .zw227-finger .zw226-answers{
    grid-column:3!important;grid-row:2!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-template-rows:repeat(2,minmax(0,1fr))!important;
    align-items:center!important;justify-items:center!important;
    gap:1% 3%!important;
  }
  #app .zw227-finger .zw227-footer,
  #app .zw227-finger .zw226-footer{
    grid-column:2/4!important;grid-row:3!important;
  }
  #app .zw227-finger .zw223-progress{
    grid-column:1!important;grid-row:3!important;
  }
}
@media(orientation:portrait) and (max-height:630px){
  #app .main-content.zw223-finger.zw227-finger .zw227-stage{
    grid-template-rows:11% 4% 7% 48% 18% 12%!important;
  }
}
@media(prefers-reduced-motion:reduce){
  #app .zw227-finger .zw227-hand-art{
    animation:none!important;transition:none!important;
  }
}


/* The shared v226 hand-clap is a dedicated, properly drawn overlay.
   Keep the counting hands still during applause; numbers stay on their palms. */
#app .zw227-finger.zw223-result .zw227-hand-art,
#app .zw227-finger.zw223-result .zw223-one-hand .zw227-hand-art {
  animation:none!important;transform:none!important;
}

/* ---- /picnic-v229/style.css?v=229 ---- */
/* ZAEHLWIESE PICKNICK 2.0 - genuine pencil / wax-pencil raster illustrations.
   Scoped to Picknick only. There are no browser Canvas graphics. */
#app .zw107.main-content{
 background:#a8d5a1!important;overflow:hidden!important;isolation:isolate!important;
 user-select:none!important;-webkit-user-select:none!important;-webkit-touch-callout:none!important;
}
#app .zw107 .zw229-scene{
 position:absolute;inset:0;z-index:0;pointer-events:none;
 background:url('/picnic-v229/scene-portrait.webp') center/100% 100% no-repeat!important;
}
#app .zw107 .zw107-title{
 position:absolute!important;top:1.4%!important;left:19%!important;
 width:53%!important;height:10.2%!important;z-index:60!important;
 background:url('/picnic-v229/title.webp') center/contain no-repeat!important;
 box-shadow:none!important;filter:drop-shadow(0 3px 2px #6b442777)!important;
 transform:none!important;
}
#app .zw107 .zw107-title svg{display:none!important}
#app:has(.zw107) .app-header .header-tools{left:2%!important;top:8px!important;z-index:160!important}
#app:has(.zw107) .app-header button.zw-go-home{
 width:clamp(55px,8vw,78px)!important;min-width:55px!important;height:clamp(55px,8vw,78px)!important;
 background:transparent url('/picnic-v229/home.webp') center/contain no-repeat!important;
 border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important;
 filter:drop-shadow(0 3px 2px #6c4f3377);
}
#app:has(.zw107) .app-header button.zw-go-home svg,
#app:has(.zw107) .app-header button.zw-go-home img{opacity:0!important}
#app .zw107 .zw107-controls{top:1.1%!important;right:1%!important;gap:3px!important;z-index:100!important}
#app .zw107 button.zw107-roundbtn{
 flex:0 0 auto!important;width:clamp(50px,7.5vw,69px)!important;height:clamp(50px,7.5vw,69px)!important;
 padding:0!important;border:0!important;outline:0!important;border-radius:0!important;
 box-shadow:none!important;filter:drop-shadow(0 3px 3px #63472b8a)!important;
 background-size:contain!important;background-position:center!important;background-repeat:no-repeat!important;
 transition:transform .17s ease,filter .17s ease!important;
}
#app .zw107 .zw107-help{background-image:url('/picnic-v118/btn-hint.webp')!important;background-color:transparent!important}
#app .zw107 .zw107-restart{background-image:url('/picnic-v229/restart.webp')!important;background-color:transparent!important}
#app .zw107 .zw107-roundbtn svg{display:none!important}
#app .zw107 button.zw107-roundbtn:active{transform:scale(.9)!important}
#app .zw107 .zw107-order{
 left:4%!important;right:4%!important;top:12.7%!important;height:17.2%!important;
 z-index:25!important;background:transparent url('/picnic-v229/order-board.webp') center/100% 100% no-repeat!important;
 border:0!important;outline:0!important;border-radius:0!important;box-shadow:none!important;
 padding:clamp(16px,4.2vw,34px) clamp(27px,6.5vw,60px) clamp(15px,2.8vw,26px)!important;
 display:flex!important;align-items:stretch!important;justify-content:center!important;
 gap:4px!important;transform:none!important;
}
#app .zw107 .zw107-goal{
 position:relative!important;flex:1 1 0!important;min-width:0!important;
 border:0!important;border-radius:0!important;background:transparent!important;
 gap:0!important;transform:none!important;box-shadow:none!important;
}
#app .zw107 .zw107-goal+.zw107-goal{border-left:2px dashed #965c3399!important}
#app .zw107 .zw107-goal-food{height:79%!important;width:100%!important;gap:0!important;overflow:visible!important}
#app .zw107 .zw107-goal-piece{height:100%!important;max-width:50px!important;overflow:visible!important}
#app .zw107 .zw107-goal-piece img.zw229-food{
 position:static!important;width:100%!important;height:100%!important;object-fit:contain!important;
 filter:drop-shadow(0 2px 1px #64361e66)!important;
}
#app .zw107 .zw107-goal-piece.done img{filter:drop-shadow(0 0 4px #fff5a8)!important}
#app .zw107 .zw107-goal-dots{height:18%!important;min-height:6px!important;gap:3px!important}
#app .zw107 .zw107-goal-dots i{
 width:clamp(6px,1.4vw,12px)!important;height:clamp(6px,1.4vw,12px)!important;
 border:2px solid #7f522c!important;background:#fef0c9!important;box-shadow:none!important;
}
#app .zw107 .zw107-goal-dots i.yes{background:#a8cc77!important;border-color:#5c8a46!important}
#app .zw107 .zw109-round-flowers{top:28.2%!important;height:2.5%!important;opacity:.95!important;z-index:24!important}
#app .zw107 .zw107-garden{
 left:2%!important;width:96%!important;top:30%!important;height:39%!important;
 align-items:flex-end!important;gap:0!important;z-index:16!important;
 transform:none!important;transform-origin:center bottom!important;pointer-events:none!important;
}
#app .zw107 .zw107-friend{
 flex:0 0 29%!important;width:29%!important;height:100%!important;
 overflow:visible!important;display:flex!important;align-items:flex-end!important;
 justify-content:center!important;pointer-events:auto!important;
 filter:drop-shadow(0 5px 2px #695b3566)!important;
 animation:zw229-idle 3.1s ease-in-out infinite alternate!important;
}
#app .zw107 .zw107-igor{animation-delay:-1.4s!important}
#app .zw107 .zw229-character{
 display:block!important;position:relative!important;flex:none!important;
 max-width:none!important;width:174%!important;height:92%!important;
 object-fit:contain!important;object-position:center bottom!important;pointer-events:none!important;
}
#app .zw107 .zw107-friend.zw109-joy .zw229-character,
#app .zw107 .zw107-friend.zw229-dance .zw229-character{
 animation:zw229-friend-cheer .75s ease-in-out 2!important;
}
#app .zw107 .zw107-basket-target{
 flex:0 0 43%!important;width:43%!important;height:97%!important;
 z-index:12!important;filter:drop-shadow(0 7px 4px #71522d77)!important;
 transform-origin:50% 80%!important;pointer-events:auto!important;
}
#app .zw107 .zw107-basket-illustration{inset:0!important;overflow:visible!important}
#app .zw107 .zw108-basket-img{
 object-fit:contain!important;filter:drop-shadow(0 3px 2px #5d462960)!important;
}
#app .zw107 .zw108-basket-lid-img{filter:drop-shadow(0 3px 2px #5d462960)!important}
#app .zw107 .zw109-closed-basket{width:100%!important;height:100%!important;object-fit:contain!important}
#app .zw107 .zw107-basket-target.zw107-hover{
 transform:scale(1.08)!important;filter:drop-shadow(0 0 13px #ffed85) drop-shadow(0 7px 5px #59422177)!important;
}
#app .zw107 .zw107-basket-target.zw107-accepted{animation:zw229-basket-bump .4s ease-out!important}
#app .zw107 .zw107-basket-filled{display:flex!important;z-index:5!important;inset:37% 13% 36%!important;flex-wrap:wrap!important}
#app .zw107 .zw107-collected{height:47%!important;flex:0 0 22%!important}
#app .zw107 .zw107-collected img{height:100%!important;width:100%!important;object-fit:contain!important}
#app .zw107 .zw107-tray{
 position:absolute!important;bottom:-1%!important;left:0!important;right:0!important;
 width:100%!important;height:32.3%!important;z-index:23!important;
 border:0!important;outline:0!important;border-radius:0!important;box-shadow:none!important;
 background:transparent url('/picnic-v229/table.webp') center/100% 100% no-repeat!important;
 padding:0!important;transform:none!important;overflow:visible!important;
}
#app .zw107 .zw107-tray::before,
#app .zw107 .zw107-tray-seam{display:none!important}
#app .zw107 .zw107-food-grid{
 display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;
 grid-template-rows:repeat(2,minmax(0,1fr))!important;
 position:relative!important;width:100%!important;height:100%!important;
 align-items:center!important;justify-items:center!important;
 gap:3px 2px!important;padding:clamp(37px,6.1vh,60px) 7px 10px!important;
}
#app .zw107 .zw107-food-button{
 position:relative!important;display:grid!important;place-items:center!important;
 width:100%!important;height:100%!important;max-width:100px!important;max-height:115px!important;
 min-width:0!important;min-height:40px!important;padding:0!important;
 border:none!important;outline:0!important;border-radius:50%!important;
 background:transparent url('/picnic-v229/token-1.webp') center/100% 100% no-repeat!important;
 box-shadow:none!important;filter:drop-shadow(0 3px 2px #6b482c88)!important;
 transform:none!important;will-change:auto!important;cursor:grab!important;touch-action:none!important;
}
#app .zw107 .zw107-food-button:nth-child(4n+2){background-image:url('/picnic-v229/token-2.webp')!important}
#app .zw107 .zw107-food-button:nth-child(4n+3){background-image:url('/picnic-v229/token-3.webp')!important}
#app .zw107 .zw107-food-button:nth-child(4n+4){background-image:url('/picnic-v229/token-4.webp')!important}
#app .zw107 .zw107-food-button img.zw229-food{
 position:absolute!important;inset:10%!important;width:80%!important;height:80%!important;
 max-width:80%!important;max-height:80%!important;object-fit:contain!important;
 pointer-events:none!important;filter:drop-shadow(0 2px 2px #5c3a2180)!important;
}
#app .zw107 .zw107-food-button.zw107-hintglow{animation:zw229-hint 1.1s ease-in-out 3!important}
#app .zw107 .zw107-food-button.zw229-touch{animation:zw229-tap .38s ease!important}
#app .zw107 .zw107-food-button.zw107-lift{opacity:.45!important}
#app .zw107 .zw107-next{
 width:clamp(64px,11vw,90px)!important;height:clamp(64px,11vw,90px)!important;
 background:transparent url('/picnic-v117/next-arrow.webp') center/contain no-repeat!important;border:0!important;
}
#app .zw107 .zw107-next-wrap{top:73%!important;right:9%!important}
#app .zw107 .zw229-butterfly{
 position:absolute!important;z-index:9!important;width:clamp(27px,7vw,70px)!important;
 height:auto!important;object-fit:contain!important;pointer-events:none!important;
 filter:drop-shadow(0 2px 2px #7a69425b)!important;
}
#app .zw107 .zw229-fly-1{top:31%!important;left:5%!important;animation:zw229-flutter 8.5s ease-in-out infinite!important}
#app .zw107 .zw229-fly-2{top:40%!important;right:4%!important;animation:zw229-flutter 10.5s -3s ease-in-out infinite reverse!important}
#app .zw107 .zw229-flower{
 position:absolute!important;z-index:7!important;width:clamp(26px,5vw,68px)!important;pointer-events:none!important;
 filter:drop-shadow(0 1px 2px #5f603e55)!important;animation:zw229-sway 5s ease-in-out infinite alternate!important;
}
#app .zw107 .zw229-flower-1{left:5%!important;top:61%!important}
#app .zw107 .zw229-flower-2{right:3%!important;top:61%!important;animation-delay:-2s!important}
#app .zw107.zw107-win .zw229-character{animation:zw229-friend-cheer .82s ease-in-out 3!important}
#app .zw107 .zw117-reward{
 z-index:40!important;left:3%!important;top:36%!important;width:94%!important;height:43%!important;
 overflow:visible!important;isolation:isolate!important;
}
#app .zw107 .zw117-reward-blanket{
 left:0!important;width:100%!important;bottom:2%!important;height:40%!important;object-fit:fill!important;z-index:1!important;
}
#app .zw107 .zw117-reward-moritz{left:0!important;width:44%!important;height:88%!important;bottom:15%!important;z-index:5!important}
#app .zw107 .zw117-reward-igor{right:0!important;width:44%!important;height:88%!important;bottom:15%!important;z-index:5!important}
#app .zw107 .zw117-reward-basket{left:32%!important;width:36%!important;height:66%!important;bottom:28%!important;z-index:4!important}
#app .zw107 .zw229-reward-plate{
 position:absolute!important;left:26%!important;bottom:3%!important;width:48%!important;height:25%!important;
 object-fit:contain!important;z-index:6!important;filter:drop-shadow(0 3px 2px #68513966)!important;
}
#app .zw107 .zw117-reward-foods{bottom:8%!important;left:27%!important;width:46%!important;height:16%!important;z-index:7!important}
#app .zw107 .zw117-reward-food img{height:100%!important;width:100%!important;object-fit:contain!important}
#app .zw107.zw117-arrived .zw117-reward-moritz{animation:zw229-party-a .8s ease-in-out infinite alternate!important}
#app .zw107.zw117-arrived .zw117-reward-igor{animation:zw229-party-b .85s ease-in-out infinite alternate!important}
#app .zw107.zw117-arrived .zw117-reward-food{animation:zw229-foodjoy .9s ease-in-out infinite alternate!important}
#app .zw107.zw117-arrived .zw117-reward-food:nth-child(2n){animation-delay:-.4s!important}
#app .zw107 .zw229-party{position:absolute;inset:-12% -4%;z-index:15;pointer-events:none;overflow:visible!important}
#app .zw107 .zw229-party img{
 position:absolute;width:clamp(19px,6vw,53px);height:auto;bottom:20%;left:calc(50% + var(--offset));
 animation:zw229-balloon 3.6s calc(var(--i)*-.31s) ease-in-out infinite!important;
 filter:drop-shadow(0 2px 2px #6d563a66);
}
#app .zw107.zw117-arrived .zw107-order,
#app .zw107.zw117-arrived .zw107-tray,
#app .zw107.zw117-arrived .zw109-round-flowers{display:none!important}
#app .zw107.zw117-arrived .zw107-next-wrap{top:78%!important;right:9%!important}
#app .zw107.zw117-arrived .zw229-flower{opacity:1!important}
@keyframes zw229-idle{from{transform:translateY(1px) rotate(-1.8deg)}to{transform:translateY(-5px) rotate(2deg)}}
@keyframes zw229-friend-cheer{0%,100%{transform:translateY(0) rotate(0)}30%{transform:translateY(-14px) rotate(-9deg)}65%{transform:translateY(-3px) rotate(9deg)}}
@keyframes zw229-basket-bump{0%,100%{transform:scale(1)}42%{transform:scale(1.08) rotate(-3deg)}72%{transform:scale(.96) rotate(2deg)}}
@keyframes zw229-hint{50%{filter:drop-shadow(0 0 12px #fff58c);transform:scale(1.12)}}
@keyframes zw229-tap{0%,100%{transform:scale(1)}50%{transform:scale(.87) rotate(-5deg)}}
@keyframes zw229-flutter{0%,100%{transform:translate3d(0,0,0) rotate(5deg)}28%{transform:translate3d(16px,-17px,0) rotate(-12deg)}64%{transform:translate3d(-5px,-10px,0) rotate(14deg)}}
@keyframes zw229-sway{from{transform:rotate(-10deg)}to{transform:rotate(12deg)}}
@keyframes zw229-party-a{from{transform:translateY(0) rotate(-4deg)}to{transform:translateY(-16px) rotate(8deg)}}
@keyframes zw229-party-b{from{transform:translateY(-12px) rotate(7deg)}to{transform:translateY(0) rotate(-6deg)}}
@keyframes zw229-foodjoy{from{transform:translateY(0) rotate(-3deg)}to{transform:translateY(-7px) rotate(5deg)}}
@keyframes zw229-balloon{
 0%{transform:translate3d(0,22px,0) rotate(-9deg) scale(.65);opacity:0}
 17%{opacity:1}
 75%{opacity:1}
 100%{transform:translate3d(calc((var(--i) - 4)*7px),-240px,0) rotate(17deg) scale(1.1);opacity:0}
}
/* Consistent home entrance, title and play button with the Backstube. */
#app .zw170-launch[data-game-start="picnic"].zw229-intro{
 background:#acd3ac url('/picnic-v229/scene-portrait.webp') center/100% 100% no-repeat!important;
}
#app .zw170-launch[data-game-start="picnic"] .zw170-title{
 object-fit:contain!important;max-height:19%!important;filter:drop-shadow(0 4px 3px #73512a68)!important;
}
#app .zw170-launch[data-game-start="picnic"] .zw170-scene{
 object-fit:contain!important;filter:drop-shadow(0 5px 3px #77572b80)!important;
}
#app .zw170-launch[data-game-start="picnic"] .zw170-play img{width:100%!important;height:100%!important;object-fit:contain!important}
@media(min-aspect-ratio:6/5){
 #app .zw107 .zw229-scene{background-image:url('/picnic-v229/scene-landscape.webp')!important}
 #app .zw107 .zw107-title{left:33%!important;width:34%!important;top:0!important;height:15%!important}
 #app .zw107 .zw107-controls{top:1%!important;right:1%!important}
 #app .zw107 .zw107-order{top:12.5%!important;left:19%!important;right:19%!important;height:20%!important;padding:12px 33px!important}
 #app .zw107 .zw109-round-flowers{top:30.2%!important;left:50%!important}
 #app .zw107 .zw107-garden{top:31%!important;left:18%!important;width:64%!important;height:37%!important}
 #app .zw107 .zw107-tray{height:31%!important;bottom:-2%!important}
 #app .zw107 .zw107-food-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important;grid-template-rows:repeat(2,minmax(0,1fr))!important;padding:16px 15% 4px!important}
 #app .zw107 .zw107-food-button{max-width:72px!important;min-height:34px!important}
 #app .zw107 .zw229-butterfly.zw229-fly-1{left:15%!important}
 #app .zw107 .zw229-butterfly.zw229-fly-2{right:15%!important}
 #app .zw107 .zw229-flower-1{left:16%!important}
 #app .zw107 .zw229-flower-2{right:16%!important}
 #app .zw107 .zw117-reward{left:22%!important;width:56%!important;top:32%!important;height:50%!important}
 #app .zw107 .zw107-next-wrap{top:69%!important;right:17%!important}
 #app .zw170-launch[data-game-start="picnic"].zw229-intro{background-image:url('/picnic-v229/scene-landscape.webp')!important}
}
@media(max-width:410px) and (orientation:portrait){
 #app .zw107 .zw107-title{left:19%!important;width:53%!important;top:1.2%!important}
 #app .zw107 .zw107-order{left:1%!important;right:1%!important;top:12.5%!important;height:17.5%!important;padding:15px 26px!important}
 #app .zw107 .zw107-garden{left:0!important;width:100%!important;top:30%!important;height:40%!important}
 #app .zw107 .zw107-friend{width:29%!important;flex-basis:29%!important}
 #app .zw107 .zw107-tray{height:32%!important}
 #app .zw107 .zw107-food-grid{padding:clamp(26px,5vh,45px) 5px 7px!important}
 #app .zw107 .zw107-food-button{min-height:39px!important}
 #app .zw107 .zw109-round-flowers{top:28%!important}
}
@media(max-height:450px) and (orientation:landscape){
 #app:has(.zw107) .app-header button.zw-go-home{width:52px!important;min-width:52px!important;height:52px!important}
 #app .zw107 button.zw107-roundbtn{height:46px!important;width:46px!important}
 #app .zw107 .zw107-title{height:13%!important}
 #app .zw107 .zw107-order{height:20%!important;top:12%!important;padding:6px 38px!important}
 #app .zw107 .zw107-garden{height:35%!important;top:31%!important}
 #app .zw107 .zw107-tray{height:33%!important}
 #app .zw107 .zw107-food-grid{padding:14px 12% 1px!important}
 #app .zw107 .zw107-food-button{max-height:58px!important;min-height:31px!important}
 #app .zw107 .zw107-goal-dots{display:none!important}
}
@media(prefers-reduced-motion:reduce){
 #app .zw107 .zw229-character,#app .zw107 .zw229-butterfly,
 #app .zw107 .zw229-flower,#app .zw107 .zw229-party img,
 #app .zw107 .zw117-reward-friend{animation:none!important}
}

/* v229.1 visual QA corrections: centered basket and SIX fully visible food choices. */
#app .zw107 .zw107-garden > .zw107-basket-target{
 left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
 margin:0!important;order:2!important;
}
#app .zw107 .zw107-garden > .zw107-moritz{order:1!important}
#app .zw107 .zw107-garden > .zw107-igor{order:3!important}
#app .zw107 .zw107-garden{justify-content:space-between!important}
#app .zw107 .zw229-character{
 width:212%!important;height:120%!important;max-width:none!important;max-height:none!important;
 object-fit:contain!important;object-position:center bottom!important;
}
#app .zw107 .zw107-goal-piece img.zw229-food{transform:scale(1.2)!important}
#app .zw107 .zw107-food-grid{left:0!important;right:auto!important;top:0!important;bottom:auto!important;transform:none!important}
#app .zw107 .zw107-food-grid:has(.zw107-food-button:nth-child(6):last-child){
 grid-template-columns:repeat(3,minmax(0,1fr))!important;
 grid-template-rows:repeat(2,minmax(0,1fr))!important;
 padding:39px 13px 9px!important;
 gap:1px 6px!important;
}
#app .zw107 .zw107-food-grid:has(.zw107-food-button:nth-child(6):last-child) .zw107-food-button{
 width:100%!important;height:100%!important;max-width:103px!important;max-height:100px!important;
 min-height:44px!important;
}
#app .zw107 .zw117-reward-basket{bottom:14%!important}
@media(min-aspect-ratio:6/5){
 #app .zw107 .zw107-food-grid:has(.zw107-food-button:nth-child(6):last-child){
   grid-template-columns:repeat(6,minmax(0,1fr))!important;
   grid-template-rows:minmax(0,1fr)!important;
   padding:7px 20% 5px!important;
 }
 #app .zw107 .zw107-food-grid:has(.zw107-food-button:nth-child(6):last-child) .zw107-food-button{
   max-height:72px!important;max-width:78px!important;
 }
}
@media(max-height:450px) and (orientation:landscape){
 #app .zw107 .zw107-food-grid:has(.zw107-food-button:nth-child(6):last-child){padding:3px 21% 2px!important}
 #app .zw107 .zw107-food-grid:has(.zw107-food-button:nth-child(6):last-child) .zw107-food-button{max-height:67px!important}
}
@media(max-width:410px) and (orientation:portrait){
 #app .zw107 .zw107-food-grid:has(.zw107-food-button:nth-child(6):last-child){padding:39px 12px 8px!important}
 #app .zw107 .zw107-food-grid:has(.zw107-food-button:nth-child(6):last-child) .zw107-food-button{max-height:102px!important}
}

/* ---- /picnic-v230/polish.css?v=230 ---- */
/* ZAeHLWIESE Picknick 2.0: warm colored-pencil world matching the bakery. No canvas. */
#app .zw107.main-content{
 background:#93c780!important;touch-action:none!important;
 -webkit-user-select:none!important;user-select:none!important;overscroll-behavior:none!important;
}
#app .zw107 .zw108-painting{
 position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
 background:url('/picnic-v122/meadow-portrait.webp') center center/100% 100% no-repeat!important;
 filter:saturate(.93) sepia(.055) contrast(1.02)!important;z-index:0!important;
}
#app .zw107 .zw107-land{display:none!important}
#app .zw107 .zw107-title{
 position:absolute!important;left:23%!important;width:54%!important;top:1%!important;height:10.6%!important;
 transform:rotate(-1deg)!important;filter:drop-shadow(0 5px 3px #74451b66)!important;z-index:40!important;
}
#app .zw107 .zw229-title-paint{display:block;width:100%;height:100%;object-fit:contain}
#app .zw107 .zw107-order{
 position:absolute!important;left:3%!important;right:3%!important;top:12%!important;
 width:94%!important;height:17.9%!important;display:flex!important;gap:0!important;
 border:0!important;outline:0!important;border-radius:0!important;
 padding:clamp(15px,2.7vw,25px) clamp(30px,6vw,70px)!important;
 background:transparent url('/picnic-v230/order-board.webp') center/100% 100% no-repeat!important;
 box-shadow:none!important;transform:none!important;z-index:20!important;
}
#app .zw107 .zw107-goal{flex:1;min-width:0!important;gap:0!important;position:relative!important}
#app .zw107 .zw107-goal+.zw107-goal{border-left:2px dashed #f7daa5a0!important}
#app .zw107 .zw107-goal-food{height:75%!important;overflow:visible!important;align-items:center!important}
#app .zw107 .zw107-goal-piece{display:flex;align-items:center;justify-content:center;max-width:65px!important;min-width:0}
#app .zw107 .zw107-goal-piece img{width:100%!important;height:100%!important;object-fit:contain!important;filter:drop-shadow(1px 2px 1px #714f3278)!important}
#app .zw107 .zw107-goal-dots{height:18%!important;gap:6px!important}
#app .zw107 .zw107-goal-dots i{background:#f9dfaf!important;border:2px solid #8e613c!important;width:11px!important;height:11px!important}
#app .zw107 .zw107-goal-dots i.yes{background:#8dbb62!important;border-color:#688847!important}
#app .zw107 .zw109-round-flowers{top:29.2%!important;z-index:21!important;opacity:.84!important}
#app .zw107 .zw107-garden{
 position:absolute!important;left:0!important;top:30.5%!important;width:100%!important;
 height:37%!important;z-index:10!important;pointer-events:none!important;
}
#app .zw107 .zw107-garden .zw107-friend{pointer-events:auto!important;touch-action:manipulation!important}
#app .zw107 .zw107-moritz{left:1%!important;bottom:0!important;width:29%!important;height:78%!important;z-index:18!important}
#app .zw107 .zw107-igor{right:1%!important;bottom:0!important;width:29%!important;height:78%!important;z-index:18!important}
#app .zw107 .zw229-friend-poses{position:relative;display:block;width:100%;height:100%;transform-origin:50% 95%}
#app .zw107 .zw229-friend-poses img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center bottom;pointer-events:none}
#app .zw107 .zw229-friend-rest{opacity:1}
#app .zw107 .zw229-friend-joy{opacity:0;transform:translateY(9%) scale(.88)}
#app .zw107 .zw107-friend.zw109-joy .zw229-friend-rest,
#app .zw107 .zw107-friend.zw229-friend-happy .zw229-friend-rest{opacity:0}
#app .zw107 .zw107-friend.zw109-joy .zw229-friend-joy,
#app .zw107 .zw107-friend.zw229-friend-happy .zw229-friend-joy{
 opacity:1;animation:zw229-cheer .6s ease-in-out infinite alternate;
}
@keyframes zw229-cheer{0%{transform:translateY(4%) rotate(-3deg) scale(.96)}100%{transform:translateY(-7%) rotate(4deg) scale(1)}}
#app .zw107 .zw107-basket-target{
 left:31%!important;bottom:0!important;width:38%!important;height:79%!important;
 z-index:15!important;transform-origin:50% 93%!important;filter:drop-shadow(0 7px 3px #69563364)!important;
}
#app .zw107 .zw108-basket-img,#app .zw107 .zw108-basket-lid-img{object-fit:contain!important}
#app .zw107 .zw229-basket-ribbon{display:none}
#app .zw107 .zw107-basket-target.zw229-basket-bop{animation:zw229-basket-bop .55s cubic-bezier(.2,.8,.24,1)!important}
#app .zw107 .zw107-basket-target.zw229-basket-finale{animation:zw229-basket-happy 1.2s ease-in-out!important}
@keyframes zw229-basket-bop{0%,100%{transform:translateY(0) rotate(0)}35%{transform:translateY(-9px) rotate(-5deg)}65%{transform:translateY(1px) rotate(3deg)}}
@keyframes zw229-basket-happy{0%,100%{transform:scale(1)}25%,75%{transform:scale(1.045) rotate(-4deg)}50%{transform:scale(.97) rotate(5deg)}}
#app .zw107 .zw107-order.zw229-order-nod{animation:zw229-order-nod .4s ease-out!important}
@keyframes zw229-order-nod{0%,100%{filter:brightness(1)}50%{filter:brightness(1.18) drop-shadow(0 0 6px #f8dd97)}}
#app .zw107 .zw229-props{position:absolute!important;inset:0;z-index:4;pointer-events:none!important}
#app .zw107 .zw229-props img{position:absolute;object-fit:contain;pointer-events:none}
#app .zw107 .zw229-plate{bottom:-7%;left:37%;width:27%;height:22%;transform:rotate(-7deg);opacity:.97}
#app .zw107 .zw229-cup{bottom:0%;right:7%;width:11%;height:25%;animation:zw229-cup 5.5s ease-in-out infinite}
#app .zw107 .zw229-tiny-flower{bottom:0;left:5%;width:10%;height:29%;transform-origin:50% 100%;animation:zw229-sway 4s ease-in-out infinite}
#app .zw107 .zw107-tray{
 position:absolute!important;left:2%!important;right:2%!important;bottom:1%!important;
 width:96%!important;height:29.7%!important;padding:0!important;
 border:0!important;outline:0!important;border-radius:0!important;box-shadow:none!important;
 background:transparent url('/picnic-v230/picnic-cloth.webp') center/100% 100% no-repeat!important;
 transform:none!important;z-index:22!important;
}
#app .zw107 .zw107-tray::before,
#app .zw107 .zw107-tray::after,
#app .zw107 .zw107-tray-seam{content:none!important;display:none!important}
#app .zw107 .zw107-food-grid{
 position:absolute!important;left:5%!important;top:6%!important;width:90%!important;height:87%!important;
 display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
 grid-template-rows:repeat(2,minmax(0,1fr))!important;align-content:center!important;
 justify-content:center!important;justify-items:center!important;align-items:center!important;
 gap:2px 9px!important;padding:0!important;
}
#app .zw107 .zw107-food-grid:has(.zw107-food-button:nth-child(8)){
 grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
#app .zw107 .zw107-food-button,
#app .zw107 .zw107-food-button:nth-child(n){
 position:relative!important;display:block!important;width:100%!important;height:100%!important;
 min-height:0!important;min-width:0!important;max-width:105px!important;max-height:105px!important;
 margin:0!important;padding:0!important;border:0!important;border-radius:50%!important;
 box-shadow:none!important;outline:0!important;overflow:visible!important;
 background:transparent url('/picnic-v230/food-token-0.webp') center/contain no-repeat!important;
 filter:drop-shadow(0 3px 2px #67472a83)!important;touch-action:none!important;
 transition:filter .16s ease!important;
}
#app .zw107 .zw107-food-button:nth-child(4n+2){background-image:url('/picnic-v230/food-token-1.webp')!important}
#app .zw107 .zw107-food-button:nth-child(4n+3){background-image:url('/picnic-v230/food-token-2.webp')!important}
#app .zw107 .zw107-food-button:nth-child(4n+4){background-image:url('/picnic-v230/food-token-3.webp')!important}
#app .zw107 .zw107-food-button img.zw108-foodimg{
 position:absolute!important;inset:17%!important;width:66%!important;height:66%!important;
 max-width:66%!important;max-height:66%!important;display:block!important;object-fit:contain!important;
 filter:drop-shadow(0 2px 2px #83523877)!important;pointer-events:none!important;
}
#app .zw107 .zw107-food-button:active{filter:drop-shadow(0 1px 1px #64492b) brightness(1.06)!important}
#app .zw107 .zw107-food-button:focus-visible{outline:4px solid #f4cc66!important;outline-offset:-4px!important}
#app .zw107 .zw107-basket-target.zw107-hover{filter:drop-shadow(0 0 13px #fff5a0) drop-shadow(0 4px 4px #715338)!important}
#app .zw107 .zw107-food-button.zw107-hintglow{animation:zw107-hint 1s ease-in-out 3!important}
#app .zw107 .zw107-controls{
 position:absolute!important;right:2%!important;top:1.8%!important;gap:3px!important;
 z-index:55!important;
}
#app .zw107 .zw107-roundbtn,
#app .zw107 button.zw107-roundbtn{
 width:clamp(54px,13.8vw,76px)!important;height:clamp(54px,13.8vw,76px)!important;
 min-width:52px!important;min-height:52px!important;
 border:0!important;outline:none!important;padding:0!important;border-radius:0!important;
 background:transparent!important;box-shadow:none!important;filter:drop-shadow(0 3px 2px #6c4f3380)!important;
}
#app .zw107 .zw229-control-art{width:100%;height:100%;display:block;object-fit:contain!important;pointer-events:none}
#app .zw107 .zw107-next-wrap{right:5%!important;top:35%!important;z-index:38!important}
#app:has(.zw107) .app-header button.zw-go-home{
 background:transparent url('/picnic-v229/home.webp') center/contain no-repeat!important;border:0!important;box-shadow:none!important;
 width:clamp(55px,14vw,78px)!important;height:clamp(55px,14vw,78px)!important;
 min-width:55px!important;min-height:55px!important;padding:0!important;
}
#app:has(.zw107) .app-header button.zw-go-home svg{width:85%!important;height:85%!important;filter:drop-shadow(0 3px 2px #725337)!important}
#app .zw107 .zw229-wind{position:absolute;right:4%;top:11%;width:12%;height:17%;z-index:4;pointer-events:none}
#app .zw107 .zw229-kite{width:100%;height:100%;object-fit:contain;animation:zw229-kite 9s ease-in-out infinite;filter:drop-shadow(1px 3px 2px #706c4a80)}
#app .zw107 .zw229-daisy{position:absolute;z-index:6;width:11%;height:12%;object-fit:contain;bottom:29%;pointer-events:none;transform-origin:50% 97%;animation:zw229-sway 5s ease-in-out infinite}
#app .zw107 .zw229-daisy-left{left:0}
#app .zw107 .zw229-daisy-right{right:0;animation-delay:-2.7s;transform:scale(.86)}
#app .zw107 .zw229-lemonade{position:absolute;z-index:7;right:3%;bottom:34%;width:13%;height:12%;object-fit:contain;pointer-events:none;animation:zw229-cup 5s ease-in-out infinite}
#app .zw107 .zw229-festive{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:80!important}
#app .zw107 .zw229-burst-piece{position:absolute;display:block;object-fit:contain;pointer-events:none}
@keyframes zw229-sway{0%,100%{transform:rotate(-5deg)}50%{transform:rotate(7deg)}}
@keyframes zw229-cup{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-6px) rotate(4deg)}}
@keyframes zw229-kite{0%,100%{transform:translate(0,0) rotate(3deg)}35%{transform:translate(-9px,-11px) rotate(-8deg)}70%{transform:translate(7px,4px) rotate(5deg)}}
#app .zw107.zw107-walk .zw229-lemonade,#app .zw107.zw107-walk .zw229-daisy{opacity:.35;transition:opacity .6s}
#app .zw107 .zw117-reward-blanket{filter:drop-shadow(0 8px 4px #69513961)}
#app .zw107.zw107-arrived .zw117-reward-friend{animation:zw229-nibble .85s ease-in-out infinite alternate!important}
#app .zw107.zw107-arrived .zw117-reward-igor{animation-delay:-.42s!important}
@keyframes zw229-nibble{from{transform:translateY(1%) rotate(-3deg)}to{transform:translateY(-5%) rotate(3deg)}}
/* The first page uses the very same illustrated assets and play button as Bakery. */
#app .zw229-start.zw170-launch{
 background:#91c882 url('/picnic-v122/meadow-portrait.webp') center/100% 100% no-repeat!important;
 overflow:hidden!important;isolation:isolate!important;padding:0!important;
}
#app .zw229-start.zw170-launch::before,#app .zw229-start.zw170-launch::after{display:none!important;content:none!important}
#app .zw229-start .zw229-start-title{
 position:absolute!important;top:7%!important;left:9%!important;width:82%!important;height:18%!important;
 max-width:none!important;object-fit:contain!important;z-index:9!important;filter:drop-shadow(0 7px 4px #76503588);
}
#app .zw229-start .zw229-start-cloth{
 position:absolute;left:5%;bottom:12%;width:90%;height:30%;object-fit:fill;
 z-index:3;pointer-events:none;filter:drop-shadow(0 6px 4px #5c4c3780);
}
#app .zw229-start .zw229-start-basket{
 position:absolute;left:27%;top:33%;width:46%;height:34%;object-fit:contain;
 z-index:5;pointer-events:none;filter:drop-shadow(0 8px 6px #6c543b88);
 animation:zw229-basket-intro 6s ease-in-out infinite;
}
@keyframes zw229-basket-intro{0%,100%{transform:rotate(-2deg)}50%{transform:translateY(-5px) rotate(2deg)}}
#app .zw229-start .zw229-start-friend{
 position:absolute!important;top:38%;width:31%!important;height:30%!important;
 border:0!important;border-radius:0!important;background:transparent!important;
 box-shadow:none!important;z-index:7;touch-action:manipulation!important;
 filter:drop-shadow(0 5px 4px #654b3978);
}
#app .zw229-start .zw229-start-friend img{
 position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center bottom;
 pointer-events:none;
}
#app .zw229-start .zw229-start-friend .zw229-joy-pose{opacity:0}
#app .zw229-start .zw229-start-friend.zw229-start-cheer .zw229-base-pose{opacity:0}
#app .zw229-start .zw229-start-friend.zw229-start-cheer .zw229-joy-pose{
 opacity:1;animation:zw229-cheer .6s ease-in-out infinite alternate;
}
#app .zw229-start .zw229-start-moritz{left:0}
#app .zw229-start .zw229-start-igor{right:0}
#app .zw229-start .zw229-start-play{
 position:absolute!important;left:50%!important;top:auto!important;right:auto!important;
 bottom:10%!important;transform:translateX(-50%)!important;width:clamp(115px,31vw,176px)!important;
 height:clamp(115px,31vw,176px)!important;z-index:15!important;
 background:transparent!important;border:0!important;box-shadow:none!important;
}
#app .zw229-start .zw229-start-play img{display:block;width:100%;height:100%;object-fit:contain}
#app .zw229-start .zw170-home{top:max(1%,env(safe-area-inset-top))!important;left:2%!important;z-index:30!important}
#app .zw229-start .zw170-home img{width:100%;height:100%;object-fit:contain}
@media (min-aspect-ratio:6/5){
 #app .zw107 .zw108-painting{background-image:url('/picnic-v122/meadow-landscape.webp')!important}
 #app .zw107 .zw107-title{left:35%!important;width:30%!important;top:-2%!important;height:17%!important}
 #app .zw107 .zw107-order{top:10.4%!important;left:18%!important;right:18%!important;width:64%!important;height:24%!important;padding:12px 40px!important}
 #app .zw107 .zw107-garden{top:32%!important;left:24%!important;width:52%!important;height:43%!important}
 #app .zw107 .zw107-moritz{width:27%!important}
 #app .zw107 .zw107-igor{width:27%!important}
 #app .zw107 .zw107-basket-target{left:34%!important;width:32%!important;height:86%!important}
 #app .zw107 .zw107-tray{left:12%!important;right:12%!important;width:76%!important;bottom:0%!important;height:29%!important}
 #app .zw107 .zw107-food-grid{left:5%!important;width:90%!important;top:4%!important;height:89%!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;grid-template-rows:1fr!important}
 #app .zw107 .zw107-food-grid:has(.zw107-food-button:nth-child(8)){grid-template-columns:repeat(8,minmax(0,1fr))!important}
 #app .zw107 .zw107-food-button{max-width:90px!important;max-height:90px!important}
 #app .zw107 .zw109-round-flowers{top:32%!important}
 #app .zw107 .zw229-daisy{bottom:27%;height:18%;width:7%}
 #app .zw107 .zw229-lemonade{bottom:31%;right:8%;width:8%;height:20%}
 #app .zw107 .zw229-wind{top:9%;right:12%;width:8%}
 #app .zw107 .zw107-controls{top:2%!important;right:2%!important}
 #app .zw229-start.zw170-launch{background-image:url('/picnic-v122/meadow-landscape.webp')!important}
 #app .zw229-start .zw229-start-title{left:33%!important;top:1%!important;width:34%!important;height:27%!important}
 #app .zw229-start .zw229-start-cloth{left:25%;bottom:1%;width:50%;height:40%}
 #app .zw229-start .zw229-start-basket{left:41%;top:29%;width:18%;height:45%}
 #app .zw229-start .zw229-start-friend{top:30%;width:19%!important;height:52%!important}
 #app .zw229-start .zw229-start-moritz{left:25%}
 #app .zw229-start .zw229-start-igor{right:25%}
 #app .zw229-start .zw229-start-play{bottom:2%!important;width:100px!important;height:100px!important}
}
@media (max-width:420px) and (orientation:portrait){
 #app .zw107 .zw107-title{left:23%!important;width:54%!important}
 #app .zw107 .zw107-order{left:2%!important;right:2%!important;width:96%!important;padding:14px 19px!important}
 #app .zw107 .zw107-goal-piece{max-width:41px!important}
 #app .zw107 .zw107-tray{left:1%!important;right:1%!important;width:98%!important;height:31%!important}
 #app .zw107 .zw107-food-grid{left:5%!important;width:90%!important}
 #app .zw107 .zw107-food-button{max-width:100px!important;max-height:100px!important}
 #app .zw107 .zw107-moritz{left:0!important;width:32%!important}
 #app .zw107 .zw107-igor{right:0!important;width:32%!important}
 #app .zw107 .zw107-basket-target{left:30%!important;width:40%!important}
 #app .zw107 .zw229-lemonade{bottom:32%;right:0;width:16%}
 #app .zw107 .zw107-controls{top:1.7%!important;right:1%!important}
}
@media (prefers-reduced-motion:reduce){
 #app .zw107 .zw229-kite,#app .zw107 .zw229-daisy,#app .zw107 .zw229-lemonade,#app .zw107 .zw229-tiny-flower,#app .zw107 .zw229-cup,
 #app .zw229-start .zw229-start-basket{animation:none!important}
}
/* V230 visual QA: maintain independent, unobstructed illustrated controls. */
#app:has(.zw107) .app-header .header-tools{left:1%!important;right:auto!important;top:4px!important}
#app .zw107 .zw107-controls{left:auto!important;right:1%!important;top:1%!important;gap:1px!important}
#app .zw107 .zw107-order::before,#app .zw107 .zw107-order::after{content:none!important;display:none!important}
#app .zw107 .zw107-garden{justify-content:space-between!important}
#app .zw107 .zw107-tray{overflow:visible!important}
#app .zw107 .zw107-food-button{flex:0 0 auto!important;max-width:100%!important}
#app .zw107 .zw107-title{background:none!important}
#app .zw107 .zw229-scene{background-image:url('/picnic-v122/meadow-portrait.webp')!important}
@media (min-aspect-ratio:6/5){
#app .zw107 .zw229-scene{background-image:url('/picnic-v122/meadow-landscape.webp')!important}
#app .zw107 .zw107-food-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important;grid-template-rows:1fr!important}
#app .zw107 .zw107-food-grid:has(.zw107-food-button:nth-child(8)){grid-template-columns:repeat(8,minmax(0,1fr))!important}
}
@media (max-width:420px) and (orientation:portrait){
#app .zw107 .zw107-title{left:26%!important;width:48%!important;top:0.5%!important;height:10%!important}
#app .zw107 .zw107-controls .zw107-roundbtn{width:53px!important;height:53px!important;min-width:53px!important;min-height:53px!important}
#app .zw107 .zw107-goal-piece{max-width:54px!important}
}

/* v230 final: fixed toddler-safe touch targets and three non-overlapping controls. */
#app:has(.zw107) #homeBtn.zw-go-home{
 position:absolute!important;top:5px!important;left:4px!important;right:auto!important;
 width:62px!important;height:62px!important;min-width:62px!important;min-height:62px!important;
 background:url('/ui-v225/home.webp') center/contain no-repeat!important;
 padding:0!important;border:0!important;box-shadow:none!important;z-index:175!important;
}
#app .zw107 .zw107-title{left:26%!important;width:45%!important}
#app .zw107 .zw107-controls{left:auto!important;right:1%!important;gap:2px!important}
#app .zw107 .zw107-garden{display:block!important;position:absolute!important}
#app .zw107 .zw107-garden>.zw107-moritz{
 position:absolute!important;left:0!important;right:auto!important;bottom:0!important;
 width:33%!important;height:90%!important;margin:0!important;flex:none!important;
}
#app .zw107 .zw107-garden>.zw107-igor{
 position:absolute!important;left:auto!important;right:0!important;bottom:0!important;
 width:33%!important;height:90%!important;margin:0!important;flex:none!important;
}
#app .zw107 .zw107-garden>.zw107-basket-target{
 position:absolute!important;left:31%!important;right:auto!important;bottom:0!important;
 width:38%!important;height:86%!important;margin:0!important;flex:none!important;
}
#app .zw107 .zw229-friend-poses{
 transform:scale(1.15)!important;transform-origin:50% 100%!important;
}
#app .zw107 .zw229-friend-rest,#app .zw107 .zw229-friend-joy{object-position:center bottom!important}
#app .zw107 .zw107-food-button.zw107-hintglow{animation:zw107-hint 1s ease-in-out 3!important}
@media (min-aspect-ratio:6/5){
 #app .zw107 .zw107-title{left:36%!important;width:28%!important}
 #app .zw107 .zw107-garden>.zw107-basket-target{left:34%!important;width:32%!important;height:89%!important}
 #app .zw107 .zw107-garden>.zw107-moritz{width:31%!important}
 #app .zw107 .zw107-garden>.zw107-igor{width:31%!important}
}

/* v230: beat earlier :has(...) rules which compressed the six starter foods. */
#app .zw107 .zw107-food-grid:has(.zw107-food-button:nth-child(6):last-child){
 position:absolute!important;left:5%!important;right:auto!important;top:6%!important;
 width:90%!important;height:87%!important;display:grid!important;
 grid-template-columns:repeat(3,minmax(0,1fr))!important;
 grid-template-rows:repeat(2,minmax(0,1fr))!important;
 padding:0!important;gap:2px 9px!important;
 align-content:center!important;justify-content:center!important;
 justify-items:center!important;align-items:center!important;transform:none!important;
}
#app .zw107 .zw107-food-grid:has(.zw107-food-button:nth-child(6):last-child) .zw107-food-button{
 width:100%!important;height:100%!important;
 min-height:0!important;min-width:0!important;
 max-width:105px!important;max-height:105px!important;
 margin:0!important;padding:0!important;
}
@media (min-aspect-ratio:6/5){
 #app .zw107 .zw107-food-grid:has(.zw107-food-button:nth-child(6):last-child){
 left:5%!important;top:4%!important;width:90%!important;height:89%!important;
 grid-template-columns:repeat(6,minmax(0,1fr))!important;grid-template-rows:1fr!important;
 gap:5px!important;padding:0!important;
 }
 #app .zw107 .zw107-food-grid:has(.zw107-food-button:nth-child(6):last-child) .zw107-food-button{
 max-width:98px!important;max-height:100px!important;min-height:0!important;
 }
}

/* ---- /picnic-v231/feast.css?v=231 ---- */
/* Picknick 2.1: same optical weight for all real pencil-drawn foods. */
#app .zw107 .zw107-food-button img.zw231-food{
 position:absolute!important;inset:12%!important;
 width:76%!important;height:76%!important;max-width:76%!important;max-height:76%!important;
 object-fit:contain!important;object-position:center!important;
 filter:drop-shadow(0 2px 1px #644c3770)!important;
 pointer-events:none!important;user-select:none!important;-webkit-user-select:none!important;
 transform-origin:50% 50%!important;
 animation:zw231-food-breathe 3.2s calc(-1.6s + var(--zw231-stagger,0s)) ease-in-out infinite;
}
#app .zw107 .zw107-goal-piece img.zw231-food,
#app .zw107 .zw107-collected img.zw231-food,
#app .zw107 .zw117-reward-food img.zw231-food{
 position:static!important;inset:auto!important;display:block!important;
 width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;
 object-fit:contain!important;object-position:center!important;animation:none!important;
 transform:none!important;filter:drop-shadow(0 1px 1px #72543b66)!important;
}
#app .zw107 .zw107-food-button.zw231-popped img.zw231-food{
 animation:zw231-pick .39s ease-out 1!important;
}
@keyframes zw231-food-breathe{
 0%,100%{transform:translate3d(0,1px,0) rotate(-2.5deg) scale(.95)}
 50%{transform:translate3d(0,-3px,0) rotate(2.5deg) scale(1.035)}
}
@keyframes zw231-pick{
 0%{transform:scale(1) rotate(0)}
 32%{transform:scale(.87) rotate(-10deg)}
 68%{transform:scale(1.18) rotate(8deg)}
 100%{transform:scale(1)}
}
/* Correct icon scale and crop across paper order board and the draggable deck. */
#app .zw107 .zw107-goal-food{overflow:visible!important}
#app .zw107 .zw107-goal-piece{display:flex!important;align-items:center!important;justify-content:center!important}
#app .zw107 .zw107-food-button{overflow:visible!important}
#app .zw107 .zw107-food-button.zw107-lift img.zw231-food{animation:none!important}
/* Extra ambient character motion, but only on the raster character paintings. */
#app .zw107:not(.zw117-arrived) .zw107-friend:not(.zw109-joy):not(.zw229-friend-happy) .zw229-friend-rest{
 animation:zw231-friend-breathe 3.6s ease-in-out infinite alternate;
 transform-origin:50% 88%;
}
#app .zw107 .zw107-igor .zw229-friend-rest{animation-delay:-2.1s!important}
@keyframes zw231-friend-breathe{
 from{transform:translateY(3px) rotate(-2.5deg) scale(.96)}
 to{transform:translateY(-5px) rotate(2.5deg) scale(1.04)}
}
/* More expressive accepted basket bounce without moving the drop target while fingers drag. */
#app .zw107 .zw107-basket-target.zw107-accepted:not(.zw107-hover){
 animation:zw231-basket-cheer .52s cubic-bezier(.19,.75,.3,1)!important;
}
@keyframes zw231-basket-cheer{
 0%,100%{transform:scale(1) rotate(0)}
 32%{transform:scale(1.055) translateY(-7px) rotate(-2.7deg)}
 58%{transform:scale(.98) translateY(1px) rotate(2.2deg)}
}
/* Meal takes place inside the actual reward image, not a new overlay or mockup. */
#app .zw107 .zw231-eating-food{
 position:absolute;z-index:155!important;object-fit:contain!important;
 transform:translate(-50%,-50%);
 filter:drop-shadow(0 3px 2px #6c4c3677)!important;
 pointer-events:none;user-select:none;
}
#app .zw107 .zw231-joy{
 position:absolute;z-index:150!important;display:block;object-fit:contain;
 pointer-events:none;user-select:none;
}
#app .zw107 .zw117-reward-food.zw231-eaten{
 opacity:.12!important;transition:opacity .24s ease!important;
 animation:none!important;
}
#app .zw107.zw231-feasting .zw117-reward-food:not(.zw231-eaten){
 animation:zw231-food-on-plate 1.3s ease-in-out infinite alternate!important;
}
@keyframes zw231-food-on-plate{
 from{transform:translateY(0) rotate(-2deg)}
 to{transform:translateY(-4px) rotate(2deg)}
}
#app .zw107.zw231-feasting .zw117-reward-friend.zw231-reaching,
#app .zw107.zw231-feasting .zw117-reward-friend.zw231-chewing{
 animation:zw231-real-eating .31s ease-in-out infinite alternate!important;
 transform-origin:50% 72%!important;
}
#app .zw107.zw231-feasting .zw117-reward-friend.zw231-reaching{
 animation:zw231-reaching .65s ease-in-out infinite alternate!important;
}
@keyframes zw231-real-eating{
 0%{transform:translateY(0) rotate(-4deg) scale(1)}
 100%{transform:translateY(5px) rotate(4deg) scale(1.025,.97)}
}
@keyframes zw231-reaching{
 0%{transform:translateY(1px) rotate(-1deg)}
 100%{transform:translateY(-9px) rotate(4deg) scale(1.025)}
}
#app .zw107.zw231-feasting .zw229-reward-plate{
 animation:zw231-plate-shiver 1.7s ease-in-out infinite alternate!important
}
@keyframes zw231-plate-shiver{
 0%,100%{transform:rotate(-3deg)}
 50%{transform:rotate(3deg)}
}
#app .zw107.zw231-meal-finale .zw117-reward-friend{
 animation:zw231-after-meal .8s ease-in-out 3 alternate!important;
}
#app .zw107.zw231-meal-finale .zw117-reward-igor{animation-delay:.17s!important}
@keyframes zw231-after-meal{
 0%{transform:translateY(0) rotate(-2deg)}
 50%{transform:translateY(-15px) rotate(8deg) scale(1.05)}
 100%{transform:translateY(-4px) rotate(-4deg) scale(1)}
}
@media (prefers-reduced-motion:reduce){
 #app .zw107 .zw107-food-button img.zw231-food,
 #app .zw107 .zw229-friend-rest,
 #app .zw107 .zw117-reward-friend,
 #app .zw107 .zw229-reward-plate,
 #app .zw107 .zw117-reward-food{animation:none!important;transition:none!important}
}

/* ---- /picnic-v232/polish.css?v=232 ---- */
/* Picknick 2.2 – 16 food drawings calibrated to equal perceived painted area (~23k pixels). */
#app .zw107 .zw107-food-button img.zw232-food{
 position:absolute!important;inset:10%!important;width:80%!important;height:80%!important;
 max-width:80%!important;max-height:80%!important;object-fit:contain!important;
 object-position:center center!important;
 pointer-events:none!important;
 filter:drop-shadow(0 2px 1px #684b3588)!important;
 transform-origin:center!important;
 animation:zw232-idle 4s var(--zw232-lag,0s) ease-in-out infinite!important;
}
#app .zw107 .zw107-food-grid .zw107-food-button:nth-child(2n) img.zw232-food{
 animation-direction:alternate-reverse!important;
}
#app .zw107 .zw107-goal-piece img.zw232-food,
#app .zw107 .zw107-collected img.zw232-food,
#app .zw107 .zw117-reward-food img.zw232-food{
 display:block!important;position:static!important;inset:auto!important;
 width:100%!important;height:100%!important;
 max-width:100%!important;max-height:100%!important;
 object-fit:contain!important;object-position:center center!important;
 animation:none!important;transform:none!important;filter:drop-shadow(0 1px 1px #694d375c)!important;
}
#app .zw107 .zw107-food-button.zw232-touched img.zw232-food{
 animation:zw232-tap .4s cubic-bezier(.22,.73,.27,1) 1!important;
}
#app .zw107 .zw107-goal.zw232-complete-pop img.zw232-food{
 animation:zw232-goal-cheer .66s ease-out 1!important;
}
#app .zw107 .zw107-goal.zw232-complete-pop{
 animation:zw232-goal-glow .8s ease-out!important;
}
#app .zw107 .zw232-glint,#app .zw229-start .zw232-start-reaction{
 position:absolute!important;z-index:190!important;display:block!important;pointer-events:none!important;
 object-fit:contain!important;transform:translate(-50%,-50%);
 animation:zw232-float 1.25s cubic-bezier(.15,.67,.3,1) both!important;
}
#app .zw229-start .zw232-start-reaction{z-index:30!important;width:24px!important;height:24px!important}
@keyframes zw232-idle{
 0%,100%{transform:translate3d(0,2px,0) rotate(-2deg) scale(.98)}
 50%{transform:translate3d(0,-3px,0) rotate(2deg) scale(1.035)}
}
@keyframes zw232-tap{
 0%,100%{transform:scale(1) rotate(0)}
 35%{transform:scale(.88) rotate(-7deg)}
 72%{transform:scale(1.12) rotate(5deg)}
}
@keyframes zw232-goal-cheer{
 0%{transform:scale(1);filter:drop-shadow(0 2px 2px #7a593c66)}
 45%{transform:scale(1.12) translateY(-4px);filter:drop-shadow(0 0 7px #fff6b0)}
 100%{transform:scale(1)}
}
@keyframes zw232-goal-glow{
 0%,100%{filter:brightness(1)}
 45%{filter:brightness(1.2) drop-shadow(0 0 9px #fff4a7)}
}
@keyframes zw232-float{
 0%{opacity:0;transform:translate(-50%,-50%) scale(.35) rotate(-10deg)}
 20%{opacity:1}
 95%{opacity:1}
 100%{opacity:0;transform:translate(calc(-50% + var(--dx,0px)),calc(-50% + var(--dy,-95px))) scale(.74) rotate(var(--tilt,20deg))}
}
/* Keep glowing effects from capturing fingers, blocking next or overflow. */
#app .zw107 .zw229-festive{pointer-events:none!important;overflow:hidden!important}
#app .zw107 .zw107-tray,
#app .zw107 .zw107-food-grid,
#app .zw107 .zw107-food-button{
 touch-action:none!important;-webkit-user-select:none!important;user-select:none!important;
 -webkit-touch-callout:none!important;
}
#app .zw107 .zw107-food-button:focus-visible{
 outline:4px solid #ffe9ac!important;outline-offset:-3px!important;
}
#app .zw107.zw231-feasting .zw117-reward-friend{
 filter:drop-shadow(0 4px 3px #73534060)!important;
}
#app .zw107.zw231-meal-finale .zw117-reward-friend{
 filter:drop-shadow(0 5px 3px #704f3c70)!important;
}
@media (prefers-reduced-motion:reduce){
 #app .zw107 .zw107-food-button img.zw232-food,
 #app .zw107 .zw107-goal img.zw232-food{animation:none!important;transform:none!important}
 #app .zw107 .zw232-glint,#app .zw229-start .zw232-start-reaction{display:none!important}
}

/* ---- /picnic-v233/hands.css?v=233 ---- */
/* Picknick 2.3 – original hand-painted Backstube number hands, no Canvas graphics. */
#app .zw107 .zw107-order .zw233-goal{
 position:relative!important;display:flex!important;flex:1 1 0!important;
 flex-direction:column!important;justify-content:center!important;align-items:center!important;
 min-width:0!important;max-width:none!important;padding:0 1px!important;touch-action:none!important;
}
#app .zw107 .zw107-order .zw233-request{
 display:flex!important;flex:1 1 auto!important;flex-direction:row!important;
 justify-content:center!important;align-items:center!important;gap:2px!important;
 width:100%!important;height:80%!important;min-height:0!important;
 padding:0!important;min-width:0!important;overflow:visible!important;
}
#app .zw107 .zw233-ingredient{
 display:flex!important;flex:0 0 52%!important;align-items:center!important;
 justify-content:center!important;height:86%!important;width:52%!important;
 min-width:0!important;max-width:52%!important;transform-origin:center center!important;
}
#app .zw107 .zw233-ingredient img.zw232-food,
#app .zw107 .zw233-ingredient img.zw231-food,
#app .zw107 .zw233-ingredient img.zw229-food,
#app .zw107 .zw233-ingredient img.zw108-foodimg{
 position:static!important;display:block!important;inset:auto!important;
 width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;
 max-width:100%!important;max-height:100%!important;
 object-fit:contain!important;object-position:center!important;
 transform:none!important;animation:none!important;
 filter:drop-shadow(0 2px 1px rgba(99,59,31,.27))!important;pointer-events:none!important;
}
#app .zw107 .zw233-number-hand{
 position:relative!important;display:flex!important;flex:0 0 46%!important;
 justify-content:center!important;align-items:center!important;
 height:100%!important;width:46%!important;max-width:46%!important;
 min-width:0!important;min-height:0!important;overflow:visible!important;pointer-events:none!important;
}
#app .zw107 .zw233-number-hand img.zw233-hand-art{
 position:static!important;display:block!important;inset:auto!important;
 height:100%!important;width:100%!important;max-height:100%!important;max-width:100%!important;
 object-fit:contain!important;object-position:center center!important;
 filter:drop-shadow(1px 2px 1px rgba(85,49,28,.28))!important;
 animation:zw233-hand-appear .53s cubic-bezier(.16,.75,.35,1) both!important;
 transform-origin:50% 85%!important;image-rendering:auto!important;pointer-events:none!important;
}
#app .zw107 .zw233-number-hand img.zw233-done-art{
 width:84%!important;height:82%!important;
 filter:drop-shadow(0 0 7px #fff0a9) drop-shadow(0 2px 1px #825b45)!important;
 animation:zw233-heart-success .78s cubic-bezier(.2,.8,.2,1) both!important;
}
#app .zw107 .zw233-progress{
 position:relative!important;display:flex!important;justify-content:center!important;
 align-items:center!important;flex:0 0 18%!important;height:18%!important;
 min-height:10px!important;gap:clamp(3px,1vw,6px)!important;
 margin:0!important;padding:0!important;overflow:visible!important;z-index:2!important;
}
#app .zw107 .zw233-progress i{
 flex:0 0 auto!important;display:block!important;
 width:clamp(8px,2.35vw,12px)!important;height:clamp(8px,2.35vw,12px)!important;
 min-width:8px!important;min-height:8px!important;
 border:2px solid #855633!important;border-radius:50%!important;
 background:#fdf0cf!important;box-shadow:0 1px 2px #593a2948!important;
 transform:scale(1)!important;transition:background .2s ease,transform .25s ease,box-shadow .25s ease!important;
}
#app .zw107 .zw233-progress i.yes{
 background:#8dcb64!important;border-color:#5c9144!important;
 box-shadow:0 0 5px #fef0a1b8!important;transform:scale(1.13)!important;
}
#app .zw107 .zw233-goal-done .zw233-ingredient{animation:zw233-goal-nod .7s ease-out 1!important}
#app .zw107 .zw233-goal-done .zw233-progress i.yes{
 background:#85bf62!important;border-color:#477a42!important;
}
@keyframes zw233-hand-appear{
 0%{opacity:.18;transform:translateY(7px) rotate(-4deg) scale(.82)}
 56%{opacity:1;transform:translateY(-3px) rotate(3deg) scale(1.08)}
 100%{opacity:1;transform:translateY(0) rotate(0deg) scale(1)}
}
@keyframes zw233-heart-success{
 0%{opacity:0;transform:translateY(8px) rotate(-9deg) scale(.35)}
 44%{opacity:1;transform:translateY(-6px) rotate(8deg) scale(1.16)}
 73%{opacity:1;transform:translateY(-1px) rotate(-3deg) scale(.94)}
 100%{opacity:1;transform:translateY(0) rotate(0deg) scale(1)}
}
@keyframes zw233-goal-nod{
 0%,100%{transform:translateY(0) scale(1)}
 45%{transform:translateY(-3px) scale(1.08)}
}
@media (min-aspect-ratio:6/5){
 #app .zw107 .zw107-order .zw233-request{height:80%!important;gap:3px!important}
 #app .zw107 .zw233-ingredient{flex-basis:49%!important;max-width:49%!important;height:89%!important}
 #app .zw107 .zw233-number-hand{flex-basis:47%!important;width:47%!important;max-width:47%!important}
 #app .zw107 .zw233-progress{height:16%!important;flex-basis:16%!important;min-height:8px!important;gap:5px!important}
 #app .zw107 .zw233-progress i{width:9px!important;height:9px!important}
}
@media (max-width:375px) and (orientation:portrait){
 #app .zw107 .zw107-order .zw233-goal{padding:0!important}
 #app .zw107 .zw107-order .zw233-request{gap:0!important}
 #app .zw107 .zw233-ingredient{flex-basis:49%!important;max-width:49%!important}
 #app .zw107 .zw233-number-hand{flex-basis:50%!important;width:50%!important;max-width:50%!important}
 #app .zw107 .zw233-progress{gap:3px!important}
 #app .zw107 .zw233-progress i{width:8px!important;height:8px!important}
}
@media(prefers-reduced-motion:reduce){
 #app .zw107 .zw233-hand-art,#app .zw107 .zw233-number-hand img.zw233-done-art,
 #app .zw107 .zw233-goal-done .zw233-ingredient{animation:none!important;transition:none!important}
}

/* ---- /picnic-v235/order.css?v=236 ---- */
/* Picknick 2.5 – exact reading order: numbered wax-pencil hand × painted food. */
#app .zw107 .zw107-order .zw233-goal .zw233-request{
 display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;
 align-items:center!important;justify-content:center!important;
 gap:0!important;width:100%!important;max-width:100%!important;
 height:80%!important;min-width:0!important;min-height:0!important;
 overflow:visible!important;white-space:nowrap!important;
}
#app .zw107 .zw107-order .zw233-goal .zw233-number-hand{
 order:1!important;
 flex:0 0 38%!important;width:38%!important;max-width:38%!important;
 height:100%!important;min-width:0!important;min-height:0!important;
 overflow:visible!important;
 display:flex!important;justify-content:center!important;align-items:center!important;
}
#app .zw107 .zw107-order .zw233-goal .zw235-times{
 order:2!important;
 display:flex!important;flex:0 0 15%!important;
 justify-content:center!important;align-items:center!important;
 width:15%!important;max-width:15%!important;min-width:0!important;
 height:100%!important;margin:0!important;padding:0!important;
 font-family:'Segoe Print','Comic Neue','Trebuchet MS',sans-serif!important;
 font-size:clamp(18px,4.4vw,29px)!important;font-weight:900!important;
 line-height:1!important;letter-spacing:0!important;
 color:#68331c!important;text-align:center!important;
 text-shadow:1px 1px 0 #fde7b5,-.7px -.7px 0 #d89d69!important;
 -webkit-text-stroke:.45px #684023!important;
 transform:none!important;
 user-select:none!important;pointer-events:none!important;
}
#app .zw107 .zw107-order .zw233-goal .zw233-ingredient{
 order:3!important;
 flex:0 0 47%!important;width:47%!important;max-width:47%!important;
 min-width:0!important;min-height:0!important;height:85%!important;
 display:flex!important;justify-content:center!important;align-items:center!important;
 overflow:visible!important;
}
#app .zw107 .zw107-order .zw233-goal .zw233-number-hand img.zw233-hand-art{
 display:block!important;width:100%!important;max-width:100%!important;
 height:98%!important;max-height:98%!important;object-fit:contain!important;
 object-position:center center!important;
}
/* A finished ingredient shows a joy heart, rather than the nonsensical heart × food. */
#app .zw107 .zw107-order .zw233-goal.completed .zw235-times{
 opacity:0!important;visibility:hidden!important;
}
#app .zw107 .zw107-order .zw233-goal.completed .zw233-number-hand img.zw233-done-art{
 height:75%!important;max-height:75%!important;
}
@media(min-aspect-ratio:6/5){
 #app .zw107 .zw107-order .zw233-goal .zw233-number-hand{
  flex-basis:38%!important;width:38%!important;max-width:38%!important;
 }
 #app .zw107 .zw107-order .zw233-goal .zw235-times{
  flex-basis:15%!important;width:15%!important;font-size:clamp(18px,4.7dvh,24px)!important;
 }
 #app .zw107 .zw107-order .zw233-goal .zw233-ingredient{
  flex-basis:47%!important;width:47%!important;max-width:47%!important;
 }
}
@media(max-width:375px) and (orientation:portrait){
 #app .zw107 .zw107-order .zw233-goal .zw233-number-hand{
  flex-basis:37%!important;width:37%!important;max-width:37%!important;
 }
 #app .zw107 .zw107-order .zw233-goal .zw235-times{
  flex-basis:15%!important;width:15%!important;font-size:clamp(16px,4.8vw,20px)!important;
 }
 #app .zw107 .zw107-order .zw233-goal .zw233-ingredient{
  flex-basis:48%!important;width:48%!important;max-width:48%!important;
 }
}
