/* Core Typography */
body {
    font-family: 'Inter', sans-serif;
    -webkit-font-smoothing: antialiased;
}

/* Custom Container to match the boxed feel of the original site */
.custom-container {
    max-width: 1170px;
}

/* Utilities */
.fw-black {
    font-weight: 800;
}
.tracking-wide {
    letter-spacing: 1px;
}
.text-shadow {
    text-shadow: 2px 2px 4px rgba(0,0,0,0.8);
}

/* Interactions */
.hover-underline:hover {
    text-decoration: underline !important;
}

.hover-invert {
    transition: background-color 0.2s, color 0.2s;
}

.hover-invert:hover {
    background-color: #000 !important;
    color: #fff !important;
}

/* Images & Structure */
.banner-img {
    max-height: 250px;
    object-fit: cover;
}

.post-thumb {
    width: 150px;
    height: 150px;
    object-fit: cover;
    flex-shrink: 0;
}

/* Sidebar Overrides */
.list-group-item {
    background-color: transparent;
}
.list-group-item:hover {
    background-color: #f8f9fa;
}

.album-overlay { background-color: rgba(0,0,0,0.7); font-size: 0.8rem; }
.comment-avatar {
    width: 45px;
    height: 45px;
    background-color: #212529; /* Dark background */
    color: #ffffff;            /* White text */
    font-weight: bold;
    display: flex;             /* Enables centering */
    align-items: center;       /* Centers vertically */
    justify-content: center;   /* Centers horizontally */
    flex-shrink: 0;            /* Prevents the box from squishing */
}

.hover-opacity:hover {
    opacity: 0.7;
    transition: opacity 0.3s ease;
}

 /* Ensure the post container handles its children properly */
.entry {
    display: flex;
    flex-direction: column;
}

/* Force images and video containers to behave in the layout */
.entry img, .entry .ratio {
    max-width: 100%;
    margin-bottom: 1.5rem;
}

.post-thumb-img {
    max-width: 150px;
    height: auto;
}

.comment-avatar {
    width: 55px;
    height: 55px;
}

.wp-smiley {
    height: 1em;
    max-height: 1em;
}
