/*
 * A general purpose layout table
 */
table.layout {
    width: 100%;
    text-align: center;
    border-collapse: collapse;
    margin-top: 10px;
    margin-bottom: 10px;
}

table.layout th, table.layout td {
    padding: 5px;
}

table.layout thead th {
    border-right: 1px solid #2b92b9;
    border-bottom: 1px solid #2b92b9;
}

table.layout thead th:last-child {
    border-right: 0;
}

table.layout tbody td {
    border-right: 1px dotted #2b92b9;
    border-top: 1px dotted #2b92b9;
}

table.layout tbody tr:first-child td {
    border-top: 0;
}

table.layout tbody th {
    border-top: 1px solid #2b92b9;
    border-bottom: 1px solid #2b92b9;
    border-right: 1px solid #2b92b9;
    border-left: 1px solid #2b92b9;
}

table.layout tbody th:first-child {
    border-left: 0;
}

table.layout tbody tr:first-child th {
    border-top: 0;
}

table.layout tbody tr:last-child th {
    border-bottom: 0;
}

table.layout tbody td:last-child {
    border-right: 0;
}


/*
 * A question/answer dropdown
 */
table.qa {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 15px;
}

table.qa td.icon {
    width: 5%;
    text-align: center;
    font-size: 14pt;
}

table.qa td.text {
    width: 95%;
    border-left: 1px solid #2b92b9;
    padding: 5px 10px;
}

table.qa tr.question {
    cursor: pointer;
}

table.qa tr.question td.icon {
    border-top: 1px solid #2b92b9;
    color: #2b92b9;
    vertical-align: middle;
}

table.qa tr.question td.text {
    border-top: 1px solid #2b92b9;
    font-weight: bold;
    font-size: 12pt;
}

table.qa tr.question:hover td.text {
    background-color: #f2f2f2;
}

table.qa > tbody.qa-block:first-child > tr.question > td.text,
table.qa > tbody.qa-block:first-child > tr.question > td.icon {
    border-top: 0;
}

table.qa tr.answer {
    display: none;
}

table.qa tr.answer > td.icon {
    color: #90ba2f;
    vertical-align: top;
    padding-top: 5px;
}

/*
 * A variable of the question/answer dropdown
 * Meant more for sequential steps
 */
table.qa.steps,
table.qa.steps table.qa {
    border-collapse: collapse;
    vertical-align: middle;
}
table.steps tbody.qa-block {
    border-top: 2px solid white;
    border-bottom: 2px solid white;
    padding: 10px;
}

table.steps tbody.qa-block > tr.question {
    background-color: #2b92b9;
}

table.steps tbody.qa-block > tr.question > td.text {
    font-family: "Roboto Condensed", sans-serif;
    text-transform: uppercase;
    color: white;
    font-weight: 300;
}

table.steps tbody.qa-block > tr.question > td.icon {
    border-left: 2px solid white;
    color: white;
}

table.qa.steps tr.question:hover {
    background-color: #006a96;
}

table.qa.steps tr.question:hover td.text {
    background-color: inherit;
}