/* ФинКарта: талисман «Штурман» (u42–u47). Части персонажа двигаются отдельно; всё на CSS. */
.fkm{--m-ink:#0F2D55;--m-hat:#5F96E1;--m-eye:#7FB2F5;--m-glint:#FFFFFF;--m-brow:#FFFFFF;--m-t1:#1F4E8C;--m-t2:#2F62AE;--m-t3:#5F96E1;--m-lens:#CFE0F8;
  width:112px;z-index:40;user-select:none;-webkit-user-select:none;}
[data-theme="dark"] .fkm{--m-ink:#DCE6F5;--m-hat:#7EA8EA;--m-eye:#1F4E8C;--m-glint:#FFFFFF;--m-brow:#0B2140;--m-t1:#9DB9E2;--m-t2:#7EA8EA;--m-t3:#5F96E1;--m-lens:#1A2533;}
/* место: своя колонка справа от окна чата / свободно / в шапке на узком экране */
.page.s3.fkm-rail{position:relative;}
@media(min-width:1100px){.page.s3.fkm-rail .s3-card{margin-left:auto;margin-right:var(--fkm-col,140px);}}
.fkm-railbox{position:absolute;right:0;width:var(--fkm-col,140px);pointer-events:none;}
.fkm--rail{position:sticky;top:84px;margin:14px auto 0;pointer-events:auto;}
.fkm--free{position:fixed;}
.fkm--dock{position:absolute;right:6px;top:-6px;z-index:3;}
.fkm-host{position:relative;}
.fkm-host .page-title{padding-right:calc(var(--fkm-dockw,62px) + 8px);}
.fkm__fig{cursor:grab;touch-action:none;border-radius:14px;outline:none;}
.fkm__fig:focus-visible{box-shadow:0 0 0 2px var(--fk-accent,#1F4E8C);}
.fkm__fig.is-held{cursor:grabbing;}
.fkm--dock .fkm__fig{touch-action:auto;}
.fkm__svg{display:block;width:100%;height:auto;overflow:visible;}
.fkm__svg *{transform-box:view-box;}
.fkm__ink{fill:var(--m-ink);}
.fkm__ink-s,.fkm__arc{fill:none;stroke:var(--m-ink);}
.fkm__arc{stroke-width:15;stroke-linecap:butt;}
.fkm__limb{stroke-width:13;stroke-linecap:round;}
.fkm__hat{fill:var(--m-hat);transform-origin:81px 40px;}
.fkm__eye{fill:var(--m-eye);}
.fkm__glint{fill:var(--m-glint);}
.fkm__brow{fill:none;stroke:var(--m-brow);stroke-width:1.7;stroke-linecap:round;}
.fkm__brow--l{transform-origin:75.5px 66.5px;}
.fkm__brow--r{transform-origin:86.5px 66.5px;}
.fkm__eyes{transform-origin:81px 75.5px;animation:fkm-blink 5.2s infinite;}
.fkm__face{transform-origin:81px 75px;}
.fkm__upper{transform-origin:92px 100px;}
.fkm__fore{transform-origin:110.4px 118.4px;}
.fkm__all{transform-origin:81px 208px;}
.fkm__scope{opacity:0;transform-origin:90px 74.5px;transform:scaleX(.3);}
.fkm__tube1{fill:var(--m-t1);} .fkm__tube2{fill:var(--m-t2);} .fkm__tube3{fill:var(--m-t3);} .fkm__lens{fill:var(--m-lens);}
.fkm__dots{fill:var(--m-hat);opacity:0;}
.fkm__dots circle{animation:fkm-dot 1.1s infinite;}
.fkm__dots circle:nth-child(2){animation-delay:.18s;} .fkm__dots circle:nth-child(3){animation-delay:.36s;}

@keyframes fkm-blink{0%,93%,100%{transform:scaleY(1);}95%{transform:scaleY(.12);}}
@keyframes fkm-dot{0%,60%,100%{opacity:.25;}30%{opacity:1;}}

/* приветствие: снимает шляпу и надевает обратно */
.is-greet .fkm__upper{animation:fkm-g-up 1.7s ease-in-out;}
.is-greet .fkm__fore{animation:fkm-g-fore 1.7s ease-in-out;}
.is-greet .fkm__hat{animation:fkm-g-hat 1.7s ease-in-out;}
.is-greet .fkm__brow{animation:fkm-brow-up 1.7s ease-in-out;}
@keyframes fkm-g-up{0%,100%{transform:rotate(0);}22%,72%{transform:rotate(-87deg);}}
@keyframes fkm-g-fore{0%,100%{transform:rotate(0);}22%,72%{transform:rotate(-84deg);}}
@keyframes fkm-g-hat{0%,24%,74%,100%{transform:none;}40%,58%{transform:translate(9px,-10px) rotate(-12deg);}}
@keyframes fkm-brow-up{0%,100%{transform:none;}30%,70%{transform:translateY(-1.6px);}}

/* показывает рукой */
.is-point .fkm__upper{animation:fkm-p-up 1.4s ease-in-out;}
.is-point .fkm__fore{animation:fkm-p-fore 1.4s ease-in-out;}
@keyframes fkm-p-up{0%,100%{transform:rotate(0);}20%,82%{transform:rotate(-60deg);}}
@keyframes fkm-p-fore{0%,100%{transform:rotate(0);}20%{transform:rotate(-55deg);}35%{transform:rotate(-85deg);}50%{transform:rotate(-35deg);}65%{transform:rotate(-85deg);}82%{transform:rotate(-55deg);}}

/* думает: чешет голову под шляпой, рядом три точки */
.is-think .fkm__upper{transform:rotate(-110deg);transition:transform .25s;}
.is-think .fkm__fore{transform:rotate(-75deg);animation:fkm-scratch .6s ease-in-out infinite;}
.is-think .fkm__hat{transform:translateY(-5px) rotate(-9deg);transition:transform .25s;}
.is-think .fkm__eyes{transform:translate(1px,-1.2px);animation:none;}
.is-think .fkm__brow--r{transform:translateY(-1.8px) rotate(-8deg);}
.is-think .fkm__dots{opacity:1;transition:opacity .2s .2s;}
@keyframes fkm-scratch{0%,100%{transform:rotate(-75deg);}50%{transform:rotate(-62deg);}}

/* подзорная труба: достаёт, раздвигает, смотрит, убирает */
.is-scope .fkm__upper{animation:fkm-s-up 3.6s ease-in-out;}
.is-scope .fkm__fore{animation:fkm-s-fore 3.6s ease-in-out;}
.is-scope .fkm__scope{animation:fkm-s-tube 3.6s ease-in-out;}
.is-scope .fkm__brow--r{animation:fkm-s-brow 3.6s ease-in-out;}
.fkm__eye-l{transform-origin:75.6px 76px;}
.is-scope .fkm__eye-l{animation:fkm-squint 3.6s ease-in-out;}
.is-scope .fkm__brow--l{animation:fkm-squint-brow 3.6s ease-in-out;}
@keyframes fkm-squint{0%,26%,90%,100%{transform:scaleY(1);}34%,82%{transform:scaleY(.12);}}
@keyframes fkm-squint-brow{0%,26%,90%,100%{transform:none;}34%,82%{transform:translateY(1.6px) rotate(12deg);}}
@keyframes fkm-s-up{0%,100%{transform:rotate(0);}18%,86%{transform:rotate(-75deg);}}
@keyframes fkm-s-fore{0%,100%{transform:rotate(0);}18%,86%{transform:rotate(-15deg);}}
@keyframes fkm-s-tube{0%,14%{opacity:0;transform:scaleX(.3);}20%{opacity:1;transform:scaleX(.35);}42%,80%{opacity:1;transform:scaleX(1);}90%{opacity:1;transform:scaleX(.35);}96%,100%{opacity:0;transform:scaleX(.3);}}
@keyframes fkm-s-brow{0%,40%,84%,100%{transform:none;}50%,76%{transform:translateY(-1.8px);}}

/* не знает: разводит руками */
.is-shrug .fkm__upper{animation:fkm-sh-up 1.8s ease-in-out;}
.is-shrug .fkm__fore{animation:fkm-sh-fore 1.8s ease-in-out;}
.is-shrug .fkm__all{animation:fkm-sh-all 1.8s ease-in-out;}
.is-shrug .fkm__brow--l{animation:fkm-sad-l 1.8s ease-in-out;}
.is-shrug .fkm__brow--r{animation:fkm-sad-r 1.8s ease-in-out;}
@keyframes fkm-sh-up{0%,100%{transform:rotate(0);}25%,75%{transform:rotate(18deg);}}
@keyframes fkm-sh-fore{0%,100%{transform:rotate(0);}25%,75%{transform:rotate(-100deg);}}
@keyframes fkm-sh-all{0%,100%{transform:none;}25%,75%{transform:rotate(-4deg);}}
@keyframes fkm-sad-l{0%,100%{transform:none;}25%,75%{transform:rotate(14deg) translateY(-.6px);}}
@keyframes fkm-sad-r{0%,100%{transform:none;}25%,75%{transform:rotate(-14deg) translateY(-.6px);}}

/* нажатие: подпрыгивает */
.is-hop .fkm__all{animation:fkm-hop .52s cubic-bezier(.3,.7,.4,1);}
.is-hop .fkm__eyes{animation:fkm-wide .52s ease-out;}
@keyframes fkm-hop{0%,100%{transform:none;}40%{transform:translateY(-12px);}70%{transform:translateY(1px) scaleY(.98);}}
@keyframes fkm-wide{0%,100%{transform:scale(1);}35%{transform:scale(1.22);}}

/* его держат курсором */
.is-held .fkm__all{transform-origin:81px 40px;animation:fkm-swing .9s ease-in-out infinite;}
.is-held .fkm__upper{transform:rotate(-30deg);}
@keyframes fkm-swing{0%,100%{transform:rotate(-5deg);}50%{transform:rotate(5deg);}}

/* пузырь с фактом */
.fkm__bubble{position:absolute;right:8px;bottom:calc(100% + 6px);width:min(270px,calc(100vw - 32px));padding:11px 13px 12px;border-radius:12px;
  background:var(--fk-surface,#fff);color:var(--fk-text-primary,#1A1D23);border:1px solid var(--fk-border,#E3E7EC);box-shadow:0 10px 30px rgba(11,33,64,.16);
  font:13px/1.45 "PT Sans",system-ui,sans-serif;opacity:0;transform:translateY(6px);pointer-events:none;transition:opacity .2s,transform .2s;}
.fkm__bubble.on{opacity:1;transform:none;pointer-events:auto;}
.fkm__bubble::after{content:"";position:absolute;right:42px;bottom:-7px;width:12px;height:12px;background:inherit;border-right:1px solid var(--fk-border,#E3E7EC);border-bottom:1px solid var(--fk-border,#E3E7EC);transform:rotate(45deg);}
.fkm--dock .fkm__bubble{bottom:auto;top:calc(100% + 4px);right:0;}
.fkm--dock .fkm__bubble::after{bottom:auto;top:-7px;right:22px;transform:rotate(225deg);}
.fkm--rail .fkm__bubble{bottom:auto;top:6px;right:calc(100% + 10px);}
.fkm--rail .fkm__bubble::after{right:-7px;bottom:auto;top:22px;transform:rotate(-45deg);}

/* размер и «на место» */
.fkm__ctl{display:flex;justify-content:center;gap:4px;margin-top:4px;opacity:0;transition:opacity .2s;}
.fkm:hover .fkm__ctl,.fkm:focus-within .fkm__ctl{opacity:1;}
.fkm--dock .fkm__ctl{display:none;}
.fkm__ctl button{width:24px;height:24px;border-radius:6px;border:1px solid var(--fk-border,#E3E7EC);background:var(--fk-surface,#fff);color:var(--fk-text-secondary,#4A5260);
  font:700 14px/1 "PT Sans",system-ui,sans-serif;cursor:pointer;padding:0;}
.fkm__ctl button:hover{color:var(--fk-accent,#1F4E8C);border-color:var(--fk-accent,#1F4E8C);}
.fkm__b-head{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--fk-accent,#1F4E8C);margin-bottom:3px;}
.fkm__b-text{font-size:13.5px;}
.fkm__b-src{font-size:12px;color:var(--fk-text-tertiary,#6B7380);margin-top:4px;}
.fkm__b-go{display:inline-block;margin-top:6px;font-size:12.5px;font-weight:700;color:var(--fk-accent,#1F4E8C);text-decoration:none;}
.fkm__b-go:hover{text-decoration:underline;}

@media(prefers-reduced-motion:reduce){
  .fkm *,.fkm__bubble{animation:none!important;transition:none!important;}
  .is-think .fkm__dots{opacity:1;}
}
@media print{.fkm{display:none;}}

/* приветствие: Штурман по центру, справа облачко с короткой фразой */
.s3-hello--m{max-width:640px;}
.s3-hello-stage{display:flex;align-items:center;justify-content:center;gap:30px;margin:2px auto 18px;text-align:left;}
.s3-mascot-slot{flex:none;display:flex;justify-content:center;min-width:96px;min-height:150px;}
.s3-say{position:relative;max-width:330px;padding:14px 18px 15px;border-radius:20px;background:var(--fk-accent-soft,#EAF1FB);color:var(--fk-text-primary,#1A1D23);}
.s3-say::before,.s3-say::after{content:"";position:absolute;border-radius:50%;background:var(--fk-accent-soft,#EAF1FB);}
.s3-say::before{width:14px;height:14px;left:-19px;top:46%;}
.s3-say::after{width:8px;height:8px;left:-31px;top:58%;}
.s3-say h2{font-size:17px;margin:0 0 5px;}
.s3-say p{margin:0;font-size:14px;line-height:1.45;color:var(--fk-text-secondary,#4A5260);}
.fkm--hello{position:relative;margin:0 auto;}
.fkm--hello .fkm__bubble{bottom:auto;top:0;right:calc(100% + 12px);}
.fkm--hello .fkm__bubble::after{right:-7px;bottom:auto;top:22px;transform:rotate(-45deg);}
@media(max-width:640px){
  .s3-hello-stage{flex-direction:column;gap:18px;text-align:center;}
  .s3-say::before{left:50%;top:-17px;margin-left:-7px;}
  .s3-say::after{left:50%;top:-29px;margin-left:-4px;}
  .fkm--hello .fkm__bubble{top:calc(100% + 6px);right:50%;transform:translate(50%,6px);}
  .fkm--hello .fkm__bubble.on{transform:translate(50%,0);}
  .fkm--hello .fkm__bubble::after{right:50%;top:-7px;margin-right:-6px;transform:rotate(225deg);}
}

/* «Что умею» под полем ввода */
.s3-foot .s3-can{color:var(--fk-text-secondary,#4A5260);margin-bottom:3px;}
.s3-foot .s3-can b{color:var(--fk-text-primary,#1A1D23);font-weight:700;}
.s3-say.fkm-fact > h2,.s3-say.fkm-fact > p{display:none;}
.fkm-sayfact{animation:fkm-fadein .25s ease-out;}
.fkm-sayfact .fkm__b-text{color:var(--fk-text-primary,#1A1D23);}
@keyframes fkm-fadein{from{opacity:0;transform:translateY(3px);}to{opacity:1;transform:none;}}

/* ===== u43: живость ===== */
.fkm__svg{transition:transform .28s ease-in-out;}
.fkm__fig.is-flip .fkm__svg{transform:scaleX(-1);}
.fkm__look{transition:transform .14s ease-out;}
.fkm__upper,.fkm__fore,.fkm__all,.fkm__hat,.fkm__eye-l,.fkm__brow{transition:transform .3s ease-in-out;}
.fkm__scope{transition:opacity .2s,transform .3s;}

/* труба на текст: пока пользователь печатает */
.is-spy .fkm__all{transform:rotate(var(--fkm-tilt,8deg));}
.is-spy .fkm__upper{transform:rotate(-75deg);}
.is-spy .fkm__fore{transform:rotate(-15deg);}
.is-spy .fkm__scope{opacity:1;transform:none;transition:opacity .15s,transform .35s .1s;}
.is-spy .fkm__eyes{animation:none;}
.is-spy .fkm__eye-l{transform:scaleY(.12);transition-delay:.2s;}
.is-spy .fkm__brow--l{transform:translateY(1.6px) rotate(12deg);}
.is-spy .fkm__brow--r{transform:translateY(-1.8px);}

/* сон: глаза закрыты, шляпа на глазах, дышит, «z z z» */
.fkm__zzz{opacity:0;fill:var(--m-hat);font:700 14px "PT Sans",system-ui,sans-serif;}
.fkm__zzz text:nth-child(2){font-size:18px;} .fkm__zzz text:nth-child(3){font-size:22px;}
.is-sleep .fkm__zzz{opacity:1;}
.is-sleep .fkm__zzz text{opacity:0;animation:fkm-z 3s ease-in-out infinite;}
.is-sleep .fkm__zzz text:nth-child(2){animation-delay:1s;} .is-sleep .fkm__zzz text:nth-child(3){animation-delay:2s;}
.is-sleep .fkm__eyes{transform:scaleY(.1);animation:none;}
.is-sleep .fkm__hat{transform:translateY(13px) rotate(5deg);transition-duration:.7s;}
.is-sleep .fkm__upper{transform:rotate(14deg);transition-duration:.7s;}
.is-sleep .fkm__all{animation:fkm-breathe 3.2s ease-in-out infinite;}
.is-sleep .fkm__brow{transform:translateY(1.4px);}
@keyframes fkm-z{0%{opacity:0;transform:translate(0,5px);}30%{opacity:1;}100%{opacity:0;transform:translate(6px,-9px);}}
@keyframes fkm-breathe{0%,100%{transform:scaleY(1);}50%{transform:scaleY(1.02);}}

/* зевает и потягивается */
.is-yawn .fkm__upper{animation:fkm-y-up 1.6s ease-in-out;}
.is-yawn .fkm__fore{animation:fkm-y-fore 1.6s ease-in-out;}
.is-yawn .fkm__eyes{animation:fkm-y-eyes 1.6s ease-in-out;}
.is-yawn .fkm__all{animation:fkm-y-all 1.6s ease-in-out;}
.is-yawn .fkm__brow{animation:fkm-brow-up 1.6s ease-in-out;}
@keyframes fkm-y-up{0%,100%{transform:rotate(0);}25%,70%{transform:rotate(-128deg);}}
@keyframes fkm-y-fore{0%,100%{transform:rotate(0);}25%,70%{transform:rotate(-12deg);}}
@keyframes fkm-y-eyes{0%,100%{transform:scaleY(1);}20%,68%{transform:scaleY(.25);}82%{transform:scaleY(1.15);}}
@keyframes fkm-y-all{0%,100%{transform:none;}30%,62%{transform:scaleY(1.04);}}

/* заметил курсор */
.is-notice .fkm__all{animation:fkm-n-all .75s ease-in-out;}
.is-notice .fkm__brow{animation:fkm-brow-up .75s ease-in-out;}
.is-notice .fkm__eyes{animation:fkm-wide .75s ease-out;}
@keyframes fkm-n-all{0%,100%{transform:none;}40%{transform:rotate(-3deg);}}

/* щекотка: хихикает, шляпа съезжает набок */
.is-giggle .fkm__all{animation:fkm-gig 1.3s ease-in-out;}
.is-giggle .fkm__eyes{animation:fkm-gig-eyes 1.3s ease-in-out;}
.is-giggle .fkm__brow{animation:fkm-brow-up 1.3s ease-in-out;}
.is-giggle .fkm__hat{animation:fkm-gig-hat 1.3s ease-in-out;}
.is-askew .fkm__hat{transform:translate(-3px,-1px) rotate(-14deg);}
@keyframes fkm-gig{0%,100%{transform:none;}10%,30%,50%,70%{transform:rotate(-6deg);}20%,40%,60%,80%{transform:rotate(6deg);}}
@keyframes fkm-gig-eyes{0%,100%{transform:scaleY(1);}10%,85%{transform:scaleY(.35);}}
@keyframes fkm-gig-hat{0%,100%{transform:none;}15%,45%,75%{transform:translateY(-5px) rotate(-8deg);}30%,60%{transform:translateY(-2px) rotate(-14deg);}}

/* кланяется */
.is-bow .fkm__all{animation:fkm-bow 1.6s ease-in-out;}
.is-bow .fkm__upper{animation:fkm-g-up 1.6s ease-in-out;}
.is-bow .fkm__fore{animation:fkm-g-fore 1.6s ease-in-out;}
.is-bow .fkm__hat{animation:fkm-g-hat 1.6s ease-in-out;}
@keyframes fkm-bow{0%,100%{transform:none;}25%,65%{transform:rotate(12deg);}}

/* гордо: «это я» */
.is-proud .fkm__all{animation:fkm-proud 2s ease-in-out;}
.is-proud .fkm__upper{animation:fkm-pr-up 2s ease-in-out;}
.is-proud .fkm__fore{animation:fkm-pr-fore 2s ease-in-out;}
.is-proud .fkm__brow{animation:fkm-brow-up 2s ease-in-out;}
.is-proud .fkm__hat{animation:fkm-pr-hat 2s ease-in-out;}
@keyframes fkm-proud{0%,100%{transform:none;}20%,80%{transform:scale(1.06);}}
@keyframes fkm-pr-up{0%,100%{transform:rotate(0);}20%,80%{transform:rotate(-20deg);}}
@keyframes fkm-pr-fore{0%,100%{transform:rotate(0);}20%,80%{transform:rotate(-150deg);}}
@keyframes fkm-pr-hat{0%,100%{transform:none;}25%,75%{transform:rotate(-6deg) translateY(-2px);}}

/* перетаскивание: пугается и болтается, при приземлении пыль */
.is-held .fkm__brow{transform:translateY(-2.2px);}
.is-held .fkm__eyes{transform:scale(1.2);animation:none;}
.is-held .fkm__fore{animation:fkm-flail .45s ease-in-out infinite;}
@keyframes fkm-flail{0%,100%{transform:rotate(-25deg);}50%{transform:rotate(20deg);}}
.is-land .fkm__all{animation:fkm-land .6s ease-out;}
@keyframes fkm-land{0%{transform:translateY(-8px);}35%{transform:scale(1.06,.9);}65%{transform:scale(.98,1.03);}100%{transform:none;}}
.fkm{position:relative;}
.fkm--free{position:fixed;}
.fkm--dock{position:absolute;}
.fkm--rail{position:sticky;}
.fkm__dust{position:absolute;left:50%;bottom:30px;width:0;height:0;pointer-events:none;}
.fkm__dust i{position:absolute;left:-4px;top:-4px;width:8px;height:8px;border-radius:50%;background:var(--fk-text-tertiary,#9AA3AF);opacity:0;animation:fkm-dust .7s ease-out;}
.fkm__dust i:nth-child(1){--dx:-38px;--dy:-6px;} .fkm__dust i:nth-child(2){--dx:-20px;--dy:-14px;} .fkm__dust i:nth-child(3){--dx:2px;--dy:-18px;}
.fkm__dust i:nth-child(4){--dx:22px;--dy:-13px;} .fkm__dust i:nth-child(5){--dx:40px;--dy:-5px;}
@keyframes fkm-dust{0%{opacity:.75;transform:translate(0,0) scale(.6);}100%{opacity:0;transform:translate(var(--dx),var(--dy)) scale(1.6);}}

/* фонарик в тёмной теме */
.fkm__lamp{opacity:0;}
.fkm__lamp-b{fill:var(--m-t1);} .fkm__lamp-h{fill:var(--m-t3);}
.fkm__beam{fill:#FFE38A;opacity:0;}
.is-lamp .fkm__upper{animation:fkm-l-up 2.8s ease-in-out;}
.is-lamp .fkm__fore{animation:fkm-l-fore 2.8s ease-in-out;}
.is-lamp .fkm__lamp{animation:fkm-l-lamp 2.8s ease-in-out;}
.is-lamp .fkm__beam{animation:fkm-beam 2.8s linear;}
@keyframes fkm-l-up{0%,100%{transform:rotate(0);}15%,85%{transform:rotate(-30deg);}}
@keyframes fkm-l-fore{0%,100%{transform:rotate(0);}15%,85%{transform:rotate(-15deg);}}
@keyframes fkm-l-lamp{0%,10%{opacity:0;}18%,86%{opacity:1;}94%,100%{opacity:0;}}
@keyframes fkm-beam{0%,22%{opacity:0;}26%{opacity:.55;}30%{opacity:.12;}34%{opacity:.5;}40%,84%{opacity:.42;}90%,100%{opacity:0;}}

/* нет сети: прячется под шляпу */
.is-hide .fkm__hat{transform:translateY(24px) scale(1.55);}
.is-hide .fkm__all{transform:scaleY(.92);}
.is-hide .fkm__eyes{transform:translateY(2px) scaleY(.7);animation:none;}
.is-hide .fkm__upper{transform:rotate(-100deg);}
.is-hide .fkm__fore{transform:rotate(-60deg);}

/* облачко мыслей для реплик */
.fkm__bubble--cloud{background:var(--fk-accent-soft,#EAF1FB);border:none;border-radius:18px;box-shadow:0 8px 24px rgba(11,33,64,.13);}
.fkm__bubble--cloud::before,.fkm__bubble--cloud::after{content:"";position:absolute;border:none;border-radius:50%;background:inherit;transform:none;}
.fkm__bubble--cloud::before{width:13px;height:13px;right:40px;bottom:-15px;top:auto;}
.fkm__bubble--cloud::after{width:7px;height:7px;right:31px;bottom:-25px;top:auto;}
.fkm--rail .fkm__bubble--cloud{top:42%;}
.fkm--rail .fkm__bubble--cloud::before{right:-17px;top:26px;bottom:auto;}
.fkm--rail .fkm__bubble--cloud::after{right:-28px;top:38px;bottom:auto;}
.fkm--dock .fkm__bubble--cloud::before{top:-15px;bottom:auto;right:24px;}
.fkm--dock .fkm__bubble--cloud::after{top:-25px;bottom:auto;right:18px;}
.fkm__bubble--cloud .fkm__b-text,.fkm-sayfact .fkm__b-text{font-size:14px;line-height:1.45;}
.fkm-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
.fkm__b-act{display:inline-block;margin-top:7px;padding:4px 10px;border-radius:8px;border:1px solid var(--fk-accent,#1F4E8C);background:transparent;
  color:var(--fk-accent,#1F4E8C);font:700 12.5px "PT Sans",system-ui,sans-serif;cursor:pointer;}
.fkm__b-act:hover{background:var(--fk-accent,#1F4E8C);color:#fff;}

/* тихий режим */
.fkm__ctl button svg{display:block;margin:auto;}
.fkm__ctl-x{display:none;}
.fkm__ctl button[aria-pressed="true"]{color:var(--fk-accent,#1F4E8C);border-color:var(--fk-accent,#1F4E8C);}
.fkm__ctl button[aria-pressed="true"] .fkm__ctl-x{display:inline;}

@media(prefers-reduced-motion:reduce){
  .fkm__dust{display:none;}
  .is-sleep .fkm__zzz text{opacity:1;}
}

/* ===== u44 ===== */
/* зона попадания шире фигуры: щекотку и клики легче не промахнуть */
.fkm__fig{position:relative;}
.fkm__fig::before{content:"";position:absolute;inset:-22px -18px;}
.fkm--dock .fkm__fig::before{display:none;}
.fkm__svg{position:relative;}
.fkm__bubble{z-index:5;}
/* кнопки под фигурой: крупнее и видны всегда, при наведении ярче */
.fkm__ctl{position:relative;z-index:4;opacity:.5;gap:5px;margin-top:6px;}
.fkm__ctl button{width:30px;height:30px;border-radius:8px;font-size:16px;display:inline-flex;align-items:center;justify-content:center;}
.fkm__ctl button[aria-expanded="true"]{color:var(--fk-accent,#1F4E8C);border-color:var(--fk-accent,#1F4E8C);}
/* меню режимов */
.fkm__menu{position:absolute;left:50%;top:calc(100% + 4px);transform:translateX(-50%);z-index:6;min-width:214px;padding:6px;border-radius:12px;
  background:var(--fk-surface,#fff);border:1px solid var(--fk-border,#E3E7EC);box-shadow:0 10px 30px rgba(11,33,64,.16);font:14px/1.3 "PT Sans",system-ui,sans-serif;}
.fkm__menu[hidden]{display:none;}
.fkm--rail .fkm__menu,.fkm--free .fkm__menu{left:auto;right:0;transform:none;}
.fkm__menu-h{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--fk-text-tertiary,#6B7380);padding:4px 8px 6px;}
.fkm__menu button{display:flex;align-items:center;gap:9px;width:100%;min-height:38px;padding:8px 10px;border:0;border-radius:8px;background:transparent;
  color:var(--fk-text-primary,#1A1D23);font:inherit;text-align:left;cursor:pointer;}
.fkm__menu button::before{content:"";flex:none;width:15px;height:15px;box-sizing:border-box;border-radius:50%;border:2px solid var(--fk-border-strong,#C3C9D4);}
.fkm__menu button[aria-checked="true"]::before{border-color:var(--fk-accent,#1F4E8C);background:radial-gradient(circle,var(--fk-accent,#1F4E8C) 0 3px,transparent 3.6px);}
.fkm__menu button:hover,.fkm__menu button:focus-visible{background:var(--fk-accent-soft,#EAF1FB);outline:none;}
/* спрятан: в шапке экрана кнопка «Вернуть Штурмана» */
.fkm__pill{display:none;align-items:center;gap:7px;height:34px;padding:0 13px;border-radius:17px;border:1px solid var(--fk-border,#E3E7EC);
  background:var(--fk-surface,#fff);color:var(--fk-accent,#1F4E8C);font:700 13px/1 "PT Sans",system-ui,sans-serif;cursor:pointer;white-space:nowrap;}
.fkm__pill:hover{border-color:var(--fk-accent,#1F4E8C);}
.fkm--off{width:auto!important;position:static;display:inline-flex;}
.fkm--off > :not(.fkm__pill){display:none!important;}
.fkm--off .fkm__pill{display:inline-flex;}
.page.s3.fkm-off .s3-mascot-slot{display:none;}
.page.s3.fkm-off .s3-say::before,.page.s3.fkm-off .s3-say::after{display:none;}
/* облачко из строк при наборе вопроса */
.fkm-lines{font-size:14px;line-height:1.45;color:var(--fk-text-primary,#1A1D23);}
.fkm-line{min-height:1.45em;}
.fkm-line + .fkm-line{margin-top:3px;}
.fkm-lines .fkm-line:nth-child(2){font-weight:700;}
.fkm__bubble--cloud .fkm__b-head{margin-bottom:4px;}

/* ёрзает после второго тыка */
.is-squirm .fkm__all{animation:fkm-squirm .7s ease-in-out;}
.is-squirm .fkm__brow{animation:fkm-brow-up .7s ease-in-out;}
.is-squirm .fkm__eyes{animation:fkm-wide .7s ease-out;}
@keyframes fkm-squirm{0%,100%{transform:none;}20%,60%{transform:rotate(-4deg);}40%,80%{transform:rotate(4deg);}}
/* поглаживание: жмурится, наклоняет голову, шляпа подрагивает, сердечко */
.fkm__heart{opacity:0;fill:#E5738F;transform-origin:118px 46px;}
.is-pet .fkm__eyes{transform:scaleY(.28);animation:none;}
.is-pet .fkm__all{transform:rotate(-5deg);}
.is-pet .fkm__brow{transform:translateY(-1.2px);}
.is-pet .fkm__hat{animation:fkm-hat-wig .45s ease-in-out infinite;}
.is-pet .fkm__heart{animation:fkm-heart 1.3s ease-out infinite;}
@keyframes fkm-hat-wig{0%,100%{transform:rotate(-3deg);}50%{transform:rotate(3deg) translateY(-1px);}}
@keyframes fkm-heart{0%{opacity:0;transform:translate(0,6px) scale(.6);}25%{opacity:1;}100%{opacity:0;transform:translate(6px,-14px) scale(1.1);}}
/* поправляет шляпу */
.is-hatfix .fkm__upper{animation:fkm-hf-up 1.3s ease-in-out;}
.is-hatfix .fkm__fore{animation:fkm-hf-fore 1.3s ease-in-out;}
.is-hatfix .fkm__hat{animation:fkm-hf-hat 1.3s ease-in-out;}
@keyframes fkm-hf-up{0%,100%{transform:rotate(0);}25%,70%{transform:rotate(-82deg);}}
@keyframes fkm-hf-fore{0%,100%{transform:rotate(0);}25%,70%{transform:rotate(-84deg);}}
@keyframes fkm-hf-hat{0%,25%{transform:rotate(-8deg);}40%{transform:translate(2px,-5px) rotate(-5deg);}60%{transform:translate(0,-2px) rotate(2deg);}75%,100%{transform:none;}}
/* кивает на «?» */
.is-nod .fkm__face,.is-nod .fkm__hat{animation:fkm-nod .75s ease-in-out;}
@keyframes fkm-nod{0%,50%,100%{transform:none;}25%,75%{transform:translateY(2.6px);}}
/* быстрая печать: выставляет ладонь */
.is-stop .fkm__upper{animation:fkm-st-up 1.3s ease-in-out;}
.is-stop .fkm__fore{animation:fkm-st-fore 1.3s ease-in-out;}
.is-stop .fkm__brow{animation:fkm-brow-up 1.3s ease-in-out;}
.is-stop .fkm__eyes{animation:fkm-wide 1.3s ease-out;}
@keyframes fkm-st-up{0%,100%{transform:rotate(0);}15%,80%{transform:rotate(-40deg);}}
@keyframes fkm-st-fore{0%,100%{transform:rotate(0);}15%,80%{transform:rotate(-55deg);}}

@media(prefers-reduced-motion:reduce){
  .is-pet .fkm__heart{opacity:1;}
}
@media(max-width:640px){
  .fkm__menu{min-width:200px;}
}

/* ===== u45: физика, падение, шляпа ===== */
/* в руке раскачивание считает скрипт по скорости курсора */
.is-held .fkm__all{animation:none;}
.is-held .fkm__fore{animation-duration:.32s;}
/* полёт: глаза круглые, брови вверх, рука болтается */
.is-fly .fkm__eyes{transform:scale(1.25);animation:none;}
.is-fly .fkm__brow{transform:translateY(-2.4px);}
.is-fly .fkm__upper{transform:rotate(-120deg);}
.is-fly .fkm__fore{animation:fkm-flail .22s ease-in-out infinite;}
.is-fly .fkm__hat{transform:translateY(-6px) rotate(-10deg);}
/* лежит: глаза закрыты, над головой звёздочки, шляпа слетела */
.fkm__stars{opacity:0;fill:var(--m-hat);transform-origin:81px 36px;}
.is-down .fkm__stars{opacity:1;animation:fkm-stars 1s linear infinite;}
.is-down .fkm__eyes{transform:scaleY(.12);animation:none;}
.is-down .fkm__brow{transform:translateY(1.2px);}
.is-down .fkm__upper{transform:rotate(30deg);}
.is-down-r .fkm__hat{transform:translate(34px,22px) rotate(75deg);transition:transform .35s ease-out;}
.is-down-l .fkm__hat{transform:translate(-34px,22px) rotate(-75deg);transition:transform .35s ease-out;}
@keyframes fkm-stars{to{transform:rotate(360deg);}}
/* отряхивается */
.is-shake .fkm__all{animation:fkm-shake .65s ease-in-out;}
@keyframes fkm-shake{0%,100%{transform:none;}15%,45%,75%{transform:rotate(-5deg) translateX(-1px);}30%,60%,90%{transform:rotate(5deg) translateX(1px);}}
/* ковыляет домой */
.is-walk .fkm__all{animation:fkm-walk .26s ease-in-out infinite;}
.is-walk .fkm__upper{animation:fkm-walk-arm .52s ease-in-out infinite;}
@keyframes fkm-walk{0%,100%{transform:rotate(-4deg);}50%{transform:rotate(4deg);}}
@keyframes fkm-walk-arm{0%,100%{transform:rotate(-20deg);}50%{transform:rotate(15deg);}}
/* тянут за шляпу: сердится, тянется рукой (углы считает скрипт) */
.is-tug .fkm__brow--l{transform:translateY(.8px) rotate(16deg);}
.is-tug .fkm__brow--r{transform:translateY(.8px) rotate(-16deg);}
.is-tug .fkm__eyes{animation:none;}
.is-tug .fkm__fig,.fkm__fig.is-tug{cursor:grabbing;}
@media(prefers-reduced-motion:reduce){
  .is-down .fkm__stars{animation:none;}
}

/* ===== u46: пластичность ===== */
/* прыжок: присел, вытянулся в воздухе, сплющился при приземлении, качнулся */
@keyframes fkm-hop{0%,100%{transform:none;}14%{transform:scale(1.08,.9);}42%{transform:translateY(-14px) scale(.93,1.09);}72%{transform:translateY(0) scale(1.1,.9);}86%{transform:scale(.97,1.04);}}
.is-hop .fkm__all{animation:fkm-hop .6s cubic-bezier(.3,.7,.4,1);}
/* постановка после перетаскивания: желе */
@keyframes fkm-land{0%{transform:translateY(-8px) scale(.95,1.06);}30%{transform:scale(1.12,.86);}50%{transform:scale(.95,1.06);}68%{transform:scale(1.04,.97);}84%{transform:scale(.99,1.01);}100%{transform:none;}}
.is-land .fkm__all{animation:fkm-land .7s ease-out;}
/* удар о пол и упругий подъём */
.is-squash .fkm__all{animation:fkm-squash .42s ease-out;}
@keyframes fkm-squash{0%{transform:scale(1.3,.66);}35%{transform:scale(.88,1.14);}60%{transform:scale(1.06,.95);}80%{transform:scale(.98,1.02);}100%{transform:none;}}
.is-spring .fkm__all{animation:fkm-spring .52s ease-out;}
@keyframes fkm-spring{0%{transform:scale(.92,1.1);}35%{transform:scale(1.07,.93);}60%{transform:scale(.97,1.04);}100%{transform:none;}}
/* в полёте и в руке шляпа и рука двигаются отдельно от тела */
.is-held .fkm__hat,.is-held .fkm__upper{transition:none;}
.is-fly .fkm__hat{animation:fkm-hat-wob .3s ease-in-out infinite alternate;}
@keyframes fkm-hat-wob{from{transform:translateY(-6px) rotate(-14deg);}to{transform:translateY(-8px) rotate(8deg);}}
/* походка вприпрыжку: на каждом шаге приседает */
.is-walk .fkm__all{animation:fkm-walk2 .26s ease-in-out infinite;}
@keyframes fkm-walk2{0%,100%{transform:rotate(-4deg) scale(1.04,.95);}50%{transform:rotate(4deg) scale(.97,1.04);}}

/* ===== u46: Штурман в углу шапки на остальных экранах ===== */
header.hdr.fkm-hdr{position:relative;padding-right:160px;}
.fkm--corner,.fkm--offc{position:absolute;right:16px;top:50%;transform:translateY(-50%);z-index:30;display:flex;align-items:center;gap:6px;width:auto!important;}
.fkm--corner .fkm__fig{width:32px;flex:none;}
.fkm--corner .fkm__fig::before{inset:-6px -8px;}
.fkm--corner .fkm__ctl,.fkm--corner .fkm__dust{display:none;}
.fkm__tag{display:none;align-items:center;gap:5px;height:32px;padding:0 10px 0 12px;border-radius:16px;border:1px solid var(--fk-border,#E3E7EC);
  background:var(--fk-surface,#fff);color:var(--fk-accent,#1F4E8C);font:700 13px/1 "PT Sans",system-ui,sans-serif;cursor:pointer;white-space:nowrap;}
.fkm__tag span{font-size:10px;opacity:.7;}
.fkm__tag:hover,.fkm__tag[aria-expanded="true"]{border-color:var(--fk-accent,#1F4E8C);}
.fkm--corner .fkm__tag{display:inline-flex;order:-1;}
.fkm--corner .fkm__menu{left:auto;right:0;top:calc(100% + 8px);transform:none;}
.fkm--corner .fkm__bubble{bottom:auto;top:calc(100% + 10px);right:0;}
.fkm--corner .fkm__bubble--cloud::before{top:-14px;bottom:auto;right:10px;}
.fkm--corner .fkm__bubble--cloud::after{top:-24px;bottom:auto;right:4px;}
.fkm--corner .fkm__bubble::after{bottom:auto;top:-7px;right:12px;transform:rotate(225deg);}
.fkm--offc .fkm__pill{height:30px;padding:0 11px;font-size:12px;}
.fkm__menu-act{display:none;}
.fkm--other .fkm__menu-act{display:block;}
.fkm__menu-act button{font-weight:700;}
.fkm__menu-act button::before{display:none;}
.fkm__menu-act button[hidden]{display:none;}
.fkm__menu-act .fkm__menu-h{margin-top:4px;border-top:1px solid var(--fk-border,#E3E7EC);padding-top:9px;}
/* объясняет экран: держит трубу, щурится */
.is-guide .fkm__upper{transform:rotate(-75deg);}
.is-guide .fkm__fore{transform:rotate(-15deg);}
.is-guide .fkm__scope{opacity:1;transform:none;}
.is-guide .fkm__eye-l{transform:scaleY(.12);}
.is-guide .fkm__brow--r{transform:translateY(-1.8px);}
@media(max-width:640px){
  .fkm--corner{right:8px;}
  .fkm--corner .fkm__tag{display:none;}
  .fkm--corner .fkm__fig{width:28px;}
  header.hdr.fkm-hdr{padding-right:46px;}
}

/* ===== u46: режим «Объясни экран» (guide.js) ===== */
.fkg-mode [data-fkg]{outline:2px dashed color-mix(in srgb,var(--fk-accent,#1F4E8C) 45%,transparent);outline-offset:4px;border-radius:10px;cursor:help;transition:outline-color .15s;}
.fkg-mode [data-fkg].fkg-hover{outline-color:var(--fk-accent,#1F4E8C);}
.fkg-mode [data-fkg].fkg-on{outline:3px solid var(--fk-accent,#1F4E8C);outline-offset:4px;}
.fkg-bar{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);z-index:60;display:flex;align-items:center;gap:12px;max-width:calc(100vw - 24px);
  padding:8px 8px 8px 16px;border-radius:22px;background:var(--fk-accent,#1F4E8C);color:#fff;font:14px/1.35 "PT Sans",system-ui,sans-serif;box-shadow:0 8px 24px rgba(11,33,64,.22);}
.fkg-bar button{flex:none;height:30px;padding:0 14px;border-radius:15px;border:0;background:#fff;color:var(--fk-accent,#1F4E8C);font:700 13px "PT Sans",system-ui,sans-serif;cursor:pointer;}
.fkg-card{position:fixed;z-index:61;width:min(400px,calc(100vw - 28px));max-height:calc(100vh - 90px);overflow:auto;padding:14px 16px 12px;border-radius:14px;
  background:var(--fk-surface,#fff);color:var(--fk-text-primary,#1A1D23);border:1px solid var(--fk-border,#E3E7EC);box-shadow:0 14px 40px rgba(11,33,64,.22);
  font:14px/1.45 "PT Sans",system-ui,sans-serif;animation:fkm-fadein .2s ease-out;}
.fkg-h{display:flex;align-items:baseline;gap:8px;margin-bottom:8px;}
.fkg-h b{font-size:16px;flex:1;}
.fkg-n{font-size:11px;font-weight:700;letter-spacing:.04em;color:var(--fk-text-tertiary,#6B7380);white-space:nowrap;}
.fkg-x{border:0;background:none;font-size:20px;line-height:1;color:var(--fk-text-tertiary,#6B7380);cursor:pointer;padding:0 2px;}
.fkg-s{margin:0 0 7px;}
.fkg-s span,.fkg-ex span{display:block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--fk-accent,#1F4E8C);margin-bottom:1px;}
.fkg-ex{margin:9px 0 4px;padding:9px 11px;border-radius:10px;background:var(--fk-accent-soft,#EAF1FB);}
.fkg-f{display:flex;gap:6px;margin-top:10px;}
.fkg-f button{height:32px;padding:0 12px;border-radius:8px;border:1px solid var(--fk-border,#E3E7EC);background:var(--fk-surface,#fff);color:var(--fk-text-primary,#1A1D23);font:700 13px "PT Sans",system-ui,sans-serif;cursor:pointer;}
.fkg-f button.fkg-pri{background:var(--fk-accent,#1F4E8C);border-color:var(--fk-accent,#1F4E8C);color:#fff;}
.fkg-f button:last-child{margin-left:auto;}
.fkg-card.fkg-sheet{left:0!important;right:0;bottom:0;top:auto!important;width:auto;max-height:62vh;border-radius:16px 16px 0 0;}
@media(max-width:640px){.fkg-bar{left:10px;right:10px;transform:none;top:60px;bottom:auto;font-size:13px;}}
@media print{.fkg-bar,.fkg-card,.fkd{display:none;}}
@media(prefers-reduced-motion:reduce){.fkg-card{animation:none;}}

/* ===== u47: панель чата Штурмана на любом экране ===== */
.fkd{position:fixed;top:0;right:0;bottom:0;z-index:58;width:min(460px,100vw);display:flex;flex-direction:column;
  background:var(--fk-bg,#F3F5F8);border-left:1px solid var(--fk-border,#E3E7EC);box-shadow:-14px 0 40px rgba(11,33,64,.16);
  transform:translateX(102%);transition:transform .28s cubic-bezier(.3,.8,.4,1);}
.fkd.on{transform:none;}
@media(min-width:1100px){html.fkd-open .app .col{margin-right:460px;transition:margin-right .28s;}}
.fkd-h{flex:none;display:flex;align-items:center;gap:10px;height:56px;padding:0 10px 0 14px;background:var(--fk-surface,#fff);border-bottom:1px solid var(--fk-border,#E3E7EC);}
.fkd-slot{flex:none;display:flex;align-items:center;min-width:30px;height:46px;}
.fkd-t{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.2;}
.fkd-t b{font:700 15px "PT Sans",system-ui,sans-serif;color:var(--fk-text-primary,#1A1D23);}
.fkd-ctx{font-size:12.5px;color:var(--fk-text-tertiary,#6B7380);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.fkd-full,.fkd-x{flex:none;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid transparent;
  background:transparent;color:var(--fk-text-secondary,#4A5260);font:400 22px/1 "PT Sans",system-ui,sans-serif;cursor:pointer;}
.fkd-full:hover,.fkd-x:hover{border-color:var(--fk-border,#E3E7EC);color:var(--fk-accent,#1F4E8C);}
.fkd-b{flex:1;min-height:0;overflow:auto;padding:10px 12px 12px;overscroll-behavior:contain;}
/* экран Штурмана внутри панели: без большого заголовка, во всю ширину */
.fkd .page.s3{margin:0;padding:0;max-width:none;}
.fkd .page.s3 .page-title{display:none;}
.fkd .page.s3 .page-head{margin:0 0 8px;min-height:0;gap:8px;}
.fkd .page.s3 .page-head:empty{display:none;}
.fkd .s3-headr{margin-left:auto;gap:8px;}
.fkd .s3-card{max-width:none;margin:0!important;}
.fkd .s3-thread{padding:14px 12px 6px;min-height:0;}
.fkd .s3-hello--m{max-width:none;}
.fkd .s3-hello-stage{flex-direction:column;gap:16px;text-align:center;}
.fkd .s3-say::before{left:50%;top:-17px;margin-left:-7px;}
.fkd .s3-say::after{left:50%;top:-29px;margin-left:-4px;}
.fkd .s3-cards{grid-template-columns:1fr;}
.fkd .s3-composer{position:sticky;bottom:0;z-index:2;background:var(--fk-surface,#fff);}
/* Штурман в шапке панели */
.fkm--dhead,.fkm--offd{position:relative;width:auto!important;display:flex;align-items:center;}
.fkm--dhead .fkm__fig{width:30px;}
.fkm--dhead .fkm__fig::before{inset:-6px -8px;}
.fkm--dhead .fkm__ctl,.fkm--dhead .fkm__tag,.fkm--dhead .fkm__dust{display:none;}
.fkm--dhead .fkm__bubble{bottom:auto;top:calc(100% + 10px);left:0;right:auto;}
.fkm--dhead .fkm__bubble--cloud::before{top:-14px;bottom:auto;left:10px;right:auto;}
.fkm--dhead .fkm__bubble--cloud::after{top:-24px;bottom:auto;left:4px;right:auto;}
.fkm--dhead .fkm__bubble::after{bottom:auto;top:-7px;left:12px;right:auto;transform:rotate(225deg);}
.fkm--offd .fkm__pill{height:30px;padding:0 11px;font-size:12px;}
/* «Спросить Штурмана об этом блоке» в карточке пояснения */
.fkg-ask{display:block;width:100%;margin:10px 0 0;padding:8px 10px;border-radius:8px;border:1px dashed var(--fk-accent,#1F4E8C);background:transparent;
  color:var(--fk-accent,#1F4E8C);font:700 13px "PT Sans",system-ui,sans-serif;cursor:pointer;text-align:left;}
.fkg-ask:hover{background:var(--fk-accent-soft,#EAF1FB);}
@media(max-width:640px){.fkd{border-left:0;}}
@media(prefers-reduced-motion:reduce){.fkd{transition:none;}}
.fkd .fkm__ctl{display:none;}
.fkd .fkd-slot:empty{min-width:0;}

/* ===== u50: комментатор строк и посадка на таблицу ===== */
.fkm__legs{display:none;}
/* u54: сидячая поза — бёдра лежат на краю таблицы, голени свешиваются от колена и покачиваются */
.fkm__thigh,.fkm__shin{fill:none;stroke:var(--m-ink);stroke-width:7;stroke-linecap:round;stroke-linejoin:round;}
.fkm__lg--b{opacity:.55;}
.fkm__shin{transform-box:view-box;animation:fkm-dangle 2.8s ease-in-out infinite;}
.fkm__lg--b .fkm__shin{transform-origin:106px 204px;animation-delay:-1.4s;}
.fkm__lg--f .fkm__shin{transform-origin:112px 208px;}
@keyframes fkm-dangle{0%,100%{transform:rotate(-7deg);}50%{transform:rotate(11deg);}}
.is-kick .fkm__shin{animation-duration:.7s;}
.fkm--perch{position:fixed;z-index:40;transition:opacity .2s;}
.fkm--perch .fkm__svg{overflow:visible;}
.fkm--perch .fkm__legs{display:inline;}
.fkm--perch .fkm__ctl,.fkm--perch .fkm__tag,.fkm--perch .fkm__pill{display:none;}
.fkm--perch .fkm__fig::before{inset:-8px -10px;}
.fkm--perch.is-away{opacity:0;pointer-events:none;}
.fkm--perch .is-spy .fkm__all{transform:none;}
/* тень под ним на краю таблицы */
.fkm--perch .fkm__fig::after{content:"";position:absolute;left:30%;right:30%;top:93%;height:5px;border-radius:50%;background:rgba(11,33,64,.18);filter:blur(1.5px);pointer-events:none;}
.fkm--perch.is-ride .fkm__fig::after{opacity:.5;}
.fkm--perch .fkm__bubble{bottom:auto;top:-6px;left:calc(100% + 14px);right:auto;width:min(300px,calc(100vw - 32px));}
.fkm--perch .fkm__bubble::after{right:auto;left:-7px;bottom:auto;top:20px;transform:rotate(135deg);}
.fkm--perch .fkm__menu{left:calc(100% + 10px);right:auto;top:0;transform:none;}
@media(max-width:640px){
  .fkm--perch .fkm__bubble{position:fixed;left:12px;right:12px;top:auto;bottom:14px;width:auto;}
  .fkm--perch .fkm__bubble::after{display:none;}
  .fkm--perch .fkm__menu{position:fixed;left:12px;right:12px;top:auto;bottom:14px;}
}
/* реплика комментатора */
.fkm__b-calc{margin-top:5px;font-size:11.5px;color:var(--fk-text-tertiary,#6B7380);}
.fkm__b-calc::before{content:"";display:inline-block;width:7px;height:7px;margin-right:6px;border-radius:2px;background:var(--fk-accent,#1F4E8C);opacity:.55;vertical-align:1px;}
.fkm__b-joke{margin-top:7px;padding-top:6px;border-top:1px dashed var(--fk-border,#E3E7EC);font-style:italic;color:var(--fk-accent,#1F4E8C);opacity:0;animation:fkm-jk .35s ease-out .8s forwards;}
@keyframes fkm-jk{from{opacity:0;transform:translateY(3px);}to{opacity:1;transform:none;}}
.fkm__b-note{margin-top:6px;font-size:11.5px;color:var(--fk-text-tertiary,#6B7380);}
.fkm__b-act{margin-top:8px;height:30px;padding:0 12px;border-radius:8px;border:1px solid var(--fk-accent,#1F4E8C);background:transparent;color:var(--fk-accent,#1F4E8C);font:700 12.5px "PT Sans",system-ui,sans-serif;cursor:pointer;}
.fkm__b-act:hover{background:var(--fk-accent-soft,#EAF1FB);}
/* «сюда можно посадить» во время перетаскивания */
.fkm-drop{position:fixed;z-index:39;pointer-events:none;border:2px dashed var(--fk-accent,#1F4E8C);border-radius:12px;background:color-mix(in srgb,var(--fk-accent,#1F4E8C) 6%,transparent);opacity:0;transition:opacity .15s;}
.fkm-drop.on{opacity:1;}
.fkm-drop span{position:absolute;top:8px;left:50%;transform:translateX(-50%);padding:5px 12px;border-radius:13px;background:var(--fk-accent,#1F4E8C);color:#fff;font:700 12.5px "PT Sans",system-ui,sans-serif;white-space:nowrap;}
/* строка, к которой Штурман перевёл взгляд по кнопке */
tr.fkc-flash td{animation:fkc-flash 1.8s ease-out;}
@keyframes fkc-flash{0%,35%{background:var(--fk-accent-soft,#EAF1FB);}100%{background:transparent;}}
/* пункт меню «Комментировать строки» — флажок */
.fkm__menu-act button[data-c="cmt"]{font-weight:400;}
.fkm__menu-act button[data-c="cmt"]::before{display:block;border-radius:4px;}
.fkm__menu-act button[data-c="cmt"][aria-checked="true"]::before{border-color:var(--fk-accent,#1F4E8C);background:var(--fk-accent,#1F4E8C) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 6.2l2.3 2.3 4.7-5' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/11px no-repeat;}
@media(prefers-reduced-motion:reduce){.fkm__shin{animation:none;}.fkm__b-joke{animation:none;opacity:1;}tr.fkc-flash td{animation:none;}}
@media print{.fkm-drop{display:none;}}

/* ===== u53: компактная и подвижная карточка «Объясни экран» ===== */
.fkg-card{width:min(360px,calc(100vw - 28px));padding:10px 14px 10px;}
.fkg-h{cursor:grab;user-select:none;touch-action:none;margin:-4px -6px 6px;padding:4px 6px;border-radius:8px;align-items:center;}
.fkg-h:hover{background:var(--fk-surface-sunken,#F1F3F6);}
.fkg-card.is-drag{box-shadow:0 20px 50px rgba(11,33,64,.32);opacity:.96;}
.fkg-card.is-drag .fkg-h{cursor:grabbing;}
.fkg-grip{flex:none;width:8px;height:14px;opacity:.45;background:radial-gradient(circle,currentColor 1.1px,transparent 1.4px) 0 0/4px 4.6px;color:var(--fk-text-tertiary,#6B7380);}
.fkg-h b{font-size:15px;}
.fkg-mn{border:0;background:none;font-size:17px;line-height:1;color:var(--fk-text-tertiary,#6B7380);cursor:pointer;padding:0 4px;}
.fkg-mn:hover,.fkg-x:hover{color:var(--fk-accent,#1F4E8C);}
.fkg-s{font-size:13.5px;line-height:1.45;}
.fkg-ex{margin:7px 0 4px;padding:7px 10px;font-size:13.5px;line-height:1.45;}
.fkg-more{display:block;margin:4px 0 2px;padding:3px 0;border:0;background:none;color:var(--fk-accent,#1F4E8C);font:700 12.5px "PT Sans",system-ui,sans-serif;cursor:pointer;}
.fkg-det[hidden]{display:none;}
.fkg-det{margin-top:4px;}
.fkg-ask{margin-top:6px;padding:6px 10px;}
.fkg-f{margin-top:8px;}
.fkg-f button{height:30px;}
.fkg-card.is-min{width:auto;max-width:min(460px,calc(100vw - 28px));}
.fkg-card.is-min .fkg-body{display:none;}
.fkg-card.is-min .fkg-h{margin-bottom:4px;}
.fkg-card.is-min .fkg-f{margin-top:2px;}
.fkg-card.fkg-sheet .fkg-h{cursor:default;}
.fkg-card.fkg-sheet .fkg-grip{display:none;}
.fkg-mode [data-fkg]{scroll-margin-top:72px;}
