/* layout.css：主要放页面布局（头部/主体/底部、两栏三栏这些）。 */
.site-header {
    position: sticky;
    top: 0;
    z-index: 1000;
    background: #ffffff;
    border-bottom: 1px solid var(--el-border);
}

.header-inner {
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.brand {
    display: flex;
    align-items: center;
    gap: 12px;
}

.brand-logo {
    width: 44px;
    height: 44px;
    border-radius: 8px;
    border: 1px solid var(--el-border);
    background: #fff;
}

.brand-text {
    line-height: 1.2;
}

.brand-text .school {
    font-weight: 800;
    font-size: 16px;
}

.brand-text .major {
    font-size: 12px;
    color: #606266;
}

.site-main {
    padding: 20px 0 40px;
}

.site-footer {
    background: #ffffff;
    border-top: 1px solid var(--el-border);
}

.footer-inner {
    padding: 22px 0;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
}

.footer-block {
    font-size: 12px;
    color: #606266;
    line-height: 1.8;
}

.grid-3 {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 16px;
}

.grid-2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.two-column {
    display: grid;
    grid-template-columns: 260px 1fr;
    gap: 16px;
}

.sidebar {
    background: #ffffff;
    border: 1px solid var(--el-border);
    border-radius: 10px;
    padding: 14px;
}

.content {
    background: #ffffff;
    border: 1px solid var(--el-border);
    border-radius: 10px;
    padding: 18px;
}
