[data-theme="dark"]{
    --bg-base-color: #161b22;
    --bg-panel-color: #0d1117;
    --text-color: #f8fafc;
    --text-color-muted: #8b949e;
    --button-toggle-color: #000000; 
    --button-bg-color:#0d1015;
    --button-bg-hover-color:#ffffff10;
}

[data-theme="light"]{
    --bg-base-color: #f6f8fa;
    --bg-panel-color: #ebebeb;
    --text-color: #000000; 
    --text-color-muted: #57606a; 
    --button-toggle-color: #ffffff; 
    --button-bg-color:#ffffff;
    --button-bg-hover-color:#00000010;
}

body{
    display: grid;
    grid-template-rows: auto auto 1fr auto;
    margin: 0px;
    height: 100vh;
    height: 100dvh;

    font-family: Arial, Helvetica, sans-serif;
    font-size: 1rem;
    color: var(--text-color);
    background-color: var(--bg-base-color);

    transition-property: color;
    transition-property: background-color;
    transition-duration: 250ms;
}

header{
    grid-row: 1/2;
    display: flex;    
    gap: 10px;
    padding: 10px;
    background-color: var(--bg-panel-color);

    transition-property: background-color;
    transition-duration: 250ms;
}

header>img{
    display: inline-block;
    width: auto;
    height: 50px;
}

header>button{
    display: inline-block;
    width: 40px;
    height: 40px;
    margin-left: auto;
    color: var(--text-color);
    font-size: 1.5rem;
    background-color: var(--button-toggle-color);
    border-radius: 50%;
    border: 0px;
}

nav{
    grid-row: 2/3;    
    display: flex;
    justify-content: center;
    gap: 20px;
    padding: 0px 30px;
    background-color: var(--bg-panel-color);

    transition-property: background-color;
    transition-duration: 250ms;
}

nav>a{
    display: inline-block;
    padding: 10px;

    text-decoration: none;
    color: var(--text-color); 

    transition-property: background-color;
    transition-duration: 250ms;
}

nav>a:hover{
    background-color: var(--bg-base-color);
}

.current-page{
    border-bottom: 2px solid var(--text-color);

    transition-property: background-color;
    transition-duration: 250ms;
}

main{
    grid-row: 3/4;
    display: flex;
    justify-content: center;
    align-items: start;
    padding: 20px;
}

hr{
    margin: 20px 10px;
    border: none;
    border-top: 2px solid var(--text-color-muted);
}

.link-button{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: 10px;
}

.link-button>a{
    display: inline-block;
    flex: 1 1;
    max-width: 300px;
    padding: 15px 20px;
    margin: 5px;
    text-decoration: none;
    text-align: center;
    color: var(--text-color); 

    background-color: var(--button-bg-color);
    border: none;
    border: 2px solid var(--text-color-muted);
    border-radius: 20px;

    transition-property: background-color;
    transition-duration: 250ms;
}

.link-button>a:hover{
    background-color: var(--button-bg-hover-color);
}

section{
    flex: 1 1;
    max-width: 1000px;
    height: auto;
    padding: 20px;
    background-color: var(--bg-surface-color);
}

h1{
    text-align: center;
}

footer{
    grid-row: 4/5;
    padding: 10px 30px;
    text-align: center;
    background-color: var(--bg-panel-color);

    transition-property: background-color;
    transition-duration: 250ms;
}