@charset "utf-8";
/* ==========================================================================
   汇友驿站 · 首页样式（按 UI1.psd 重做）
   设计稿 750×8000，root font-size = 20px @375 宽 → 1rem = 40 psd px
   只改样式，不涉及任何接口 / PHP 模板逻辑
   ========================================================================== */

/* ---------- 设计令牌（PSD 实采） ---------- */
:root {
    --bg: #010d19;
    --card: #010d19;
    --line: rgba(56, 146, 224, .50);
    --line-soft: rgba(56, 146, 224, .20);
    --radius: 16px;
    --blue: #1899f3;
    --blue-time: #1e8fd5;
    --text: #ffffff;
    --dim: #cdd8e3;
    --body: #dbe6f0;
    --band-a: #0a3f63;
    --band-b: #1c95c6;
    --btn-a: #2f5ff0;
    --btn-b: #6a8bfa;
    --warm: #a9743f;
}

/* ---------- 基础 ---------- */
*, *::before, *::after { -webkit-box-sizing: border-box; box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; -webkit-tap-highlight-color: transparent; }

body {
    margin: 0;
    padding: 0 0 2.6rem;
    background: var(--bg);
    color: var(--text);
    font-family: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", Helvetica, Arial, sans-serif;
    font-size: .7rem;
    line-height: 1.75;
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
}

img { max-width: 100%; display: block; border: 0; }
a { color: inherit; text-decoration: none; }
ul, ol { margin: 0; padding: 0; list-style: none; }
p { margin: 0 0 .5rem; }
p:last-child { margin-bottom: 0; }
strong { font-weight: 700; color: var(--text); }

/* ---------- 1 顶部广告图（与 huiyouyizhan.cn 同款实现：PC 通栏 / ≤1024 切手机图） ---------- */
.live_banner { width: 100%; margin: 0 auto; }
.live_banner img { width: 100%; height: auto; display: block; }

.live_banner_mob { display: none; }

@media screen and (max-width: 1024px) {
    .live_banner { display: none; }
    .live_banner_mob { display: block; width: 18.75rem; margin: 0 auto; }
    .live_banner_mob img { width: 100%; height: auto; display: block; }
}

/* ---------- 版心 ---------- */
.live_box {
    width: 100%;
    max-width: 18.75rem;
    margin: 0 auto;
    padding: 0 .725rem;
}

/* ---------- 区块与标题 ---------- */
.ui-section { margin-top: 1.5rem; }

.ui-head {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    margin: 0 0 .62rem;
    font-size: .9rem;
    font-weight: 700;
    line-height: 1.3;
    color: var(--text);
    letter-spacing: .02rem;
    background: none;
    border: 0;
    box-shadow: none;
    width: auto;
    height: auto;
}
.ui-head span { display: inline-block; }

.ui-ico {
    width: .72rem;
    height: .72rem;
    margin-right: .16rem;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    fill: var(--blue);
}

/* ---------- 描边卡片 ---------- */
.ui-card {
    background: var(--card);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    padding: .62rem .6rem;
    color: var(--body);
    font-size: .66rem;
    line-height: 1.8;
    overflow: hidden;
    max-width: 100%;
    word-break: break-word;
    overflow-wrap: break-word;
}
.ui-card .ui-tags { color: var(--text); }

.live_text { color: var(--body); }
.live_text p { margin: 0 0 .55rem; }
.live_text p:last-child { margin-bottom: 0; }
.live_text strong { color: var(--text); }

