@import url('https://fonts.googleapis.com/css2?family=Anton+SC&family=Comfortaa:wght@600&family=Dosis:wght@200..800&display=swap');

:root {

    /* Fonts */
    --headerFont: "Anton SC", sans-serif;
    --textFont: "Comfortaa", sans-serif;
    --subTextFont: "Dosis", sans-serif;
    
    --bg: rgb(3, 13, 2);
    --text: rgb(212, 250, 211);
    --pri: rgb(153, 241, 140);
    --sec: rgb(19, 157, 91);
    --acc: rgb(41, 228, 167);

    /* Colours */
    --bgColour: 3, 13, 2;
    --textColour: 212, 250, 211;
    --primary: 153, 241, 140;
    --secondary: 19, 157, 91;
    --accent: 41, 228, 167;

    /* Alpha Values */
    --header-footer-alpha: 0.333;
    --inputPanel-alpha: 0.15;
    --textArea-alpha: 0.333;
    --button-alpha: 0.6667;
    --tableBG-alpha: 0.2;
    --tableHeader-alpha: 0.5;
}

* {
    padding: 0;
    margin: 0;
    text-align: center;
    box-sizing: border-box;
}

body {
    background-color: rgba(var(--bgColour), 1);
    color: rgb(var(--textColour));
    font-family: var(--textFont);
    overflow-x: hidden;
    height: 100vh;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: space-between;
}

.header, .footer {
    background-color: rgba(var(--secondary), var(--header-footer-alpha));
    color: var(--primary);
    left: 0;
    padding: 1.25vh 10vw;
    width: 100%;
}

.header {
    font-family: var(--headerFont);
    font-size: x-large;
    font-weight: 400;
    font-style: normal;
    top: 0;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}

.footer {
    padding: 2.5vh 1.25vw;
    bottom: 0;
}

.content {
    padding: 2.5vh 5vw;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    flex: 1;
}

.inputsSection {
    background-color: rgba(var(--primary), var(--inputPanel-alpha));
    border: 1px solid rgba(var(--accent), 1);
    box-shadow: 0 1px 5px 5px rgb(var(--accent), 0.333);
    padding: 2%;
    display: flex;
    flex-direction: column;
    flex: 1;
    gap: 2rem;
    justify-content: flex-start;
    align-items: center;
    align-content: center;
    border-radius: 1rem;
}

.outputsSection {
    padding: 0 2vw;
    display: flex;
    flex-wrap: wrap;
    flex: 3;
    justify-content: flex-start;
    align-content: flex-start;
}

.teams {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-content: flex-start;
    gap: 2rem;
}

#randomTeamsBtn {
    background-color: rgba(var(--accent), var(--button-alpha));
    border: 2px solid rgba(var(--accent), 1);
    text-align: center;
    width: 50%;
    padding: 12px 24px;
    border-radius: 4px;
    cursor: pointer;
    font-weight: 600;
    transition: all 0.2s ease;
}

#randomTeamsBtn:hover {
    background-color: rgba(var(--accent), 1);
    border-color: rgba(var(--secondary), 1);
    color: rgba(var(--bgColour), 1);
    box-shadow: 0 0 10px 5px rgb(var(--accent), 0.333);
}

#randomTeamsBtn:focus {
    outline: 2px solid rgb(var(--accent));
    outline-offset: 2px;
}

h1 {
    text-shadow: 3px 3px rgba(var(--accent), 0.5);
}

h5, small {
    font-family: var(--subTextFont);
}

a {
    color: rgb(var(--secondary));
}

a:focus, a:hover {
    color: rgb(var(--accent));
}

textarea, input {
    background-color: rgba(var(--secondary), var(--textArea-alpha));
    border: 1px solid rgb(var(--accent));
    color: rgb(var(--textColour));
    width: min(15vw, 200px);
    min-width: 150px;
    padding: 2.5%;
    text-align: left;
    border-radius: 4px;
}

textarea:focus, input:focus {
    border-color: rgb(var(--accent));
    outline: 1px solid rgb(var(--accent));
    box-shadow: 0 0 10px 5px rgb(var(--accent), 0.333);
}

textarea {
    resize: none;
}

table, th, td {
    font-family: var(--textFont);
    background-color: rgba(var(--tableBG), var(--tableBG-alpha));
    border: 1px solid rgb(var(--textColour));
    padding: 1vh;
    min-width: 15vw;
    border-collapse: collapse;
}

td {
    font-weight: 400;
    font-size: small;
}

th {
    background-color: rgba(var(--accent), var(--tableHeader-alpha));
    font-weight: 700;
    font-size: large;
}