:root {
    --main-color: #18acba;
    --speech-bubble-color: #ECEFF1;
}

body {
    background-color: black;
    margin: 0px;
    font-family: "Unbounded", cursive;
    /* overflow: hidden; */
}

.background {

    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
    background-position: center;
}

.header {
    background-color: var(--main-color);
}

h1 {
    text-align: center;
    padding: 10px;
    margin: 0px;
color: white;
}

/* #splash-screen {
    background-color: var(--main-color);
} */

.modal-header {
    background-color: #ced472;
}

.modal-body {
    background-color: var(--main-color);
}


/*.bubble {
    background-color: var(--speech-bubble-color);
    height: 20px;
    width: 20px;
    border-radius: 50%;
    display: none;
    position: absolute;
    box-shadow: 5px 5px rgba(0,0,0,0.2);
}

#bubble-one {
    left: 20vw;
    top: 60vh;
}

#bubble-two {
    left: 26vw;
    top: 58vh;
}

#bubble-three {
    left: 32vw;
    top: 56vh;
}

.speech-bubble {
    width: 75vw;
    height: 20vh;
    background-color: var(--speech-bubble-color);
    box-shadow: 10px 10px rgba(0,0,0,0.2);
    border-radius: 100px;
    position: absolute;
    top: 35vh;
    left: 15vw;
    display: none;
} */

.container {
    display: flex;
    width: 100vw;
    height: 100vh;
    /* background-color: red; */
    margin: 0px;
}

.card {
    background-color: antiquewhite;
    margin: 10px 0px;
    height: 90%;
    max-width: 400px;
}

.starter {
    content: "";
    height: 100vh;
}

.progress-bar-empty {
    height: 20px;
    margin: 10px;
    border: 2px solid black;
    border-radius: 10px;
    background-color: lightslategray;
    box-shadow: inset 0 -5px 5px rgba(255,255,255, 0.3);
}

.progress-bar {
    height: 100%;
    border-radius: 10px;
    background-color: var(--main-color);
    background-image: linear-gradient(
    center bottom,
    rgb(43,194,83) 37%,
    rgb(84,240,84) 69%
  );
    width: 200px;
    z-index: 1;
    position: relative;
    overflow: hidden;
}

.progress-bar:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: linear-gradient(
    -45deg, 
    rgba(255, 255, 255, .2) 25%, 
    transparent 25%, 
    transparent 50%, 
    rgba(181, 181, 181, .3) 50%, 
    rgba(181, 181, 181, .3) 75%, 
    transparent 75%, 
    transparent
  );
  z-index: 1;
  background-size: 50px 50px;
  animation: move 2s linear infinite;
  border-top-right-radius: 8px;
  border-bottom-right-radius: 8px;
  border-top-left-radius: 20px;
  border-bottom-left-radius: 20px;
  overflow: hidden;
}

/* arrows by https://codepen.io/postor */
.arrows {
	width: 60px;
	height: 72px;
	position: absolute;
	left: 50%;
	margin-left: -30px;
	bottom: 20px;
}

.arrows path {
	stroke: var(--main-color);
	fill: transparent;
	stroke-width: 3px;	
	animation: arrow 2s infinite;
	-webkit-animation: arrow 2s infinite; 
}

@keyframes arrow
{
0% {opacity:0}
40% {opacity:1}
80% {opacity:0}
100% {opacity:0}
}

@-webkit-keyframes arrow /*Safari and Chrome*/
{
0% {opacity:0}
40% {opacity:1}
80% {opacity:0}
100% {opacity:0}
}

.arrows path.a1 {
	animation-delay:-1s;
	-webkit-animation-delay:-1s;
}

.arrows path.a2 {
	animation-delay:-0.5s;
	-webkit-animation-delay:-0.5s;
}

.arrows path.a3 {	
	animation-delay:0s;
	-webkit-animation-delay:0s;
}

.divider {
    display: none;
}

.task {
    display: none;
}

.form-control {
    width: 100% !important
}

#task-display {
    display: none;
}

#progress-bar {
    display: none;
}

#task-display {
    display: none;
}

#progress-bar {
    display: none;
}

/* @media screen and (min-width: 768px) {
    .speech-bubble {
        width: 50vw;
        top: 35vh;
        left: 25vw;
    } */

    .card {
        max-width: 60vw;
    }
 

 @media screen and (min-width: 1024px) {
    .card {
        width: 100vw !important;
    }

    .arrows {
        display: none;
    }

    .divider {
        position: relative;
        display: block;
    }

    /* wave design from https://www.shapedivider.app */

    .wave {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        overflow: hidden;
        line-height: 0;
        transform: rotate(180deg);
    }
    
    .wave svg {
        position: relative;
        display: block;
        width: calc(100% + 1.3px);
        height: 165px;
    }
    
    .wave .shape-fill {
        fill: var(--main-color);
    }

    #task-column {
        background-color: var(--main-color);
    }

    .task {
        display: block;
        background-color: var(--main-color);
        max-height: 50vh;
    }

    #add-button {
        left: 50px;
    }

    .progress-bar-section {
        display: none;
    }

 }

/* Quote Bubble Background Opaque Box */

 #speech-bubble {
    position: relative;
    background-color: none;
    width: 550px;
    /* must be a definite value less than the screen size */
    margin: 0 auto;
    /* centers the block by splitting the remaining space */
    z-index: 1;
  }
  
  #speech-bubble::before {
    content: '';
    position: absolute;
 left: -60px;
    top: -60px;
    right: -60px;
    bottom: -40px;
    background: rgba(0, 0, 0, 0.2);
	  z-index: -1;
  }

 /* Quote Bubble Style */

  #vertically-centered-box {
    position: absolute;
    top: 20%;
    width: 100%;
    /* necessary to center interior elements horizontally */
  }

  #speech-bubble {
    background-color: rgba(255, 255, 255, 0);
    width: 480px;
    /* must be a definite value less than the screen size */
    margin: 0 auto;
    /* centers the block by splitting the remaining space */
  }

  #quote,
  #author {
    color: white;
    font-size: 2em;
    padding: 10px;
  }

  #author {
    margin-top: 20px;
  }

  #quote {
    position: relative;
    /* necessary for the quote triangles below since they will have position: absolute; position: absolute positions the element relative to its first unstatically positioned ancestor and, for this to work, this ancestor MUST be #quote; otherwise, the triangles do not stay stable to resizing windows)*/
    border: 5px solid white;
  }

  #quote:before {
    content: ' ';
    width: 0;
    height: 0;
    position: absolute;
    left: 25px;
    bottom: -35px;
    border: 15px solid;
    border-color: white
    transparent transparent white
    ;
  }

  #quote:after {
    content: ' ';
    width: 0;
    height: 0;
    position: absolute;
    left: 29px;
    bottom: -24px;
  }

  @media only screen and (max-width: 600px) {
    #speech-bubble {
      width: 270px;
    }
  }
