/* Base styles */
.terms-nav {
    position: sticky;
    top: 2rem;
    max-height: calc(100vh - 4rem);
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: var(--color-border) transparent;
    background-color: var(--color-bg-light);
    padding: 1rem;
    padding-top: 170px;
    border-radius: 0.5rem;
    box-shadow: 0 2px 4px var(--color-shadow);
}

.dark-mode .terms-nav {
    background-color: var(--dark-bg-tertiary);
    box-shadow: 0 2px 4px var(--dark-shadow);
}

.terms-nav::-webkit-scrollbar {
    width: 4px;
}

.terms-nav::-webkit-scrollbar-track {
    background: transparent;
}

.terms-nav::-webkit-scrollbar-thumb {
    background-color: var(--color-border);
    border-radius: 2px;
}

/* Light mode styles */
.terms-nav a {
    color: var(--color-text);
    text-decoration: none;
    transition: var(--transition-normal);
    border-bottom: 2px solid transparent;
    padding: 0.5rem 0;
    display: block;
    font-weight: 500;
    position: relative;
}

.terms-nav a:hover {
    color: var(--color-primary);
    transform: translateX(4px);
}

.terms-nav a.active {
    color: var(--color-primary);
    border-bottom-color: var(--color-primary);
}

/* Article styles - Light mode */
.terms-article {
    transition: var(--transition-normal);
}

.terms-article h3 {
    color: var(--color-text-dark);
    transition: var(--transition-normal);
    font-weight: 600;
}

.terms-article p,
.terms-article li {
    color: var(--color-text);
    transition: var(--transition-normal);
    line-height: 1.7;
}

.terms-article a {
    color: var(--color-primary);
    transition: var(--transition-normal);
    text-decoration: none;
}

.terms-article a:hover {
    color: var(--color-primary-dark);
    text-decoration: underline;
}

/* Dark mode styles */
.dark-mode .terms-nav a {
    color: var(--dark-heading);
}

.dark-mode .terms-nav a:hover,
.dark-mode .terms-nav a.active {
    color: var(--color-primary-light);
    border-bottom-color: var(--color-primary-light);
}

.dark-mode .terms-article h3 {
    color: var(--dark-heading);
}

.dark-mode .terms-article p,
.dark-mode .terms-article li {
    color: var(--dark-desc);
}

.dark-mode .terms-article a {
    color: var(--color-primary-light);
}

.dark-mode .terms-article a:hover {
    color: var(--color-primary);
}

/* Section transitions */
.terms-section {
    opacity: 0;
     padding-top: 170px;
    transform: translateY(20px);
    transition: var(--transition-slow);
}

.terms-section.visible {
    opacity: 1;
    transform: translateY(0);
}
.dark-mode .terms-article >div{
    color: var(--dark-desc);
}

/* List styles */
.terms-article ul {
    list-style-type: disc;
    padding-left: 1.5rem;
    margin: 1rem 0;
}

.terms-article li {
    margin-bottom: 0.5rem;
}

/* Responsive styles */
@media (max-width: 1024px) {
    .terms-nav {
        position: relative;
        top: 0;
        max-height: none;
        margin-bottom: 2rem;
    }

    .terms-nav ul {
        display: flex;
        flex-wrap: wrap;
        gap: 1rem;
    }

    .terms-nav a {
        padding: 0.5rem 1rem;
        border: 1px solid var(--color-border);
        border-radius: 0.375rem;
    }

    .dark-mode .terms-nav a {
        border-color: var(--dark-border);
    }
}

/* Print styles */
@media print {
    .terms-nav {
        display: none;
    }

    .terms-article {
        -moz-column-break-inside: avoid;
             break-inside: avoid;
    }

    .terms-article h3 {
        color: var(--color-text-dark) !important;
    }

    .terms-article p,
    .terms-article li {
        color: var(--color-text) !important;
    }

    .terms-article a {
        color: var(--color-primary) !important;
        text-decoration: underline;
    }
}

/* Additional utility classes */
.text-primary {
    color: var(--color-primary);
}

.dark-mode .text-primary {
    color: var(--color-primary-light);
}

.text-secondary {
    color: var(--color-text-light);
}

.dark-mode .text-secondary {
    color: var(--dark-desc);
}

/* Enhanced focus states for accessibility */
.terms-nav a:focus {
    outline: 2px solid var(--color-primary);
    outline-offset: 2px;
}

.dark-mode .terms-nav a:focus {
    outline-color: var(--color-primary-light);
}

/* Dark mode background transitions */
.terms-article {
    background-color: var(--color-bg-light);
    transition: all var(--transition-normal);
    border-radius: 0.5rem;
    padding: 1.5rem;
    margin-bottom: 1rem;
    box-shadow: 0 1px 3px var(--color-shadow);
}

.dark-mode .terms-article {
    background-color: var(--dark-bg-tertiary);
    box-shadow: 0 1px 3px var(--dark-shadow);
}

/* Section background */
.terms-section {
    background-color: var(--color-bg);
    transition: all var(--transition-normal);
}

.dark-mode .terms-section {
    background-color: var(--dark-bg);
}

/* Main section background */
section.bg-white {
    background-color: var(--color-bg) !important;
    transition: background-color var(--transition-normal);
}

section.bg-white.dark-mode {
    background-color: var(--dark-bg) !important;
}

/* Border color transitions */
.terms-article {
    border: 1px solid var(--color-border);
    transition: all var(--transition-normal);
}

.dark-mode .terms-article {
    border-color: var(--dark-border);
}

/* List item background */
.terms-article li {
    background-color: transparent;
    transition: background-color var(--transition-normal);
    padding: 0.25rem 0;
}

.dark-mode .terms-article li {
    background-color: transparent;
}

/* Navigation link hover background */
.terms-nav a:hover {
    background-color: var(--color-bg-dark);
    border-radius: 0.25rem;
    padding: 0.5rem;
}

.dark-mode .terms-nav a:hover {
    background-color: var(--dark-bg-secondary);
}

/* Active navigation link background */
.terms-nav a.active {
    background-color: var(--color-bg-dark);
    border-radius: 0.25rem;
    padding: 0.5rem;
}

.dark-mode .terms-nav a.active {
    background-color: var(--dark-bg-secondary);
}

