        * { margin:0; padding:0; box-sizing:border-box; }
        html { -webkit-text-size-adjust:100%; }

        :root{
            --fh-blue:#1987ff;
            --fh-blue-soft:rgba(25,135,255,0.10);
            --fh-blue-soft-2:rgba(25,135,255,0.16);
            --fh-text:#0f172a;
            --fh-text-soft:#475569;
            --fh-border:rgba(15,23,42,0.08);
            --fh-bg:#f5f5f7;

            --crowd-blue:#1987ff;
            --crowd-green:#22c55e;
            --crowd-orange:#f59e0b;
            --crowd-teal:#14b8a6;

            --avatar-c0:#60a5fa;
            --avatar-c1:#34d399;
            --avatar-c2:#f59e0b;
            --avatar-c3:#a78bfa;
            --avatar-c4:#fb7185;
            --avatar-c5:#2dd4bf;
            --avatar-c6:#f97316;
            --avatar-c7:#818cf8;
        }

        body{
            font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;
            background:var(--fh-bg);
            color:var(--fh-text);
            font-size:17px;
            line-height:1.7;
        }


        html.fh-modal-open,
        body.fh-modal-open{
            overflow:hidden;
            height:100%;
            overscroll-behavior:none;
            touch-action:none;
        }

        .page-wrap{
            max-width:960px;
            margin:0 auto;
            padding:10px 8px 18px;
        }

        .page{
            display:flex;
            flex-direction:column;
            background:#fff;
            border-radius:16px;
            box-shadow:0 1px 4px rgba(0,0,0,0.06);
            overflow:visible;
            min-height:70vh;
        }

        .fu-feed-top-space{
            height:18px;
            flex:0 0 auto;
        }

        #loading{
            text-align:center;
            color:#6b7280;
            font-size:14px;
            padding:14px 0 18px;
        }

        .fu-coach-wrap{ padding:10px 10px 0; }
        .fu-coach{
            display:flex;
            align-items:flex-start;
            justify-content:space-between;
            gap:12px;
            background:linear-gradient(180deg,#f8fbff 0%,#eef4ff 100%);
            border:1px solid rgba(25,135,255,0.14);
            border-radius:18px;
            padding:14px 14px;
            box-shadow:0 4px 14px rgba(25,135,255,0.06);
        }
        .fu-coach-left{ display:flex; gap:10px; min-width:0; }
        .fu-coach-icon{
            flex:0 0 auto;
            width:24px;
            height:24px;
            display:inline-flex;
            align-items:center;
            justify-content:center;
            color:#1987ff;
            margin-top:1px;
        }
        .fu-coach-text{ min-width:0; }
        .fu-coach-title{
            font-size:14px;
            font-weight:800;
            color:#111827;
            line-height:1.3;
            margin-bottom:2px;
        }
        .fu-coach-desc{
            font-size:13px;
            color:#4b5563;
            line-height:1.45;
        }
        .fu-coach-btn{
            flex:0 0 auto;
            appearance:none;
            border:none;
            background:#1987ff;
            color:#fff;
            font-size:12px;
            font-weight:800;
            border-radius:999px;
            padding:8px 12px;
            cursor:pointer;
            line-height:1;
        }
        .fu-coach-close{
            appearance:none;
            border:none;
            background:transparent;
            color:#94a3b8;
            font-size:18px;
            line-height:1;
            cursor:pointer;
            padding:2px 4px;
            margin-left:4px;
        }

        .fcu-card{
            background:linear-gradient(180deg,#ffffff 0%,#fbfcff 100%);
            border:1px solid rgba(17,24,39,0.06);
            border-radius:28px;
            margin:14px 10px 18px;
            box-shadow:0 10px 28px rgba(0,0,0,0.06), 0 2px 8px rgba(0,0,0,0.04);
            overflow:visible;
        }

        .fcu-collapsed{
            position:relative;
            padding:28px 22px 18px;
            min-height:136px;
        }

        .fcu-title{
            font-size:34px;
            font-weight:950;
            line-height:1.1;
            color:#0b1220;
            margin-bottom:16px;
            letter-spacing:-0.04em;
            max-width:100%;
            cursor:pointer;
            word-break:normal;
            overflow-wrap:break-word;
            text-wrap:pretty;
        }
        .fcu-collapsed.has-avatar .fcu-title::before{
            content:"";
            float:right;
            width:138px;
            height:116px;
            pointer-events:none;
        }
        .fcu-title::first-letter{
            color:#1987ff;
            font-size:1.28em;
            font-weight:950;
            position:relative;
            top:-0.02em;
        }

        /* Server-rendered first-page fallback: visible and usable before the
           interactive feed takes over, without changing the JS card UI. */
        .fcu-card--ssr .fcu-title a{
            color:inherit;
            text-decoration:none;
        }
        .fcu-ssr-preview{
            margin:0 0 10px;
            color:#334155;
            font-size:16px;
            font-weight:650;
            line-height:1.55;
        }
        .fcu-ssr-detail-link{
            color:#1987ff;
            font-size:14px;
            font-weight:850;
            text-decoration:none;
        }

        .fcu-avatar{
            position:absolute;
            top:-34px;
            right:-14px;
            width:145px;
            height:145px;
            border-radius:999px;
            object-fit:cover;
            object-position:center center;
            background:#fff;
            border:3px solid rgba(255,255,255,0.95);
            box-shadow:0 10px 28px rgba(0,0,0,0.16);
            cursor:pointer;
            transition:opacity .32s ease;
        }

        .fcu-video-wrap{
            width:100%;
            aspect-ratio:16/9;
            overflow:hidden;
            border-radius:18px;
            background:#05070b;
            box-shadow:0 8px 24px rgba(15,23,42,0.12);
        }
        .fcu-video-wrap--collapsed{
            clear:both;
            margin:2px 0 16px;
        }
        .fcu-video-wrap--expanded{
            margin:0 0 14px;
        }
        .fcu-video{
            display:block;
            width:100%;
            height:100%;
            object-fit:contain;
            background:#05070b;
        }
        .fcu-video-error{
            display:flex;
            align-items:center;
            justify-content:center;
            gap:8px;
            width:100%;
            height:100%;
            margin:0;
            padding:18px;
            color:#e2e8f0;
            font-size:14px;
            font-weight:700;
            text-align:center;
        }
        .fcu-video-error[hidden]{ display:none; }
        .fcu-video-error a{
            color:#7dbbff;
            font-weight:850;
            text-decoration:none;
        }

        .fcu-social-area{
            clear:both;
            margin-top:2px;
            cursor:pointer;
            user-select:none;
        }

        .fcu-preview-title{
            font-size:13px;
            font-weight:900;
            color:#475569;
            line-height:1.2;
            margin-bottom:8px;
            letter-spacing:0.01em;
        }

        .fcu-preview-list{
            display:flex;
            flex-direction:column;
            gap:8px;
            margin-bottom:12px;
        }

        .fcu-preview-row{
            display:flex;
            align-items:center;
            gap:10px;
            min-width:0;
        }

        .fcu-mini-avatar,
        .cm-avatar-lg,
        .cm-composer-user{
            width:28px;
            height:28px;
            border-radius:999px;
            display:inline-flex;
            align-items:center;
            justify-content:center;
            flex:0 0 auto;
            font-size:11px;
            font-weight:900;
            color:#fff;
            letter-spacing:0.02em;
            overflow:hidden;
        }

        .cm-avatar-lg{
            width:34px;
            height:34px;
            font-size:12px;
        }

        .cm-avatar-lg img,
        .cm-composer-user img,
        .fcu-mini-avatar img{
            width:100%;
            height:100%;
            object-fit:cover;
            display:block;
        }

        .avatar-c0{ background:var(--avatar-c0); }
        .avatar-c1{ background:var(--avatar-c1); }
        .avatar-c2{ background:var(--avatar-c2); }
        .avatar-c3{ background:var(--avatar-c3); }
        .avatar-c4{ background:var(--avatar-c4); }
        .avatar-c5{ background:var(--avatar-c5); }
        .avatar-c6{ background:var(--avatar-c6); }
        .avatar-c7{ background:var(--avatar-c7); }

        .fcu-preview-text{
            font-size:15px;
            color:#111827;
            line-height:1.4;
            white-space:nowrap;
            overflow:hidden;
            text-overflow:ellipsis;
            min-width:0;
            flex:1 1 auto;
        }

        .fcu-crowd-compact{
            background:#f8fbff;
            border:1px solid rgba(25,135,255,0.12);
            border-radius:18px;
            padding:12px 12px 10px;
            margin-bottom:4px;
        }

        .fcu-crowd-head{
            display:flex;
            align-items:center;
            gap:8px;
            margin-bottom:8px;
        }

        .fcu-crowd-icon{
            width:18px;
            height:18px;
            color:#1987ff;
            flex:0 0 auto;
        }

        .fcu-crowd-title{
            font-size:14px;
            font-weight:900;
            color:#111827;
            line-height:1.1;
        }

        .fcu-crowd-list{
            display:flex;
            flex-direction:column;
            gap:8px;
        }

        .fcu-crowd-row{
            display:grid;
            grid-template-columns:minmax(0,1fr) 108px;
            gap:10px;
            align-items:center;
        }

        .fcu-crowd-label{
            font-size:13px;
            color:#0f172a;
            line-height:1.25;
            white-space:nowrap;
            overflow:hidden;
            text-overflow:ellipsis;
            min-width:0;
        }

        .fcu-crowd-right{
            display:flex;
            align-items:center;
            gap:8px;
            justify-content:flex-end;
        }

        .fcu-crowd-heart{
            flex:0 0 26px;
            width:26px;
            height:26px;
        }

        .fcu-crowd-bar{
            width:46px;
            height:7px;
            border-radius:999px;
            background:rgba(15,23,42,0.08);
            overflow:hidden;
            position:relative;
            flex:0 0 auto;
        }

        .fcu-crowd-fill{
            position:absolute;
            inset:0 auto 0 0;
            border-radius:999px;
            width:0%;
        }

        .crowd-fill-0{ background:var(--crowd-blue); }
        .crowd-fill-1{ background:var(--crowd-green); }
        .crowd-fill-2{ background:var(--crowd-orange); }
        .crowd-fill-3{ background:var(--crowd-teal); }

        .fcu-crowd-pct{
            font-size:12px;
            font-weight:800;
            color:#334155;
            width:28px;
            text-align:right;
            line-height:1;
        }

        .fcu-expanded{
            display:none;
            border-top:1px solid rgba(15,23,42,0.05);
            background:#fff;
            cursor:pointer;
        }

        .fcu-card.is-open .fcu-expanded{ display:block; }
        .fcu-card.is-open .fcu-collapsed{ display:none; }

        .fcu-expanded-inner{ padding:16px 18px 18px; }
        .fcu-expanded-title{
            font-size:28px;
            font-weight:950;
            line-height:1.06;
            color:#0b1220;
            letter-spacing:-0.6px;
            margin:0 0 12px 0;
            word-break:break-word;
        }
        .fcu-expanded-title::first-letter{
            color:#1987ff;
            font-size:1.45em;
            font-weight:950;
            position:relative;
            top:-0.02em;
        }

        .fcu-hero-wrap{
            width:100%;
            aspect-ratio:16/9;
            background:#eef2f7;
            overflow:hidden;
            border-radius:18px;
            margin-bottom:14px;
        }
        .fcu-hero{
            width:100%;
            height:100%;
            object-fit:cover;
            display:block;
            transition:opacity .32s ease;
        }
        .fcu-avatar.is-switching,
        .fcu-hero.is-switching{ opacity:.18; }

        .fcu-naked-truth{
            margin:2px 0 12px;
            padding:12px 14px;
            border-radius:16px;
            background:linear-gradient(180deg,rgba(25,135,255,0.08) 0%,rgba(25,135,255,0.04) 100%);
            border:1px solid rgba(25,135,255,0.14);
        }
        .fcu-naked-truth-label{
            font-size:18px;
            font-weight:850;
            color:#1987ff;
            line-height:1.25;
            margin-bottom:8px;
        }
        .fcu-naked-truth-body{
            font-size:16px;
            line-height:1.6;
            color:#111827;
            font-weight:650;
        }

        .fcu-sections{ margin-top:10px; }
        .fcu-section{
            border-top:1px solid rgba(15,23,42,0.08);
            padding:14px 0 0 0;
            margin-top:14px;
        }
        .fcu-section-btn{
            width:100%;
            text-align:left;
            appearance:none;
            border:none;
            background:transparent;
            padding:0;
            cursor:pointer;
            color:#0f172a;
            display:flex;
            align-items:flex-start;
            justify-content:space-between;
            gap:10px;
        }
        .fcu-section-main{ min-width:0; flex:1 1 auto; }
        .fcu-section-label{
            font-size:18px;
            font-weight:850;
            line-height:1.25;
            color:#0f172a;
            display:block;
            margin-bottom:8px;
        }
        .fcu-arrow{
            color:#7C9CFF;
            font-weight:950;
            display:inline-block;
            padding:0 3px;
        }
        .fcu-section-collapsed{
            font-size:17px;
            font-weight:650;
            line-height:1.45;
            color:#0f172a;
            display:inline;
        }
        .fcu-section-more{
            flex:0 0 auto;
            color:#7C9CFF;
            font-size:18px;
            font-weight:800;
            line-height:1;
            margin-top:2px;
        }
        .fcu-section-body{
            display:none;
            margin-top:10px;
            padding:14px 14px;
            border-radius:16px;
            background:rgba(25,135,255,0.08);
            border:1px solid rgba(25,135,255,0.14);
            color:#111827;
            font-size:16px;
            line-height:1.68;
            cursor:auto;
        }
        .fcu-section-body strong{
            color:var(--fh-blue);
            font-weight:850;
        }

        .fcu-fixed-block{
            border-top:1px solid rgba(15,23,42,0.08);
            margin-top:16px;
            padding-top:14px;
        }
        .fcu-fixed-title{
            font-size:18px;
            font-weight:850;
            line-height:1.25;
            color:#0f172a;
            margin-bottom:8px;
        }
        .fcu-fixed-body,
        .fcu-source-line{
            font-size:16px;
            line-height:1.68;
            color:#111827;
        }

        .fcu-list{
            list-style:none;
            padding:0;
            margin:0;
        }
        .fcu-list li{
            position:relative;
            padding-left:14px;
            margin-top:8px;
            color:#111827;
            font-size:16px;
            line-height:1.62;
        }
        .fcu-list li::before{
            content:"•";
            position:absolute;
            left:0;
            top:0;
            color:#7C9CFF;
            font-weight:900;
        }

        .fcu-meta-row{
            margin-top:16px;
            padding-top:12px;
            border-top:1px solid rgba(15,23,42,0.08);
            display:block;
            color:#94a3b8;
            font-size:12px;
            overflow:visible;
        }
        .fcu-meta-left{
            display:grid;
            grid-template-columns:max-content repeat(4,max-content);
            align-items:center;
            justify-content:start;
            column-gap:12px;
            width:100%;
            min-width:0;
            overflow:visible;
        }
        .fcu-meta-time{
            white-space:nowrap;
            font-size:12px;
            color:#94a3b8;
        }
        .fcu-comment-trigger,
        .fcu-view-metric{
            appearance:none;
            border:none;
            background:transparent;
            padding:0;
            margin:0;
            white-space:nowrap;
            display:inline-flex;
            align-items:center;
            gap:6px;
            color:#1987ff;
            font-size:15px;
            font-weight:900;
            line-height:1;
            min-width:0;
            font-variant-numeric:tabular-nums;
        }
        .fcu-comment-trigger{ cursor:pointer; }
        .fcu-comment-trigger svg,
        .fcu-view-metric svg{
            width:20px;
            height:20px;
            flex:0 0 auto;
        }
        .fcu-love-trigger svg path{
            fill:#fff;
            stroke:currentColor;
            stroke-width:2.2;
            stroke-linejoin:round;
        }
        .fcu-love-trigger.is-loved{
            color:#ef4444;
        }
        .fcu-love-trigger.is-loved svg path{
            fill:#ef4444;
            stroke:#ef4444;
        }
        .fcu-love-trigger.is-pending{
            opacity:0.55;
            pointer-events:none;
        }
        .fcu-crowd-reacted-count{
            color:#1987ff;
            font-weight:900;
        }
        .fcu-factchain-toggle{
            appearance:none;
            border:none;
            background:transparent;
            padding:0;
            cursor:pointer;
            font-size:15px;
            font-weight:900;
            color:#7C9CFF;
            letter-spacing:0.01em;
            display:inline-flex;
            align-items:center;
            gap:6px;
            line-height:1;
        }
        .fcu-title-factchain{
            margin-left:10px;
            vertical-align:text-bottom;
            white-space:nowrap;
            letter-spacing:0.01em;
        }
        .fcu-title-factchain .fcu-factchain-icon{
            width:18px;
            height:18px;
        }
        .fcu-factchain-icon{
            width:20px;
            height:20px;
            display:inline-block;
            flex:0 0 auto;
        }

        .cm-overlay{
            position:fixed;
            inset:0;
            background:rgba(2,6,23,0.38);
            z-index:2000;
            display:none;
            align-items:flex-end;
            justify-content:center;
            padding:0;
        }
        .cm-overlay.show{ display:flex; }

        .cm-sheet{
            width:100%;
            max-width:960px;
            height:80vh;
            background:#fff;
            border-top-left-radius:24px;
            border-top-right-radius:24px;
            box-shadow:0 -10px 30px rgba(0,0,0,0.18);
            display:flex;
            flex-direction:column;
            overflow:hidden;
            transform:translateY(100%);
            transition:transform 0.22s ease-out;
        }
        .cm-overlay.show .cm-sheet{ transform:translateY(0); }

        .cm-handle-wrap{
            padding:8px 0 4px;
            display:flex;
            justify-content:center;
            flex:0 0 auto;
        }
        .cm-handle{
            width:44px;
            height:5px;
            border-radius:999px;
            background:#d1d5db;
        }

        .cm-header{
            padding:0 16px 10px;
            border-bottom:1px solid rgba(15,23,42,0.08);
            flex:0 0 auto;
        }
        .cm-header-row{
            display:flex;
            align-items:center;
            justify-content:space-between;
            gap:12px;
        }
        .cm-title{
            font-size:18px;
            font-weight:900;
            color:#0f172a;
            line-height:1.2;
            display:flex;
            align-items:center;
            gap:8px;
        }
        .cm-title-icon{
            width:18px;
            height:18px;
            color:#1987ff;
            flex:0 0 auto;
        }
        .cm-close{
            appearance:none;
            border:none;
            background:transparent;
            color:#64748b;
            width:32px;
            height:32px;
            font-size:22px;
            line-height:1;
            cursor:pointer;
            flex:0 0 auto;
        }

        .cm-map{
            padding:12px 16px 12px;
            border-bottom:1px solid rgba(15,23,42,0.08);
            flex:0 0 auto;
        }
        .cm-crowd-context[hidden],
        .cm-comments-heading[hidden]{ display:none !important; }
        .cm-crowd-context{
            margin:0 0 16px;
            border:1px solid rgba(25,135,255,0.13);
            border-radius:18px;
            overflow:hidden;
            background:linear-gradient(180deg,#f8fbff 0%,#fff 100%);
        }
        .cm-comments-heading{
            margin:2px 0 14px;
            padding:0 0 10px;
            border-bottom:1px solid rgba(15,23,42,0.08);
            color:#0f172a;
            font-size:15px;
            font-weight:900;
        }

        .gm-leaning-wrap{
            display:none;
            margin-bottom:14px;
            padding:12px 14px;
            border-radius:16px;
            background:rgba(25,135,255,0.06);
            border:1px solid rgba(25,135,255,0.10);
        }
        .gm-leaning-title{
            font-size:13px;
            font-weight:900;
            color:#475569;
            letter-spacing:0.01em;
            line-height:1.2;
            margin-bottom:6px;
        }
        .gm-leaning-text{
            font-size:15px;
            line-height:1.6;
            color:#334155;
            font-weight:700;
        }

        .cm-map-list{
            display:flex;
            flex-direction:column;
            gap:12px;
        }
        .cm-map-row{
            display:flex;
            flex-direction:column;
            gap:8px;
        }
        .cm-map-top{
            display:grid;
            grid-template-columns:minmax(0,1fr) auto;
            gap:10px;
            align-items:center;
        }
        .cm-map-label{
            font-size:14px;
            font-weight:800;
            color:#0f172a;
            min-width:0;
            line-height:1.25;
        }
        .cm-map-right{
            display:flex;
            align-items:center;
            gap:10px;
            flex:0 0 auto;
        }
        .cm-map-pct{
            font-size:13px;
            font-weight:900;
            color:#334155;
            text-align:right;
            min-width:34px;
        }
        .cm-heart-btn{
            appearance:none;
            border:none;
            background:transparent;
            color:#cbd5e1;
            width:30px;
            height:30px;
            padding:0;
            display:inline-flex;
            align-items:center;
            justify-content:center;
            cursor:pointer;
            border-radius:999px;
            transition:transform 0.16s ease,color 0.16s ease,background 0.16s ease;
        }
        .cm-heart-btn:hover{ background:rgba(239,68,68,0.08); }
        .cm-heart-btn svg{
            width:18px;
            height:18px;
            display:block;
            fill:currentColor;
        }
        .cm-heart-btn.is-active{
            color:#ef4444;
            background:rgba(239,68,68,0.10);
            animation:cmHeartPop 0.24s ease-out;
        }
        @keyframes cmHeartPop{
            0%{ transform:scale(0.92); }
            55%{ transform:scale(1.18); }
            100%{ transform:scale(1); }
        }
        .cm-map-track{
            height:8px;
            width:72%;
            max-width:220px;
            border-radius:999px;
            background:rgba(15,23,42,0.08);
            overflow:hidden;
            position:relative;
        }
        .cm-map-fill{
            position:absolute;
            inset:0 auto 0 0;
            width:0%;
            border-radius:999px;
            transition:width 0.7s ease-out;
        }
        .cm-map-fill.fill-0{ background:var(--crowd-blue); }
        .cm-map-fill.fill-1{ background:var(--crowd-green); }
        .cm-map-fill.fill-2{ background:var(--crowd-orange); }
        .cm-map-fill.fill-3{ background:var(--crowd-teal); }

        .gm-cta{
            margin-top:14px;
            font-size:13px;
            font-weight:800;
            color:#1987ff;
            text-align:center;
        }

        .cm-scroll{
            flex:1 1 auto;
            overflow:auto;
            -webkit-overflow-scrolling:touch;
            padding:12px 16px 0;
            background:#fff;
        }

        .cm-comment{
            display:flex;
            gap:10px;
            margin-bottom:14px;
        }
        .cm-comment-body{
            min-width:0;
            flex:1 1 auto;
        }
        .cm-comment-meta{
            display:flex;
            align-items:center;
            gap:8px;
            margin-bottom:4px;
        }
        .cm-comment-name{
            font-size:13px;
            font-weight:800;
            color:#111827;
            line-height:1.2;
            white-space:nowrap;
            overflow:hidden;
            text-overflow:ellipsis;
            max-width:160px;
        }
        .cm-comment-text{
            font-size:15px;
            line-height:1.55;
            color:#111827;
            word-break:break-word;
        }
        .cm-comment-actions{
            display:flex;
            align-items:center;
            gap:14px;
            margin-top:6px;
            flex-wrap:wrap;
        }
        .cm-action-btn{
            appearance:none;
            border:none;
            background:transparent;
            cursor:pointer;
            padding:0;
            margin:0;
            font-size:12px;
            font-weight:800;
            color:#64748b;
            line-height:1;
        }
        .cm-action-btn.primary{ color:#1987ff; }
        .cm-action-btn.is-active{
            color:#1987ff;
            font-weight:900;
        }
        .cm-replies-toggle{
            appearance:none;
            border:none;
            background:transparent;
            cursor:pointer;
            padding:0;
            margin-top:6px;
            color:#1987ff;
            font-size:12px;
            font-weight:800;
            line-height:1;
        }
        .cm-replies{
            display:block;
            margin-top:10px;
            padding-left:10px;
            border-left:2px solid rgba(15,23,42,0.08);
        }

        .cm-empty{
            padding:24px 0 28px;
            text-align:center;
            color:#64748b;
            font-size:14px;
        }

        .cm-loading-more{
            text-align:center;
            color:#64748b;
            font-size:13px;
            padding:10px 0 16px;
        }

        .cm-compose-wrap{
            flex:0 0 auto;
            border-top:1px solid rgba(15,23,42,0.08);
            background:#fff;
            padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px));
        }
        .cm-emoji-row{
            display:flex;
            gap:8px;
            overflow:auto;
            padding-bottom:8px;
            margin-bottom:8px;
            -webkit-overflow-scrolling:touch;
        }
        .cm-emoji-chip{
            appearance:none;
            border:none;
            background:#f1f5f9;
            border-radius:999px;
            min-width:36px;
            height:32px;
            padding:0 10px;
            cursor:pointer;
            font-size:18px;
            line-height:1;
            flex:0 0 auto;
        }
        .cm-compose-row{
            display:flex;
            align-items:flex-end;
            gap:8px;
        }
        .cm-compose-box{
            flex:1 1 auto;
            min-width:0;
            display:flex;
            align-items:flex-end;
            gap:8px;
            background:#f8fafc;
            border:1px solid rgba(15,23,42,0.08);
            border-radius:18px;
            padding:8px 10px;
        }
        .cm-textarea{
            flex:1 1 auto;
            min-height:22px;
            max-height:96px;
            resize:none;
            appearance:none;
            border:none;
            background:transparent;
            outline:none;
            font:inherit;
            font-size:15px;
            line-height:1.45;
            color:#111827;
        }
        .cm-submit{
            appearance:none;
            border:none;
            background:#1987ff;
            color:#fff;
            border-radius:999px;
            padding:10px 14px;
            font-size:13px;
            font-weight:900;
            cursor:pointer;
            line-height:1;
            flex:0 0 auto;
        }
        .cm-submit[disabled]{ opacity:0.45; cursor:default; }

        .cm-replying{
            font-size:12px;
            color:#64748b;
            margin-bottom:6px;
            display:none;
        }
        .cm-replying.show{ display:block; }
        .cm-replying button{
            appearance:none;
            border:none;
            background:transparent;
            color:#1987ff;
            cursor:pointer;
            font-size:12px;
            font-weight:800;
            margin-left:4px;
            padding:0;
        }

        .cm-login-note{
            text-align:center;
            color:#475569;
            font-size:13px;
            line-height:1.45;
            padding-top:2px;
        }
        .cm-login-note a{
            color:#1987ff;
            font-weight:800;
            text-decoration:none;
        }

        @media (max-width:768px){
            .page-wrap{ padding:8px 6px 18px; }
            .page{ min-height:78vh; }
            .fu-feed-top-space{ height:20px; }

            .fcu-card{
                border-radius:24px;
                overflow:visible;
                margin:16px 10px 26px;
            }
            .fcu-collapsed{
                padding:26px 18px 18px;
                min-height:128px;
            }
            .fcu-title{
                font-size:31px;
                line-height:1.12;
                letter-spacing:-0.04em;
                padding-right:0;
            }
            .fcu-avatar{
                width:110px;
                height:110px;
                top:-24px;
                right:-8px;
            }
            .fcu-video-wrap{
                border-radius:14px;
                box-shadow:0 6px 18px rgba(15,23,42,0.11);
            }
            .fcu-video-wrap--collapsed{ margin:0 0 12px; }
            .fcu-video-wrap--expanded{ margin:0 0 12px; }
            .fcu-collapsed.has-avatar .fcu-title{
                padding-right:0;
            }
            .fcu-collapsed.has-avatar .fcu-title::before{
                width:100px;
                height:84px;
            }
            .fcu-expanded-inner{ padding:14px 14px 18px; }
            .fcu-expanded-title{
                font-size:24px;
                letter-spacing:-0.45px;
                margin:0 0 10px 0;
            }

            .fcu-section-collapsed,
            .fcu-section-body,
            .fcu-fixed-body,
            .fcu-list li,
            .fcu-source-line,
            .fcu-naked-truth-body{ font-size:15px; }

            .fcu-crowd-title{ font-size:15px; }
            .fcu-crowd-label{ font-size:14px; }
            .fcu-crowd-pct{ font-size:13px; }

            .cm-header{ padding:0 14px 10px; }
            .cm-map{ padding:12px 14px 12px; }
            .cm-scroll{ padding:12px 14px 0; }
            .cm-map-label{ font-size:15px; }
            .cm-map-pct{ font-size:14px; }
            .cm-map-track{ width:68%; max-width:none; }
            .gm-leaning-text{ font-size:16px; line-height:1.62; }
        }

        @media (min-width:961px){
            .fcu-collapsed{ padding:28px 26px 22px; }
            .fcu-collapsed.has-avatar .fcu-title{ padding-right:0; }
            .fcu-title{ font-size:34px; }
            .fcu-expanded-inner{ padding:18px 22px 20px; }
            .fcu-expanded-title{ font-size:30px; margin:0 0 14px 0; }
            .cm-sheet{ max-width:820px; }
        }

        /* Phase 2.5 parity layer: retain the proven Chinese card UI while
           matching the current English site's desktop density and hierarchy. */
        .page-wrap{
            width:calc(100% - 28px);
            max-width:1200px;
            padding:22px 0 44px;
        }
        .page{
            display:block;
            min-height:70vh;
            background:transparent;
            border-radius:0;
            box-shadow:none;
        }
        .fu-feed-top-space{ height:8px; }
        .fu-coach-wrap{
            max-width:760px;
            padding:0 0 20px;
        }
        #container{
            display:grid;
            grid-template-columns:repeat(3,minmax(0,1fr));
            gap:20px;
            align-items:start;
        }
        .fcu-card{
            display:block;
            width:100%;
            margin:0;
            box-shadow:0 12px 36px rgba(15,23,42,0.07);
        }
        .fcu-preview-list{
            gap:10px;
        }
        .fcu-opinion-card{
            border:1px solid rgba(15,23,42,0.09);
            border-radius:18px;
            padding:14px 16px;
            background:rgba(255,255,255,0.82);
        }
        .fcu-opinion-head{
            display:flex;
            align-items:center;
            justify-content:space-between;
            gap:12px;
            margin-bottom:5px;
        }
        .fcu-opinion-frame{
            color:var(--fh-blue);
            font-size:13px;
            font-weight:900;
        }
        .fcu-opinion-stance{
            color:#94a3b8;
            font-size:11px;
            font-weight:900;
            letter-spacing:.08em;
        }
        .fcu-opinion-title{
            margin:0 0 5px;
            color:#0b1220;
            font-size:17px;
            font-weight:900;
            line-height:1.28;
            letter-spacing:-.02em;
        }
        .fcu-opinion-body{
            margin:0;
            color:#556174;
            font-size:14px;
            line-height:1.55;
            overflow-wrap:anywhere;
        }

        @media (max-width:1199px){
            #container{ grid-template-columns:repeat(2,minmax(0,1fr)); }
            .fcu-title{ font-size:34px; }
        }

        @media (max-width:760px){
            .page-wrap{ padding:2px 2px 12px; }
            .fu-feed-top-space{ height:0; }
            #container{
                grid-template-columns:minmax(0,1fr);
                gap:14px;
            }
            .fcu-card{
                display:block;
                margin:20px 2px 14px;
                width:auto;
                border-color:rgba(17,24,39,0.04);
                border-radius:20px;
                box-shadow:0 7px 22px rgba(15,23,42,0.055);
            }
            .fcu-collapsed{
                padding:22px 12px 12px;
                min-height:118px;
            }
            .fcu-avatar{
                width:178px;
                height:178px;
                top:-20px;
                right:-2px;
            }
            .fcu-video-wrap{ border-radius:13px; }
            .fcu-collapsed.has-avatar .fcu-title::before{
                width:168px;
                height:148px;
            }
            .fcu-title{ font-size:31px; }
            .fcu-social-area{ margin-top:0; }
            .fcu-preview-title{ margin-bottom:6px; }
            .fcu-preview-list{
                gap:6px;
                margin-bottom:8px;
            }
            .fcu-opinion-card{
                border-color:rgba(15,23,42,0.06);
                border-radius:15px;
                padding:11px 12px;
            }
            .fcu-opinion-head{
                gap:8px;
                margin-bottom:4px;
            }
            .fcu-opinion-title{ margin-bottom:4px; }
            .fcu-crowd-compact{
                border-color:rgba(25,135,255,0.09);
                border-radius:15px;
                padding:10px;
                margin-bottom:2px;
            }
            .fcu-crowd-head{ margin-bottom:6px; }
            .fcu-crowd-list{ gap:6px; }
            .fcu-meta-row{
                margin-top:10px;
                padding-top:8px;
                border-top-color:rgba(15,23,42,0.05);
            }
            .fcu-meta-left{ column-gap:8px; }
            .fcu-comment-trigger,
            .fcu-view-metric{ gap:5px; }
        }

        @media (max-width:380px){
            .fcu-meta-left{ column-gap:5px; }
            .fcu-meta-time{ font-size:11px; }
            .fcu-comment-trigger,
            .fcu-view-metric{
                gap:4px;
                font-size:14px;
            }
            .fcu-comment-trigger svg,
            .fcu-view-metric svg{
                width:18px;
                height:18px;
            }
            .fcu-title-factchain{
                margin-left:8px;
                font-size:14px;
            }
        }
