body{
    font-family: Catamaran;
    margin: 0;
    padding: 0;
    font-size: 14px;
}
a:not([id="footerlinks"]){
    text-decoration: none;
    color:black;
}
header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    background: #171717;
    z-index: 2;
    position: fixed;
    top: 0;
}

.rightHeader {
    flex: 0 0 30%;
    display: flex;
    justify-content: flex-end;
    margin-right: 50px;
}
.leftHeader{
    flex: 0 0 22%;
    margin-left: 10%;
}
.rightHeaderContent{
    display: flex;
    font-weight: 700;
}
.rightHeaderLinks{
    display: block;
    padding:13px
}

.rightHeaderLinks:hover{
    background: #000000;
    
}
.middleHeader {
    flex: 0 0 30%;}

.headerImages {
    display: flex;
    gap: 10px;
}

img {
    display: block;
}
.logo-svg{
    max-width: 3.5vh;
    padding: 10px;
}

.header-svg{
    max-width: 20vh;
}
.bunchOfSections{
    display: flex;
    min-height: 100vh;
    margin-top: 100px;
    position: relative;
    background: white;
}

.leftSection{
    float: left;
    flex:2;
    padding: 30px;
    max-width: 400px;
    padding-right: 0;
    background: white;

}
.leftSection a{
    margin-top: 3px;
    display: block;
    padding: 5px 5px;
    margin-left: 30px;
    font-size: 13px;
    border-radius: 5px 0 0 5px;
}
.leftSection #active{
    background: antiquewhite;
    font-weight: 600;
}

.leftSection a:hover{
    background: antiquewhite;

}
.leftSectionNavigationBar{
    margin-left: calc(100% - 260px);
}

.leftSectionPuzzleControls p{
    font-size: 14px;
    margin-left: 10px;
}

.conditionDiv{
    overflow-x: hidden;
    height: 1000px;
    overflow-y: auto;
}

.conditionTitle{
    color:darkcyan;
    font-weight: 600;
    font-size: 15px!important;
    text-align: center;
}
.conditionHR{
    margin-top: -5px;
    border: solid 1px darkcyan;
}

.conditions{
    margin-left: 7px;
    margin-top: 3px;
    border-radius: 5px 0 0 5px;
    border: solid 1px aliceblue;
    background: aliceblue;
    cursor: pointer;
    padding: 3px;
    font-size: 14px;
    transition: transform 0.2s ease;
}

.conditions:hover{
    transform: scale(1.05);
}
.hoverParagraph p{
    padding: 0 5px;
}
.hoverParagraph{
    position: absolute;
    z-index:9;
    border: solid 1px lavender;
    background: lavender;
    width:300px;
}
.hoverBox{
    width:20px;
    aspect-ratio: 1/1;
    background: lavender;
    transform: rotate(45deg);
}
.middleSection{
    border-left:solid 1px darkcyan;
    border-top: solid 1px darkcyan;
    border-right:solid 1px darkcyan;
    flex: 3;
    max-width: 40%;
}
.middleSectionContent{
    width:90%;
    margin: auto;
}
.middleSectionContent p{
    font-size: 14px;
    margin-top: -10px;
}
.middleSection input:not([type="checkbox"]):not(.imageClass input):not([name="tags"]) {
    border: solid 1px sienna;
    outline: none;
    border-radius: 3px;
    padding: 5px 15px;
    width: 95%;
    background-color: aliceblue;
    font-family: Catamaran;
    font-size: 14px;
    line-height: 20px;
}

input[name="tags"]:not([placeholder=""]){
    min-width: 97.5%;
}

input[name="tags"]{
    border:none;
    outline: none;
    border-radius: 3px;
    padding: 5px;
    background-color: transparent;
    font-family: Catamaran;
    line-height: 20px;
    font-size: 12px;
}

.inputDiv{
    background: aliceblue;
    width:100%;
    padding: 0 5px;
    cursor: text;
    border: solid 1px sienna;
    outline: none;
    border-radius: 3px;
}

.inputDiv::-webkit-scrollbar {
    height: 10px;
  }
  
