@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&display=swap');

:root {
    /* custom colors */
    --slate-300: rgb(213, 225, 239);
    --slate-500: rgb(104, 119, 141);
    --slate-900: rgb(31, 49, 79);

    /* custom fonts */
    --font-outfit: 'Outfit', sans-serif;

    /* typography styles */
    --text-preset1: 700 22px/120% var(--font-outfit);
    --text-preset2: 400 15px/140% var(--font-outfit);

    /* letter spacing styles */
    --spacing1: 0px;
    --spacing2: 0.2px;
}

/* font styling */
h1 {
    font: var(--text-preset1);
    letter-spacing: var(--spacing1);
    margin: 0;
}

p {
    font: var(--text-preset2);
    letter-spacing: var(--spacing2);
    margin: 0;
}

/* body styling */
html, body {
    margin: 0;
    width: 100%;
    height: 100%;
}

/* main style */
main {
    background-color: var(--slate-300);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100%;
    width: 100%;
}

.container {
    width: 320px;
    height: 499px;
    background-color: white;
    border-radius: 20px;
    box-shadow: 0px 25px 25px 0px rgba(0, 0, 0, 0.0477);
    display: flex;
    flex-direction: column;
    justify-content: start;
    align-items: center;
    padding: 16px 16px 40px 16px;
    box-sizing: border-box;
    gap: 24px;
}

.qr-img-container {
    height: 100%;
    width: 100%;
    display: flex;
    justify-content: center;
}

.qr-img {
    width: 100%;
    height: 100%;
    border-radius: 10px;
}

.qr-text-container {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 0px 16px 0px 16px;
    text-align: center;

}

.attribution { 
    font-size: 11px; 
    text-align: center; 
}
.attribution a { 
    color: blue; 
}