* {
    box-sizing: border-box;
    padding: 0;
    margin: 0;
}

body {
    
    /* background: linear-gradient(to right, #CCFED8, #94B9FF ); */
    font-family: 'Yu Gothic', sans-serif;
    padding: 0;
    margin: 0;
    
}

hr {
    height: 1px;
    border-top: rgba(204, 204, 204, 0.3);
    margin: 80px 3%;

}

img {
      user-drag: none; 
      -webkit-user-drag: none; 
      -moz-user-drag: none; 
      fill: none;
      outline: none;
    }
    
.refresh-icon img {
            width: 30px;
            height: 30px;
        }
    
nav {
    background-color: #AE0412;
    width: 100%;
    color: #FFD966;
    text-align: center;
    font-weight: bold;
    font-size: 20px;
    padding: 5px;
}

ul {
            
           list-style: none;
           padding: 0;
           margin: 0;
          
        }

#pagewrapper {
    
    max-width: 900px;
    margin: 0 auto;
    box-shadow: 0 0 2px 1px rgba(0, 0, 0, 0.1);
    margin-bottom: 80px;
    padding-bottom: 80px;
}

.container {
    width: 100%;
    
}

.instructions, .studyrecord-container{
    position: relative;
    display: flex;
    flex-direction: column;
    margin: 50px 3%;
    
    line-height: 1.7;
    
}


.instructions {
    background-color: #FFFF00;
    border: 1px solid black;
    line-height: 1.7;
}

.instruction-title, .studyrecord-container-title {
    position: absolute;
    width: 50%;
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%); 
    border-radius: 16px;
    background-color: #FF0000;
    color: white;
    text-align: center;
    padding: 5px;
}

.top-instruction {
    margin: 20px 3%;
    border-bottom: 1px solid #A3B9E2;
    padding-top: 30px;
    padding-bottom: 30px;
}

.body-instruction, .body-studyrecord {
    padding: 5px 3%;
    padding-top: 20px;
    margin-top: 20px;
    
}

.body-instruction ul {
    list-style-type: none; 
    padding: 0;
    margin: 0; 
}

.body-instruction ul li {
    position: relative; 
    padding-left: 20px; 
    text-indent: -20px; 
}

.redandbold {
    color: red;
    font-weight: bold;
    text-decoration: underline;
}

.blackandbold {
    color: black;
    font-weight: bold;
    margin-top: 20px;
}

.underlinedtext {
    text-decoration: underline;
}

.ul-bold {
    font-weight: bold;
    color: #0070C0;
}

.ul-text {
    margin-left: 5px;
}

.body-studyrecord ol {
    padding: 0;
    margin: 30px 3%; 
    line-height: 1.7;
    
}


.bars-label {
    
}

.bars-items {
    
}

.content-title {
    
    
    text-align: center;
    margin: 40px 3%;
}

.content-sub-title {
    text-align: center;
    margin: 40px 10%;
    font-size: 18px;
    color: gray;
}

.content-title .partname{
    font-size: 20px;
    font-weight: bold;
}

.content-title .partdescription{
    font-size: 20px;
    font-weight: normal;
}


.gcc_play_buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 10px; /* Add spacing between the wrapped elements */
    padding: 10px;
    align-items: center;
    justify-content: center;
    margin: 0 20px 0 0;
}



.gcc_play_buttons > .btns-container {
    display: flex;
    width: 250px;
    background-color: #FFC100;
    cursor: pointer;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.2);
    transition: transform 0.3s, background-color 0.3s;
    justify-content: space-between;
    margin: 0 15px;
}



.gcc_play_buttons > .btns-container:hover {
 box-shadow: 2px 2px 8px rgba(0, 0, 0, 0.2);
}


.gcc_play_buttons .play-container {
    background-color: #FFC100; /* Button-like color */
    color: black;
    text-align: center;
    padding: 10px;
}


