/* Basic reset */
*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    font-size: 16px;
    -webkit-text-size-adjust: 100%;
}

body {
    margin: 0;
    min-height: 100vh;
    line-height: 1.5;
    font-family: Arial, Helvetica, sans-serif;
}

/* Main layout wrapper */
main,
.auth-container,
.login-container,
.register-container {
    width: min(100% - 2rem, 420px);
    margin-inline: auto;
}

/* Keep content readable on larger screens */
body {
    justify-content: center;
    align-items: center;
    padding: 1rem;
}

/* Forms should not overflow */
form {
    width: 100%;
}

label {
    display: block;
    margin-top: 0.75rem;
}

input,
button,
select,
textarea {
    font: inherit;
    max-width: 100%;
}

input,
select,
textarea {
    width: 100%;
}

button,
input[type="submit"],
input[type="button"],
input[type="reset"] {
    min-height: 44px;
    cursor: pointer;
}

/* Links should be easy to tap */
a {
    display: inline-block;
}

/* Media should scale if added later */
img,
picture,
video,
canvas,
svg {
    display: block;
    max-width: 100%;
    height: auto;
}

/* Phone layout */
@media (max-width: 600px) {
    body {
        align-items: flex-start;
        padding: 1rem;
    }

    main,
    .auth-container,
    .login-container,
    .register-container {
        width: 100%;
    }

    button,
    input[type="submit"],
    input[type="button"],
    input[type="reset"] {
        width: 100%;
    }

    form {
        padding: 1rem;
        border-radius: 10px;
    }
}

/* Tablet layout */
@media (min-width: 601px) and (max-width: 900px) {
    main,
    .auth-container,
    .login-container,
    .register-container {
        width: min(100% - 3rem, 480px);
    }

    form {
        padding: 1rem;
        border-radius: 10px;
    }
}

/* Desktop layout */
@media (min-width: 901px) {
    main,
    .auth-container,
    .login-container,
    .register-container {
        width: min(100% - 4rem, 420px);
    }
}

/*styling*/

body {
    background-color: #0b1f3a;
}

h1,
p {
    color: #e4ebed;
}

form {
    background-color: #e4ebed;
    border: 2px solid #b9ddef;
    border-left: 6px solid #b9ddef;
    border-radius: 12px;
    padding: 1.5rem;
    width: 100%;
}

form p {
    margin-top: 1rem;
}

button,
input[type="submit"],
input[type="button"],
input[type="reset"] {
    background-color: #6fd0df;
    border: 2px solid #4be6fa;
    padding: 0.6rem 1rem;
    border-radius: 8px;
    font-weight: 600;
    cursor: pointer;
}

button:hover,
button:focus,
input[type="submit"]:hover,
input[type="submit"]:focus,
input[type="button"]:hover,
input[type="button"]:focus,
input[type="reset"]:hover,
input[type="reset"]:focus {
    background-color: #17283e;
    border-color: #0b1f3a;
    color: #ffffff;
}

button:active,
input[type="submit"]:active,
input[type="button"]:active,
input[type="reset"]:active {
    background-color: #07162a;
}

a {
    color: #6fd0df;
    text-decoration: none;
    font-weight: 600;
}

a:visited {
    color: #4be6fa;
}

a:hover,
a:focus {
    color: #a8f3ff;
    text-decoration: none;
}

a:active {
    color: #4be6fa;
}