.candidate-extra-area .candidate-section-header {
    margin: 1.5rem 0 .75rem;
}

.candidate-extra-area .candidate-section-header h2 {
    font-size: 1.55rem;
    margin: .25rem 0 .35rem;
}

.candidate-card h3 {
    font-size: 1rem;
    margin-bottom: 1rem;
    color: #333;
}

.candidate-timeline {
    position: relative;
    padding-left: 1.35rem;
}

.candidate-timeline:before {
    content: "";
    position: absolute;
    left: .38rem;
    top: .35rem;
    bottom: .35rem;
    width: 2px;
    background: rgba(245, 130, 32, .25);
}

.timeline-item {
    position: relative;
    margin-bottom: 1rem;
}

.timeline-dot {
    position: absolute;
    left: -1.35rem;
    top: .32rem;
    width: .8rem;
    height: .8rem;
    border-radius: 999px;
    background: #f58220;
    box-shadow: 0 0 0 4px rgba(245, 130, 32, .15);
}

.timeline-body {
    background: #fff;
    border: 1px solid rgba(0,0,0,.07);
    border-radius: 12px;
    padding: .75rem .9rem;
}

.timeline-date {
    font-size: .78rem;
    color: #6c757d;
    margin-bottom: .15rem;
}

.timeline-body p {
    margin: .25rem 0 0;
    color: #5f6368;
    font-size: .9rem;
}

.candidate-pending-doc,
.candidate-message,
.candidate-resolution {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    padding: .85rem 0;
    border-bottom: 1px solid rgba(0,0,0,.08);
}

.candidate-pending-doc:last-child,
.candidate-message:last-child,
.candidate-resolution:last-child {
    border-bottom: 0;
}

.candidate-resolution {
    color: inherit;
    text-decoration: none;
}

.candidate-resolution:hover strong {
    color: #f58220;
}

@media (max-width: 767px) {
    .candidate-pending-doc,
    .candidate-message,
    .candidate-resolution {
        display: block;
    }
}
