/* KogniFlow Feedback Cards - Unified Styles */

/* Define CSS Variables for consistent theming */
:root {
    --radius1: 4px;
    --radius2: 8px;
    --stroke: #e0e0e0;
    --shadow-soft: 0 2px 8px rgba(0,0,0,0.08);
    --color-primary: #2f3a56;
    --color-accent: #667eea;
    --color-success: #28a745;
    --color-warning: #ffc107;
    --color-info: #0dcaf0;
}

/* Feedback Card Container */
.feedback-item {
    border: 1px solid var(--stroke) !important;
    border-radius: var(--radius2) !important;
    padding: 1px !important;
    margin-bottom: 15px;
    background: rgba(255, 255, 255, .86);
    transition: all 0.3s ease !important;
}

.feedback-item:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, .1);
    transform: translateX(4px);
}

/* Card Body Padding */
.feedback-item .card-body,
.card .card-body {
    padding: 4px 14px;
}

/* Card Styling */
.card {
    border-radius: var(--radius2);
    background: rgba(255, 255, 255, .86);
    border: 1px solid var(--stroke);
}

.card-header {
    background: rgba(47, 58, 86, .1);
    color: var(--color-primary);
    border-bottom: 1px solid var(--stroke);
}

.card-title {
    font-weight: 600;
    color: var(--color-primary);
}

/* Feedback Title */
.feedback-title {
    font-weight: bold;
    color: var(--color-primary);
    margin-bottom: 8px;
}

/* Feedback Meta */
.feedback-meta {
    display: flex;
    gap: 10px;
    margin-bottom: 10px;
    flex-wrap: wrap;
}

.feedback-meta .badge {
    font-size: 0.85em;
}

/* Markdown Content */
.markdown-content {
    line-height: 1.6;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

.card-text.markdown-content {
    padding: 0;
}

/* Feedback Body */
.feedback-body {
    margin-top: 10px;
}

.feedback-body.d-none {
    display: none !important;
}

.feedback-body.d-block {
    display: block !important;
}

/* Feedback List */
.feedback-list {
    margin-top: 15px;
}

.feedback-responses {
    margin-top: 30px;
}

.feedback-responses h4 {
    color: var(--color-primary);
    font-weight: 600;
    margin-bottom: 20px;
}

/* Status Indicators */
.status-open {
    border-left: 4px solid transparent;
}

.status-inprogress {
    border-left: 4px solid var(--color-warning);
    background: linear-gradient(90deg, rgba(255, 193, 7, 0.05), transparent);
}

.status-done {
    border-left: 4px solid var(--color-success);
    background: linear-gradient(90deg, rgba(40, 167, 69, 0.04), transparent);
    opacity: 0.85;
}

.feedback-item.is-open {
    box-shadow: 0 4px 12px rgba(0, 0, 0, .1);
}

/* Status Badge Colors */
.bg-status-open {
    background-color: #6c757d !important;
}

.bg-status-inprogress {
    background-color: var(--color-warning) !important;
    color: #000 !important;
}

.bg-status-done {
    background-color: var(--color-success) !important;
}

/* Interactive Elements */
.feedback-item[role="button"] {
    cursor: pointer;
}

.feedback-item[role="button"]:focus {
    outline: 2px solid var(--color-accent);
    outline-offset: 2px;
}

/* Responsive */
@media (max-width: 768px) {
    .feedback-item {
        padding: 12px;
    }

    .feedback-meta {
        flex-direction: column;
        gap: 5px;
    }

    .feedback-meta .badge {
        display: inline-block;
    }

    .d-flex.justify-content-between {
        flex-direction: column;
        gap: 10px;
    }
}

/* Markdown Elements within feedback */
.markdown-content h1,
.markdown-content h2,
.markdown-content h3,
.markdown-content h4,
.markdown-content h5,
.markdown-content h6 {
    margin-top: 12px;
    margin-bottom: 8px;
    font-weight: 600;
    color: var(--color-primary);
}

.markdown-content p {
    margin-bottom: 8px;
}

.markdown-content ul,
.markdown-content ol {
    margin-bottom: 12px;
    padding-left: 20px;
}

.markdown-content li {
    margin-bottom: 4px;
}

.markdown-content blockquote {
    border-left: 3px solid var(--color-accent);
    padding-left: 12px;
    margin-left: 0;
    color: #666;
    font-style: italic;
}

.markdown-content code {
    background: #f0f0f0;
    padding: 2px 6px;
    border-radius: var(--radius1);
    font-family: 'Courier New', monospace;
    font-size: 0.9em;
}

.markdown-content pre {
    background: #f8f9fa;
    border: 1px solid var(--stroke);
    border-radius: var(--radius2);
    padding: 12px;
    overflow-x: auto;
    margin-bottom: 12px;
}

.markdown-content pre code {
    background: none;
    padding: 0;
}

/* Dev ID styling */
.dev-id {
    font-family: monospace;
    font-size: 0.85em;
    color: #666;
    background: #f0f0f0;
    padding: 4px 8px;
    border-radius: var(--radius1);
    word-break: break-all;
}

/* Button styling */
.btn-action {
    padding: 4px 10px;
    font-size: 0.85em;
    transition: all 0.2s ease;
}

.btn-action:hover {
    transform: scale(1.05);
}

.preview-toggle {
    border: none;
    cursor: pointer;
    font-size: 0.85em;
    background: none;
    color: inherit;
}

.preview-toggle:hover {
    opacity: 0.7;
}
