* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    list-style: none;
}

a {
    text-decoration: none;
    color: inherit;
}

:root {
    --header-height: 4rem;
}

/* 头部 */
.header {
    position: sticky;
    --tw-border-opacity: 1;
    border-color: rgb(var(229 231 235) / var(--tw-border-opacity));
    border-bottom-width: 2px;
    margin-bottom: -1px;
    z-index: 50;
    top: 0;
    border-bottom: #e5e7eb solid 2px;
    --tw-backdrop-blur: blur(8px);
    backdrop-filter: blur(8px);
}

.nav-wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 80rem;
    height: 4rem;
    margin-left: auto;
    margin-right: auto;
    gap: .75rem;
    padding: 0 2rem;
}

.nav-wrap .logo a {
    color: #111827;
    font-weight: 700;
    font-size: 1.25rem;
}

.menu-wrap {
    display: flex;
}

.menu {
    display: flex;
    column-gap: 2rem;
    align-items: center;
    list-style: none;
    margin: 0;
    padding: 0;
}

.menu a {
    font-weight: 700;
}

.menu a.active,
.menu a:hover {
    color: #0ea5e9;
}
.menu .highlight{
    color: #ff6b6b;
    font-weight: bold;
    padding: 2px 6px;
    background: #fff3f3;
    border-radius: 4px;
}
.account-wrap a {
    font-weight: 500;
    font-size: .875rem;
    line-height: 1.25rem;
    padding: .5rem 2rem;
    border-radius: 9999px;
    flex-shrink: 0;
    align-items: center;
    column-gap: .5rem;
}

.account-wrap .login {
    background-color: #f9faff;
    color: #373151;
    margin-right: 1rem;
    border: 1px solid #e5e7eb;
}

.account-wrap .register {
    background-color: #111817;
    color: #fff;
}


/* 底部 */
.footer {
    padding: 4rem 0;
    width: 100%;
    background-color: #111827;
}

.footer .footer-wrap {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 30px;
    color: #fff;
    text-align: center;
}

.footer .footer-wrap .link ul {
    display: flex;
    justify-content: center;
    gap: 1rem;
}

.footer .footer-wrap .link ul li a{
    color: #fff;
}
.footer .footer-wrap .copy {
    margin-top: 1rem;
}

.form-item .icon{
    display: flex;
    justify-content: center;
    width: 3rem;
}

.form-item .icon:before {
    content:"";
    display: block;
    height: 20px;
    width: 20px
}

.form-item .icon-user:before {
    background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoBAMAAAB+0KVeAAAAJ1BMVEVHcEydpbecpbelrMGep72cpbaepLeepradpbefpbqdpbadpLecpLYUARzmAAAADHRSTlMAxfIMHd15fmAwr66dO0+mAAAAoElEQVQoz2NgIBVYLFWKakYTM9M5c+bMoWQUMRaZMyBw0AFZ0PUMBIQgiTHLnDlUaTxd58xBA4Qg25kzIkDK8cyZBISg0ZmDYFrmjDJCsOeMCph2OnMCIbjmTAGYZj9zCiEYc2YCmOY8cxQhqHMGYivzmUMEBLFqR1h0moCTsDoeqzexBgjWoMMeyFijA3vEURmcQQfUEDyIYoUMfQWJBQC8fpfyKqtEVgAAAABJRU5ErkJggg==);
    background-repeat: no-repeat;
    background-size: 100% 100%;
}

.form-item.focus .icon-user:before {
    background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAMAAAC7IEhfAAAAn1BMVEVHcEwpkf8hjP8fh/8IZ/8EYP8woP8cgv8nlf8SdP8qm/8dh/8We/8ZgP8chP8hjv8ijv8Yf/8agv8Yfv8dhv8Sdv8nlv8vof8snv8smf8vov8uoP8eh/8UeP8Xff8lkv8olf8xpP8wo/8qm/8IZ/8Kaf8La/8Nbf8Wff8rnP8tn/8CXf8Zgf8FYv8omP8eif8chf8ij/8lk/8Uev8gjP/3byyZAAAAJHRSTlMAEYtSM8cIMzMzxq/yYBvZ83nAy/FG8Rt5RvLfyNnknWBgr/J0qpdLAAABMElEQVQ4y9WT2W6DMBBFwSaEnQCBsChRlkJTKGUJ//9tHbc0uNUYVKl56BFC9p2DrEFjSXow8umcpWl2Psmzmhqn5Ugaq2JvZ5Qcxk7oZS88ZSYwVYOVL4RqGiUXtjbw0+M3wEi0DxKD7WK034h52h1mRljvx77vo2QSkwiCIyKakJPJW2sEAhMR3a7r6JqDQuAi4gby9Tcg2GDiMAw67+kQYKLbNA3VOSgE2NEm5IQXCQRYM3bbtttw8sItBDb2w1nBV+747EN02LxXwA8/tdBnOw8fioDVLEIVhRKLrQPBSDqH6xc39jo4ooF0gitH4MxcBc+6jVieOn+5bHNvWXvTlqX/yfMio1gsMor5RJEX8OQ/GcWnRSZxJe5gNYl1Xc+JUP6tWFXVnAjlh4l/zDuBDEF+cwTQ7QAAAABJRU5ErkJggg==);
    background-repeat: no-repeat;
    background-size: 100% 100%;
}


