* {
    margin: 0; padding: 0; border: 0; box-sizing: border-box;
}

body {
    background-color: hsl(200 80% 40% / 1);
    color: hsl(200 80% 95% / 1);
    font-family: Verdana, Geneva, Tahoma, sans-serif;
}

h1 {
    text-align: center;
    font-weight: normal;
    border-bottom: 1px dotted orangered;
    padding: 8px;
}

h1 + p {
    text-align: center;
    color: #ffc;
    margin-bottom: 40px;
}

article {
    border: 4px solid orangered;
    padding: 8px;
}

table.training_plan {
    border: 4px solid #ffc;
    margin: 40px auto;
    font-size: 1.4em;
    border-collapse: collapse;
}

.training_plan th, .training_plan td {
    border: 2px solid #222;
    padding: 8px;
    text-align: center;
    vertical-align: middle;
    height: .5in;
}

.special {
    background-color: #ff4; color: #000;
}

.training_plan tr:nth-last-child(even) {
    background-color: #ffd;
    color: #222;
}

.training_plan tr:nth-last-child(odd) {
    background-color: #fdf;
    color: #222;
}

.quote {
    font-size: italic;
    font-family: cursive;
    text-align: center;
    line-height: 1.4;
    max-width: 60ch;
    margin: 10px auto;
}

.quote .author {
    display: block;
    text-align: center;
    font-style: normal;
    font-family: verdana;
    font-weight: bold;
}

.print_only {
    display: none;
}

/* styles for print versions */
@media print {

    .print_only {
        display: block;
    }

    .screen_only {
        display: none;
    }

    body {
        font-family: 'Times New Roman', Times, serif;
        color: #000;
    }

    h1 + p {
        color: #000;
    }

    a {
        text-decoration: none;
        color: #000;
    }

    a::after {
        content:" (" attr(href) ")";
    }

    table.training_plan {
        font-size: 8pt;
        font-family: "courier new";
        border: 0px;
    }

    .training_plan td, .training_plan th {
        height: auto;
        border-left: 0px;
        border-right: 0px;
    }

}