/* ============================================
   小微兔任务系统 - 吉祥物兔子Logo动画
   白色渐变身体 + 粉色内耳 + 眨眼 + 奔跑
   ============================================ */

/* 容器 */
.wei-rabbit {
    display:inline-block; position:relative;
    width:36px; height:32px;
    flex-shrink:0;
}
/* 尺寸变体 */
.wei-rabbit.sm { width:28px; height:24px; }
.wei-rabbit.lg { width:40px; height:34px; }

/* ---- 阴影 ---- */
.wei-rabbit .rabbit-shadow {
    position:absolute; bottom:0; left:50%; transform:translateX(-50%);
    width:60%; height:5px; border-radius:50%;
    background:rgba(0,0,0,.18);
    animation:shadowPulse 1.2s ease-in-out infinite;
}
@keyframes shadowPulse {
    0%, 100% { transform:translateX(-50%) scale(1); opacity:.18; }
    50% { transform:translateX(-50%) scale(.65); opacity:.1; }
}

/* ---- 整体跳动 ---- */
.wei-rabbit .rabbit-body-group {
    position:absolute; bottom:4px; left:0; right:0;
    animation:rabbitBounce 1.2s ease-in-out infinite;
    transform-origin:bottom center;
}
@keyframes rabbitBounce {
    0%, 100% { transform:translateY(0); }
    50% { transform:translateY(-4px); }
}

/* ---- 耳朵 ---- */
.wei-rabbit .ear {
    position:absolute; top:-10px; width:7px; height:16px;
    border-radius:50% 50% 40% 40%;
    background:linear-gradient(to bottom, #F5F5F5, #E0E0E0);
    border:1px solid rgba(0,0,0,.06);
    z-index:1;
}
.wei-rabbit .ear-left { left:8px; transform:rotate(-8deg); animation:earWiggleL 2s ease-in-out infinite; }
.wei-rabbit .ear-right { right:8px; transform:rotate(8deg); animation:earWiggleR 2s ease-in-out infinite; }
.wei-rabbit .ear::after {
    content:''; position:absolute; top:3px; left:50%; transform:translateX(-50%);
    width:3px; height:9px; border-radius:50%;
    background:#FFB6C1;
}
@keyframes earWiggleL {
    0%, 100% { transform:rotate(-8deg); }
    50% { transform:rotate(-4deg); }
}
@keyframes earWiggleR {
    0%, 100% { transform:rotate(8deg); }
    50% { transform:rotate(12deg); }
}

/* ---- 身体 ---- */
.wei-rabbit .body {
    position:relative; margin:5px auto 0;
    width:24px; height:18px;
    border-radius:45% 45% 42% 42%;
    background:linear-gradient(135deg, #F5F5F5 20%, #E0E0E0 100%);
    border:1px solid rgba(0,0,0,.05);
    box-shadow:inset 0 -3px 6px rgba(0,0,0,.04), 0 1px 3px rgba(0,0,0,.08);
}

/* ---- 眼睛 ---- */
.wei-rabbit .eye {
    position:absolute; top:6px; width:3.5px; height:3.5px;
    border-radius:50%; background:#1a1a1a; z-index:2;
}
.wei-rabbit .eye-left { left:5px; }
.wei-rabbit .eye-right { right:5px; }
.wei-rabbit .eye::after {
    content:''; position:absolute; top:.5px; left:.5px;
    width:1.5px; height:1.5px; border-radius:50%; background:#fff;
}
/* 3秒眨眼 */
.wei-rabbit .eye {
    animation:blink 3s ease-in-out infinite;
}
@keyframes blink {
    0%, 92%, 100% { transform:scaleY(1); }
    95% { transform:scaleY(.1); }
}

/* ---- 鼻子 ---- */
.wei-rabbit .nose {
    position:absolute; top:10px; left:50%; transform:translateX(-50%);
    width:2.5px; height:2px; border-radius:50%;
    background:#FFB6C1; z-index:2;
}

/* ---- 腿 ---- */
.wei-rabbit .leg {
    position:absolute; bottom:-3px; width:5px; height:7px;
    border-radius:40% 40% 50% 50%;
    background:linear-gradient(to bottom, #E8E8E8, #D0D0D0);
    z-index:0;
}
.wei-rabbit .leg-left { left:4px; }
.wei-rabbit .leg-right { right:4px; }
/* 奔跑动画：默认轻微摆动 */
.wei-rabbit .leg-left { animation:legRunL 1.2s ease-in-out infinite; }
.wei-rabbit .leg-right { animation:legRunR 1.2s ease-in-out infinite; }
@keyframes legRunL {
    0%, 100% { transform:rotate(0deg) translateY(0); }
    25% { transform:rotate(-15deg) translateY(-1px); }
    75% { transform:rotate(10deg) translateY(0); }
}
@keyframes legRunR {
    0%, 100% { transform:rotate(0deg) translateY(0); }
    25% { transform:rotate(10deg) translateY(0); }
    75% { transform:rotate(-15deg) translateY(-1px); }
}

/* ---- 尾巴 ---- */
.wei-rabbit .tail {
    position:absolute; bottom:6px; right:-4px;
    width:7px; height:7px; border-radius:50%;
    background:radial-gradient(circle at 30% 30%, #fff, #E0E0E0);
    border:1px solid rgba(0,0,0,.04);
    animation:tailWag 1.6s ease-in-out infinite;
}
@keyframes tailWag {
    0%, 100% { transform:rotate(0) scale(1); }
    50% { transform:rotate(10deg) scale(1.1); }
}

/* ---- 小尺寸适配 ---- */
.wei-rabbit.sm .ear { top:-8px; width:5.5px; height:13px; }
.wei-rabbit.sm .ear::after { width:2px; height:7px; }
.wei-rabbit.sm .body { width:20px; height:15px; }
.wei-rabbit.sm .eye { width:3px; height:3px; top:5px; }
.wei-rabbit.sm .eye::after { width:1px; height:1px; }
.wei-rabbit.sm .nose { top:8px; }
.wei-rabbit.sm .leg { width:4px; height:6px; }
.wei-rabbit.sm .tail { width:6px; height:6px; right:-3px; }

.wei-rabbit.lg .ear { top:-12px; width:8px; height:18px; }
.wei-rabbit.lg .ear::after { width:3.5px; height:10px; }
.wei-rabbit.lg .body { width:27px; height:20px; }
.wei-rabbit.lg .eye { width:4px; height:4px; }
.wei-rabbit.lg .nose { top:11px; width:3px; height:2.5px; }
.wei-rabbit.lg .leg { width:6px; height:8px; }
.wei-rabbit.lg .tail { width:8px; height:8px; }

/* ---- 悬停加速奔跑 ---- */
.wei-rabbit:hover .leg-left { animation-duration:.4s; }
.wei-rabbit:hover .leg-right { animation-duration:.4s; }
.wei-rabbit:hover .rabbit-body-group { animation-duration:.5s; }
.wei-rabbit:hover .rabbit-shadow { animation-duration:.5s; }

/* 深色背景上的兔子（侧边栏/登录页/导航栏/页脚） */
.sidebar .wei-rabbit,
.login-page .wei-rabbit,
.navbar .wei-rabbit,
.footer .wei-rabbit,
.install-header .wei-rabbit { filter:drop-shadow(0 1px 2px rgba(0,0,0,.2)); }