/* Extracted from 逗号开箱网.html.
 * Transitional split file: shared/global styles plus the earliest visual patch layers.
 * Keep order stable first; finer cleanup can happen later.
 */

/* ===== style[0] inline ===== */
* {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            font-family: "Microsoft YaHei", "PingFang SC", sans-serif;
        }
        body {
            background: #121218;
            min-height: 100vh;
            color: #fff;
            padding: 20px;
        }
        /* 全局颜色变量 */
        :root {
            --consumer: #b0c3d9;
            --industrial: #4b69ff;
            --milspec: #8847ff;
            --restricted: #d32ce6;
            --classified: #eb4b4b;
            --covert: #ff4757;
            --souvenir: #ffd700;
            --bg-main: #1a1a24;
            --bg-card: #20202a;
            --bg-btn: #2a2a35;
            --border: rgba(255,255,255,0.08);
            --btn-orange: linear-gradient(90deg, #e68a2e, #d37020);
            --btn-single: linear-gradient(90deg, #667eea, #764ba2);
            --btn-ten: linear-gradient(90deg, #d32ce6, #eb4b4b);
            --btn-green: linear-gradient(90deg, #27ae60, #219653);
            --btn-red: linear-gradient(90deg, #eb4b4b, #ff4757);
        }

/* 品级颜色 */
.consumer {
    color: var(--consumer);
    text-shadow:
        0 1px 0 rgba(0,0,0,0.9),
        0 0 2px rgba(0,0,0,0.96),
        0 0 6px rgba(176,195,217,0.12);
}
.industrial {
    color: #7aa2ff;
    text-shadow:
        0 1px 0 rgba(0,0,0,0.92),
        0 0 2px rgba(0,0,0,0.98),
        0 0 6px rgba(75,105,255,0.38),
        0 0 14px rgba(75,105,255,0.14);
}
.milspec {
    color: #a977ff;
    text-shadow:
        0 1px 0 rgba(0,0,0,0.92),
        0 0 2px rgba(0,0,0,0.98),
        0 0 6px rgba(136,71,255,0.42),
        0 0 16px rgba(136,71,255,0.16);
}
.restricted {
    color: #f356ff;
    text-shadow:
        0 1px 0 rgba(0,0,0,0.92),
        0 0 2px rgba(0,0,0,0.98),
        0 0 7px rgba(211,44,230,0.52),
        0 0 18px rgba(211,44,230,0.22);
}

/* 🔴 红卡（亮眼，但弱于红金） */
.classified {
    color: #ff5d7d;
    text-shadow:
        0 1px 0 rgba(0,0,0,0.92),
        0 0 2px rgba(0,0,0,0.98),
        0 0 6px rgba(255, 93, 125, 0.72),
        0 0 14px rgba(255, 93, 125, 0.40),
        0 0 24px rgba(255, 93, 125, 0.16);
}

/* 🔥 红金（最亮、最炸） */
.covert {
    color: #ff6a4d;
    text-shadow:
        0 1px 0 rgba(0,0,0,0.92),
        0 0 2px rgba(0,0,0,0.98),
        0 0 8px rgba(255, 106, 77, 0.95),
        0 0 18px rgba(255, 106, 77, 0.62),
        0 0 34px rgba(255, 140, 77, 0.28);
}

/* 🟡 金卡（黑色压边） */
.souvenir {
    color: #ffe08a;
    text-shadow:
        0 1px 0 rgba(0,0,0,0.92),
        0 0 2px rgba(0,0,0,0.98),
        0 0 4px rgba(255, 224, 138, 0.32),
        0 0 8px rgba(255, 214, 102, 0.16),
        0 0 18px rgba(255, 235, 160, 0.14);
    font-weight: bold;
}
        /* 顶部导航 */
        .top-nav {
            display: flex;
            gap: 10px;
            margin: 0 auto 30px;
            justify-content: center;
            flex-wrap: wrap;
            max-width: 1080px;
        }
        .nav-btn {
            padding: 12px 25px;
            background: var(--bg-btn);
            border: none;
            border-radius: 8px;
            color: #aaa;
            cursor: pointer;
            transition: all 0.2s;
            font-weight: bold;
            font-size: 15px;
        }
        .nav-btn.active {
            background: var(--btn-red);
            color: #fff;
        }
        .nav-btn:hover:not(.active) {
            background: #33333f;
            color: #fff;
        }

        /* 页面容器 */
        .page {
            display: none;
            max-width: 1400px;
            margin: 0 auto;
        }
        .page.active {
            display: block;
            animation: fadeIn 0.3s ease;
        }
        @keyframes fadeIn {
            from { opacity: 0; transform: translateY(10px); }
            to { opacity: 1; transform: translateY(0); }
        }

        /* 主卡片容器 */
        .main-card {
            background: var(--bg-main);
            border-radius: 16px;
            padding: 30px;
            margin-bottom: 20px;
            width: 100%;
        }
        .page-title {
            font-size: 22px;
            text-align: center;
            margin-bottom: 25px;
            color: var(--souvenir);
            font-weight: bold;
        }
        .sub-title {
            font-size: 18px;
            font-weight: bold;
            margin: 30px 0 15px;
        }

        /* ===================== 抽卡主页样式 ===================== */
        .header-row {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 25px;
            flex-wrap: wrap;
            gap: 15px;
        }
        .gold-box {
            padding: 12px 25px;
            background: var(--bg-card);
            border-radius: 12px;
            font-size: 18px;
            font-weight: bold;
            color: var(--souvenir);
            display: flex;
            align-items: center;
            gap: 8px;
        }
        .sign-btn {
            padding: 12px 25px;
            background: linear-gradient(90deg, #27ae60, #219653);
            border: none;
            border-radius: 12px;
            color: #fff;
            font-weight: bold;
            cursor: pointer;
            font-size: 15px;
            display: flex;
            align-items: center;
            gap: 8px;
        }
        .sign-btn:disabled {
            background: #333;
            cursor: not-allowed;
            opacity: 0.7;
        }
        .warehouse-info {
            font-size: 15px;
            color: #aaa;
        }
        .warehouse-info span {
            color: #fff;
            font-weight: bold;
        }

        /* 统计面板 */
        .stats-grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 15px;
            margin-bottom: 30px;
        }

        /* 抽卡页统计面板：去掉“最高品级”后改成三列 */
        .draw-stats-grid {
            grid-template-columns: repeat(3, 1fr);
        }

        .stats-card {
            background: var(--bg-card);
            border-radius: 12px;
            padding: 20px;
            text-align: center;
        }
        .stats-label {
            font-size: 14px;
            color: #aaa;
            margin-bottom: 10px;
        }
        .stats-value {
            font-size: 24px;
            font-weight: bold;
            color: var(--souvenir);
        }

        /* 品级统计 */
        .rarity-grid {
            display: grid;
            grid-template-columns: repeat(7, 1fr);
            gap: 10px;
            margin-bottom: 30px;
        }
        .rarity-card {
            background: var(--bg-card);
            border-radius: 8px;
            padding: 15px 10px;
            text-align: center;
        }
        .rarity-name {
            font-size: 14px;
            margin-bottom: 8px;
        }
        .rarity-count {
            font-size: 18px;
            font-weight: bold;
        }

        /* 游戏标题 */
        .game-title {
            text-align: center;
            margin-bottom: 30px;
        }
        .game-title h1 {
            font-size: 28px;
            background: linear-gradient(90deg, #ffd700, #ff8c00);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            margin-bottom: 10px;
        }
        .game-title p {
            color: #aaa;
            font-size: 14px;
        }

        /* 抽卡按钮 */
        .draw-btn-group {
            display: flex;
            gap: 20px;
            justify-content: center;
            margin-bottom: 30px;
        }
        .draw-btn {
            padding: 15px 40px;
            border: none;
            border-radius: 12px;
            font-size: 16px;
            font-weight: bold;
            color: #fff;
            cursor: pointer;
            transition: all 0.2s;
        }
        .btn-single {
            background: var(--btn-single);
        }
        .btn-ten {
            background: var(--btn-ten);
        }
        .draw-btn:hover {
            transform: translateY(-3px);
            box-shadow: 0 8px 20px rgba(0,0,0,0.3);
        }
        .draw-btn:disabled {
            opacity: 0.5;
            cursor: not-allowed;
            transform: none;
        }

                /* 抽卡结果区 */
.result-box {
    position: relative;
    background: linear-gradient(135deg, #171722, #0d0d16 55%, #10101c);
    border-radius: 20px;
    min-height: 430px;
    padding: 28px;
    display: grid;
    grid-template-columns: repeat(5, 180px);
    grid-auto-rows: 190px;
    gap: 18px;
    justify-content: center;
    align-content: center;
    overflow: hidden;
    border: 2px solid rgba(255,255,255,0.08);
    box-shadow:
        0 0 0 1px rgba(255,255,255,0.03) inset,
        0 0 28px rgba(0,0,0,0.42);
}

.result-box.single-mode {
    min-height: 230px;
    grid-template-columns: 180px;
    grid-auto-rows: 190px;
}

.result-box::before {
    content: "";
    position: absolute;
    inset: -2px;
    border-radius: 22px;
    background: linear-gradient(
        90deg,
        #8a2be2,
        #ff00b7,
        #ff5f00,
        #ffd000,
        #00f0ff,
        #4d7cff,
        #8a2be2
    );
    background-size: 300% 100%;
    animation: resultBorderRun 2.8s linear infinite;
    z-index: 0;
    filter: blur(10px);
    opacity: 0.95;
}

.result-box::after {
    content: "";
    position: absolute;
    inset: 3px;
    border-radius: 16px;
    background: linear-gradient(135deg, #171722, #0d0d16 55%, #10101c);
    z-index: 0;
}

.result-item {
    position: relative;
    z-index: 2;
    width: 180px;
    height: 190px;
    padding: 14px;
    border-radius: 18px;
    background:
        linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0.03)),
        linear-gradient(135deg, rgba(35,35,52,0.98), rgba(24,24,38,0.98));
    border: 1px solid rgba(255,255,255,0.08);
    backdrop-filter: blur(6px);
    box-shadow:
        0 0 14px rgba(255,255,255,0.04),
        0 10px 24px rgba(0,0,0,0.34);
    animation: drawCardPop 0.35s ease;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

.result-item > * {
    position: relative;
    z-index: 2;
}

.result-item.rolling {
    border: 1px solid rgba(255,255,255,0.18);
    color: #f6f7ff;
    animation:
        slotMachineShake 0.14s linear infinite,
        resultRollBg 1.7s linear infinite,
        resultRollGlow 1.1s ease-in-out infinite alternate;
    background:
        linear-gradient(135deg,
            rgba(255, 0, 122, 0.28),
            rgba(255, 126, 0, 0.24),
            rgba(0, 224, 255, 0.24),
            rgba(140, 0, 255, 0.24)
        );
    background-size: 300% 300%;
    box-shadow:
        0 0 18px rgba(255, 0, 150, 0.20),
        0 0 32px rgba(0, 210, 255, 0.16),
        0 10px 24px rgba(0,0,0,0.34);
}

.result-item.rolling::before {
    content: "";
    position: absolute;
    inset: -35%;
    background: conic-gradient(
        from 0deg,
        rgba(255, 0, 122, 0.0),
        rgba(255, 0, 122, 0.42),
        rgba(255, 208, 0, 0.42),
        rgba(0, 224, 255, 0.42),
        rgba(140, 0, 255, 0.42),
        rgba(255, 0, 122, 0.0)
    );
    filter: blur(26px);
    opacity: 0.72;
    animation: resultRollAura 1.5s linear infinite;
}

.result-item.rolling::after {
    content: "";
    position: absolute;
    top: -40%;
    left: -70%;
    width: 65%;
    height: 200%;
    background: linear-gradient(
        90deg,
        rgba(255,255,255,0),
        rgba(255,255,255,0.55),
        rgba(255,255,255,0)
    );
    transform: rotate(18deg);
    animation: resultShineSweep 1.2s ease-in-out infinite;
    mix-blend-mode: screen;
    opacity: 0.9;
}

.result-placeholder {
    width: 100%;
    height: 100%;
    border-radius: 14px;
    background: rgba(10,10,18,0.18);
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 16px;
    font-size: 16px;
    font-weight: 800;
    letter-spacing: 2px;
    text-shadow:
        0 0 8px rgba(255,255,255,0.28),
        0 0 18px rgba(255,255,255,0.12);
}

.result-thumb {
    width: 100%;
    height: 92px;
    object-fit: contain;
    background: #09090f;
    border-radius: 12px;
    margin-bottom: 10px;
    display: block;
}

.result-rarity {
    width: 100%;
    font-size: 13px;
    color: #aab1c7;
    margin-bottom: 8px;
    line-height: 1.2;
}

.result-name {
    width: 100%;
    min-height: 42px;
    font-size: 15px;
    font-weight: bold;
    line-height: 1.35;
}

.result-item.classified {
    box-shadow:
        0 0 10px rgba(255, 90, 120, 0.35),
        0 0 20px rgba(255, 90, 120, 0.18),
        0 10px 24px rgba(0,0,0,0.34);
}

.result-item.covert,
.result-item.souvenir {
    box-shadow:
        0 0 12px rgba(255, 215, 0, 0.45),
        0 0 28px rgba(255, 215, 0, 0.22),
        0 10px 24px rgba(0,0,0,0.34);
}

.result-particle {
    position: absolute;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    pointer-events: none;
    z-index: 1;
    opacity: 0.9;
    animation: particleBurst 0.9s ease-out forwards;
}

.empty-tip {
    color: #888;
    text-align: center;
    padding: 40px 0;
    grid-column: 1/-1;
    position: relative;
    z-index: 2;
}

@keyframes resultBorderRun {
    0% { background-position: 0% 0; }
    100% { background-position: 300% 0; }
}

@keyframes drawCardPop {
    0% { opacity: 0; transform: scale(0.86) translateY(10px); }
    100% { opacity: 1; transform: scale(1) translateY(0); }
}

@keyframes slotMachineShake {
    0% { transform: translateY(-2px) rotate(-0.6deg); }
    50% { transform: translateY(2px) rotate(0.6deg); }
    100% { transform: translateY(-2px) rotate(-0.6deg); }
}

@keyframes resultRollBg {
    0% { background-position: 0% 50%; }
    100% { background-position: 300% 50%; }
}

@keyframes resultRollGlow {
    0% {
        box-shadow:
            0 0 18px rgba(255, 0, 150, 0.20),
            0 0 32px rgba(0, 210, 255, 0.16),
            0 10px 24px rgba(0,0,0,0.34);
    }
    100% {
        box-shadow:
            0 0 22px rgba(255, 126, 0, 0.28),
            0 0 40px rgba(140, 0, 255, 0.22),
            0 10px 24px rgba(0,0,0,0.34);
    }
}

@keyframes resultRollAura {
    0% { transform: rotate(0deg) scale(1); }
    100% { transform: rotate(360deg) scale(1.06); }
}

@keyframes resultShineSweep {
    0% { left: -75%; }
    100% { left: 135%; }
}

@keyframes particleBurst {
    0% {
        transform: translate(0, 0) scale(0.5);
        opacity: 1;
    }
    100% {
        transform: translate(var(--tx), var(--ty)) scale(1.6);
        opacity: 0;
    }
}

@media (max-width: 1180px) {
    .result-box {
        grid-template-columns: repeat(3, 180px);
        min-height: 640px;
    }
}

@media (max-width: 760px) {
    .result-box {
        grid-template-columns: repeat(2, 160px);
        grid-auto-rows: 176px;
        min-height: 600px;
        padding: 20px;
    }

    .result-box.single-mode {
        grid-template-columns: 160px;
        grid-auto-rows: 176px;
        min-height: 210px;
    }

    .result-item {
        width: 160px;
        height: 176px;
    }

    .result-thumb {
        height: 82px;
    }

    .result-name {
        font-size: 14px;
    }
}

        /* ===================== 交易市场样式（整合版） ===================== */
        .slot-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 15px;
        }
        .slot-info {
            color: #aaa;
            font-size: 14px;
        }
        .slot-num {
            color: #fff;
            font-weight: bold;
        }
        .rent-btn {
            padding: 8px 15px;
            background: var(--btn-green);
            border: none;
            border-radius: 6px;
            color: #fff;
            font-weight: bold;
            cursor: pointer;
            font-size: 12px;
        }
        .rent-btn:disabled {
            background: #555;
            cursor: not-allowed;
        }

        /* 上架表格 */
        .table-header {
            display: grid;
            grid-template-columns: 2fr 1fr 1fr 1fr 1fr 100px;
            gap: 15px;
            padding: 15px 20px;
            background: var(--bg-card);
            border-radius: 8px 8px 0 0;
            color: #aaa;
            font-size: 14px;
            font-weight: bold;
        }
        .table-body {
            background: var(--bg-main);
            border-radius: 0 0 8px 8px;
            min-height: 80px;
            border: 1px solid var(--border);
            margin-bottom: 30px;
        }
        .table-row {
            display: grid;
            grid-template-columns: 2fr 1fr 1fr 1fr 1fr 100px;
            gap: 15px;
            padding: 15px 20px;
            border-bottom: 1px solid var(--border);
            align-items: center;
        }
        .table-row:last-child {
            border-bottom: none;
        }
        .btn-small {
            padding: 6px 12px;
            border: none;
            border-radius: 4px;
            color: #fff;
            font-weight: bold;
            cursor: pointer;
            font-size: 12px;
        }
        .btn-cancel {
            background: #555;
        }
        .btn-recycle {
            background: #f39c12;
            margin-left: 5px;
        }

        /* 其他玩家商品（5列布局） */
        .goods-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 15px;
        }
        .refresh-box {
            display: flex;
            align-items: center;
            gap: 10px;
        }
        .refresh-btn {
            padding: 8px 20px;
            background: var(--bg-btn);
            border: none;
            border-radius: 6px;
            color: #fff;
            font-weight: bold;
            cursor: pointer;
            font-size: 12px;
        }
        .refresh-btn:disabled {
            opacity: 0.5;
            cursor: not-allowed;
        }
        .cool-down-tip {
            font-size: 12px;
            color: #aaa;
        }
        .goods-grid {
            display: grid;
            grid-template-columns: repeat(5, 1fr);
            gap: 15px;
            margin-bottom: 30px;
        }
                        .goods-card {
    background: var(--bg-card);
    border-radius: 12px;
    padding: 15px;
    position: relative;
    transition: all 0.2s;
    isolation: isolate;
    overflow: hidden;
}

.goods-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(0,0,0,0.3);
}

.goods-card.sold-out {
    pointer-events: none;
}

.goods-card.sold-out img,
.goods-card.sold-out .goods-rarity,
.goods-card.sold-out .goods-name,
.goods-card.sold-out .goods-price,
.goods-card.sold-out .btn-buy,
.goods-card.sold-out .btn-shelf {
    opacity: 0.42;
}

.market-badge-row {
    height: 30px;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    margin-bottom: 6px;
    position: relative;
    z-index: 3;
}

.market-badge-row:empty {
    margin-bottom: 6px;
}

.sold-tag {
    position: static;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(15, 15, 18, 0.92);
    color: #fff;
    font-size: 11px;
    padding: 4px 10px;
    border-radius: 999px;
    font-weight: bold;
    pointer-events: none;
    box-shadow:
        0 0 0 1px rgba(255,255,255,0.08) inset,
        0 4px 12px rgba(0,0,0,0.35);
    text-shadow:
        0 1px 0 rgba(0,0,0,0.9),
        0 0 2px rgba(0,0,0,0.95);
}

.market-badge-row .card-status-badge,
.market-badge-row .sold-tag {
    min-width: 86px;
}
        .goods-rarity {
            font-size: 12px;
            margin-bottom: 8px;
        }
        .goods-name {
    position: relative;
    font-weight: bold;
    margin-bottom: 10px;
    font-size: 15px;
    height: 40px;
    line-height: 1.3;
    text-shadow:
        0 1px 0 rgba(0,0,0,0.9),
        0 0 2px rgba(0,0,0,0.95);
}

.goods-name::before {
    content: "";
    position: absolute;
    inset: -4px;
    border-radius: 10px;
    z-index: -1;
    opacity: 0.9;
}

.classified.goods-name::before {
    background: linear-gradient(90deg, rgba(255,85,125,0.10), rgba(255,85,125,0.30), rgba(255,85,125,0.10));
    box-shadow: 0 0 18px rgba(255,85,125,0.18);
}

.covert.goods-name::before {
    background: linear-gradient(90deg, rgba(255,95,70,0.12), rgba(255,150,90,0.34), rgba(255,95,70,0.12));
    box-shadow: 0 0 22px rgba(255,120,80,0.24);
}

.souvenir.goods-name::before {
    background: linear-gradient(90deg, rgba(255,215,120,0.10), rgba(255,225,160,0.30), rgba(255,215,120,0.10));
    box-shadow: 0 0 18px rgba(255,215,120,0.16);
}
        .goods-price {
    color: var(--souvenir);
    font-weight: bold;
    font-size: 18px;
    margin-bottom: 15px;
    text-shadow:
        0 1px 0 rgba(0,0,0,0.92),
        0 0 2px rgba(0,0,0,0.98),
        0 0 6px rgba(255, 215, 0, 0.18);
}

        .goods-seller-name {
            font-size: 12px;
            color: #cfcfcf;
            margin: 4px 0 10px 0;
            line-height: 1.5;
            text-shadow:
                0 1px 0 rgba(0,0,0,0.88),
                0 0 2px rgba(0,0,0,0.92);
        }

        .btn-buy {
    width: 100%;
    padding: 8px 0;
    border: none;
    border-radius: 6px;
    background: var(--btn-orange);
    color: #fff;
    font-weight: bold;
    cursor: pointer;
    transition: all 0.2s;
}
.btn-buy:hover {
    filter: brightness(1.1);
}
.goods-card.sold-out .btn-buy {
    background: #4a4a52;
    color: #bbb;
    filter: none;
}
        /* 价格图表 */

        /* ===================== 我的库存页面 ===================== */
        .inventory-grid {
            display: grid;
            grid-template-columns: repeat(5, 1fr);
            gap: 15px;
        }
                .inventory-card {
    position: relative;
    overflow: hidden;
    background: var(--bg-card);
    border-radius: 12px;
    padding: 15px;
}
        .inventory-count {
            font-size: 12px;
            color: #aaa;
            margin-bottom: 8px;
        }
        .inventory-name {
    font-weight: bold;
    margin-bottom: 10px;
    height: 40px;
    text-shadow:
        0 1px 0 rgba(0,0,0,0.9),
        0 0 2px rgba(0,0,0,0.95);
}
        .inventory-price {
    color: var(--souvenir);
    font-size: 14px;
    margin-bottom: 15px;
    line-height: 1.6;
    text-shadow:
        0 1px 0 rgba(0,0,0,0.9),
        0 0 2px rgba(0,0,0,0.95);
}
        .inventory-price span {
            color: #fff;
            font-weight: bold;
        }
        .btn-shelf {
            width: 100%;
            padding: 8px 0;
            border: none;
            border-radius: 6px;
            background: var(--btn-single);
            color: #fff;
            font-weight: bold;
            cursor: pointer;
        }
        .btn-shelf:disabled {
            background: #555;
            cursor: not-allowed;
        }

        /* ===================== 成就系统页面 ===================== */
        .achieve-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 15px;
        }
        .achieve-card {
            background: var(--bg-card);
            border-radius: 12px;
            padding: 20px;
            display: flex;
            gap: 15px;
            align-items: center;
        }
        .achieve-icon {
            width: 50px;
            height: 50px;
            border-radius: 50%;
            background: var(--bg-main);
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 24px;
        }
        .achieve-icon.unlocked {
            background: rgba(255,215,0,0.2);
            color: var(--souvenir);
        }
        .achieve-content h4 {
            font-size: 16px;
            margin-bottom: 5px;
        }
        .achieve-content p {
            font-size: 12px;
            color: #aaa;
        }

        /* ===================== 上架弹窗 ===================== */
        .modal-overlay {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: rgba(0,0,0,0.8);
            display: none;
            align-items: center;
            justify-content: center;
            z-index: 9999;
        }
        .modal-overlay.active {
            display: flex;
        }
        .modal-card {
            background: var(--bg-main);
            border-radius: 16px;
            padding: 30px;
            max-width: 500px;
            width: 90%;
            border: 1px solid var(--border);
        }
        .modal-title {
            font-size: 20px;
            font-weight: bold;
            text-align: center;
            margin-bottom: 20px;
        }
        .modal-info {
            background: var(--bg-card);
            border-radius: 12px;
            padding: 15px;
            margin-bottom: 20px;
            text-align: center;
        }
        .price-input {
            width: 100%;
            padding: 12px 15px;
            background: var(--bg-card);
            border: 1px solid var(--border);
            border-radius: 8px;
            color: #fff;
            font-size: 16px;
            font-weight: bold;
            margin-bottom: 20px;
        }
        .modal-btn-group {
            display: flex;
            gap: 15px;
            justify-content: center;
        }
        .modal-btn {
            padding: 10px 30px;
            border: none;
            border-radius: 8px;
            color: #fff;
            font-weight: bold;
            cursor: pointer;
        }
        .btn-confirm {
            background: var(--btn-single);
        }
        .btn-modal-cancel {
            background: #555;
        }

        /* ===================== Debug模式弹窗 ===================== */
        .debug-modal {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: rgba(0,0,0,0.9);
            display: none;
            align-items: center;
            justify-content: center;
            z-index: 10000;
        }
        .debug-modal.active {
            display: flex;
        }
        .debug-content {
            background: var(--bg-main);
            border-radius: 16px;
            padding: 40px;
            max-width: 400px;
            width: 90%;
            text-align: center;
        }
        .debug-input {
            width: 100%;
            padding: 15px;
            background: var(--bg-card);
            border: 1px solid var(--border);
            border-radius: 8px;
            color: #fff;
            font-size: 18px;
            font-weight: bold;
            text-align: center;
            margin-bottom: 20px;
        }
        .debug-btn {
            padding: 12px 40px;
            border: none;
            border-radius: 8px;
            background: var(--btn-red);
            color: #fff;
            font-weight: bold;
            cursor: pointer;
        }

        /* 滚动条样式 */
        ::-webkit-scrollbar {
            width: 6px;
        }
        ::-webkit-scrollbar-track {
            background: rgba(0,0,0,0.2);
            border-radius: 10px;
        }
        ::-webkit-scrollbar-thumb {
            background: rgba(255,255,255,0.2);
            border-radius: 10px;
        }
    /* ================= 全品级统一边框特效 + 标题面板 + 状态标签 ================= */

.card-glow::before {
    content: "";
    position: absolute;
    inset: -1px;
    border-radius: 12px;
    z-index: 0;
    opacity: 1;
    pointer-events: none;
}

.industrial.card-glow::before {
    background: linear-gradient(
        135deg,
        rgba(90, 130, 255, 0.38),
        rgba(76, 118, 255, 0.10),
        rgba(130, 165, 255, 0.34)
    );
    filter: blur(8px);
    animation: industrialPulse 3.2s infinite ease-in-out;
}

@keyframes industrialPulse {
    0%, 100% { opacity: 0.34; transform: scale(1); }
    50% { opacity: 0.58; transform: scale(1.01); }
}

.milspec.card-glow::before {
    background: linear-gradient(
        135deg,
        rgba(136, 71, 255, 0.42),
        rgba(136, 71, 255, 0.12),
        rgba(180, 120, 255, 0.40)
    );
    filter: blur(9px);
    animation: milspecPulse 3s infinite ease-in-out;
}

@keyframes milspecPulse {
    0%, 100% { opacity: 0.42; transform: scale(1); }
    50% { opacity: 0.7; transform: scale(1.012); }
}

.restricted.card-glow::before {
    background: linear-gradient(
        135deg,
        rgba(211, 44, 230, 0.54),
        rgba(211, 44, 230, 0.16),
        rgba(255, 110, 244, 0.48)
    );
    filter: blur(9px);
    animation: restrictedPulse 2.8s infinite ease-in-out;
}

@keyframes restrictedPulse {
    0%, 100% { opacity: 0.48; transform: scale(1); }
    50% { opacity: 0.78; transform: scale(1.015); }
}

.classified.card-glow::before {
    background: linear-gradient(
        135deg,
        rgba(255, 86, 126, 0.62),
        rgba(255, 70, 110, 0.18),
        rgba(255, 120, 145, 0.58)
    );
    filter: blur(10px);
    animation: classifiedPulse 2.5s infinite ease-in-out;
}

@keyframes classifiedPulse {
    0%,100% {
        opacity: 0.62;
        transform: scale(1);
    }
    50% {
        opacity: 0.96;
        transform: scale(1.018);
    }
}

.covert.card-glow::before {
    background: linear-gradient(
        120deg,
        rgba(255, 85, 70, 0.72) 0%,
        rgba(255, 170, 95, 0.96) 22%,
        rgba(255, 95, 72, 0.70) 44%,
        rgba(255, 70, 60, 0.26) 56%,
        rgba(255, 180, 110, 0.96) 76%,
        rgba(255, 96, 72, 0.72) 100%
    );
    background-size: 220% 100%;
    filter: blur(10px);
    animation: covertSweep 2.8s linear infinite;
}

@keyframes covertSweep {
    0% { background-position: 0% 0; opacity: 0.78; }
    50% { opacity: 1; }
    100% { background-position: 220% 0; opacity: 0.78; }
}

.souvenir.card-glow::before {
    background: linear-gradient(
        120deg,
        rgba(255, 214, 120, 0.55) 0%,
        rgba(255, 245, 210, 0.95) 18%,
        rgba(255, 222, 130, 0.55) 36%,
        rgba(255, 214, 120, 0.22) 50%,
        rgba(255, 245, 210, 0.95) 68%,
        rgba(255, 214, 120, 0.55) 86%,
        rgba(255, 214, 120, 0.55) 100%
    );
    background-size: 220% 100%;
    filter: blur(8px);
    animation: goldFrameSweep 3.2s linear infinite;
}

@keyframes goldFrameSweep {
    0% { background-position: 0% 0; opacity: 0.72; }
    50% { opacity: 0.95; }
    100% { background-position: 220% 0; opacity: 0.72; }
}

.card-glow > * {
    position: relative;
    z-index: 1;
}

.inventory-name,
.goods-name,
.result-name,
.result-rarity {
    position: relative;
}

.inventory-name::before,
.goods-name::before,
.result-name::before {
    content: "";
    position: absolute;
    inset: -6px -8px;
    border-radius: 12px;
    z-index: -1;
    opacity: 0.88;
}

.industrial.inventory-name::before,
.industrial.goods-name::before,
.industrial.result-name::before {
    background: linear-gradient(90deg, rgba(75,105,255,0.08), rgba(95,135,255,0.22), rgba(75,105,255,0.08));
    box-shadow: 0 0 14px rgba(75,105,255,0.12);
}

.milspec.inventory-name::before,
.milspec.goods-name::before,
.milspec.result-name::before {
    background: linear-gradient(90deg, rgba(136,71,255,0.10), rgba(160,105,255,0.26), rgba(136,71,255,0.10));
    box-shadow: 0 0 16px rgba(136,71,255,0.16);
}

.restricted.inventory-name::before,
.restricted.goods-name::before,
.restricted.result-name::before {
    background: linear-gradient(90deg, rgba(211,44,230,0.12), rgba(236,92,255,0.30), rgba(211,44,230,0.12));
    box-shadow: 0 0 18px rgba(211,44,230,0.18);
}

.classified.inventory-name::before,
.classified.goods-name::before,
.classified.result-name::before {
    background: linear-gradient(90deg, rgba(255,85,125,0.10), rgba(255,85,125,0.30), rgba(255,85,125,0.10));
    box-shadow: 0 0 18px rgba(255,85,125,0.18);
}

.covert.inventory-name::before,
.covert.goods-name::before,
.covert.result-name::before {
    background: linear-gradient(90deg, rgba(255,95,70,0.12), rgba(255,150,90,0.34), rgba(255,95,70,0.12));
    box-shadow: 0 0 22px rgba(255,120,80,0.24);
}

.souvenir.inventory-name::before,
.souvenir.goods-name::before,
.souvenir.result-name::before {
    background: linear-gradient(90deg, rgba(255,215,120,0.10), rgba(255,225,160,0.30), rgba(255,215,120,0.10));
    box-shadow: 0 0 18px rgba(255,215,120,0.16);
}

.card-status-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 86px;
    padding: 5px 12px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1px;
    border: 1px solid rgba(255,255,255,0.12);
    text-shadow:
        0 1px 0 rgba(0,0,0,0.92),
        0 0 2px rgba(0,0,0,0.98);
    box-shadow:
        0 0 0 1px rgba(255,255,255,0.04) inset,
        0 6px 14px rgba(0,0,0,0.24);
}

.card-status-badge.hot {
    color: #fff2b8;
    background: linear-gradient(90deg, rgba(255,177,0,0.28), rgba(255,225,120,0.24));
    box-shadow:
        0 0 12px rgba(255,214,102,0.20),
        0 0 18px rgba(255,214,102,0.12),
        0 6px 14px rgba(0,0,0,0.24);
    animation: hotTagPulse 1.25s ease-in-out infinite;
}

.card-status-badge.stale {
    color: #ffb0b0;
    background: linear-gradient(90deg, rgba(255,80,80,0.22), rgba(255,40,90,0.18));
    animation: staleTagBlink 1s steps(2, end) infinite;
}

.card-status-badge.dead {
    color: #ffd0d0;
    background: linear-gradient(90deg, rgba(120,20,20,0.42), rgba(80,10,10,0.46));
    box-shadow:
        0 0 16px rgba(255,70,70,0.18),
        0 6px 14px rgba(0,0,0,0.28);
    animation: deadTagFlicker 1.35s ease-in-out infinite;
}

.card-status-badge.live {
    color: #c7d1ff;
    background: linear-gradient(90deg, rgba(84,106,255,0.22), rgba(118,75,162,0.24));
}

.card-status-badge.done {
    color: #fff2bf;
    background: linear-gradient(90deg, rgba(255,214,102,0.22), rgba(255,180,80,0.20));
}

.card-status-badge.expired {
    color: #ffc7c7;
    background: linear-gradient(90deg, rgba(120,40,40,0.30), rgba(90,18,18,0.34));
}

.shelf-timer {
    display: inline-block;
    min-width: 72px;
    padding: 4px 10px;
    border-radius: 999px;
    font-weight: 800;
    letter-spacing: 0.5px;
    background: rgba(255,255,255,0.05);
    box-shadow: 0 0 0 1px rgba(255,255,255,0.04) inset;
}

.shelf-timer.warning {
    color: #ffe7a1;
    text-shadow: 0 0 8px rgba(255,214,102,0.24);
}

.shelf-timer.danger {
    color: #ff9b9b;
    text-shadow:
        0 0 8px rgba(255,80,80,0.28),
        0 0 16px rgba(255,80,80,0.16);
    animation: timerDangerFlash 0.9s ease-in-out infinite;
}

@keyframes hotTagPulse {
    0%, 100% { transform: scale(1); opacity: 0.92; }
    50% { transform: scale(1.04); opacity: 1; }
}

@keyframes staleTagBlink {
    0%, 100% { opacity: 0.62; }
    50% { opacity: 1; }
}

@keyframes deadTagFlicker {
    0%, 100% { opacity: 0.76; filter: saturate(0.9); }
    45% { opacity: 1; filter: saturate(1.18); }
    55% { opacity: 0.52; filter: saturate(0.78); }
}

@keyframes timerDangerFlash {
    0%,100% { opacity: 0.72; transform: scale(1); }
    50% { opacity: 1; transform: scale(1.05); }
}

    /* ===================== 游戏提示弹窗 ===================== */
.game-dialog-mask {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.72);
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 20000;
}

.game-dialog-mask.active {
    display: flex;
}

.game-dialog {
    width: min(520px, 92vw);
    background: linear-gradient(180deg, #1f2230, #171923);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 18px;
    box-shadow:
        0 20px 50px rgba(0,0,0,0.45),
        0 0 0 1px rgba(255,255,255,0.03) inset;
    overflow: hidden;
}

.game-dialog-header {
    padding: 18px 22px 10px;
    font-size: 22px;
    font-weight: bold;
    color: #fff;
}

.game-dialog-body {
    padding: 6px 22px 24px;
    font-size: 17px;
    line-height: 1.8;
    color: #ddd;
    white-space: pre-line;
}

.game-dialog-footer {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    padding: 0 22px 22px;
}

.game-dialog-btn {
    min-width: 110px;
    padding: 12px 22px;
    border: none;
    border-radius: 12px;
    font-size: 16px;
    font-weight: bold;
    color: #fff;
    cursor: pointer;
    transition: all 0.2s;
}

.game-dialog-btn:hover {
    transform: translateY(-1px);
    filter: brightness(1.05);
}

.game-dialog-btn.confirm {
    background: linear-gradient(90deg, #5b8cff, #3f66d4);
}

.game-dialog-btn.cancel {
    background: #4a4f62;
}

        .card-config-panel {
            margin: 0 auto 18px;
            max-width: 760px;
            background: linear-gradient(135deg, rgba(255,255,255,0.05), rgba(255,255,255,0.02));
            border: 1px solid rgba(255,255,255,0.08);
            border-radius: 14px;
            padding: 12px 16px;
            box-shadow:
                0 0 0 1px rgba(255,255,255,0.03) inset,
                0 8px 22px rgba(0,0,0,0.22);
        }

        .card-config-top {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 14px;
            flex-wrap: wrap;
        }

        .card-config-left {
            display: flex;
            flex-direction: column;
            gap: 4px;
        }

        .card-config-title {
            font-size: 14px;
            font-weight: 800;
            letter-spacing: 1px;
            color: #f0f2ff;
        }

        .card-config-note {
            color: rgba(255,255,255,0.66);
            font-size: 12px;
            line-height: 1.5;
            margin: 0;
        }

        .card-config-actions {
            display: flex;
            gap: 8px;
            flex-wrap: wrap;
            margin: 0;
        }

        .card-config-actions .refresh-btn {
            padding: 8px 14px;
            min-width: 108px;
            font-size: 13px;
            border-radius: 999px;
            background: linear-gradient(90deg, rgba(98,114,255,0.24), rgba(146,88,255,0.24));
            border: 1px solid rgba(255,255,255,0.08);
            box-shadow:
                0 0 0 1px rgba(255,255,255,0.03) inset,
                0 6px 14px rgba(0,0,0,0.18);
        }

        .card-config-actions .refresh-btn:hover {
            filter: brightness(1.08);
            transform: translateY(-1px);
        }

        .card-config-status {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            color: #bfe4c8;
            font-size: 12px;
            font-weight: 700;
            letter-spacing: 0.5px;
        }

        .card-config-status::before {
            content: "";
            width: 8px;
            height: 8px;
            border-radius: 50%;
            background: #5be37d;
            box-shadow:
                0 0 10px rgba(91,227,125,0.45),
                0 0 18px rgba(91,227,125,0.22);
        }
                .inventory-buy-price {
            min-height: 18px;
            font-size: 12px;
            color: rgba(255,255,255,0.7);
            margin-bottom: 8px;
        }

        .inventory-desc,
        .goods-desc,
        .result-desc {
            font-size: 12px;
            font-style: italic;
            color: rgba(255,255,255,0.8);
            opacity: 0.8;
            line-height: 1.5;
            margin: 6px 0 10px 0;
            min-height: 36px;
            max-height: 36px;
            overflow: hidden;
            display: -webkit-box;
            -webkit-box-orient: vertical;
            -webkit-line-clamp: 2;
        }

        .inventory-desc:empty,
        .goods-desc:empty,
        .result-desc:empty {
            display: none;
        }

        /* 库存/市场卡片纵向布局，按钮自动贴底 */
        .inventory-card,
        .goods-card {
            min-height: 430px;
            display: flex;
            flex-direction: column;
        }

        .inventory-card img,
        .goods-card img {
            flex: 0 0 auto;
        }

        .inventory-count,
        .inventory-buy-price,
        .market-badge-row,
        .inventory-price {
            flex: 0 0 auto;
        }

        .inventory-name,
        .goods-name,
        .result-name {
            height: auto;
            min-height: 48px;
            margin-bottom: 8px;
            line-height: 1.35;
        }

        .btn-shelf,
        .btn-buy {
            margin-top: auto;
        }

        /* 低品质批量卖出按钮加强辨识度 */
        .btn-green {
            background: var(--btn-green);
            color: #fff;
            box-shadow:
                0 0 0 1px rgba(255,255,255,0.08) inset,
                0 8px 18px rgba(39,174,96,0.22);
        }

        #batch-sell-white {
            min-width: 420px;
            border: 1px solid rgba(255,255,255,0.10);
            box-shadow:
                0 0 0 1px rgba(255,255,255,0.06) inset,
                0 10px 22px rgba(39,174,96,0.20);
        }

        #batch-sell-white:hover {
            filter: brightness(1.08);
            transform: translateY(-2px);
        }

        /* 抽卡结果卡片压低一点，别显得太高 */
        .result-box {
            grid-auto-rows: minmax(260px, auto);
            min-height: 600px;
            align-content: start;
        }

        .result-box.single-mode {
            grid-auto-rows: minmax(260px, auto);
            min-height: 280px;
        }

        .result-item {
            width: 180px;
            min-height: 260px;
            height: auto;
            padding: 12px;
            display: flex;
            flex-direction: column;
        }

        .result-thumb {
            height: 82px;
            flex: 0 0 auto;
            margin-bottom: 8px;
        }

        .result-name {
            min-height: 44px;
            font-size: 14px;
        }

        .result-desc {
            min-height: 32px;
            max-height: 32px;
            margin: 4px 0 0 0;
        }

    
        .work-panel {
            display: block;
            margin: 22px 0 18px;
            padding: 20px;
            border-radius: 16px;
            background: linear-gradient(135deg, rgba(235,75,75,0.18), rgba(230,138,46,0.18));
            border: 1px solid rgba(255,255,255,0.08);
            animation: fadeIn 0.25s ease;
        }
        .work-title {
            text-align: center;
            font-size: 20px;
            font-weight: bold;
            color: #ffd98a;
            margin-bottom: 8px;
        }
        .work-subtitle {
            text-align: center;
            color: #d6d6d6;
            font-size: 14px;
            line-height: 1.7;
            margin-bottom: 16px;
        }
        .work-area {
            width: 100%;
            min-height: 150px;
            border: none;
            border-radius: 16px;
            cursor: pointer;
            color: #fff;
            position: relative;
            overflow: hidden;
            background:
                radial-gradient(circle at 50% 30%, rgba(255,255,255,0.14), transparent 40%),
                linear-gradient(135deg, rgba(39,174,96,0.28), rgba(52,152,219,0.22), rgba(211,44,230,0.18)),
                #1b1b26;
            box-shadow: inset 0 0 0 1px rgba(255,255,255,0.06);
            transition: transform 0.12s ease, box-shadow 0.12s ease, opacity 0.12s ease;
        }
        .work-area:hover:not(:disabled) {
            transform: translateY(-2px);
            box-shadow:
                inset 0 0 0 1px rgba(255,255,255,0.08),
                0 10px 24px rgba(0,0,0,0.22);
        }
        .work-area:active:not(:disabled) {
            transform: scale(0.985);
        }
        .work-area:disabled {
            opacity: 0.55;
            cursor: not-allowed;
            transform: none;
            box-shadow: inset 0 0 0 1px rgba(255,255,255,0.05);
        }
        .work-main {
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            min-height: 150px;
            padding: 18px;
            text-align: center;
            gap: 8px;
        }
        .work-icon {
            font-size: 42px;
        }
        .work-big {
            font-size: 24px;
            font-weight: bold;
            color: #fff0a6;
        }
        .work-small {
            font-size: 13px;
            color: #d8d8d8;
        }
        .work-stats {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 12px;
            margin-top: 14px;
        }
        .work-stat {
            background: rgba(255,255,255,0.05);
            border-radius: 12px;
            padding: 12px 10px;
            text-align: center;
        }
        .work-stat-label {
            font-size: 12px;
            color: #bfbfbf;
            margin-bottom: 6px;
        }
        .work-stat-value {
            font-size: 18px;
            font-weight: bold;
            color: #ffe08a;
            word-break: break-all;
        }
        .work-log {
            margin-top: 14px;
            text-align: center;
            min-height: 24px;
            font-size: 14px;
            color: #fff;
        }
        .work-reward-float {
            position: absolute;
            left: 50%;
            top: 58%;
            transform: translate(-50%, 0);
            font-size: 24px;
            font-weight: bold;
            color: #ffe08a;
            text-shadow: 0 0 8px rgba(255,224,138,0.35);
            pointer-events: none;
            animation: workFloatUp 0.9s ease forwards;
            white-space: nowrap;
        }
        @keyframes workFloatUp {
            0% { opacity: 0; transform: translate(-50%, 14px) scale(0.9); }
            15% { opacity: 1; }
            100% { opacity: 0; transform: translate(-50%, -58px) scale(1.05); }
        }

        /* ===================== 紧凑信息布局（二次调整） ===================== */
        .inventory-card,
        .goods-card {
            min-height: 392px;
            gap: 8px;
        }

        .card-thumb {
            width: 100%;
            height: 84px;
            object-fit: contain;
            background: #0e0e15;
            border-radius: 10px;
            margin-bottom: 0;
            display: block;
            flex: 0 0 auto;
        }

        .card-title-box {
            position: relative;
            min-height: 86px;
            padding: 10px 12px 8px;
            border-radius: 14px;
            background: linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0.025));
            border: 1px solid rgba(255,255,255,0.07);
            box-shadow:
                0 0 0 1px rgba(255,255,255,0.02) inset,
                0 8px 18px rgba(0,0,0,0.14);
            display: flex;
            flex-direction: column;
            justify-content: flex-start;
            gap: 4px;
            overflow: hidden;
        }

        .inventory-name,
        .goods-name,
        .result-name {
            min-height: 0;
            margin: 0;
            line-height: 1.32;
        }

        .inventory-desc,
        .goods-desc,
        .result-desc {
            margin: 0;
            min-height: 34px;
            max-height: 34px;
            line-height: 1.45;
        }

        .inventory-buy-price {
            min-height: 0;
            margin: 0;
            padding: 4px 2px 0;
            font-size: 12px;
            line-height: 1.35;
            color: rgba(255,255,255,0.68);
        }

        .goods-seller-box {
            min-height: 48px;
            padding: 2px 2px 0;
            display: flex;
            flex-direction: column;
            justify-content: center;
            gap: 2px;
            margin: 0;
        }

        .goods-seller-name {
            font-size: 22px;
            line-height: 1.16;
            font-weight: 900;
            margin: 0;
            color: #f3f6ff;
            text-shadow:
                0 1px 0 rgba(0,0,0,0.92),
                0 0 6px rgba(255,255,255,0.08);
            word-break: break-all;
        }

        .goods-seller-title {
            font-size: 12px;
            line-height: 1.35;
            margin: 0;
            color: rgba(255,255,255,0.55);
            opacity: 0.92;
            font-style: italic;
        }

        .goods-seller-style-calm .goods-seller-name {
            color: #eef2ff;
        }

        .goods-seller-style-sharp .goods-seller-name {
            color: #dfe8ff;
        }

        .goods-seller-style-hot .goods-seller-name {
            color: #fff0d8;
        }

        .goods-seller-style-rare .goods-seller-name {
            color: #fff3c0;
            text-shadow:
                0 1px 0 rgba(0,0,0,0.92),
                0 0 8px rgba(255,215,120,0.18);
        }

        .inventory-price {
            margin-bottom: 0;
            line-height: 1.45;
        }

        .result-box {
            grid-auto-rows: minmax(296px, auto);
            min-height: 676px;
            align-content: start;
        }

        .result-box.single-mode {
            grid-auto-rows: minmax(296px, auto);
            min-height: 316px;
        }

        .result-item {
            width: 180px;
            min-height: 296px;
            height: auto;
            padding: 12px;
            display: flex;
            flex-direction: column;
            gap: 8px;
        }

        .result-thumb {
            height: 84px;
            margin-bottom: 0;
            flex: 0 0 auto;
        }

        .result-placeholder {
            min-height: 272px;
        }

        @media (max-width: 1180px) {
            .result-box {
                min-height: 980px;
            }
        }

        @media (max-width: 760px) {
            .inventory-card,
            .goods-card {
                min-height: 372px;
            }

            .goods-seller-name {
                font-size: 18px;
            }

            .result-box {
                grid-template-columns: repeat(2, 160px);
                grid-auto-rows: minmax(278px, auto);
                min-height: 920px;
                padding: 20px;
            }

            .result-box.single-mode {
                grid-template-columns: 160px;
                grid-auto-rows: minmax(278px, auto);
                min-height: 300px;
            }

            .result-item {
                width: 160px;
                min-height: 278px;
            }

            .result-thumb {
                height: 76px;
            }

            .card-title-box {
                min-height: 82px;
                padding: 9px 10px 7px;
            }

            .result-name {
                font-size: 14px;
            }
        }

    
        /* ===================== 2026-03 紧凑物品栏统一改版 ===================== */
        .market-gold-box {
            margin-top: -4px;
        }

        .bgm-control-panel {
            position: fixed;
            right: 18px;
            bottom: 18px;
            z-index: 9998;
            width: 248px;
            padding: 14px 14px 12px;
            border-radius: 16px;
            background: linear-gradient(180deg, rgba(28,31,46,0.96), rgba(18,20,32,0.96));
            border: 1px solid rgba(255,255,255,0.10);
            box-shadow:
                0 16px 38px rgba(0,0,0,0.34),
                0 0 0 1px rgba(255,255,255,0.04) inset;
            backdrop-filter: blur(10px);
        }

        .bgm-control-title {
            font-size: 13px;
            font-weight: 800;
            letter-spacing: 1px;
            color: #dce4ff;
            margin-bottom: 10px;
        }

        .bgm-toggle-btn {
            width: 100%;
            padding: 10px 14px;
            border: none;
            border-radius: 12px;
            background: linear-gradient(90deg, rgba(102,126,234,0.92), rgba(118,75,162,0.92));
            color: #fff;
            font-weight: 800;
            cursor: pointer;
            margin-bottom: 10px;
            box-shadow: 0 8px 18px rgba(102,126,234,0.18);
        }

        .bgm-toggle-btn.off {
            background: linear-gradient(90deg, rgba(92,98,124,0.92), rgba(70,74,96,0.92));
            box-shadow: none;
        }

        .bgm-volume-row {
            display: flex;
            align-items: center;
            gap: 10px;
        }

        .bgm-volume-label,
        .bgm-volume-value {
            font-size: 12px;
            color: rgba(255,255,255,0.82);
            white-space: nowrap;
        }

        #bgm-volume {
            flex: 1;
            accent-color: #7d8dff;
            cursor: pointer;
        }

        .goods-card,
        .inventory-card,
        .result-item {
            display: flex;
            flex-direction: column;
            gap: 10px;
        }

        .inventory-card,
        .goods-card {
            min-height: 372px;
            padding: 14px;
        }

        .result-box {
            min-height: 360px;
            padding: 22px;
            grid-auto-rows: minmax(318px, auto);
            align-content: start;
            gap: 16px;
        }

        .result-box.single-mode {
            min-height: 336px;
            grid-auto-rows: minmax(318px, auto);
        }

        .result-item {
            width: 180px;
            min-height: 318px;
            height: auto;
            padding: 12px;
            justify-content: flex-start;
        }

        .result-thumb,
        .card-media {
            width: 100%;
            height: 104px;
            object-fit: contain;
            background: #07070d;
            border-radius: 14px;
            margin: 0;
            display: block;
            flex: 0 0 auto;
        }

        .card-media.market-media {
            height: 112px;
        }

        .inventory-buy-price,
        .market-badge-row,
        .goods-rarity,
        .goods-name,
        .result-rarity,
        .inventory-count {
            display: none !important;
        }

        .item-info-panel {
            position: relative;
            border-radius: 18px;
            padding: 11px 13px 10px;
            background: linear-gradient(180deg, rgba(255,255,255,0.09), rgba(255,255,255,0.04));
            border: 1px solid rgba(255,255,255,0.10);
            box-shadow:
                0 0 0 1px rgba(255,255,255,0.03) inset,
                0 10px 22px rgba(0,0,0,0.14);
            overflow: hidden;
            flex: 0 0 auto;
        }

        .item-info-panel::before {
            content: "";
            position: absolute;
            inset: 0;
            border-radius: inherit;
            pointer-events: none;
            opacity: 0.9;
        }

        .item-info-panel.consumer::before {
            background: linear-gradient(90deg, rgba(176,195,217,0.08), rgba(176,195,217,0.16), rgba(176,195,217,0.08));
        }

        .item-info-panel.industrial::before {
            background: linear-gradient(90deg, rgba(75,105,255,0.10), rgba(95,135,255,0.22), rgba(75,105,255,0.10));
        }

        .item-info-panel.milspec::before {
            background: linear-gradient(90deg, rgba(136,71,255,0.12), rgba(160,105,255,0.24), rgba(136,71,255,0.12));
        }

        .item-info-panel.restricted::before {
            background: linear-gradient(90deg, rgba(211,44,230,0.14), rgba(236,92,255,0.30), rgba(211,44,230,0.14));
        }

        .item-info-panel.classified::before {
            background: linear-gradient(90deg, rgba(255,85,125,0.12), rgba(255,105,145,0.28), rgba(255,85,125,0.12));
        }

        .item-info-panel.covert::before {
            background: linear-gradient(90deg, rgba(255,95,70,0.14), rgba(255,150,90,0.30), rgba(255,95,70,0.14));
        }

        .item-info-panel.souvenir::before {
            background: linear-gradient(90deg, rgba(255,215,120,0.12), rgba(255,232,170,0.30), rgba(255,215,120,0.12));
        }

        .item-title-line,
        .item-desc-line,
        .compact-seller-id,
        .compact-seller-note {
            position: relative;
            z-index: 1;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
            display: block;
            width: 100%;
        }

        .item-title-line {
            font-size: 17px;
            font-weight: 900;
            line-height: 1.2;
            margin-bottom: 6px;
            text-shadow:
                0 2px 0 rgba(0,0,0,0.82),
                0 0 3px rgba(0,0,0,0.92);
        }

        .item-desc-line {
            font-size: 12px;
            font-style: italic;
            line-height: 1.25;
            color: rgba(255,255,255,0.82);
            opacity: 0.92;
            min-height: 16px;
            margin: 0;
        }

        .compact-scroll {
            overflow: hidden;
            white-space: nowrap;
        }

        .compact-scroll-track {
            display: inline-flex;
            align-items: center;
            min-width: 100%;
            gap: 28px;
            will-change: transform;
        }

        .compact-scroll.is-scrolling .compact-scroll-track {
            animation: compactScrollRun 10s linear infinite;
        }

        .compact-scroll.is-scrolling .compact-scroll-track span {
            flex: 0 0 auto;
        }

        @keyframes compactScrollRun {
            0% { transform: translateX(0); }
            100% { transform: translateX(calc(-50% - 14px)); }
        }

        .compact-seller-panel {
            padding: 2px 2px 0;
            display: flex;
            flex-direction: column;
            gap: 3px;
            margin-top: -1px;
            flex: 0 0 auto;
        }

        .compact-seller-id {
            font-size: 15px;
            font-weight: 900;
            color: #ffe5ad;
            text-shadow:
                0 2px 0 rgba(0,0,0,0.84),
                0 0 3px rgba(0,0,0,0.92);
        }

        .compact-seller-note {
            font-size: 11px;
            color: rgba(255,255,255,0.68);
            font-style: normal;
            line-height: 1.2;
        }

        .goods-seller-style-calm .compact-seller-id { color: #f1dfb3; }
        .goods-seller-style-sharp .compact-seller-id { color: #fcd1aa; }
        .goods-seller-style-hot .compact-seller-id { color: #ffd4b8; }
        .goods-seller-style-rare .compact-seller-id { color: #fff0bf; }

        .compact-price-panel {
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            gap: 10px;
            margin-top: auto;
            flex: 0 0 auto;
        }

        .compact-price-lines {
            color: var(--souvenir);
            font-size: 13px;
            line-height: 1.45;
            text-shadow:
                0 1px 0 rgba(0,0,0,0.92),
                0 0 2px rgba(0,0,0,0.98);
        }

        .compact-price-lines span {
            color: #fff;
            font-weight: 900;
            font-size: 16px;
        }

        .compact-price-lines .highlight-price {
            color: var(--souvenir);
        }

        .compact-badge-wrap {
            display: flex;
            align-items: center;
            justify-content: flex-end;
            min-height: 24px;
            flex: 0 0 auto;
            padding-top: 2px;
        }

        .compact-badge-wrap .card-status-badge,
        .compact-badge-wrap .sold-tag {
            min-width: 74px;
            padding: 4px 10px;
            font-size: 11px;
        }

        .card-action-row {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 8px;
            margin-top: 2px;
            flex: 0 0 auto;
        }

        .card-action-row.single {
            grid-template-columns: 1fr;
        }

        .btn-shelf,
        .btn-buy,
        .btn-recycle-mini {
            width: 100%;
            min-height: 40px;
            padding: 9px 10px;
            border: none;
            border-radius: 10px;
            color: #fff;
            font-weight: 800;
            cursor: pointer;
            transition: filter 0.18s, transform 0.18s;
        }

        .btn-shelf:hover,
        .btn-buy:hover,
        .btn-recycle-mini:hover {
            filter: brightness(1.06);
            transform: translateY(-1px);
        }

        .btn-recycle-mini {
            background: linear-gradient(90deg, #d08b1d, #b46a14);
        }

        .action-done-btn {
            grid-column: 1 / -1;
            background: rgba(90,96,120,0.92) !important;
            cursor: default !important;
            transform: none !important;
            filter: none !important;
        }

        .goods-card.sold-out .card-action-row {
            pointer-events: none;
        }

        .result-item .compact-price-lines {
            font-size: 12px;
        }

        .result-item .compact-price-lines span {
            font-size: 14px;
        }

        .result-item .item-title-line {
            font-size: 15px;
        }

        .result-item .btn-shelf,
        .result-item .btn-recycle-mini {
            min-height: 36px;
            padding: 8px 8px;
            font-size: 13px;
        }

        .inventory-card img,
        .goods-card img,
        .result-item img {
            margin-bottom: 0 !important;
        }

        @media (max-width: 1180px) {
            .result-box {
                grid-template-columns: repeat(3, 180px);
                min-height: 700px;
            }
        }

        @media (max-width: 760px) {
            .bgm-control-panel {
                left: 12px;
                right: 12px;
                bottom: 12px;
                width: auto;
            }

            .result-box {
                grid-template-columns: repeat(2, 160px);
                grid-auto-rows: minmax(302px, auto);
                min-height: 660px;
                padding: 16px;
            }

            .result-box.single-mode {
                grid-template-columns: 160px;
                grid-auto-rows: minmax(302px, auto);
                min-height: 320px;
            }

            .result-item {
                width: 160px;
                min-height: 302px;
            }

            .result-thumb,
            .card-media {
                height: 92px;
            }
        }

/* ===== style[1] id="future-card-layout-v3" ===== */
/* ===================== 2026-03 统一物品栏 V3（真正生效版） ===================== */
#inventory-grid,
#goods-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 18px;
}

#result-box {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(248px, 1fr));
    gap: 18px;
    padding: 20px;
    min-height: 360px;
    align-content: start;
}

#result-box.single-mode {
    grid-template-columns: minmax(248px, 320px);
    justify-content: start;
    min-height: 380px;
}

#inventory-grid .inventory-card,
#goods-grid .goods-card,
#result-box .result-item {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-height: 360px;
    padding: 10px 12px 12px;
    border-radius: 22px;
    overflow: hidden;
}

#result-box .result-item {
    width: auto;
    min-height: 372px;
}

