/*
   Fixed-size web application
   Uses rem units for proportional scaling during development
   Layout is intentionally non-responsive
*/

/*   **********    SETUP OF DOCUMENT     **********     */

html {
    /* FINAL SIZE FOR MAKING IT 1920x1080 */
    font-size: 16px;
    /* SIZE FOR DEVELOPMENT */
    /* comment below out for final submission */
    /* can change based on size needed */
    /* font-size: 8px; */
}

body {
    font-family: Arial;
    background-color: #000;
    display: flex;
    justify-content: center;
    align-items: center;     
    height: 100vh;            
    margin: 0;
    pointer-events: none;
}

/*   **********    MAIN ELEMENTS     **********     */

main {
    width: 120.0rem;
    height: 67.5rem;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 42.0rem 78.0rem;
    grid-template-rows: 62.5rem 5.0rem;
}

/*   **********    Container ELEMENTS     **********     */

.left-side {
    background-color: #BBB;
    display: grid;
    grid-template-rows: 12.5rem 12.5rem 37.5rem;
}

.right-side {
    background-color: #AAA;
    display: grid;
    grid-template-rows: 43.875rem 18.625rem;
}

.bottom {
    grid-column: 1 / -1;
    background-color: #ABABAB;
}

/*   **********    Content ELEMENTS     **********     */



/* REMOVE CSS STYLE ABOVE BEFORE STYLING BELOW */

.left-side-top{
    background-color: #ffffff;
}

.left-side-top img {
    
    display: block;
    max-width: 35.0rem;
    max-height: 12.5rem;
    align-items: center;
    flex: center;
    justify-content: center;
    margin: 15px 0px 0px 45px;
}

/* Time + Date bar */
#time-date {
    display: grid;
    grid-template-columns: 1fr 2fr;
    height: 5rem;
    margin-top: 10px;
}

/* Time (left – maroon) */
.time-box {
    background-color: #7A1F44;
    margin-top: auto;
    width: 15.0rem;
    height: 4.0rem;
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 27px;
    font-weight: 700;
    margin-top: 0.80rem;
}

/* Date (right – green) */
.date-box {
    background-color: #0A7F5A;
    color: #ffffff;
    display: flex;
    width: 27.0rem;
    height: 4.0rem;
    margin-top: 0.80rem;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-weight: 700;
    text-transform: uppercase;
}

#date sup {
    font-size: 0.6em;
    margin-top: -1rem;
    vertical-align: super;
    text-transform: lowercase;
}

.left-side-middle {
    height: 12.5rem;
    background-color: #909090;
}

.left-side-bottom {
    height: 37.5rem;
    background-color: #bdbdbd;
}

.right-side-top {
    height: 43.875rem;
    background-color: #ABABAB;
}

.right-side-bottom {
    height: 18.625rem;
    background-color: #fff;
    overflow: hidden;
}

#gsap-iframe {
     width: 100%;
     height: 100%;
}


/* NEWS PANE */

.news-slide {
    display: flex;
}

.news-slide h2 {
    font-size: 2.1rem;
    font-weight: 800;
    font-family: arial;
    color: #138261;
    margin-top: 2rem;
    margin-left: 3rem;
}

.news-slide p {
    font-family: arial;
    margin-left: 3rem;
    margin-top: 1rem;
    font-size: 1.3rem;
    line-height: 1.6;
    align-items: center;
    max-width: 52rem;
}

.news-header {
    background-color: #138261;
    color: white;
    font-size: 2.5rem;
    height: 3.5rem;
    font-weight: 700;
    padding: 0.6rem 1.5rem;
    letter-spacing: 2px;
    text-transform: uppercase;
    border-left: 15px solid #fbb03a; 
}

.news-slide > img {
    width: 18.625rem;
    height: 18.625rem;
}

.slick-dots {
    bottom: 4rem;
    margin-left: 9rem;
    color: #8dc640;
}

.slick-dots li button:before {
    color: #203d2b;
}

.slick-dots li.slick-active button:before {
    color: #203d2b;
}

/* TICKER */

.dceats img{
    width: 14rem;
    height: 5rem;
}

#ticker-tape-container {
    background-color: #138261;
    margin-left: -28.1rem;
}

.marquee {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
    overflow: hidden;
    /* margin-left: 10rem; */
}

.meal {
    font-weight: 900;
    font-size: 2.7rem;
    color: #fbb03a;
    margin-left: 1rem;
    font-variant-caps: all-petite-caps;
}

.meals {
    color: white;
    font-size: 1.7rem;
}

/* WEATHER pane */

#weather-container { 
    background-color: #3e2b2f; 
    display: flex; 
    align-items: center; 
    height: 100%;
} 
.weather-item { 
    width: calc(100%/5); 
    text-align: center; 
    border-right: 3px solid rgba(255, 255, 255, 0.3);
    padding: 10px 0;
} 

.weather-item:last-child { 
    border-right: none; 
}

.weather-item > img { 
    margin-top: 0.35rem;
    height: 3.5rem; 
    width: auto; 
} 

.weather-day { 
    font-size: 1.8rem; 
    margin-bottom: 1rem; 
    color: white; 
    font-weight: 600; 
} 

.weather-name { 
    font-size: 1rem; 
    margin-bottom: 1rem; 
    margin-top: 1rem; 
    color: #fbb03a; 
} 

.weather-temp { 
    font-size: 1.2rem; 
    color: white; 
    font-style: italic; 
}

/* Youtube Pane */

.right-side-top{
    position: relative;
    background-color: black;
    overflow: hidden;
}

#youtube-iframe{
    position: absolute;
    width: 78.1rem;
    height: 60rem;
    top: -8rem;
    left: -0.1rem;
}

/*   **********    BRICK WALL / MONITOR     **********   */

body {
  background-image: url(../assets/img/brick_wall.jpg);
  background-size: cover;
  pointer-events: none; /* Stops user interaction */
}

main {
  background-color: #000;
}

/* Wrapper slightly larger than main to hold TV frame */
#tv-wrapper {
  display: inline-flex;
  justify-content: center;
  align-items: center;

  border: 2rem solid #222;
  border-radius: 1rem;

  box-shadow:
    0 0 3rem rgba(0, 0, 0, 0.7),
    inset 0 0 2rem rgba(255, 255, 255, 0.05);

  background: linear-gradient(
    to top left,
    rgba(255, 255, 255, 0.05),
    rgba(255, 255, 255, 0)
  );
}