@charset "utf-8";

* {
    box-sizing: border-box;
    font-family: Verdana, Geneva, Tahoma, sans-serif;
}

/* images will scale down if they need to, but not scale larger than original, height auto preserves their aspect ratio on resize,  */
/* centers image within it's element by adding balanced margins*/
img {
    max-width: 100%;
    height: auto;
    display: block;
    box-sizing: border-box;
    margin-bottom: 10px;
}

iframe {
    width: 100%;
    aspect-ratio: 16 / 9;
}

html, body {
    margin: 0;
    height: 100%;
    /*Sticky footer setting*/
    display: flex;
    flex-direction: column;
}

/* Header, Page Title, Navigation & Menu ---------------------------------------------------- */
#header {
    background-color: #2c3e50;
    display: flex;
    flex: auto 444px;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center;
}

@media all and (min-width: 0px) and (max-width: 940px) {
    #header {
        flex-direction: column-reverse;
    }
}

.title {
    color: white;
    font-weight: bold;
    margin-left: 10px;
}

.nav_buttons_container {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
}

.nav_button {
    width: 128px;
    margin: 10px;
}
.nav_button :link {
    color: #4c4c4c;
}
.nav_button :active {
    color: black;
}
.nav_button :visited {
    color: #4c4c4c;
}
.nav_button :hover {
    background-color: #eff3f1;
}

.next {
    width: 128px;
    height: 40px;
    background-color: #CAE9E5;
    display: inherit;
    text-align: center;
    text-decoration: none;
    color: #4c4c4c;
    line-height: 34px;
    border: 3px ridge #9aaaac;
    border-radius: 5px;
    font-weight: bold;
    letter-spacing: .2rem;
}
.next::after {
    content: "NEXT";
}

.prev {
    width: 128px;
    height: 40px;
    background-color: #CAE9E5;
    display: inherit;
    text-align: center;
    text-decoration: none;
    color: 4c4c4c;
    line-height: 34px;
    border: 3px ridge #9aaaac;
    float: right;
    border-radius: 5px;
    font-weight: bold;
    letter-spacing: .2rem;
}
.prev::after {
    content: "PREV";
}

@media all and (min-width: 0px) and (max-width: 450px) {
    .next {
        width: 90px;
    }
    .prev {
        width: 90px;
    }
}