#goods-grid .goods-card.sold-out {
    pointer-events: none;
}

#goods-grid .goods-card.sold-out .unified-media,
#goods-grid .goods-card.sold-out .unified-info-box,
#goods-grid .goods-card.sold-out .unified-seller-box,
#goods-grid .goods-card.sold-out .unified-price-block,
#goods-grid .goods-card.sold-out .unified-market-buy-btn {
    opacity: 0.48;
}

#inventory-grid .inventory-card > .inventory-count,
#inventory-grid .inventory-card > .inventory-buy-price,
#inventory-grid .inventory-card > .inventory-name,
#inventory-grid .inventory-card > .inventory-desc,
#goods-grid .goods-card > .goods-rarity,
#goods-grid .goods-card > .goods-name,
#goods-grid .goods-card > .goods-desc,
#goods-grid .goods-card > .goods-seller-name,
#goods-grid .goods-card > .market-badge-row,
#result-box .result-item > .result-name,
#result-box .result-item > .result-desc,
#result-box .result-item > .result-rarity,
#result-box .result-item > .inventory-price,
#inventory-grid .inventory-card > .inventory-price,
#goods-grid .goods-card > .inventory-price {
    display: none !important;
}

.unified-media {
    width: 100%;
    height: 120px;
    object-fit: contain;
    object-position: center center;
    display: block;
    background: #07070e;
    border-radius: 16px;
    margin: 0 !important;
    flex: 0 0 auto;
}

