.feed-page .content-section{
    display:grid;
    gap:18px;
    margin-top:18px;
}

.feed-page .chatitaly-main-grid{
    grid-template-columns:minmax(0,1fr) 340px;
    align-items:start;
}

.feed-stack{
    display:grid;
    gap:18px;
}

.feed-list{
    display:grid;
    gap:16px;
}

.feed-media-card{
    display:grid;
    grid-template-columns:260px minmax(0,1fr);
    overflow:hidden;
    border:1px solid var(--chat-border);
    border-radius:18px;
    background:#fff;
    box-shadow:0 8px 20px rgba(47,49,54,.06);
}

.feed-thumb{
    position:relative;
    min-height:170px;
    background:#111;
    overflow:hidden;
}

.feed-thumb img{
    width:100%;
    height:100%;
    min-height:170px;
    object-fit:cover;
    display:block;
}

.feed-provider{
    position:absolute;
    top:10px;
    left:10px;
    display:inline-flex;
    gap:6px;
    align-items:center;
    padding:6px 10px;
    border-radius:999px;
    background:rgba(255,255,255,.95);
    color:var(--chat-dark);
    font-size:12px;
    font-weight:900;
    z-index:2;
}

.feed-play{
    position:absolute;
    inset:0;
    display:flex;
    align-items:center;
    justify-content:center;
    pointer-events:none;
}

.feed-play span{
    width:54px;
    height:54px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:999px;
    color:#fff;
    font-size:22px;
    box-shadow:0 6px 24px rgba(0,0,0,.28);
}

.feed-play.youtube span{
    background:#ff0000;
}

.feed-play.mixcloud span{
    background:#5000ff;
}

.feed-play.generic span{
    background:var(--chat-green);
}

.feed-body{
    min-width:0;
    padding:18px;
}

.feed-shared{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-bottom:10px;
    color:var(--chat-muted);
    font-size:13px;
    font-weight:700;
}

.feed-title{
    margin:0 0 12px;
    color:var(--chat-dark);
    font-size:21px;
    font-weight:900;
    line-height:1.28;
}

.feed-meta{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-bottom:14px;
}

.feed-meta span{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:6px 10px;
    border-radius:999px;
    background:rgba(24,155,85,.08);
    color:#344054;
    font-size:12px;
    font-weight:800;
}

.feed-meta a{
    color:inherit;
    text-decoration:none;
}

.feed-meta a:hover{
    text-decoration:underline;
}

.feed-actions{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}

.feed-actions a,
.feed-actions button{
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:8px 12px;
    border:1px solid rgba(47,49,54,.12);
    border-radius:999px;
    background:#fff9df;
    color:var(--chat-dark);
    font-size:13px;
    font-weight:900;
    text-decoration:none;
    cursor:pointer;
    transition:.2s ease;
}

.feed-actions a:hover,
.feed-actions button:hover{
    background:var(--chat-green);
    border-color:var(--chat-green);
    color:#fff;
    text-decoration:none;
}

.feed-rank-list{
    display:grid;
    gap:10px;
}

.feed-rank-row{
    display:flex;
    justify-content:space-between;
    gap:10px;
    padding:11px 12px;
    border-radius:15px;
    background:rgba(24,155,85,.08);
}

.feed-rank-row strong{
    color:var(--chat-dark);
}

.feed-rank-count{
    color:var(--chat-green-dark);
    font-weight:900;
}

.feed-load-more{
    margin-top:4px;
}

.feed-empty{
    padding:16px;
    border-radius:15px;
    background:#fff9df;
    color:var(--chat-muted);
    font-weight:800;
}

@media screen and (max-width:1024px){

    .feed-page .chatitaly-main-grid{
        grid-template-columns:1fr;
    }

}

@media screen and (max-width:767px){

    .feed-media-card{
        grid-template-columns:1fr;
    }

    .feed-thumb,
    .feed-thumb img{
        min-height:190px;
    }

    .feed-actions{
        display:grid;
    }

    .feed-actions a,
    .feed-actions button{
        width:100%;
        justify-content:center;
    }

    .feed-title{
        font-size:18px;
    }

}

