        :root {
            --brand-color: #e53935;
            --brand-dark: #c62828;
            --bg-main: #f8f9fb;
            --bg-card: #ffffff;
            --text-main: #1a1a1a;
            --text-secondary: #5f6b7a;
            --btn-yellow: #f6b100;
            --border-light: #e3e8ef;
            --shadow-sm: 0 2px 8px rgba(0,0,0,0.04);
            --shadow-md: 0 4px 14px rgba(0,0,0,0.06);
        }

        * { margin:0; padding:0; box-sizing:border-box; -webkit-tap-highlight-color:transparent; }
        body {
            font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Helvetica Neue", STHeiti, sans-serif;
            background-color: #f0f2f5;
            color: var(--text-main);
            line-height: 1.5;
            padding-bottom: 80px;
        }
        a { text-decoration: none; color: inherit; }
        ul, li { list-style: none; }

        .app-wrapper {
            max-width: 480px; width: 100%; margin: 0 auto;
            background-color: var(--bg-main); min-height: 100vh;
            position: relative; box-shadow: 0 10px 30px rgba(0,0,0,0.06);
        }

        .detail-header {
            display: flex; align-items: center; justify-content: space-between;
            padding: 15px; background: #fff; border-bottom: 1px solid var(--border-light);
        }
        .header-left { display: flex; align-items: center; gap: 10px; font-size: 18px; color: var(--text-secondary); cursor: pointer; }
        .header-title { font-size: 16px; font-weight: 600; color: var(--text-main); }

        .detail-image-wrapper { padding: 15px; }
        .detail-image {
            width: 100%;
            height: auto;
            background: transparent;
            border-radius: 12px;
            display: flex;
            align-items: center;
            justify-content: center;
            position: relative;
            overflow: hidden;
            border: 1px solid var(--border-light);
            box-shadow: var(--shadow-sm);
        }
        .detail-image img {
            width: 70%;
            height: auto;
            display: block;
        }

        .info-card {
            background: var(--bg-card); border-radius: 14px; padding: 15px;
            margin: 0 15px 12px 15px; border: 1px solid var(--border-light); box-shadow: var(--shadow-sm);
        }
        .info-title { font-size: 18px; font-weight: 700; margin-bottom: 10px; color: #111; }

        /* 双价格并排布局 */
        .info-price-dual {
            display: flex;
            gap: 10px;
            margin-bottom: 10px;
        }
        .price-col {
            flex: 1;
            background: #fdf8f4;
            border-radius: 10px;
            padding: 10px 8px;
            text-align: center;
            border: 1px solid #f0e3d4;
            position: relative;
        }
        .price-col .price-tag {
            display: inline-block;
            font-size: 11px;
            font-weight: 700;
            color: #fff;
            background: var(--brand-color);
            padding: 2px 10px;
            border-radius: 10px;
            margin-bottom: 6px;
            letter-spacing: 0.5px;
        }
        .price-col .price-tag.pc-tag {
            background: #3a3a3a;
        }
        .price-col .price-value {
            font-size: 22px;
            font-weight: 800;
            color: var(--brand-color);
            line-height: 1.1;
        }
        .price-col .price-value .symbol {
            font-size: 14px;
        }
        .price-col .price-original {
            font-size: 12px;
            color: #98a1af;
            text-decoration: line-through;
            margin-top: 2px;
        }

        .info-desc {
            font-size: 13px; color: var(--text-secondary); line-height: 1.5;
            background: #f5f6fa; padding: 10px; border-radius: 8px;
        }

        .tags-card {
            background: var(--bg-card); padding: 10px 15px; margin: 0 15px 12px 15px;
            border-radius: 14px; display: flex; justify-content: space-between;
            border: 1px solid var(--border-light); box-shadow: var(--shadow-sm);
        }
        .tag-item { display: flex; align-items: center; gap: 4px; font-size: 11px; color: var(--text-secondary); }
        .tag-item .dot { color: var(--brand-color); font-weight: bold; }

        .details-card {
            background: var(--bg-card); border-radius: 14px; padding: 15px;
            margin: 0 15px 20px 15px; border: 1px solid var(--border-light); box-shadow: var(--shadow-sm);
        }
        .details-header {
            display: flex; align-items: center; gap: 8px; font-size: 15px; font-weight: bold;
            padding-bottom: 12px; border-bottom: 1px solid var(--border-light); color: var(--text-main);
        }
        .details-content {
            font-size: 13px; color: var(--text-secondary); margin-top: 12px;
            line-height: 1.8;
        }
        .details-content .notice-warning {
            display: block;
            background: #fff5f5;
            border-left: 3px solid var(--brand-color);
            padding: 10px 12px;
            border-radius: 6px;
            margin-bottom: 16px;
            color: #c62828;
            font-weight: 500;
            line-height: 1.6;
        }
        .details-content .service-promise {
            display: block;
            background: #fdf8f0;
            border-left: 3px solid var(--btn-yellow);
            padding: 10px 12px;
            border-radius: 6px;
            margin-bottom: 16px;
            color: #5f4a1a;
            font-weight: 500;
            line-height: 1.6;
        }
        .details-content .section-title {
            font-size: 14px;
            font-weight: 700;
            color: #111;
            margin: 16px 0 10px 0;
            padding-bottom: 6px;
            border-bottom: 1px dashed #e8e8e8;
        }
        .details-content .rule-list {
            list-style: none;
            padding: 0;
            counter-reset: rule-counter;
        }
        .details-content .rule-list li {
            counter-increment: rule-counter;
            position: relative;
            padding-left: 28px;
            margin-bottom: 10px;
            line-height: 1.7;
        }
        .details-content .rule-list li::before {
            content: counter(rule-counter) ".";
            position: absolute;
            left: 0;
            top: 0;
            font-weight: 700;
            color: var(--brand-color);
            min-width: 22px;
        }
        .details-content .rule-list li .sub-rule {
            display: block;
            margin-top: 4px;
            padding-left: 12px;
            border-left: 2px solid #eee;
            color: #777;
            font-size: 12px;
            line-height: 1.6;
        }
        .details-content .highlight-warning { color: var(--brand-color); font-weight: bold; }
        .details-content strong { color: var(--text-main); }

        .bottom-action-bar {
            position: fixed; bottom: 0; left: 50%; transform: translateX(-50%);
            width: 100%; max-width: 480px; height: 70px;
            background: rgba(255,255,255,0.96); backdrop-filter: blur(12px);
            border-top: 1px solid var(--border-light);
            display: flex; align-items: center; justify-content: center;
            gap: 10px; padding: 0 16px 10px 16px;
            z-index: 1000; box-shadow: 0 -2px 12px rgba(0,0,0,0.04);
        }
        .btn-customer-service {
            flex: 0 0 20%; height: 44px; border-radius: 22px;
            border: 1px solid var(--brand-color); background: #fff;
            color: var(--brand-color); font-size: 14px; font-weight: bold;
            cursor: pointer; transition: transform 0.2s, background 0.2s;
            display: flex; align-items: center; justify-content: center;
        }
        .btn-customer-service:active { transform: scale(0.96); background: #fff5f5; }
        .buy-btn {
            flex: 1; height: 44px; border-radius: 22px; border: none;
            background: var(--btn-yellow); color: #000; font-size: 16px; font-weight: bold;
            cursor: pointer; transition: transform 0.2s;
            box-shadow: 0 2px 6px rgba(0,0,0,0.05);
            display: flex; align-items: center; justify-content: center;
        }
        .buy-btn:active { transform: scale(0.96); background: #e5a800; }

        .toast {
            position: fixed; top: 25%; left: 50%; transform: translateX(-50%) scale(0.9);
            background: rgba(255,255,255,0.98); backdrop-filter: blur(10px);
            color: #1a1a1a; padding: 12px 24px; border-radius: 30px; font-size: 14px;
            z-index: 99999; opacity: 0; pointer-events: none;
            transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
            border: 1px solid var(--brand-color); box-shadow: 0 8px 20px rgba(0,0,0,0.08);
            text-align: center; max-width: 80%; font-weight: 500;
        }
        .toast.show { opacity: 1; transform: translateX(-50%) scale(1); }