#goods-grid .unified-media {
    height: 110px;
}

.unified-info-box {
    position: relative;
    padding: 12px 14px 11px;
    border-radius: 20px;
    border: 1px solid rgba(255,255,255,0.09);
    background: linear-gradient(180deg, rgba(255,255,255,0.085), rgba(255,255,255,0.035));
    box-shadow:
        0 0 0 1px rgba(255,255,255,0.03) inset,
        0 12px 28px rgba(0,0,0,0.16);
    overflow: hidden;
    flex: 0 0 auto;
}

.unified-info-box::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    border-radius: inherit;
    opacity: 0.95;
}

.unified-info-box.consumer::before { background: linear-gradient(90deg, rgba(176,195,217,0.08), rgba(176,195,217,0.18), rgba(176,195,217,0.08)); }
.unified-info-box.industrial::before { background: linear-gradient(90deg, rgba(75,105,255,0.10), rgba(90,130,255,0.22), rgba(75,105,255,0.10)); }
.unified-info-box.milspec::before { background: linear-gradient(90deg, rgba(136,71,255,0.12), rgba(160,105,255,0.22), rgba(136,71,255,0.12)); }
.unified-info-box.restricted::before { background: linear-gradient(90deg, rgba(211,44,230,0.12), rgba(235,92,255,0.24), rgba(211,44,230,0.12)); }
.unified-info-box.classified::before { background: linear-gradient(90deg, rgba(255,85,125,0.12), rgba(255,115,150,0.25), rgba(255,85,125,0.12)); }
.unified-info-box.covert::before { background: linear-gradient(90deg, rgba(255,95,70,0.12), rgba(255,140,90,0.26), rgba(255,95,70,0.12)); }
.unified-info-box.souvenir::before { background: linear-gradient(90deg, rgba(255,215,120,0.12), rgba(255,232,170,0.26), rgba(255,215,120,0.12)); }

