.fcode{position:fixed;z-index:49;left:18px;bottom:18px;transform:translateY(170%);transition:transform .55s cubic-bezier(.34,1.56,.64,1)}.fcode.show{transform:none}.fc-ticket{position:relative;display:flex;align-items:center;gap:14px;padding:16px 20px 16px 14px;border-radius:18px;background:#fff;box-shadow:0 14px 34px #0b2a5b3d;animation:fc-float 3s ease-in-out infinite;transform-origin:50% 100%}.fc-badge{display:grid;place-items:center;align-content:center;background:var(--pink);color:#fff;flex:none;padding:10px 12px;border-radius:12px}.fc-badge b{font:800 24px/1 Manrope,Inter;letter-spacing:-.02em}.fc-badge small{font:800 11px/1 Inter;letter-spacing:.1em;margin-top:2px}.fc-t b{display:block;font:800 15px/1.2 Manrope,Inter;color:var(--ink);margin-bottom:6px}.fc-code{display:inline-flex;align-items:center;gap:5px;min-height:36px;padding:5px 8px;background:#ffd3ec;border:2px dashed var(--ink);border-radius:8px;cursor:pointer;font:800 14px/1 Inter;color:var(--ink);letter-spacing:.02em;animation:fc-nudge 4s ease-in-out infinite;transition:background .4s,border-color .4s}.fc-code:hover{background:#ffc2e3}.fc-code small{font-size:11px;font-weight:600}.fc-code.copied{background:#d3f7e6;border-color:#008760;color:#006143}.fc-close{position:absolute;right:-7px;top:-7px;width:30px;height:30px;min-width:30px;min-height:30px;display:grid;place-items:center;padding:0;border:2px solid #fff;border-radius:50%;background:#2c8bc3;color:#fff;font:300 20px/1 Inter;cursor:pointer;box-shadow:0 3px 8px #0b2a5b18}.fc-close::after{content:"";position:absolute;inset:-7px}.fc-toast{position:absolute;bottom:calc(100% + 8px);left:0;background:#032f60;color:#fff;border-radius:10px;padding:10px;min-width:240px;max-width:calc(100vw - 36px);font-size:14px}.fc-toast:empty{display:none}.fc-code.pop{animation:fc-pop .3s}.fcode.won .fc-badge{box-shadow:0 0 20px #f84bb180}@keyframes fc-float{0%,to{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-5px) rotate(1deg)}}@keyframes fc-nudge{0%,86%,to{transform:none}89%{transform:rotate(-4deg) scale(1.04)}92%{transform:rotate(4deg) scale(1.04)}95%{transform:rotate(-2deg)}}@keyframes fc-pop{50%{transform:scale(1.1)}}@media (max-width:560px){.fcode{left:10px;bottom:18px}.fc-ticket{padding:16px 18px 14px 12px;gap:12px}.fc-badge b{font-size:20px}.fc-badge small{font-size:9px}.fc-code{font-size:13px}.fc-t b{font-size:14px}}

.fc-label{display:flex;align-items:baseline;gap:10px;margin-bottom:6px}.fc-label b{margin-bottom:0}.fc-label small{font:600 11px/1.2 Inter;color:var(--muted)}.fc-code{padding-inline:10px}
