/* Fusion Arena Check-in Styles */

/* Font Definitions */
@font-face {
    font-family: 'SilvaDisplayFA';
    font-style: italic;
    font-weight: 900;
    font-display: swap;
    src: url('/static/fonts/FA/Silvadisplay-Blackitalic_1Hukhvr.Woff') format('woff'),
         url('/static/fonts/Silvadisplay-Blackitalic_1Hukhvr.woff') format('woff');
}

@font-face {
    font-family: 'OswaldFA';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('/static/fonts/FA/Poppins-Light.ttf') format('truetype'),
         url('/static/fonts/Poppins-Light.ttf') format('truetype');
}

:root {
    --fa-red: #FF7A84;
    --fa-yellow: #FFF799;
    --fa-black: #1a1a1a;
    --fa-white: #ffffff;
    --fa-gray: #f5f5f5;
}

/* Base Typography */
body {
    font-family: 'OswaldFA', 'Poppins-Light', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    background-color: var(--fa-red);
    color: var(--fa-white);
    margin: 0;
    padding: 0;
}

/* Headings - SilvaDisplayFA in FA-yellow */
h1, h2, h3, h4, h5 {
    font-family: 'SilvaDisplayFA', 'OswaldFA', sans-serif;
    font-style: italic;
    color: var(--fa-yellow);
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
}

/* Logo Header */
.logoFA {
    background: url('/static/images/logoFA.png') no-repeat center top;
    background-size: auto 80px;
}

.center {
    text-align: center;
}

/* Alerts */
.alert-red-fa {
    background-color: var(--fa-red);
    color: var(--fa-white);
    padding: 15px;
    border-radius: 4px;
    margin-bottom: 15px;
    border: 1px solid var(--fa-white);
}

.alert-fa-success {
    background-color: #d4edda;
    border-color: #c3e6cb;
    color: #155724;
    padding: 15px;
    border-radius: 4px;
    border: 1px solid var(--fa-white);
}

/* Buttons */
.btn-fa {
    display: inline-block;
    padding: 12px 24px;
    font-size: 16px;
    font-weight: 500;
    text-align: center;
    text-decoration: none;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.3s ease;
}

/* btn-outline-red-fa: FA-gelber Rand, FA-roter Hintergrund, Text weiss */
.btn-outline-red-fa {
    background-color: var(--fa-red);
    color: var(--fa-white);
    border: 2px solid var(--fa-yellow);
}

.btn-outline-red-fa:hover {
    background-color: var(--fa-yellow);
    color: var(--fa-red);
    border: 2px solid var(--fa-red);
    text-decoration: none;
}

/* btn-outline-red-fa-active: FA-roter Rand, FA-gelber Hintergrund, Text FA rot */
.btn-outline-red-fa-active {
    background-color: var(--fa-yellow);
    color: var(--fa-red);
    border: 2px solid var(--fa-red);
}

.btn-block {
    display: block;
    width: 100%;
}

/* Form Styles */
.form-control {
    font-family: 'OswaldFA', 'Poppins-Light', sans-serif;
    border: 1px solid #ddd;
    border-radius: 4px;
    padding: 10px 15px;
    font-size: 16px;
}

.form-control:focus {
    border-color: var(--fa-red);
    box-shadow: 0 0 0 0.2rem rgba(229, 0, 75, 0.25);
    outline: none;
}

.form-check-input:checked {
    background-color: var(--fa-red);
    border-color: var(--fa-red);
}

.text-muted-fa {
    color: #6c757d;
    font-size: 12px;
}

/* Labels */
label, .col-form-label {
    font-family: 'OswaldFA', 'Poppins-Light', sans-serif;
}

/* Cards */
.card {
    border: none;
    border-radius: 0;
    overflow: hidden;
    transition: transform 0.3s ease;
}

.card:hover {
    transform: scale(1.02);
}

.cardLink {
    display: block;
}

.card-img-top {
    width: 100%;
    height: auto;
}

/* Tables */
.table th {
    font-family: 'OswaldFA', 'Poppins-Light', sans-serif;
    font-weight: 600;
    color: #666;
}

.table td {
    font-family: 'OswaldFA', 'Poppins-Light', sans-serif;
    color: var(--fa-black);
}

/* Signature Pad */
.signature-pad {
    border: 1px solid #e8e8e8;
    background-color: var(--fa-white);
    padding: 16px;
    border-radius: 4px;
}

.signature-pad--body {
    min-height: 200px;
    position: relative;
}

.signature-pad--body canvas {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    border-radius: 4px;
    background-color: #fafafa;
}

/* Language/Location Buttons */
.btn-fa img {
    transition: transform 0.2s ease;
}

.btn-fa img:hover {
    transform: scale(1.1);
}

/* Lists */
ol, ul {
    font-family: 'OswaldFA', 'Poppins-Light', sans-serif;
}

/* Paragraphs */
p, span, div {
    font-family: 'OswaldFA', 'Poppins-Light', sans-serif;
}

/* Responsive */
@media (max-width: 768px) {
    .logoFA {
        height: 80px !important;
        background-size: auto 60px;
    }

    h1 {
        font-size: 24px;
    }

    h3 {
        font-size: 18px;
    }
}

/* Bootstrap overrides */
.was-validated .form-control:invalid,
.form-control.is-invalid {
    border-color: var(--fa-red);
}

.was-validated .form-control:valid,
.form-control.is-valid {
    border-color: #28a745;
}

/* Figure caption */
.figure-caption {
    font-family: 'OswaldFA', 'Poppins-Light', sans-serif;
}
