/* AnchoredMesh - Site Styles */

:root {
    --primary-color: #007bff;
    --success-color: #28a745;
    --danger-color: #dc3545;
    --accent-color: rgb(69, 178, 236);
}

/* Layout */
html {
    position: relative;
    min-height: 100%;
}

body {
    margin-bottom: 50px;
    font-size: 0.9rem;
}

/* Navbar */
.navbar-brand img {
    max-height: 40px;
}

/* Cards */
.card-header {
    font-weight: 600;
}

/* Accordion */
.accordion-button {
    font-size: 0.85rem;
    padding: 0.5rem 1rem;
    font-weight: 600;
}

.accordion-button:not(.collapsed) {
    background-color: #e7f1ff;
    color: var(--primary-color);
}

.accordion-body {
    padding: 0.75rem;
}

/* Form Controls */
.form-label {
    margin-bottom: 0.25rem;
    font-weight: 500;
}

.form-control-sm,
.input-group-sm > .form-control {
    font-size: 0.85rem;
}

.input-group-text {
    font-size: 0.8rem;
    background-color: #f8f9fa;
}

/* Info icons */
.fa-info-circle {
    cursor: help;
}

/* Verification cards */
.card.border-success {
    border-width: 2px;
}

.card.border-danger {
    border-width: 2px;
}

/* Badges */
.badge.fs-6 {
    font-size: 1rem !important;
}

/* Alert close button - override Bootstrap absolute positioning */
.alert-dismissible.d-flex {
    padding-right: 0.75rem; /* Override Bootstrap's 4rem padding-right */
}

.alert-dismissible.d-flex .btn-close {
    position: static;
    padding: 0.25rem;
}

/* Invalid input highlighting */
.input-error {
    border: 2px solid #dc3545 !important;
    background-color: #fff5f5 !important;
    box-shadow: 0 0 5px rgba(220, 53, 69, 0.5);
}

/* Footer */
.footer {
    position: absolute;
    bottom: 0;
    width: 100%;
    background-color: #f8f9fa;
}

/* Toolbar */
.btn-toolbar {
    gap: 0.5rem;
}

/* Results column placeholders */
.text-muted.py-5 i {
    opacity: 0.3;
}

/* Responsive adjustments */
@media (max-width: 991.98px) {
    .btn-toolbar {
        justify-content: center;
    }

    .accordion-button {
        font-size: 0.8rem;
    }
}

@media (max-width: 575.98px) {
    .form-label {
        font-size: 0.75rem;
    }

    .btn {
        font-size: 0.8rem;
    }
}

/* Print styles */
@media print {
    .btn-toolbar,
    .navbar,
    .footer {
        display: none !important;
    }

    .card {
        break-inside: avoid;
    }
}