/* ---------- 3 峰会流程 时间轴 ---------- */
.live_agebox { margin-top: .55rem; }
.live_agebox ul { position: relative; padding-left: .95rem; }
.live_agebox ul::before {
    content: "";
    position: absolute;
    left: .3rem;
    top: .4rem;
    bottom: .4rem;
    width: 1px;
    background: -webkit-linear-gradient(top, rgba(24, 153, 243, .15), rgba(24, 153, 243, .85), rgba(24, 153, 243, .15));
    background: linear-gradient(180deg, rgba(24, 153, 243, .15), rgba(24, 153, 243, .85), rgba(24, 153, 243, .15));
}
.live_agebox li {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: baseline;
    -webkit-align-items: baseline;
    align-items: baseline;
    margin-bottom: .38rem;
    font-size: .66rem;
    line-height: 1.6;
}
.live_agebox li:last-child { margin-bottom: 0; }
.live_agebox li::before {
    content: "";
    position: absolute;
    left: -.72rem;
    top: .3rem;
    width: .2rem;
    height: .2rem;
    border-radius: 50%;
    background: var(--blue);
    -webkit-box-shadow: 0 0 .12rem rgba(24, 153, 243, .9);
    box-shadow: 0 0 .12rem rgba(24, 153, 243, .9);
}
.live_agebox .l {
    -webkit-flex: 0 0 4.55rem;
    flex: 0 0 4.55rem;
    color: var(--blue-time);
    font-weight: 700;
    padding-right: .12rem;
}
.live_agebox .r { -webkit-box-flex: 1; -webkit-flex: 1 1 0%; flex: 1 1 0%; min-width: 0; color: var(--text); word-break: break-word; }

/* ---------- 4 峰会特色 ---------- */
.live_text_sl ul li { margin-bottom: .45rem; }
.live_text_sl ul li:last-child { margin-bottom: 0; }
.live_text_sl .tit {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    margin-bottom: .34rem;
    font-size: .74rem;
    font-weight: 700;
    color: var(--text);
    line-height: 1.4;
}
.ui-ico-circle {
    position: relative;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 1.05rem;
    height: 1.05rem;
    margin-right: .3rem;
    border-radius: 50%;
    background: rgba(24, 153, 243, .12);
    border: 1px solid var(--line);
}
.ui-ico-circle::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: .28rem;
    height: .28rem;
    margin: -.14rem 0 0 -.14rem;
    border-radius: 2px;
    background: var(--blue);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.live_text_sl p { color: var(--body); }

/* ---------- 5 客服二维码 ---------- */
.ui-qr { margin-top: 1.7rem; text-align: center; }
.ui-qr-img {
    width: 6.75rem;
    max-width: 100%;
    height: 6.75rem;
    max-height: 6.75rem;
    margin: 0 auto;
    padding: .12rem;
    background: #fff;
    border-radius: .28rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    overflow: hidden;
}
.ui-qr-img img { width: 100%; height: 100%; object-fit: contain; }

.ui-qr-line {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    margin-top: .5rem;
    font-size: .68rem;
    color: var(--text);
    line-height: 1.4;
}
.ui-qr-tag {
    display: inline-block;
    margin-left: .12rem;
    padding: .12rem .3rem;
    border-radius: .22rem;
    background: var(--blue);
    color: #fff;
    font-size: .64rem;
    font-weight: 700;
    white-space: nowrap;
}
.ui-qr-tip {
    margin-top: .42rem;
    color: var(--text);
    font-size: .66rem;
    line-height: 1.65;
}
.ui-divider {
    height: 1px;
    margin-top: 1.5rem;
    background: var(--line-soft);
}

