.sticky-chapter-nav {
    position: sticky;
    top: 115px;
}

.chapter-nav-btn {
    text-align: left;
    font-size: 0.78rem;
    padding: 6px 10px;
    border-radius: 6px;
    border: 1px solid transparent;
    background: transparent;
    color: var(--text-main);
    transition: all 0.15s;
}

.chapter-nav-btn:hover, .chapter-nav-btn.active {
    background-color: rgba(118, 185, 0, 0.14);
    border-color: var(--primary-accent);
    color: var(--primary-accent);
    font-weight: 700;
}

.legal-clause-box {
    border-left: 4px solid var(--primary-accent) !important;
}

del.diff-removed {
    background-color: rgba(220, 38, 38, 0.2);
    color: #ef4444;
    padding: 1px 4px;
    border-radius: 3px;
}

ins.diff-added {
    background-color: rgba(22, 163, 74, 0.22);
    color: #22c55e;
    text-decoration: none;
    font-weight: 700;
    padding: 1px 4px;
    border-radius: 3px;
}

.legal-modal-backdrop {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.65);
    z-index: 1080;
    display: flex;
    align-items: center;
    justify-content: center;
}