/* Feedback prompt (js/feedback-prompt.js): a small card in the corner (the
   bottom on phones) with the PeekRating stars. Light and dark follow the
   page. The same file runs in the Mini App and on the website. */
.sxf-dock{--sxf-bg:#27272a;--sxf-ink:#f5f5f5;--sxf-muted:rgba(245,245,245,.58);--sxf-line:rgba(255,255,255,.08);--sxf-field:rgba(255,255,255,.06);--sxf-idle:#52525b;--sxf-active:#eab308;--sxf-tip:#3f3f46;--sxf-tip-ink:#f5f5f5;--sxf-shadow:0 24px 60px -18px rgba(0,0,0,.7),0 8px 20px -10px rgba(0,0,0,.5);--sxf-ease:cubic-bezier(.23,1,.32,1);--sxf-error:#ff8a8a;position:fixed;right:20px;bottom:calc(20px + env(safe-area-inset-bottom));z-index:2147481500;font-family:-apple-system,BlinkMacSystemFont,"Inter","SF Pro Display",system-ui,sans-serif}
.sxf-dock.light{--sxf-bg:#fff;--sxf-ink:#18181b;--sxf-muted:rgba(24,24,27,.56);--sxf-line:rgba(24,24,27,.08);--sxf-field:#f4f4f5;--sxf-idle:#d4d4d8;--sxf-active:#eab308;--sxf-tip:#18181b;--sxf-tip-ink:#fff;--sxf-shadow:0 24px 60px -20px rgba(24,24,27,.3),0 8px 20px -12px rgba(24,24,27,.18);--sxf-error:#c0392b}
.sxf{position:relative;box-sizing:border-box;width:min(360px,calc(100vw - 32px));overflow:hidden;padding:18px 18px 12px;border-radius:22px;background:var(--sxf-bg);box-shadow:inset 0 0 0 1px var(--sxf-line),var(--sxf-shadow);color:var(--sxf-ink)}
.sxf svg{display:block;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.sxf-x{position:absolute;top:10px;right:10px;display:grid;place-items:center;width:30px;height:30px;padding:0;border:0;border-radius:9px;background:transparent;color:var(--sxf-muted);cursor:pointer}
.sxf-x:hover{background:var(--sxf-field);color:var(--sxf-ink)}
.sxf h3{margin:0 36px 4px 0;font-size:17px;font-weight:700;letter-spacing:-.01em}
.sxf-sub{margin:0 0 4px;font-size:13px;line-height:1.4;color:var(--sxf-muted)}
.sxf-rating{display:flex;align-items:flex-end;gap:10px}
.sxf-row{position:relative;display:inline-flex;align-items:flex-end;padding-top:39px;touch-action:pan-y;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}
.sxf-star{display:grid;place-items:center;width:44px;height:44px;margin:0;padding:0;border:0;background:none;color:inherit;outline:none;touch-action:manipulation;cursor:pointer}
.sxf-star:focus-visible{outline:2px solid color-mix(in srgb,var(--sxf-active) 70%,transparent);outline-offset:2px;border-radius:6px}
.sxf-lift{display:block;transform:translateY(0) scale(1);transform-origin:50% 100%;transition:transform 320ms var(--sxf-ease)}
.sxf-glyph{display:block;width:36px;height:36px;color:var(--sxf-idle);transition:color 160ms ease}
.sxf-glyph svg{width:100%;height:100%;fill:currentColor;stroke:currentColor;stroke-width:1.5}
.sxf-glyph[data-lit=true]{color:var(--sxf-active)}
.sxf-tip{position:absolute;top:0;left:0;display:inline-flex;align-items:center;height:22px;padding:0 11px;border-radius:999px;background:var(--sxf-tip);color:var(--sxf-tip-ink);font-size:12.5px;font-weight:600;line-height:1;white-space:nowrap;box-shadow:0 2px 10px rgba(0,0,0,.18);opacity:0;pointer-events:none;transition:transform 320ms var(--sxf-ease),opacity 180ms ease}
.sxf-tip[data-show=true]{opacity:1}
.sxf-dock[data-instant=true] .sxf-lift,.sxf-dock[data-instant=true] .sxf-glyph,.sxf-dock[data-instant=true] .sxf-tip{transition-duration:0ms}
.sxf-grade{padding-bottom:12px;font-size:13px;font-weight:600;color:var(--sxf-active)}
.sxf textarea{display:block;box-sizing:border-box;width:100%;min-height:72px;margin:10px 0 0;padding:10px 12px;border:0;border-radius:12px;outline:0;resize:vertical;background:var(--sxf-field);box-shadow:inset 0 0 0 1px var(--sxf-line);color:var(--sxf-ink);font:500 13.5px/1.4 inherit;font-family:inherit}
.sxf textarea::placeholder{color:var(--sxf-muted)}
.sxf textarea:focus{box-shadow:inset 0 0 0 1.5px var(--sxf-ink)}
.sxf-error{margin:8px 0 0;font-size:12.5px;font-weight:600;color:var(--sxf-error)}
.sxf-error[hidden]{display:none}
.sxf-actions{display:flex;gap:8px;margin-top:12px}
.sxf-actions button{flex:1;height:38px;padding:0 12px;border:0;border-radius:11px;font:600 13px inherit;font-family:inherit;cursor:pointer;transition:filter .2s ease,transform .2s ease,opacity .2s ease,background-color .2s ease}
.sxf-later{background:var(--sxf-field);color:var(--sxf-ink);box-shadow:inset 0 0 0 1px var(--sxf-line)}
.sxf-send{background:color-mix(in srgb,var(--sxf-ink) 14%,var(--sxf-bg));color:color-mix(in srgb,var(--sxf-ink) 55%,var(--sxf-bg))}
.sxf-send.is-ready{background:var(--sxf-ink);color:var(--sxf-bg)}
.sxf-dock.is-busy .sxf-send{opacity:.6;cursor:progress}
.sxf-actions button:active{transform:scale(.96)}
.sxf-never{display:block;margin:8px auto 0;padding:6px 8px;border:0;background:none;color:var(--sxf-muted);font:500 12px inherit;font-family:inherit;cursor:pointer}
.sxf-never:hover{color:var(--sxf-ink);text-decoration:underline}
.sxf-thanks{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 8px 10px;text-align:center}
.sxf-thanks-mark{display:grid;place-items:center;width:44px;height:44px;margin-bottom:4px;border-radius:50%;background:var(--sxf-active);color:#18181b}
.sxf-thanks-mark svg{width:22px;height:22px;stroke-width:2.6}
.sxf-thanks b{font-size:16px}
.sxf-thanks small{font-size:13px;color:var(--sxf-muted)}
@media (max-width:560px){.sxf-dock{right:8px;left:8px;bottom:calc(84px + env(safe-area-inset-bottom))}.sxf{width:100%}}
@media (prefers-reduced-motion:reduce){.sxf-lift{transition:none}.sxf-tip{transition:opacity 180ms ease}}
