/* Theme Compatibility CSS for Athena */
/* Ensures consistent content wrapping across all Bootswatch themes */

/* Universal text wrapping */
.text-wrap {
    word-wrap: break-word;
    overflow-wrap: break-word;
    hyphens: auto;
}

/* Force break for very long words/URLs */
.text-break-all {
    word-break: break-all;
    overflow-wrap: break-word;
}

/* Form improvements */
.form-control, .form-select {
    word-wrap: break-word;
    overflow-wrap: break-word;
    max-width: 100%;
    box-sizing: border-box;
}

/* Card content wrapping */
.card-body {
    word-wrap: break-word;
    overflow-wrap: break-word;
}

.card-title, .card-text {
    word-wrap: break-word;
    overflow-wrap: break-word;
}

/* Table improvements */
.table {
    table-layout: auto;
    word-wrap: break-word;
}

.table td, .table th {
    word-wrap: break-word;
    overflow-wrap: break-word;
    max-width: 200px; /* Prevent extremely wide columns */
}

.table-responsive {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

/* Button group improvements */
.btn-group .btn {
    white-space: nowrap;
}

/* Modal content wrapping */
.modal-body {
    word-wrap: break-word;
    overflow-wrap: break-word;
}

/* Alert content wrapping */
.alert {
    word-wrap: break-word;
    overflow-wrap: break-word;
}

/* Badge content wrapping */
.badge {
    word-wrap: break-word;
    overflow-wrap: break-word;
    white-space: normal;
}



/* Responsive improvements */
@media (max-width: 768px) {
    .table-responsive {
        font-size: 0.875rem;
    }
    
    .btn-group {
        flex-direction: column;
    }
    
    .btn-group .btn {
        margin-bottom: 0.25rem;
    }
    
    .card-body {
        padding: 1rem 0.75rem;
    }
}

@media (max-width: 576px) {
    .table-responsive {
        font-size: 0.75rem;
    }
    
    .btn-sm {
        font-size: 0.75rem;
        padding: 0.25rem 0.5rem;
    }
}

/* Theme-specific adjustments */
/* Darkly theme adjustments */
[data-bs-theme="dark"] .text-break,
.bg-dark .text-break {
    color: inherit;
}

/* Flatly theme adjustments */
.bg-primary .text-break {
    color: white;
}

/* Ensure proper contrast for all themes */
.text-muted.text-break {
    opacity: 0.75;
}

/* Form floating label improvements */
.form-floating {
    position: relative;
}

.form-floating > .form-control,
.form-floating > .form-select {
    word-wrap: break-word;
    overflow-wrap: break-word;
}

/* Long URL handling */
.url-break {
    word-break: break-all;
    overflow-wrap: break-word;
    hyphens: none;
}

/* NOTE: .container-fluid and .row resets live in base-layout.css.
 * Column padding override kept here since it's a theme-compatibility
 * concern (Bootswatch themes override Bootstrap's defaults). */
.col, [class*="col-"] {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
}

/* Improved spacing for mobile */
@media (max-width: 768px) {
    .mb-3 {
        margin-bottom: 1.25rem !important;
    }
    
    .mb-4 {
        margin-bottom: 1.75rem !important;
    }
}