.inputDiv::-webkit-scrollbar-track {
    background: #f1f1f1;
}
  
.inputDiv::-webkit-scrollbar-thumb {
    background-color: #888;
    border-radius: 5px;
}
  
.inputDiv::-webkit-scrollbar-thumb:hover {
    background: #555;
}

.imageClass input{
    font-family: Catamaran;
    display: block;
    margin-bottom: 15px;
}

.imageClass button{
    font-family: Catamaran;
    float:right;
    outline: none;
    border:solid 1px black;
    border-radius: 3px;
    padding: 2px 5px;
}

.imageClass button:hover{
    cursor:pointer;
    background: aliceblue;
    outline: none;

}
#DescriptionTextarea, #AttributionTextarea{
    resize: vertical;
    width: 98%;
    outline: none;
    background: aliceblue;
    font-family: Catamaran;
    font-size: 14px;
    border: solid 1px darkcyan;
    border-radius: 3px;
}
.lowermiddleSectionContent{
    font-size: 14px;
    width:90%;
    margin: auto;
    position: relative;
    left:0;
    padding-top: 10px;
}

.lowermiddleSectionContent input[type="checkbox"]{
    transform: scale(1.2);
    position: relative;
    top: 2.5px;
}

.lowermiddleSectionContent a{
    color:cadetblue;
    font-weight: 600;
}

.applyConditionBtn{
    float: right;
    display: block;
    color:#171717;
    background: burlywood;
    padding: 5px;
    border: solid 1px burlywood;
    border-radius: 5px;
    font-family: Catamaran;
    transition: transform 0.5s ease;
}


.applyConditionBtn:hover{
    transform: scale(1.1);
    cursor: pointer;
}

.spinner {
    border: 3px solid lightblue;
    border-top: solid 3px darkslategrey;
    border-radius: 50% !important;
    width: 25px!important;
    height: 25px;
    animation: spin 1s linear infinite;
    padding: 0;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.conditionPrompt{
    margin-bottom: 0px;
}

#mark{
    background: lightpink;
    padding: 0 3px;
    border-radius: 3px;
}

#secondLine{
    background: lightgoldenrodyellow;
    border-radius: 4px;
    padding: 5px;
}
#wordCount{
    font-family: Lato;
    margin: 0;
    color: lightseagreen;
    font-size: 11px;
    text-align: right;
}

.conditionDiv::-webkit-scrollbar {
    width: 12px;
}

.conditionDiv::-webkit-scrollbar-track {
    background: #f1f1f1;
}

.conditionDiv::-webkit-scrollbar-thumb {
    background-color: lightblue;
    border-radius: 10px;
    border: 3px solid #fff;
}

.conditionDiv::-webkit-scrollbar-thumb:hover {
    background-color:darkcyan;
}

.lowermiddleSectionContent button:not(.imageClass button):not(.inputDiv button):disabled{
    cursor: not-allowed;
    transform: none;
    opacity: 0.5;
}
.rightSectionContent{
    width:98%;
    margin: auto;
}
.rightSection{
    max-width: 360px;
    width: 30%;
    float: left;
    font-size: 14px;
    background: white;
}
.selectedConditionHeading{
    text-align: center;
    background: lightblue;
    padding: 2px 0;
    font-weight: 700;
}
.rightSectionBody{
    background: #f8e4d3;
    padding: 0 3px;
    border: solid 1px sandybrown;
}
.rightSectionDiamond{
    width:8px;
    top: 18px;
    left: 50%;
    position: relative;
    aspect-ratio: 1/1;
    transform: rotate(45deg);
    background: white;
    border: solid 1px sandybrown
}

.rightSectionBody::before {
    content: '';
    display: block;
    margin-top: 5px;
}
.conditionList{
    border-top: solid 1px lightblue;
    border-bottom: solid 1px lightblue;
    padding: 0 4px;
    min-height: 60vh;
}
.listedConditions{
    padding: 5px;
    background: lightblue;
    border: solid 1px darkcyan;
    margin: 5px 0;
}
li::marker {
    font-family: Lato;
}
.ellipsisIcon{
    cursor: move;}

