body {
    background: #f4f7fb;
}
.stats-card {
    border: 0;
    box-shadow: 0 0.5rem 1rem rgba(15, 23, 42, 0.08);
}
.accordion-button:not(.collapsed) {
    background: #eef6ff;
    color: #0b57d0;
}
.signature-pad {
    width: 100%;
    height: 160px;
    border: 1px dashed #94a3b8;
    border-radius: 0.5rem;
    background: #fff;
    touch-action: none;
}
.signature-view {
    max-height: 140px;
    border: 1px solid #e5e7eb;
    border-radius: 0.5rem;
}
.webcam-box {
    width: 100%;
    min-height: 220px;
    border: 1px dashed #94a3b8;
    border-radius: 0.5rem;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
.webcam-box video {
    width: 100%;
    height: auto;
}
.table > :not(caption) > * > * {
    vertical-align: middle;
}
@media (max-width: 767.98px) {
    .display-6 {
        font-size: 1.75rem;
    }
    .accordion-body {
        padding: 1rem;
    }
}
