:root{
    --bg:#f6f8fb;
    --card:#ffffff;
    --text:#2d3436;
    --sub:#636e72;
    --line:#dfe6e9;
    --primary:#1a3c5e;
    --accent:#3498db;
    --gold:#f39c12;
    --max:960px;
}
*{margin:0;padding:0;box-sizing:border-box}
body{
    background:var(--bg);
    color:var(--text);
    font-family:"Microsoft YaHei","PingFang SC",sans-serif;
    line-height:1.6;
}
.nav{
    height:52px;
    background:#fff;
    border-bottom:1px solid var(--line);
    display:flex;
    align-items:center;
    padding:0 16px;
}
.nav-inner{
    width:100%;
    max-width:var(--max);
    margin:auto;
    display:flex;
    justify-content:space-between;
}
.nav-logo{
    color:var(--primary);
    font-weight:bold;
    text-decoration:none;
    letter-spacing:1px;
}
.btn-fav-site{
    border:1px solid var(--line);
    background:#fff;
    color:var(--sub);
    padding:5px 14px;
    border-radius:18px;
    cursor:pointer;
    transition:.2s;
}
.btn-fav-site:hover{
    color:var(--primary);
    border-color:#b8c7d9;
}
.btn-fav-site.saved{
    color:#e74c3c;
    border-color:#e74c3c;
}
.main{
    max-width:var(--max);
    margin:auto;
    padding:24px 16px;
}
.title{
    text-align:center;
    font-size:28px;
    font-weight:bold;
    color:var(--primary);
}
.subtitle{
    text-align:center;
    color:var(--sub);
    font-size:14px;
    margin:10px 0 22px;
    padding-bottom:12px;
    border-bottom:1px solid var(--line);
}
.info-table{
    width:100%;
    border-collapse:separate;
    border-spacing:0 6px;
    font-size:13px;
}
.info-table td{
    padding:9px 12px;
    background:#fff;
}
.info-label{
    width:28%;
    font-weight:bold;
    background:#edf3f8!important;
}
.info-value{
    border-left:1px solid #fff;
}
.rating-stars{
    color:var(--gold);
    font-size:18px;
}
.section-title{
    margin:22px 0 10px;
    padding-left:12px;
    border-left:5px solid var(--accent);
    color:var(--primary);
    font-size:18px;
    font-weight:bold;
}
.synopsis,.review-item{
    background:#fff;
    border:1px solid var(--line);
    border-radius:8px;
    padding:14px;
}
.synopsis{
    font-size:13px;
    text-indent:2em;
    text-align:justify;
}
.review-item{
    border-left:5px solid #e67e22;
}
.review-user{
    font-weight:bold;
}
.review-score{
    color:#e67e22;
    margin-left:8px;
}
.review-content{
    margin-top:8px;
    color:#444;
    font-size:13px;
}
.footer{
    text-align:center;
    border-top:1px solid var(--line);
    padding:18px;
    color:#95a5a6;
    font-size:12px;
}
.footer a{
    color:#95a5a6;
    text-decoration:none;
    margin:0 5px;
}

:root {
    --bg: #f6f8fb;
    --card: #ffffff;
    --text: #2d3436;
    --sub: #636e72;
    --line: #dfe6e9;
    --primary: #1a3c5e;
    --accent: #3498db;
    --gold: #f39c12;
    --max: 960px;
    --radius: 8px;
    --border: var(--line);
    --text3: var(--sub);
    --gold-light: #f1c40f;
}
.related-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 2px;
    background: var(--card);
    border-radius: var(--radius);
    padding: 6px;
}
.card {
    background: var(--card);
    border-radius: var(--radius);
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 6px 6px;
    transition: all 0.2s;
    text-decoration: none;
    color: var(--text);
    gap: 4px;
    position: relative;
    -webkit-tap-highlight-color: transparent;
    min-width: 0;
    width: 100%;
    box-sizing: border-box;
}
.card:hover {
    background: #f0f4f9;
}
.card-title {
    font-weight: normal;
    font-size: 0.85rem;
    letter-spacing: 0.03em;
    flex: 1;
    min-width: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.card-arrow {
    flex-shrink: 0;
    color: var(--text3);
    font-size: 0.8rem;
    transition: transform 0.2s;
}
.card:hover .card-arrow {
    transform: translateX(3px);
    color: var(--gold-light);
}
@media(max-width:640px){
    .title{font-size:22px}
    .info-label{width:35%}	
	.related-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 4px;
        padding: 6px;
    }
    .card {
        padding: 4px 6px;
    }
    .card-title {
        font-size: 0.75rem;
		font-weight: normal;
    }
}