.listedItems{
    user-select: none;
    display: flex;
    align-items: flex-start;
    font-size: 12px;
}

.listedItems > div:first-child {
    flex: 10;
}

.listedItems > div:nth-child(2),
.listedItems > div:nth-child(3),
.listedItems > div:nth-child(4),
.listedItems > div:nth-child(5) {
    flex: 1;
}

.listedConditions.dragging:where(.listedItems){
    opacity: 0;   
}

.imageIcon{
    flex:0.6!important;
    margin-right: 5px;
}

.fetchIcon,.removeIcon{
    margin: 0 1px;
    cursor: pointer;
    text-align: center;
    border-radius: 15%;
    background: #4ba8ad;
    color: #090909;

}

.savePuzzlePrompt{
    float: right;
    margin: 0 25px;
}

.reviewPuzzle,.imgUploadForSlidePuzzle,.submitBtn{
    float: right;
    font-family: Catamaran;
    padding: 5px;
    border: solid 1px black;
    background: whitesmoke;
    transition: background-color 0.1s ease;
    margin-top: 10px;
}
.imgUploadForSlidePuzzle{
    float: none !important;
    margin-top: 10px;
    margin-bottom: 10px;
}

.reviewPuzzle:hover,.submitBtn:hover{
    cursor: pointer;
    background: #4ba8ad;
}
.draftSavingTime{
    font-size: 12px;
    margin-top: 5px;
    color:crimson;
}
.consonantsList{
    width: 100%;
    white-space: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    box-sizing: border-box;
}

.instructions{
    display: block;
    font-size: 13px;
    color: red;
    margin-bottom: 8px;
}
.fileUploadBtn{
    font-family: Catamaran;
}

input[type="file"] {
    display: none;
}
  
.custom-file-upload {
    border: 1px solid #ccc;
    display: inline-block;
    padding: 3px 6px;
    cursor: pointer;
}
.custom-file-upload:hover{
    background: #1d9b6d;
}
#file-selected{
    color:blueviolet
}
.userImage{
    width:60%;
    max-width: 200px;
    height:auto;
    margin: 20px auto;
    display: block;
}
.image-upload-error{
    color:red;
}

.disabledCondition{
    opacity: 0.5;
    pointer-events: none;
}
.conditionWrapper{ 
    cursor: not-allowed;
}
.conditionWrapperImage{ 
    cursor: not-allowed;
}
.slideLeft{
    transition: all 0.5s ease-out;
    left:-99%;
    opacity: -1;
}
.tagsDiv{
    margin: 10px auto;
    display: none;
    flex-wrap: wrap;
    gap: 10px;
    border-radius: 5px;
    padding: 5px;
    background: white;
    width: 600px;
}

.tag{
    font-weight: 600;
    font-size: 11px;
    padding: 3px 5px;
    background: #BEE1F3;
    border-radius: 5px;
    color: #000080;
    width:fit-content;
    white-space: nowrap;
}
.tagInfo{
    width: 47%;
    padding: 2px 6px;
    border-radius: 5px;
    cursor: pointer;
}
.tagInfo p{
    font-size: 12px;
}
.tagInfo:hover{
    background: azure;
}
.tagTitle{
    display: flex;
}

.tagUsage{
    margin-left: auto;
    font-size: 12px;
}
#number{font-family: Lato;}