.unified-card-title,
.unified-card-desc,
.unified-seller-id,
.unified-seller-note {
    position: relative;
    z-index: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.unified-card-title {
    font-size: 19px;
    line-height: 1.14;
    font-weight: 900;
    letter-spacing: 0.2px;
    margin: 0;
    text-shadow:
        0 2px 0 rgba(0,0,0,0.82),
        0 0 4px rgba(0,0,0,0.92);
}

.unified-card-title.consumer { color: var(--consumer); }
.unified-card-title.industrial { color: var(--industrial); }
.unified-card-title.milspec { color: var(--milspec); }
.unified-card-title.restricted { color: var(--restricted); }
.unified-card-title.classified { color: #ff785f; }
.unified-card-title.covert { color: #ff895b; }
.unified-card-title.souvenir { color: #ffd978; }

.unified-card-desc {
    margin-top: 7px;
    min-height: 16px;
    font-size: 11px;
    line-height: 1.15;
    color: rgba(255,255,255,0.82);
    text-shadow:
        0 1px 0 rgba(0,0,0,0.86),
        0 0 2px rgba(0,0,0,0.92);
}

.unified-card-desc.is-empty {
    display: none;
}

.unified-seller-box {
    display: flex;
    flex-direction: column;
    gap: 2px;
    margin-top: -1px;
    padding: 0 2px;
    flex: 0 0 auto;
}

.unified-seller-id {
    font-size: 13px;
    line-height: 1.12;
    font-weight: 900;
    color: #f1dfb3;
    text-shadow:
        0 2px 0 rgba(0,0,0,0.82),
        0 0 4px rgba(0,0,0,0.92);
}

.unified-seller-note {
    font-size: 10px;
    line-height: 1.2;
    color: rgba(255,255,255,0.58);
    font-style: normal;
}

.goods-seller-style-calm .unified-seller-id { color: #f1dfb3; }
.goods-seller-style-sharp .unified-seller-id { color: #ffd8aa; }
.goods-seller-style-hot .unified-seller-id { color: #ffcf9e; }
.goods-seller-style-rare .unified-seller-id { color: #fff0bf; }

.unified-marquee {
    overflow: hidden;
}

.unified-marquee-track {
    display: inline-flex;
    align-items: center;
    gap: 30px;
    min-width: 100%;
    will-change: transform;
}

.unified-marquee.is-running .unified-marquee-track {
    animation: unifiedMarqueeRun 10s linear infinite;
}

.unified-marquee.is-running .unified-marquee-track span {
    flex: 0 0 auto;
}

@keyframes unifiedMarqueeRun {
    0% { transform: translateX(0); }
    100% { transform: translateX(calc(-50% - 15px)); }
}

.unified-price-block {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px;
    margin-top: auto;
    padding: 0 2px;
    flex: 0 0 auto;
}

.unified-price-lines {
    min-width: 0;
    color: var(--souvenir);
    font-weight: 800;
    text-shadow:
        0 1px 0 rgba(0,0,0,0.92),
        0 0 2px rgba(0,0,0,0.96);
}

.unified-price-line {
    white-space: nowrap;
    font-size: 13px;
    line-height: 1.42;
}

.unified-price-line .label {
    color: var(--souvenir);
}

.unified-price-line .value {
    color: #f9fbff;
    font-size: 17px;
    font-weight: 900;
}

.unified-price-line .value.highlight {
    color: var(--souvenir);
}

.unified-price-line .unit {
    color: var(--souvenir);
    font-size: 13px;
    font-weight: 800;
}

.unified-price-badge {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    min-width: 86px;
    min-height: 40px;
    flex: 0 0 auto;
}

.unified-price-badge:empty {
    display: none;
}

.unified-price-badge .sold-tag,
.unified-price-badge .card-status-badge {
    min-width: 78px;
    padding: 5px 12px;
    font-size: 11px;
    border-radius: 999px;
}

.unified-action-stack {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    margin-top: 2px;
    flex: 0 0 auto;
}

.unified-action-duo {
    grid-template-columns: 1fr;
}

#inventory-grid .btn-shelf,
#inventory-grid .btn-recycle-mini,
#result-box .btn-shelf,
#result-box .btn-recycle-mini,
#goods-grid .btn-shelf,
#goods-grid .btn-buy {
    width: 100%;
    min-height: 44px;
    padding: 10px 12px;
    border: none;
    border-radius: 14px;
    color: #fff;
    font-size: 16px;
    font-weight: 900;
    cursor: pointer;
    transition: transform 0.15s ease, filter 0.15s ease;
}

#inventory-grid .btn-shelf,
#result-box .btn-shelf,
#goods-grid .btn-shelf,
#goods-grid .btn-buy {
    background: linear-gradient(90deg, #6f87ff, #925ac9);
}

#inventory-grid .btn-recycle-mini,
#result-box .btn-recycle-mini {
    background: linear-gradient(90deg, #f26d6f, #caa04d);
}

#inventory-grid .btn-shelf:hover,
#inventory-grid .btn-recycle-mini:hover,
#result-box .btn-shelf:hover,
#result-box .btn-recycle-mini:hover,
#goods-grid .btn-shelf:hover,
#goods-grid .btn-buy:hover {
    transform: translateY(-1px);
    filter: brightness(1.06);
}

.action-done-btn {
    background: rgba(90,96,120,0.92) !important;
    cursor: default !important;
    transform: none !important;
    filter: none !important;
}

#result-box .result-placeholder {
    min-height: 348px;
}

#result-box .result-item.rolling {
    min-height: 372px;
}

.market-gold-box {
    margin-top: 0;
}

@media (max-width: 1440px) {
    #inventory-grid,
    #goods-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (max-width: 1180px) {
    #inventory-grid,
    #goods-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    #result-box {
        grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    }
}

@media (max-width: 760px) {
    #inventory-grid,
    #goods-grid,
    #result-box {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }

    #result-box.single-mode {
        grid-template-columns: minmax(0, 1fr);
    }

    #inventory-grid .inventory-card,
    #goods-grid .goods-card,
    #result-box .result-item {
        min-height: 338px;
        padding: 10px 10px 12px;
    }

    .unified-media {
        height: 94px;
    }

    .unified-card-title {
        font-size: 16px;
    }

    .unified-price-line {
        font-size: 12px;
    }

    .unified-price-line .value {
        font-size: 15px;
    }

    .bgm-control-panel {
        left: 12px;
        right: 12px;
        bottom: 12px;
        width: auto;
    }
}

/* ===================== 2026-03 统一物品栏 V3.1（收字重 / 去阴影切边） ===================== */
.unified-info-box {
    padding: 11px 13px 10px;
    border-radius: 18px;
    border: 1px solid rgba(255,255,255,0.08);
    background: linear-gradient(180deg, rgba(255,255,255,0.07), rgba(255,255,255,0.03));
    box-shadow: inset 0 0 0 1px rgba(255,255,255,0.02);
}

.unified-info-box::before {
    opacity: 0.72;
}

.unified-card-title,
.unified-card-desc,
.unified-seller-id,
.unified-seller-note,
.unified-price-lines,
.unified-price-line,
.unified-price-line .label,
.unified-price-line .value,
.unified-price-line .unit,
.item-title-line,
.item-desc-line,
.compact-seller-id,
.compact-seller-note,
.goods-seller-name,
.goods-seller-title,
.inventory-name,
.goods-name,
.result-name,
.inventory-desc,
.goods-desc,
.result-desc {
    text-shadow: none !important;
}

.unified-card-title {
    font-size: 16px;
    line-height: 1.16;
    font-weight: 850;
    letter-spacing: 0;
}

.unified-card-desc {
    margin-top: 6px;
    min-height: 14px;
    font-size: 10px;
    line-height: 1.2;
    color: rgba(255,255,255,0.76);
}

.unified-seller-box {
    gap: 1px;
}

.unified-seller-id {
    font-size: 11px;
    line-height: 1.15;
    font-weight: 800;
}

.unified-seller-note {
    font-size: 9px;
    line-height: 1.18;
    color: rgba(255,255,255,0.5);
}

.unified-price-block {
    gap: 10px;
}

.unified-price-lines {
    font-weight: 780;
}

.unified-price-line {
    font-size: 12px;
    line-height: 1.36;
}

.unified-price-line .value {
    font-size: 15px;
    font-weight: 850;
}

.unified-price-line .unit {
    font-size: 12px;
}

.unified-price-badge .sold-tag,
.unified-price-badge .card-status-badge {
    font-size: 10px;
    min-width: 74px;
    min-height: 34px;
    padding: 4px 10px;
    box-shadow: none;
}

.unified-market-buy-btn,
.unified-list-btn,
.unified-recycle-btn {
    box-shadow: none;
}

@media (max-width: 760px) {
    .unified-info-box {
        padding: 10px 12px 9px;
        border-radius: 16px;
    }

    .unified-card-title {
        font-size: 15px;
    }

    .unified-card-desc {
        font-size: 9px;
    }

    .unified-seller-id {
        font-size: 10px;
    }

    .unified-seller-note {
        font-size: 8px;
    }

    .unified-price-line {
        font-size: 11px;
    }

    .unified-price-line .value {
        font-size: 14px;
    }

    .unified-price-line .unit {
        font-size: 11px;
    }
}

/* ===== style[2] id="future-card-layout-v5-shadow-result-tune" ===== */
/* ===================== 2026-03 统一物品栏 V5（阴影辨识度 + 抽卡结果紧凑化） ===================== */

/* 1) 文字恢复轻微阴影，增强辨识度，但避免以前那种糊边和切边 */
.unified-card-title,
.item-title-line,
.inventory-name,
.goods-name,
.result-name {
    text-shadow: 0 1px 1px rgba(0,0,0,0.38) !important;
}

.unified-card-desc,
.item-desc-line,
.inventory-desc,
.goods-desc,
.result-desc,
.unified-seller-note,
.compact-seller-note,
.goods-seller-title {
    text-shadow: 0 1px 1px rgba(0,0,0,0.24) !important;
}

.unified-seller-id,
.compact-seller-id,
.goods-seller-name,
.unified-price-lines,
.unified-price-line,
.unified-price-line .label,
.unified-price-line .value,
.unified-price-line .unit,
.compact-price-lines,
.compact-price-lines span,
.inventory-price,
.inventory-price span {
    text-shadow: 0 1px 1px rgba(0,0,0,0.34) !important;
}

/* 标题色块也稍微恢复一点层次，但不再发灰发脏 */
.unified-info-box,
.card-title-box {
    box-shadow:
        0 0 0 1px rgba(255,255,255,0.03) inset,
        0 6px 14px rgba(0,0,0,0.10);
}

/* 2) 抽卡结果改成五列两行布局，十连抽默认每行5个、共2行 */
#result-box {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 10px;
    padding: 14px;
    min-height: 252px;
    align-content: start;
}

#result-box.single-mode {
    grid-template-columns: minmax(240px, 300px);
    min-height: 320px;
}

#result-box .result-item {
    width: auto;
    min-width: 0;
    height: auto;
    min-height: 236px;
    padding: 8px 8px 10px;
    border-radius: 16px;
    gap: 6px;
}

#result-box .result-item.rolling,
#result-box .result-placeholder {
    min-height: 236px;
}

#result-box .unified-media,
#result-box .result-thumb {
    height: 68px;
    border-radius: 12px;
}

#result-box .unified-info-box {
    min-height: 58px;
    padding: 8px 9px 7px;
    border-radius: 12px;
}

#result-box .unified-card-title {
    font-size: 11px;
    line-height: 1.16;
    font-weight: 800;
}

#result-box .unified-card-desc {
    margin-top: 3px;
    min-height: 11px;
    font-size: 8px;
    line-height: 1.15;
    opacity: 0.9;
}

#result-box .unified-price-block {
    gap: 6px;
    margin-top: auto;
}

#result-box .unified-price-lines {
    font-size: 9px;
    line-height: 1.22;
}

#result-box .unified-price-line {
    gap: 2px;
    margin-bottom: 2px;
}

#result-box .unified-price-line .value {
    font-size: 10px;
    font-weight: 800;
}

#result-box .unified-price-line .unit {
    font-size: 8px;
}

#result-box .unified-action-stack {
    gap: 6px;
    margin-top: 2px;
}

#result-box .btn-shelf,
#result-box .btn-recycle-mini {
    min-height: 30px;
    padding: 6px 6px;
    border-radius: 10px;
    font-size: 11px;
    font-weight: 800;
}

/* 单抽时保持正常展示，不要缩得太狠 */
#result-box.single-mode .result-item {
    min-height: 320px;
    padding: 10px 10px 12px;
    gap: 8px;
}

#result-box.single-mode .unified-media,
#result-box.single-mode .result-thumb {
    height: 100px;
}

#result-box.single-mode .unified-info-box {
    min-height: 78px;
    padding: 10px 11px 9px;
}

#result-box.single-mode .unified-card-title {
    font-size: 16px;
}

#result-box.single-mode .unified-card-desc {
    font-size: 10px;
    min-height: 14px;
}

#result-box.single-mode .unified-price-lines {
    font-size: 13px;
}

#result-box.single-mode .unified-price-line .value {
    font-size: 16px;
}

#result-box.single-mode .unified-price-line .unit {
    font-size: 11px;
}

#result-box.single-mode .btn-shelf,
#result-box.single-mode .btn-recycle-mini {
    min-height: 42px;
    font-size: 15px;
    border-radius: 14px;
}

/* 中屏和小屏回退，避免太挤 */
@media (max-width: 1680px) {
    #result-box {
        grid-template-columns: repeat(5, minmax(0, 1fr));
        min-height: 500px;
    }
}

@media (max-width: 1180px) {
    #result-box {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        min-height: 520px;
    }
}

@media (max-width: 900px) {
    #result-box {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        min-height: 540px;
    }
}

@media (max-width: 760px) {
    #result-box {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
        padding: 12px;
        min-height: 560px;
    }

    #result-box .result-item {
        min-height: 250px;
    }

    #result-box .result-item.rolling,
    #result-box .result-placeholder {
        min-height: 250px;
    }

    #result-box .unified-media,
    #result-box .result-thumb {
        height: 78px;
    }

    #result-box .unified-card-title {
        font-size: 12px;
    }

    #result-box .unified-card-desc {
        font-size: 9px;
    }

    #result-box .unified-price-lines {
        font-size: 10px;
    }

    #result-box .unified-price-line .value {
        font-size: 12px;
    }

    #result-box .btn-shelf,
    #result-box .btn-recycle-mini {
        min-height: 34px;
        font-size: 12px;
    }
}

/* ===== style[3] id="future-card-layout-v6-copy-badge-tune" ===== */
/* ===================== 2026-03 统一物品栏 V6（文案统一 / 简介恢复 / 抽卡结果收紧 / 市场角标骚化） ===================== */

/* 1) 统一文字辨识度：恢复轻阴影，但不再脏糊 */
.unified-card-title,
.item-title-line,
.inventory-name,
.goods-name,
.result-name {
    text-shadow:
        0 1px 1px rgba(0,0,0,0.44),
        0 0 6px rgba(0,0,0,0.14) !important;
}

.unified-card-desc,
.item-desc-line,
.inventory-desc,
.goods-desc,
.result-desc,
.unified-seller-note,
.compact-seller-note,
.goods-seller-title {
    text-shadow:
        0 1px 1px rgba(0,0,0,0.30),
        0 0 4px rgba(0,0,0,0.10) !important;
}

.unified-price-line,
.unified-price-line .label,
.unified-price-line .value,
.unified-price-line .unit,
.unified-seller-id {
    text-shadow:
        0 1px 1px rgba(0,0,0,0.38),
        0 0 5px rgba(0,0,0,0.12) !important;
}

/* 2) 简介恢复成更好读的斜体、字号稍大 */
.unified-card-desc,
.item-desc-line,
.inventory-desc,
.goods-desc,
.result-desc {
    font-size: 12px !important;
    line-height: 1.18 !important;
    font-style: italic !important;
    letter-spacing: 0.12px;
    color: rgba(255,255,255,0.84) !important;
    opacity: 0.98;
}

.unified-card-title {
    font-size: 17px !important;
    line-height: 1.15 !important;
    letter-spacing: 0.1px;
}

/* 3) 抽卡结果：字号按当前版本统一，同时收紧空隙 */
#result-box {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 8px !important;
    padding: 10px 10px 12px !important;
    min-height: 0 !important;
}

#result-box .result-item {
    min-height: 214px !important;
    padding: 8px 8px 9px !important;
    border-radius: 15px !important;
    gap: 6px !important;
}

#result-box .result-item.rolling,
#result-box .result-placeholder {
    min-height: 214px !important;
}

#result-box .unified-media,
#result-box .result-thumb {
    height: 64px !important;
    border-radius: 11px !important;
}

#result-box .unified-info-box {
    min-height: 56px !important;
    padding: 8px 9px 7px !important;
    border-radius: 12px !important;
}

#result-box .unified-card-title {
    font-size: 12px !important;
    line-height: 1.14 !important;
    font-weight: 850 !important;
}

#result-box .unified-card-desc {
    margin-top: 3px !important;
    min-height: 11px !important;
    font-size: 9px !important;
    line-height: 1.14 !important;
    font-style: italic !important;
}

#result-box .unified-price-block {
    gap: 7px !important;
    margin-top: auto !important;
}

#result-box .unified-price-lines {
    font-size: 10px !important;
    line-height: 1.18 !important;
}