.gcc_fast_rev_fwd {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 60px;
    margin: 60px 1%;
    height: 20px;
    
}

.symbol-container {
    position: relative;
    display: flex;
    width: 40px; /* Adjust width as needed */
    height: 20px; /* Adjust height as needed */
    justify-content: flex-start;
    align-items: flex-start;
    line-height: 0.5;
}

.left-symbol,
.right-symbol {
    font-size: 100px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
    color: #FFC002;
    padding: 0;
    cursor: pointer;
    vertical-align: middle; 
    
}

.insidenum-left,
.insidenum-right {
    font-size: 12px; /* Adjust size as needed */
    font-weight: bold;
    color: black; /* Change color as needed */
    position: absolute;
    top: 60%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2; /* Higher z-index to ensure it's above the symbol */
    pointer-events: none;
}

.rewind .left-symbol:hover, .forward .right-symbol:hover {
    color: #e5ac01; /* Darker color on hover */
    transition: transform 0.5s, color 0.5s;
}
.rewind .left-symbol:active, .forward .right-symbol:active{
    color: #ffd24d;
}

.gcc_change_hide_text {
    display: flex; /* Make the container a flexbox */
    justify-content: center; /* Space the inner divs evenly */
    align-items: center; /* Align items vertically in the center */
    padding: 10px;
    margin: 20px auto; /* Center the container horizontally on the page */
    margin-bottom: 40px;
    gap: 20px
}


.gcc_change_hide_text > div {
    padding: 10px 20px; /* Add padding inside the divs */
    background-color: #D0CECE; /* Button-like blue background */
    color: black; /* White text color */
    text-align: center; /* Center text inside the divs */
    border-radius: 25px; /* Rounded corners for each inner div */
    cursor: pointer; /* Change cursor to pointer for interactivity */
    transition: background-color 0.3s, transform 0.3s; /* Smooth hover effects */
    width: 170px;
}

.section_a_hide_text > div{
    padding: 3px 20px;
}

.gcc_change_hide_text > div:hover {
    background-color: #ccc; /* Darker blue on hover */
}




.gcc-contents .ul-items, .key-phrase-1 .ul-items {
    
    margin: 0 8%;
}
.gcc-contents .ul-items li{
    
           display: flex;
            line-height: 1.5;
            margin: 0 auto;
            align-items: flex-start;
            
}

.key-phrase-1 .ul-items li{
    
           display: flex;
            line-height: 1.7;
            margin: 20px auto;
            align-items: flex-start;
            
}




    .gcc-contents .refresh-icon,
    .gcc-contents .audio-play-icon,
    .gcc-contents .jp-text,
    .gcc-contents .en-text,
    .key-phrase-1 .refresh-icon,
    .key-phrase-1 .audio-play-icon,
    .key-phrase-1 .jp-text,
    .key-phrase-1 .en-text{
        margin-right: 10px;
    }


    .play-button {
      width: 25px;             /* Width of the button */
      height: 25px;            /* Height of the button */
      border-radius: 50%;      /* Makes it circular */
      display: flex;           /* Center the triangle */
      justify-content: center; /* Center horizontally */
      align-items: center;     /* Center vertically */
      cursor: pointer;         /* Makes it clickable */
     color: #DE3733;
        background-color: #DE3733;
      border: none;            /* Removes border */
    }

    .play-button .triangle {
      width: 0; 
      height: 0; 
      border-left: 10px solid #F7C6CC; 
      border-top: 7px solid transparent;
      border-bottom: 7px solid transparent;
      margin-left: 4px; 
    }
    
    .play-button .triangle-resume {
      width: 0; 
      height: 0; 
      border-left: 10px solid yellow; 
      border-top: 7px solid transparent;
      border-bottom: 7px solid transparent;
      margin-left: 4px; 
    }
    
    .play-button .stop-square {
      width: 10px; 
      height: 10px; 
      background-color: #F7C6CC; 
      border-radius: 1px;
    }
    
    .play-button .pause-square {
      width: 10px; 
      height: 10px; 
      border-left: 3px solid #F7C6CC; 
      border-right: 3px solid #F7C6CC; 
      background-color: transparent;
    }

    .play-button:hover {
      background-color: #cc0000; /* Darker red on hover */
    }
    
     .gcc--stop-buttons .play-button {
      width: 25px;             /* Width of the button */
      height: 25px;            /* Height of the button */
      border-radius: 50%;      /* Makes it circular */
      display: flex;           /* Center the triangle */
      justify-content: center; /* Center horizontally */
      align-items: center;     /* Center vertically */
      cursor: pointer;         /* Makes it clickable */
     color: red;
        background-color: white;
      border: none;            /* Removes border */
    }   

    .gcc-contents .jp-text,
    .gcc-contents .en-text, .key-phrase-1 .jp-text, .key-phrase-1 .en-text {
        flex-grow: 1; 
    }

