.hgpto-host{--bg:#f6eed9;--paper:#fffaf0;--paper2:#fdf3da;--ink:#2b2118;--ink-soft:#5a4a38;--gold:#f0c16d;--gold-deep:#b97f24;--line:#2b2118;--shadow:#2b21182e;--bubble-bg:#fffaf0;--botink:#2b2118}@media(prefers-color-scheme:dark){.hgpto-host{--bg:#1c1611;--paper:#2a211a;--paper2:#332619;--ink:#f3e9d2;--ink-soft:#cdbb9a;--gold:#f0c16d;--gold-deep:#f0c16d;--line:#f3e9d2;--shadow:#00000080;--bubble-bg:#2e2417}}.bot-layer{z-index:60;pointer-events:none;height:0;transform:translate(var(--hgpto-dx,0px),var(--hgpto-dy,0px));position:fixed;bottom:0;left:0;right:0}#bot-pastille{background:var(--paper);width:56px;height:56px;color:var(--ink);border:2.5px solid var(--line);font:inherit;cursor:pointer;box-shadow:2px 2px 0 var(--shadow);pointer-events:auto;border-radius:50%;font-size:11px;font-weight:700;display:none;position:absolute;bottom:8px;left:0}.hgpto-host.hgpto-reduit #bot-pastille{display:block}.hgpto-host.hgpto-reduit .bot,.hgpto-host.hgpto-reduit .cat{display:none}.bot{pointer-events:auto;cursor:grab;-webkit-tap-highlight-color:transparent;touch-action:none;-webkit-user-select:none;user-select:none;will-change:transform;outline:none;width:132px;height:127px;transition:transform .12s linear;position:absolute;bottom:8px;left:0}.bot.dragging{cursor:grabbing}.bot.nosmooth{transition:none}.bot.hidden{transition:transform .5s;transform:translateY(180px)!important}.bot:focus-visible{filter:drop-shadow(0 0 6px var(--gold-deep))}.bot-inner{transform-origin:50% 90%;position:absolute;inset:0}.bot[data-state=walk] .bot-inner{animation:.46s ease-in-out infinite bob}.bot[data-state=tickle] .bot-inner{animation:.5s ease-in-out infinite wiggle}.bot[data-state=tickle-big] .bot-inner{animation:.32s ease-in-out infinite wiggle}.bot[data-state=startle] .bot-inner{animation:.5s ease-out jump}.bot[data-state=sleep] .bot-inner{transform:rotate(2.5deg)translateY(3px)}.bot[data-state=stretch] .bot-inner{animation:1.3s ease-in-out stretchy}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes wiggle{0%,to{transform:rotate(-5deg)}50%{transform:rotate(5deg)translateY(-3px)}}@keyframes jump{0%{transform:translateY(0)}35%{transform:translateY(-16px)rotate(-2deg)}to{transform:translateY(0)}}@keyframes stretchy{0%,to{transform:scaleY(1)}40%{transform:scaleY(1.07)translateY(-3px)}}.bot-svg{width:132px;height:127px;display:block;overflow:visible}.bot-svg .expr,.bot-svg .mouthv,.bot-svg .browv{display:none}.bot[data-expr=happy] .expr-happy,.bot[data-expr=happy] .mouth-smile,.bot[data-expr=happy] .brow-happy,.bot[data-expr=laugh] .expr-laugh,.bot[data-expr=laugh] .mouth-laugh,.bot[data-expr=laugh] .brow-laugh,.bot[data-expr=sleep] .expr-sleep,.bot[data-expr=sleep] .mouth-o,.bot[data-expr=sleep] .brow-sleep,.bot[data-expr=yawn] .expr-sleep,.bot[data-expr=yawn] .mouth-yawn,.bot[data-expr=yawn] .brow-sleep,.bot[data-expr=focus] .expr-focus,.bot[data-expr=focus] .mouth-flat,.bot[data-expr=focus] .brow-focus,.bot[data-expr=wide] .expr-wide,.bot[data-expr=wide] .mouth-o,.bot[data-expr=wide] .brow-wide,.bot[data-expr=angry] .expr-angry,.bot[data-expr=angry] .mouth-grumble,.bot[data-expr=angry] .brow-angry,.bot[data-expr=sad] .expr-sad,.bot[data-expr=sad] .mouth-sad,.bot[data-expr=sad] .brow-sad{display:block}.bot[data-state=angry] .bot-inner{animation:.28s ease-in-out infinite stomp}@keyframes stomp{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)rotate(-1deg)}}.bot.stomping .bot-inner{animation:.28s ease-in-out 3 stomp}.angersteam{opacity:0}.bot[data-state=angry] .angersteam{opacity:1}.bot[data-state=angry] .angersteam circle{animation:.7s ease-out infinite steampuff}.angersteam circle{transform-box:fill-box;transform-origin:50%}@keyframes steampuff{0%{opacity:.9;transform:scale(.5)translateY(3px)}to{opacity:0;transform:scale(1.5)translateY(-6px)}}.bot[data-state=despair] .bot-inner{transform:translateY(7px)scaleY(.93)}.tears,.hanky{opacity:0;transition:opacity .3s}.bot[data-state=cry] .tears,.bot[data-state=cry] .hanky{opacity:1}.bot[data-state=cry] .tears path{animation:1.1s ease-in infinite tearfall}.bot[data-state=cry] .tears path:nth-child(2){animation-delay:.55s}@keyframes tearfall{0%{opacity:0;transform:translateY(0)}25%{opacity:1}to{opacity:0;transform:translateY(13px)}}.bot.shakeoff .bot-inner{animation:.5s ease-in-out shakeoff}@keyframes shakeoff{0%,to{transform:rotate(0)}25%{transform:rotate(-4deg)}75%{transform:rotate(4deg)}}.bot[data-state=wave] .brow-happy{animation:.55s ease-in-out infinite browbounce}@keyframes browbounce{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.bot[data-state=tickle] .brow-laugh,.bot[data-state=tickle-big] .brow-laugh{animation:.16s ease-in-out infinite browshake}@keyframes browshake{0%,to{transform:translateY(0)rotate(-1deg)}50%{transform:translateY(-2.5px)rotate(1.5deg)}}.bot[data-state=sleep] .brow-sleep{animation:3.2s ease-in-out infinite browdrift}@keyframes browdrift{0%,to{transform:translateY(0)}50%{transform:translateY(1.8px)}}.antenna-ball{transform-origin:110px 22px}.bot[data-state=walk] .antenna-ball{animation:1.2s ease-in-out infinite sway}.bot[data-state=tickle] .antenna-ball,.bot[data-state=tickle-big] .antenna-ball{animation:.4s ease-in-out infinite sway}@keyframes sway{0%,to{transform:rotate(-7deg)}50%{transform:rotate(7deg)}}.bot[data-state=wave] .arm-r{animation:.55s ease-in-out infinite wave}@keyframes wave{0%,to{transform:rotate(-128deg)}50%{transform:rotate(-163deg)}}.bot[data-state=tinker] .arm-r{animation:.5s ease-in-out infinite tinker}@keyframes tinker{0%,to{transform:rotate(-80deg)}50%{transform:rotate(-99deg)}}.tool{opacity:0;transition:opacity .25s}.bot[data-state=tinker] .tool{opacity:1}.sparks{opacity:0}.bot[data-state=tinker] .sparks{opacity:1}.bot[data-state=tinker] .spark{animation:.5s ease-in-out infinite sparkle}.bot[data-state=tinker] .spark.s2{animation-delay:.16s}.bot[data-state=tinker] .spark.s3{animation-delay:.32s}@keyframes sparkle{0%,to{opacity:.3;transform:scale(.4)}50%{opacity:1;transform:scale(1.15)}}.spark{transform-origin:50%;transform-box:fill-box}.wheel-spokes{transform-origin:110px 190px}.bot[data-state=walk] .wheel-spokes{animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.shadow-el{transform-origin:110px 203px}.bot[data-state=walk] .shadow-el{animation:.46s ease-in-out infinite shpulse}@keyframes shpulse{0%,to{transform:scaleX(1)}50%{transform:scaleX(.92)}}.bot[data-state=cook] .arm-l{animation:.7s ease-in-out infinite stir}@keyframes stir{0%,to{transform:rotate(-9deg)}50%{transform:rotate(11deg)}}.spoon,.pot{opacity:0;transition:opacity .25s}.bot[data-state=cook] .spoon,.bot[data-state=cook] .pot{opacity:1}.steam path{opacity:0}.bot[data-state=cook] .steam path{animation:2.2s ease-in-out infinite steamup}.bot[data-state=cook] .steam path:nth-child(2){animation-delay:.7s}.bot[data-state=cook] .steam path:nth-child(3){animation-delay:1.3s}@keyframes steamup{0%{opacity:0;transform:translateY(5px)}35%{opacity:.85}to{opacity:0;transform:translateY(-9px)}}.sign{opacity:0;transition:opacity .25s}.bot[data-state=invite] .sign{opacity:1}.bot[data-state=invite] .arm-l{transform:rotate(24deg)}.book{opacity:0;transition:opacity .3s}.bot[data-state=read] .book,.bot.sleep-book .book{opacity:1}@keyframes readscan{0%,to{transform:translate(-2.5px)}50%{transform:translate(2.5px)}}.pageflip{transform-box:fill-box;transform-origin:0%}.bot[data-state=read] .pageflip{animation:3.6s ease-in-out infinite pageflip}@keyframes pageflip{0%,70%,to{transform:scaleX(1)}84%{transform:scaleX(.06)}}.spraycan,.spraydots{opacity:0;transition:opacity .2s}.bot[data-state=graffiti] .spraycan,.bot[data-state=graffiti] .spraydots{opacity:1}.bot[data-state=graffiti] .arm-r{animation:.18s linear infinite sprayshake}@keyframes sprayshake{0%,to{transform:rotate(-54deg)}50%{transform:rotate(-45deg)translateY(-1.5px)}}.bot[data-state=graffiti] .spraydots circle{animation:.5s ease-out infinite spraypuff}.bot[data-state=graffiti] .spraydots circle:nth-child(2n){animation-delay:.15s}.bot[data-state=graffiti] .spraydots circle:nth-child(3n){animation-delay:.3s}@keyframes spraypuff{0%{opacity:.9;transform:scale(.4)}to{opacity:0;transform:scale(1.5)}}.spraydots circle{transform-box:fill-box;transform-origin:50%}.graffiti{z-index:59;pointer-events:none;opacity:0;transition:opacity 1.4s;position:fixed;bottom:138px}.graffiti.show{opacity:.92}.bot[data-state=wet] .bot-inner{animation:.12s linear infinite shiver}@keyframes shiver{0%,to{transform:translate(-1.6px)rotate(-.6deg)}50%{transform:translate(1.6px)rotate(.6deg)}}.drops{opacity:0;transition:opacity .4s}.bot.dripping .drops{opacity:1}.burst i.water{color:#5b9bd5}.scarf,.raincoat,.umbrella,.rain{opacity:0;transition:opacity .3s}.bot[data-outfit=froid] .scarf{opacity:1}.costume{opacity:0;transition:opacity .3s}.bot[data-costume=apron] .costume-apron,.bot[data-costume=hero] .costume-hero,.bot[data-costume=wrestler] .costume-wrestler,.bot[data-costume=wrestler] .belt,.bot[data-costume=halloween] .costume-halloween,.bot[data-costume=noel] .costume-noel,.bot[data-costume=stjean] .costume-stjean,.bot[data-costume=sucres] .costume-sucres,.bot[data-costume=rentree] .costume-rentree,.bot[data-outfit=pluie] .raincoat,.bot[data-outfit=pluie] .umbrella,.bot[data-outfit=pluie] .rain{opacity:1}.bot[data-outfit=pluie] .rain line{animation:.7s linear infinite rainfall}.bot[data-outfit=pluie] .rain line:nth-child(2n){animation-delay:.22s}.bot[data-outfit=pluie] .rain line:nth-child(3n){animation-delay:.45s}@keyframes rainfall{0%{opacity:0;transform:translateY(-4px)}25%{opacity:.8}to{opacity:0;transform:translateY(16px)}}.bot{transition:transform .12s linear,bottom .7s,width .4s,height .4s}.bot.big,.bot.big .bot-svg{width:152px;height:146px}.bot.calm,.bot.calm .bot-svg{width:160px;height:154px}.bot.calm .bot-inner,.bot.calm .antenna-ball,.bot.calm .arm-r,.bot.calm .arm-l,.bot.calm .wheel-spokes,.bot.calm .brow-happy,.bot.calm .brow-laugh{animation:none!important}.bot-inner{transition:transform .3s}.skateboard{opacity:0;transition:opacity .25s}.mainwheel{transition:opacity .2s}.bot[data-state=skate] .skateboard{opacity:1}.bot[data-state=skate] .mainwheel{opacity:0}.bot[data-state=skate] .bot-inner{animation:.3s ease-in-out infinite bob}.bot.ollie .bot-inner{animation:.55s ease-out ollie}@keyframes ollie{40%{transform:translateY(-17px)rotate(-4deg)}}.bot[data-state=fallen] .bot-inner{transform:rotate(63deg)translate(8px,20px)}.bot[data-state=fallen] .arm-r{transform:rotate(-118deg)}.bot[data-state=fallen] .skateboard{opacity:1;transform:rotate(-14deg)}.skateboard{transform-box:fill-box;transform-origin:50%}.belt{opacity:0;transition:opacity .25s}.bot[data-state=wrestler] .belt{opacity:1}.bot[data-state=wrestler] .bot-inner{animation:.8s ease-in-out infinite flexpump}@keyframes flexpump{0%,to{transform:scale(1)}50%{transform:scale(1.045,1.07)}}.mimewall{opacity:0;transition:opacity .3s}.bot[data-state=mime] .mimewall{opacity:1}.bot[data-state=mime] .arm-l{animation:1.1s ease-in-out infinite mimepat}.bot[data-state=mime] .arm-r{animation:1.1s ease-in-out infinite reverse mimepat}@keyframes mimepat{0%,to{transform:rotate(-7deg)}50%{transform:rotate(9deg)}}.smoke,.cloth{opacity:0;transition:opacity .3s}.bot[data-state=cookfail] .pot,.bot[data-state=cookfail] .cloth,.bot[data-state=cookfail] .smoke{opacity:1}.bot[data-state=cookfail] .arm-r{animation:.45s ease-in-out infinite fanwave}@keyframes fanwave{0%,to{transform:rotate(-24deg)}50%{transform:rotate(14deg)}}.bot[data-state=cookfail] .smoke circle{animation:1.7s ease-in-out infinite alternate smokepuff}.bot[data-state=cookfail] .smoke circle:nth-child(2){animation-delay:.4s}.bot[data-state=cookfail] .smoke circle:nth-child(3){animation-delay:.8s}.smoke circle{transform-box:fill-box;transform-origin:50%}@keyframes smokepuff{0%{transform:translateY(4px)scale(.8)}to{transform:translateY(-7px)scale(1.2)}}@media(max-width:560px){.bot-controls{gap:4px;max-width:66vw}.bot-controls button,.bot-controls select{min-height:44px;padding:10px;font-size:12px}.bot,.bot .bot-svg{width:106px;height:102px}.bot.big,.bot.big .bot-svg{width:120px;height:116px}.bot.calm,.bot.calm .bot-svg{width:128px;height:123px}.cat,.cat .cat-svg{width:76px;height:59px}.graffiti{bottom:112px}}.bubble{background:var(--bubble-bg);width:max-content;max-width:248px;color:var(--ink);border:2.5px solid var(--line);box-shadow:4px 4px 0 var(--shadow);opacity:0;pointer-events:none;text-align:left;border-radius:14px;padding:10px 13px;font-size:14.5px;font-weight:600;line-height:1.4;transition:opacity .25s,transform .25s;position:absolute;bottom:calc(100% + 2px);left:50%;transform:translate(-50%,6px)scale(.92)}.bubble:after{content:"";background:var(--bubble-bg);border-right:2.5px solid var(--line);border-bottom:2.5px solid var(--line);width:16px;height:16px;position:absolute;bottom:-11px;left:50%;transform:translate(-50%)rotate(45deg)}.bubble.show{opacity:1;transform:translate(-50%)scale(1)}.bubble a{pointer-events:auto}.bubble.edge-l{transform:translate(-16%,6px)scale(.92)}.bubble.edge-l.show{transform:translate(-16%)scale(1)}.bubble.edge-l:after{left:22%}.bubble.edge-r{transform:translate(-84%,6px)scale(.92)}.bubble.edge-r.show{transform:translate(-84%)scale(1)}.bubble.edge-r:after{left:78%}.bubble a{color:var(--gold-deep);border-bottom:2px solid var(--gold);margin-top:6px;font-weight:800;text-decoration:none;display:inline-block}.bubble a:hover{background:var(--gold);color:#2b2118}.bubble .bubble-no{pointer-events:auto;color:#5b4a36;cursor:pointer;background:0 0;border:1.5px solid #5b4a368c;border-radius:999px;margin-top:7px;padding:3px 10px;font-family:inherit;font-size:11.5px;font-weight:600}.bubble .bubble-no:hover{background:#5b4a361f}.bubble .bubble-no:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.zzz{opacity:0;pointer-events:none;position:absolute;top:-14px;right:0}.bot[data-state=sleep] .zzz{opacity:1}.zzz span{color:var(--gold-deep);font-family:Georgia,serif;font-weight:700;animation:2.6s ease-in-out infinite zfloat;position:absolute}.zzz span:first-child{font-size:15px;top:16px;right:16px}.zzz span:nth-child(2){font-size:20px;animation-delay:.8s;top:2px;right:4px}.zzz span:nth-child(3){font-size:26px;animation-delay:1.6s;top:-14px;right:-8px}@keyframes zfloat{0%{opacity:0;transform:translateY(6px)}35%{opacity:1}to{opacity:0;transform:translateY(-12px)}}.burst{pointer-events:none;position:absolute;inset:0;overflow:visible}.burst i{color:var(--gold-deep);font-style:normal;animation:1s ease-out forwards burstfly;position:absolute}@keyframes burstfly{0%{opacity:0;transform:translate(0)scale(.5)}20%{opacity:1}to{transform:translate(var(--dx),var(--dy)) scale(1.25) rotate(var(--rot));opacity:0}}.bot-controls{z-index:61;pointer-events:none;flex-wrap:wrap;justify-content:flex-end;gap:6px;max-width:calc(100vw - 200px);display:flex;position:fixed;bottom:12px;right:176px}.bot-controls button,.bot-controls select{pointer-events:auto}.bot-controls button{font:inherit;cursor:pointer;background:var(--paper);color:var(--ink);border:2px solid var(--line);box-shadow:2px 2px 0 var(--shadow);opacity:.85;border-radius:999px;padding:5px 11px;font-size:12.5px;font-weight:700}.bot-controls button:hover{opacity:1;background:var(--gold);color:#2b2118}.bot-controls select{font:inherit;cursor:pointer;background:var(--paper);color:var(--ink);border:2px solid var(--line);box-shadow:2px 2px 0 var(--shadow);opacity:.85;border-radius:999px;padding:5px 8px;font-size:12.5px;font-weight:700}#btn-ask{background:var(--gold);color:#2b2118;opacity:1}.qa{z-index:62;background:var(--paper);width:min(330px,100vw - 24px);max-height:calc(100dvh - 70px);color:var(--ink);border:2.5px solid var(--line);box-shadow:5px 5px 0 var(--shadow);border-radius:14px;padding:12px 12px 10px;position:fixed;bottom:58px;left:12px;overflow-y:auto}.qa[hidden]{display:none}.qa-head{justify-content:space-between;align-items:center;margin-bottom:9px;font-family:Georgia,serif;font-size:16.5px;font-weight:700;display:flex}.qa-head button{font:inherit;cursor:pointer;background:var(--paper2);color:var(--ink);border:2px solid var(--line);border-radius:999px;padding:5px 9px;font-size:13px;font-weight:700;line-height:1}.qa-chips{flex-wrap:wrap;gap:6px;max-height:38vh;display:flex;overflow-y:auto}.qa-chips button{font:inherit;cursor:pointer;text-align:left;background:var(--paper2);color:var(--ink);border:2px solid var(--line);border-radius:999px;padding:6px 11px;font-size:13px;font-weight:600}.qa-chips button:hover{background:var(--gold);color:#2b2118}.qa-suggestion{background:var(--paper2);border:2px solid var(--gold);border-radius:12px;margin:0 0 8px;padding:8px 10px}.qa-suggestion .qa-sugg-label{color:var(--ink);margin-bottom:4px;font-size:12px;font-weight:800}.qa-suggestion .qa-sugg-row{align-items:flex-start;gap:6px;display:flex}.qa-suggestion .qa-sugg-btn{font:inherit;cursor:pointer;text-align:left;background:var(--gold);color:#2b2118;border:2px solid var(--line);border-radius:999px;flex:1;padding:6px 11px;font-size:13px;font-weight:600}.qa-suggestion .qa-sugg-no{font:inherit;cursor:pointer;background:var(--paper2);color:var(--ink);border:2px solid var(--line);border-radius:999px;flex:none;padding:6px 9px;font-size:13px;font-weight:700;line-height:1}.qa-choix-head{color:var(--ink);flex:0 0 100%;padding:2px 2px 0;font-size:13px;font-weight:800}.qa-preview{font:inherit;cursor:pointer;color:var(--ink-soft);background:0 0;border:none;margin-top:9px;padding:2px;font-size:12px;font-weight:600;text-decoration:underline}.qa-play{width:100%;font:inherit;cursor:pointer;background:var(--gold);color:#2b2118;border:2.5px solid var(--line);box-shadow:3px 3px 0 var(--shadow);border-radius:10px;margin-top:10px;padding:9px 12px;font-size:15px;font-weight:800;display:block}.qa-play:hover{background:var(--gold-deep);color:#fff}body.game-on main,body.game-on header,body.game-on footer{opacity:.32;filter:saturate(.65)}body.game-on .bot-layer{z-index:80}body.game-on .bot-controls{display:none}.pawn-you{margin-left:-15px}.pawn-bot{margin-left:15px}body.game-on main,body.game-on header,body.game-on footer{transition:opacity .6s,filter .6s}.game{z-index:70;background:#f6eed9e6;flex-direction:column;align-items:center;padding:14px 10px 26px;display:flex;position:fixed;inset:0;overflow-y:auto}@media(prefers-color-scheme:dark){.game{background:#1c1611ed}}.game[hidden]{display:none}.game-top{justify-content:space-between;align-items:center;gap:10px;width:min(94vw,540px);display:flex}.game-title{font-family:Georgia,serif;font-size:clamp(17px,4.4vw,22px);font-weight:700}#game-quit,.gcard button{font:inherit;cursor:pointer;background:var(--paper);color:var(--ink);border:2px solid var(--line);border-radius:999px;padding:7px 13px;font-size:13.5px;font-weight:700}#game-quit:hover,.gcard button:hover{background:var(--gold);color:#2b2118}.board-wrap{aspect-ratio:1;width:min(94vw,58vh,540px);margin-top:12px;position:relative}.game.shake .board-wrap{animation:.45s ease-in-out boardshake}@keyframes boardshake{0%,to{transform:translate(0)}25%{transform:translate(-4px,2px)rotate(-.4deg)}75%{transform:translate(4px,-2px)rotate(.4deg)}}.board{border:3px solid var(--line);background:var(--paper);box-shadow:6px 6px 0 var(--shadow);border-radius:10px;grid-template-rows:repeat(8,1fr);grid-template-columns:repeat(8,1fr);display:grid;position:absolute;inset:0;overflow:hidden}.cell{border:1px solid #5a401459;animation:.45s both cellin;position:relative}.cell.alt{background:var(--paper2)}.cell b{color:var(--ink-soft);font-size:clamp(9px,2.2vw,13px);font-weight:800;position:absolute;top:2px;left:4px}.cell.goal{background:var(--gold)}@keyframes cellin{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.board-art{pointer-events:none;z-index:2;width:100%;height:100%;position:absolute;inset:0}.pawn{z-index:3;pointer-events:none;justify-content:center;align-items:center;width:11.5%;height:11.5%;transition:left .18s linear,top .18s linear;display:flex;position:absolute;transform:translate(-50%,-56%)}.pawn.slide{transition:left .85s ease-in-out,top .85s ease-in-out}.pawn.climb{transition:left .8s ease-in-out,top .8s ease-in-out}.pawn-you i{background:var(--gold);color:#2b2118;border:3px solid var(--botink);width:76%;height:76%;box-shadow:2px 2px 0 var(--shadow);border-radius:50%;justify-content:center;align-items:center;font-size:clamp(9px,2.4vw,13px);font-style:normal;font-weight:800;display:flex}.pawn-bot svg{filter:drop-shadow(2px 2px #2b211840);width:104%;height:104%}.confetti{pointer-events:none;z-index:4;position:absolute;inset:0;overflow:hidden}.confetti i{background:var(--gold);border:1px solid #2b211866;border-radius:2px;width:8px;height:13px;animation:1.5s ease-in forwards confall;position:absolute;top:-4%}@keyframes confall{to{opacity:.85;transform:translateY(115vh)rotate(560deg)}}.game-bar{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;width:min(94vw,540px);margin-top:14px;display:flex}.die{color:#2b2118;width:62px;height:62px;box-shadow:3px 3px 0 var(--shadow);background:#fffaf0;border:3px solid #2b2118;border-radius:13px;justify-content:center;align-items:center;font-family:Georgia,serif;font-size:32px;font-weight:700;display:flex}.game-status{text-align:center;min-width:150px;font-size:16.5px;font-weight:700}#game-roll{font:inherit;cursor:pointer;background:var(--gold);color:#2b2118;border:2.5px solid var(--line);box-shadow:3px 3px 0 var(--shadow);border-radius:11px;padding:11px 20px;font-size:16.5px;font-weight:800}#game-roll:disabled{opacity:.45;cursor:default;box-shadow:none}.gcard{z-index:75;background:var(--paper);width:min(92vw,430px);color:var(--ink);border:3px solid var(--line);box-shadow:7px 7px 0 var(--shadow);text-align:center;border-radius:16px;padding:20px 20px 14px;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.gcard[hidden]{display:none}.gcard h2{margin:0 0 4px;font-family:Georgia,serif;font-size:24px}.gcard p{color:var(--ink-soft);margin:6px 0}.card-mini{grid-template-columns:repeat(8,1fr);gap:2px;width:176px;margin:10px auto;display:grid}.card-mini i{aspect-ratio:1;background:var(--paper2);border:1px solid #5a40144d;border-radius:2px}.card-mini i.you{background:var(--gold)}.card-mini i.botp{background:#2b2118}.card-share{background:var(--paper2);border:2px dashed var(--gold-deep);text-align:left;border-radius:10px;margin:10px 0;padding:10px 12px;font-size:14px;font-weight:600}.card-btns{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:8px;display:flex}#card-copy{background:var(--gold);color:#2b2118;font-weight:800}.card-note{color:var(--gold-deep);font-size:13px;font-weight:700}@media(prefers-reduced-motion:reduce){.bot-inner,.antenna-ball,.arm-r,.arm-l,.wheel-spokes,.zzz span,.burst i,.brow-happy,.brow-laugh,.brow-sleep{animation:none!important}.bot{transition:none}}.leg-l{transform-origin:95px 173px}.leg-r{transform-origin:125px 173px}.arm-l{transform-origin:63px 124px}.arm-r{transform-origin:157px 124px}.bot[data-state=walk] .leg-l,.bot[data-state=walk] .arm-r{animation:.5s ease-in-out infinite alternate step}.bot[data-state=walk] .leg-r,.bot[data-state=walk] .arm-l{animation:.5s ease-in-out infinite alternate-reverse step}@keyframes step{0%{transform:rotate(-20deg)}to{transform:rotate(20deg)}}.led{animation:1.6s ease-in-out infinite ledpulse}@keyframes ledpulse{50%{opacity:.35}}.eyes-all{transform-box:fill-box;transform-origin:50%;transition:transform 70ms}.bot.blink .eyes-all{transform:scaleY(.08)}#pupils{transition:transform .18s}.bot[data-expr=laugh] #pupils,.bot[data-expr=sleep] #pupils,.bot[data-expr=yawn] #pupils{display:none}.bot[data-state=read] .expr-happy{animation:none}.bot[data-state=read] .eyes-all{animation:2.6s ease-in-out infinite readscan}.readglasses{opacity:0;transition:opacity .3s}.bot[data-state=read] .readglasses{animation:11s ease-in-out both glasseslife}.bot.sleep-book .readglasses{opacity:1;animation:none}@keyframes glasseslife{0%{opacity:0;transform:translateY(-7px)}7%{opacity:1;transform:translateY(0)}52%{transform:translateY(0)}64%{transform:translateY(6px)}84%{opacity:1;transform:translateY(6px)}96%,to{opacity:0;transform:translateY(-4px)}}.bot[data-state=stretch] .arm-l{transform:rotate(158deg)}.bot[data-state=stretch] .arm-r{transform:rotate(-158deg)}.bot[data-state=despair] .arm-l{transform:rotate(14deg)}.bot[data-state=despair] .arm-r{transform:rotate(-14deg)}.bot[data-state=invite] .arm-r{transform:rotate(-136deg)}.bot[data-state=wrestler] .arm-l{transform:rotate(116deg)}.bot[data-state=wrestler] .arm-r{transform:rotate(-116deg)}.bot[data-state=skate] .arm-l{transform:rotate(18deg)}.bot[data-state=skate] .arm-r{transform:rotate(-18deg)}.bot.calm .leg-l,.bot.calm .leg-r{animation:none!important}@media(prefers-reduced-motion:reduce){.bot .leg-l,.bot .leg-r{animation:none!important}.bot[data-state=read] .readglasses{opacity:1;animation:none}}.nosefinger,.stars,.duster,.broom{opacity:0;transition:opacity .25s}.bot[data-state=nosepick] .nosefinger{opacity:1}.bot[data-state=nosepick] .arm-r{transform:rotate(-155deg)}.bot[data-state=tumble] .stars{opacity:1}.bot[data-state=tumble] .stars path{transform-box:fill-box;transform-origin:50%;animation:.8s ease-in-out infinite startwinkle}.bot[data-state=tumble] .stars path:nth-child(2){animation-delay:.25s}.bot[data-state=tumble] .stars path:nth-child(3){animation-delay:.5s}@keyframes startwinkle{0%,to{transform:scale(.65)rotate(0)}50%{transform:scale(1.2)rotate(24deg)}}.bot[data-state=tumble] .bot-inner{transform:rotate(72deg)translate(10px,24px)}.bot[data-state=dust] .duster{opacity:1}.bot[data-state=dust] .arm-r{animation:.5s ease-in-out infinite dustwave}@keyframes dustwave{0%,to{transform:rotate(-96deg)}50%{transform:rotate(-70deg)}}.bot[data-state=sweep] .broom{opacity:1}.bot[data-state=sweep] .bot-inner{animation:.8s ease-in-out infinite sweepsway}@keyframes sweepsway{0%,to{transform:rotate(-2deg)}50%{transform:rotate(2.2deg)translate(3px)}}.bot[data-state=fix] .tool{opacity:1}.bot[data-state=fix] .arm-r{animation:.5s ease-in-out infinite tinker}.bot[data-state=hot] .arm-r{animation:.45s ease-in-out infinite fanwave}.bot[data-state=hot] .angersteam{opacity:1}.bot[data-state=hot] .angersteam circle{animation:.7s ease-out infinite steampuff}.bot[data-state=hot] .led{fill:#f0563c}.bot[data-state=hot] .bot-svg{filter:drop-shadow(0 0 9px #f0563c8c)}.bot[data-state=yawn] .arm-l{animation:1.1s ease-in-out infinite eyerub}.bot[data-state=yawn] .arm-r{animation:1.1s ease-in-out infinite eyerubr}@keyframes eyerub{0%,to{transform:rotate(146deg)}50%{transform:rotate(159deg)}}@keyframes eyerubr{0%,to{transform:rotate(-146deg)}50%{transform:rotate(-159deg)}}#decor{z-index:55;pointer-events:none;opacity:0;transition:opacity 1.2s;position:fixed;top:0;left:0;right:0}#decor.on{opacity:1}#decor .spider{width:34px;animation:6.5s ease-in-out infinite alternate spiderdrop;position:absolute;top:0}#decor .spider:before{content:"";background:#2b211873;width:2px;height:11vh;margin:0 auto;display:block}@keyframes spiderdrop{0%{transform:translateY(0)}to{transform:translateY(3.2vh)}}#decor .lights{justify-content:space-between;padding:0 8px;display:flex}#decor .lights span{color:#f0563c;background:#f0563c;border-radius:50%;width:11px;height:11px;margin-top:6px;animation:1.3s ease-in-out infinite alternate twinkle;box-shadow:0 0 9px}#decor .lights span:nth-child(3n){color:#f0c16d;background:#f0c16d}#decor .lights span:nth-child(3n+1){color:#6ee7a8;background:#6ee7a8}#decor .lights span:nth-child(4n){animation-delay:.5s}@keyframes twinkle{0%{opacity:.4}to{opacity:1}}.sec-glow{outline:3px solid var(--gold-deep);outline-offset:5px;box-shadow:0 0 0 6px #f0c16d73,5px 5px 0 var(--shadow);border-radius:12px;transition:box-shadow .3s}.bot.frozen .bot-inner{animation-play-state:paused!important}.bot.frozen:after{content:"❚❚";z-index:5;background:var(--paper);color:var(--ink);border:2px solid var(--line);box-shadow:2px 2px 0 var(--shadow);border-radius:999px;padding:2px 8px;font-size:11px;font-weight:800;position:absolute;top:-8px;left:2px}.qa-form{gap:6px;margin-top:10px;display:flex}.qa-form input{min-width:0;font:inherit;background:var(--paper2);color:var(--ink);border:2px solid var(--line);border-radius:999px;flex:1;padding:7px 12px;font-size:13.5px}.qa-form button{font:inherit;cursor:pointer;background:var(--gold);color:#2b2118;border:2px solid var(--line);border-radius:999px;padding:7px 13px;font-size:13px;font-weight:800}.qa-actions{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.qa-actions button{font:inherit;cursor:pointer;background:var(--paper2);color:var(--ink);border:2px solid var(--line);border-radius:999px;padding:6px 11px;font-size:12.5px;font-weight:700}.qa-actions button:hover{background:var(--gold);color:#2b2118}.qa-hugo{color:var(--ink-soft);border-top:2px dashed #5a401466;margin-top:10px;padding-top:8px;font-size:12.5px}.qa-hugo[hidden]{display:none}.qa-hugo-title{color:var(--ink);margin-bottom:4px;font-weight:800}.qa-hugo ul{max-height:110px;margin:0;padding-left:18px;overflow-y:auto}#btn-dock{display:none}@media(max-width:560px){#btn-dock{justify-content:center;align-items:center;width:46px;height:46px;font-size:19px;display:inline-flex;border-radius:50%!important;padding:0!important}.bot-controls:not(.open)>:not(#btn-dock){display:none}.bot-controls.open{background:var(--paper);border:2.5px solid var(--line);box-shadow:4px 4px 0 var(--shadow);border-radius:16px;max-width:calc(100vw - 24px);padding:8px}}.scard .scard-bot{width:110px;margin:2px auto 4px}.scard .scard-meta{color:var(--ink);font-weight:700}.bot[data-expr=angry] .led{fill:#f0563c}.bot[data-expr=sad] .led{fill:#6ea8d8}.bot[data-expr=sleep] .led,.bot[data-expr=yawn] .led{fill:#3f7d5c}.bot[data-expr=focus] .led{fill:#f0c16d}.bot[data-expr=wide] .led{fill:#fff3b0}.cat{z-index:59;pointer-events:auto;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;outline:none;width:96px;height:74px;transition:opacity .5s;position:absolute;bottom:4px;left:0}.cat.gone{opacity:0;pointer-events:none}.cat:focus-visible{filter:drop-shadow(0 0 6px var(--gold-deep))}.cat-svg{width:96px;height:74px;display:block;overflow:visible}.cat.face-l .cat-svg{transform:scaleX(-1)}.cat-inner{transform-origin:50% 92%;position:absolute;inset:0}.cat[data-state=walk] .cat-inner{animation:.34s ease-in-out infinite catbob}.cat[data-state=zoom] .cat-inner{animation:.15s ease-in-out infinite catbob}@keyframes catbob{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.cat-tail{transform-box:fill-box;transform-origin:8% 92%;animation:2.6s ease-in-out infinite tailwag}@keyframes tailwag{0%,to{transform:rotate(-5deg)}50%{transform:rotate(9deg)}}.cat[data-state=rub] .cat-inner{animation:.85s ease-in-out infinite catrub}@keyframes catrub{0%,to{transform:rotate(-3.5deg)translate(-2px)}50%{transform:rotate(3.5deg)translate(2px)}}.cat[data-state=purr] .cat-inner{animation:.45s ease-in-out infinite purrpulse}@keyframes purrpulse{0%,to{transform:scale(1)}50%{transform:scale(1.025)}}.cat-head{transform-box:fill-box;transform-origin:50% 82%}.cat[data-state=eat] .cat-head{animation:.45s ease-in-out infinite eatbob}@keyframes eatbob{0%,to{transform:rotate(0)translateY(0)}50%{transform:rotate(7deg)translateY(3px)}}.cat[data-state=stare] .cat-head{transform:translateY(-2.5px)}.cat[data-state=startle] .cat-inner{animation:.45s ease-out catjump}@keyframes catjump{35%{transform:translateY(-13px)scaleY(1.05)}}.cat.hopping .cat-inner{animation:.55s cubic-bezier(.34,.56,.4,1) cathop}@keyframes cathop{0%{transform:translateY(0)}45%{transform:translateY(-52px)}to{transform:translateY(0)}}#poseCurl,.cat[data-state=sleep] #poseStand,.cat[data-state=console] #poseStand{display:none}.cat[data-state=sleep] #poseCurl,.cat[data-state=console] #poseCurl{display:block}.cat .eyes-shut,.cat[data-state=sleep] .eyes-open,.cat[data-state=console] .eyes-open,.cat[data-state=purr] .eyes-open{display:none}.cat[data-state=sleep] .eyes-shut,.cat[data-state=console] .eyes-shut,.cat[data-state=purr] .eyes-shut{display:block}.scratch{pointer-events:none;position:absolute;top:2px;right:-8px}.bowl{z-index:58;pointer-events:none;transition:opacity .4s;position:absolute;bottom:0}.kibble{z-index:58;pointer-events:none;transition:opacity .35s;position:absolute;bottom:6px}.kibble[hidden]{display:none}@media(prefers-reduced-motion:reduce){.cat-inner,.cat-tail,.cat-head{animation:none!important}}body.hgpto-on{padding-bottom:168px}@media(max-width:560px){body.hgpto-on{padding-bottom:148px}}body.hgpto-closed .bot-layer,body.hgpto-closed .bot-controls,body.hgpto-closed #decor{display:none!important}.qa-stamps{border-top:2px dashed #5a401466;margin-top:10px;padding-top:9px}.qa-stamps-title{margin-bottom:7px;font-family:Georgia,serif;font-size:15px;font-weight:700}.stampcard{background:var(--paper2);border:2px solid var(--line);border-radius:10px;align-items:flex-start;gap:10px;margin-bottom:7px;padding:8px 10px;display:flex}.hstamp{text-align:center;color:#3f7d5c;letter-spacing:.6px;text-transform:uppercase;background:#fffaf099;border:2.5px solid #3f7d5c;border-radius:6px;flex:none;padding:4px 7px;font-size:10.5px;font-weight:800;line-height:1.25;transform:rotate(-6deg)}.stampcard .sv{font-size:13px;line-height:1.45}.stampcard .sv b{font-size:14px}.stampcard .sv button,.stampcard .sv a{font:inherit;cursor:pointer;background:var(--gold);color:#2b2118;border:2px solid var(--line);border-radius:999px;margin-top:5px;padding:5px 11px;font-size:12.5px;font-weight:800;text-decoration:none;display:inline-block}.stampcard .sv a{background:var(--paper);color:var(--ink)}.qa-actions button[aria-pressed=false]{opacity:.55}.pballoon{opacity:0;pointer-events:none;transition:opacity .35s}.bot.has-balloon .pballoon{opacity:1}.bot.has-balloon .pballoon .hit{pointer-events:all;cursor:pointer}.bot.has-balloon .pballoon .balloon-body{transform-box:fill-box;transform-origin:50% 100%;animation:2.3s ease-in-out infinite balloonsway}@keyframes balloonsway{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3.5deg)translateY(-2px)}}.bot.helium .bot-inner{animation:.48s ease-in-out infinite heliumhop}@keyframes heliumhop{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)rotate(-1.2deg)}}.bot.helium .led{fill:#ff8ad8}.bot.helium .head{transform-box:fill-box;transform-origin:50% 88%;animation:8s ease-in-out forwards heliumgonfle}@keyframes heliumgonfle{0%{transform:scale(1)}to{transform:scale(1.6)}}.bot.helium-envol{animation:1.2s ease-in forwards heliumenvol}@keyframes heliumenvol{0%{transform:translateY(0)rotate(0)}to{transform:translateY(-120vh)rotate(-8deg)}}.bot.helium-retour{animation:.9s cubic-bezier(.34,.56,.4,1) heliumretour}@keyframes heliumretour{0%{transform:translateY(-115vh)rotate(-6deg)}to{transform:translateY(0)rotate(0)}}@media(prefers-reduced-motion:reduce){.bot.has-balloon .pballoon .balloon-body,.bot.helium .bot-inner,.bot.helium .head,.bot.helium-envol,.bot.helium-retour{animation:none!important}}.mg-wrap{width:min(94vw,560px);margin-top:12px;position:relative}#mg-canvas{touch-action:none;cursor:grab;border:3px solid var(--line);width:100%;height:min(60vh,560px);box-shadow:6px 6px 0 var(--shadow);background:#a8c4e4;border-radius:10px;display:block}#mg-canvas:active{cursor:grabbing}.mg-hud{font-variant-numeric:tabular-nums;flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:9px;font-size:14.5px;font-weight:800;display:flex}.mg-hud span{background:var(--paper);border:2px solid var(--line);border-radius:999px;padding:3px 11px}.mg-toast{background:var(--paper);color:var(--ink);border:2.5px solid var(--line);box-shadow:3px 3px 0 var(--shadow);text-align:center;opacity:0;pointer-events:none;border-radius:8px;max-width:88%;padding:9px 16px;font-size:clamp(15px,4vw,20px);font-weight:800;transition:opacity .3s,transform .3s;position:absolute;top:15%;left:50%;transform:translate(-50%,-8px)}.mg-toast.show{opacity:1;transform:translate(-50%)}.mg-help{width:min(94vw,560px);color:var(--ink-soft);text-align:center;margin:10px 0 0;font-size:13.5px}.rh{z-index:58;color:#241a12;pointer-events:none;width:132px;font-family:Georgia,serif;position:fixed;bottom:12px;right:12px}.rh-bulle{text-align:center;background:#fffdf6;border:2px solid #7a4a2b;border-radius:12px;margin-bottom:4px;padding:6px 8px;font-size:12.5px;line-height:1.25;box-shadow:0 2px 8px #0000001f}.rh-scene{pointer-events:auto;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;width:96px;height:88px;margin:0 auto;position:relative}.rh-dragging .rh-scene{cursor:grabbing}.rh-pied2{justify-content:center;gap:4px;margin-top:3px;display:flex}.rh-controle{pointer-events:auto;font:inherit;color:#7a4a2b;cursor:pointer;white-space:nowrap;background:#fffdf6;border:1.5px solid #7a4a2b;border-radius:999px;padding:2px 8px;font-size:11px}.rh-reduit .rh-bulle,.rh-reduit .rh-pied,.rh-reduit .rh-pied2{display:none}.rh-roue{stroke:#7a4a2b;stroke-width:3px;fill:none;transform-origin:50%;width:96px;height:96px;position:absolute;inset:0}.rh-hamster{width:54px;height:42px;position:absolute;bottom:8px;left:22px;overflow:visible}.rh-patte{stroke:#7a4a2b;stroke-width:2.4px;stroke-linecap:round}.rh-socle{background:#7a4a2b;border-radius:4px;height:4px;position:absolute;bottom:0;left:8px;right:8px}.rh-vitesse{opacity:0;position:absolute;inset:0}.rh-vitesse i{background:#b98a2f;border-radius:3px;width:14px;height:3px;display:block;position:absolute;left:-14px}.rh-vitesse i:first-child{top:30%}.rh-vitesse i:nth-child(2){width:10px;top:52%}.rh-vitesse i:nth-child(3){top:72%}.rh-zzz{color:#b98a2f;opacity:0;font-weight:700;position:absolute;top:-8px;right:6px}.rh-zzz span{font-size:14px;position:absolute}.rh-zzz span:nth-child(2){font-size:18px;top:-10px;left:8px}.rh-zzz span:nth-child(3){font-size:23px;top:-22px;left:18px}.rh-pied{justify-content:space-between;align-items:center;gap:4px;margin-top:2px;display:flex}.rh-honnete{color:#6b5a49;font-size:9.5px;font-style:italic}.rh-fermer{pointer-events:auto;font:inherit;color:#7a4a2b;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:0;font-size:11px;text-decoration:underline}.rh[data-etat=marche] .rh-roue{animation:2.4s linear infinite rh-tourne}.rh[data-etat=marche] .rh-hamster{animation:1.2s ease-in-out infinite rh-bob}.rh[data-etat=court] .rh-roue{animation:.55s linear infinite rh-tourne}.rh[data-etat=court] .rh-hamster{animation:.28s ease-in-out infinite rh-bob}.rh[data-etat=court] .rh-vitesse{opacity:1;animation:.5s linear infinite rh-vite}.rh[data-etat=dort] .rh-zzz{opacity:1;animation:3s ease-in-out infinite rh-zzz}.rh[data-etat=dort] .rh-hamster{transform:rotate(-8deg)scale(.92)}@keyframes rh-tourne{to{transform:rotate(360deg)}}@keyframes rh-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes rh-vite{0%,to{opacity:1;transform:translate(0)}50%{opacity:.4;transform:translate(-5px)}}@keyframes rh-zzz{0%,to{opacity:.4;transform:translateY(0)}50%{opacity:1;transform:translateY(-4px)}}@media(prefers-reduced-motion:reduce){.rh-roue,.rh-hamster,.rh-vitesse,.rh-zzz{animation:none!important}.rh[data-etat=dort] .rh-zzz{opacity:1}}@media(max-width:480px){.rh{width:108px;bottom:8px;right:8px}.rh-bulle{font-size:11px}}
