html {
    height: 100%;
}

body {
    margin: 0;
    background: #ddd;
    font-family: "Epunda+Sans", sans-serif;
    color: #222;
}

header {
    display: flex;
    align-items: center;
    background: #eee;
    margin-bottom: 2rem;
    font-size: 2rem;
    font-weight: bold;
    padding: 1rem;
    box-shadow: 0 0 10px #0006;
}

main {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 100%;
    height: 100%;
}

.icon {
    height: 2em;
}

.button {
    padding: 1rem;
    border: none;
    color: #333;
    font-family: "Epunda+Sans", sans-serif;
    font-weight: bold;
    cursor: pointer;
    background: none;
    border-radius: 10px;
    box-shadow: 7px 7px 10px #0008, -7px -7px 10px #fff8;
    transition: all 100ms, color .5s, text-shadow .5s;

    &.open {
        color: hsl(204, 100%, 60%);
        text-shadow: 0 0 3px hsla(204, 100%, 70%, 55%);
    }

    &:active {
        box-shadow: 1px 1px 2px #000a, -1px -1px 2px #fffa;
    }
}

.content {
    max-width: 500px;
    margin: 1rem;
    padding: 1rem;
    border-radius: 10px;
    box-shadow: 10px 10px 15px #0006 inset, -10px -10px 15px #fff8 inset;
    transition: all 1s;

    p {
        transition: opacity 1s 0ms;
        &:last-of-type {
            margin-bottom: 0
        }
        &:first-of-type {
            margin-top: 0
        }
    }

    &:not([open]) {
        box-shadow: 0 0 0 #0008 inset, 0 0 0 #fff8 inset;

        p {
            opacity: 0;
        }
    }
}