/* ---------- 6 适合人群 ---------- */
.ui-crowd .ui-card {
    margin-bottom: .42rem;
    background: -webkit-linear-gradient(315deg, rgba(24, 153, 243, .18) 0%, rgba(10, 36, 60, .94) 50%, rgba(1, 13, 25, .99) 100%);
    background: linear-gradient(135deg, rgba(24, 153, 243, .18) 0%, rgba(10, 36, 60, .94) 50%, rgba(1, 13, 25, .99) 100%);
    border-color: rgba(56, 146, 224, .55);
    -webkit-box-shadow: 0 .1rem .34rem rgba(0, 0, 0, .38), inset 0 1px 0 rgba(255, 255, 255, .06);
    box-shadow: 0 .1rem .34rem rgba(0, 0, 0, .38), inset 0 1px 0 rgba(255, 255, 255, .06);
}
.ui-crowd .ui-card:last-child { margin-bottom: 0; }
.ui-crowd h3 {
    display: inline-block;
    margin: 0 0 .3rem;
    padding: .08rem 1.1rem .1rem .18rem;
    font-size: .78rem;
    font-weight: 700;
    color: var(--text);
    line-height: 1.4;
    border-radius: 2px;
    background: -webkit-linear-gradient(left, rgba(24, 153, 243, .92) 0%, rgba(24, 153, 243, .50) 40%, rgba(24, 153, 243, 0) 100%);
    background: linear-gradient(90deg, rgba(24, 153, 243, .92) 0%, rgba(24, 153, 243, .50) 40%, rgba(24, 153, 243, 0) 100%);
}
.ui-crowd .ui-tags {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: .24rem 0 .44rem;
}
.ui-crowd .ui-tags span {
    display: inline-block;
    margin: 0 .12rem .12rem 0;
    padding: .13em .62em;
    border: 1px solid rgba(24, 153, 243, .48);
    border-radius: 999px;
    background: none;
    color: #cfe4f9;
    font-size: .54rem;
    line-height: 1.5;
    white-space: nowrap;
}
.ui-crowd p { color: var(--body); font-size: .64rem; }

/* ---------- 7 分享嘉宾 ---------- */
.ui-sub {
    margin: -.3rem 0 .5rem;
    text-align: center;
    font-size: .6rem;
    color: var(--text);
    opacity: .8;
}
.live_speaker { max-width: 100%; }
.live_speaker ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: .28rem;
    margin: 0;
}
.live_speaker li {
    width: calc(50% - .14rem);
    max-width: calc(50% - .14rem);
    margin-bottom: 0;
    background: transparent;
    border: 0;
    border-radius: 0;
}
.live_speaker li .tou {
    border-radius: var(--radius);
    border: 1px solid var(--line);
    overflow: hidden;
    background: var(--card);
}
.live_speaker .nei { width: 100%; }
.live_speaker .nei img { width: 100%; height: auto; display: block; }
.live_speaker .jiao {
    padding: .28rem .1rem .1rem;
    text-align: center;
}
.live_speaker .jiao span {
    display: block;
    font-size: .68rem;
    font-weight: 700;
    color: var(--text);
    line-height: 1.4;
}
.live_speaker .jiao p {
    margin: .12rem 0 0;
    font-size: .58rem;
    line-height: 1.55;
    color: var(--dim);
}

/* ---------- 8 报名区 ---------- */
.ui-regband {
    margin: 1.8rem -.725rem 0;
    padding: .9rem .725rem 1.4rem;
    background: -webkit-linear-gradient(top, var(--band-a) 0%, var(--band-b) 100%);
    background: linear-gradient(180deg, var(--band-a) 0%, var(--band-b) 100%);
}

.live_title {
    width: 11.2rem;
    max-width: 100%;
    height: auto;
    margin: 0 auto .75rem;
    padding: .14rem 0;
    text-align: center;
    font-size: .78rem;
    font-weight: 700;
    line-height: 1.5;
    color: var(--text);
    letter-spacing: .02rem;
    border-radius: .24rem;
    background: -webkit-linear-gradient(left, rgba(24, 153, 243, .18), rgba(24, 153, 243, .60), rgba(24, 153, 243, .18));
    background: linear-gradient(90deg, rgba(24, 153, 243, .18), rgba(24, 153, 243, .60), rgba(24, 153, 243, .18));
    -webkit-box-shadow: 0 0 .8rem rgba(24, 153, 243, .35);
    box-shadow: 0 0 .8rem rgba(24, 153, 243, .35);
}