.gcc-contents .refresh-icon, .key-phrase-1 .refresh-icon{
            margin-left: 10px;
        }
        
.gcc-contents input[type="checkbox"], .key-phrase-1 input[type="checkbox"]{
        
          transform: scale(1.5);
          margin-top: 6px;
        }
        
.sec4 li{
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-direction: column;
    margin-top: -50px;
}

ul.sec4 {
    display: flex;
    margin-top: -20px;
}

.red_span {
    color: red;
}

.gcc--speaker-container{
    margin: 10px 100px;
    margin-top: 30px;
   color: rgba(0, 0, 0, 0.4);


}

.play-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    position: relative;
}

.btns-container select{
    padding: 5px 0;
    height: 100%;
    background-color: transparent;
    border: none;
    font-size: 14px;
    appearance: none;   
    z-index: 2;
}

.btns-container select:focus{
    outline: none;
}

.gcc--stop-buttons {
    display: flex;
    padding: 10px 20px;
    background-color: #DE3733; /* Button-like color */
    color: white;
    text-align: center;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.2);
    cursor: pointer;
    transition: transform 0.3s, background-color 0.3s;
    justify-content: center;
    align-items: center;
    margin-left: 15px;
    margin-right: 15px;
    gap: 10px;
    border-radius: 26px;
}

.gcc--stop-buttons:hover{
    background-color: #DE3733;
}



  
.select-container {
  display: flex; 
  align-items: center;
  position: relative; 
  background-color: #FFC002;
}



.triangle-right {
    position: absolute;
    width: 0;
    height: 0;
    border-top: 23px solid transparent;
    border-bottom: 23px solid transparent;
    border-left: 25px solid #FFC100; /* Adjust color as needed */
    right: -24px;
  }
  

.pause-resume {
    display: flex;
    align-items: center;
    gap: 5px;
    position: absolute;
    right: 0;
}

/* in php */

.showkeyphrase_count {
    
    color: blue;
    font-weight: bold;
    font-size: 16px;
}

.guidetohome {
    margin: 10px 2px 40px 2px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    vertical-align: middle;
    
    
}

.activelesson {
    text-decoration: underline;
    margin-left: 12px;
}

.lessonhome{
    cursor: pointer;
    padding:2px 8px;
    border-radius: 3px;
}




.lessonhome:hover{
    background-color: rgb(240, 240, 240);
}

.versant_layer_one {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
}

.top-versant_layer_one {
    margin-bottom: 20px;
}

.bottom-versant_layer_one {
    margin-bottom: 20px;
    color: red;
}

.middle-versant_layer_one {
    color: red;
}

.layer_one_item {
    display: flex;
    gap:5px;
    padding-bottom: 10px;
    justify-content: flex-start;
}

.layer_one_item_d {
    display: flex;
    gap:5px;
    padding-bottom: 10px;
    justify-content: flex-start;
    flex-direction: column;
}

.first-item-title {
    font-weight: bold;
    margin-bottom: 10px;
}

