.article{
    max-width: 720px;
    margin: 0 auto;
}

/* .article-cover{
    width: 100%;
    max-height: 400px;
    object-fit: cover;
    border-radius: 8px;
    margin-bottom: 25px;
} */

.article-cover{
    width: 100%;
    height: auto;
    border-radius: 8px;
    margin-bottom: 25px;
}

.article h1{
    color: #f0f0f0;
    font-size: 2rem;
    margin-bottom: 10px;
}

.article-meta{
    color: #999;
    font-size: .9rem;
    margin-bottom: 25px;
}

.article-tags{
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-bottom: 14px;
}

.tag-badge{
    display: inline-block;
    background: rgba(201,168,76,.12);
    color: #c9a84c;
    border: 1px solid rgba(201,168,76,.4);
    font-size: .75rem;
    letter-spacing: .5px;
    text-transform: uppercase;
    padding: 3px 11px;
    border-radius: 20px;
}

.article-body{
    color: #ddd;
    line-height: 1.8;
}

.article-body h2{
    color: #c9a84c;
    font-family: 'Cinzel', serif;
    font-size: 1.4rem;
    margin: 35px 0 15px;
}

.article-body h3{
    color: #e5c87b;
    margin: 25px 0 10px;
}

.article-body p{
    margin-bottom: 18px;
}

.article-body ul,
.article-body ol{
    margin: 0 0 18px 20px;
}

.article-body li{
    margin-bottom: 8px;
}

.article-body img{
    max-width: 100%;
    border-radius: 8px;
    margin: 20px 0;
}

.article-body a{
    text-decoration: underline;
}

.article-body blockquote{
    border-left: 3px solid #c9a84c;
    padding-left: 18px;
    color: #aaa;
    font-style: italic;
    margin: 20px 0;
}

/* Tag filter bar */
.materials-tags{
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin: 20px 0 30px;
}

.tag-filter{
    background: #1e1e1e;
    border: 1px solid #2a2a2a;
    color: #ccc;
    padding: 7px 16px;
    border-radius: 20px;
    font-size: .85rem;
    cursor: pointer;
    transition: all .2s;
}

.tag-filter:hover{
    border-color: #c9a84c;
    color: #f0f0f0;
}

.tag-filter.active{
    background: #c9a84c;
    border-color: #c9a84c;
    color: #121212;
    font-weight: 600;
}

.material-card-image{
    width: 100%;
    height: 140px;
    object-fit: cover;
    border-radius: 6px;
    margin-bottom: 15px;
}

.article-body table{
    width: 100%;
    border-collapse: collapse;
    margin: 20px 0;
    background: #1a1a1a;
    border: 1px solid #2a2a2a;
}

.article-body th{
    background: #2c2416;
    color: #c9a84c;
    font-family: 'Cinzel', serif;
    font-weight: 700;
    padding: 10px 15px;
    text-align: left;
    border-bottom: 2px solid #c9a84c;
    white-space: nowrap;
}

.article-body td{
    padding: 8px 15px;
    border-bottom: 1px solid #2a2a2a;
    color: #ddd;
}

.article-body tbody tr:hover{
    background: #212121;
}

.article-body table{
    display: block;
    overflow-x: auto;
}
