/* Direct ordered extraction of shopkeeper presentation rules from
 * 1fbca878165bceb75ef20884a78a18625915c98b:paprika-theme/page-paprika-client-preview.php.
 * Only unrelated selectors within combined source rules were removed.
 */
.shopkeeper{position:relative;z-index:11;min-width:0;align-self:start;position:sticky;top:24px;height:calc(100svh - 65px);min-height:730px;max-height:920px}
.brand-scene{position:relative;z-index:6;display:flex;align-items:center;gap:10px;padding:0 10px 0 5px}
.brand-link{flex:0 0 auto;width:clamp(116px,12vw,180px);filter:drop-shadow(0 4px 0 #fff4cf) drop-shadow(0 4px 10px #5b341649);transform:rotate(-6deg);transition:transform .2s}
.brand-link:hover{transform:rotate(-2deg) scale(1.02)}
.brand-link img{width:100%;height:auto}
.brand-note{max-width:230px;color:#8e432d;text-shadow:0 1px #fff9de,0 0 14px #fff1cb;font-size:clamp(14px,1.45vw,23px);font-weight:700;transform:rotate(-7deg);line-height:1.6;letter-spacing:.03em}
.brand-note strong{display:block;font-weight:800;white-space:nowrap}
.brand-note i{font-style:normal;font-size:40px;line-height:1;color:#ec6067;position:absolute;right:-34px;top:20px;-webkit-text-stroke:2px #fff9e5}
.character-playground{position:absolute;inset:165px -4px 40px 0}
.sunbeam{position:absolute;inset:6% -2% -2%;background:radial-gradient(ellipse at 45% 45%,#ffe5ab55,transparent 70%);pointer-events:none}
.character-button{position:absolute;inset:auto -18px 7px -16px;width:calc(100% + 34px);height:100%;display:flex;align-items:flex-end;justify-content:center;background:none;border:0;padding:0;transition:filter .2s;z-index:2;transform-origin:bottom center}
.character-button:hover{filter:brightness(1.035)}
.character-button:focus-visible{outline:3px dashed #fff4ce;outline-offset:-9px;border-radius:45%}
.character-art{height:auto;max-height:100%;width:100%;object-fit:contain;object-position:bottom center;filter:drop-shadow(0 7px 5px #68401c35)}
.character-button.wiggle{animation:hello .35s ease-out}
@keyframes hello{50%{transform:rotate(-1.6deg) translateY(-4px)}}
.speech{position:absolute;right:-30px;top:20%;width:clamp(170px,14vw,200px);background:linear-gradient(150deg,#fffefa,#fff6e7);border:2px solid #d7a473;border-radius:52% 45% 47% 40% / 38% 42% 45% 42%;box-shadow:0 5px 0 #ca936b24,0 8px 18px #6c3d1c24;padding:31px 24px 16px;z-index:5;transform:rotate(2deg)}
.speech::before{content:'';position:absolute;bottom:19px;left:-5px;width:24px;height:26px;background:#fff9ee;border-bottom:2px solid #d7a473;border-left:2px solid #d7a473;transform:skew(-30deg) rotate(12deg);z-index:-1}
.speech-name{position:absolute;top:-9px;left:16px;background:var(--sun);border:2px solid #fff7df;border-radius:20px;padding:2px 8px;font-size:11px;font-weight:800;display:flex;align-items:center;gap:4px;box-shadow:0 2px 2px #89532424}
.speech-name>.icon{width:15px;height:15px;color:#496733}
.speech-name>span{font-size:8px;opacity:.75;letter-spacing:.06em}
.speech p{font-size:clamp(13px,1.2vw,17px);font-weight:700;line-height:1.75;margin:0;min-height:76px;text-align:center;text-wrap:pretty}
.speech-next{display:flex;align-items:center;gap:5px;padding:7px 0 0;margin:0 3px 0 auto;border:0;background:none;color:#a33c41}
.speech-next span{font-size:9px;letter-spacing:.1em;color:#aa8168}
.speech-next .icon{height:19px;width:19px}
.wood-counter{position:absolute;bottom:0;left:-24px;right:-15px;height:78px;z-index:3;pointer-events:none;transform:rotate(-1deg);filter:drop-shadow(0 8px 5px #49270c38)}
.counter-top{position:absolute;top:-9px;left:-5px;right:-5px;height:30px;background:repeating-linear-gradient(3deg,transparent 0 5px,#9851252a 6px 7px,transparent 8px 15px),linear-gradient(#f0bc73,#bd7c43);border:3px solid #d29a5c;border-top:4px solid #f4ca87;border-radius:12px 12px 6px 6px;box-shadow:inset 0 -4px 0 #9c592e40}
.counter-front{position:absolute;top:18px;bottom:0;left:5px;right:5px;background:repeating-linear-gradient(1deg,#ba7c44 0 10px,#b2753f 12px,#bb7c44 16px);border:3px solid #966035;border-radius:0 0 8px 8px;display:flex;justify-content:space-around;box-shadow:inset 0 7px 8px #71391154}
.counter-front i{border-right:2px solid #8752296e;height:100%;width:24%}
.counter-sign{position:absolute;bottom:-1px;left:25px;z-index:4;background:#fff3d9;border:3px solid #d4a266;border-radius:7px;box-shadow:0 5px 4px #69422540;transform:rotate(-6deg);padding:10px 22px 9px 15px}
.counter-sign span{font-size:9px;letter-spacing:.15em;font-weight:700;display:block;color:#a17950}
.counter-sign strong{font-size:17px;line-height:1.3;font-style:italic;font-weight:600;color:#7b482f}
.counter-sign .icon{position:absolute;right:-15px;top:-11px;width:28px;height:28px;stroke-width:2;color:#739b40;fill:#93bb4c}
.keeper-foot{position:absolute;bottom:0;left:5px;right:0;display:flex;align-items:center;justify-content:space-between;z-index:7}
.collapse-character{display:none}
@media(min-width:1740px){
.shopkeeper{max-height:970px}
}
@media(min-width:1600px) and (max-height:820px){
.shopkeeper{min-height:670px;height:730px;top:12px}
.brand-link{width:135px}
.brand-note{font-size:18px}
.character-playground{top:130px}
}
@media(max-width:1599px){
.shopkeeper{position:relative;top:0;height:415px;min-height:0;max-height:none;align-self:auto;margin-bottom:12px}
.brand-scene{height:117px;padding:0 0 0 6px;align-items:flex-start;gap:16px}
.brand-link{width:115px;transform:rotate(-5deg)}
.brand-note{font-size:17px;margin-top:20px;max-width:255px}
.brand-note i{display:none}
.character-playground{inset:80px 0 30px;max-width:660px;margin:auto}
.character-button{height:110%;left:-10px;right:auto;bottom:0;width:59%;max-width:375px}
.character-art{width:auto;height:100%;max-width:100%;object-fit:contain}
.speech{top:65px;right:9%;width:215px;border-radius:38% 45% 43% 35% / 32% 41% 38% 42%;padding:27px 22px 13px}
.speech p{font-size:15px;min-height:70px}
.wood-counter{left:-3px;right:14%;height:55px;bottom:-2px;z-index:3}
.counter-front{height:38px}
.counter-sign{left:28px;bottom:-8px;padding:6px 17px 7px 13px}
.counter-sign span{font-size:8px}
.counter-sign strong{font-size:15px}
.keeper-foot{bottom:0;right:0;left:8px}
.collapse-character{display:flex;align-items:center;gap:4px;border:1px solid #e7cba3;border-radius:20px;background:#fff7e8e8;padding:4px 10px;font-size:10px}
.collapse-character .icon{width:13px;height:13px;transform:rotate(-90deg)}
.shopkeeper.is-collapsed{height:149px}
.shopkeeper.is-collapsed .character-playground{display:none}
.shopkeeper.is-collapsed .collapse-character .icon{transform:rotate(90deg)}
}
@media(max-width:600px){
.shopkeeper{height:340px;margin-bottom:4px}
.brand-scene{height:99px;gap:8px;padding:0 0 0 2px;align-items:center}
.brand-link{width:87px}
.brand-note{font-size:11px;margin-top:17px;max-width:180px;align-self:center;line-height:1.6;letter-spacing:0}
.brand-note strong{max-width:120px;white-space:normal;line-height:1.5}
.character-playground{inset:97px 0 23px}
.character-button{left:-8px;bottom:-1px;width:69%;height:111%;max-width:none;align-items:flex-end}
.character-art{height:100%;width:auto;max-width:100%;object-fit:contain}
.speech{right:-1px;top:28px;width:163px;padding:25px 15px 9px;border-radius:34% 37% 31% 28% / 30% 30% 34% 27%;transform:rotate(2deg)}
.speech p{font-size:12px;min-height:63px;line-height:1.7}
.speech-name{font-size:9px;top:-8px;left:12px;padding:1px 6px}
.speech-name .icon{width:13px;height:13px}
.speech-name>span{font-size:7px}
.speech-next{padding-top:4px}
.speech-next span{font-size:8px}
.speech-next .icon{width:17px;height:17px}
.wood-counter{height:46px;bottom:-4px;left:-11px;right:12%}
.counter-top{height:22px;border-width:2px}
.counter-front{height:30px;top:11px;border-width:2px}
.counter-sign{left:10px;bottom:-4px;border-width:2px;padding:4px 13px 5px 10px}
.counter-sign span{font-size:6px}
.counter-sign strong{font-size:11px}
.counter-sign .icon{width:20px;height:20px;right:-11px;top:-8px}
.keeper-foot{bottom:0;left:3px;right:1px}
.collapse-character{font-size:9px;padding:3px 9px}
.shopkeeper.is-collapsed{height:128px}
}
@media(max-width:350px){
.brand-link{width:74px}
.brand-note{font-size:10px;margin-top:27px;max-width:103px}
.brand-note strong{max-width:98px}
.shopkeeper{height:320px}
.character-playground{top:104px}
.speech{width:140px;top:25px;padding:23px 12px 8px}
.speech p{font-size:11px;min-height:57px}
.speech-name{font-size:8px;left:6px}
.speech-name>span{font-size:6px}
}
@media(max-width:600px){
.speech-next{min-height:30px}
}
@media(min-width:1600px){
.shopkeeper{height:auto;aspect-ratio:.62;min-height:min(43.75rem,calc(100svh - 4rem));max-height:min(calc(100svh - 4rem),112.5rem);top:1.5rem}
.brand-link{width:clamp(7.25rem,12vw,14.5rem)}
.brand-note{max-width:clamp(14.375rem,20vw,22rem);font-size:clamp(.875rem,calc(.75rem + .6vw),1.75rem)}
.character-playground{top:clamp(10rem,10vw,13.75rem)}
.speech{right:0;top:clamp(6rem,19%,16rem);width:clamp(11rem,14vw,20rem);padding:clamp(1.9375rem,2vw,2.75rem) clamp(1.5rem,1.8vw,2.25rem) clamp(1rem,1.2vw,1.5rem)}
.speech p{font-size:clamp(1.0625rem,calc(.9375rem + .22vw),1.375rem);min-height:0}
.speech-name{font-size:clamp(.6875rem,calc(.6rem + .12vw),.875rem)}
.speech-next span{font-size:clamp(.6875rem,calc(.6rem + .12vw),.875rem)}
.wood-counter{height:clamp(4.875rem,5.5vw,7rem)}
.counter-top{height:clamp(1.875rem,2.1vw,2.8125rem)}
.counter-front{top:clamp(1.125rem,1.4vw,1.875rem)}
.counter-sign strong{font-size:clamp(1.0625rem,calc(.875rem + .25vw),1.625rem)}
.counter-sign span{font-size:clamp(.5625rem,calc(.5rem + .12vw),.8125rem)}
}
@media(min-width:1600px) and (max-height:820px){
.shopkeeper{position:relative;top:0}
.character-playground{top:clamp(7.5rem,13vh,9rem)}
.speech{top:17%}
}
@media(min-width:1600px){
.character-playground{--dialogue-zone:min(50%,clamp(11rem,14vw,20rem));--dialogue-edge-overlap:8%}
.character-button{left:-1%;right:auto;width:calc(100% - var(--dialogue-zone) + var(--dialogue-edge-overlap));height:100%;justify-content:flex-start}
.character-art{object-position:bottom left}
.speech{width:var(--dialogue-zone);right:0;top:clamp(3.5rem,14%,9rem)}
}
@media(min-width:1600px) and (max-height:820px){
.character-playground{--dialogue-zone:min(50%,clamp(11rem,12vw,16rem))}
.speech{top:clamp(2.5rem,10%,5rem);padding:1.75rem 1rem .75rem}
.speech p{font-size:clamp(1.0625rem,calc(.9375rem + .22vw),1.375rem)}
}
@media(max-width:1599px){
.character-playground{--dialogue-zone:min(38%,13.5rem)}
.character-button{width:calc(100% - var(--dialogue-zone) + 3%);max-width:none}
.speech{right:0;width:var(--dialogue-zone);top:clamp(2rem,15%,4rem)}
}
@media(max-width:600px){
.character-playground{--dialogue-zone:min(44%,10.25rem)}
.character-button{width:calc(100% - var(--dialogue-zone) + 3%)}
.speech{top:1.75rem;padding:1.5625rem .9375rem .5625rem}
}
@media(max-width:350px){
.character-playground{--dialogue-zone:min(44%,8.75rem)}
}
@media(min-width:1600px){
.shopkeeper{--character-art-height:clamp(620px,68vh,920px);
  --character-stage-top:clamp(10rem,10vw,13.75rem);
  --character-counter-clearance:2.5rem;
  --character-speech-clearance:4rem;
  min-height:calc(var(--character-art-height) + var(--character-stage-top) + var(--character-counter-clearance) + var(--character-speech-clearance));
  max-height:max(min(calc(100svh - 4rem),112.5rem),calc(var(--character-art-height) + var(--character-stage-top) + var(--character-counter-clearance) + var(--character-speech-clearance)));}
.brand-link{width:clamp(60px,6vw,116px)}
.character-playground{top:var(--character-stage-top)}
.character-button{left:-1%;right:auto;bottom:0;
  height:var(--character-art-height);
  width:min(100%,clamp(520px,57vh,771px));
  max-width:100%;}
.character-art{width:100%;height:100%;max-height:100%;object-fit:contain;object-position:bottom left}
.speech{right:0;width:var(--dialogue-zone);top:clamp(.75rem,2%,2rem)}
}
@media(min-width:1600px) and (max-height:820px){
.shopkeeper{--character-stage-top:clamp(7.5rem,13vh,9rem)}
}
@media(min-width:1600px) and (max-height:900px){
.shopkeeper{position:relative;top:0}
}
@media(min-width:1600px){
.speech{top:auto;bottom:calc(var(--character-art-height) + 1rem);right:-.375rem}
}
@media(min-width:1600px){
.shopkeeper{--character-speech-clearance:clamp(2rem,3vw,4rem)}
.shopkeeper{position:sticky;top:var(--store-admin-gap);height:calc(100svh - var(--store-admin-gap));max-height:none}
.shopkeeper.shopkeeper--flow{position:relative;top:0}
}
.speech{padding-top:clamp(1.25rem,1.5vw,1.875rem)}
@media(min-width:1600px){
.counter-sign{left:clamp(1rem,1.5vw,2rem);bottom:.5rem;padding:.55rem 1.5rem .65rem .85rem;transform:rotate(-3deg)}
.counter-sign span{font-size:clamp(.75rem,calc(.6875rem + .1vw),.875rem);letter-spacing:.08em}
.counter-sign strong{display:block;font-size:clamp(1.125rem,calc(1rem + .3vw),1.5rem);font-style:normal;font-weight:800}
}
@media(max-width:600px){
.speech{padding-top:1.125rem}
}
.sunbeam{background:var(--pf-keeper-beam)}
html[data-pf-time="dawn"] .sunbeam,html[data-pf-time="sunset"] .sunbeam,html[data-pf-time="night"] .sunbeam{inset:-28% -6% -25% -25%}
@media(max-width:1599px){
html[data-pf-time="dawn"] .sunbeam,html[data-pf-time="sunset"] .sunbeam,html[data-pf-time="night"] .sunbeam{inset:-28% 0 -25% 0}
}
html[data-pf-time="dawn"] .character-art,html[data-pf-time="sunset"] .character-art,html[data-pf-time="night"] .character-art{filter:drop-shadow(0 7px 5px #68401c35) drop-shadow(0 0 1.8rem var(--pf-keeper-rim))}
html[data-pf-time="dawn"] .character-button::after,html[data-pf-time="sunset"] .character-button::after,html[data-pf-time="night"] .character-button::after{content:'';position:absolute;inset:0;pointer-events:none;background:var(--pf-keeper-front);mix-blend-mode:screen}
@media(min-width:1600px){
.shopkeeper{width:100%;max-width:100%;aspect-ratio:auto}
.character-playground{right:0}
.character-button{left:0}
.speech{right:.75rem}
.wood-counter{left:0;right:.375rem}
}
@media(min-width:1600px) and (max-height:950px){
.shopkeeper{--character-art-height:clamp(540px,65vh,620px)}
.speech{top:-5.5rem;bottom:auto}
}
@media(max-width:600px){
.shopkeeper{height:300px}
.brand-scene{position:absolute;top:calc(-1 * (var(--bubble-size) + 1.5rem));left:0;height:var(--bubble-size);width:max-content;max-width:calc(100% - 7.5rem);padding:0;gap:.375rem;align-items:center}
.brand-link{width:clamp(3.25rem,14vw,3.875rem)}
.brand-note{margin:0;max-width:8rem;font-size:.6875rem;line-height:1.3;transform:none}
.brand-note strong{max-width:none;line-height:1.3}
.character-playground{top:2.5rem}
}
@media(max-width:350px){
.shopkeeper{height:285px}
.brand-note{max-width:6rem;font-size:.5625rem}
.character-playground{top:2.25rem}
}
.character-art{transform:scaleX(-1)}
.wood-counter{left:0;right:0;bottom:0;width:auto;max-width:100%;height:clamp(10rem,10vw,12rem);transform:none}
.wood-counter .counter-front{height:auto;bottom:0}
.counter-front i{flex:1 1 0;width:auto;min-width:0}
.counter-sign{bottom:.25rem}
.shopkeeper.is-collapsed .wood-counter,.shopkeeper.is-collapsed .counter-sign{display:none}
@media(max-width:1599px){
.wood-counter{left:0;right:0;height:6rem}
}
@media(max-width:600px){
.wood-counter{height:5rem}
}
.keeper-foot{justify-content:flex-end}
@media(max-width:1599px){
.brand-scene{display:none}
}

/* WordPress content compatibility: the preview used short fixture text. These
 * bounds take effect only when valid CMS text exceeds that fixture geometry. */
.counter-sign{max-width:min(80%,22rem);overflow-wrap:anywhere}
.speech{max-height:min(calc(100% - 1rem),16rem);overflow:auto;overscroll-behavior:contain}
.speech p{overflow-wrap:anywhere;white-space:pre-line}
@media(max-width:1599px){.speech{max-height:min(calc(100% - 1rem),12rem)}}
@media(max-width:600px){.speech{max-height:min(calc(100% - 1rem),9rem)}}
@media(prefers-reduced-motion:reduce){.character-button.wiggle{animation:none}}
