/* Floating "ask TokConnect" box pinned to the bottom of every page. Self-contained: used by guide pages and the homepage. */
.ask-dock{--dock-ink:#1f1e1c;--dock-yellow:#f7dc6f;position:fixed;left:50%;bottom:calc(16px + env(safe-area-inset-bottom));z-index:40;width:min(700px,calc(100% - 28px));transform:translate(-50%,0);display:flex;align-items:center;gap:8px;padding:8px 8px 8px 10px;background:#fff;border:2px solid var(--dock-ink);border-radius:18px;box-shadow:0 4px 0 var(--dock-ink),0 18px 40px rgba(20,18,15,.18);font:inherit;transition:transform .28s cubic-bezier(.2,.8,.2,1),opacity .2s;box-sizing:border-box}
.ask-dock *{box-sizing:border-box}
.ask-dock.is-hidden{transform:translate(-50%,calc(100% + 40px));opacity:0;pointer-events:none}
.ask-dock-sticker{position:absolute;top:-17px;left:16px;transform:rotate(-3deg);background:var(--dock-yellow);color:var(--dock-ink);border:2px solid var(--dock-ink);border-radius:10px;padding:4px 10px;font-size:12.5px;font-weight:800;line-height:1.3;letter-spacing:.01em;box-shadow:0 2px 0 var(--dock-ink);white-space:nowrap;pointer-events:none;animation:ask-dock-wiggle 5s ease-in-out infinite}
.ask-dock input{flex:1;min-width:0;height:48px;padding:0 14px;border:1.5px solid #e2ddd4;border-radius:12px;background:#f6f4f0;color:var(--dock-ink);font:inherit;font-size:16px;outline:none}
.ask-dock input::placeholder{color:#8d887e;opacity:1}
.ask-dock input:focus{border-color:#2f4f80;background:#fff;box-shadow:0 0 0 3px rgba(135,170,235,.35)}
.ask-dock button{flex:none;height:48px;padding:0 20px;border:0;border-radius:12px;background:var(--dock-ink);color:#fff;font:inherit;font-size:15px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:transform .15s}
.ask-dock button:hover{transform:translateY(-1px)}
.ask-dock .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
body.has-ask-dock{padding-bottom:104px}
@media(max-width:600px){.ask-dock{bottom:calc(10px + env(safe-area-inset-bottom));width:calc(100% - 20px);padding:6px 6px 6px 8px;border-radius:16px}.ask-dock input{height:44px;padding:0 12px}.ask-dock button{height:44px;padding:0 14px}.ask-dock-sticker{font-size:11.5px;top:-15px;left:12px}body.has-ask-dock{padding-bottom:92px}}
@keyframes ask-dock-wiggle{0%,86%,100%{transform:rotate(-3deg)}90%{transform:rotate(2deg)}94%{transform:rotate(-5deg)}}
@media(prefers-reduced-motion:reduce){.ask-dock,.ask-dock-sticker{animation:none;transition:none}}
@media print{.ask-dock{display:none}body.has-ask-dock{padding-bottom:0}}