.feed-vote-bar{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:8px;
    margin-top:12px;
    padding-top:12px;
    border-top:1px solid rgba(47,49,54,.08);
}

.feed-vote-btn{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:7px 11px;
    border:1px solid rgba(47,49,54,.12);
    border-radius:999px;
    background:#ffffff;
    color:var(--chat-dark);
    font-size:13px;
    font-weight:900;
    cursor:pointer;
}

.feed-vote-btn:hover{
    background:rgba(24,155,85,.08);
    border-color:rgba(24,155,85,.28);
}

.feed-vote-btn.active.vote-up{
    background:var(--chat-green);
    border-color:var(--chat-green);
    color:#ffffff;
}

.feed-vote-btn.active.vote-down{
    background:#fff1f1;
    border-color:#f0b4b4;
    color:#b42318;
}

.feed-vote-btn.disabled{
    opacity:.65;
}

.feed-vote-score{
    display:inline-flex;
    align-items:center;
    padding:7px 10px;
    border-radius:999px;
    background:#fff9df;
    color:#344054;
    font-size:12px;
    font-weight:900;
}

.feed-vote-bar{
    display:flex;
    align-items:center;
    gap:8px;
    margin-top:12px;
    padding-top:12px;
    border-top:1px solid rgba(47,49,54,.08);
}

.feed-vote-btn{
    display:flex;
    align-items:center;
    justify-content:center;
    width:34px;
    height:34px;
    border:1px solid rgba(47,49,54,.10);
    border-radius:10px;
    background:#fff;
    color:#667085;
    cursor:pointer;
    font-size:14px;
    transition:.15s;
}

.feed-vote-btn:hover{
    background:#f5f7f8;
}

.feed-vote-btn.active.vote-up{
    color:var(--chat-green-dark);
    border-color:rgba(24,155,85,.25);
    background:rgba(24,155,85,.08);
}

.feed-vote-btn.active.vote-down{
    color:#b42318;
    border-color:rgba(180,35,24,.20);
    background:rgba(180,35,24,.08);
}

.feed-vote-btn span{
    display:none;
}

.feed-vote-score{
    font-weight:800;
    font-size:14px;
    color:#344054;
    background:none;
    padding:0;
}
.feed-comments-toggle{
    display:inline-flex;
    align-items:center;
    gap:6px;
    height:34px;
    padding:0 11px;
    border:1px solid rgba(47,49,54,.10);
    border-radius:10px;
    background:#fff;
    color:#667085;
    font-size:13px;
    font-weight:900;
    cursor:pointer;
}

.feed-comments-toggle:hover{
    background:#f5f7f8;
    color:var(--chat-dark);
}

.feed-comments-panel{
    display:none;
    margin-top:12px;
    padding:12px;
    border:1px solid rgba(47,49,54,.08);
    border-radius:14px;
    background:#f9fafb;
}

.feed-comments-panel.open{
    display:block;
}

.feed-comments-list{
    display:grid;
    gap:10px;
}

.feed-comments-empty,
.feed-comments-login{
    color:#667085;
    font-size:13px;
    font-weight:700;
}

.feed-comment-item{
    display:grid;
    grid-template-columns:36px minmax(0,1fr);
    gap:9px;
}

.feed-comment-avatar{
    position:relative;
    width:36px;
    height:36px;
    border-radius:999px;
    overflow:hidden;
    background:#42b992;
}

.feed-comment-avatar-img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    z-index:2;
}

.feed-comment-avatar-fallback{
    position:absolute;
    inset:0;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    font-size:14px;
    font-weight:900;
}

.feed-comment-content{
    min-width:0;
}

.feed-comment-head{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    align-items:center;
    margin-bottom:2px;
    font-size:12px;
}

.feed-comment-head strong{
    color:var(--chat-dark);
    font-weight:900;
}

.feed-comment-head span{
    color:#667085;
}

.feed-comment-delete{
    margin-left:auto;
    padding:0;
    border:0;
    background:transparent;
    color:#b42318;
    font-size:12px;
    font-weight:800;
    cursor:pointer;
}

.feed-comment-text{
    color:#344054;
    font-size:13px;
    line-height:1.45;
    word-break:break-word;
}

