/* CSS

Adapted from the discovr theme from the r package discovr on github by Prof Andy Field, which was an adaption from the sanddollar theme by Allison Horst, which uses these colours:

------

Colours this theme uses:

white: #FFFFFF rgba(255, 255, 255, 1)
bg: #E8EAE5 rgba(232, 234, 229, 1)
grey: #616161 rgba(97, 97, 97, 1)
purple: #49345b rgba(44, 28, 60, 1)
brown: #844B2A rgba(188, 108, 60, 1)
vom: #86753E rgba(134, 117, 62, 1)
gangreen: #427479 rgba(866, 116, 121, 1)
blue: #3C648C rgba(60, 100, 140, 1)
grate: #2F4F4F rgba(47, 79, 79, 1)
byzantine: #882255 rgba(136 34 85, 1)

Contrast compliancy grid at: https://contrast-grid.eightshapes.com/?version=1.1.0&background-colors=%23FFFFFF%0D%0A%23E8EAE5%0D%0A&foreground-colors=%23FFFFFF%0D%0A%23E8EAE5%0D%0A%23616161%0D%0A%2349345b%0D%0A%23844B2A%0D%0A%2386753E%0D%0A%23427479%0D%0A%233C648C%0D%0A%232F4F4F%0D%0A%23882255%0D%0A&es-color-form__tile-size=compact&es-color-form__show-contrast=aaa&es-color-form__show-contrast=aa&es-color-form__show-contrast=aa18&es-color-form__show-contrast=dnp


*/






.inline-image{
  height: 1em;
}

/*-------- Background color & body font --------*/
body {
  background-color:	#FFFFFF;
  color: #616161;
}

/*-------- Main Panel ---------*/
.topics {
    width: 80%;
    overflow-x: auto;
    padding-bottom: 600px;
    padding-left: 20px;
    padding-right: 20px;
    background-color: white;
    border-left: 0;
    border-right: 0;
}


@media (max-width: 768px) {
  .topics {
    width: 95%;
    padding-left: 10px;
    padding-right: 10px;
  }
}


/*------- padding sides --------*/
.band {
    padding-left: 2%;
    padding-right: 2%;
    position: relative;
}

/* Emphasis */
em {
    color: #3d3835;
}

/*--------- Headers ---------*/

p {
  font-size: 15px;
}

ul {
  color: black;
  /*list-style-type: "🟨 ";*/
}

li::marker {
  color: #cc9900;
  font-weight: bold;
}

h1 {
  color: #000080;
  font-weight: bold;
  font-size: 20px;
}

h2 {
  color: #cc9900;
  font-weight: bold;
}

h3 {
  color: #3C648C;
  font-size: 20px;
}

h4 {
  color: #000000;
  font-weight: bold;
}

.alt {
    color: #427479;
    font-size: 1em;
}

.kt {
    color: #3C648C;
    font-size: 1em;
    font-weight: bold;
}

.pkg {
    color: #882255;
    font-size: 1em;
    font-weight: bold;
}

.lbl {
    color: #882255;
    font-size: 1em;
}

.opt {
    color:  #867;
    font-style: italic;
    font-size: 1em;
}


/* Tutorial start over button */
.topicsFooter .resetButton {
    padding-left: 10px;
    font-size: 14px;
    cursor: pointer;
    opacity: .7;
}

/*-------- Code chunk header panel ---------*/
.panel-default > .panel-heading {
    color: #2F4F4F;
    background-color: #e8eae9;
    border-top: 1px solid #e8eae5;
    border-left: 1px solid #e8eae5;
    border-right: 1px solid #e8eae5;
    font-size: 16px;
}

/*------- code colour --------*/

.hljs {
    color: black;
}
.hljs-string {
    color: green;
}

.fu {
    color: #427479;
    font-weight: bold;
}

.ot {
    color: grey;
}

.hljs-number {
    color: blue;
}

.hljs-literal {
    color:blue;
}

.hljs-comment {
    color:green;
}

.hljs-keyword {
  color: blue;
}

/*------- Rectangle panels --------*/


.panel, pre {
    color: grey;
    border-radius: 10;
    background-color: #f8f8f8;
    border: 0;
    font-size: 16px;
}

.panel_alt {
    background-color: transparent
}

/*-------- Code chunk main panel --------*/

.ace-tm {
    background-color: white;
    color: #3f3f3f;
    border-bottom: 1px solid #e8eae5;
    border-left: 1px solid #e8eae5;
    border-right: 1px solid #e8eae5;
    font-size: 15px;
}

/*-------- Line # cells --------*/

