/* Bandcamp-inspired comment skin - compact with user icon on left, text on right, favorite track underneath */
.snd-comments-section {
    margin: 2em 0;
    padding: 0;
    background: transparent;
    border: none;
    border-radius: 0;
}

.snd-comments-title {
    margin: 0 0 1em 0;
    color: #666;
    font-size: 1em;
    font-weight: normal;
    text-transform: lowercase;
    border-bottom: 1px solid #e6e6e6;
    padding-bottom: 0.5em;
}

.snd-comments-list {
    display: flex;
    flex-direction: column;
    gap: 0.5em;
}

.snd-comment-item {
    background: transparent;
    padding: 0.4em 0;
    border: none;
    border-radius: 0;
    box-shadow: none;
    position: relative;
    display: grid;
    grid-template-columns: 40px 1fr;
    grid-template-rows: auto auto;
    grid-template-areas: 
        "avatar content"
        ". track";
    gap: 0.25em 0.75em;
    align-items: start;
}

.snd-comment-avatar-link {
    grid-area: avatar;
    display: block;
    transition: opacity 0.2s ease, transform 0.2s ease;
    border-radius: 3px;
}

.snd-comment-avatar-link:hover {
    opacity: 0.8;
    transform: translateX(2px);
}

.snd-comment-avatar {
    width: 40px;
    height: 40px;
    border-radius: 3px;
    border: none;
    transition: box-shadow 0.2s ease;
}

.snd-comment-avatar-link:hover .snd-comment-avatar {
    box-shadow: 0 2px 6px rgba(64, 120, 192, 0.3);
}

.snd-comment-author {
    font-weight: bold;
    color: #fff;
    font-size: 0.85em;
    position: relative;
    top: -1px;
}

.snd-comment-content {
    grid-area: content;
    color: #ccc;
    line-height: 1.4;
    margin: 0;
    font-size: 0.85em;
}

.snd-comment-favorite-track {
    grid-area: track;
    background: transparent;
    padding: 0.2em 0 0 0;
    border: none;
    border-radius: 0;
    font-size: 0.75em;
    color: #888;
    margin: 0 0 -0.3em 0;
    font-style: italic;
    position: relative;
    top: -9px;
}

.snd-favorite-label {
    font-weight: normal;
    color: #888;
    font-style: italic;
}

.snd-comment-favorite-track::before {
    content: "♪ ";
    color: #4078c0;
    margin-right: 0.25em;
}

.snd-comments-form {
    margin-top: 1.5em;
    padding: 1em;
    background: #fafafa;
    border-radius: 3px;
    border: 1px solid #e6e6e6;
}

.snd-comments-form h4 {
    margin: 0 0 1em 0;
    color: #666;
    font-size: 0.95em;
    font-weight: normal;
    text-transform: lowercase;
}

.form-row {
    margin-bottom: 0.75em;
}

.form-row label {
    display: block;
    margin-bottom: 0.4em;
    font-weight: normal;
    color: #666;
    font-size: 0.9em;
}

.form-row textarea,
.form-row select {
    width: 100%;
    padding: 0.5em;
    border: 1px solid #ccc;
    border-radius: 3px;
    font-size: 0.9em;
    font-family: inherit;
}

.form-row textarea {
    resize: vertical;
    min-height: 60px;
}

.random-comment {
    background: #f5f5f5;
    padding: 0.75em;
    border-radius: 3px;
    border: 1px solid #e0e0e0;
}

.random-comment-display {
    font-style: italic;
    color: #666;
    margin: 0.4em 0;
    padding: 0.6em;
    background: #fff;
    border: 1px solid #e6e6e6;
    border-radius: 3px;
    font-size: 0.85em;
}

.submit-row {
    display: flex;
    align-items: center;
    gap: 0.75em;
}

.snd-comments-form .submit-row .button {
    padding: 0.5em 1em;
    font-size: 0.9em;
    border-radius: 3px;
    text-decoration: none !important;
}

.comment-message {
    padding: 0.4em 0.75em;
    border-radius: 3px;
    font-size: 0.85em;
}

.comment-message.success {
    background: #e6f7ff;
    color: #0050b3;
    border: 1px solid #b3d9ff;
}

.comment-message.error {
    background: #fff2f0;
    color: #a8071a;
    border: 1px solid #ffccc7;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .snd-comment-item {
        grid-template-columns: 32px 1fr;
        gap: 0.2em 0.5em;
    }
    
    .snd-comment-avatar {
        width: 32px;
        height: 32px;
    }
    
    .snd-comment-author {
        font-size: 0.75em;
    }
    
    .snd-comment-content {
        font-size: 0.8em;
    }
    
    .snd-comment-favorite-track {
        font-size: 0.7em;
    }
}