
            #csm_app_chat_vue { position: relative; height: 100%; }
            #csm_app_chat [v-cloak] { display: none !important; }
            #csm_app_chat.is-loading .cc-bb-bar { pointer-events: none; opacity: .55; }
            .fl-public-chat-status { position: absolute; top: 54px; left: 12px; right: 12px; z-index: 2; margin: 0; padding: 9px 11px; border: 1px solid #35495b; border-radius: 8px; color: #d6e7ed; background: #1d2a35; font-size: 12px; }
            .fl-public-chat-status[hidden] { display: none !important; }
            @media (max-width: 768px) {
                /* Keep chat above the mobile navigation as a compact floating panel on every page. */
                #csm_app_chat.chat-bar {
                    top: auto;
                    right: max(12px, calc(50vw - 180px));
                    bottom: calc(78px + env(safe-area-inset-bottom));
                    width: min(360px, calc(100vw - 24px)) !important;
                    height: min(480px, 64dvh) !important;
                    max-height: calc(100dvh - 150px - env(safe-area-inset-bottom));
                    overflow: hidden;
                    border: 1px solid #35495b;
                    border-radius: 18px;
                    box-shadow: 0 22px 56px rgba(0, 0, 0, .48);
                    transition: right .28s ease;
                }
                #csm_app_chat.chat-bar.closed { right: -700px; }
                #csm_app_chat .chat-hed { border-radius: 18px 18px 0 0; }
                #csm_app_chat .cc-hy { overscroll-behavior: contain; }
                #csm_app_chat .intercom-composer-popover { right: 10px; max-width: calc(100% - 20px); }
                #csm_app_chat .intercom-emoji-picker { width: min(300px, calc(100vw - 48px)); }
            }
            .fl-my-offers-overlay[hidden] { display: none !important; }
            .fl-my-offers-overlay {
                position: fixed; inset: 0; z-index: 10020;
                display: grid; place-items: center; padding: 16px;
                background: rgba(3, 11, 21, .72); backdrop-filter: blur(5px);
            }
            .fl-my-offers-dialog {
                display: flex; flex-direction: column; width: min(440px, 100%);
                max-height: min(620px, calc(100dvh - 32px)); overflow: hidden;
                border: 1px solid rgba(83, 207, 190, .28); border-radius: 20px;
                background: #112638; color: #f5fbfc;
                box-shadow: 0 30px 75px rgba(0, 0, 0, .5);
            }
            .fl-my-offers-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 18px 8px; }
            .fl-my-offers-head h2 { margin: 2px 0 0; font-size: 20px; font-weight: 800; }
            .fl-my-offers-eyebrow { color: #61dfca; font-size: 10px; font-weight: 800; letter-spacing: .14em; }
            .fl-my-offers-head button { display: grid; place-items: center; flex: 0 0 36px; width: 36px; height: 36px; border: 1px solid #3b5666; border-radius: 10px; background: #193447; color: #e5f4f5; }
            .fl-my-offers-note { margin: 0; padding: 0 18px 15px; color: #a7bbc5; font-size: 12px; line-height: 1.5; }
            .fl-my-offers-list { min-height: 80px; overflow-y: auto; overscroll-behavior: contain; padding: 0 14px 16px; }
            .fl-my-offers-message { padding: 22px 10px; color: #a9bfca; text-align: center; font-size: 13px; }
            .fl-my-offers-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 8px; padding: 12px; border: 1px solid rgba(121, 168, 186, .16); border-radius: 12px; background: #192f41; }
            .fl-my-offers-row-copy { display: flex; flex-direction: column; min-width: 0; gap: 4px; }
            .fl-my-offers-row-copy strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px; }
            .fl-my-offers-row-copy small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #91acba; font-size: 11px; }
            .fl-my-offers-status { flex: 0 0 auto; padding: 5px 8px; border-radius: 999px; background: #263b4c; color: #bcd1da; font-size: 10px; font-weight: 800; }
            .fl-my-offers-status.is-pending { background: #4b3b22; color: #ffd47c; }
            .fl-my-offers-status.is-credited { background: #17493e; color: #72edc5; }
            .fl-my-offers-status.is-reversed { background: #512d39; color: #ff9ead; }
            body.fl-my-offers-open { overflow: hidden !important; }
            @media (max-width: 768px) {
                .csm-bottom-nav.fl-mobile-nav {
                    height: calc(66px + env(safe-area-inset-bottom));
                    padding-bottom: env(safe-area-inset-bottom);
                    background: #172b3b; border-top: 1px solid rgba(104, 184, 193, .25);
                    box-shadow: 0 -10px 30px rgba(2, 12, 23, .25);
                }
                .fl-mobile-nav ul { height: 66px; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); align-items: stretch; }
                .fl-mobile-nav ul li { min-width: 0; height: 66px; }
                .fl-mobile-nav ul li a {
                    width: 100%; height: 66px; min-height: 66px; padding: 7px 2px 6px !important;
                    display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px;
                    border-top: 2px solid transparent; background: transparent !important;
                    color: #c0d1db !important; cursor: pointer;
                }
                .fl-mobile-nav ul li a.csm_b_nav_active { border-top-color: #41dabb; background: rgba(47, 203, 178, .13) !important; color: #66edcf !important; }
                .fl-mobile-nav ul li a svg { width: 22px !important; height: 22px !important; flex: 0 0 22px; color: inherit !important; }
                .fl-mobile-nav .nav-label { margin: 0; color: inherit !important; font-size: 10px; font-weight: 700; line-height: 1.1; white-space: nowrap; }
                .fl-help-overlay { align-items: center; justify-content: center; padding: 12px 12px calc(72px + env(safe-area-inset-bottom)); }
                .fl-help-panel { width: min(360px, 100%); height: min(480px, calc(100dvh - 112px - env(safe-area-inset-bottom))); min-height: 0; border-radius: 9px; }
                .fl-help-head { padding: 11px 13px 10px; }
                .fl-help-heading { margin-top: 10px; font-size: 17px; }
            }
        