:root {
    --font-size-L: 16px;
    --font-size-XXXL: 32px;
    --font-family: 'Ciutadella', sans-serif;
    --font-weight-regular: 500;
    --font-weight-semi-bold: 600;
    --font-weight-light: 400;
    --line-height-L: calc(var(--font-size-L) + 6px);
    --line-height-XXXL: calc(var(--font-size-XXXL) + 6px);
    --border-radius-S: 6px;
    --primary-dark: #5D21D2;
    --primary-darker: #260D70;
    --white: #FFFFFF;
    --black: #000000;
    --black-is-back: #111019;
    --nav-text-color: #7C8087;
    --padding-S: 10px;
}

body {
    background-image: url('/api/public/image/background.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    height: 98vh;
}

.popup {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
    z-index: 1;
    width: 460px;
    height: auto;
    overflow: auto;
    flex-direction: column;
    padding: 80px 60px;
    gap: 40px;
    border-radius: 24px;
    background: var(--white);
}

.logo {
    width: 140px;
    height: 63px;
}

.popup-desc {
    color: var(--black-is-back);
    text-align: center;
    font-family: var(--font-family);
    font-size: var(--font-size-L);
    font-style: normal;
    font-weight: var(--font-weight-regular);
    line-height: var(--line-height-L);
    margin: 0;
}

.popup-title {
    text-align: center;
    font-family: var(--font-family);
    font-size: var(--font-size-XXXL);
    font-style: normal;
    font-weight: var(--font-weight-semi-bold);
    line-height: var(--line-height-XXXL);
    color: var(--primary-darker);
    margin: 0;
}

.text-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    align-self: stretch;
}

.popup-button {
    display: flex;
    height: 56px;
    padding: 10px 14px 10px 12px;
    justify-content: center;
    align-items: center;
    gap: 14px;
    align-self: stretch;
    border-radius: var(--border-radius-S);
    background: var(--primary-dark);
    border: none;
    transition: transform 0.2s ease-out;
}

.popup-button.clicked {
    transform: scale(0.95);
}

.button-title {
    color: var(--white);
    text-align: right;
    font-family: var(--font-family);
    font-size: var(--font-size-L);
    font-style: normal;
    font-weight: var(--font-weight-regular);
    line-height: var(--line-height-L);
}

.button-logo {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
}

.button-circle {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background-color: var(--white);
    display: flex;
    justify-content: center;
    align-items: center;
    margin-right: var(--line-height-L);
}

footer {
    position: fixed;
    bottom: 0;
    transform: translate(-50%, -50%);
    left: 50%;
    width: 100%;
    padding: var(--padding-S);
    text-align: center;
    color: var(--primary-darker);
    font-family: var(--font-family);
    font-size: var(--font-size-L);
    font-style: normal;
    font-weight: var(--font-weight-light);
    line-height: var(--line-height-L);
}

#error-message-content {
    background-color: #ffcccc;
    color: #cc0000;
    text-align: center;
    padding: 1rem;
    border-radius: 5px;
    position: relative;
    display: none;
    align-self: stretch;
}

#close-error-button {
    position: absolute;
    top: 0.5rem;
    right: 0.5rem;
    background: none;
    border: none;
    color: #595252;
    cursor: pointer;
    line-height: 1;
}

@media (max-width: 426px) {
    .popup {
        width: 80%;
        padding: 40px 24px;
    }
}
