@import url('https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,200..1000;1,200..1000&display=swap');

:root {
    /*
        Catppuccin Mocha palette
        https://github.com/catppuccin/palette/blob/main/docs/css.md
    */

    --ctp-mocha-rosewater: #f5e0dc;
    --ctp-mocha-flamingo: #f2cdcd;
    --ctp-mocha-pink: #f5c2e7;
    --ctp-mocha-mauve: #cba6f7;
    --ctp-mocha-red: #f38ba8;
    --ctp-mocha-maroon: #eba0ac;
    --ctp-mocha-peach: #fab387;
    --ctp-mocha-yellow: #f9e2af;
    --ctp-mocha-green: #a6e3a1;
    --ctp-mocha-teal: #94e2d5;
    --ctp-mocha-sky: #89dceb;
    --ctp-mocha-sapphire: #74c7ec;
    --ctp-mocha-blue: #89b4fa;
    --ctp-mocha-lavender: #b4befe;
    --ctp-mocha-text: #cdd6f4;
    --ctp-mocha-subtext1: #bac2de;
    --ctp-mocha-subtext0: #a6adc8;
    --ctp-mocha-overlay2: #9399b2;
    --ctp-mocha-overlay1: #7f849c;
    --ctp-mocha-overlay0: #6c7086;
    --ctp-mocha-surface2: #585b70;
    --ctp-mocha-surface1: #45475a;
    --ctp-mocha-surface0: #313244;
    --ctp-mocha-base: #1e1e2e;
    --ctp-mocha-mantle: #181825;
    --ctp-mocha-crust: #11111b;
}

html, body {
    font-family: 'Nunito', sans-serif;
    color: var(--ctp-mocha-text);
    text-align: center;
}

body {
    background-color: var(--ctp-mocha-base);
}

#generatorBox {
    background-color: var(--ctp-mocha-mantle);

    width: fit-content;
    margin: 0 auto;

    padding: 1rem;
    border: 3px solid var(--ctp-mocha-sapphire);
    border-radius: 1rem;
}

#contentForm {
    width: 100%;
    display: flex;
    flex-direction: column;

    gap: 0.2rem;
    margin-bottom: 1rem;

    #contentInput,
    #sizeInput {
        padding: 0.5rem;
        border: 1px solid var(--ctp-mocha-sapphire);
        border-radius: 0.5rem;
        background-color: var(--ctp-mocha-surface0);
        color: var(--ctp-mocha-text);
        text-align: center;
    }
}

#qrCodeBox {
    background-color: white;
    padding: 1rem;
    border-radius: 0.5rem;

    width: fit-content;
    height: fit-content;
    margin: 0 auto 1rem;
}

#qrCode {
    width: 16rem;
    height: 16rem;
}

#qrCode canvas,
#qrCode img {
    width: 100%;
    height: 100%;
    display: block;
}

#downloadButton {
    padding: 0.5rem 1rem;
    border: none;
    border-radius: 0.5rem;
    background-color: var(--ctp-mocha-sapphire);
    color: black;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

#downloadButton:hover {
    background-color: var(--ctp-mocha-green);
}

/* For mobile devices */
@media (max-width: 768px) {
    body {
        margin: 0;
        padding: 1rem;
        font-size: 4vmin;
    }

    #generatorBox {
        width: 100%;
        box-sizing: border-box;
        padding: 0.75rem;
        border-width: 2px;
    }

    #qrCodeBox {
        padding: 0.75rem;
    }
}