#result-box .unified-price-line {
    gap: 2px !important;
    margin-bottom: 1px !important;
    font-size: 10px !important;
}

#result-box .unified-price-line .value {
    font-size: 13px !important;
    font-weight: 850 !important;
}

#result-box .unified-price-line .unit {
    font-size: 9px !important;
}

#result-box .unified-action-stack {
    gap: 6px !important;
    margin-top: 2px !important;
}

#result-box .btn-shelf,
#result-box .btn-recycle-mini {
    min-height: 28px !important;
    padding: 5px 6px !important;
    border-radius: 10px !important;
    font-size: 12px !important;
    font-weight: 850 !important;
}

#result-box.single-mode .result-item {
    min-height: 318px !important;
    padding: 10px 10px 12px !important;
    gap: 8px !important;
}

#result-box.single-mode .unified-media,
#result-box.single-mode .result-thumb {
    height: 100px !important;
}

#result-box.single-mode .unified-card-title {
    font-size: 16px !important;
}

#result-box.single-mode .unified-card-desc {
    font-size: 11px !important;
}

#result-box.single-mode .unified-price-line {
    font-size: 13px !important;
}

#result-box.single-mode .unified-price-line .value {
    font-size: 16px !important;
}

#result-box.single-mode .btn-shelf,
#result-box.single-mode .btn-recycle-mini {
    min-height: 42px !important;
    font-size: 15px !important;
}

@media (max-width: 1180px) {
    #result-box {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 900px) {
    #result-box {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 760px) {
    #result-box {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
        padding: 12px !important;
    }

    #result-box .result-item,
    #result-box .result-item.rolling,
    #result-box .result-placeholder {
        min-height: 246px !important;
    }

    #result-box .unified-media,
    #result-box .result-thumb {
        height: 78px !important;
    }

    #result-box .unified-card-title {
        font-size: 13px !important;
    }

    #result-box .unified-card-desc {
        font-size: 10px !important;
    }

    #result-box .unified-price-line,
    #result-box .unified-price-lines {
        font-size: 11px !important;
    }

    #result-box .unified-price-line .value {
        font-size: 14px !important;
    }

    #result-box .btn-shelf,
    #result-box .btn-recycle-mini {
        min-height: 34px !important;
        font-size: 12px !important;
    }
}

/* 4) 市场价格状态角标：字号统一、更亮、更骚、更搞笑 */
.unified-price-badge {
    min-width: 112px !important;
    min-height: 42px !important;
}

.unified-price-badge .sold-tag,
.unified-price-badge .card-status-badge,
.market-badge-row .sold-tag,
.market-badge-row .card-status-badge {
    min-width: 104px !important;
    min-height: 38px !important;
    padding: 6px 14px !important;
    border-radius: 999px !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    letter-spacing: 0.4px !important;
    line-height: 1 !important;
    text-shadow:
        0 1px 1px rgba(0,0,0,0.36),
        0 0 6px rgba(0,0,0,0.14) !important;
    box-shadow:
        0 0 0 1px rgba(255,255,255,0.08) inset,
        0 10px 18px rgba(0,0,0,0.18) !important;
}

.card-status-badge.hot {
    color: #fff7c2 !important;
    background: linear-gradient(90deg, rgba(255,176,46,0.92), rgba(255,222,112,0.74), rgba(255,162,44,0.92)) !important;
    animation: hotTagPulse 1.35s ease-in-out infinite;
}

.card-status-badge.live {
    color: #dbedff !important;
    background: linear-gradient(90deg, rgba(70,122,255,0.84), rgba(106,162,255,0.70), rgba(104,86,255,0.86)) !important;
}

.card-status-badge.stale {
    color: #ffe1da !important;
    background: linear-gradient(90deg, rgba(255,101,108,0.86), rgba(255,130,95,0.70), rgba(255,83,150,0.84)) !important;
}

.card-status-badge.dead {
    color: #ffe6ba !important;
    background: linear-gradient(90deg, rgba(184,74,28,0.92), rgba(124,36,20,0.88), rgba(212,102,32,0.92)) !important;
    animation: deadTagFlicker 1.45s ease-in-out infinite;
}

.card-status-badge.done,
.unified-price-badge .sold-tag:not(.card-status-badge) {
    color: #fff0d0 !important;
    background: linear-gradient(90deg, rgba(111,111,111,0.88), rgba(153,129,87,0.78), rgba(98,98,98,0.88)) !important;
}

/* ===== style[4] id="ui-architecture-overhaul-v2-style" ===== */
body {
    background:
        radial-gradient(circle at top left, rgba(255,74,129,0.14), transparent 28%),
        radial-gradient(circle at top right, rgba(131,92,255,0.12), transparent 26%),
        linear-gradient(180deg, #0f1020 0%, #0a0b16 100%);
    padding: 18px 20px 120px;
}
.app-shell,
.page,
.top-nav,
.global-status-strip,
.app-header {
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
}
.app-header {
    display: grid;
    grid-template-columns: 240px minmax(0,1fr) auto;
    gap: 18px;
    align-items: center;
    margin-bottom: 18px;
}
.brand-box {
    min-height: 74px;
    border-radius: 0;
    background: transparent;
    border: none;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 0;
    box-shadow: none;
    overflow: visible;
    position: relative;
}
.site-logo {
    max-width: 100%;
    max-height: 72px;
    object-fit: contain;
    display: block;
    filter: drop-shadow(0 10px 22px rgba(0,0,0,0.18));
}
.brand-fallback {
    font-size: 22px;
    font-weight: 900;
    letter-spacing: 1px;
    display: none;
}
.top-nav {
    display: flex;
    justify-content: flex-start;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 0;
}
.nav-btn {
    min-width: 92px;
    padding: 14px 20px;
    border-radius: 14px;
    background: linear-gradient(180deg, rgba(255,255,255,0.10), rgba(255,255,255,0.06));
    border: 1px solid rgba(255,255,255,0.08);
    color: rgba(255,255,255,0.88);
    box-shadow: 0 10px 22px rgba(0,0,0,0.16);
}
.nav-btn.active {
    background: linear-gradient(90deg, #ff5d91, #f34d72);
    color: #fff;
    box-shadow: 0 12px 24px rgba(243,77,114,0.28);
}
.header-actions {
    display: flex;
    align-items: center;
    justify-self: end;
    gap: 12px;
}
.restart-nav-btn,
.debug-nav-btn {
    min-width: 88px;
}
.debug-nav-btn {
    justify-self: end;
}
.global-status-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
    margin-bottom: 18px;
}
.global-stat-card,
.global-system-card,
.shell-card,
.home-panel,
.stats-card,
.achieve-card,
.rarity-card,
.work-stat,
.result-item,
.inventory-card,
.goods-card,
.table-body,
.table-header,
.chart-box,
.card-config-panel {
    background: linear-gradient(180deg, rgba(26,29,46,0.96), rgba(18,20,34,0.96));
    border: 1px solid rgba(255,255,255,0.08);
    box-shadow: 0 16px 34px rgba(0,0,0,0.18);
}
.global-stat-card,
.global-system-card {
    border-radius: 18px;
    padding: 18px 22px;
    min-height: 112px;
}
.global-stat-label,
.global-system-title {
    font-size: 14px;
    color: rgba(255,255,255,0.68);
    margin-bottom: 14px;
    font-weight: 700;
}
.global-stat-value {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 20px;
    font-weight: 900;
    color: #fff;
}
.global-money-card .global-stat-value { color: #ffd966; }
.global-krw-card .global-stat-value { color: #8da5ff; }
.global-stock-card .global-stat-value { color: #fff; }
.stat-icon { font-size: 16px; }
.stat-suffix { color: rgba(255,255,255,0.62); font-size: 15px; font-weight: 700; }
.global-system-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 12px;
}
.global-system-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}
.card-config-note {
    color: rgba(255,255,255,0.68);
    font-size: 13px;
    line-height: 1.6;
}
.card-config-status {
    white-space: nowrap;
    font-weight: 900;
}
.page { display: none; }
.page.active { display: block; }
.main-card.shell-card {
    padding: 26px 28px 30px;
    border-radius: 24px;
    background: linear-gradient(180deg, rgba(18,20,34,0.98), rgba(11,13,23,0.98));
}
.page-panel-head,
.section-title-row {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 16px;
    flex-wrap: wrap;
}
.page-panel-title,
.home-panel h2,
.gacha-head-copy h2 {
    font-size: 24px;
    line-height: 1.15;
    font-weight: 900;
}
.page-panel-desc,
.section-desc,
.gacha-head-copy p {
    color: rgba(255,255,255,0.68);
    line-height: 1.7;
    font-size: 14px;
}
.section-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #ff82ac;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-bottom: 8px;
}
.section-mini { color: rgba(255,255,255,0.64); font-size: 13px; font-weight: 700; }
.home-top-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr);
    gap: 18px;
    margin-bottom: 18px;
}
.home-panel {
    border-radius: 22px;
    padding: 22px;
}
.mode-entry-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 18px;
    margin-top: 18px;
}
.mode-entry-card {
    min-height: 246px;
    border-radius: 24px;
    border: 1px solid rgba(255,255,255,0.08);
    background: linear-gradient(180deg, rgba(122,130,255,0.18), rgba(122,130,255,0.10));
    color: #fff;
    padding: 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 14px;
    cursor: pointer;
    transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
    box-shadow: 0 18px 34px rgba(0,0,0,0.18);
}
.mode-entry-card:hover:not(:disabled) { transform: translateY(-4px); box-shadow: 0 22px 40px rgba(0,0,0,0.24); }
.mode-entry-card:disabled { cursor: not-allowed; opacity: .64; }
.mode-entry-icon { font-size: 36px; }
.mode-entry-title { font-size: 38px; font-weight: 900; }
.mode-entry-desc { font-size: 14px; line-height: 1.7; color: rgba(255,255,255,0.76); text-align: center; max-width: 290px; }
.mode-entry-active { background: linear-gradient(135deg, rgba(108,126,255,0.24), rgba(167,96,255,0.18)); }
.mode-entry-disabled { background: linear-gradient(135deg, rgba(255,255,255,0.09), rgba(255,255,255,0.04)); }
.gacha-head-row {
    display: grid;
    grid-template-columns: auto minmax(0,1fr) auto;
    gap: 18px;
    align-items: center;
    margin-bottom: 18px;
}
.ghost-back-btn,
.pool-tab {
    padding: 12px 18px;
    border-radius: 14px;
    border: 1px solid rgba(255,255,255,0.08);
    background: linear-gradient(180deg, rgba(255,255,255,0.08), rgba(255,255,255,0.04));
    color: #fff;
    font-weight: 800;
    cursor: pointer;
}
.pool-tab.active { background: linear-gradient(90deg, #667eea, #764ba2); }
.pool-tab:disabled { opacity: .54; cursor: not-allowed; }
.gacha-draw-actions { justify-content: flex-start; margin-bottom: 16px; }
.section-inline-title { margin: 0 0 16px; }
.sign-choice-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 14px;
    margin-top: 16px;
}
.sign-choice-card {
    min-height: 154px;
    border-radius: 18px;
    border: 1px solid rgba(255,255,255,0.08);
    background: linear-gradient(180deg, rgba(255,255,255,0.08), rgba(255,255,255,0.03));
    color: #fff;
    padding: 16px 14px;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 8px;
    cursor: pointer;
    transition: transform .18s ease, box-shadow .18s ease;
}
.sign-choice-card:hover:not(:disabled) { transform: translateY(-3px); box-shadow: 0 14px 28px rgba(0,0,0,0.18); }
.sign-choice-card:disabled { cursor: not-allowed; opacity: .78; }
.sign-choice-card.selected { outline: 2px solid rgba(108,255,176,0.7); box-shadow: 0 0 0 1px rgba(108,255,176,0.22) inset, 0 18px 32px rgba(0,0,0,0.22); }
.sign-choice-icon { font-size: 30px; }
.sign-choice-title { font-size: 16px; font-weight: 900; }
.sign-choice-value { color: #ffd966; font-size: 22px; font-weight: 900; }
.sign-choice-desc { color: rgba(255,255,255,0.68); font-size: 12px; line-height: 1.55; }
.streak-reward-row {
    display: grid;
    grid-template-columns: repeat(7, minmax(0,1fr));
    gap: 12px;
    margin-top: 16px;
}
.streak-reward-card {
    border-radius: 16px;
    padding: 14px 10px;
    text-align: center;
    background: linear-gradient(180deg, rgba(255,255,255,0.08), rgba(255,255,255,0.03));
    border: 1px solid rgba(255,255,255,0.08);
}
.streak-reward-card.active { outline: 2px solid rgba(102,255,153,0.85); }
.streak-reward-card.done { opacity: .7; }
.streak-day { font-size: 12px; color: rgba(255,255,255,0.66); margin-bottom: 8px; }
.streak-icon { font-size: 24px; margin-bottom: 8px; }
.streak-value { font-size: 16px; font-weight: 900; color: #ffe08a; }
.inventory-tool-row,
.section-title-split,
.collection-head-row,
.goods-header,
.slot-header,
.refresh-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    flex-wrap: wrap;
}
.inventory-tool-row { margin: 10px 0 22px; justify-content: center; }
.inventory-sort-box { display: flex; align-items: center; gap: 10px; color: rgba(255,255,255,0.7); }
.inventory-sort-box select {
    background: rgba(255,255,255,0.06);
    color: #fff;
    border: 1px solid rgba(255,255,255,0.12);
    border-radius: 10px;
    padding: 8px 12px;
}
.collection-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0,1fr));
    gap: 16px;
}
.collection-card {
    min-height: 0;
    border-radius: 22px;
    padding: 14px;
    background: linear-gradient(180deg, rgba(25,28,45,0.96), rgba(14,16,28,0.98));
    border: 1px solid rgba(255,255,255,0.08);
    display: flex;
    flex-direction: column;
    gap: 10px;
    overflow: hidden;
    position: relative;
    isolation: isolate;
}
.collection-card.locked { opacity: .42; filter: grayscale(.45); }
.collection-media-wrap {
    width: 100%;
    height: 116px;
    border-radius: 16px;
    background: #05060d;
    border: 1px solid rgba(255,255,255,0.04);
    overflow: hidden;
    position: relative;
    z-index: 1;
}
.collection-media {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}
.collection-info-box {
    position: relative;
    border-radius: 18px;
    padding: 12px 14px 10px;
    background: linear-gradient(180deg, rgba(255,255,255,0.10), rgba(255,255,255,0.05));
    border: 1px solid rgba(255,255,255,0.10);
    min-height: 78px;
    overflow: hidden;
    z-index: 1;
    box-shadow:
        0 0 0 1px rgba(255,255,255,0.03) inset,
        0 10px 22px rgba(0,0,0,0.14);
}
.collection-info-box::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    pointer-events: none;
    opacity: 0.92;
}
.collection-info-box.consumer::before { background: linear-gradient(90deg, rgba(176,195,217,0.08), rgba(176,195,217,0.16), rgba(176,195,217,0.08)); }
.collection-info-box.industrial::before { background: linear-gradient(90deg, rgba(75,105,255,0.10), rgba(95,135,255,0.22), rgba(75,105,255,0.10)); }
.collection-info-box.milspec::before { background: linear-gradient(90deg, rgba(136,71,255,0.12), rgba(160,105,255,0.24), rgba(136,71,255,0.12)); }
.collection-info-box.restricted::before { background: linear-gradient(90deg, rgba(211,44,230,0.14), rgba(236,92,255,0.30), rgba(211,44,230,0.14)); }
.collection-info-box.classified::before { background: linear-gradient(90deg, rgba(255,85,125,0.12), rgba(255,105,145,0.28), rgba(255,85,125,0.12)); }
.collection-info-box.covert::before { background: linear-gradient(90deg, rgba(255,95,70,0.14), rgba(255,150,90,0.30), rgba(255,95,70,0.14)); }
.collection-info-box.souvenir::before { background: linear-gradient(90deg, rgba(255,215,120,0.12), rgba(255,232,170,0.30), rgba(255,215,120,0.12)); }
.collection-title-line {
    position: relative;
    z-index: 1;
    font-size: 15px;
    font-weight: 900;
    line-height: 1.3;
    margin-bottom: 6px;
    text-shadow: 0 2px 0 rgba(0,0,0,0.82), 0 0 3px rgba(0,0,0,0.92);
}
.collection-desc-line {
    position: relative;
    z-index: 1;
    font-size: 13px;
    line-height: 1.45;
    font-style: italic;
    color: rgba(255,255,255,0.82);
    text-shadow: 0 1px 0 rgba(0,0,0,0.72), 0 0 2px rgba(0,0,0,0.82);
}
.collection-card.classified,
.collection-card.covert,
.collection-card.souvenir {
    overflow: visible;
}
.collection-owned-line { font-size: 13px; font-weight: 800; color: rgba(255,255,255,0.8); }
.collection-price-box {
    margin-top: 2px;
    font-size: 13px;
    line-height: 1.6;
    color: #ffe34f;
    font-weight: 800;
}
.collection-price-line .price-value {
    color: #fff;
    font-size: 15px;
    margin: 0 2px;
}
.collection-action-btn {
    margin-top: auto;
    width: 100%;
    padding: 11px 14px;
    border-radius: 12px;
    border: none;
    background: linear-gradient(90deg, #667eea, #9b59ff);
    color: #fff;
    font-weight: 900;
    cursor: pointer;
}
.collection-action-btn:disabled { opacity: .52; cursor: not-allowed; }
.honor-grid {
    grid-template-columns: repeat(3, minmax(0,1fr));
}
.honor-card {
    display: flex;
    gap: 14px;
    align-items: flex-start;
    border-radius: 18px;
    padding: 18px;
}
.honor-meta h4 { font-size: 17px; margin-bottom: 6px; }
.honor-meta p { font-size: 13px; line-height: 1.6; color: rgba(255,255,255,0.68); }
.honor-reward-line { color: #8ea7ff !important; font-weight: 800; margin-top: 8px; }
.honor-action-btn {
    margin-top: 12px;
    padding: 10px 16px;
    border-radius: 12px;
    border: none;
    background: linear-gradient(90deg, #f857a6, #ff5858);
    color: #fff;
    font-weight: 900;
    cursor: pointer;
}
.honor-action-btn:disabled { opacity: .48; cursor: not-allowed; }
.honor-toast {
    position: fixed;
    top: 26px;
    left: 50%;
    transform: translateX(-50%) translateY(-18px);
    min-width: 280px;
    max-width: 80vw;
    padding: 14px 18px;
    border-radius: 14px;
    background: linear-gradient(90deg, rgba(244,86,152,0.95), rgba(123,91,255,0.95));
    color: #fff;
    font-weight: 900;
    text-align: center;
    box-shadow: 0 18px 36px rgba(0,0,0,0.28);
    opacity: 0;
    pointer-events: none;
    transition: opacity .24s ease, transform .24s ease;
    z-index: 10050;
}
.honor-toast.show { opacity: 1; transform: translateX(-50%) translateY(0); }
.inventory-card,
.goods-card,
.result-item {
    border-radius: 20px !important;
    padding: 14px !important;
    min-height: 404px !important;
    gap: 10px;
}
.card-media,
.result-thumb,
.goods-card .card-media,
.inventory-card .card-media {
    width: 100%;
    height: 116px;
    object-fit: contain;
    background: #05060d;
    border-radius: 16px;
    display: block;
    border: 1px solid rgba(255,255,255,0.04);
}
.item-info-panel {
    border-radius: 18px;
    padding: 12px 14px 10px;
    background: linear-gradient(180deg, rgba(255,255,255,0.10), rgba(255,255,255,0.05));
    border: 1px solid rgba(255,255,255,0.10);
    min-height: 86px;
}
.item-title-line {
    font-size: 15px;
    font-weight: 900;
    line-height: 1.3;
    margin-bottom: 6px;
}
.item-desc-line {
    font-size: 13px;
    font-style: italic;
    color: rgba(255,255,255,0.82);
    line-height: 1.45;
}
.inventory-meta-line,
.market-seller-line {
    font-size: 13px;
    line-height: 1.55;
    color: rgba(255,255,255,0.72);
}
.market-seller-line strong { color: #fff; font-size: 16px; display: block; line-height: 1.3; }
.card-price-block,
.result-price-block {
    color: var(--souvenir);
    font-weight: 900;
    line-height: 1.55;
    font-size: 15px;
}
.card-price-block .price-value,
.result-price-block .price-value { color: #fff; font-size: 17px; }
.dual-action-row {
    margin-top: auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}
.btn-recycle-mini {
    width: 100%;
    border: none;
    border-radius: 12px;
    font-weight: 900;
    cursor: pointer;
    background: linear-gradient(90deg, #f06f77, #d9a646);
    color: #fff;
    min-height: 42px;
}
.market-card-top {
    display: flex;
    justify-content: flex-end;
    min-height: 32px;
}
.market-card-top .unified-price-badge,
.market-card-top .card-status-badge,
.market-card-top .sold-tag {
    min-width: 84px !important;
    min-height: 32px !important;
    font-size: 12px !important;
    padding: 6px 12px !important;
}
.result-box {
    min-height: 368px;
    grid-template-columns: repeat(5, minmax(0,1fr)) !important;
    grid-auto-rows: minmax(332px, auto) !important;
    align-content: start;
}
.result-box.single-mode {
    grid-template-columns: minmax(280px, 360px) !important;
    justify-content: flex-start;
}
.result-item { width: auto !important; min-height: 332px !important; }
.result-placeholder {
    min-height: 296px !important;
    font-size: 18px !important;
}
.data-summary-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 16px;
    margin-bottom: 18px;
}
.data-big-card { border-radius: 18px; }
.bgm-control-panel {
    right: 20px !important;
    bottom: 20px !important;
    width: 240px;
}
@media (max-width: 1280px) {
    .app-header { grid-template-columns: 220px minmax(0,1fr); }
    .header-actions { justify-self: start; }
    .debug-nav-btn { justify-self: start; }
    .global-status-strip { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .mode-entry-grid,
    .collection-grid,
    .inventory-grid,
    .goods-grid,
    .honor-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
    .result-box { grid-template-columns: repeat(4, minmax(0,1fr)) !important; }
}
@media (max-width: 980px) {
    .home-top-grid,
    .gacha-head-row,
    .data-summary-grid { grid-template-columns: 1fr; }
    .mode-entry-grid,
    .collection-grid,
    .inventory-grid,
    .goods-grid,
    .honor-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .global-status-strip { grid-template-columns: 1fr; }
    .app-header { grid-template-columns: 1fr; }
    .top-nav { justify-content: center; }
    .result-box { grid-template-columns: repeat(3, minmax(0,1fr)) !important; }
}
@media (max-width: 720px) {
    body { padding: 12px 12px 110px; }
    .brand-box { min-height: 64px; }
    .brand-fallback { font-size: 18px; }
    .nav-btn { min-width: 78px; padding: 12px 14px; }
    .sign-choice-grid,
    .streak-reward-row,
    .mode-entry-grid,
    .data-summary-grid,
    .inventory-grid,
    .goods-grid,
    .collection-grid,
    .honor-grid { grid-template-columns: 1fr; }
    .result-box { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
    .dual-action-row { grid-template-columns: 1fr; }
}

/* ===== style[5] id="ui-unify-cards-wide-v4" ===== */
/* ===== 2026-03-20 统一卡槽 + 加宽布局 + 图鉴收束 ===== */
.app-shell,
.page,
.top-nav,
.global-status-strip,
.app-header {
    max-width: 1680px !important;
}
body {
    padding: 18px 24px 120px !important;
}
.main-card.shell-card {
    padding: 28px 32px 34px !important;
    border-radius: 28px !important;
}
#inventory-grid,
#goods-grid,
.collection-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 20px !important;
}
#result-box {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 20px !important;
    min-height: 380px !important;
}
#result-box.single-mode {
    grid-template-columns: minmax(290px, 360px) !important;
}
#inventory-grid .inventory-card,
#goods-grid .goods-card,
#result-box .result-item,
.collection-card {
    border-radius: 24px !important;
    padding: 14px !important;
    gap: 10px !important;
    overflow: hidden !important;
    isolation: isolate !important;
}
#inventory-grid .inventory-card,
.collection-card {
    min-height: 392px !important;
}
#goods-grid .goods-card {
    min-height: 414px !important;
}
#result-box .result-item {
    min-height: 336px !important;
}
#result-box .result-item.rolling {
    min-height: 336px !important;
}
.card-media,
.result-thumb,
.unified-media,
.collection-media-wrap,
.collection-media {
    width: 100% !important;
}
.card-media,
.result-thumb,
.unified-media,
.collection-media-wrap {
    height: 122px !important;
    border-radius: 18px !important;
}
.collection-media {
    height: 100% !important;
    border-radius: 0 !important;
}
.item-info-panel,
.unified-info-box,
.collection-info-box {
    min-height: 86px !important;
    padding: 12px 14px 10px !important;
    border-radius: 18px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    gap: 4px !important;
    overflow: hidden !important;
}
.item-title-line,
.unified-card-title,
.collection-title-line {
    margin: 0 !important;
    font-size: 15px !important;
    line-height: 1.24 !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}
.collection-title-line.consumer { color: var(--consumer) !important; }
.collection-title-line.industrial { color: var(--industrial) !important; }
.collection-title-line.milspec { color: var(--milspec) !important; }
.collection-title-line.restricted { color: var(--restricted) !important; }
.collection-title-line.classified { color: #ff6e7a !important; }
.collection-title-line.covert { color: #ff9a57 !important; }
.collection-title-line.souvenir { color: #ffe29a !important; }

.item-desc-line,
.unified-card-desc,
.collection-desc-line {
    margin: 0 !important;
    font-size: 12px !important;
    line-height: 1.3 !important;
    font-style: italic !important;
    color: rgba(255,255,255,0.84) !important;
    white-space: normal !important;
    overflow: hidden !important;
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    min-height: 30px !important;
    max-height: 32px !important;
}
.unified-card-desc.is-empty,
.collection-desc-line:empty {
    display: none !important;
    min-height: 0 !important;
    max-height: 0 !important;
}
.inventory-meta-line,
.market-seller-line,
.collection-owned-line {
    margin-top: 0 !important;
    font-size: 12px !important;
    line-height: 1.28 !important;
    color: rgba(255,255,255,0.76) !important;
}
.market-seller-line strong {
    font-size: 16px !important;
    line-height: 1.14 !important;
}
.market-seller-line span {
    font-size: 11px !important;
    line-height: 1.2 !important;
    color: rgba(255,255,255,0.62) !important;
}
.unified-seller-id {
    font-size: 16px !important;
    line-height: 1.14 !important;
}
.unified-seller-note {
    font-size: 11px !important;
    line-height: 1.2 !important;
    color: rgba(255,255,255,0.62) !important;
}
.card-price-block,
.result-price-block,
.collection-price-box,
.unified-price-lines,
.unified-price-line {
    font-size: 13px !important;
    line-height: 1.42 !important;
    font-weight: 900 !important;
}
.card-price-block,
.result-price-block,
.collection-price-box,
.unified-price-lines {
    color: var(--souvenir) !important;
    margin-top: 0 !important;
}
.card-price-block .price-value,
.result-price-block .price-value,
.collection-price-line .price-value,
.unified-price-line .value {
    font-size: 15px !important;
    color: #f5f7ff !important;
    font-weight: 900 !important;
}
.unified-price-line .value.highlight {
    color: var(--souvenir) !important;
}
.unified-price-line .unit {
    font-size: 13px !important;
}
.collection-action-btn,
#inventory-grid .btn-shelf,
#inventory-grid .btn-recycle-mini,
#result-box .btn-shelf,
#result-box .btn-recycle-mini,
#goods-grid .btn-buy,
#goods-grid .btn-shelf {
    min-height: 42px !important;
    padding: 10px 12px !important;
    border-radius: 14px !important;
    font-size: 14px !important;
    font-weight: 900 !important;
}
.dual-action-row,
.unified-action-stack {
    gap: 10px !important;
    margin-top: auto !important;
}
.market-card-top {
    min-height: 28px !important;
    margin-bottom: -2px !important;
}
.market-card-top .unified-price-badge,
.market-card-top .card-status-badge,
.market-card-top .sold-tag {
    min-width: 74px !important;
    min-height: 28px !important;
    padding: 4px 10px !important;
    font-size: 11px !important;
}
.collection-card.card-glow::before {
    inset: -2px !important;
    border-radius: 24px !important;
}
.collection-card.classified,
.collection-card.covert,
.collection-card.souvenir {
    overflow: hidden !important;
}
.collection-card.classified {
    box-shadow:
        0 14px 30px rgba(0,0,0,0.22),
        0 0 18px rgba(255,100,135,0.20) !important;
}
.collection-card.covert {
    box-shadow:
        0 14px 30px rgba(0,0,0,0.22),
        0 0 18px rgba(255,138,76,0.20) !important;
}
.collection-card.souvenir {
    box-shadow:
        0 14px 30px rgba(0,0,0,0.22),
        0 0 18px rgba(255,224,150,0.18) !important;
}
.collection-grid {
    align-items: start !important;
}
.collection-card .collection-action-btn {
    margin-top: auto !important;
}
.collection-card .collection-price-box {
    margin-bottom: 0 !important;
}
.collection-card.locked {
    opacity: 0.50 !important;
    filter: grayscale(0.4) saturate(0.8) !important;
}
@media (max-width: 1540px) {
    .app-shell,
    .page,
    .top-nav,
    .global-status-strip,
    .app-header {
        max-width: 1460px !important;
    }
    #inventory-grid,
    #goods-grid,
    .collection-grid,
    #result-box {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }
}
@media (max-width: 1220px) {
    #inventory-grid,
    #goods-grid,
    .collection-grid,
    #result-box {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}
@media (max-width: 860px) {
    #inventory-grid,
    #goods-grid,
    .collection-grid,
    #result-box {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}
@media (max-width: 620px) {
    .app-shell,
    .page,
    .top-nav,
    .global-status-strip,
    .app-header {
        max-width: 100% !important;
    }
    #inventory-grid,
    #goods-grid,
    .collection-grid,
    #result-box {
        grid-template-columns: 1fr !important;
    }
}

/* ===== style[6] id="oai-final-card-tune" ===== */
/* 最后微调：统一卡槽细节 */
#inventory-grid .inventory-card,
#goods-grid .goods-card,
#result-box .result-item,
.collection-card {
    display: flex !important;
    flex-direction: column !important;
}

.item-info-panel,
.unified-info-box,
.collection-info-box,
.card-title-box {
    min-height: 76px !important;
    padding: 11px 14px 10px !important;
    gap: 2px !important;
}

.item-title-line,
.unified-card-title,
.collection-title-line {
    font-size: 15px !important;
    line-height: 1.2 !important;
    font-weight: 900 !important;
    margin: 0 !important;
    text-shadow:
        0 1.4px 0 rgba(0,0,0,0.68),
        0 0 2.4px rgba(0,0,0,0.46) !important;
}

.item-desc-line,
.unified-card-desc,
.collection-desc-line {
    margin: 0 !important;
    min-height: 0 !important;
    max-height: none !important;
    display: block !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    -webkit-line-clamp: unset !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
    font-style: italic !important;
    font-weight: 800 !important;
    color: rgba(255,255,255,0.84) !important;
    text-shadow:
        0 1px 0 rgba(0,0,0,0.58),
        0 0 2px rgba(0,0,0,0.34) !important;
}

.collection-title-line,
.collection-desc-line {
    position: relative !important;
    z-index: 1 !important;
}

/* 金卡卖家信息别太抢眼 */
#goods-grid .goods-card.souvenir .market-seller-line strong {
    font-size: 14px !important;
    line-height: 1.12 !important;
    text-shadow:
        0 1px 0 rgba(0,0,0,0.38),
        0 0 2px rgba(0,0,0,0.22) !important;
}

#goods-grid .goods-card.souvenir .market-seller-line span {
    font-size: 10px !important;
    font-weight: 500 !important;
    font-style: normal !important;
    color: rgba(255,255,255,0.56) !important;
    text-shadow:
        0 1px 0 rgba(0,0,0,0.28),
        0 0 2px rgba(0,0,0,0.18) !important;
}

/* 其它卖家信息也稍微收一收，避免投影过重 */
#goods-grid .market-seller-line strong {
    text-shadow:
        0 1px 0 rgba(0,0,0,0.42),
        0 0 2px rgba(0,0,0,0.24) !important;
}

#goods-grid .market-seller-line span {
    font-weight: 500 !important;
    text-shadow:
        0 1px 0 rgba(0,0,0,0.26),
        0 0 2px rgba(0,0,0,0.16) !important;
}

