/* «Моя кухня» (kitchen.js): карточка наверху «Сегодня», шторка с кухней и магазином */
.kt-card{display:flex;align-items:center;gap:10px;margin:2px 0 12px;padding:8px;border-radius:20px;background:var(--card);box-shadow:0 2px 10px rgba(0,0,0,.06)}
.kt-thumb{flex:none;width:92px;height:60px;padding:0;overflow:hidden;border-radius:14px;background:#F6F1E7}
.kt-thumb .kt-svg{display:block;width:100%;height:100%}
.kt-body{flex:1;min-width:0;min-height:44px;display:flex;flex-direction:column;justify-content:center;text-align:left}
.kt-body h2{font:750 16px/1.2 InterMM}
.kt-coins{display:flex;align-items:center;gap:6px;margin-top:3px;font:700 15px/1 InterMM}
.kt-coin{flex:none}
.kt-dots{display:inline-flex;gap:3px;margin-left:4px}
.kt-dots i{width:7px;height:7px;border-radius:50%;background:var(--fill)}
.kt-dots i.on{background:#FF8A2B}
.kt-claim{flex:none;display:inline-flex;align-items:center;gap:5px;min-height:44px;padding:0 14px;border-radius:14px;background:#FFC93C;color:#2B2B33;font:800 16px/1 InterMM;box-shadow:0 3px 0 #E0A21F;animation:kt-pulse 1.8s ease-in-out infinite}
.kt-go{flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--fill);color:var(--label2)}
.kt-go .ti{width:20px;height:20px}
.kt-rules{margin:-4px 2px 12px;font-size:13px;line-height:1.35;color:var(--label2)}
@keyframes kt-pulse{50%{transform:scale(1.04)}}
@media (prefers-reduced-motion:reduce){.kt-claim{animation:none}}

/* шторка: кухня целиком, шеф стоит у плиты, ниже — вкладки по предметам и витрина */
.kt-room{position:relative;margin:4px 0 12px;overflow:hidden;border-radius:20px;background:#F6F1E7;aspect-ratio:3 / 2}
.kt-room .kt-svg{display:block;width:100%;height:100%}
.kt-claim-big{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-bottom:12px;background:#FFC93C;color:#2B2B33}
.kt-tabs{margin-bottom:10px}
.kt-shop{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.kt-item{display:flex;flex-direction:column;gap:8px;padding:8px 8px 10px;border-radius:18px;background:var(--card);box-shadow:0 1px 4px rgba(0,0,0,.06)}
.kt-item.on{box-shadow:0 0 0 2.5px #FF8A2B}
.kt-prev{height:88px;overflow:hidden;border-radius:12px;background:#F6F1E7}
.kt-prev .kt-svg{display:block;width:100%;height:100%}
.kt-item b{font:650 14px/1.25 InterMM;min-height:2.5em}
.kt-item .btn{display:flex;align-items:center;justify-content:center;gap:6px;min-height:44px;width:100%}
.kt-item .btn[aria-disabled="true"]{opacity:.55}
.kt-on{display:flex;align-items:center;justify-content:center;gap:6px;min-height:44px;font:700 14px/1 InterMM;color:#E0700F}
.kt-on .ti{width:18px;height:18px}
.m-kitchen .sym{background:#FFE7B3;color:#B25E00}
[data-theme="dark"] .kt-dots i{background:#3A3A3C}
[data-theme="dark"] .kt-go{background:#2C2C2E}

/* шеф сбоку и сзади (chefviews.js): шаг, взмах рук, подпрыгивание; у плиты — мешает по кругу */
.cv{display:block;width:100%;height:auto;overflow:visible}
.cv *{transform-box:view-box}
.cv-step{animation:cv-step .6s linear infinite}
.cv-step.cv-b{animation-delay:-.3s}
.cv-swing{transform-origin:150px 252px;animation:cv-swing .6s ease-in-out infinite}
.cv-swing.cv-b{animation-delay:-.3s}
.cv-bob{animation:cv-bob .3s ease-in-out infinite}
.cv-stir,.cv-elbow{animation:cv-stir 1.2s linear infinite}
.cv-bob2{transform-origin:150px 380px;animation:cv-sway 2.4s ease-in-out infinite}
.cv-head2{transform-origin:150px 232px;animation:cv-nod 2.4s ease-in-out infinite}
@keyframes cv-step{0%{transform:translate(-26px,0)}25%{transform:translate(0,-12px)}50%{transform:translate(26px,0)}75%{transform:translate(0,0)}100%{transform:translate(-26px,0)}}
@keyframes cv-swing{0%,100%{transform:rotate(-30deg)}50%{transform:rotate(30deg)}}
@keyframes cv-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@keyframes cv-stir{0%{transform:translate(0,0)}25%{transform:translate(7px,-5px)}50%{transform:translate(0,-10px)}75%{transform:translate(-7px,-5px)}100%{transform:translate(0,0)}}
@keyframes cv-sway{0%,100%{transform:rotate(-1.5deg)}50%{transform:rotate(1.5deg)}}
@keyframes cv-nod{0%,100%{transform:rotate(2deg)}50%{transform:rotate(-2deg)}}
@media (prefers-reduced-motion:reduce){.cv *{animation:none!important}}

/* мелкая жизнь кухни: муха кружит, лампочка мигает, старый холодильник гудит, хвост кота ходит */
.kt-svg *{transform-box:view-box}
.kt-fly{animation:kt-fly 3.2s ease-in-out infinite}
.kt-flicker{animation:kt-flicker 2.6s steps(1) infinite}
.kt-hum{transform-origin:328px 178px;animation:kt-hum .18s linear infinite}
.kt-tail{animation:kt-tail 1.8s ease-in-out infinite}
@keyframes kt-fly{0%,100%{transform:translate(0,0)}25%{transform:translate(18px,-8px)}50%{transform:translate(4px,10px)}75%{transform:translate(-14px,-4px)}}
@keyframes kt-flicker{0%,18%,24%,60%,100%{opacity:1}20%,62%{opacity:.35}}
@keyframes kt-hum{0%,100%{transform:translateX(0)}50%{transform:translateX(.6px)}}
@keyframes kt-tail{0%,100%{transform:rotate(-8deg)}50%{transform:rotate(10deg)}}
@media (prefers-reduced-motion:reduce){.kt-svg *{animation:none!important}}

/* шеф на кухне: три вида, показываем нужный; идёт — едет по полу (к плите — вглубь, мельче), у плиты — спиной, говорит — пузырь над головой.
   left/bottom/width ставит kitchen.js (pos) */
.kt-actor{position:absolute;bottom:3%;width:20%;aspect-ratio:3 / 4;pointer-events:none}
.kt-pose{position:absolute;inset:0;display:none}
.kt-pose .chef{width:100%;margin:0}
.kt-actor[data-pose="talk"] .kt-front,.kt-actor[data-pose="walk"] .kt-side,.kt-actor[data-pose="cook"] .kt-back{display:block}
.kt-actor[data-dir="l"] .kt-side .cv{transform:scaleX(-1)}
.kt-actor:not([data-pose="walk"]) .cv-step,.kt-actor:not([data-pose="walk"]) .cv-swing,.kt-actor:not([data-pose="walk"]) .cv-bob{animation-play-state:paused}
/* у плиты (kitchen.js cookFx): ложка в кастрюле ходит по кругу в такт локтю (cv-stir, 1.2 с), пар; своя кастрюля «встаёт» на плиту.
   display:none, пока шеф не у плиты, — так ложка и локоть начинают такт вместе */
.kt-fx{position:absolute;inset:0;display:none;width:100%;height:100%;pointer-events:none}
.kt-room[data-cook] .kt-fx{display:block}
.kt-fx *{transform-box:view-box}
.kt-pot{transform-origin:218px 126px;animation:kt-pop .35s cubic-bezier(.22,1,.36,1) both}
.kt-spoon{animation:kt-stir 1.2s linear infinite}
.kt-puff{opacity:0;animation:kt-puff 1.6s ease-out infinite}
@keyframes kt-pop{from{transform:scale(.3);opacity:0}}
@keyframes kt-stir{0%{transform:translate(0,0)}25%{transform:translate(2.4px,-1.6px)}50%{transform:translate(0,-3.2px)}75%{transform:translate(-2.4px,-1.6px)}100%{transform:translate(0,0)}}
@keyframes kt-puff{0%{transform:translateY(5px);opacity:0}35%{opacity:1}100%{transform:translateY(-12px);opacity:0}}
.kt-admin{margin:-6px 0 12px}
.kt-say{position:absolute;bottom:96%;left:40%;width:max-content;max-width:min(220px,58vw);padding:8px 11px;border-radius:14px 14px 14px 4px;background:var(--card);color:var(--label);font:600 13px/1.3 InterMM;box-shadow:0 4px 14px rgba(0,0,0,.16);opacity:0;transform:translateY(6px) scale(.9);transform-origin:left bottom;transition:opacity .2s,transform .3s cubic-bezier(.22,1,.36,1)}
.kt-say[data-side="l"]{left:auto;right:40%;border-radius:14px 14px 4px 14px;transform-origin:right bottom}
.kt-say.on{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.kt-actor{transition:none!important}.kt-say{transition:none}.kt-fx *{animation:none!important}}
