/* 首页新澳论坛预测区 — 与玩法页风格一致 */
#yuceForumRoot,
#sxzt3 .yuce-forum,
.yuce-forum {
    font-family: "PingFang SC", "Microsoft YaHei", sans-serif;
    font-size: 18px;
    color: #333;
}

.yuce-forum .yuce-forum-banner {
    width: 100%;
    margin-bottom: 14px;
}

.yuce-forum .yuce-forum-banner-inner {
    position: relative;
    width: 100%;
    line-height: 0;

    /*
     * ============================================================
     * bg1 头图文字定位 — 在此微调（改下面变量即可）
     * 文件：skin/yuce-forum.css
     * top/left 为区域中心点，单位 %（相对整张 bg1.png 宽高）
     * offset-y：正值=文字向下，负值=向上（仅微调上下，不影响布局）
     * width/height：文字可显示区域大小
     * font-size：字号
     * ============================================================
     */
    --sishen-draw-top: 15.8%;
    --sishen-draw-left: 50%;
    --sishen-draw-offset-y: -5px;
    --sishen-draw-width: 74%;
    --sishen-draw-height: 6%;
    --sishen-draw-font: clamp(8px, 2.2vw, 12px);

    --sishen-5x-top: 50.8%;
    --sishen-5x-left: 24%;
    --sishen-5x-offset-y: -9px;
    --sishen-5x-width: 17%;
    --sishen-5x-height: 5%;
    --sishen-5x-font: clamp(9px, 2.5vw, 14px);

    --sishen-3x-top: 50.8%;
    --sishen-3x-left: 86%;
    --sishen-3x-offset-y: -9px;
    --sishen-3x-width: 17%;
    --sishen-3x-height: 5%;
    --sishen-3x-font: clamp(9px, 2.5vw, 14px);

    --sishen-1x-top: 91.2%;
    --sishen-1x-left: 28%;
    --sishen-1x-offset-y: -7px;
    --sishen-1x-width: 17%;
    --sishen-1x-height: 5%;
    --sishen-1x-font: clamp(10px, 2.8vw, 15px);

    --sishen-5m-top: 91.2%;
    --sishen-5m-left: 53.5%;
    --sishen-5m-offset-y: -6px;
    --sishen-5m-width: 20%;
    --sishen-5m-height: 5%;
    --sishen-5m-font: clamp(6px, 1.8vw, 9px);

    --sishen-10m-top: 91.5%;
    --sishen-10m-left: 80%;
    --sishen-10m-offset-y: -8px;
    --sishen-10m-width: 22%;
    --sishen-10m-height: 6.5%;
    --sishen-10m-font: clamp(6px, 1.8vw, 9px);
}

.yuce-forum .yuce-forum-banner-img {
    display: block;
    width: 100%;
    height: auto;
}

.yuce-forum .yuce-forum-banner-overlay {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

.yuce-forum .yuce-banner-cell {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 0 2px;
    box-sizing: border-box;
    font-weight: 700;
    color: #6b1a10;
    line-height: 1.15;
    word-break: keep-all;
    white-space: nowrap;
    transform: translate(-50%, calc(-50% + var(--sishen-cell-offset-y, 0px)));
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.45);
}

/* 各区域样式（位置见上方 .yuce-forum-banner-inner 内变量） */
.yuce-forum .yuce-banner-draw {
    top: var(--sishen-draw-top);
    left: var(--sishen-draw-left);
    --sishen-cell-offset-y: var(--sishen-draw-offset-y);
    width: var(--sishen-draw-width);
    height: var(--sishen-draw-height);
    font-size: var(--sishen-draw-font);
    letter-spacing: 0.01em;
    white-space: normal;
}

.yuce-forum .yuce-banner-5x {
    top: var(--sishen-5x-top);
    left: var(--sishen-5x-left);
    --sishen-cell-offset-y: var(--sishen-5x-offset-y);
    width: var(--sishen-5x-width);
    height: var(--sishen-5x-height);
    font-size: var(--sishen-5x-font);
}

.yuce-forum .yuce-banner-3x {
    top: var(--sishen-3x-top);
    left: var(--sishen-3x-left);
    --sishen-cell-offset-y: var(--sishen-3x-offset-y);
    width: var(--sishen-3x-width);
    height: var(--sishen-3x-height);
    font-size: var(--sishen-3x-font);
}