/* 价格统一贴按钮上方 */
#inventory-grid .inventory-card .card-price-block,
#inventory-grid .inventory-card .unified-price-block,
#result-box .result-item .result-price-block,
#result-box .result-item .unified-price-block,
#goods-grid .goods-card .card-price-block,
#goods-grid .goods-card .unified-price-block,
.collection-card .collection-price-box {
    margin-top: auto !important;
    margin-bottom: 8px !important;
}

#inventory-grid .inventory-card .dual-action-row,
#result-box .result-item .dual-action-row,
#inventory-grid .inventory-card .unified-action-stack,
#result-box .result-item .unified-action-stack,
.collection-card .collection-action-btn,
#goods-grid .goods-card .btn-buy,
#goods-grid .goods-card .unified-market-buy-btn,
#goods-grid .goods-card .unified-action-stack {
    margin-top: 0 !important;
}

/* 获取途径/卖家信息和价格拉开得更自然，但不占价格位置 */
.inventory-meta-line,
.market-seller-line,
.collection-owned-line,
.unified-seller-box {
    margin-top: 0 !important;
    margin-bottom: 2px !important;
}

/* 图鉴去掉额外发光边，保持卡内炫酷即可 */
.collection-card.classified,
.collection-card.covert,
.collection-card.souvenir {
    box-shadow:
        0 14px 30px rgba(0,0,0,0.22) !important;
}

.collection-card.card-glow::before {
    opacity: 0 !important;
}

/* ===== style[7] id="release-v20-patch-css" ===== */
.instant-result-card,
.alchemy-result-card{
    position:relative;
    overflow:hidden;
    isolation:isolate;
}
.release-burst-layer{
    position:absolute;
    inset:0;
    pointer-events:none;
    overflow:hidden;
    z-index:3;
}
.release-burst-flash{
    position:absolute;
    width:180px;
    height:180px;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%) scale(0.35);
    border-radius:999px;
    opacity:.85;
    filter:blur(16px);
    animation:releaseFlash 720ms ease-out forwards;
}
.release-burst-particle{
    position:absolute;
    width:10px;
    height:10px;
    border-radius:999px;
    opacity:.96;
    box-shadow:0 0 18px currentColor, 0 0 36px currentColor;
    animation:releaseParticleBurst 980ms cubic-bezier(.16,.82,.26,1) forwards;
}
@keyframes releaseFlash{
    0%{opacity:.92; transform:translate(-50%,-50%) scale(.35);}
    70%{opacity:.34; transform:translate(-50%,-50%) scale(1.15);}
    100%{opacity:0; transform:translate(-50%,-50%) scale(1.48);}
}
@keyframes releaseParticleBurst{
    0%{opacity:1; transform:translate(0,0) scale(.78);}
    80%{opacity:.95;}
    100%{opacity:0; transform:translate(var(--tx),var(--ty)) scale(.18);}
}

/* ===== style[8] id="background-lock-fix-v1" ===== */
html, body {
    background: #0a0b16 !important;
}
body {
    background: transparent !important;
}
body::before {
    content: "";
    position: fixed;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background:
        radial-gradient(circle at top left, rgba(255,74,129,0.14), transparent 28%),
        radial-gradient(circle at top right, rgba(131,92,255,0.12), transparent 26%),
        linear-gradient(180deg, #0f1020 0%, #0a0b16 100%) !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    background-position: center top !important;
}

/* ===== style[9] id="app-shell-scroll-layout-v1" ===== */
html, body {
    height: 100% !important;
    min-height: 100% !important;
    overflow: hidden !important;
}
body {
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
}
.app-shell {
    position: relative;
    box-sizing: border-box;
    width: min(100%, 1680px);
    height: 100vh;
    margin: 0 auto !important;
    padding: 0 24px 120px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
}
@supports (height: 100dvh) {
    .app-shell {
        height: 100dvh;
    }
}
@media (max-width: 768px) {
    .app-shell {
        padding: 0 12px 110px !important;
    }
}

/* ===== style[10] id="future-card-layout-v7-draw-badge-fine-tune" ===== */
/* ===================== 2026-03 统一物品栏 V7（抽卡结果贴近目标图 / 市场角标收束 / 底价文案修正） ===================== */

/* 1) 简介：更清楚、更像原来那种斜体简介 */
.unified-card-desc,
.item-desc-line,
.inventory-desc,
.goods-desc,
.result-desc {
    font-size: 13px !important;
    line-height: 1.18 !important;
    font-style: italic !important;
    font-weight: 620 !important;
    letter-spacing: 0.04em !important;
    color: rgba(255,255,255,0.90) !important;
    text-shadow:
        0 1px 1px rgba(0,0,0,0.32),
        0 0 4px rgba(0,0,0,0.10) !important;
}

/* 2) 抽卡结果：按参考图放大字号、压缩空隙，仍保持 5x2 */
#result-box {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 10px !important;
    padding: 10px 10px 12px !important;
    min-height: 0 !important;
    align-content: start !important;
}

#result-box .result-item,
#result-box .result-item.rolling,
#result-box .result-placeholder {
    min-height: 0 !important;
}

#result-box .result-item {
    padding: 10px 10px 10px !important;
    gap: 8px !important;
    border-radius: 18px !important;
}

#result-box .unified-media,
#result-box .result-thumb {
    height: 88px !important;
    border-radius: 13px !important;
}

#result-box .unified-info-box {
    min-height: 72px !important;
    padding: 11px 12px 10px !important;
    border-radius: 14px !important;
}

#result-box .unified-card-title {
    font-size: 14px !important;
    line-height: 1.12 !important;
    font-weight: 860 !important;
    text-shadow:
        0 1px 1px rgba(0,0,0,0.34),
        0 0 5px rgba(0,0,0,0.10) !important;
}

#result-box .unified-card-desc {
    margin-top: 5px !important;
    min-height: 15px !important;
    font-size: 11px !important;
    line-height: 1.16 !important;
}

#result-box .unified-price-block {
    gap: 6px !important;
    margin-top: 0 !important;
    align-items: stretch !important;
}

#result-box .unified-price-lines {
    font-size: 13px !important;
    line-height: 1.22 !important;
}

#result-box .unified-price-line {
    gap: 3px !important;
    margin-bottom: 2px !important;
    font-size: 13px !important;
    line-height: 1.18 !important;
}

#result-box .unified-price-line .label {
    font-size: 13px !important;
}

#result-box .unified-price-line .value {
    font-size: 16px !important;
    font-weight: 880 !important;
}

#result-box .unified-price-line .unit {
    font-size: 11px !important;
}

#result-box .unified-action-stack {
    gap: 8px !important;
    margin-top: 2px !important;
}

#result-box .btn-shelf,
#result-box .btn-recycle-mini {
    min-height: 38px !important;
    padding: 7px 10px !important;
    border-radius: 14px !important;
    font-size: 14px !important;
    font-weight: 860 !important;
}

#result-box.single-mode .result-item {
    min-height: 0 !important;
    padding: 14px 14px 14px !important;
    gap: 10px !important;
}

#result-box.single-mode .unified-media,
#result-box.single-mode .result-thumb {
    height: 132px !important;
}

#result-box.single-mode .unified-info-box {
    min-height: 88px !important;
    padding: 14px 15px 13px !important;
}

#result-box.single-mode .unified-card-title {
    font-size: 18px !important;
}

#result-box.single-mode .unified-card-desc {
    font-size: 14px !important;
    margin-top: 6px !important;
}

#result-box.single-mode .unified-price-line,
#result-box.single-mode .unified-price-line .label {
    font-size: 17px !important;
}

#result-box.single-mode .unified-price-line .value {
    font-size: 20px !important;
}

#result-box.single-mode .unified-price-line .unit {
    font-size: 14px !important;
}

