/**
 * @name application.css
 * @category CSS
 * @author Ruben Mercado <ruben.mercado@uconn.edu>
 * @copyright Copyright (c) 2026, ITS – Applications and Technology Solutions
 * @version 1.9
 */

:root {
    --ferpa-primary: #7C878E;
    --ferpa-text: #white;
    --ferpa-muted: #6c757d;
    --ferpa-border: #dee2e6;
    --ferpa-font-family: Arial, Helvetica, sans-serif;
    --ferpa-font-size-base: 0.875rem;
    --ferpa-font-size-sm: 0.8125rem;
    --ferpa-page-title-size: 1.375rem;
    --ferpa-heading-2-size: 1.25rem;
    --ferpa-heading-3-size: 1.125rem;
    --ferpa-section-title-size: 1rem;
    --ferpa-navbar-brand-size: 1rem;
}

body {
    color: var(--ferpa-text);
    font-family: var(--ferpa-font-family);
    font-size: var(--ferpa-font-size-base);
    line-height: 1.5;
}

h1,
.h1 {
    font-size: var(--ferpa-page-title-size);
}

h2,
.h2 {
    font-size: var(--ferpa-heading-2-size);
}

h3,
.h3 {
    font-size: var(--ferpa-heading-3-size);
}

h4,
h5,
h6,
.h4,
.h5,
.h6 {
    font-size: var(--ferpa-section-title-size);
}

label,
legend,
.form-label,
.col-form-label,
.form-control,
.form-select,
.btn,
.card,
.table,
.breadcrumb,
.navbar,
.dropdown-menu {
    font-size: var(--ferpa-font-size-base);
}

legend {
    font-weight: 600;
}

.container-header {
    align-items: center;
    border-bottom: 1px solid var(--ferpa-border);
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem 1rem;
    justify-content: space-between;
    margin-bottom: 1rem;
    padding: 1.25rem 0 0.75rem;
}

.container-header>h1 {
    color: var(--ferpa-primary);
    font-size: var(--ferpa-page-title-size);
    font-weight: 600;
    line-height: 1.2;
    margin: 0;
}

.container-header>h1>small {
    color: var(--ferpa-muted);
    display: inline-block;
    font-size: var(--ferpa-font-size-sm);
    font-weight: 400;
    padding-left: 0.25rem;
}

.container-header>.breadcrumb {
    background: transparent;
    margin: 0;
    padding: 0;
}

.container-header>.breadcrumb>li>a,
.content-header>.breadcrumb>li>a {
    color: var(--ferpa-text);
    display: inline-block;
    text-decoration: none;
}

.container-header>.breadcrumb>li>a>.bi,
.container-header>.breadcrumb>li>a>.fa,
.container-header>.breadcrumb>li>a>.ion {
    margin-right: 0.25rem;
}

.container-content {
    padding-bottom: 2rem;
}

.lookup-modal-body {
    min-height: 12rem;
}

#spinnerOverlay {
    align-items: center;
    background: rgba(255,255,255,.8);
    display: none;
    inset: 0;
    justify-content: center;
    position: fixed;
    z-index: 2000;
}

#caption,
.ferpa-caption {
    color: var(--ferpa-primary);
    font-weight: 600;
}

.xclass,
.ferpa-section-label {
    font-size: var(--ferpa-section-title-size);
    font-weight: 600;
}

.ferpa-square-list {
    list-style-type: square;
}

.ferpa-form textarea {
    resize: none;
}

.ferpa-form label.error {
    color: #dc3545;
}

.card {
    border-color: var(--ferpa-border);
}

.card.border-primary {
    border-color: var(--ferpa-border) !important;
}

/* Card Header */
.card-header {
    background-color: #7C878E !important;
    color: var(--ferpa-text) !important;
    border-bottom: 1px solid var(--ferpa-border);
    padding: .75rem 1rem;
}

.card-header .card-title,
.card-header h1,
.card-header h2,
.card-header h3,
.card-header h4,
.card-header h5,
.card-header h6 {
    color: var(--ferpa-text) !important;
    font-size: var(--ferpa-section-title-size);
    font-weight: 600;
    line-height: 1.4;
    margin: 0;
}

.table>thead th {
    font-weight: 600;
}