.slash-reading-container {
    border-top: 1px solid rgba(204, 204, 204, 0.3);
    margin-top: 2px;
}
.slash-reading {
    display: flex;
    justify-content: center;
    align-items: center;
    border: none;
    padding: 3px 5px;
    border-radius: 0 0 6px 6px;
    cursor: pointer;
    box-shadow: 0 4px 10px rgba(204, 204, 204, 0.3);
    border-bottom: 1px solid rgba(204, 204, 204, 0.5);
    width: 190px;
    margin: 0 auto;
    gap: 10px;
    font-weight: normal;
}

.slash-reading.active {
    color: red;
    box-shadow: 0 4px 10px rgba(204, 204, 204, 0.5);
}

.layer_one_item_d span.slash {
    background-color: rgba(204, 204, 204, 0.3);
    padding: 5px 10px;
    border-radius: 6px;
    transition: background-color 0.3s ease, opacity 0.3s ease;
}


.question_layer_one_container {
    margin-bottom: 30px;
}

.teacher-student-notes-container {
    width: 100%;
    margin-top: 50px;
    display: flex;
    justify-content: center;
    
}
.teacher-student-notes{
    
    width: 70%;
    min-height: 150px;
    padding: 10px;
   
    border: 1px solid rgba(204, 204, 204, .5);
    border-left: 4px solid rgba(0, 0, 0, .4);
    background-color: rgba(242, 242, 242, 1);

    margin: 50px 3%;
    position: relative;
    border-radius: 6px;
    
}



.notedescription {
    position: absolute;
    top: -15px;
    left: 10px;
    padding: 5px 10px;
    border: 1px solid black;
    background-color: #F2F2F2;
    border-radius: 16px;
    color: black;
    width: 110px;
    text-align: center;
    display: flex;
    justify-content: center;
}

.editnote {
    position: absolute;
    top: -20px;
    right: 0;
    width: 60px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); 
    cursor: pointer;
    display: flex;
    justify-content: center;
    gap: 5px;
    padding: 3px 10px;
    background-color: rgba(229, 229, 229, 1);
    z-index: 2;
    border-radius: 3px;
    transition: all 0.5s ease-in-out;
}
.editnote img, .editingnote img{
    width: 20px;
}

.editnote:hover {
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
    background-color: rgb(240, 240, 240);
    transition: all 0.5s ease-in-out;
}

.teacher-student-notes-edit {
    width: 70%;
    min-height: 150px;
    padding: 10px;
    border: 1px solid rgba(204, 204, 204, .5);
    border-left: 4px solid rgba(204, 204, 204, .8);
    background-color: rgba(242, 242, 242, 1);

    margin: 50px 3%;
    position: relative;
    border-radius: 6px;

    /* Ensure overflow allows content expansion */
    overflow: visible;
}


.editingnote {
    position: absolute;
    top: -20px;
    left: 10px;
    min-width: 100px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); 
    display: flex;
    justify-content: center;
    gap: 5px;
    padding: 3px 10px;
    background-color: rgba(229, 229, 229, 1);
    z-index: 2;
    border-radius: 3px;
    transition: all 0.5s ease-in-out;
    text-align: center;
}

.edit-action {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    position: absolute;
    bottom: -50px;
    right: 0;
    padding: 5px;
    
}

.edit-action span {
    padding: 6px 20px;
    background-color: gray;
    color: white;
    bottom: 0;
    cursor: pointer;
    border-radius: 16px;
}

.edit-action span:hover {
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);

}
.note-editor {
    height: 100%;
    min-height: 600px;
    width: 100%;
    padding: 10px;
    border-radius: 3px;
}

.note-body {
   
    white-space: pre-wrap;
    margin-top: 10px;
    
    padding-left: 0;
    text-align: start;
    white-space: pre-wrap; 
    line-height: 1.5; 

}


.note-body p {
  margin: 0;          /* removes browser default spacing */
  padding: 0;         /* removes padding (if any added by reset.css) */
  line-height: 1.5;   /* consistent line spacing */
}