.ace_gutter-cell {
    padding-left: 10px;
    padding-right: 4px;
    background-repeat: no-repeat;
    background-color: #e8eae5;
    border: 0;
    color: #2F4F4F;
}

/*-------- Code returns --------*/
.tutorial-exercise-output > pre {
    max-height: 500px;
    overflow-y: auto;
    background-color: #f2f5f7;
    color: #3f3f3f;
}

/*-------- Code returns rmd --------*/
pre.sourceCode {
  background-color: #e8eae5;
  border: 1px solid black;
}

pre:not([class]) {
    background-color: white;
    border: 1px solid #D3D3D3;
    font-size: 12px;
}



pre.sourceCode, pre {
  overflow-x: auto;         /* horizontal scroll for long lines */
  white-space: pre;         /* keep code formatting */
  word-wrap: normal;        /* don’t break code lines */
}


/*------- In line code aesthetic --------*/
code {
    color: #427479;
    background-color: #427479;
    background-color: rgba(66, 116, 121, 0.1);
    font-size: 14px;
}



/*------- Hyperlinks --------*/
a {
    color: #cc9900;
    text-decoration: none;
}

a:hover, a:focus {
    color: #844B2A;
    text-decoration: underline;
}

/*------- nav links --------*/


.nav-link{
  color: #cc9900;
  }

/*------- Main menu -------*/
.topicsList .topic {
    color: #49345b;
    line-height: 20px;
    font-size: 14px;
    padding-left: 10px;
    cursor: pointer;
    background-color: white;
    background-repeat: no-repeat;
    background-size: 2px 80px;
    background-position: left 100%;
    background-image: url(images/task.png);
    border-bottom: 1px solid #edeae5;
    border-top: 0;
    -webkit-transition-property: background-position;
    transition-property: background-position;
    -webkit-transition-duration: 0.25s;
    transition-duration: 0.25s;
}

/*------- Selected menu item -------*/
.topicsList .topic.current {
    background-color: #FFF9EE;
    color: #2F4F4F;
    border: 0;
}
/*--- When hovering ---*/
.topicsList .topic:hover {
    background-color: #49345b;
    color: white;
    border: 0;
}



/*------- Solution / Hint buttons -------*/
.tutorial-exercise-input .btn-tutorial-solution {
    margin-left: 15px;
    background-color: #49345b;
    color: white;
    font-family: 'Jaldi', sans-serif;
    font-size: 13px;
    border: 0;
    text-shadow: none;
}

/*------- Solution popover --------*/
.popover-title {
    margin: 0;
    padding: 8px 14px;
    line-height: 16px;
    font-size: 14px;
    background-color: #E8EAE5;
    border-bottom: 1px solid #49345b;
    border-radius: 5px 5px 0 0;
    color: #3F3F3F;
    text-shadow: none;
    font-family: 'Jaldi', sans-serif;
    max-height: 100px; /* Adjust this value as needed */
}

.popover {
    max-height: 100px !important; /* Adjust this value as needed for smaller popovers */
}
/*------- Buttons -------*/


.menuButton {
  display: inline-block;           /* So padding works like a button */
  background-color: #867;
  color: #fff !important;                   /* White text */
  text-decoration: none;           /* Remove underline */
  border: none;                    /* If you later use <button>, this keeps parity */
  padding: 12px 24px;     /* t r b l */
  border-radius: 5px;
  font-size: 16px;
  font-weight: bold;
  cursor: pointer;
  transition: background-color 0.3s;
  text-align: center;
}

.menuButton:hover {
  background-color: #dbd1e0;
  text-decoration: none;
}


.navbar .nav-link.menuButton {
  color: #fff;
}

.btn-primary.disabled, .btn-primary:disabled, .btn-primary.disabled:hover, .btn-primary:disabled:hover, .btn-success.disabled, .btn-success:disabled, .btn-success.disabled:hover, .btn-success:disabled:hover, .btn-info.disabled, .btn-info:disabled, .btn-info.disabled:hover, .btn-info:disabled:hover {
  cursor: pointer;
  color: white;
  background-color:#867;
  opacity: 1;
}



.btn-primary, .btn-success, .btn-info, .btn-xs, .btn-default {
    color: white;
    background-color: #867;
    background-image: none;
    border: 0;
    font-size: 15px;
    text-shadow: none;
}

/*------- Buttons when hovering -------*/
.btn-default:hover, btn-success:hover, btn-info:hover, btn-primary:hover {
  background-color: #844B2A;
  color: white;
}

/*-------- Code chunk buttons hover aesthetic -------*/

.tutorial-exercise-input .btn-xs{
    font-size: 13px;
}