.menu_head {
    width: 128px;
    height: 40px;
    background-color: #CAE9E5;
    display: inherit;
    text-align: center;
    text-decoration: none;
    color: 4c4c4c;
    line-height: 34px;
    border: 3px ridge #9aaaac;
    border-radius: 5px;
    font-weight: bold;
    letter-spacing: .2rem;
}
.menu_head::after {
    content: "MENU";
}
.menu-head h3 {background-color: #dae1e6; padding: 7px 15px; margin: 0; border: solid 1px #c4c4c4; border-bottom: none; cursor: pointer;  box-sizing: inherit; font-size: 14px; color: rgb(0, 0, 0); text-shadow: none;}
.menu-head h3:hover {background-color: #ccd2d7; box-sizing: inherit;}
.menu-head h3.active {background-position: right 5px; box-sizing: inherit;}
.menu-head ul {background: #EAF1F8; margin: 0; padding: 0px 15px 0px; border-left: solid 1px #c4c4c4; border-right: solid 1px #c4c4c4; box-sizing: inherit;}

.menu_body {display:none; width: 276px; text-align:left; padding:8px ; box-sizing: inherit; margin:0; padding:0; list-style:none; position: absolute; z-index:100; box-sizing: inherit;}

.menu_body li {background:#EAF1F8; list-style:none; box-sizing: inherit;}
.menu_body li a {color:#1B2F48; display: inherit; font-size:8pt; font-weight:normal;  padding:4px 2px 5px 5px; text-decoration:none;  box-sizing: inherit;}
.menu_body li a:hover {color:#1B2F48; display: inherit; font-size:8pt; font-weight:normal;  padding:4px 2px 5px 5px; text-decoration:underline ;  box-sizing: inherit;}

/* Page Content ----------------------------------------------------*/
.page_content {
    box-shadow: 0px 0px 30px 1px #b3b3b3 inset;
    padding: 20px;
    /*Sticky footer setting*/
    flex: 1 0 auto;
}
.page_content h3 {
    margin-top: 0;
}

.iframe-container {
    position: relative;
    overflow: hidden;
    width: 100%;
    aspect-ratio: 16 / 9;
    /*padding-top: 56.25%; /* 16:9 Aspect Ratio (divide 9 by 16 = 0.5625) */
  }
  
    /* Then style the iframe to fit in the container div with full height and width */
    .responsive-iframe {
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
        width: 100%;
        height: 100%;
    }

    .blue-box {
        text-shadow:1.75px 1.75px 10px rgba(255, 255, 255, 0.5);
        border-radius: 25px;
        padding: 20px;
        background-color: #82b1ebcc;
        margin-bottom: 20px;
        box-shadow: 0 4px 8px 0 rgb(0 0 0 / 20%);
    }

    .blue-box-2 {
        text-shadow:1.75px 1.75px 10px rgba(255, 255, 255, 0.5);
        border-radius: 25px;
        padding: 20px;
        background-color: #94c0d1cc;
        margin-bottom: 20px;
        box-shadow: 0 4px 8px 0 rgb(0 0 0 / 20%);
    }

    .green-box {
        text-shadow:1.75px 1.75px 10px rgba(255, 255, 255, 0.5);
        border-radius: 25px;
        padding: 20px;
        background-color: #99ca80cc;
        margin-bottom: 20px;
        box-shadow: 0 4px 8px 0 rgb(0 0 0 / 20%);
    }

    .green-box-2 {
        text-shadow:1.75px 1.75px 10px rgba(255, 255, 255, 0.5);
        border-radius: 25px;
        padding: 20px;
        background-color: #c0ecaacc;
        margin-bottom: 20px;
        box-shadow: 0 4px 8px 0 rgb(0 0 0 / 20%);
    }

    .red-box {
        text-shadow:1.75px 1.75px 10px rgba(255, 255, 255, 0.5);
        border-radius: 25px;
        padding: 20px;
        background-color: #d31717;
        margin-bottom: 20px;
        box-shadow: 0 4px 8px 0 rgb(0 0 0 / 20%);
        color: white;
    }

    .red-box-2 {
        text-shadow:1.75px 1.75px 10px rgba(255, 255, 255, 0.5);
        border-radius: 25px;
        padding: 20px;
        background-color: #f35050cc;
        margin-bottom: 20px;
        box-shadow: 0 4px 8px 0 rgb(0 0 0 / 20%);
        color: white;
    }

    .purple-box {
        text-shadow:1.75px 1.75px 10px rgba(255, 255, 255, 0.5);
        border-radius: 25px;
        padding: 20px;
        background-color: #c7a1e6cd;
        margin-bottom: 20px;
        box-shadow: 0 4px 8px 0 rgb(0 0 0 / 20%);
    }

    .purple-box-2 {
        text-shadow:1.75px 1.75px 10px rgba(255, 255, 255, 0.5);
        border-radius: 25px;
        padding: 20px;
        background-color: #e7caffad;
        margin-bottom: 20px;
        box-shadow: 0 4px 8px 0 rgb(0 0 0 / 20%);
    }

    .orange-box {
        text-shadow:1.75px 1.75px 10px rgba(255, 255, 255, 0.5);
        border-radius: 25px;
        padding: 20px;
        background-color: orange;
        margin-bottom: 20px;
        box-shadow: 0 4px 8px 0 rgb(0 0 0 / 20%);
    }

    .orange-box-2 {
        text-shadow:1.75px 1.75px 10px rgba(255, 255, 255, 0.5);
        border-radius: 25px;
        padding: 20px;
        background-color: rgb(255, 198, 92);
        margin-bottom: 20px;
        box-shadow: 0 4px 8px 0 rgb(0 0 0 / 20%);
    }

    .grey-box {
        text-shadow:1.75px 1.75px 10px rgba(255, 255, 255, 0.5);
        border-radius: 25px;
        padding: 20px;
        background-color: rgb(215, 215, 215);
        margin-bottom: 20px;
        box-shadow: 0 4px 8px 0 rgb(0 0 0 / 20%);
    }

    .grey-box-2 {
        text-shadow:1.75px 1.75px 10px rgba(255, 255, 255, 0.5);
        border-radius: 25px;
        padding: 20px;
        background-color: rgb(241, 241, 241);
        margin-bottom: 20px;
        box-shadow: 0 4px 8px 0 rgb(0 0 0 / 20%);
    }

    .white-box {
        text-shadow:1.75px 1.75px 10px rgba(255, 255, 255, 0.5);
        border-radius: 25px;
        padding: 20px;
        background-color: #fff;
        margin-bottom: 20px;
        box-shadow: 0 4px 8px 0 rgb(0 0 0 / 20%);
    }

    .card {
        box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
        padding: 10px;
        margin: 10px;
        background-color: white;
	    width: fit-content;
    }

    .caption {
        text-align: center;
    }

  .tutor-led-download {
    margin-top: 1%;
    text-align: center;
    width: 150px;
    margin: auto;
  }

/* Footer ----------------------------------------------------------*/
.footer {
    background-color: #2c3e50;
    display: flex;
    flex: auto 150px;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    color: white;
    padding: 10px;
    /*Sticky footer setting*/
    flex-shrink: 0;
}

#footer-links {
    float: left;
    height: 50px;
    text-align: left;
}

.footer-text {
    color: #adadad;
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 11px;
    font-weight: normal;
    letter-spacing: -.8px;
    line-height: 1.4em;
}

.footer-text a {
    color: #adadad;
}

/* ELF questions */

.left {
    float: left;
    width: 48%;
    box-sizing: inherit;
}
.right {
    float: right;
    width: 48%;
    box-sizing: inherit;
}

@media all and (min-width: 0px) and (max-width: 900px) {
    /* removes floats from small screen views */
    .left {
        float: none;
        width: 100%;
    }
    .right {
        float: none;
        width: 100%;
    }
}

table, thead, tbody, tr, td, th {
    font-size: inherit;
    font-family: inherit;
    color:inherit;
    box-sizing: inherit;
}

table.info {
    border-collapse:collapse;
    box-sizing: inherit;
}

table.info,table.info th,table.info td {
    border: 1px solid #888;
    padding:4px;
    text-align:center;
    box-sizing: inherit;
}

li { margin-top:8px;  box-sizing: inherit;}

.mustanswer{ position:relative; left:10px; top:6px;  box-sizing: inherit;}
#mustanswer{ position:relative; left:10px; top:8px;  box-sizing: inherit;}

/* main title on all question types */
.question {font-size:20px}

/* rounds flashing element, including general-feedback box, so both share property */
.general-feedback, .flash {
    border-radius: 20px;
}

.general-feedback {
    border: grey;
    background-color: #e9f3fd;
    padding: 15px;
    border-style: solid;
    margin-top: 25px;
    box-sizing: inherit;
}

.fb {
    display: none;
    clear: both;
}


/* match type */
.match .item {
        padding: 5px;
        border: solid;
        border-color: black;
        border-radius: 10px;
        display: flex;
        background-color: #c6d9e9cc;
    }

@media all and (min-width: 0px) and (max-width: 940px) {
.match .item {
        display: block;
    }
}

.itemtext {
    font-family: Verdana, Geneva, Arial;
    font-size: 16px;
    font-style: normal;
    width: 100%;
    padding: 5px;
}

.match select {
    padding: 5px;
    box-sizing: border-box;
}

.match li {
    font-family: Verdana, Geneva, Arial;
    font-size: 12px;
    font-style: oblique;
}

.match-correct-list-heading {
    color: darkgreen;
}

.match-incorrect-list-heading {
    color: darkred;
}

.correct {
    background-color: rgba(144, 238, 144, 0.122);
    box-shadow: 0px 0px 5px #09ff00;
}

.incorrect {
    background-color: rgba(255, 71, 71, 0.129);
    box-shadow: 0px 0px 5px #ff0000;
}

.score {
    margin-top: 25px;
}

.scoreresult {
    margin-top: 25px;
    font-weight: bold;
}

[id*="select"] {
    border-radius: 10px;
}

/* multiplechoice */
.multiplechoice table, thead, tbody, tr, td, th {
    font-family: Verdana, Geneva, Arial;
    font-size: 16px;
}
.multiplechoice table {
    width: 90%;
    border-collapse: separate;
    border-spacing: 10% 20%;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
}

.multiplechoice th { text-align:center;  box-sizing: inherit;}

.multiplechoice td {
    border:5px solid #ccc;
    padding:5px;
    height:30px;
    width:30px;
    box-sizing: inherit;
}

.multiplechoice tr:nth-child(even) {
    background: #e9f3fd;
}

.multiplechoice tr:nth-child(odd) {
    background: #d5eaff;
}

.multiplechoice img[alt="green tick"], .multiplechoice img[alt="red cross"] {
    min-width: 25px;
    background-color: transparent;
    position: relative;
    top: calc(50% - 12.5px);
    left: 50%;
    transform: translate(-50%, calc(-50% + 12.5px));
}

.DKA td {
    border:1px solid #ccc;
    padding:4px;
    height:10px;
    box-sizing: inherit;
}

/* places buttons in the middle regardless of resize */
.multiplechoice input[type="checkbox"], .multiplechoice input[type="radio"] {
    display:block;
    height: 20px;
    width: 20px;
    position: relative;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    margin: 0px 0px 0px 0px;
}

/* correction of centering for Firefox */
@-moz-document url-prefix() {
    .multiplechoice input[type="checkbox"], .multiplechoice input[type="radio"] {
        top: 100%;
        transform: translate(-50%, -0%);
    }

    .multiplechoice img[alt="green tick"], .multiplechoice img[alt="red cross"] {
        top: calc(100% - 12.5px);
        transform: translate(-50%, calc(-10% + 12.5px));
    }
}

.multiplechoice .item { width:330px;  box-sizing: inherit;}

.indented{width:300px; padding-left: 20px; text-indent: -17px; box-sizing: inherit;}

.underlined{ text-decoration:underline;  box-sizing: inherit;}
.not-underlined{ text-decoration:none;  box-sizing: inherit;}

.highlighted {
    border: solid 1px #ccc;
    padding:5px;
    color:red;
    margin-bottom:20px;
    box-sizing: inherit;
}

/* Feedback Form */
#feedback-form {
    margin-bottom:30px;
    box-sizing: inherit;
    font-size: 14;
}

#feedback-form fieldset {
    display: inherit;
    width:100%;
    min-height: 40px;
    padding:10px;
    margin:10px;
    margin-bottom: 25px;
    border:1px solid #bbb;
    box-sizing: inherit;
}

#feedback-form input {
    margin: 4px 30px 5px 10px;
    box-sizing: inherit;
}

textarea {
    overflow: auto;
    border:solid 1px #999;
    box-sizing: inherit;
}

#feedback-form input[type=submit] {
    float:left;
    margin-left:10px;
    box-sizing: inherit;
}

/* used for the author slide */
.description, .developed-by, .slide {
    width: 100%;
    background-color: #e9e9e9;
    border: 1px solid #DDD;
    border-radius: 25px;
    text-align: left;
    margin-bottom: 1em;
    padding: 1em;
    box-sizing: inherit;
}

/* flash background of new elements, activated by adding the class 'flash' alongside showing elements. This aids accessibility, drawing the eye to eg feedback, prompts etc */
.flash{
  animation: flash 1s ease-out;
  animation-iteration-count: 1;
}

@keyframes flash {
    0% { background-color:none;}
    50% { background-color:orange;}
    100% {background-color:none;}
}

/*Basic table styling - not for questions*/
.basic-table table {
    border-collapse: collapse; /*not working?*/
}

.basic-table td {
    border: 1px solid black;
    padding: 10px;
}

.basic-table tr:nth-child(even) {
    background: #f0e9fd;
}

.basic-table tr:nth-child(odd) {
    background: #e6d5ff;
}

.basic-table th {
    border: 1px solid black;
    padding: 10px;
    background: #6a00ff;
    color: white;
}

/*Patient data table*/
.patient-data-table table {
    border-collapse: collapse; /*not working?*/
}

.patient-data-table td {
    border: 1px solid black;
    padding: 10px;
}

.patient-data-table tr:nth-child(even) {
    background: #fde9e9;
}

.patient-data-table tr:nth-child(odd) {
    background: #ffd5d5;
}

.patient-data-table th {
    border: 1px solid black;
    padding: 10px;
    background: #8f0000;
    color: white;
}