.note-body ul {
  display: block;
  list-style-type: disc;
  margin-block-start: 1em;
  margin-block-end: 1em;
  margin-inline-start: 0;
  margin-inline-end: 0;
  padding-inline-start: 40px;
}

.note-body ol {
  display: block;
  list-style-type: decimal;
  margin-block-start: 1em;
  margin-block-end: 1em;
  margin-inline-start: 0;
  margin-inline-end: 0;
  padding-inline-start: 40px;
}

.note-body li {
  display: list-item;
  text-align: match-parent;
}



.layer_one_item_question {
    margin-bottom: 30px;
}

.layer_one_item_question_2 {
    margin-bottom: 30px;
    display: flex;
    flex-direction: column;
}

.teacher-student-notes-edit,
.teacher-student-notes {
    transition: opacity 0.3s ease;
    box-shadow: 0px 4px 6px rgba(204, 204, 204, 0.5);
}

.studentIdDisplay {
    color: red;
}


/*/ Instructions /*/

.instruction-body {
    display : flex;
    flex-direction: column;
    padding: 20px;
    margin-top: 30px;
    justify-content: flex-start;
    align-items: fles-start;
    line-height: 1.9;
}


.instruct-play-container {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-end;
    
}

.instruct_play_buttons > .ins-btns-container {
    display: flex;
    width: 95px;
    background-color: #FFC100;
    cursor: default;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.2);
    transition: transform 0.3s, background-color 0.3s;
    height: 30px;
    margin: 0;
    justify-content: flex-start;
    font-size: 14px;
    margin: 0 20px 0 5px;
}

.ins-play-container {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    position: relative;
    padding-left: 10px;
    gap: 5px;
    
}





 .triangle-right-instruct {
    position: absolute;
    width: 0;
    height: 0;
    border-top: 15px solid transparent;
    border-bottom: 15px solid transparent;
    border-left: 18px solid #FFC100; /* Adjust color as needed */
    right: -16px;
  }


.instruct_play_buttons  .ins-play-container {
    background-color: #FFC100; /* Button-like color */
    color: black;
    text-align: center;
}

.ins-play-button {
      width: 20px;             /* Width of the button */
      height: 20px;            /* Height of the button */
      border-radius: 50%;      /* Makes it circular */
      display: flex;           /* Center the triangle */
      justify-content: center; /* Center horizontally */
      align-items: center;     /* Center vertically */
     
     color: #DE3733;
     background-color: #DE3733;
      border: none;            /* Removes border */
      margin-right: 3px;
      margin: 0 0 0 0;
    }

    .ins-play-button .triangle {
      width: 0; 
      height: 0; 
      border-left: 10px solid #F7C6CC; 
      border-top: 7px solid transparent;
      border-bottom: 7px solid transparent;
      margin-left: 4px; 
    }
 .ins-playbutton-al {
     display: flex;
     flex-wrap: wrap;
     align-items: flex-start;
     justify-content: flex-start;
     gap: 10px;
     
 }   
 
 .ins-playbutton-3 {
     margin: 0 10px;
 }
 
 .ins-reficon_container {
     display: flex;
     flex-wrap: wrap;
     align-items: flex-start;
     justify-content: flex-start;
 }
 
  .ins-reficon_container .refresh-icon {
      margin-right: 10px;
  }
/* Second */





/*/ Instructions /*/
@media (max-width: 550px) {  
    
.gcc_change_hide_text {
    
    gap: 10px;
}

.hide {
    display: inline-block; /* Ensure it works inline */
    width: 170px; /* Adjust based on your layout */
    overflow: hidden; /* Hide overflowing text */
    white-space: nowrap; /* Prevent text from wrapping */
    text-overflow: ellipsis; /* Add the ellipsis effect */
}

.teacher-student-notes, .teacher-student-notes-edit {
    width: 100%;
}

}
