/*
 Basic Reset of CSS
*/
:root {
  --motion-ease: cubic-bezier(0.68, -0.6, 0.32, 1.6);
  --motion-duration: 0.3s;

  --bg-color  :  #1c1c1c;
  --txt-color :  #ffffff;
  --submit-button-bg-color : #f19073 ;
  --submit-button-color : #000000;
  --submenu-background-color : #1c1c1c;  /* #4c556d ;*/ 

  --textinput-background-color : #888888;
  --light-border-color : #bbbbbb;
  --bg-error-color  :   #d23838;
  --txt-error-color : #000000; 
  --light-hover-color : #bbbbbb;
}

* {
  box-sizing: border-box;
}

* {
  scrollbar-color: #717171 #303030;
}

*::-webkit-scrollbar-track {
  background: #303030;
}

*::-webkit-scrollbar-thumb {
  background-color: #999;
  border: 4px solid #303030;
}

body  {
  background: var(--bg-color);
  color: var(--txt-color);
}
div  {
  background: var(--bg-color);
  color: var(--txt-color);
  margin: 4px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: #fff;
}

a:link, a:visited {
  color: #71c1ef;
  background-color: transparent;
  text-decoration: none;
}


a:hover {
  color: rgb(209, 119, 119);
  background-color: transparent;
  text-decoration: underline;
}

a:active {
  color: rgb(0, 255, 64);
  background-color: transparent;
  text-decoration: underline;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* Indents for nested lists*/
ul > li {
  margin-left: 25px;
}
ul {
  list-style-type:none;
}

p {
  margin-top: 3px ;
  margin-bottom: 3px ;
}
footer > p {
  font-size: smaller;
}

.centered {
  text-align: center;
}
.bodyBackground {
  width: 100%;
  height: 100%;
}

/*
   Just bits and bobs.
*/
select {
  border-style: hidden;
}
input {
  border-style: hidden;
  cursor:default;
}
.goButton {
  border-style: hidden;
}
.fileButton {
  visibility: hidden;
}
.buttonLabel {
  border-style: groove;
}
.menuList {
  list-style-type: none;
}
.headingStyle {
}
#bodyStyle {
  width: 100%;
  /*height: 100%;
  z-index: 0;
   */ 
  height: 1000px;
  
}
.onRight {
  float : right;
}
.coggleForms {
  display: flex;
  /*flex-wrap: wrap;*/
  align-content: center;
  flex-direction: column;
  & p {
    width: 100%;
  }
}
.errorMsg {
    margin-top: 3px ;
    margin-bottom: 3px ;
    background-color:  var(--bg-error-color); 
    color: var(--txt-error-color);
    font-weight: bolder;

}
.hiddenText, .hidden {
  display: none; 
}
.pxy {
  width: 35px;
}
.textinputarea, 
.chatinputarea, 
.textinputareaLarge,
.textInputAreaSmall,
.urlInput, 
.textAnouncement, 
.introDiv  {
  /*position: relative;
  z-index: 10;
  object-fit: contain;*/
  margin:10px; 

  width:95%;
  height: 100px;
  border-radius: 10px ;
  font-size: large;
  font-weight: bold;
  border-style: solid;
  border-color: rgb(153, 162, 163);
  border-width: 5px; 
  vertical-align: top; 

  padding-left: 2px;
  font-family: 'Open Sans', sans-serif;
/*  font-weight: lighter;*/
  -webkit-transition: 0.5s;
  transition: 0.5s;
  opacity: 0.5;
}
.textinputarea, 
.chatinputarea, 
.textInputAreaSmall,
.textinputareaLarge {
  &:hover,
  &:focus,
  &:active:focus {
      color: #ff5722;
      outline: none;
      border-bottom: 1px solid #ff5722;

      &:placeholder {
        color: #ff5722;
        position: relative;
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px);
    }
  }
}
/*Chat area configuration*/ 
.chatinputarea {
  width : 95%;
}
.leftSide {
  width:70%;
  /*border:1px solid red;
  */
  display:10px;
  float:left;
}
.rightSide {
  width:25%;
  /*border:1px solid rgb(21, 0, 255);
  */
  margin-right:10px;
  float:left;
}
.childInSide {
  float:left;
  margin-right:5px;
}

.continuationText, .word-count {
  font-weight: lighter;
  color: rgb(131, 136, 136);
}
.word-count {
  background-color: var(--bg-color);
  width: 60px;
  margin: 5px;
}

.textInputAreaSmall  {
  height: 50px;
}

.textinputareaLarge {
  height: 250px;
}
.urlInput {
  height: 30px;
}