#result-box.single-mode .btn-shelf,
#result-box.single-mode .btn-recycle-mini {
    min-height: 46px !important;
    font-size: 16px !important;
}

/* 3) 市场价格角标：缩小、统一、两字，更有戏但不挡内容 */
.unified-price-block.market-mode {
    align-items: end !important;
}

.unified-price-badge {
    min-width: 76px !important;
    width: 76px !important;
    min-height: 32px !important;
    flex: 0 0 76px !important;
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    align-self: center !important;
}

.unified-price-badge .sold-tag,
.unified-price-badge .card-status-badge,
.market-badge-row .sold-tag,
.market-badge-row .card-status-badge {
    width: 76px !important;
    min-width: 76px !important;
    max-width: 76px !important;
    height: 30px !important;
    min-height: 30px !important;
    padding: 0 8px !important;
    border-radius: 999px !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    letter-spacing: 0.02em !important;
    line-height: 30px !important;
    text-align: center !important;
    white-space: nowrap !important;
    text-shadow: 0 1px 1px rgba(0,0,0,0.30) !important;
    box-shadow:
        0 0 0 1px rgba(255,255,255,0.10) inset,
        0 6px 12px rgba(0,0,0,0.14) !important;
    overflow: hidden !important;
}

.card-status-badge.hot {
    color: #fff9d9 !important;
    background: linear-gradient(90deg, rgba(255,180,46,0.94), rgba(255,232,138,0.86), rgba(255,156,55,0.94)) !important;
    animation: hotTagPulseV7 1.2s ease-in-out infinite;
}

.card-status-badge.live {
    color: #eef4ff !important;
    background: linear-gradient(90deg, rgba(82,118,255,0.90), rgba(119,168,255,0.78), rgba(144,94,255,0.90)) !important;
}

.card-status-badge.stale {
    color: #fff0e9 !important;
    background: linear-gradient(90deg, rgba(255,120,104,0.90), rgba(255,156,95,0.82), rgba(255,98,148,0.90)) !important;
}

.card-status-badge.dead {
    color: #fff3cf !important;
    background: linear-gradient(90deg, rgba(170,66,24,0.94), rgba(115,36,18,0.90), rgba(212,110,33,0.94)) !important;
    animation: deadTagShakeV7 1.7s ease-in-out infinite;
}

.card-status-badge.done,
.unified-price-badge .sold-tag:not(.card-status-badge) {
    color: #fff3dd !important;
    background: linear-gradient(90deg, rgba(108,108,108,0.90), rgba(154,124,76,0.82), rgba(102,102,102,0.90)) !important;
}

@keyframes hotTagPulseV7 {
    0%, 100% { transform: translateY(0) scale(1); filter: saturate(1); }
    50% { transform: translateY(-1px) scale(1.03); filter: saturate(1.08); }
}

@keyframes deadTagShakeV7 {
    0%, 100% { transform: rotate(0deg); }
    25% { transform: rotate(-1.5deg); }
    75% { transform: rotate(1.5deg); }
}

@media (max-width: 1180px) {
    #result-box {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 900px) {
    #result-box {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 760px) {
    #result-box {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
        padding: 12px !important;
    }

    #result-box .unified-media,
    #result-box .result-thumb {
        height: 82px !important;
    }

    #result-box .unified-card-title {
        font-size: 13px !important;
    }

    #result-box .unified-card-desc {
        font-size: 10px !important;
    }

    #result-box .unified-price-line,
    #result-box .unified-price-line .label {
        font-size: 12px !important;
    }

    #result-box .unified-price-line .value {
        font-size: 15px !important;
    }

    #result-box .btn-shelf,
    #result-box .btn-recycle-mini {
        min-height: 36px !important;
        font-size: 13px !important;
    }
}

/* ===== style[11] id="final-card-unify-tight-pass-v3" ===== */
.app-shell,
.page,
.top-nav,
.global-status-strip,
.app-header {
    max-width: 1344px !important;
}
body {
    padding: 18px 20px 120px !important;
}
.main-card.shell-card {
    padding: 24px 26px 30px !important;
    border-radius: 26px !important;
}
#inventory-grid,
#goods-grid,
.collection-grid,
#result-box {
    gap: 16px !important;
}
#inventory-grid .inventory-card,
#goods-grid .goods-card,
#result-box .result-item,
.collection-card {
    border-radius: 22px !important;
    padding: 12px !important;
    gap: 9px !important;
}
#inventory-grid .inventory-card,
.collection-card {
    min-height: 356px !important;
}
#goods-grid .goods-card {
    min-height: 388px !important;
}
#result-box .result-item {
    min-height: 312px !important;
}
.card-media,
.result-thumb,
.unified-media,
.collection-media-wrap {
    height: 112px !important;
    border-radius: 16px !important;
}
.collection-media {
    border-radius: 0 !important;
}
.item-info-panel,
.unified-info-box,
.collection-info-box {
    min-height: 0 !important;
    padding: 11px 13px 10px !important;
    border-radius: 17px !important;
    gap: 3px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    overflow: hidden !important;
}
.item-title-line,
.unified-card-title,
.collection-title-line {
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1.22 !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}
.item-desc-line,
.unified-card-desc,
.collection-desc-line {
    margin: 0 !important;
    font-size: 12px !important;
    line-height: 1.22 !important;
    font-style: italic !important;
    color: rgba(255,255,255,0.82) !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    display: block !important;
    min-height: 0 !important;
    max-height: none !important;
}
.item-desc-line:empty,
.unified-card-desc.is-empty,
.collection-desc-line:empty {
    display: none !important;
}
.item-desc-line.unified-marquee,
.unified-card-desc.unified-marquee,
.collection-desc-line.unified-marquee {
    display: block !important;
    white-space: normal !important;
}
.inventory-meta-line,
.market-seller-line,
.collection-owned-line {
    margin-top: 0 !important;
    font-size: 11px !important;
    line-height: 1.18 !important;
    color: rgba(255,255,255,0.76) !important;
}
.collection-owned-line {
    font-size: 12px !important;
}
.market-seller-line strong {
    font-size: 16px !important;
    line-height: 1.14 !important;
}
.market-seller-line span {
    font-size: 11px !important;
    line-height: 1.2 !important;
    color: rgba(255,255,255,0.62) !important;
}
.card-price-block,
.result-price-block,
.collection-price-box,
.unified-price-lines,
.unified-price-line {
    font-size: 12px !important;
    line-height: 1.34 !important;
    font-weight: 900 !important;
    margin-top: 0 !important;
}
.card-price-block,
.result-price-block,
.collection-price-box,
.unified-price-lines {
    color: var(--souvenir) !important;
}
.card-price-block .price-value,
.result-price-block .price-value,
.collection-price-line .price-value,
.unified-price-line .value {
    font-size: 13px !important;
    color: #f5f7ff !important;
    font-weight: 900 !important;
}
.unified-price-line .value.highlight {
    color: var(--souvenir) !important;
}
.unified-price-line .unit {
    font-size: 12px !important;
}
.dual-action-row,
.unified-action-stack {
    gap: 10px !important;
    margin-top: auto !important;
}
.collection-action-btn,
#inventory-grid .btn-shelf,
#inventory-grid .btn-recycle-mini,
#result-box .btn-shelf,
#result-box .btn-recycle-mini,
#goods-grid .btn-buy,
#goods-grid .btn-shelf {
    min-height: 40px !important;
    padding: 9px 12px !important;
    border-radius: 13px !important;
    font-size: 13px !important;
    font-weight: 900 !important;
}
.market-card-top {
    display: none !important;
}
.unified-price-block.market-mode {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-areas: "lines badge" !important;
    align-items: end !important;
    gap: 10px !important;
}
.unified-price-block.market-mode .unified-price-lines {
    grid-area: lines !important;
}
.unified-price-block.market-mode .unified-price-badge {
    grid-area: badge !important;
    align-self: end !important;
    justify-self: end !important;
    margin-bottom: 2px !important;
}
.collection-card.card-glow::before {
    inset: 0 !important;
    border-radius: 22px !important;
}
.collection-card.classified,
.collection-card.covert,
.collection-card.souvenir {
    overflow: hidden !important;
}
@media (max-width: 1540px) {
    .app-shell,
    .page,
    .top-nav,
    .global-status-strip,
    .app-header {
        max-width: 1280px !important;
    }
}
@media (max-width: 1220px) {
    #inventory-grid,
    #goods-grid,
    .collection-grid,
    #result-box {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }
}
@media (max-width: 980px) {
    #inventory-grid,
    #goods-grid,
    .collection-grid,
    #result-box {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}
@media (max-width: 760px) {
    #inventory-grid,
    #goods-grid,
    .collection-grid,
    #result-box {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}
@media (max-width: 560px) {
    .app-shell,
    .page,
    .top-nav,
    .global-status-strip,
    .app-header {
        max-width: 100% !important;
    }
    #inventory-grid,
    #goods-grid,
    .collection-grid,
    #result-box {
        grid-template-columns: 1fr !important;
    }
}

/* ===== 2026-03-20 最终微调 ===== */
.inventory-tool-row-hidden {
    display: none !important;
}
.inventory-table-header {
    margin-bottom: 0 !important;
}
.inventory-sort-box {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
}
.inventory-batch-recycle-btn {
    background: linear-gradient(90deg, #ff4d5e, #d63b57) !important;
    color: #fff !important;
    min-width: 124px !important;
    min-height: 40px !important;
    padding: 0 18px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(255,255,255,0.10) !important;
    box-shadow:
        0 10px 22px rgba(214,59,87,0.22),
        0 0 0 1px rgba(255,255,255,0.05) inset !important;
}
#batch-recycle-modal .modal-card {
    max-width: 460px !important;
}
.collection-card.card-glow::before {
    display: none !important;
    opacity: 0 !important;
}
.collection-card.classified,
.collection-card.covert,
.collection-card.souvenir {
    box-shadow: 0 14px 30px rgba(0,0,0,0.22) !important;
}
#inventory-grid .inventory-card {
    min-height: 340px !important;
}
#goods-grid .goods-card {
    min-height: 350px !important;
}
#result-box {
    grid-auto-rows: minmax(280px, auto) !important;
    min-height: 600px !important;
}
#result-box .result-item {
    min-height: 280px !important;
}
#result-box.single-mode {
    grid-template-columns: 300px !important;
    justify-content: center !important;
}
#result-box.single-mode .result-item {
    width: 300px !important;
    justify-self: center !important;
    min-height: 292px !important;
}
#result-box.single-mode .result-thumb,
#result-box.single-mode .unified-media {
    height: 120px !important;
}
#result-box .result-item .result-price-block,
#result-box .result-item .unified-price-block,
#goods-grid .goods-card .card-price-block,
#goods-grid .goods-card .unified-price-block,
.collection-card .collection-price-box {
    margin-top: auto !important;
    margin-bottom: 10px !important;
}
#goods-grid .goods-card .market-seller-line,
#goods-grid .goods-card .unified-seller-box,
#result-box .result-item .inventory-meta-line {
    margin-bottom: 0 !important;
}
#goods-grid .goods-card .market-seller-line strong,
#goods-grid .goods-card .goods-seller-name,
#goods-grid .goods-card .unified-seller-id {
    font-size: 15px !important;
}
#goods-grid .goods-card .market-seller-line span,
#goods-grid .goods-card .goods-seller-title,
#goods-grid .goods-card .unified-seller-note {
    font-weight: 600 !important;
}
.item-desc-line,
.unified-card-desc,
.collection-desc-line {
    font-weight: 800 !important;
}
.item-title-line,
.unified-card-title,
.collection-title-line,
.item-desc-line,
.unified-card-desc,
.collection-desc-line {
    text-shadow:
        0 1px 0 rgba(0,0,0,0.62),
        0 0 2px rgba(0,0,0,0.42) !important;
}
.covert.card-glow::before {
    background: linear-gradient(
        110deg,
        rgba(255,95,70,0.58) 0%,
        rgba(255,170,95,0.88) 14%,
        rgba(255,110,72,0.62) 28%,
        rgba(255,95,70,0.30) 42%,
        rgba(255,180,110,0.92) 56%,
        rgba(255,110,72,0.62) 70%,
        rgba(255,95,70,0.58) 84%,
        rgba(255,170,95,0.88) 100%
    ) !important;
    background-size: 320% 100% !important;
    animation: smoothCovertFrameFlow 4.2s linear infinite !important;
}
.souvenir.card-glow::before {
    background: linear-gradient(
        110deg,
        rgba(255,220,145,0.52) 0%,
        rgba(255,245,214,0.92) 14%,
        rgba(255,224,150,0.58) 28%,
        rgba(255,214,120,0.26) 42%,
        rgba(255,248,220,0.94) 56%,
        rgba(255,224,150,0.58) 70%,
        rgba(255,220,145,0.52) 84%,
        rgba(255,245,214,0.92) 100%
    ) !important;
    background-size: 320% 100% !important;
    animation: smoothSouvenirFrameFlow 4.8s linear infinite !important;
}
@keyframes smoothCovertFrameFlow {
    0% { background-position: 0% 0; opacity: 0.74; }
    50% { opacity: 0.96; }
    100% { background-position: 320% 0; opacity: 0.74; }
}
@keyframes smoothSouvenirFrameFlow {
    0% { background-position: 0% 0; opacity: 0.68; }
    50% { opacity: 0.92; }
    100% { background-position: 320% 0; opacity: 0.68; }
}

/* ===== style[12] id="v4-final-style-patch" ===== */
/* ===== V4 终修：卡槽、图鉴、抽卡动画 ===== */
#alchemy-btn,
.inventory-tool-row,
#alchemy-modal {
    display: none !important;
}

/* 高品质卡槽更炸，但图鉴外框不发光 */
#inventory-grid .inventory-card.classified,
#goods-grid .goods-card.classified,
#result-box .result-item.classified {
    box-shadow:
        0 16px 34px rgba(0,0,0,0.34),
        0 0 0 1px rgba(255,110,145,0.10) inset,
        0 0 22px rgba(255,96,132,0.18) !important;
}
#inventory-grid .inventory-card.covert,
#goods-grid .goods-card.covert,
#result-box .result-item.covert {
    box-shadow:
        0 16px 36px rgba(0,0,0,0.36),
        0 0 0 1px rgba(255,142,92,0.12) inset,
        0 0 26px rgba(255,124,72,0.22) !important;
}
#inventory-grid .inventory-card.souvenir,
#goods-grid .goods-card.souvenir,
#result-box .result-item.souvenir {
    box-shadow:
        0 16px 36px rgba(0,0,0,0.36),
        0 0 0 1px rgba(255,230,160,0.14) inset,
        0 0 28px rgba(255,225,145,0.20) !important;
}

#inventory-grid .inventory-card.classified.card-glow::before,
#goods-grid .goods-card.classified.card-glow::before,
#result-box .result-item.classified.card-glow::before {
    background: linear-gradient(135deg, rgba(255,96,132,0.84), rgba(255,86,120,0.26), rgba(255,138,160,0.74)) !important;
    filter: blur(12px) !important;
    animation: v4ClassifiedPulse 2.1s infinite ease-in-out !important;
}
#inventory-grid .inventory-card.covert.card-glow::before,
#goods-grid .goods-card.covert.card-glow::before,
#result-box .result-item.covert.card-glow::before {
    background: linear-gradient(
        120deg,
        rgba(255,110,70,0.84) 0%,
        rgba(255,170,90,0.98) 18%,
        rgba(255,118,72,0.72) 34%,
        rgba(255,90,66,0.30) 50%,
        rgba(255,185,110,0.98) 66%,
        rgba(255,120,72,0.72) 82%,
        rgba(255,110,70,0.84) 100%
    ) !important;
    background-size: 200% 100% !important;
    filter: blur(12px) !important;
    animation: v4CovertFlow 3.9s linear infinite !important;
}
#inventory-grid .inventory-card.souvenir.card-glow::before,
#goods-grid .goods-card.souvenir.card-glow::before,
#result-box .result-item.souvenir.card-glow::before {
    background: linear-gradient(
        120deg,
        rgba(255,220,135,0.74) 0%,
        rgba(255,247,214,1.00) 18%,
        rgba(255,226,148,0.66) 34%,
        rgba(255,216,118,0.22) 50%,
        rgba(255,247,214,1.00) 66%,
        rgba(255,226,148,0.66) 82%,
        rgba(255,220,135,0.74) 100%
    ) !important;
    background-size: 200% 100% !important;
    filter: blur(10px) !important;
    animation: v4SouvenirFlow 4.4s linear infinite !important;
}
@keyframes v4ClassifiedPulse {
    0%,100% { opacity: 0.72; transform: scale(1); }
    50% { opacity: 1; transform: scale(1.022); }
}
@keyframes v4CovertFlow {
    0% { background-position: 0% 0; opacity: 0.80; }
    50% { opacity: 1; }
    100% { background-position: 200% 0; opacity: 0.80; }
}
@keyframes v4SouvenirFlow {
    0% { background-position: 0% 0; opacity: 0.72; }
    50% { opacity: 0.98; }
    100% { background-position: 200% 0; opacity: 0.72; }
}

/* 图鉴外框不发光，但卡面全身带质感底色 */
#collection-grid .collection-card.card-glow::before {
    display: none !important;
    opacity: 0 !important;
}
#collection-grid .collection-card.classified,
#collection-grid .collection-card.covert,
#collection-grid .collection-card.souvenir {
    box-shadow: 0 14px 30px rgba(0,0,0,0.22) !important;
}
#collection-grid .collection-card.consumer {
    background: linear-gradient(145deg, rgba(54,62,88,0.58), rgba(27,31,45,0.98)) !important;
}
#collection-grid .collection-card.industrial {
    background: linear-gradient(145deg, rgba(66,90,164,0.34), rgba(25,30,45,0.98)) !important;
}
#collection-grid .collection-card.milspec {
    background: linear-gradient(145deg, rgba(112,74,194,0.36), rgba(27,28,47,0.98)) !important;
}
#collection-grid .collection-card.restricted {
    background: linear-gradient(145deg, rgba(156,63,180,0.36), rgba(32,27,45,0.98)) !important;
}
#collection-grid .collection-card.classified {
    background: linear-gradient(145deg, rgba(132,58,88,0.52), rgba(33,23,38,0.98)) !important;
}
#collection-grid .collection-card.covert {
    background: linear-gradient(145deg, rgba(196,120,72,0.62), rgba(54,27,22,0.98)) !important;
}
#collection-grid .collection-card.souvenir {
    background: linear-gradient(145deg, rgba(214,196,148,0.88), rgba(112,93,56,0.92)) !important;
}
#collection-grid .collection-card .collection-info-box {
    margin-bottom: 10px !important;
}
#collection-grid .collection-card .collection-title-line,
#collection-grid .collection-card .collection-desc-line {
    text-shadow:
        0 1px 0 rgba(0,0,0,0.58),
        0 0 2px rgba(0,0,0,0.32) !important;
}
#collection-grid .collection-card .collection-desc-line {
    font-weight: 800 !important;
}
.collection-source-line {
    font-size: 12px !important;
    line-height: 1.3 !important;
    color: rgba(255,255,255,0.52) !important;
    margin-bottom: 8px !important;
}

/* 市场金卡卖家信息统一，别过分抢戏 */
#goods-grid .goods-card.souvenir .market-seller-line strong,
#goods-grid .goods-card.souvenir .unified-seller-id {
    font-size: 13px !important;
    text-shadow:
        0 1px 0 rgba(0,0,0,0.28),
        0 0 2px rgba(0,0,0,0.14) !important;
}
#goods-grid .goods-card.souvenir .market-seller-line span,
#goods-grid .goods-card.souvenir .unified-seller-note {
    font-size: 10px !important;
    font-weight: 600 !important;
    font-style: normal !important;
    color: rgba(255,255,255,0.54) !important;
    text-shadow:
        0 1px 0 rgba(0,0,0,0.18),
        0 0 2px rgba(0,0,0,0.10) !important;
}

