* {margin: 0;padding: 0;box-sizing: border-box;font-family: "微软雅黑", sans-serif;}
body {width: 100%;max-width: 1200px;margin: 0 auto;background-color: #f5f5f5;}
.header {width: 100%;background-color: #fff;padding: 15px 0;border-bottom: 2px solid #333;}

.header-top {display: flex;justify-content: space-between;align-items: center;padding: 0 20px;margin-bottom: 10px;}
.logo a{text-decoration: none;}
.logo img{width: 70px;height:70px;}

.search-box {flex: 1;  max-width: 500px; margin: 0 auto;  display: flex;}
.search-box input {width: calc(100% - 80px); height: 38px;padding: 0 15px;border: 2px solid #d93025;border-right: none;border-radius: 4px 0 0 4px;
    font-size: 14px;outline: none;}
.search-box input::placeholder { color: #999;}
.search-btn {width: 80px;height: 38px;background-color: #d93025;color: #fff;border: none;border-radius: 0 4px 4px 0;cursor: pointer;font-size: 14px;
    display: flex;align-items: center;justify-content: center;gap: 4px;}
.search-btn:hover {background-color: #c5281e;}

.login-register {width: 150px; text-align: right;}
.login-register a {color: #666;text-decoration: none;margin: 0 5px;font-size: 14px;}
.login-register a:hover {color: #d93025;}

.nav-bar {background-color: #333;}
.nav-bar ul {display: flex;list-style: none;padding: 0 20px;justify-content: center; }
.nav-bar ul li a {display: block;color: #fff;text-decoration: none;padding: 12px 25px;font-size: 14px;}
.nav-bar ul li a.active,.nav-bar ul li a:hover {background-color: #d93025;}

.main-container { display: flex; justify-content: space-between; margin: 15px 0; gap: 15px;}

.left-sidebar {width: 20%;background-color: #fff;padding: 15px;border: 1px solid #e0e0e0;}
.middle-content {width: 50%;background-color: #fff;padding: 15px;border: 1px solid #e0e0e0;}
.right-sidebar { width: 25%; display: flex; flex-direction: column; gap: 15px;}

.footer {width: 100%;background-color: #333;padding: 15px 0;margin-top: 20px;color: #ccc;}
.footer-nav {display: flex;justify-content: center;gap: 20px;margin-bottom: 15px;}
.footer-nav a {color: #ccc;text-decoration: none;font-size: 14px;}
.footer-nav a:hover {color: #fff;}
.contact-info {text-align: center;font-size: 14px;line-height: 1.6;}

.rank-filter h3 {font-size: 16px;margin-bottom: 15px;padding-bottom: 5px;border-bottom: 1px solid #e0e0e0;}
.filter-group {margin-bottom: 20px;}
.filter-title {font-size: 14px;font-weight: bold;margin-bottom: 8px;color: #333;}
.filter-list {list-style: none;}
.filter-list li {margin-bottom: 6px;}
.filter-list li a {text-decoration: none;color: #666;font-size: 13px;display: block;padding: 4px 0;}
.filter-list li a:hover,.filter-list li a.active {color: #d93025;}

.rank-header {margin-bottom: 20px;padding-bottom: 10px;border-bottom: 1px solid #e0e0e0;}
.rank-header h2 {font-size: 18px;color: #333;margin-bottom: 5px;}
.rank-header p {font-size: 14px;color: #666;}

.rank-list {margin-bottom: 20px;}
.rank-item {display: flex;gap: 15px;padding: 15px;border-bottom: 1px dashed #eee;align-items: center;}
.rank-item:last-child {border-bottom: none;}

.rank-top1 {background-color: #fff8f8;border-radius: 8px;border: 1px solid #ffe0e0;}

.rank-num {width: 40px;height: 40px;background-color: #d93025;color: #fff;border-radius: 50%;display: flex;align-items: center;justify-content: center;
    font-weight: bold;font-size: 14px;flex-shrink: 0;}
.rank-top1 .rank-num {background-color: #ff4400;width: 45px;height: 45px;font-size: 16px;}

.rank-img {width: 80px;height: 110px;flex-shrink: 0;}
.rank-img img {width: 100%;height: 100%;object-fit: cover;border-radius: 4px;}

.rank-info {flex: 1;}
.rank-bookname {font-size: 16px;margin-bottom: 6px;}
.rank-bookname a {color: #333;text-decoration: none;}
.rank-bookname a:hover {color: #d93025;}
.rank-author,.rank-type {font-size: 12px;color: #666;margin-bottom: 4px;}
.rank-desc {font-size: 13px;color: #999;line-height: 1.4;margin-bottom: 8px;
    display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;overflow: hidden;}

.rank-hot {display: flex;gap: 15px;font-size: 12px;}
.rank-hot span:first-child {color: #ff6600;}
.rank-hot span:last-child {color: #666;}

.load-more {text-align: center;margin-top: 10px;}
.load-more button {padding: 8px 20px;background-color: #f5f5f5;color: #333;border: 1px solid #ddd;border-radius: 4px;cursor: pointer;font-size: 14px;}
.load-more button:hover {background-color: #eee;color: #d93025;border-color: #d93025;}

.side-rank {background-color: #fff;padding: 15px;border: 1px solid #e0e0e0;}
.side-rank h3 {font-size: 16px;margin-bottom: 15px;padding-bottom: 5px;border-bottom: 1px solid #e0e0e0;}
.side-rank-list {display: flex;flex-direction: column;gap: 12px;}

.side-rank-item {display: flex;align-items: center;gap: 10px;padding: 5px 0;border-bottom: 1px solid #f5f5f5;}
.side-rank-item:last-child {border-bottom: none;}

.side-rank-num {width: 24px;height: 24px;background-color: #333;color: #fff;border-radius: 50%;display: flex;align-items: center;justify-content: center;
    font-size: 12px;font-weight: bold;flex-shrink: 0;}

.side-rank-img {width: 40px;height: 60px;flex-shrink: 0;}
.side-rank-img img {width: 100%;height: 100%;object-fit: cover;border-radius: 4px;}

.side-rank-info {flex: 1;}
.side-rank-name {font-size: 13px;margin-bottom: 3px;}
.side-rank-name a {color: #333;text-decoration: none;}
.side-rank-name a:hover {color: #d93025;}
.side-rank-hot {font-size: 11px;color: #ff6600;}