.yuce-forum .yuce-banner-1x {
    top: var(--sishen-1x-top);
    left: var(--sishen-1x-left);
    --sishen-cell-offset-y: var(--sishen-1x-offset-y);
    width: var(--sishen-1x-width);
    height: var(--sishen-1x-height);
    font-size: var(--sishen-1x-font);
}

.yuce-forum .yuce-banner-5m {
    top: var(--sishen-5m-top);
    left: var(--sishen-5m-left);
    --sishen-cell-offset-y: var(--sishen-5m-offset-y);
    width: var(--sishen-5m-width);
    height: var(--sishen-5m-height);
    font-size: var(--sishen-5m-font);
    white-space: normal;
}

.yuce-forum .yuce-banner-10m {
    top: var(--sishen-10m-top);
    left: var(--sishen-10m-left);
    --sishen-cell-offset-y: var(--sishen-10m-offset-y);
    width: var(--sishen-10m-width);
    height: var(--sishen-10m-height);
    font-size: var(--sishen-10m-font);
    white-space: pre-line;
    line-height: 1.2;
    flex-direction: column;
}

.yuce-forum .yuce-module {
    margin-bottom: 14px;
    border-radius: 12px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 2px 12px rgba(30, 40, 90, 0.06);
    animation: yuceModuleIn 0.45s ease backwards;
}

