/* Tonies Base Styles - Keycloak Resets and Foundational CSS */

/* Import Wonder font family */
@font-face {
    font-family: 'Wonder';
    src: url('https://cdn.tonies.de/fonts/Wonder-ExtraLight.woff2') format('woff2'),
         url('https://cdn.tonies.de/fonts/Wonder-ExtraLight.woff') format('woff');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Wonder';
    src: url('https://cdn.tonies.de/fonts/Wonder-Light.woff2') format('woff2'),
         url('https://cdn.tonies.de/fonts/Wonder-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Wonder';
    src: url('https://cdn.tonies.de/fonts/Wonder-Regular.woff2') format('woff2'),
         url('https://cdn.tonies.de/fonts/Wonder-Regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Wonder';
    src: url('https://cdn.tonies.de/fonts/Wonder-Medium.woff2') format('woff2'),
         url('https://cdn.tonies.de/fonts/Wonder-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Wonder';
    src: url('https://cdn.tonies.de/fonts/Wonder-SemiBold.woff2') format('woff2'),
         url('https://cdn.tonies.de/fonts/Wonder-SemiBold.woff') format('woff');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Wonder';
    src: url('https://cdn.tonies.de/fonts/Wonder-Bold.woff2') format('woff2'),
         url('https://cdn.tonies.de/fonts/Wonder-Bold.woff') format('woff');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

/* Complete reset of all Keycloak styles */
* {
    box-sizing: border-box !important;
}

html, body {
    margin: 0 !important;
    padding: 0 !important;
    background-color: var(--tonies-background) !important;
    font-family: var(--font-family) !important;
    color: var(--tonies-text-primary) !important;
    line-height: 1.5 !important;
    min-height: 100vh !important;
    height: auto !important;
}

/* Override all Keycloak default containers */
.login-pf,
.login-pf-page,
.card-pf,
.login-pf-page .card-pf,
#kc-content,
#kc-content-wrapper,
#kc-header,
.login-pf-page .login-pf-page-header,
.login-pf-page .card-pf form,
.login-pf-page .card-pf .form-group {
    all: unset !important;
    display: block !important;
}

/* Hide Keycloak branding */
.login-pf-page .login-pf-page-header,
.login-pf-page .card-pf .login-pf-header,
#kc-header {
    display: none !important;
}

/* Override any remaining Keycloak form styles */
form.login-pf-page,
form input,
form button,
form select,
form textarea {
    font-family: var(--font-family) !important;
}

/* Hide any unwanted Keycloak elements */
.login-pf-page .login-pf-page-header h1,
.login-pf-page .card-pf .login-pf-header h1 {
    display: none !important;
}

/* Alert messages - foundational styles */
.alert {
    padding: 1rem !important;
    border-radius: var(--corner-smooth-md) !important;
    margin: 1rem auto !important;
    font-weight: 500 !important;
    max-width: 600px !important;
    font-family: var(--font-family) !important;
    text-align: center !important;
}

.alert-error {
    background-color: #FFFFFF !important;
    border: 1px solid #FED7D7 !important;
    color: var(--tonies-error) !important;
}

.alert-success {
    background-color: #FFFFFF !important;
    border: 1px solid #C6F6D5 !important;
    color: #28A745 !important;
}

.alert-info {
    background-color: #FFFFFF !important;
    border: 1px solid #BEE3F8 !important;
    color: #2B6CB0 !important;
}

.alert-local {
    background-color: #FFFFFF !important;
    border: 1px solid #E0F7FA !important;
    color: #00BCD4 !important;
}

.alert-dev {
    background-color: #FFFFFF !important;
    border: 1px solid #EDE7F6 !important;
    color: #673AB7 !important;
}

.alert-stage {
    background-color: #FFFFFF !important;
    border: 1px solid #FFF3E0 !important;
    color: #FF9800 !important;
}