.feed-comment-form{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:8px;
    margin-top:12px;
}

.feed-comment-input{
    min-height:38px;
    max-height:90px;
    resize:vertical;
    padding:9px 10px;
    border:1px solid rgba(47,49,54,.12);
    border-radius:10px;
    font-size:13px;
}

.feed-comment-submit{
    padding:0 13px;
    border:0;
    border-radius:10px;
    background:var(--chat-green);
    color:#fff;
    font-size:13px;
    font-weight:900;
    cursor:pointer;
}

@media screen and (max-width:767px){
    .feed-comment-form{
        grid-template-columns:1fr;
    }

    .feed-comment-submit{
        height:38px;
    }
}

.feed-comment-form{
    display:grid;
    grid-template-columns:36px minmax(0,1fr) auto;
    gap:7px;
    margin-top:10px;
    align-items:center;
}

.feed-comment-input{
    height:36px;
    min-height:36px;
    resize:none;
    padding:0 11px;
    border:1px solid rgba(47,49,54,.12);
    border-radius:999px;
    background:#fff;
    font-size:13px;
    outline:none;
}

.feed-comment-input:focus{
    border-color:rgba(24,155,85,.35);
    box-shadow:0 0 0 3px rgba(24,155,85,.08);
}

.feed-comment-emoji{
    width:36px;
    height:36px;
    border:1px solid rgba(47,49,54,.10);
    border-radius:999px;
    background:#fff9df;
    cursor:pointer;
    font-size:16px;
}

.feed-comment-submit{
    height:36px;
    padding:0 14px;
    border:0;
    border-radius:999px;
    background:var(--chat-green);
    color:#fff;
    font-size:13px;
    font-weight:900;
    cursor:pointer;
}

@media screen and (max-width:767px){
    .feed-comment-form{
        grid-template-columns:36px minmax(0,1fr);
    }

    .feed-comment-submit{
        grid-column:2;
        width:100%;
    }
}

.feed-comment-form{
    position:relative;
}

.feed-emoji-picker{
    position:absolute;
    left:0;
    bottom:42px;
    display:none;
    gap:4px;
    padding:6px;
    border:1px solid rgba(47,49,54,.10);
    border-radius:999px;
    background:#fff;
    box-shadow:0 10px 24px rgba(0,0,0,.12);
    z-index:5;
}

.feed-comment-form.emoji-open .feed-emoji-picker{
    display:flex;
}

.feed-emoji-picker button{
    width:30px;
    height:30px;
    border:0;
    border-radius:999px;
    background:transparent;
    cursor:pointer;
    font-size:17px;
}

.feed-emoji-picker button:hover{
    background:#fff9df;
}

@media screen and (max-width:767px){
    .feed-comment-emoji,
    .feed-emoji-picker{
        display:none !important;
    }

    .feed-comment-form{
        grid-template-columns:minmax(0,1fr);
    }
}

.feed-favorite-btn{
    display:inline-flex;
    align-items:center;
    gap:6px;
    height:34px;
    padding:0 11px;
    border:1px solid rgba(47,49,54,.10);
    border-radius:10px;
    background:#fff;
    color:#667085;
    font-size:13px;
    font-weight:900;
    cursor:pointer;
}

.feed-favorite-btn:hover{
    background:#fff9df;
    color:#2f3136;
}

.feed-favorite-btn.active{
    background:#fff9df;
    border-color:rgba(255,204,51,.55);
    color:#b7791f;
}

.feed-thumb-fallback {
    width: 100%;
    height: 100%;
    min-height: 170px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    background: linear-gradient(135deg, #f3f7f6, #e5efec);
    color: #42b992;
    text-align: center;
}

.feed-thumb-fallback i {
    font-size: 38px;
}

.feed-thumb-fallback span {
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: #4b5b57;
}

.feed-source-rss .feed-title,
.feed-source-news .feed-title,
.feed-source-rssnews .feed-title {
    font-size: 20px;
    line-height: 1.25;
}

.feed-news-excerpt {
    margin-top: 8px;
    color: #5f6f6b;
    font-size: 14px;
    line-height: 1.45;
}

.feed-play.news span {
    background: #42b992;
}