.inputDiv .tag{
    margin: 0 2px;
}
.tag button{
    background: transparent;
    margin: 0;
    top: 4px;
    left: 3px;
    position: relative;
    outline: none;
    padding: 0 5px;
    border: none;
    font-size: 20px;
}
.tag button:hover{
    cursor: pointer;
    transform: none;
}
.tagsDiv h3{
    margin-bottom: 5px;
    width: 100%;
    margin-top: 5px;
}
h4 a{color:#1d9b6d}

@keyframes vibrate {
    0% { transform: translateX(0); }
    12.5% { transform: translateX(-3px); }
    25% { transform: translateX(3px); }
    37.5% { transform: translateX(-3px); }
    50% { transform: translateX(3px); }
    62.5% { transform: translateX(-3px); }
    75% { transform: translateX(3px); }
    87.5% { transform: translateX(-3px); }
    100% { transform: translateX(0); }
}
.vibrate {
    animation: vibrate 0.5s linear;
}

.instructionPanel{
    max-width: fit-content;
    margin: auto;
    font-size: 13px;
    background: lavender;
    padding: 0 50px;
}

#textAreaDescription{
    margin-right: 5px;
    color: blueviolet;
    font-size: 12.5px;
    float: right;
    margin-top: 0px;
}
#attributionAreaDescription{
    margin-right: 5px;
    color: blueviolet;
    font-size: 12.5px;
    margin-top: 0px;
}


#footerlinks a{
    color:antiquewhite;
    text-decoration: none;
    font-size: 12px;
}
.left i{
    color:white;
}
.left i:hover{
    color:cyan;
}
.leftSectionBtn img,.rightSectionBtn img{
    cursor: pointer;
    display: none;
}


.closeBtn{
    padding: 0px 4px;
    background: rgb(255, 76, 76);
    font-family: "Font Awesome 6 Free";
    font-size: 25px;
    margin: 10px 0px;
    float: right;
    display: none;
}
.closeBtn:hover{
    cursor: pointer;
}

.rightSectionContent .closeBtn{
    float:left;
}


h4{
    font-size: 17px;
    font-weight: 800;
}
.lowermiddleSection{
    overflow-x: hidden;
    padding-bottom: 20px;
    margin-top: 20px;
}
.container,.secondContainer{
    max-width: 250px;
    margin: auto;
    display: flex;
    flex-wrap: wrap;
    gap:5px;
    border: solid 1px black;
    padding: 10px;
}
.imgSlideButtonContainer{
    display: flex;
    flex-direction: column;
    margin-left:10px;
    margin-right: 10px;
}
.imgSlideButtonContainer>button{
    flex:1;
    position: relative;
    transition: all 0.3s ease-out;
}
.imgSlideButtonContainer>button:hover{
    background: #1717173c;
    cursor: pointer;
}

.imageDropper {
    width: 90%;
    margin: auto;
    border-radius: 5px;
    background: #3c5a7c25;
    position: relative;
    z-index: 1;
}
.imageDropper:hover{
    cursor: pointer;
}
.imageDropper::before{
    content: '';
    position: absolute;
    width: 100%;
    height: 0;
    top:100%;
    border-radius: 5px;
    transition: all 0.1s linear;
    background: #3c5a7c75;
    z-index: -1;
}

.imageDropper:hover::before{
    top:0;
    height: 100%;;
}
.imageDropper h2 {
    margin: auto;
    width: fit-content;
}

.imageDropper p {
    text-align: center;
    font-size: 15px;
    font-weight: 500;
}

.imageDropInstructions {
    border: dashed 1px #313942a0;
}

.imageDropInstructions p {
    text-align: center;
    font-size: 13px;
}

.imageDropper img{
    width: 180px;
    margin: auto;
    display: block;
    padding: 20px;
}
.grid-item{
    width: 80px;
    height: 80px;
}

.multipleImageViews,.oneImageViews{
    display: grid;
    padding: 10px;
    border:solid 1px black;
    max-width: 250px;
    margin:10px auto;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(3, 1fr);
    gap:5px;
}
.multipleImageButtons,.oneImageButton{
    display: flex;
    margin:10px;
}
.multipleImageButtons>div,.oneImageButton>div{
    margin-left: auto;
    display: flex;
    gap:10px;
}
.multipleImageButtons button,.oneImageButton button{
    font-size: 11px;
    font-weight: 800;
    font-family: Catamaran;
}
.multipleImageButtons button i{
    margin: 0 5px 0 0;
}
.targetForDelete:hover{
    opacity: 0.5;
    cursor: pointer;
}
.multipleImageinstruc{
    text-align: center;
    font-size: 12px;
}
.activeBtn{
    background: #31394250;
}

.bordered-corners {
    position: relative;
    padding: 20px;
    background: #34ce3440;
}