/* 价格更贴近按钮，少留空 */
#goods-grid .goods-card,
#inventory-grid .inventory-card,
#result-box .result-item,
#collection-grid .collection-card {
    display: flex !important;
    flex-direction: column !important;
}
#goods-grid .goods-card .unified-price-block,
#goods-grid .goods-card .card-price-block,
#result-box .result-item .unified-price-block,
#result-box .result-item .result-price-block,
#inventory-grid .inventory-card .card-price-block,
#collection-grid .collection-card .collection-price-box {
    margin-top: 8px !important;
    margin-bottom: 10px !important;
}
#goods-grid .goods-card .unified-action-stack,
#goods-grid .goods-card .dual-action-row,
#result-box .result-item .unified-action-stack,
#result-box .result-item .dual-action-row,
#inventory-grid .inventory-card .dual-action-row,
#collection-grid .collection-card .collection-action-btn {
    margin-top: auto !important;
}

/* 抽卡结果已回收：整卡暗淡 */
#result-box .result-item.is-recycled {
    opacity: 0.52 !important;
    filter: grayscale(0.22) saturate(0.7) !important;
}
#result-box .result-item.is-recycled .unified-media,
#result-box .result-item.is-recycled .result-thumb {
    opacity: 0.72 !important;
}
#result-box .result-item.is-recycled .btn-shelf {
    opacity: 0.40 !important;
    pointer-events: none !important;
}
#result-box .result-item.is-recycled .btn-recycle-mini {
    background: linear-gradient(90deg, #646d8f, #767da4) !important;
}

/* 新的抽卡未确定状态与翻卡动画 */
#result-box .result-item.pending,
#result-box .result-item.revealing {
    position: relative !important;
    overflow: hidden !important;
}
#result-box .result-item.pending {
    cursor: default;
}
#result-box .result-item.pending.await-click {
    cursor: pointer;
}
#result-box .draw-pending-shell {
    width: 100%;
    height: 100%;
    min-height: 280px;
    border-radius: 22px;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background:
        radial-gradient(circle at 18% 18%, rgba(255,255,255,0.08), rgba(255,255,255,0) 34%),
        linear-gradient(135deg, rgba(120,58,200,0.28), rgba(37,46,74,0.92) 45%, rgba(19,22,32,0.98));
    box-shadow:
        inset 0 0 0 1px rgba(255,255,255,0.06),
        0 16px 34px rgba(0,0,0,0.28);
}
#result-box .draw-pending-shell::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: linear-gradient(110deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.10) 32%, rgba(255,255,255,0.0) 58%);
    background-size: 220% 100%;
    animation: pendingSweep 2.2s linear infinite;
    opacity: 0.55;
}
@keyframes pendingSweep {
    0% { background-position: 0% 0; }
    100% { background-position: 220% 0; }
}
#result-box .draw-pending-card-label {
    position: relative;
    z-index: 1;
    font-size: 16px;
    font-weight: 900;
    letter-spacing: 1px;
    color: rgba(255,255,255,0.92);
    text-shadow: 0 2px 10px rgba(255,255,255,0.18);
}
#result-box .draw-pending-card-sub {
    position: relative;
    z-index: 1;
    margin-top: 10px;
    font-size: 13px;
    color: rgba(255,255,255,0.58);
    font-weight: 700;
}
#result-box .result-item.pending.await-click .draw-pending-card-sub {
    color: #ffe7a8;
}
#result-box .result-item.revealing .result-placeholder {
    font-size: 22px !important;
    letter-spacing: 1px !important;
    font-weight: 900 !important;
    text-shadow:
        0 2px 12px rgba(255,255,255,0.18),
        0 0 22px rgba(255,200,120,0.20) !important;
}

/* ===== style[13] id="v5-hotfix-style" ===== */
/* sold / owned dimming */
.goods-card.sold-out .unified-info-box,
.goods-card.sold-out .seller-box,
.goods-card.sold-out .inventory-price,
.goods-card.sold-out .market-price-badge-wrap,
.goods-card.sold-out .goods-seller-name,
.goods-card.sold-out .goods-seller-note,
.goods-card.sold-out .unified-title-line,
.goods-card.sold-out .unified-desc-line,
.goods-card.sold-out .seller-name,
.goods-card.sold-out .seller-note,
.goods-card.sold-out .inventory-price span,
.goods-card.sold-out .sold-tag {
    opacity: .45 !important;
    filter: saturate(.65) grayscale(.08);
}
.goods-card.sold-out .btn-shelf {
    opacity: .6 !important;
}
/* stronger but full-card collection styles, no outer glow */
#collection-grid .collection-card.card-glow::before,
#collection-grid .collection-card::before {
    display:none !important;
}
#collection-grid .collection-card.classified,
#collection-grid .collection-card.covert,
#collection-grid .collection-card.souvenir {
    box-shadow: inset 0 0 0 1px rgba(255,255,255,0.06), 0 10px 30px rgba(0,0,0,0.22) !important;
}
#collection-grid .collection-card.souvenir {
    background:
      linear-gradient(120deg, rgba(255,245,210,0.22) 0%, rgba(255,233,170,0.26) 38%, rgba(119,93,26,0.22) 50%, rgba(255,240,196,0.24) 64%, rgba(66,48,10,0.18) 100%),
      linear-gradient(145deg, #1c2239 0%, #171c33 55%, #11162a 100%) !important;
}
#collection-grid .collection-card.covert {
    background:
      radial-gradient(circle at 50% 55%, rgba(255,154,95,0.22) 0%, rgba(255,123,55,0.14) 24%, rgba(0,0,0,0) 56%),
      linear-gradient(135deg, rgba(255,173,113,0.28) 0%, rgba(242,103,42,0.22) 52%, rgba(85,33,16,0.20) 100%),
      linear-gradient(145deg, #20192d 0%, #1b1630 45%, #171a2d 100%) !important;
    animation: covertCardShine 1.9s linear infinite !important;
    background-size: 280% 280%, 230% 230%, cover !important;
}
#collection-grid .collection-card.souvenir {
    animation: souvenirCardShine 2.15s linear infinite !important;
    background-size: 250% 250%, cover !important;
}
@keyframes covertCardShine {
  0% { background-position: 0% 50%, 0% 50%, 50% 50%; }
  100% { background-position: 220% 50%, 180% 50%, 50% 50%; }
}
@keyframes souvenirCardShine {
  0% { background-position: 0% 50%, 50% 50%; }
  100% { background-position: 200% 50%, 50% 50%; }
}
/* batch recycle modal */
#batch-recycle-modal.active { display:flex !important; }
#batch-recycle-modal .modal-card {
    overflow: visible !important;
    min-height: 520px;
    display:flex;
    flex-direction:column;
    gap:14px;
}
#batch-recycle-modal .modal-actions {
    display:flex !important;
    gap:14px;
    margin-top:auto !important;
    position:relative;
    z-index:3;
}
#batch-recycle-modal .modal-actions .modal-btn { flex:1; }
#batch-recycle-select {
    height:64px !important;
    font-size:18px !important;
    font-weight:900 !important;
}
#batch-recycle-select option { font-weight:900; }
.inventory-batch-recycle-btn { min-width: 220px !important; }
#inventory-sort { min-width: 220px !important; }
/* result epic explosion */
.result-item.rarity-5::after,
.result-item.rarity-6::after,
.result-item.rarity-7::after {
    content:'';
    position:absolute; inset:-8px;
    border-radius:28px;
    pointer-events:none;
    opacity:0;
    animation: resultEpicBurst 1.15s ease-out forwards;
}
.result-item.rarity-5::after {
    background: radial-gradient(circle, rgba(255,80,104,0.32) 0%, rgba(255,80,104,0.12) 34%, rgba(0,0,0,0) 70%);
}
.result-item.rarity-6::after {
    background: radial-gradient(circle, rgba(255,170,86,0.38) 0%, rgba(255,110,36,0.16) 32%, rgba(0,0,0,0) 72%);
}
.result-item.rarity-7::after {
    background: radial-gradient(circle, rgba(255,230,145,0.42) 0%, rgba(255,215,120,0.20) 35%, rgba(0,0,0,0) 74%);
}
@keyframes resultEpicBurst {
  0% { opacity:0; transform:scale(.82); }
  18% { opacity:1; }
  100% { opacity:0; transform:scale(1.14); }
}
#result-box.single-mode {
    justify-items:center !important;
}
#result-box.single-mode .result-item {
    margin-inline:auto !important;
}

/* ===== style[14] id="chatgpt-min-fix-style" ===== */
#result-box .result-item.fixed-reveal-card {
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:flex-start;
    gap:14px;
    padding:18px 16px 16px;
    min-height: 420px;
}
#result-box .result-item.fixed-reveal-card .fixed-result-image {
    width:min(100%, 300px);
    max-height:320px;
    object-fit:contain;
    border-radius:18px;
    box-shadow:0 12px 30px rgba(0,0,0,0.35);
}
#result-box .result-item.fixed-reveal-card .fixed-result-name {
    width:100%;
    text-align:center;
    font-weight:900;
    line-height:1.45;
    font-size:22px;
    color:#f4f7ff;
    text-shadow:0 2px 10px rgba(0,0,0,0.35);
    word-break:break-word;
}
#result-box .result-item.fixed-reveal-card .fixed-result-desc {
    width:100%;
    text-align:center;
    color:rgba(226,233,255,0.82);
    line-height:1.6;
    font-size:14px;
    min-height:22px;
}
#result-box .result-item.fixed-reveal-card .fixed-result-price {
    margin-top:auto;
    color:rgba(240,244,255,0.92);
    font-size:16px;
    font-weight:800;
}
#result-box .result-item.fixed-reveal-card .fixed-result-price span {
    color:var(--souvenir);
}

/* ===== style[15] id="v12-gambler-pool-style" ===== */
#result-box .result-item.draw-invalidated {
  position: relative;
  filter: grayscale(0.65) brightness(0.72);
  opacity: 0.9;
}
#result-box .result-item.draw-invalidated::after {
  content: '本张作废';
  position: absolute;
  inset: auto 12px 12px 12px;
  padding: 8px 10px;
  border-radius: 12px;
  text-align: center;
  font-weight: 900;
  font-size: 14px;
  color: #fff;
  background: rgba(255, 76, 106, 0.92);
  box-shadow: 0 8px 20px rgba(255, 76, 106, 0.28);
}
#result-box .draw-doom-banner {
  grid-column: 1 / -1;
  margin-top: 10px;
  padding: 14px 16px;
  border-radius: 16px;
  color: #fff2f2;
  font-weight: 900;
  line-height: 1.6;
  text-align: center;
  background: linear-gradient(135deg, rgba(255,80,110,0.88), rgba(255,154,66,0.82));
  box-shadow: 0 12px 32px rgba(255, 96, 96, 0.28);
}
.pool-tab.gambler-pool-tab {
  white-space: nowrap;
}

/* ===== style[16] id="v19-password-alchemy-style" ===== */
.mode-entry-icon-image{
  width:56px;height:56px;object-fit:contain;display:block;margin:0 auto 8px;
  filter: drop-shadow(0 8px 18px rgba(0,0,0,.28));
}
.gamba-extra-view{display:none;}
.gamba-sub-shell{
  border:1px solid rgba(255,255,255,.08);
  border-radius:28px;
  padding:24px;
  background:linear-gradient(180deg, rgba(16,20,38,.95), rgba(9,12,28,.96));
  box-shadow:0 18px 60px rgba(0,0,0,.28), inset 0 0 0 1px rgba(255,255,255,.02);
}
.gamba-sub-head{
  display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px;
}
.gamba-sub-copy h2{font-size:32px;font-weight:900;margin:0 0 8px;}
.gamba-sub-copy p{margin:0;color:rgba(225,232,255,.82);line-height:1.7;}
.mode-pill-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px;}
.mode-pill{
  padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.08);color:#eaf0ff;font-size:13px;font-weight:800;
}
.box-layout,.alchemy-layout{
  display:grid;grid-template-columns:minmax(280px, 420px) minmax(0,1fr);gap:18px;
}
.reward-core-card,.alchemy-side-card,.alchemy-main-card{
  border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(180deg, rgba(25,31,54,.92), rgba(12,16,35,.94));
  border-radius:24px;padding:18px;
}
.reward-req-list{display:grid;gap:12px;margin:14px 0 18px;}
.reward-req-item{
  display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:18px;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);
}
.reward-req-item img{width:52px;height:52px;object-fit:contain;border-radius:12px;background:rgba(255,255,255,.04);padding:6px;}
.reward-req-main{flex:1;min-width:0;}
.reward-req-title{font-weight:900;color:#fff;font-size:16px;}
.reward-req-desc{font-size:13px;color:rgba(224,231,255,.7);margin-top:4px;}
.reward-req-count{font-weight:900;font-size:16px;color:#ffd978;}
.reward-open-btn,.alchemy-submit-btn{
  width:100%;min-height:58px;border:none;border-radius:18px;cursor:pointer;
  font-size:18px;font-weight:900;color:#fff;
  background:linear-gradient(135deg, #ff5d87, #ff8a58);
  box-shadow:0 14px 28px rgba(255,96,96,.22);
}
.reward-open-btn:disabled,.alchemy-submit-btn:disabled{
  cursor:not-allowed; opacity:.58; filter:saturate(.7);
}
.reward-tier-grid{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px;
}
.reward-tier-card{
  border-radius:20px;padding:14px;border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(180deg, rgba(31,38,65,.86), rgba(14,18,39,.92));
}
.reward-tier-name{font-weight:900;font-size:16px;margin-bottom:8px;}
.reward-tier-desc{font-size:13px;line-height:1.6;color:rgba(224,231,255,.76);}
.reward-tier-normal .reward-tier-name{color:#aeb4bf;}
.reward-tier-copper .reward-tier-name{color:#e5af7f;}
.reward-tier-silver .reward-tier-name{color:#dfeaf6;}
.reward-tier-gold .reward-tier-name{color:#ffd278;}
.instant-result-box,.alchemy-result-box{
  min-height:280px;border:1px dashed rgba(255,255,255,.14);border-radius:24px;
  background:linear-gradient(180deg, rgba(11,15,31,.88), rgba(8,10,24,.96));
  padding:20px;
}
.instant-result-empty,.alchemy-result-empty{
  min-height:240px;display:flex;align-items:center;justify-content:center;
  color:rgba(225,232,255,.45);font-size:18px;font-weight:800;text-align:center;
}
.instant-result-card,.alchemy-result-card{
  display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:12px;
  text-align:center;min-height:240px;
}
.instant-result-badge,.alchemy-result-badge{
  display:inline-flex;align-items:center;justify-content:center;padding:8px 14px;border-radius:999px;
  font-size:13px;font-weight:900;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.06);
}
.badge-normal{color:#aeb4bf;}
.badge-copper{color:#e5af7f;}
.badge-silver{color:#dfeaf6;}
.badge-gold{color:#ffd278;}
.badge-success{color:#7cffb0;}
.badge-great{color:#ffd278;}
.badge-fail{color:#dfe6ff;}
.badge-doom{color:#ff7b88;}
.instant-result-image,.alchemy-result-image{
  width:min(240px,100%);max-height:250px;object-fit:contain;border-radius:18px;
  box-shadow:0 12px 30px rgba(0,0,0,.3);
}
.instant-result-title,.alchemy-result-title{
  font-size:28px;font-weight:900;color:#fff;line-height:1.3;
}
.instant-result-sub,.alchemy-result-sub{
  font-size:15px;color:rgba(224,231,255,.82);line-height:1.7;max-width:680px;
}
.instant-result-value,.alchemy-result-value{
  font-size:20px;font-weight:900;color:#ffe08c;
}
.alchemy-filter-row{
  display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:14px;
}
.alchemy-filter-left{display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
.alchemy-filter-row label{font-size:14px;font-weight:900;color:#dfe6ff;}
.alchemy-filter-row select{
  min-width:220px;height:46px;border-radius:14px;border:1px solid rgba(255,255,255,.1);
  padding:0 14px;background:#1a1f34;color:#fff;font-weight:800;
}
.alchemy-pick-count{font-size:14px;font-weight:900;color:#ffd978;}
.alchemy-grid{
  display:grid;grid-template-columns:repeat(5, minmax(0,1fr));gap:12px;min-height:220px;
}
.alchemy-empty{
  grid-column:1/-1;display:flex;align-items:center;justify-content:center;min-height:180px;
  border:1px dashed rgba(255,255,255,.1);border-radius:18px;color:rgba(225,232,255,.45);font-weight:800;
}
.alchemy-item{
  border:none;cursor:pointer;border-radius:18px;padding:12px;background:linear-gradient(180deg, rgba(31,38,65,.86), rgba(14,18,39,.92));
  border:1px solid rgba(255,255,255,.08);color:#fff;transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.alchemy-item:hover{transform:translateY(-2px);}
.alchemy-item.selected{
  border-color:#4df3b4; box-shadow:0 0 0 1px rgba(77,243,180,.35), 0 12px 24px rgba(77,243,180,.14);
}
.alchemy-item img{
  width:100%;aspect-ratio:1/1;object-fit:contain;border-radius:14px;background:rgba(255,255,255,.04);margin-bottom:8px;
}
.alchemy-item-name{font-size:13px;font-weight:900;line-height:1.45;word-break:break-word;}
.alchemy-item-meta{font-size:12px;color:rgba(224,231,255,.72);margin-top:6px;}
.alchemy-prob-grid{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0 18px;
}
.alchemy-prob-card{
  border-radius:16px;padding:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);
}
.alchemy-prob-label{font-size:12px;font-weight:800;color:rgba(224,231,255,.68);}
.alchemy-prob-value{font-size:18px;font-weight:900;color:#fff;margin-top:6px;}
.alchemy-picked-preview{
  display:flex;gap:8px;flex-wrap:wrap;min-height:44px;margin:12px 0 18px;
}
.alchemy-picked-chip{
  padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);
  font-size:12px;font-weight:800;color:#e9efff;
}
@media (max-width: 1200px){
  .box-layout,.alchemy-layout{grid-template-columns:1fr;}
  .reward-tier-grid,.alchemy-prob-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width: 820px){
  .reward-tier-grid,.alchemy-prob-grid,.alchemy-grid{grid-template-columns:1fr 1fr;}
}

/* ===== style[17] id="v23-secret-box-buy-style" ===== */
.reward-buy-btn{
    width:100%;
    margin:12px 0 10px;
    border:none;
    border-radius:16px;
    padding:14px 18px;
    font-size:16px;
    font-weight:800;
    cursor:pointer;
    color:#f7fbff;
    background:linear-gradient(135deg, rgba(91,127,255,.92), rgba(75,97,210,.92));
    box-shadow:0 14px 30px rgba(30,54,140,.30);
    transition:transform .16s ease, filter .16s ease, opacity .16s ease;
  }
  .reward-buy-btn:hover{transform:translateY(-1px);filter:brightness(1.05);}
  .reward-buy-btn:disabled{cursor:not-allowed;opacity:.55;transform:none;filter:none;}

/* ===== style[18] id="release-v21-box-color-style" ===== */
#secret-box-mode-view .reward-tier-normal .reward-tier-desc{color:#aeb4bf;}
#secret-box-mode-view .reward-tier-silver .reward-tier-desc{color:#dfeaf6;}
#secret-box-result-box .instant-result-card.result-tier-normal .instant-result-badge,
#secret-box-result-box .instant-result-card.result-tier-normal .instant-result-title,
#secret-box-result-box .instant-result-card.result-tier-normal .instant-result-sub,
#secret-box-result-box .instant-result-card.result-tier-normal .instant-result-value{color:#aeb4bf !important;}
#secret-box-result-box .instant-result-card.result-tier-silver .instant-result-badge,
#secret-box-result-box .instant-result-card.result-tier-silver .instant-result-title,
#secret-box-result-box .instant-result-card.result-tier-silver .instant-result-sub,
#secret-box-result-box .instant-result-card.result-tier-silver .instant-result-value{color:#dfeaf6 !important;}

/* ===== style[19] id="hidden-fx-toast-style" ===== */
#hidden-fx-toast{position:fixed;top:18px;left:50%;transform:translateX(-50%) translateY(-10px);padding:12px 18px;border-radius:14px;background:rgba(17,20,34,.92);color:#fff;font-weight:800;font-size:14px;box-shadow:0 18px 40px rgba(0,0,0,.35);z-index:99999;opacity:0;pointer-events:none;transition:opacity .22s ease,transform .22s ease;border:1px solid rgba(255,255,255,.08)}
#hidden-fx-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
