/* ---- Page détail doléance ---- */
.doleance-single-wrapper {
    max-width: 780px;
    margin: 40px auto;
    padding: 0 20px;
}

.doleance-single {
    background: #fff;
    border: 1px solid var(--dol-border);
    border-radius: var(--dol-radius);
    box-shadow: var(--dol-shadow);
    overflow: hidden;
}

.doleance-single__header {
    padding: 32px 36px 24px;
    border-bottom: 1px solid var(--dol-border);
    background: var(--dol-bg);
}

.doleance-single__category {
    display: inline-block;
    background: #dbeafe;
    color: var(--dol-primary);
    font-size: 0.78rem;
    font-weight: 700;
    padding: 3px 12px;
    border-radius: 20px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 12px;
}

.doleance-single__title {
    font-size: 1.8rem;
    font-weight: 800;
    color: var(--dol-text);
    line-height: 1.3;
    margin: 0 0 16px;
}

.doleance-single__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    font-size: 0.88rem;
    color: var(--dol-text-muted);
}

.doleance-single__content {
    padding: 32px 36px;
    font-size: 1.05rem;
    line-height: 1.8;
    color: var(--dol-text);
}

.doleance-single__content p {
    margin-bottom: 1.2em;
}

.doleance-single__footer {
    padding: 20px 36px;
    border-top: 1px solid var(--dol-border);
    background: var(--dol-bg);
}

.doleance-btn--back {
    background: transparent;
    color: var(--dol-primary);
    border: 1.5px solid var(--dol-primary);
    font-size: 0.92rem;
    padding: 9px 20px;
}

.doleance-btn--back:hover {
    background: var(--dol-primary);
    color: #fff;
}

@media (max-width: 640px) {
    .doleance-single__header,
    .doleance-single__content,
    .doleance-single__footer { padding: 20px 18px; }
    .doleance-single__title  { font-size: 1.4rem; }
}