.yuce-forum .yuce-module-title {
    padding: 12px 14px;
    text-align: center;
    font-size: 17px;
    font-weight: 600;
    color: #fff;
    background: linear-gradient(135deg, #5c6bc0 0%, #7e57c2 100%);
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.yuce-forum .yuce-module-title .yuce-site {
    color: #fff8e1;
}

.yuce-forum .yuce-module-title .yuce-tag {
    color: #e8eaf6;
    font-weight: 500;
}

.yuce-forum .yuce-table-wrap {
    padding: 8px 10px 10px;
    background: #f8f9fc;
}

.yuce-forum table.yuce-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0 6px;
    font-weight: 500;
}

.yuce-forum table.yuce-table td {
    border: none;
    padding: 10px 8px;
    vertical-align: middle;
    line-height: 1.5;
    background: #fff;
}

.yuce-forum table.yuce-table tr td:first-child {
    width: 18%;
    border-radius: 8px 0 0 8px;
    color: #c41e3a;
    font-weight: 700;
    background: #fff;
    font-size: 17px;
}

.yuce-forum table.yuce-table tr td:nth-child(2),
.yuce-forum table.yuce-table tr td.yuce-predict-col {
    color: #1565c0;
    font-weight: 600;
    background: #fff;
    word-break: break-word;
    vertical-align: middle;
    font-size: 18px;
}

.yuce-forum table.yuce-table tr td:nth-child(2) .yuce-hit {
    color: #b71c1c !important;
    font-weight: 800;
}

.yuce-forum table.yuce-table tr td:nth-child(3),
.yuce-forum table.yuce-table tr td.yuce-result-col {
    width: 28%;
    min-width: 88px;
    border-radius: 0 8px 8px 0;
    text-align: right;
    font-weight: 600;
    font-size: 17px;
    background: #fff;
    vertical-align: middle;
}

.yuce-forum .yuce-result-line,
.yuce-forum .predict-result-line {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 8px 14px;
    width: 100%;
}

.yuce-forum .predict-open-special {
    color: #c41e3a;
    font-weight: 800;
    font-size: 18px;
    letter-spacing: 0.02em;
}

.yuce-forum .yuce-sixiao3q-result .yuce-result-line {
    justify-content: center;
}

.yuce-forum table.yuce-table tr.is-current td {
    background: linear-gradient(135deg, #fff8e1 0%, #fff3cd 100%);
}

.yuce-forum table.yuce-table tr.is-current td:first-child {
    background: linear-gradient(135deg, #fff8e1 0%, #fff3cd 100%);
}

.yuce-forum .yuce-result {
    color: #2e7d32;
}

.yuce-forum .yuce-result.is-miss {
    color: #c62828;
}

.yuce-forum .yuce-result.is-pending {
    color: #f57c00;
}

.yuce-forum .yuce-hit {
    display: inline-block;
    padding: 0 4px;
    margin: 0 1px;
    border-radius: 4px;
    background: linear-gradient(180deg, #fff9c4 0%, #ffe082 100%);
    color: #b71c1c;
    font-weight: 700;
    box-shadow: 0 0 0 1px rgba(255, 193, 7, 0.45);
    animation: yuceHitPulse 1.2s ease-in-out infinite;
}

.yuce-forum .yuce-kill {
    display: inline-block;
    padding: 0 4px;
    margin: 0 1px;
    border-radius: 4px;
    background: #eceff1;
    color: #78909c;
    text-decoration: line-through;
    font-weight: 600;
}

.yuce-forum .yuce-module-hidden {
    display: none !important;
}

.yuce-forum .yuce-sixiao3q-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.yuce-forum .yuce-sixiao3q-group {
    border: 2px solid #7e57c2;
    border-radius: 12px;
    overflow: hidden;
    background: linear-gradient(180deg, #faf8ff 0%, #fff 100%);
    box-shadow: 0 2px 10px rgba(94, 53, 177, 0.12);
}

.yuce-forum .yuce-sixiao3q-head {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 8px 14px;
    padding: 10px 12px;
    background: linear-gradient(135deg, #ede7f6 0%, #e8eaf6 100%);
    border-bottom: 1px solid #d1c4e9;
}

.yuce-forum .yuce-sixiao3q-range {
    font-size: 13px;
    font-weight: 700;
    color: #5c6bc0;
}

.yuce-forum .yuce-sixiao3q-predict {
    font-size: 20px;
    font-weight: 900;
    color: #c41e3a;
    letter-spacing: 2px;
}

.yuce-forum .yuce-sixiao3q-inner {
    margin: 0;
    width: 100%;
}

.yuce-forum .yuce-sixiao3q-inner .yuce-sixiao3q-period {
    width: 28%;
    font-weight: 700;
    color: #37474f;
}

.yuce-forum .yuce-sixiao3q-inner .yuce-sixiao3q-result {
    text-align: center;
    font-weight: 700;
    color: #1565c0;
}

.yuce-forum .yuce-row {
    animation: yuceRowIn 0.4s ease backwards;
}

.yuce-forum .yuce-loading,
.yuce-forum .yuce-error {
    text-align: center;
    padding: 16px;
    color: #888;
    font-size: 14px;
}

@keyframes yuceModuleIn {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes yuceRowIn {
    from {
        opacity: 0;
        transform: translateX(-6px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes yuceHitPulse {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.06);
    }
}

.yuce-forum .yuce-module-legend {
    width: 100%;
    border-collapse: collapse;
    margin: 0;
}

.yuce-forum .yuce-module-legend td {
    padding: 10px 8px;
    text-align: center;
    font-size: 14px;
    color: #5c6bc0;
    background: #f0f2f8;
    border-top: 1px solid #e8eaf6;
}

/* JS 初始化前：旧标题表也使用统一配色，避免空白闪屏 */
.yuce-forum .yuce-header-table {
    width: 100%;
    border-collapse: collapse;
    margin: 8px 0 0;
}

.yuce-forum .yuce-header-table td {
    padding: 12px 14px;
    text-align: center;
    font-size: 17px;
    font-weight: 600;
    color: #fff;
    background: linear-gradient(135deg, #5c6bc0 0%, #7e57c2 100%);
}

.yuce-forum table.toushu {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0 6px;
}

.yuce-forum table.toushu td {
    padding: 10px 8px;
    text-align: center;
    background: #fff;
}

@media (max-width: 420px) {
    #yuceForumRoot,
    .yuce-forum {
        font-size: 17px;
    }
    .yuce-forum .yuce-module-title {
        font-size: 17px;
        padding: 10px 8px;
    }
    .yuce-forum table.yuce-table td {
        padding: 8px 6px;
        font-size: 16px;
    }
    .yuce-forum .predict-open-special {
        font-size: 17px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .yuce-forum .yuce-module,
    .yuce-forum .yuce-row,
    .yuce-forum .yuce-hit {
        animation: none !important;
    }
}
