/* Yebo guide — additive only: new .yebo-* classes, no existing selector touched */
/* 中文 intro font: jf open huninn (粉圓) subset, renamed per OFL. Rebuild with scripts/build_yebo_font.py after editing the Chinese text. */
@font-face{font-family:"Yebo TC";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/yebo-tc-subset.66aab3640c57.woff2?v=3") format("woff2")}
.yebo{position:fixed;z-index:39;left:12px;bottom:90px;width:80px;height:80px;padding:0;border:0;background:none;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}
.yebo img{display:block;width:100%;height:100%;pointer-events:none;-webkit-user-drag:none;animation:yeboFloat 3.2s ease-in-out infinite;filter:drop-shadow(0 6px 5px rgba(150,115,40,.2));transition:transform .15s}
.yebo:hover img{animation-duration:1.3s}
.yebo.is-dragging{cursor:grabbing}
.yebo.is-dragging img{animation-play-state:paused;filter:drop-shadow(0 14px 10px rgba(150,115,40,.28))}
.yebo.is-settling{transition:left .25s ease,top .25s ease}
.yebo:focus-visible{outline:3px solid #A9D5F5;outline-offset:4px;border-radius:24px}
.yebo-bubble{position:fixed;z-index:39;left:100px;bottom:108px;width:280px;box-sizing:border-box;padding:14px 18px 12px;background:#fff;border:3px solid #A9D5F5;border-radius:24px;box-shadow:0 4px 0 #A9D5F5;color:#2E5D8A;font:600 .95rem/1.45 var(--cute);animation:yeboPop .45s ease-out both}
.yebo-bubble[hidden]{display:none}
.yebo-hi{display:flex;align-items:center;gap:6px;margin:0 0 10px!important;font:400 1.15rem/1.3 Coiny,Mali,var(--sans);color:var(--ink,#231F3D)}
.yebo-hi img{width:26px;height:26px}
.yebo-bubble p{margin:0}
.yebo-heart{width:1em;height:1em;vertical-align:-.12em;fill:#E5372F}
.yebo-bubble::before{content:"";position:absolute;left:-11px;bottom:var(--tail,22px);width:16px;height:16px;background:#fff;border-left:3px solid #A9D5F5;border-bottom:3px solid #A9D5F5;transform:rotate(45deg)}
.yebo-bubble.is-left::before{left:auto;right:-11px;transform:rotate(-135deg)}
.yebo-ok{display:block;margin:8px 0 0 auto;min-height:40px;padding:0 16px;border:2px solid #F7C948;border-radius:999px;background:#F7C948;color:#4A332D;box-shadow:0 3px 0 #D9A425;font:700 .9rem/1 var(--cute);cursor:pointer}
@keyframes yeboFloat{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-8px) rotate(3deg)}}
@keyframes yeboPop{from{opacity:0;transform:translateY(8px) scale(.95)}to{opacity:1;transform:none}}
.list-page .yebo{bottom:24px}
.yebo-bubble{max-height:calc(100vh - 16px);overflow-y:auto}
.yebo-bubble.is-intro{width:360px}
.yebo-langs{display:flex;justify-content:flex-end;gap:4px;margin:-2px -4px 6px 0}
.yebo-lang{min-height:30px;padding:2px 10px;border:2px solid transparent;border-radius:999px;background:none;color:#5C7FA3;font:700 .78rem/1.2 var(--cute);cursor:pointer}
.yebo-lang:hover{background:#F1F8FE}
.yebo-lang[aria-pressed="true"]{border-color:#A9D5F5;background:#E1F0FC;color:#2E5D8A}
.yebo-intro[hidden]{display:none}
.yebo-intro p{margin:0}
.yebo-intro .yebo-tag{margin-bottom:8px}
.yebo-h{display:flex;align-items:center;gap:6px;margin:10px 0 2px!important;font-weight:700}
.yebo-h-heart{flex-shrink:0;width:1.05em;height:1.05em}
.yebo-heart-pink{fill:#F59BB0}
.yebo-end{margin-top:10px!important;font-weight:700}
.yebo-intro:lang(zh-Hant),.yebo-intro:lang(zh-Hant) *,.yebo-lang:lang(zh-Hant){font-family:Mali,"Yebo TC",var(--sans);font-weight:500;font-synthesis:none}
.yebo-intro:lang(zh-Hant) .yebo-hi{font-family:Coiny,"Yebo TC",var(--sans);font-weight:400}
.yebo-intro:lang(zh-Hant) .yebo-h{color:#1F4A73}
.yebo-star{width:1.25em;height:1.25em;vertical-align:-.25em}
.yebo-qs{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 0}
.yebo-qs[hidden],.yebo-a[hidden]{display:none}
.yebo-q{min-height:34px;padding:4px 12px;border:2px solid #A9D5F5;border-radius:999px;background:#F1F8FE;color:#2E5D8A;font:600 .82rem/1.2 var(--cute);text-align:left;cursor:pointer;transition:background .15s,transform .15s}
.yebo-q:hover{background:#E1F0FC;transform:translateY(-1px)}
.yebo-a{margin:10px 0 0;padding:10px 12px;border-radius:16px;background:#F1F8FE}
.yebo-a-q{display:block;margin-bottom:6px;font:800 .9rem/1.35 var(--cute);color:var(--ink,#231F3D)}
.yebo-a-text{display:block;font-weight:500}
.yebo-row{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:8px}
.yebo-row .yebo-ok{margin:0}
.yebo-back{min-height:40px;padding:0 10px;border:0;background:none;color:#2E5D8A;font:700 .85rem/1 var(--cute);cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.yebo-back[hidden]{display:none}
@media (max-width:600px){.yebo,.yebo-bubble{display:none!important}}
@media (prefers-reduced-motion:reduce){.yebo img,.yebo-bubble{animation:none}.yebo.is-settling{transition:none}}
