:root {
    --color-primary: #990000;
    --color-primary-highlight: #fff;
}

body{
    font-family: Verdana, Geneva, Tahoma, sans-serif;
    font-size: 14px;
    background-image:url("img/fundo-zots.jpg");
}

.btn {
    padding: .5rem .7rem;
    border-radius: .2rem;
    border: 2px solid var(--color-primary);
    color: var(--color-primary-highlight);
    background-color: var(--color-primary);
}

.btn:hover {    
    border: 2px solid var(--color-primary);
    background-color: #d10707;
}

section#main {
    border: 0px solid red;
    display: block;
    width: 56rem;   
    margin: 0 auto;
}
    section#main header {
        display: block;
        border: 1px solid transparent;
        
        line-height: 2.5rem;
    }

    section#main header img {         
        float: left;
    }

    section#main header h1 {
        font-weight: normal;
        padding-left: 8.6rem;        
        color: var(--color-primary-highlight);
        background-color: var(--color-primary);
    }

section#controls {
    text-align: center;
    border: 2px solid rgba(255, 255, 225 , .5);
    padding: .6rem;
    border-radius: .4rem;
}

    section#controls fieldset {
        border-radius: .4rem;
        border: 0px solid rgba(255, 255, 225 , .5);
        background-color: rgba(255, 255, 225 , .9);
    }

    section#controls fieldset div {
        display: inline-block;
        padding: .7rem;                
    }


    section#controls section#help {
        color: var(--color-primary);
        font-size: .85rem;
        padding: 1.2rem;
        padding-bottom: 0;
        text-align: left;        
    }

    section#controls section#help ul {
        
        list-style: none;
        padding: 0;
        display: grid;
        padding: 0;
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: 1fr;
        grid-gap: 1.5rem;        
    }

    section#controls section#help ul li {        
        background-color: rgba(255, 255, 225 , .3);        
        border-radius: .4rem;
        text-align: center;
        padding: .8rem
    }

    section#controls section#help ul li a {
        color: var(--color-primary);
        text-decoration: none;        
        font-size: .8rem
    }
    
    section#controls section#help ul li:hover {        
        background-color: var(--color-primary);
    }

    section#controls section#help ul li:hover a {        
        color: var(--color-primary-highlight);
    }

    section#controls section#help ul li header {
        display: block;
        font-weight: bolder;
        font-size: .9rem;
        line-height: 1rem;
    }

section#clock {
    text-align: center;
    border: 2px solid rgba(255, 255, 225 , .5);
    padding: .6rem;
    border-radius: .4rem;
    background-color: rgba(255, 255, 225 , .3);
    margin-bottom: 1rem;
    padding-bottom: 2rem;
    width: 40rem;
    margin: 0 auto;
    margin-top: 1rem;
}    
section#clock h1 {
    color: var(--color-primary);
}

section#clock section#summary {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 1rem;
    padding: 0 3.5rem;
}

    section#clock section#summary div {
        background-color: rgba(255, 255, 225 , .8);
        border-radius: 0.4rem;
        text-align: center;
        padding: 0.6rem;
        margin-bottom: .8rem;
    }
    section#clock section#summary div  span{
        font-weight: bold;
        color: var(--color-primary);
    }
#timeTable {
    margin: 0 auto;
    border: 1px solid var(--color-primary);    
    width: 35rem;
    transition: opacity 300ms;
}

td {    
    padding: .25rem 0;
}

table, th, td {
    /* border: 1px solid black; */
    border-collapse: collapse;
}
tr:nth-child(even) {
    background-color: rgba(255, 255, 225 , .9);
}

#timeTable thead {
    color: var(--color-primary-highlight);
    background-color: var(--color-primary);
}


.hidden {
    opacity: 0;
}

.shown {
    opacity: 1;
}

/* responsiveness */

@media (max-width:600px)  { 

    body, * {
        font-size: 1rem;
    }
    
    section#main {        
        width: 100%;
        border: 01px solid transparent;
    }

        section#main header {
            display: block; 
            text-align: center;
            line-height: 2.5rem;
        }

        section#main header img {         
            float: none;
            margin: 0;
            padding: 0;
        }

        section#main header h1 {
            margin: 0;
            padding: 0;
            font-size: 1.5rem;
            font-weight: bold;            
        }

    section#controls {
        text-align: left;        
        padding: 0;
        margin-top: 1rem;
        border-radius: .4rem;        
    }

        section#controls fieldset {
            margin: .5rem;        
        }

        section#controls fieldset div {
            display: block;
            padding: .7rem;                    
        }
        
        section#controls fieldset div label {
            display: inline-block;            
            color: var(--color-primary);
            font-size: 1.2rem;
            width: 9rem;
        }

        section#controls fieldset div input {  
            font-size: 1.1rem;
            width: 11rem;
        }

        section#controls fieldset input[type="submit"] {
            margin: .6rem;
            margin-left: 10rem;
            padding: .6rem 1.5rem;
        }

        section#controls section#help {            
            font-size: 1rem;
        }

        section#controls section#help ul  {
            padding: 0 .5rem;
            grid-gap: 1rem;
            grid-template-columns: repeat(1, 1fr);                        
        }

    section#clock section#summary {
        display: grid;
        grid-template-columns: repeat(1, 1fr);
        grid-column-gap: 1rem;
        padding: 0 1.5rem;
    }

    section#clock {
        text-align: center;       
        
        margin-bottom: 1rem;
        padding-bottom: 2rem;                
        width: 90%;
    }    

    section#clock h1 {
        color: var(--color-primary);
        font-weight: bold;
        font-size: 1.5rem;
        margin: 0 0 .4rem 0;
    }

    #timeTable {
        margin: 0 auto;
        border: 1px solid var(--color-primary);    
        width: 90%;
        transition: opacity 300ms;
    }

    #timeTable td {    
        padding: .5rem
    }
    
    
}


@media (max-width:400px)  { 
    section#controls {
        text-align: center;
    }

    section#controls fieldset  {
        padding-bottom: 1rem;
    }

    section#controls fieldset input[type="submit"] {
        margin: 0;
        margin-top: .5rem;
        padding: .6rem 1.5rem;
    }
}