/*
 * IONA Product Training
 * Base application stylesheet.
 */

:root {
    --pt-primary: #1f4e79;
    --pt-primary-dark: #163a5c;
    --pt-secondary: #6c757d;
    --pt-border: #dee2e6;
    --pt-background: #f5f6f8;
    --pt-surface: #ffffff;
    --pt-text: #212529;
}

html,
body {
    min-height: 100%;
}

body {
    margin: 0;
    background: var(--pt-background);
    color: var(--pt-text);
    font-family: Arial, Helvetica, sans-serif;
}

/* IONA convention: square corners. */
*,
.btn,
.form-control,
.form-select,
.card,
.alert,
.navbar,
.dropdown-menu,
.modal-content,
.list-group-item {
    border-radius: 0 !important;
}

.pt-header {
    background: var(--pt-primary);
    border-bottom: 3px solid var(--pt-primary-dark);
}

.pt-header .navbar {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}

.pt-header .navbar-brand,
.pt-header .nav-link {
    color: #ffffff;
}

.pt-header .navbar-brand:hover,
.pt-header .nav-link:hover,
.pt-header .nav-link:focus {
    color: #ffffff;
}

.pt-header .navbar-brand {
    font-weight: 700;
}

.pt-header .navbar-brand i {
    margin-right: 0.4rem;
}

.pt-header .navbar-toggler {
    border-color: rgba(255, 255, 255, 0.5);
}

.pt-header .navbar-toggler-icon {
    filter: brightness(0) invert(1);
}

.pt-user-menu {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.pt-user-name {
    color: #ffffff;
    font-size: 0.95rem;
}

.pt-main {
    min-height: calc(100vh - 130px);
    padding-top: 2rem;
    padding-bottom: 2rem;
}

.pt-footer {
    background: #ffffff;
    border-top: 1px solid var(--pt-border);
    padding: 1rem 0;
    color: var(--pt-secondary);
    font-size: 0.875rem;
}

.pt-footer strong {
    color: var(--pt-text);
}

@media (max-width: 991.98px) {
    .pt-user-menu {
        align-items: flex-start;
        flex-direction: column;
        gap: 0.5rem;
        padding-top: 1rem;
    }
}