.textAnouncement, .introDiv {
  height: fit-content;
  background-color: var(--textinput-background-color);
  color: var(--bg-color);

}
.introDiv {
  width : 50%;
  position : absolute;
  top: 40px; left: 40px;
  opacity: .98;
  z-index: 10;
  margin:20px;
}
.introP {
  margin:20px;
}
.closeDivSpan {
  margin:10px; 
  float:right;
  color: #ffffff;
  cursor:pointer;
}

/*
.textresultarea { 
  padding-left: 2px;
  font-family: 'Open Sans', sans-serif;
  font-weight: lighter;
  opacity: 0.5;
}
*/
.durationInput {
  width : 25px ;
  text-align: right;
}

hr.dashed {
  border-top: 3px dashed var(--light-border-color) ;
}
hr.dotted {
  border-top: 3px dotted var(--light-border-color);
}
hr.solid {
  border-top: 3px solid var(--light-border-color);
}
hr.rounded {
  border-top: 8px solid var(--light-border-color);
  border-radius: 5px;
}
/*
.selectModel {
  display: inline-block; 
	padding: 2px 8px 1px; 
	text-decoration: none;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px; 
	border-radius: 5px;	
	-webkit-box-shadow: 0 1px 3px rgba(0,0,0,0.6);
  -pie-box-shadow: 0 1px 3px rgba(0,0,0,0.6);
	-moz-box-shadow: 0 1px 3px rgba(0,0,0,0.6);
	box-shadow: 0 1px 3px rgba(0,0,0,0.6);
	text-shadow: 0 -1px 1px rgba(0,0,0,0.25);
	border-bottom: 1px solid rgba(0,0,0,0.25);
	position: relative;
	cursor: pointer;

}
/* >>>> Dont Display the standard HTML rubbish <<<*/
input[type="file"] {
  display: none;
}

.headerLogo, 
.submitBtn, 
.continueBtn, 
.uploadFile {
  cursor: pointer;
  &:hover {
    filter: brightness(1.1);
  }
  &:focus,
  &:active {
    filter: brightness(0.9);
  }
}
.submitBtn , 
.continueBtn, 
.uploadFile {
  background-color: var(--submit-button-bg-color);
  color: var(--submit-button-color);
	display: inline-block; 
	padding: 2px 8px 1px; 
	text-decoration: none;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px; 
	border-radius: 5px;	
	position: relative;
	cursor: pointer;
}

/* Caution subMenu and submit get confusing*/
.menuBtn, 
.menuArrow, 
.subMenuBtn {
  display: inline-block; 
	padding: 2px 8px 1px; 
	position: relative;
	cursor: pointer;
  opacity: 100%;
  text-decoration: var(--txt-color);
  &:hover {
    filter: brightness(1.1);
  }
  &:focus,
  &:active {
    filter: brightness(0.9);
  }
}
.submitBtn,
.continueBtn {
  color:var(--bg-color);
  font-weight: bold;
}

.continueBtn {
  text-align: right;
}


.menuBtn { 
  width : 80%;
}
.menuArrow {
  width : 10%;
}
.subMenuBtn {
  background-color: var( --submenu-background-color);
  &:hover {
    filter: brightness(1.5);
  } 
}
#main-body {
  border-radius: 10px ;
}
#main-body-header{
  border-radius: 10px ;
  border-style: solid;
  border-color: var(--light-border-color) ; 
  border-width: 2px;
  /* margin: -5px -5px 10px 10px;
  */
}

#innerHeader, 
#aboutButton {
  margin : 5px;
  color: rgb(225, 229, 231);
  cursor: pointer;
  &:hover{ 
    color: var(--light-hover-color);
  }
}
#innerHeader {
  text-align: center;
  font-size: 55px;
}
#aboutButton {
  text-align: right;
}

table, 
th, 
td {
  border: 3px solid none;
  border-collapse: collapse;
}
.mainTable {
  width: 100%;
}
.autoResizeImage {
  max-width: 100%;
  height: auto;
  width: auto;
}
.hiddenText {
  display : none;
}

.contentStylePanel {
  border-radius: 10px ;
  border-width: 2px;
  border-color: rgb(255, 100, 50);
  background-color: var(--submenu-background-color) ; 
  /* position: fixed; */ 
  position : absolute; 
    top: 75px; left: 20px;
  padding-right: 20px;
  height: auto;
  width: auto;
  z-index: 10;
  display: none;
}

.bordered {
  border-color: #5b5b5b;
  border-style:solid;
  border-width: 3px;
  border-radius: 2px;
}
.front-page-cell {
  vertical-align:top;
}

.fixedStyleContainer {
  display: grid;
  align-self: center;

  max-width : 95%;
  margin: 4px;

}

