
    :root {
        --canon-red: #BC0024;
        --accent-blue: #1565c0;
        --border-color: #e0e0e0;
        --bg-gray: #f8f9fa;
        --text-dark: #222;
        --text-muted: #666;
    }

    body {
        font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
        background-color: #ffffff;
        margin: 0;
        padding: 15px;
        color: var(--text-dark);
        line-height: 1.4;
        /* 压缩行高 */
    }

    .table-container {
        width: 100%;
        max-width: 900px;
        margin: 0 auto;
    }

    h2 {
        text-align: center;
        font-size: 20px;
        /* 缩小标题 */
        font-weight: bold;
        color: var(--canon-red);
        margin-bottom: 5px;
    }

    .sub-header {
        text-align: center;
        color: var(--text-muted);
        font-size: 14px;
        margin-bottom: 15px;
    }

    table {
        width: 100%;
        border-collapse: collapse;
        margin-bottom: 20px;
        table-layout: fixed;
        border: 1px solid var(--border-color);
    }

    .table-camera col.col-shoe {
        width: 20%;
    }

    /* 固定宽度节省空间 */
    .table-camera col.col-list {
        width: auto;
    }

    .table-rt col.col-role {
        width: 20%;
    }

    .table-rt col.col-models {
        width: auto;
    }

    .table-rt col.col-mode {
        width: 20%;
    }

    th,
    td {
        padding: 8px 10px;
        /* 压缩内边距 */
        border: 1px solid var(--border-color);
        word-wrap: break-word;
        vertical-align: middle;
    }

    thead td {
        background-color: #333;
        color: #fff;
        font-weight: bold;
        text-align: center;
        font-size: 13px;
    }

    /* 核心修改：对齐与层级 */
    .category-group {
        margin-bottom: 12px;
    }

    .title-main {
        font-weight: bold;
        color: var(--canon-red);
        border-left: 3px solid var(--canon-red);
        padding-left: 8px;
        margin-bottom: 4px;
        font-size: 14px;
        text-align: left;
    }

    .content-box {
        padding-left: 11px;
        /* 保持与标题对齐的视觉缩进 */
        font-size: 13px;
        color: #333;
    }

    .dslr-sub-title {
        font-weight: bold;
        font-size: 12px;
        color: #444;
        margin-top: 6px;
        margin-bottom: 2px;
    }

    .dslr-models {
        font-size: 12px;
        color: #555;
        border-left: 1px solid #eee;
        padding-left: 8px;
    }

    .alias-box {
        margin-top: 6px;
        font-size: 11px;
        color: #888;
        padding: 5px;
        background: #fafafa;
        border: 1px dashed #eee;
        line-height: 1.3;
    }

    .shoe-img {
        width: 50px;
        height: auto;
        margin-bottom: 4px;
    }

    .shoe-label {
        font-size: 10px;
        font-weight: bold;
        color: var(--text-muted);
    }

    .highlight-cell {
        background-color: #fffafb;
        font-weight: bold;
        color: var(--canon-red);
        text-align: center;
        font-size: 12px;
    }

    @media (max-width: 600px) {
        td {
            padding: 6px 4px;
            font-size: 12px;
        }

        .title-main {
            font-size: 13px;
        }
    }
