:root {
    --red: #78283C;
    --red-dark: #78283C;
    --primary: #034991;
    --primary-rgb: 3, 73, 145;
    --primary-dark: #418CE6;
    --primary-dark-rgb: 65, 140, 230;
    --light: #fff;
    --light-rgb: 255,255,255;
    --dark: #000F1E;
    --dark-rgb: 0, 15, 30;

    --text-muted-opacity: 70%;
    --text-dull-opacity: 50%;
    --text-rgb: var(--primary-rgb);
    --text: rgba(var(--text-rgb), 1);
    --text-muted: rgba(var(--text-rgb), var(--text-muted-opacity));
    --text-dull: rgba(var(--text-rgb), var(--text-dull-opacity));

    --input-background: rgba(var(--light-rgb), 58%);
    --box-shadow-rgb: var(--primary-rgb);
    --box-shadow-opacity: .1;
    --input-box-shadow: .125rem .125rem .313rem 0 rgba(var(--box-shadow-rgb), var(--box-shadow-opacity));
    --input-color: #000F1E;

    --border-radius: 0.1875rem;
    --font-family: 'Open Sans', sans-serif;

    --login-logo-color: var(--primary);

    --info-alert-background: #A5C8F3;
    --warning-alert-background: #F9C439;
    --success-alert-background: #07BEB8;
    --danger-alert-background: #D81159;

    --background-color: var(--light);

    --radio-button-rgb: var(--text-rgb);
    --radio-button-color: rgba(var(--radio-button-rgb), 1);
    --radio-button-bg-active: rgba(var(--radio-button-rgb), .06);
    --radio-button-border-color: rgba(var(--radio-button-rgb), .33);
    --radio-button-border-color-hover: rgba(var(--radio-button-rgb), .5);
    --radio-button-border-color-active: rgba(var(--radio-button-rgb), 1);
    --dropdown-bg: var(--light);

    --simple-radio-button-color: rgba(0, 15, 30, .7);
    --simple-radio-button-color-active: var(--radio-button-color);

    --btn-primary: var(--primary);
    --btn-primary-hover: #033e7b;
    --btn-primary-color: var(--light);
    --btn-primary-active: #023a74;
    --btn-primary-box-shadow: none;
    --btn-primary-box-shadow-active: none;
    --btn-primary-box-shadow-hover: .25rem .25rem 1rem rgba(var(--box-shadow-rgb), var(--box-shadow-opacity));
    --btn-secondary: rgba(var(--primary-rgb), .05);
    --btn-secondary-hover: rgba(var(--primary-rgb), .1);
    --btn-secondary-active: rgba(var(--primary-rgb), .1);
    --btn-secondary-color: var(--primary);
    --btn-secondary-box-shadow: none;
    --btn-secondary-box-shadow-active: none;
    --btn-secondary-box-shadow-hover: none;
    --btn-danger: var(--red);
    --btn-danger-color: var(--light);
    --btn-danger-hover: #813145;
    --btn-danger-box-shadow: none;
    --btn-danger-box-shadow-active: none;
    --btn-danger-box-shadow-hover: none;

    --error-danger: #bd0f4f;

    --focus-ring-width: .25rem;
    --focus-ring-opacity: .5;
    --focus-ring-color: rgba(var(--primary-dark-rgb), .5);
    --focus-ring-blur: 0;
    --focus-ring-box-shadow: 0 0 var(--focus-ring-blur) var(--focus-ring-width) var(--focus-ring-color);

    --card-background-color: rgba(var(--light-rgb), .22);
    --card-border-gradient: linear-gradient(to bottom right, rgba(var(--light-rgb), 1) 0%, rgba(var(--light-rgb), 0.1) 35%, rgba(var(--light-rgb), 1) 50%, rgba(var(--light-rgb), 0.1) 66%, rgba(var(--light-rgb), 1) 100%);
    --card-box-shadow: .565rem .565rem 2.375rem 0 rgba(3, 73, 145, 0.04);
    --card-background-blur: 8.125rem;
    --transition: all 0.15s ease-in-out;

    --arrow-right-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='lucide lucide-arrow-right'%3E%3Cpath d='M5 12h14'/%3E%3Cpath d='m12 5 7 7-7 7'/%3E%3C/svg%3E%0A");
    --check-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1.25' stroke-linecap='round' stroke-linejoin='round' class='lucide lucide-check'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E%0A");
    --close-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%0A%3E%3Cpath d='M18 6 6 18' /%3E%3Cpath d='m6 6 12 12' /%3E%3C/svg%3E%0A");
    --danger-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1' stroke-linecap='round' stroke-linejoin='round' class='lucide lucide-octagon-x'%3E%3Cpath d='m15 9-6 6'/%3E%3Cpath d='M2.586 16.726A2 2 0 0 1 2 15.312V8.688a2 2 0 0 1 .586-1.414l4.688-4.688A2 2 0 0 1 8.688 2h6.624a2 2 0 0 1 1.414.586l4.688 4.688A2 2 0 0 1 22 8.688v6.624a2 2 0 0 1-.586 1.414l-4.688 4.688a2 2 0 0 1-1.414.586H8.688a2 2 0 0 1-1.414-.586z'/%3E%3Cpath d='m9 9 6 6'/%3E%3C/svg%3E%0A");
    --warning-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1' stroke-linecap='round' stroke-linejoin='round' class='lucide lucide-triangle-alert'%3E%3Cpath d='m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3'/%3E%3Cpath d='M12 9v4'/%3E%3Cpath d='M12 17h.01'/%3E%3C/svg%3E%0A");
    --info-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1' stroke-linecap='round' stroke-linejoin='round' class='lucide lucide-circle-alert'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cline x1='12' x2='12' y1='8' y2='12'/%3E%3Cline x1='12' x2='12.01' y1='16' y2='16'/%3E%3C/svg%3E%0A");
    --radio-check-icon: url("data:image/svg+xml,%3Csvg width='22' height='22' viewBox='0 0 22 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M11 22C17.0751 22 22 17.0751 22 11C22 4.92487 17.0751 0 11 0C4.92487 0 0 4.92487 0 11C0 17.0751 4.92487 22 11 22ZM17.4419 7.44194C17.686 7.19786 17.686 6.80214 17.4419 6.55806C17.1979 6.31398 16.8021 6.31398 16.5581 6.55806L9 14.1161L5.44194 10.5581C5.19786 10.314 4.80214 10.314 4.55806 10.5581C4.31398 10.8021 4.31398 11.1979 4.55806 11.4419L8.55806 15.4419C8.80214 15.686 9.19786 15.686 9.44194 15.4419L17.4419 7.44194Z' fill='black'/%3E%3C/svg%3E%0A");
    --radio-check-empty-icon: url("data:image/svg+xml,%3Csvg width='22' height='22' viewBox='0 0 22 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M11 21C16.5228 21 21 16.5228 21 11C21 5.47715 16.5228 1 11 1C5.47715 1 1 5.47715 1 11C1 16.5228 5.47715 21 11 21ZM11 22C17.0751 22 22 17.0751 22 11C22 4.92487 17.0751 0 11 0C4.92487 0 0 4.92487 0 11C0 17.0751 4.92487 22 11 22Z' fill='black'/%3E%3C/svg%3E%0A");
    --visibility-on-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' class='lucide lucide-eye'%3E%3Cpath d='M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E%0A");
    --visibility-off-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' class='lucide lucide-eye-closed'%3E%3Cpath d='m15 18-.722-3.25'/%3E%3Cpath d='M2 8a10.645 10.645 0 0 0 20 0'/%3E%3Cpath d='m20 15-1.726-2.05'/%3E%3Cpath d='m4 15 1.726-2.05'/%3E%3Cpath d='m9 18 .722-3.25'/%3E%3C/svg%3E%0A");

    @media (prefers-color-scheme: dark) {
        --background-color: var(--dark);

        --input-background: rgba(var(--dark-rgb), .48);
        --box-shadow-opacity: .2;
        --input-color: #EBF0F6;

        --text-muted: #B4C9DE;
        --text-dull: rgba(var(--light-rgb), var(--text-dull-opacity));

        --text-rgb: 180, 201, 222;

        --login-logo-color: var(--text-muted);

        --dropdown-bg: #0A1622;

        --error-danger: #f04c88;

        --radio-button-bg-active: rgba(var(--radio-button-rgb), .1);

        --simple-radio-button-color: rgba(var(--radio-button-rgb), .5);
        --simple-radio-button-color-active: var(--text-muted);

        --btn-secondary: rgba(var(--primary-dark-rgb), .05);
        --btn-secondary-hover: rgba(var(--primary-dark-rgb), .1);
        --btn-secondary-active: rgba(var(--primary-dark-rgb), .1);
        --btn-secondary-color: var(--text-muted);

        --card-background-color: linear-gradient(to bottom, rgba(86, 147, 222, .1) 0%, rgba(46, 65, 88, .07) 100%);
        --card-border-gradient: linear-gradient(to bottom right, rgba(148, 196, 255, .1) 0%, rgba(41, 66, 96, .05) 52%, rgba(255, 255, 255, 0.1) 100%);
        --card-box-shadow: none;
        --card-background-blur: 12.565rem;

        --info-alert-background: #6FA7EB;

        a {
            color: var(--primary-dark);
        }
    }

    @media (prefers-reduced-motion) {
        --transition: none;
    }
}

* {
    box-sizing: border-box;
}

body {
    color: var(--text-muted);
    font-weight: 300;
}

a {
    text-decoration: none;
    color: var(--primary);
    font-weight: 500;
}

a:hover {
    text-decoration: underline;
}
