
:root{
  --bg-base:#121212;
  --surface:#181818;
  --surface-2:#1f1f1f;
  --card:#252525;
  --text:#ffffff;
  --muted:#b3b3b3;
  --accent:#1ed760;
  --border:#4d4d4d;
  --negative:#f3727f;
}
html,body{height:100%;background:var(--bg-base);color:var(--text);font-family:SpotifyMixUI, "Helvetica Neue", Helvetica, Arial, "Hiragino Sans", "Microsoft YaHei", sans-serif}
a{color:var(--text);text-decoration:none}
a:hover{color:var(--accent)}
.container-main{max-width:1200px;margin:0 auto;padding-top:20px}
.header-brand{display:flex;align-items:center;gap:12px}
.header-brand img{height:36px;border-radius:6px}
.navbar-site{background:transparent;padding:10px 0}
.navbar-site .nav-link{color:var(--muted)}
.navbar-site .nav-link.active{color:var(--accent);font-weight:700}
/* Layout */
.main-row{display:flex;gap:20px}
.left-col{flex:3}
.right-col{flex:1}
@media(max-width:991px){.main-row{flex-direction:column}.right-col{order:2}.left-col{order:1}}
/* Cards */
.card-dark{background:var(--surface);border-radius:0;padding:16px;margin-bottom:16px;box-shadow:0 8px 8px rgba(0,0,0,0.3)}
.card-title{font-size:16px;font-weight:700;margin-bottom: 15px;
    border-bottom: 2px solid var(--accent);
    padding-bottom: 10px;}
.card-meta{color:var(--muted);font-size:13px}
/* Article list component */
.post-list{display:flex;flex-direction:column;gap:14px}
.post-item{background:var(--card);padding:14px;border-radius:0;display:flex;gap:14px;align-items:flex-start}
.post-item .thumb{flex:0 0 30%;max-width:30%;}
.post-item .thumb img{width:100%;height: 150px;object-fit:cover;border-radius:5px}
.post-item .content{flex:1;width: 100%;}
.post-item .title{font-size:16px;font-weight:700;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.post-item .excerpt{color:var(--muted);margin-top:8px;font-size:14px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.post-item .meta{margin-top:8px;color:var(--muted);font-size:13px}
/* Variants */
.post-item.no-image{display:block}
.post-item.no-image .content{margin:0}
.post-item.no-image .title{font-size:18px}
.post-item.one-image{display:flex}
.post-item.one-image .thumb{flex-basis: 25%;}
.post-item.gallery{flex-direction:column}
.gallery-thumbs{display:flex;gap:10px;margin-top:10px}
.gallery-thumbs img{width:100%;height:100px;object-fit:cover;border-radius:5px;flex:1}
/* Four grid */
.gallery-4{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.gallery-3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.gallery-4 img,.gallery-3 img{width:100%;height: 120px;object-fit:cover;border-radius:5px}
/* Truncation helpers already used above */
/* Side */
.side-section{background:var(--surface-2);padding:14px;border-radius:0;margin-bottom:16px}
.side-section h5{font-weight:700;margin-bottom: 15px;
    border-bottom: 2px solid var(--accent);
    padding-bottom: 10px;}
.popular-list,.latest-list{display:flex;flex-direction:column;gap:8px}
.popular-item{display:flex;gap:8px;align-items:center}
.popular-item img{width:60px;min-width:60px;height:40px;object-fit:cover;border-radius:2px}
.popular-item a {
    font-size: 13px;
}
.tag-cloud{display:flex;flex-wrap:wrap;gap:8px}
.tag-cloud a{background:transparent;border:1px solid var(--border);padding:6px 10px;border-radius:20px;color:var(--muted);font-size:13px}
/* Footer */
.site-footer{padding:20px 0;color:var(--muted);border-top:1px solid rgba(255,255,255,0.03);}
.footer-links{display:flex;flex-wrap:wrap;gap:10px}
.footer-links a{color:var(--muted)}
/* Footer friends grid */
.footer-friends ul{padding-left:0}
.footer-friends li{margin-bottom:6px}
.footer-friends a{color:var(--muted)}
.footer-friends strong{color:var(--text);border-bottom: 2px solid var(--accent);
    padding-bottom: 10px;}
/* Back to top: keep flex layout but control visibility via opacity to preserve centering */
#backTop{position:fixed;right:18px;bottom:24px;background:var(--accent);color:#000;border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px rgba(0,0,0,0.5);cursor:pointer;opacity:0;pointer-events:none;transition:opacity .18s ease;z-index:9999}
#backTop.visible{opacity:1;pointer-events:auto}
#backTop i{font-size:18px;display:block;line-height:1}
/* Pagination */
.pagination .page-link{background:var(--surface);color:var(--muted);border:1px solid var(--border)}
.pagination .page-item.active .page-link{background:var(--accent);color:#000;border-color:var(--accent)}
/* Responsive tweaks */
@media(max-width:576px){.post-item .thumb{display:none}.post-item{padding:12px}}
/* Related grid in show page */
.related-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
@media(max-width:991px){.related-grid{grid-template-columns:repeat(2,1fr)}}
.related-card img{width:100%;height:140px;object-fit:cover;border-radius:6px}
.related-card .r-title{margin-top:8px;font-size:14px}
.carousel-inner{border-radius:10px}
.carousel-item .card-img{width:100%;height:320px;background-color:#eee;background-size:cover;background-position:50%;background-repeat:no-repeat;transition:.5s all;object-fit:cover}
.navbar-expand-lg .navbar-nav{ gap: 5px;}

