.content-page-hero,.article-detail-hero{background:linear-gradient(135deg,#17120d,#432719);color:#fff;padding:75px 0}
.content-page-hero span,.article-detail-hero span{font-size:11px;letter-spacing:2px;color:#ddb15d;font-weight:900}
.content-page-hero h1,.article-detail-hero h1{font-size:clamp(38px,6vw,66px);margin:12px 0}
.content-page-hero p,.article-detail-hero p{color:#d0c9c3;line-height:1.7}
.content-page-section,.article-section,.article-related{padding:50px 0;background:#f7f4ef}
.content-page-layout{max-width:1050px}
.content-page-image,.article-detail-image{width:100%;max-height:580px;object-fit:cover;border-radius:16px;margin-bottom:25px}
.rich-content{background:#fff;border:1px solid #e5ddd3;border-radius:16px;padding:32px;font-size:17px;line-height:1.85}
.rich-content img{max-width:100%;height:auto}.rich-content table{width:100%;border-collapse:collapse}.rich-content td,.rich-content th{border:1px solid #ddd;padding:10px}
.article-categories{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:26px}.article-categories a{background:#fff;border:1px solid #e2d9cf;border-radius:999px;padding:10px 14px;font-size:11px;font-weight:800}.article-categories a.active{background:#a9351e;color:#fff;border-color:#a9351e}
.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.article-grid.related{grid-template-columns:repeat(4,minmax(0,1fr))}
.article-card{background:#fff;border:1px solid #e5ddd3;border-radius:15px;overflow:hidden}.article-image{display:grid;place-items:center;height:240px;background:#211710;color:#ddb15d;font-size:36px;font-weight:900}.article-image img{width:100%;height:100%;object-fit:cover}.article-body{padding:20px}.article-body>small{color:#a9351e;font-size:10px;font-weight:900}.article-body h2,.article-body h3{margin:9px 0}.article-body h2{font-size:20px}.article-body p{color:#777;line-height:1.65;font-size:13px}.article-body>div{display:flex;justify-content:space-between;border-top:1px solid #eee;padding-top:13px;font-size:11px}.article-body>div a{font-weight:900;color:#8b2b19}.article-empty{text-align:center;background:#fff;padding:55px;border-radius:14px}
.article-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:25px;align-items:start}.article-lead{font-size:19px;line-height:1.75;font-weight:700;color:#604b3f}.article-contact-box{position:sticky;top:110px;background:#17120d;color:#fff;border-radius:15px;padding:24px}.article-contact-box p{color:#bbb;line-height:1.6}.article-contact-box a{display:block;text-align:center;background:#d7a84c;color:#17120d;border-radius:9px;padding:12px;margin-top:9px;font-weight:900}.article-contact-box a:last-child{background:#fff}
.content-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.content-admin-card{background:#fff;border:1px solid var(--border);border-radius:15px;padding:22px}.content-admin-card>span{font-size:10px;letter-spacing:1.4px;color:#9a6e1d;font-weight:900}.content-admin-card h2{font-size:19px}.content-admin-card p{color:var(--muted);font-size:12px;line-height:1.6}.content-admin-card>div{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:20px}.content-form{max-width:1100px}.media-url-control{display:flex;gap:8px}.media-url-control input{flex:1}.content-toolbar{padding:14px;margin-bottom:18px}.content-toolbar form{display:flex;gap:9px}.content-toolbar input{flex:1}.content-toolbar input,.content-toolbar select{border:1px solid var(--border);border-radius:9px;padding:10px 12px}.post-admin-thumb{width:90px;height:62px;object-fit:cover;border-radius:8px}.post-admin-thumb.empty{display:grid;place-items:center;background:#17120d;color:#d7a84c;font-weight:900}.post-status{display:inline-flex;padding:6px 9px;border-radius:999px;font-size:10px;font-weight:900}.post-status.published{background:#dcf6e7;color:#167b43}.post-status.draft{background:#fff3d5;color:#8a6218}.post-status.hidden{background:#eee;color:#666}
@media(max-width:980px){.article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.article-grid.related{grid-template-columns:repeat(2,minmax(0,1fr))}.article-detail-layout{grid-template-columns:1fr}.article-contact-box{position:static}.content-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.article-grid,.article-grid.related,.content-admin-grid{grid-template-columns:1fr}.rich-content{padding:20px}.article-image{height:220px}.content-toolbar form{display:grid}.media-url-control{flex-direction:column}}


/* V3.1.1 - dùng logo thương hiệu khi bài viết chưa có ảnh đại diện */
.article-image:has(.article-fallback-logo){background:#fff;}
.article-image .article-fallback-logo{
    width:min(72%,260px);
    height:auto;
    max-height:72%;
    object-fit:contain;
    padding:18px;
}
.article-detail-fallback{
    width:100%;
    min-height:300px;
    margin-bottom:25px;
    border:1px solid #e5ddd3;
    border-radius:16px;
    background:#fff;
    display:grid;
    place-items:center;
    overflow:hidden;
}
.article-detail-fallback img{
    width:min(58%,360px);
    height:auto;
    max-height:240px;
    object-fit:contain;
    padding:24px;
}
@media(max-width:620px){
    .article-image .article-fallback-logo{width:min(76%,230px);max-height:74%;padding:14px;}
    .article-detail-fallback{min-height:220px;}
    .article-detail-fallback img{width:min(72%,280px);max-height:170px;padding:18px;}
}


/* V3.1.5 - đồng bộ logo thay ảnh trống trong quản trị */
.post-admin-thumb.fallback-logo,
.showcase-thumb.fallback-logo{
    object-fit:contain;
    background:#fff;
    padding:7px;
    border:1px solid #e5ddd3;
}