.fixedStylePanel {
  position: relative;
  display : block;
  object-fit: contain;
  margin: 10px;
}
.subMenuGroup {
  border-radius: 10px ;
  border-width: 2px;
  border-color: var(--submit-button-bg-color);
  background-color: var( --submenu-background-color); 
  /*position: fixed;  */
  position : absolute; /* Forces overlay on top */
  padding-right: 20px;
  margin:5px;
  height: auto;
  width: auto;
  z-index: 10;
  display: none;
  width: 350px; 

}
.subMenuContent {
  background-color: var( --submenu-background-color);
  margin:10px;
}
.subMenuGroupClose {
  font-weight: bolder;
  cursor: pointer;
}

.styleButton {
  /* using Submit button style */ 
}
/*This is really to get all of the same class*/
.kwInput, .modelSelectionInput {
  background-color: rgb(0,0,255);
}
.modelIndent {
  margin-left: 25px;
}

.settingsInput, .imageEditSettings, .modelsInput {
  width : 80px;
  border-width: 4px;
  border-radius: 4px ;
}
.modelsInput{
  width : 200;
}

/* The Modal (background) */
.modal-div, 
.apology-div {
  /*display: none;*/ 
  position:inherit;
  z-index: 1; 
  padding-top: 100px; /* Location of the box */
  left: 0;
  top: 0;
  height: 500px; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgb(0,0,0); /* Fallback color */
  background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
}
.modal-clock-div {
   text-align: right;
}

.modal-clock {
  background-color: #999;
  width: 40px;
}
.apology-div { /* Additional */
  color :rgb(209, 119, 119);
  align-items: center;
  height: 75px;
}
/* Modal Content and media spacing */
.modal-content-div, 
.apology-content-div {
  margin: auto;
  padding: 20px;
  border: 2px solid #888;
  width: 80%;
}

.cupOfCoffee { 
  width : 20px;
  height : 20px;
} 
.cupOfCoffeeLarge { 
  width : 50px;
  height : 50px;
} 

/* These are for the Edit page*/
.userSuppliedImage {
  max-width:25%;
  height: auto;
  width: auto;
  object-fit: scale-down; 
  vertical-align: center;
}
#init_imageImg {
  max-width:100%;
  height: auto;
  width: auto;
  object-fit: scale-down; 
  vertical-align: center;
}
#responseImage, 
.frontMenuImage,
.generatedImage,
.frontPageIMG {
  max-width: 100%;
  height: auto;
  width: auto;
  object-fit: scale-down; 
  vertical-align: center;
}

.frontMenuImage {
  max-width: 50%;
  height: auto;
  width: auto;
  object-fit: scale-down; 
  vertical-align: center;
}
.frontPageIMG, .frontMenuImage {
  &:hover {
      opacity: 0.3;
  }
}

.captionText {
  color: white; 
  font-size: 25px;
  position: relative;
  top: -10px;
  text-align: center;
  background: var(--bg-color);
}
.mediaColumn {
  margin: auto;
  padding: 2px;
  align-items: center;
  text-align: center;
}
.mediaTable {
  table-layout:fixed;
  width:100%;
  padding: 2px; 
}
.mediaTableCell{
  border-width:30px;
  border-color:var(--bg-color) ;
  border-style:double;
  
}
.mediaTableRow {
  height: 75px;
}
/* Slider Fading animation */
.fade {
  animation-name: fade;
  animation-duration: 3s;
}
@keyframes fade {
  from {opacity: .4} 
  to {opacity: 1}
}
.sliderDiv {
  display: none;
  text-align: center;

}
.sliderImage {
  max-width: 100%;
  height: 300px;
  max-height: 300px;
  object-fit: contain; 
  width: 100%;
  display: block;
  &:hover {
    opacity: 0.3;
  }
}
.sliderText { 
    width: 300px;  
    height: 50px;  
    display: inline-block; 
}


.leftAligned, 
.leftHandCell {
  align-items: left;
  text-align: left;
}
.leftHandCell {
  vertical-align: top;
}
.copyButton {
  color: blue;
  &:hover {
    filter: brightness(1.1);
  }
  &:active {
    filter: brightness(0.9);
  }
  cursor: pointer; 
}

/* Hovering Drop Downs */
.dropdown {
  position: relative;
  display: inline-block;
  border-radius: 5px;
}
.dropbtn {
  background-color: var(--bg-color);
  color: var(--txt-color);
  border: none;
  border-radius: 5px;
}
.dropdown-content {
  display: none;
  position: absolute;
  background-color: var(--bg-color);
  opacity : 0.9;
  min-width: 160px;
  box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
  z-index: 1;
}
.dropdown-content a {
  padding: 4px 6px;
  text-decoration: none;
  display: block;   
  border-radius: 5px;
}
.dropdown-content a:hover {
  background-color: var(--light-hover-color);
}
/*.dropdown:hover .dropdown-content {
  display: block;
}
*/
.dropdown:hover .dropbtn {
  background-color: var(--light-hover-color);
}

.adpanel {
  color: #f19073;
}