.form-item .icon-password:before {
    background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoBAMAAAB+0KVeAAAAIVBMVEVHcEymrcCcpbeep7yepredpbadpbedprefprqdpbecpLZw2GfhAAAACnRSTlMADPMdfLbdYC/MHTkpRwAAAJFJREFUKM9jYCAViIcppRaiiYlorVq1apEjihjzrFUgsNIAWdBsFQQkI4kxzlq1yEOwRWvVSgGEIMuqVcFAynTVKgeEoNCqpWA6apUiQrBqlTKYNlq1HCEYBdXGAtUBBlmrGsA0x6plCEGtVRBbGVctQgiuWoXOIF5wFTqgiiBK0A6M4Co4TT1BKruT+iFPLAAA4i2yxW07QJUAAAAASUVORK5CYII=);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    content:"";
}

.form-item.focus .icon-password:before {
    background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAMAAAC7IEhfAAAAVFBMVEVHcEwKaf80pv8qm/8FYf8giv8bgP8Rc/8olv8vo/8qnP8qm/8snf8qm/8snP8omP8BXP8ag/8OcP8dh/8FYv8Yf/8snv8DX/8Kaf8Uef8nlv8ijv/WAIaiAAAAEHRSTlMAMwzwMzMzMzMz03wdr2C9L+SJnwAAAOZJREFUOMu1ztsSgiAQgGFjO6zgocwM5P3fs2WkBGVlcuq/2+UboCj+nGhqCSDrRmwzBYMP1Aat5BAkK9bBEAWMFHTfSE+iEOi+MA4y/boaqdbfUrVuUskLwbl5dhJSVzbuoAp/TIsmAevRxk8pWtQJKK21GC6QFjIBgfbRlwQtbAKu1wy8U7kNB+1ic8/m4S3bt/CRLYAlWwCNMY8SscRY4LSjUzNDg2x74YktgB3FQ3cawPOnrlvPe+Dl0wTj2UNNzQdar+ckXLaAB7YA9lr3R7aeekNqA+oIbufhM5uH12zfwh/3AmoUMxBpjmwzAAAAAElFTkSuQmCC);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    content:"";
}

.card{
    background-color: #fff;
    border-radius: .5rem;
    padding: 1rem;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
}

.btn {
    padding: 12px 25px;
    border: none;
    border-radius: 5px;
    font-size: 15px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
}

.btn-primary {
    background-color: #0ea5e9;
    color: white;
}

.input {
    width: 100%;
    padding: 12px 15px;
    border: 1px solid #ddd;
    border-radius: 5px;
    font-size: 15px;
    transition: border-color 0.3s ease;
}

.pagebar{
    text-align: center;
    width: 100%;
    margin-top: 1rem;
}

.pagebar a,b{
    text-decoration: none;
    color: #666;
    display: inline-block;
    line-height: 24px;
    margin-right: 3px;
    padding: 2px 9px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
    cursor: pointer;
}

.pagebar a {
    background-color: #F4F4F5;
}

.pagebar b{
    background: #111817;
    color: #fff;
}


/* 桌面端隐藏汉堡菜单 */
.hamburger {
    display: none;
}

/* 移动端适配 */
@media (max-width: 768px) {
    .nav-wrap {
        padding: 0 1rem;
        height: 3.5rem;
    }

    .menu-wrap {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        background: white;
        box-shadow: 0 2px 10px rgba(0,0,0,0.1);
        z-index: 100;
        padding: 1rem;
    }

    .menu {
        flex-direction: column;
        gap: 1rem;
        align-items: flex-start;
    }

    .menu li {
        width: 100%;
    }

    .menu a {
        display: block;
        padding: 0.5rem 0;
    }

    /* 汉堡菜单样式 */
    .hamburger {
        display: block;
        background: none;
        border: none;
        width: 32px;
        height: 24px;
        position: relative;
        cursor: pointer;
    }

    .hamburger.active .bar:nth-child(1) {
        transform: rotate(45deg) translate(5px, 5px);
    }

    .hamburger.active .bar:nth-child(2) {
        opacity: 0;
    }

    .hamburger.active .bar:nth-child(3) {
        transform: rotate(-45deg) translate(7px, -6px);
    }

    .bar {
        display: block;
        width: 100%;
        height: 3px;
        background: #111827;
        margin: 5px 0;
        transition: 0.3s;
    }

    /* 账户区域适配 */
    .account-wrap {
        /*display: flex;*/
        /*gap: 0.5rem;*/
        /*margin-left: auto;*/
        /*padding-right: 1rem;*/
    }

    .account-wrap a {
        padding: 0.5rem 1rem;
        font-size: 0.75rem;
    }

    /* 显示激活的菜单 */
    .menu-wrap.active {
        display: block;
    }
}
