@import url('https://fonts.googleapis.com/css2?family=Roboto+Mono:ital,wght@0,100..700;1,100..700&display=swap');

:root{
    --purple: #7610BD;
}

* {
    cursor: url(images/arrow.png), pointer;
    box-sizing: border-box;
}

body {
    background-image: url(images/bg.gif);
    color: white;
    text-shadow: 2px 2px 4px #000000;
    margin: 0;
    font-family: 'Roboto Mono', monospace;
}

main {
    padding: 30px 15px;
}

footer {
    padding: 30px 15px;
    font-size: small;
    text-align: center;
    color: gray;
}

h1 {
    font-family: Georgia, 'Times New Roman', Times, serif !important;
    margin: 0;
    text-align: center;
}

h3{
   font-family: Georgia, 'Times New Roman', Times, serif !important;
    margin: 0; 
}

a {
    color: white;
    text-decoration: none;
}

a:hover {
    color: var(--purple);
}

table, th, td{
    border: 2px solid var(--purple);
    border-collapse: collapse;
    margin: auto;
    padding: 5px;
}

table a{
    text-decoration: underline;
}

.table {
  display: table;
  border-collapse: collapse;
  border: 2px solid var(--purple);
  margin: 0 auto; /* centers the table horizontally */
}

.table > header,
.table .row {
  display: table-row;
    
}

.headerCol,
.col,
.linkCol {
  display: table-cell;
  border: 2px solid var(--purple);
  border-width: 0 2px 2px 0; /* only draw bottom + right borders */
  padding: 8px;
}

/* Add top borders only for header */
header .headerCol {
  border-top: 2px solid var(--purple);
  font-weight: bold;
}

/* Last column gets right border */
.headerCol:last-child,
.col:last-child,
.linkCol:last-child {
  border-right: none;
}

/* Last row gets bottom border */
.row:last-child .col,
.row:last-child .linkCol {
  border-bottom: none;
}

/* Link styling */
.linkCol a {
  text-decoration: underline;
  color: var(--purple);
}


.wrapper-main {
    margin: 0 auto;
    max-width: 1200px;
    padding: 0 15px;
}

.titleDesc {
    margin-top: 0;
    text-align: center;
}

.header {
    border: 5px solid var(--purple);
    padding: 10px;
    background-color: #28282B;
    margin-top: 20px;
}

.nav {
    display: flex;
    justify-content: center;
}

.navbar {
    display: flex;
    list-style: none;
    margin: 10px 0 0 0;
    padding: 0;
    gap: 1rem;
    flex-wrap: wrap;
    justify-content: center;
}

.navbar li {
    flex: 1 1 auto;
    text-align: center;
}

.wip {
    background-color: darkred;
    padding: 10px;
    border: 5px solid red;
    width: 100%;
    box-sizing: border-box; /* includes border and padding in width */
    margin-bottom: 20px;
}

@media (max-width: 768px) {
    .wrapper-main {
        margin: 0 10px;
    }
    .header {
        padding: 8px;
    }
    .navbar {
        gap: 0.5rem;
    }
}

@media (max-width: 480px) {
    h1 {
        font-size: 1.5rem;
    }
    h3 {
        font-size: 1.2rem;
    }
    .navbar li {
        flex-basis: 100%;
    }
}
