/* Terms & Conditions Override Styles to Remove Blue Lines */

/* Target elements to remove blue colors but exclude footer and user-button */
.terms-body *:not(footer):not(.user-button):not(.sign-in-btn):not(.sign-up-btn):not(.auth-btn):not(.auth-modal-container):not(.auth-modal):not(.provider-btn):not(.auth-submit-btn):not(.form-group):not(.auth-divider):not(.terms-checkbox):not(.close-modal):not(.auth-providers):not(.auth-footer):not(.forgot-password):not(.last-used):not(.auth-modal-logo):not(input):not(button) {
    border-color: transparent !important;
    outline-color: transparent !important;
}

/* Restore the user-button border to match the design in the second image */
.terms-body .user-button {
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    border-radius: 6px !important;
}

/* Style the auth buttons to match the home page styling */
.terms-body .auth-buttons {
    display: flex !important;
    gap: 12px !important;
    align-items: center !important;
}

.terms-body .sign-in-btn,
.terms-body .sign-up-btn {
    padding: 12px 24px !important;
    border-radius: 8px !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    font-size: 14px !important;
    height: auto !important;
    text-decoration: none !important;
    border: none !important;
    background: none !important;
}

.terms-body .sign-in-btn {
    background-color: transparent !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    color: white !important;
}

.terms-body .sign-in-btn:hover {
    background-color: rgba(255, 255, 255, 0.1) !important;
}

.terms-body .sign-up-btn {
    background-color: #2563eb !important;
    border: 1px solid #2563eb !important;
    color: white !important;
}

.terms-body .sign-up-btn:hover {
    background-color: #1d4ed8 !important;
    border-color: #1d4ed8 !important;
}

/* Specific selector for h2 elements to remove any borders */
.terms-body .terms-section h2 {
    border: none !important;
    border-bottom: none !important;
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
    outline: none !important;
    box-shadow: none !important;
    text-decoration: none !important;
    color: #ffffff !important;
    background: transparent !important;
    padding-bottom: 0 !important;
}

/* Override blue active links in the footer */
.terms-body .footer-column a.active,
.footer-column a.active {
    color: #e6edf3 !important;
    border: none !important;
    border-bottom: none !important;
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
    background: transparent !important;
    font-weight: 500 !important;
}

/* Force all links to use default color */
.terms-body a,
.terms-body a:hover,
.terms-body a:active,
.terms-body a:visited,
.terms-body a:focus {
    color: inherit !important;
    border-color: transparent !important;
}

/* Target any possibly remaining blue lines with highest specificity */
body.terms-body .terms-container .terms-section h2,
html body.terms-body main.terms-main .terms-container .terms-section h2,
.terms-body .terms-section h2[class],
.terms-section h2 {
    border: none !important;
    border-bottom: none !important;
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
    color: #ffffff !important;
    padding-bottom: 0 !important;
    background: none !important;
}

/* Remove any pseudo-elements that might be creating borders */
.terms-body .terms-section h2:before,
.terms-body .terms-section h2:after {
    display: none !important;
    content: none !important;
    border: none !important;
    background: none !important;
}

/* Explicitly restore the footer border */
.terms-body footer {
    border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
}

/* Fix X icon size in header to match privacy policy page */
.terms-body .social-icon {
    width: 16px !important;
    height: 16px !important;
    max-width: 16px !important;
    max-height: 16px !important;
    object-fit: contain !important;
    vertical-align: -2px !important;
    position: relative !important;
    top: 2px !important;
}

/* Specific override for header X icon */
.terms-body .header-icons a img.social-icon {
    width: 16px !important;
    height: 16px !important;
    position: relative !important;
    top: 3px !important; /* Final fine-tuned value */
    vertical-align: middle !important;
    margin-bottom: 0 !important;
    transform: translateY(0) !important;
}

/* Ensure auth modal works properly on terms page */
.terms-body .auth-modal-container {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 1000 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    background-color: rgba(0, 0, 0, 0.7) !important;
}

.terms-body .auth-modal {
    position: relative !important;
    background-color: #0D1117 !important;
    border: 1px solid #30363D !important;
    border-radius: 8px !important;
    max-width: 400px !important;
    width: 100% !important;
    margin: 20px !important;
}

/* Ensure all modal form elements maintain their styling */
.terms-body .provider-btn {
    border: 1px solid #30363D !important;
    background-color: #161B22 !important;
}

.terms-body .form-group input {
    border: 1px solid #30363D !important;
    background-color: #0D1117 !important;
    border-radius: 6px !important;
    padding: 14px !important;
    color: white !important;
    font-size: 17px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.terms-body .form-group input:focus {
    border-color: #58a6ff !important;
    outline: none !important;
}

.terms-body .form-group input::placeholder {
    color: #7d8590 !important;
}

.terms-body .auth-divider::before {
    background-color: #30363D !important;
}

.terms-body .terms-checkbox input {
    border: 1px solid #30363D !important;
} 