.bordered-corners::before,
.bordered-corners::after {
    content: '';
    position: absolute;
    width: 10%;
    height: 40%;
    pointer-events: none;
}

.bordered-corners::before {
    top: 0;
    left: 0;
    border-top: 3px solid forestgreen;
    border-left: 3px solid forestgreen;
}

.bordered-corners::after {
    bottom: 0;
    right: 0;
    border-bottom: 3px solid forestgreen;
    border-right: 3px solid forestgreen;
}
.wordle:not(button.wordle){
    display: flex;
    margin-top: 10px;
    flex-direction: column;
    gap:5px;
    max-width: fit-content;
    margin: auto;
}
.wordleRow{
    display: flex;
    gap:10px;
}
.wordleBox{
    width: 50px;
    height:50px;
    background: #444242f0;
    border-radius: 5px;
    font-size: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: 800;
    color:white;
    transition: all 0.3s ease-out;
}

.wordleWarning{
    max-width: fit-content;
    margin: auto;
    margin-top: 10px;
    padding: 1px 8px;
    background: #ff000040;
    border: solid 1px red;
    font-size: 12px;
    display: none;
}

.row {
    display: flex;
    justify-content: center;
    margin-bottom: 5px;
}

.keyboard {
    padding:10px;
}

.keyboard-container {
    text-align: center;
}
.keyboard button:not(.applyConditionBtn){
    font-family: Catamaran;
    margin: 1px;
    font-size: 16px;
    width: 30px;
}

.modal {
    display: block;
    position: fixed;
    z-index: 1; 
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background-color: rgba(0,0,0,0.4);
  }
  
  .modal-content {
    background-color: #fefefe;
    margin: 15% auto;
    padding: 20px;
    border: 1px solid #888;
    width: 100%;
    max-width: 500px;
    position: relative;
  }
  
  .close {
    color: #aaa;
    background: transparent;
    border: none;
    font-size: 28px;
    font-weight: bold;
    position: absolute;
    right: 0;
    top: 0;
  }
  
  .close:hover,
  .close:focus {
    color: white;
    background: #d15454;
    text-decoration: none;
    cursor: pointer;
  }

.modalHeader{
    display: flex;
}  
.modalHeader>h1{
    margin: auto;
}
.modalBody{
    text-align: center;
    background: antiquewhite;
    padding: 20px 0;
}
.modalBody>.spinner{
    margin: 20px auto 20px auto;
}

.modalBody>div:first-of-type{
    font-size: 16px;
    font-weight: 500;
}
#ellipsis {
    display: inline;
}

#ellipsis::after {
    content: '';
    animation: ellipsis 1.5s infinite;
}

@keyframes ellipsis {
    0%, 20% {
        content: '';
    }
    30% {
        content: '.';
    }
    50% {
        content: '..'; 
    }
    70% {
        content: '...';
    }
    100% {
        content: '';
    }
}
.modalBody p{
    font-weight: 500;
}


.editComplete{
    position: fixed;
    top: 20%;
    background: antiquewhite;
    color: chocolate;
    right: -99%;
    padding: 5px 10px 6px 10px;
    border-radius: 5px 0 0 5px;
    font-size: 12px;
    transition: all 0.5s ease;
}
.bar{
    position: absolute;
    bottom: 0;
    display: flex;
    width: 100%;
    left: 0;
    height: 3px;
    background: indianred;
    border-radius: 0 0 0 5px;
}
.bar-change{
    animation: width-change 1.5s ease;
}
@keyframes width-change {
    10%{width:90%}
    20%{width:80%}
    30%{width:70%}
    40%{width:60%}
    50%{width:50%}
    60%{width:40%}
    70%{width:30%}
    80%{width:20%}
    90%{width:10%}
    100%{width:0%} 
}

.vowels:empty {
    display: none;
}
.consonants:empty{
    display: none;
}
#mark:empty{
    display: none;
}
.leftSection a{
    display: flex;
    gap: 10px;
}
.leftSection svg{
    position: relative;
    top: -1.5px;
}