.live_reg {
    margin: 0;
    padding: .7rem .62rem .9rem;
    background: #fff;
    border: 0;
    border-radius: .5rem;
    color: #1b2a3a;
    -webkit-box-shadow: 0 .24rem .8rem rgba(0, 0, 0, .22);
    box-shadow: 0 .24rem .8rem rgba(0, 0, 0, .22);
}
.live_reg_notice {
    margin-bottom: .35rem;
    text-align: center;
    font-size: .64rem;
    line-height: 1.6;
    color: #3b5670;
}
.live_reg .write {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    padding: .42rem 0;
    border-bottom: 1px solid #e6ecf2;
}
.live_reg .a_name {
    -webkit-flex: 0 0 2.35rem;
    flex: 0 0 2.35rem;
    padding-right: .3rem;
    border-right: 1px solid #e6ecf2;
    font-size: .7rem;
    color: #1b2a3a;
    line-height: 1.6;
}
.live_reg .a_name i { margin-left: .1rem; color: #e8342d; font-style: normal; }
.live_reg input[type="text"] { margin-left: .32rem; }
.live_reg input[type="text"] {
    -webkit-flex: 1;
    flex: 1;
    width: 100%;
    height: 1.2rem;
    padding: 0;
    border: 0;
    outline: 0;
    background: transparent;
    font-family: inherit;
    font-size: .7rem;
    color: #1b2a3a;
}
.live_reg input[type="text"]::-webkit-input-placeholder { color: #9aa9b8; }
.live_reg input[type="text"]::placeholder { color: #9aa9b8; }

.live_reg .notice {
    margin-top: .42rem;
    text-align: center;
    font-size: .62rem;
    color: #8a99a8;
}
.live_reg .notice i { color: #e8342d; font-style: normal; }

#captcha { margin: 0 auto !important; min-height: .1rem; }

#btn2019 {
    width: 8.4rem;
    max-width: 100%;
    height: 1.16rem;
    margin: .35rem auto .1rem;
    padding: 0;
    border: 0;
    border-radius: .34rem;
    color: #fff;
    font-family: inherit;
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .06rem;
    cursor: pointer;
    background: -webkit-linear-gradient(top, var(--btn-b), var(--btn-a));
    background: linear-gradient(180deg, var(--btn-b), var(--btn-a));
    -webkit-box-shadow: 0 0 .55rem rgba(72, 120, 246, .85), inset 0 0 0 2px rgba(126, 168, 255, .35);
    box-shadow: 0 0 .55rem rgba(72, 120, 246, .85), inset 0 0 0 2px rgba(126, 168, 255, .35);
}
#btn2019:active { -webkit-transform: translateY(1px); transform: translateY(1px); }

.live_reg .notice_s,
.live_reg .notice_t {
    text-align: center;
    font-size: .62rem;
    line-height: 1.55;
    color: #4b6377;
}
.live_reg .notice_s { margin-top: .45rem; }

/* ---------- 9 往期活动回顾 ---------- */
.live_img_flex {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: .24rem;
    margin: 0;
    max-width: 100%;
}
.live_img_flex img {
    width: calc(50% - .12rem);
    height: auto;
    margin: 0;
    border-radius: .3rem;
    border: 1px solid var(--line);
}

/* ---------- 10 右下角悬浮报名按钮 ---------- */
.ui-fab {
    position: fixed;
    right: .5rem;
    bottom: 1.9rem;
    z-index: 1000;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    width: 1.6rem;
    height: 1.6rem;
    border-radius: 50%;
    background: #1899f3;
    -webkit-box-shadow: 0 .1rem .5rem rgba(24, 153, 243, .35), 0 0 0 1px rgba(255, 255, 255, .22) inset;
    box-shadow: 0 .1rem .5rem rgba(24, 153, 243, .35), 0 0 0 1px rgba(255, 255, 255, .22) inset;
}
.ui-fab svg {
    width: 1rem;
    height: 1rem;
    fill: #fff;
    stroke: none;
}
.ui-fab:active { -webkit-transform: scale(.94); transform: scale(.94); }

/* ---------- 底部 ---------- */
.footer {
    width: 100%;
    margin: 1.6rem auto 0;
    padding: 1rem .725rem 1.6rem;
    background: #03121f;
    border-top: 1px solid var(--line-soft);
    text-align: center;
    overflow: hidden;
}
.footer .live_footer { margin-bottom: .5rem; }
.footer .live_wechat {
    margin-bottom: .4rem;
    font-size: .64rem;
    color: #cfe3f3;
    line-height: 1.6;
}
.footer .live_wechat_text { display: inline-block; }
.footer .live_wechat_text img {
    width: 6rem;
    height: 6rem;
    margin: 0 auto;
    border-radius: .28rem;
    background: #fff;
    object-fit: contain;
}
.footer .ftbox {
    margin-top: .6rem;
    font-size: .58rem;
    line-height: 1.8;
    color: #7d93a8;
    word-break: break-word;
    overflow-wrap: break-word;
}
.footer .ftbox a { color: #7d93a8; }
.footer .ftbox img {
    display: inline-block;
    height: .7rem;
    width: auto;
    margin: .2rem .12rem 0;
}

/* ---------- 分享嘉宾：整块图片位 ---------- */
.ui-guest-photo {
    width: 100%;
    /*height: 18.6rem;*/
    margin-top: .3rem;
    border-radius: var(--radius);
    overflow: hidden;
    background: #06192a;
}
.ui-guest-photo img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: 100%;
    object-fit: cover;
    -o-object-fit: cover;
}

/* ---------- PC（≥1025px）：banner 通栏满屏，内容 750px 居中 ---------- */
@media screen and (min-width: 1025px) {
    html { background: #01060c; }
    body { background: var(--bg); padding-bottom: 1.2rem; }
    .live_banner { max-width: 100%; }
    .footer { width: 100%; max-width: 18.75rem; margin: 1.6rem auto 0; }
    .ui-regband { border-radius: .5rem; }
    .ui-fab { right: calc(50% - 9.375rem + .5rem); bottom: .9rem; }
}

/* ============ 报名成功弹层（layer 自定义 skin） ============ */
.layui-layer.ui-success-layer { border-radius: .6rem; overflow: hidden; box-shadow: 0 1.6rem 3rem rgba(0, 8, 18, .18); background: #fff; }
.layui-layer.ui-success-layer .layui-layer-content { padding: 0; background: #fff; }
.ui-success { padding: .62rem .5rem .16rem; text-align: center; }
.ui-success-ico { width: 1.5rem; height: 1.5rem; margin: 0 auto .3rem; border-radius: 50%; background: linear-gradient(135deg, #6a8bfa, #2f5ff0); box-shadow: 0 .3rem .9rem rgba(47, 95, 240, .32); display: -webkit-box; display: flex; -webkit-box-align: center; align-items: center; -webkit-box-pack: center; justify-content: center; }
.ui-success-ico svg { width: .78rem; height: .78rem; fill: none; stroke: #fff; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }
.ui-success-title { margin: 0 0 .1rem; font-size: .82rem; font-weight: 700; color: #16283c; letter-spacing: .02em; }
.ui-success-desc { margin: 0 0 .4rem; font-size: .62rem; color: #7b8a9c; }
.ui-success-phone { display: -webkit-box; display: flex; -webkit-box-align: center; align-items: center; -webkit-box-pack: center; justify-content: center; margin: 0 auto .3rem; padding: .3rem .35rem; border-radius: .45rem; background: #f2f7ff; border: 1px solid #dceafe; }
.ui-success-phone span { font-size: .58rem; color: #7b8a9c; margin-right: .28rem; }
.ui-success-phone strong { font-size: .78rem; font-weight: 700; color: #2f5ff0; letter-spacing: .04em; }
.ui-success-tip { margin: 0 0 .4rem; font-size: .58rem; color: #9aa8b8; }
.ui-success-warn { margin: 0 0 .16rem; font-size: .62rem; line-height: 1.7; color: #4a5c70; }
.ui-success-warn strong { color: #e8342d; font-weight: 600; }
.layui-layer.ui-success-layer .layui-layer-btn { padding: .3rem .5rem .58rem; text-align: center; background: #fff; border-top: 0; }
.layui-layer.ui-success-layer .layui-layer-btn a { display: inline-block; min-width: 4rem; margin: 0; padding: 0 .9rem; height: 1.3rem; line-height: 1.3rem; border: 0; border-radius: .5rem; background: linear-gradient(135deg, #6a8bfa, #2f5ff0); color: #fff; font-size: .72rem; font-weight: 600; letter-spacing: .02em; box-shadow: 0 .3rem .8rem rgba(47, 95, 240, .28); }
.layui-layer.ui-success-layer .layui-layer-btn a:hover { opacity: .92; color: #fff; }
.layui-layer.ui-success-layer .layui-layer-setwin { top: .3rem; right: .3rem; }
.layui-layer.ui-success-layer .layui-layer-setwin .layui-layer-close1 { opacity: .4; }


/* ============ 骨架屏 ============ */
.ui-skel {
    position: fixed;
    top: 0; right: 0; bottom: 0; left: 0;
    z-index: 9999;
    background: var(--bg, #010d19);
    overflow: hidden;
    opacity: 1;
    -webkit-transition: opacity .34s ease;
    transition: opacity .34s ease;
}
.ui-skel.is-out { opacity: 0; pointer-events: none; }
.ui-skel-hero {
    height: 26vh;
    background-color: #071827;
    background-image: -webkit-linear-gradient(left, #071827 0%, #0f2a41 50%, #071827 100%);
    background-image: linear-gradient(90deg, #071827 0%, #0f2a41 50%, #071827 100%);
    background-size: 220% 100%;
    -webkit-animation: uiShimmer 1.5s linear infinite;
    animation: uiShimmer 1.5s linear infinite;
}
.ui-skel-body { padding: .95rem .72rem 0; }
.ui-skel-title {
    width: 5.2rem;
    height: .6rem;
    margin: 0 auto .62rem;
    border-radius: .3rem;
    background-color: #071827;
    background-image: -webkit-linear-gradient(left, #071827 0%, #0f2a41 50%, #071827 100%);
    background-image: linear-gradient(90deg, #071827 0%, #0f2a41 50%, #071827 100%);
    background-size: 220% 100%;
    -webkit-animation: uiShimmer 1.5s linear infinite;
    animation: uiShimmer 1.5s linear infinite;
}
.ui-skel-card {
    height: 4.6rem;
    margin: 0 0 .55rem;
    border-radius: .4rem;
    border: 1px solid #0e2739;
    background-color: #061523;
    background-image: -webkit-linear-gradient(left, #061523 0%, #0e2a3f 50%, #061523 100%);
    background-image: linear-gradient(90deg, #061523 0%, #0e2a3f 50%, #061523 100%);
    background-size: 220% 100%;
    -webkit-animation: uiShimmer 1.5s linear infinite;
    animation: uiShimmer 1.5s linear infinite;
}
.ui-skel-card-lg { height: 7.6rem; }
@-webkit-keyframes uiShimmer {
    0% { background-position: 120% 0; }
    100% { background-position: -120% 0; }
}
@keyframes uiShimmer {
    0% { background-position: 120% 0; }
    100% { background-position: -120% 0; }
}

/* ============ 报名表单：行内错误 + 提交态 ============ */
.ui-err {
    display: none;
    margin: -.12rem 0 .34rem;
    padding-left: 2.67rem;
    font-size: .58rem;
    line-height: 1.5;
    color: #e8342d;
}
.ui-err.on { display: block; }
.live_reg .write.is-error { border-bottom-color: #f0b3ae; }
.live_reg .write.is-error .a_name { color: #e8342d; }
.live_reg .write.is-error .a_name i { color: #e8342d; }
.live_reg .write.is-error input[type="text"]::-webkit-input-placeholder { color: #f2b8b4; }
.live_reg .write.is-error input[type="text"]::placeholder { color: #f2b8b4; }
.ui-form-tip {
    display: none;
    margin: .25rem 0 0;
    padding: .34rem .45rem;
    border-radius: .4rem;
    background: #fff2f0;
    border: 1px solid #ffd9d5;
    font-size: .6rem;
    line-height: 1.6;
    color: #c9352f;
    text-align: center;
}
.ui-form-tip.on { display: block; }
.ui-submit-wrap { text-align: center; }
.signform_btn.is-loading { opacity: .72; cursor: default; }

/* ============ 滚动入场动画（仅「分享嘉宾」以上模块） ============
   参数对齐 caishanghui.net：opacity 0→1 + y 20px→0，0.8s easeOut，
   只播一次；列表项按 index * 0.1s 依次延迟（最长 0.6s）。
   ============ */
.ui-anim {
    opacity: 0;
    -webkit-transition: opacity .7s ease-out;
    transition: opacity .7s ease-out;
}
.ui-anim.is-in { opacity: 1; }
@-webkit-keyframes uiRise {
    from { opacity: 0; -webkit-transform: translate3d(0, .5rem, 0); }
    to { opacity: 1; -webkit-transform: translate3d(0, 0, 0); }
}
@keyframes uiRise {
    from { opacity: 0; transform: translate3d(0, .5rem, 0); }
    to { opacity: 1; transform: translate3d(0, 0, 0); }
}
@-webkit-keyframes uiPop {
    from { opacity: 0; -webkit-transform: scale(.9); }
    to { opacity: 1; -webkit-transform: scale(1); }
}
@keyframes uiPop {
    from { opacity: 0; transform: scale(.9); }
    to { opacity: 1; transform: scale(1); }
}
.ui-anim.is-in .ui-head,
.ui-anim.is-in .ui-card,
.ui-anim.is-in .live_agebox li,
.ui-anim.is-in .ui-qr-line,
.ui-anim.is-in .ui-qr-tip {
    -webkit-animation: uiRise .8s cubic-bezier(0, 0, .58, 1) both;
    animation: uiRise .8s cubic-bezier(0, 0, .58, 1) both;
}
.ui-anim.is-in .ui-qr-img {
    -webkit-animation: uiPop .8s cubic-bezier(0, 0, .58, 1) both;
    animation: uiPop .8s cubic-bezier(0, 0, .58, 1) both;
}
.ui-anim.is-in .ui-card:nth-of-type(2),
.ui-anim.is-in .live_agebox li:nth-child(2) { -webkit-animation-delay: .1s; animation-delay: .1s; }
.ui-anim.is-in .ui-card:nth-of-type(3),
.ui-anim.is-in .live_agebox li:nth-child(3) { -webkit-animation-delay: .2s; animation-delay: .2s; }
.ui-anim.is-in .ui-card:nth-of-type(4),
.ui-anim.is-in .live_agebox li:nth-child(4) { -webkit-animation-delay: .3s; animation-delay: .3s; }
.ui-anim.is-in .ui-card:nth-of-type(5),
.ui-anim.is-in .live_agebox li:nth-child(5) { -webkit-animation-delay: .4s; animation-delay: .4s; }
.ui-anim.is-in .ui-card:nth-of-type(6),
.ui-anim.is-in .live_agebox li:nth-child(6) { -webkit-animation-delay: .5s; animation-delay: .5s; }
.ui-anim.is-in .ui-card:nth-of-type(n+7),
.ui-anim.is-in .live_agebox li:nth-child(n+7) { -webkit-animation-delay: .6s; animation-delay: .6s; }
@media (prefers-reduced-motion: reduce) {
    .ui-anim,
    .ui-anim.is-in .ui-head,
    .ui-anim.is-in .ui-card,
    .ui-anim.is-in .ui-qr-img,
    .ui-anim.is-in .ui-qr-line,
    .ui-anim.is-in .ui-qr-tip,
    .ui-anim.is-in .live_agebox li {
        opacity: 1 !important;
        -webkit-animation: none !important;
        animation: none !important;
        -webkit-transition: none !important;
        transition: none !important;
        -webkit-transform: none !important;
        transform: none !important;
    }
}