.tutorial-exercise-input .btn-xs:hover {
    margin-right: 0;
    margin-top: -1px;
    font-size: 13px;
    margin-left: 12px;
    padding-right: 8px;
    font-weight: normal;
    background-color: #844B2A;
    color: white;
    border: 0;
}

/*------- Button disabled -------*/
.btn-primary.disabled {
    color: white;
    background-color: lightgray;
    background-image: none;
    border: none;
    font-size: 13px;
}

/*------- Update Next Section button -------*/
.topicActions .btn-primary:hover {
    color: white;
    background-color: #844B2A;
    background-image: none;
    border: none;
}

/*-------- Answer alert --------*/
.alert-success {
    background-color: #E6E8E2;
    border: 0;
    color: #2F4F4F;
}
.alert-danger {
    background-color: #f3e2c4;
    border: 0;
    color: #2F4F4F;
}


/* Pedagogic boxes */

.tip {
  border-radius: 10px;
  padding: 10px;
  border: 2px solid #49345b;
  background-color: #49345b;
  background-color: rgba(44, 28, 60, 0.1);
  color: #49345b;
}


.bug {
  border-radius: 10px;
  padding: 10px;
  border: 2px solid #f3e2c4;
  background-color: #f3e2c4;
  background-color: rgba(243, 226, 196, 0.2);
  color: #86753E;
}


.warning {
  border-radius: 10px;
  padding: 10px;
  border: 2px solid #844B2A;
  background-color: #844B2A;
  background-color: rgba(188, 108, 60, 0.1);
  color: #844B2A;
}

.infobox {
  border-radius: 10px;
  padding: 10px;
  border: 2px solid #868e96;
  background-color: #868e96;
  background-color: rgba(134, 142, 150, 0.1);
  color: #2F4F4F;
}

.reportbox {
  border-radius: 10px;
  padding: 10px;
  border: 2px solid #3C648C;
  background-color: #3C648C;
  background-color: rgba(60, 100, 140, 0.1);
  color: #3C648C;
}

.stepbox {
  border-radius: 10px;
  padding: 10px;
  border: 2px solid #882255;
  background-color: #882255;
  background-color: rgba(136, 34, 85, 0.1);
  color: #882255;
}


.img_left {
 float: left;
 padding: 0 10px 0 0;
}

/* two column text */

.left_txt {
  float: left;
  width: 20%;
}



.right_txt {
  width: 80%;
}







.sidebar {
  background-color: #f0f0f0; /* Example: light grey */
}

.callout-note {
          background-color: #f2f3e9; /* Light purple background */
          color: #333333; /* Darker text for readability */
          border-left: 5px solid #86753E;

        }



.infobox {
  padding: 1em 1em 1em 4em;
  margin-bottom: 10px;
  border: 2px solid orange;
  border-radius: 10px;
  background: #f5f5f5 5px center/3em no-repeat;
}

.caution {
  background-image: url("images/caution.png");
}


/* ##############   Solution   ############# */

.my-solution {
  margin: 1em 0;
  padding-left: 5px;
  border: 2px solid darkseagreen;
  border-left: 10px solid #698B69;
  border-radius: 10px;
}

.my-solution-header {
  margin-left: 15;
  padding-left:  60px;
  padding-top:  15px;
  padding-bottom: 0.1em;
  color: black;
  background-color: #C1FFC1;
  border-top-right-radius: 10px;
  font-size: 1em;
  font-weight: bold;
  background-size: 40px;
  background-repeat: no-repeat;
  background-position: 15px center;
  background-image: url("img/icons8/solution-48.png");
}

.my-solution-container {
  padding-top: 5px;
  padding-left: 10px;
  color: black;
  background-color: white;
  border-bottom-right-radius: 10px;
}

/* styles.css */
.responsive-image {
  max-width: 100%;
  height: auto;
  object-fit: contain;
}

/* ##############   callout   ############# */

.my-callout {
  margin: 1em 0;
  padding-left: 5px;
  border: 2px solid gold;
  border-left: 10px solid gold;
  border-radius: 10px;
}

.my-callout {
  margin-left: 15;
  padding-left:  60px;
  padding-top:  15px;
  padding-bottom: 0.1em;
  color: black;
  background-color: #e5e5e5;
  border-top-right-radius: 10px;
  font-size: 1em;
  font-weight: bold;
  background-size: 40px;
  background-repeat: no-repeat;
  background-position: 15px center;
  background-image: url("img/icons8/solution-48.png");
}

.my-callout-container {
  padding-top: 5px;
  padding-left: 10px;
  color: black;
  background-color: white;
  border-bottom-right-radius: 10px;
}




