/* ============================================
   VideoPro Iconfont 图标库
   基于 Unicode 符号的轻量图标系统
   用法：<span class="vp-icon vp-icon-xxx"></span>
   所有 emoji 字符后加 \FE0E 强制文本样式（单色）渲染
   ============================================ */

.vp-icon {
    display: inline-block;
    font-family: 'Segoe UI Symbol', 'Apple Symbols', 'Noto Sans Symbols', 'Segoe UI', sans-serif;
    font-style: normal;
    font-weight: normal;
    line-height: 1;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    vertical-align: middle;
    color: inherit;
}

/* ===== 媒体播放类 ===== */
.vp-icon-video::before { content: "\1F3AC\FE0E"; }
.vp-icon-video-alt::before { content: "\1F4FA\FE0E"; }
.vp-icon-play::before { content: "\25B6"; }
.vp-icon-pause::before { content: "\23F8\FE0E"; }
.vp-icon-audio::before { content: "\1F3B5\FE0E"; }
.vp-icon-camera::before { content: "\1F4F7\FE0E"; }

/* ===== 互动反馈类 ===== */
.vp-icon-eye::before { content: "\1F441\FE0E"; }
.vp-icon-like::before { content: "\1F44D\FE0E"; }
.vp-icon-dislike::before { content: "\1F44E\FE0E"; }
.vp-icon-star::before { content: "\2B50\FE0E"; }
.vp-icon-star-half::before { content: "\1F31F\FE0E"; }
.vp-icon-heart::before { content: "\2764\FE0E"; }
.vp-icon-fire::before { content: "\1F525\FE0E"; }
.vp-icon-share::before { content: "\1F4E4\FE0E"; }
.vp-icon-flag::before { content: "\1F6A9\FE0E"; }
.vp-icon-comments::before { content: "\1F4AC\FE0E"; }
.vp-icon-download::before { content: "\1F4E5\FE0E"; }

/* ===== 信息导航类 ===== */
.vp-icon-calendar::before { content: "\1F4C5\FE0E"; }
.vp-icon-clock::before { content: "\23F1\FE0E"; }
.vp-icon-tag::before { content: "\1F3F7\FE0E"; }
.vp-icon-search::before { content: "\1F50D\FE0E"; }
.vp-icon-home::before { content: "\1F3E0\FE0E"; }
.vp-icon-users::before { content: "\1F465\FE0E"; }
.vp-icon-link::before { content: "\1F517\FE0E"; }
.vp-icon-megaphone::before { content: "\1F4E2\FE0E"; }
.vp-icon-email::before { content: "\2709\FE0E"; }
.vp-icon-rss::before { content: "\1F4E1\FE0E"; }

/* ===== 箭头操作类 ===== */
.vp-icon-arrow-right::before { content: "\27A1\FE0E"; }
.vp-icon-arrow-left::before { content: "\2B05\FE0E"; }
.vp-icon-arrow-up::before { content: "\2B06\FE0E"; }
.vp-icon-arrow-down::before { content: "\2B07\FE0E"; }
.vp-icon-refresh::before { content: "\1F504\FE0E"; }
.vp-icon-close::before { content: "\2716"; }
.vp-icon-menu::before { content: "\2630"; }
.vp-icon-plus::before { content: "\2795\FE0E"; }
.vp-icon-minus::before { content: "\2796\FE0E"; }
.vp-icon-check::before { content: "\2714"; }
.vp-icon-edit::before { content: "\270F\FE0E"; }
.vp-icon-trash::before { content: "\1F5D1\FE0E"; }
.vp-icon-settings::before { content: "\2699\FE0E"; }
.vp-icon-info::before { content: "\2139\FE0E"; }
.vp-icon-warning::before { content: "\26A0\FE0E"; }

/* ===== 主题切换类 ===== */
.vp-icon-moon::before { content: "\263E\FE0E"; }
.vp-icon-sun::before { content: "\2600\FE0E"; }

/* ===== 会员系统类 ===== */
.vp-icon-user::before { content: "\1F464\FE0E"; }
.vp-icon-login::before { content: "\1F511\FE0E"; }
.vp-icon-logout::before { content: "\1F6AA\FE0E"; }
.vp-icon-register::before { content: "\270F\FE0E"; }
.vp-icon-vip::before { content: "\1F451\FE0E"; }
.vp-icon-crown::before { content: "\1F451\FE0E"; }
.vp-icon-favorite::before { content: "\2764\FE0E"; }
.vp-icon-history::before { content: "\1F4DC\FE0E"; }
.vp-icon-password::before { content: "\1F512\FE0E"; }
.vp-icon-lock::before { content: "\1F512\FE0E"; }
.vp-icon-unlock::before { content: "\1F513\FE0E"; }
.vp-icon-id-card::before { content: "\1F4B3\FE0E"; }
.vp-icon-coin::before { content: "\1FA99\FE0E"; }
.vp-icon-gift::before { content: "\1F381\FE0E"; }
.vp-icon-dashboard::before { content: "\1F4CA\FE0E"; }
.vp-icon-upload::before { content: "\2B06\FE0E"; }
.vp-icon-avatar::before { content: "\1F464\FE0E"; }

