body {
            font-family: Arial, sans-serif;
            margin: 20px;
            background-color: #f8f9fa;
        }
        .logo {
            display: block;
            margin: 0 auto;
            width: 100%;
            max-width: 400px;
        }
        .footer {
            margin-top: 20px;
            text-align: right;
            color: #777;
            font-size: 0.9em;
        }
        .datetime {
            text-align: left;
            font-size: 1.3em;
            color: #444;
            margin-bottom: 5px;
        }
        table {
            width: 100%;
            margin-top: 10px;
        }
        .course-name {
            word-wrap: break-word; /* 允许折行 */
        }
        .nobreak {
            white-space: nowrap; /* 防止折行 */
        }
        .course-merged-cell {
            vertical-align: middle;
        }
        .course-time-with-status .course-status {
            display: block;
            margin-top: 4px;
        }
        .course-time-with-status .course-status:empty {
            display: none;
        }
        .table .course-row-consecutive .course-time-with-status {
            border-left: 4px solid #9aa1a7;
            padding-left: 8px;
        }
        .table .course-row-consecutive-start .course-time-with-status,
        .table .course-row-consecutive-middle .course-time-with-status {
            border-bottom-color: transparent;
        }
        .table .course-row-consecutive-middle .course-time-with-status,
        .table .course-row-consecutive-end .course-time-with-status {
            border-top-color: transparent;
        }
        th, td {
            padding: 12px;
            text-align: left;
            border-bottom: 1px solid #ddd;
            vertical-align: middle;
        }
        th {
            background-color: #f2f2f2;
        }
        .waiting-course, .active-course, .unmarked-course, .timeout-unmarked-course, .marked-course, .cancelled-course {
            background-color: #dff0d8; /* 浅绿色 */
            border-left: 4px solid #3c763d; /* 深绿色 */
            border-radius: 4px;
            padding: 4px 8px;
            font-size: 0.9em;
            margin-bottom: 4px;
            display: inline-block;
        }
        .active-course {
            background-color: #d9edf7; /* 浅蓝色 */
            border-left: 4px solid #31708f; /* 深蓝色 */
        }
        .unmarked-course {
            background-color: #fcf8e3; /* 浅黄色 */
            border-left: 4px solid #f0ad4e; /* 橙色 */
        }
        .timeout-unmarked-course {
            background-color: #f2dede; /* 浅红色 */
            border-left: 4px solid #a94442; /* 深红色 */
        }
        .marked-course {
            background-color: #f5f5f5; /* 灰色 */
            border-left: 4px solid #ccc; /* 深灰色 */
        }
        .cancelled-course {
            background-color: #f5f5f5; /* 灰色 */
        }
        .mock-exam {
            background-color: #ffeeba; /* 浅黄色 */
            border-left: 4px solid #ffc107; /* 深黄色 */
            padding: 4px 8px;
            font-size: 0.9em;
            margin-bottom: 4px;
            display: inline-block;
            border-radius: 4px;
        }
        .info2 {
            background-color: #e74c3c;
            color: white;
            padding: 20px;
            text-align: center;
            font-size: 1.2em;
            border-radius: 5px;
            margin-top: 20px;
            max-width: 80%;
            margin: 20px auto; /* 居中 */
        }
        .notice {
            background-color: #5dade2;
            color: white;
            padding: 20px;
            font-size: 1em;
            border-radius: 5px;
            margin-top: 20px;
        }
        .notice-title {
            font-size: 1.5em;
            font-weight: bold;
            margin-bottom: 10px;
        }
        .notice ul {
            list-style-type: decimal;
            padding-left: 20px;
        }
        @media (max-width: 400px) {
            .datetime, th, td {
                font-size: 0.8em;
            }
            .title {
                text-align: center;
                margin-top: 15px;
                margin-bottom: 50px;
            }
        }
        @media (min-width: 1000px) {
            body {
                margin: 50px; /* 增加边距 */
                font-size: 1.2em; /* 增大文字大小 */
            }
            h1 {
              font-size: 3em;
              text-align: center;
              margin-top: 0px;
              margin-bottom: 40px;
            }
            .title {
                text-align: center;
                font-size: 2em;
                margin-top: 200px;
                margin-bottom: 200px;
            }
            .logo {
                max-width: 800px; /* 增大Logo尺寸 */
            }
            table {
                width: 100%;
            }
            th, td {
                text-align: left;
                vertical-align: middle;
                font-size: 1.3em;
            }
            .datetime {
                font-size: 1.3em;
            }
            .footer {
                font-size: 1em;
            }
            .current-course, .upcoming-course {
                font-size: 0.9em;
            }
        }
