/* 品牌扩展包论坛区样式 */
.yuce-forum--brand-pack .yuce-header-table,
.yuce-forum--brand-pack .content {
    display: none !important;
}

#yuceForumBrandMount {
    width: 100%;
}

.bp-loading,
.bp-error {
    text-align: center;
    padding: 24px 12px;
    color: var(--brand-muted, #666);
    font-size: 14px;
}

.bp-forum {
    padding: 8px 6px 20px;
}

.bp-forum-intro {
    text-align: center;
    margin: 10px 0 16px;
    padding: 12px;
    border-radius: 10px;
    background: var(--brand-panel-bg, linear-gradient(135deg, #fff8e6, #fff));
    border: 1px solid var(--brand-border, #f0d9a8);
}

.bp-forum-intro h2 {
    font-size: 17px;
    color: var(--brand-primary, #c41e3a);
    margin-bottom: 4px;
}

.bp-forum-intro p {
    font-size: 12px;
    color: var(--brand-muted, #888);
}

.bp-module {
    margin-bottom: 14px;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    border: 1px solid var(--brand-border, #eee);
    background: #fff;
}

.bp-module-head {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 12px;
    background: var(--brand-module-head, linear-gradient(90deg, var(--brand-primary, #c41e3a), var(--brand-accent, #e8a317)));
    color: #fff;
}

.bp-module-icon {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.25);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    flex-shrink: 0;
}

.bp-module-titles {
    flex: 1;
    min-width: 0;
}

.bp-module-title {
    font-size: 15px;
    font-weight: 700;
    line-height: 1.3;
}

.bp-module-sub {
    font-size: 11px;
    opacity: 0.9;
    margin-top: 2px;
}

.bp-module-cat {
    font-size: 10px;
    padding: 2px 6px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.2);
    white-space: nowrap;
}

.bp-module-body {
    padding: 8px 10px 10px;
}

.bp-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 13px;
}

.bp-table th,
.bp-table td {
    padding: 6px 4px;
    border-bottom: 1px dashed #eee;
    text-align: center;
}

.bp-table th {
    background: var(--brand-table-head, #fafafa);
    font-weight: 600;
    color: var(--brand-primary, #333);
}

.bp-row.is-hit .bp-col-hit {
    color: #0a8f4c;
    font-weight: 700;
}

.bp-row.is-miss .bp-col-hit {
    color: #999;
}

.bp-tag {
    display: inline-block;
    margin-right: 4px;
    padding: 0 4px;
    border-radius: 3px;
    background: var(--brand-tag-bg, #fff3cd);
    color: var(--brand-tag-color, #856404);
    font-size: 11px;
}

.bp-predict {
    font-weight: 600;
    color: var(--brand-predict, #222);
}

.bp-predict--wrap {
    display: block;
    white-space: normal;
    word-break: break-all;
    line-height: 1.55;
    text-align: left;
    margin-top: 2px;
}

.bp-col-predict {
    white-space: normal;
    word-break: break-all;
    line-height: 1.5;
    text-align: left;
    max-width: 0;
}

/* strip */
.bp-strip-item {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    padding: 7px 8px;
    margin-bottom: 4px;
    border-radius: 6px;
    background: #f8f9fb;
    font-size: 12px;
}

.bp-strip-item.is-hit {
    background: #e8f8ef;
    border-left: 3px solid #0a8f4c;
}

/* grid */
.bp-grid-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 6px;
}

.bp-grid-cell {
    padding: 8px;
    border-radius: 8px;
    background: #f5f6fa;
    font-size: 12px;
    text-align: center;
}

.bp-grid-cell.is-hit {
    background: #fff8e1;
    border: 1px solid var(--brand-accent, #e8a317);
}

/* timeline */
.bp-timeline {
    list-style: none;
    margin: 0;
    padding: 0 0 0 12px;
    border-left: 2px solid var(--brand-border, #ddd);
}

.bp-timeline-item {
    position: relative;
    padding: 6px 0 6px 12px;
    font-size: 12px;
}

.bp-timeline-dot {
    position: absolute;
    left: -17px;
    top: 10px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--brand-primary, #c41e3a);
}

.bp-timeline-item.is-hit .bp-timeline-dot {
    background: #0a8f4c;
}

/* bubble */
.bp-bubbles {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.bp-bubble {
    padding: 6px 10px;
    border-radius: 999px;
    background: var(--brand-bubble-bg, #eef2ff);
    font-size: 12px;
}

.bp-bubble.is-hit {
    background: #d4edda;
}

/* chip */
.bp-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}

.bp-chip {
    display: inline-block;
    padding: 4px 8px;
    border-radius: 4px;
    background: #f0f0f0;
    font-size: 11px;
}

.bp-chip.is-hit {
    background: var(--brand-chip-hit, #ffe082);
    font-weight: 600;
}

/* style accents */
.bp-style-card-gold .bp-module-head { background: linear-gradient(90deg, #b8860b, #ffd700); color: #4a3000; }
.bp-style-card-red .bp-module-head { background: linear-gradient(90deg, #b71c1c, #e53935); }
.bp-style-strip-blue .bp-module-head { background: linear-gradient(90deg, #1565c0, #42a5f5); }
.bp-style-grid-green .bp-module-head { background: linear-gradient(90deg, #2e7d32, #66bb6a); }
.bp-style-timeline-purple .bp-module-head { background: linear-gradient(90deg, #6a1b9a, #ab47bc); }
.bp-style-bubble-orange .bp-module-head { background: linear-gradient(90deg, #e65100, #ff9800); }
.bp-style-ribbon-dark .bp-module-head { background: linear-gradient(90deg, #263238, #455a64); }
.bp-style-chip-light .bp-module-head { background: linear-gradient(90deg, #546e7a, #78909c); }

@media (max-width: 480px) {
    .bp-module-title { font-size: 14px; }
    .bp-table { font-size: 12px; }
    .bp-grid-list { grid-template-columns: 1fr; }
}