/* ===== 视频内容类 ===== */
.vp-icon-episode::before { content: "\1F4FD\FE0E"; }
.vp-icon-list::before { content: "\1F4CB\FE0E"; }
.vp-icon-grid::before { content: "\229E"; }
.vp-icon-fullscreen::before { content: "\26F6\FE0E"; }
.vp-icon-volume::before { content: "\1F50A\FE0E"; }
.vp-icon-mute::before { content: "\1F507\FE0E"; }
.vp-icon-subtitle::before { content: "\1F4AC\FE0E"; }
.vp-icon-speed::before { content: "\26A1\FE0E"; }
.vp-icon-quality::before { content: "\1F4F6\FE0E"; }
.vp-icon-danmaku::before { content: "\1F4AC\FE0E"; }
.vp-icon-next::before { content: "\23ED\FE0E"; }
.vp-icon-prev::before { content: "\23EE\FE0E"; }
.vp-icon-replay::before { content: "\1F501\FE0E"; }

/* ===== 排行分类类 ===== */
.vp-icon-ranking::before { content: "\1F3C6\FE0E"; }
.vp-icon-trophy::before { content: "\1F3C6\FE0E"; }
.vp-icon-medal::before { content: "\1F3C5\FE0E"; }
.vp-icon-hot::before { content: "\1F525\FE0E"; }
.vp-icon-new::before { content: "\1F195\FE0E"; }
.vp-icon-recommend::before { content: "\2728\FE0E"; }
.vp-icon-trending::before { content: "\1F4C8\FE0E"; }
.vp-icon-category::before { content: "\1F4C2\FE0E"; }
.vp-icon-folder::before { content: "\1F4C2\FE0E"; }

/* ===== 电商交易类 ===== */
.vp-icon-cart::before { content: "\1F6D2\FE0E"; }
.vp-icon-money::before { content: "\1F4B0\FE0E"; }
.vp-icon-card::before { content: "\1F4B3\FE0E"; }
.vp-icon-diamond::before { content: "\1F48E\FE0E"; }

/* ===== 设备界面类 ===== */
.vp-icon-mobile::before { content: "\1F4F1\FE0E"; }
.vp-icon-tablet::before { content: "\1F4F2\FE0E"; }
.vp-icon-desktop::before { content: "\1F5A5\FE0E"; }
.vp-icon-tv::before { content: "\1F4FA\FE0E"; }
.vp-icon-phone::before { content: "\1F4DE\FE0E"; }
.vp-icon-map::before { content: "\1F5FA\FE0E"; }
.vp-icon-location::before { content: "\1F4CD\FE0E"; }
.vp-icon-globe::before { content: "\1F30D\FE0E"; }
.vp-icon-language::before { content: "\1F310\FE0E"; }

/* ===== 其他常用 ===== */
.vp-icon-bell::before { content: "\1F514\FE0E"; }
.vp-icon-bookmark::before { content: "\1F516\FE0E"; }
.vp-icon-cloud::before { content: "\2601\FE0E"; }
.vp-icon-code::before { content: "\1F4BB\FE0E"; }
.vp-icon-question::before { content: "\2753\FE0E"; }
.vp-icon-exclamation::before { content: "\2757\FE0E"; }
.vp-icon-lightbulb::before { content: "\1F4A1\FE0E"; }
.vp-icon-rocket::before { content: "\1F680\FE0E"; }
.vp-icon-target::before { content: "\1F3AF\FE0E"; }
.vp-icon-bug::before { content: "\1F41B\FE0E"; }
.vp-icon-shield::before { content: "\1F6E1\FE0E"; }
.vp-icon-key::before { content: "\1F511\FE0E"; }
.vp-icon-paperclip::before { content: "\1F4CE\FE0E"; }
.vp-icon-hourglass::before { content: "\23F3\FE0E"; }
.vp-icon-calendar-check::before { content: "\1F5D3\FE0E"; }

/* ===== 社交平台类 ===== */
.vp-icon-weibo::before { content: "\1F426\FE0E"; }
.vp-icon-bilibili::before { content: "\1F4FA\FE0E"; }
.vp-icon-douyin::before { content: "\1F3B5\FE0E"; }
.vp-icon-youtube::before { content: "\1F3AC\FE0E"; }
.vp-icon-twitter::before { content: "\1F426\FE0E"; }
.vp-icon-facebook::before { content: "\1F4D8\FE0E"; }
.vp-icon-instagram::before { content: "\1F4F7\FE0E"; }
.vp-icon-telegram::before { content: "\2709\FE0E"; }

/* ===== 尺寸变体 ===== */
.vp-icon-sm { font-size: 0.85em; }
.vp-icon-lg { font-size: 1.3em; }
.vp-icon-xl { font-size: 1.6em; }
.vp-icon-2x { font-size: 2em; }

/* ===== 动画 ===== */
.vp-icon-spin {
    animation: vp-icon-spin 1s linear infinite;
}

@keyframes vp-icon-spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.vp-icon-pulse {
    animation: vp-icon-pulse 1.5s ease-in-out infinite;
}

@keyframes vp-icon-pulse {
    0%, 100% { transform: scale(1); opacity: 1; }
    50% { transform: scale(1.15); opacity: 0.8; }
}

.vp-icon-bounce {
    animation: vp-icon-bounce 1s ease-in-out infinite;
}

@keyframes vp-icon-bounce {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-4px); }
}
