/* Lucide 图标 · 专业体育数据站风格 */
.ico, [data-lucide] {
    display: inline-block;
    width: 1.05em;
    height: 1.05em;
    vertical-align: -0.15em;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    fill: none;
    flex-shrink: 0;
}
.ico-sm, .ico-sm[data-lucide] { width: 14px; height: 14px; }
.ico-md, .ico-md[data-lucide] { width: 18px; height: 18px; }
.ico-lg, .ico-lg[data-lucide] { width: 22px; height: 22px; }
.ico-xl, .ico-xl[data-lucide] { width: 28px; height: 28px; }

.wc-nav-btn, .mobile-nav-btn, .filter-tab, .picks-tab {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.metric-icon [data-lucide],
.metric-icon svg {
    width: 20px;
    height: 20px;
    opacity: 0.85;
}
.metric-icon.live-ico { color: var(--live); }

.host-flag {
    width: 36px;
    height: 24px;
    object-fit: cover;
    border-radius: 3px;
    box-shadow: 0 1px 4px rgba(0,0,0,.35);
    border: 1px solid rgba(255,255,255,.12);
}
.host-flags {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-top: 14px;
}
.host-flags span {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    font-size: 0.75rem;
    color: var(--text-muted);
}

.wc-brand-mark {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    object-fit: contain;
}

.hero-badge {
    background: rgba(255,255,255,.06) !important;
    color: var(--text) !important;
    border: 1px solid var(--border) !important;
    font-weight: 600 !important;
    letter-spacing: 0.5px !important;
}
.hero-badge [data-lucide] { color: var(--wc-gold); }

.empty-state .state-icon {
    width: 48px;
    height: 48px;
    margin: 0 auto 12px;
    opacity: 0.45;
    color: var(--text-muted);
}

.match-group::before {
    content: '';
    display: inline-block;
    width: 14px;
    height: 14px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c9a227' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9H4.5a2.5 2.5 0 0 1 0-5H6'/%3E%3Cpath d='M18 9h1.5a2.5 2.5 0 0 0 0-5H18'/%3E%3Cpath d='M4 22h16'/%3E%3Cpath d='M10 14.66V17c0 .55-.47.98-.97 1.21C7.85 18.75 7 20 7 22'/%3E%3Cpath d='M14 14.66V17c0 .55.47.98.97 1.21C16.15 18.75 17 20 17 22'/%3E%3Cpath d='M18 2H6v7a6 6 0 0 0 12 0V2Z'/%3E%3C/svg%3E") center/contain no-repeat;
    flex-shrink: 0;
}

.lottery-brand::before {
    content: '';
    display: inline-block;
    width: 16px;
    height: 16px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff6b6b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 9a3 3 0 0 1 0 6v2a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-2a3 3 0 0 1 0-6V7a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2Z'/%3E%3Cpath d='M13 5v2'/%3E%3Cpath d='M13 17v2'/%3E%3Cpath d='M13 11v2'/%3E%3C/svg%3E") center/contain no-repeat;
}

.picks-category-title [data-lucide] {
    width: 18px;
    height: 18px;
    color: var(--wc-gold);
    flex-shrink: 0;
}

.live-dot-inline {
    display: inline-block;
    padding: 1px 6px;
    border-radius: 4px;
    background: var(--live);
    color: #fff;
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.5px;
    margin-right: 4px;
    vertical-align: middle;
}

.bot-avatar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: rgba(255,255,255,.08);
    border: 1px solid var(--border);
    font-size: 0.62rem;
    font-weight: 700;
    color: var(--text-muted);
    margin-right: 4px;
    flex-shrink: 0;
}

.live-card-thumb .thumb-fallback {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    color: var(--text-muted);
    opacity: 0.5;
}
.live-card-thumb .thumb-fallback [data-lucide] {
    width: 28px;
    height: 28px;
}

.champ-flag {
    width: 20px;
    height: 14px;
    border-radius: 2px;
    vertical-align: middle;
    margin-right: 4px;
    object-fit: cover;
}

.btn-refresh svg, .btn-refresh [data-lucide] {
    width: 18px;
    height: 18px;
}
