@charset "UTF-8";
html,
body,
#main {
  color: #fff;
  overflow-x: hidden;
  min-width: auto !important;
}

:root {
  --outline-color: #020202;
  --outline-width: .08em;
}

#header {
  background: #138bff;
  /* box-shadow:inset 0 -.05em .025em rgba(#fff,.2), 0 .1em .2em rgba(#000,.5);*/
}

#footer {
  background: transparent;
}

#header .nav {
  max-width: 16.66667em;
}

*:focus-visible {
  outline: auto;
  outline-offset: 0.1em;
}

[data-device=mobile] .only-pc,
[data-device=pc] .only-mobile {
  display: none;
}

[data-login=true] .only-logout,
:root:not([data-login=true]) .only-login {
  display: none;
}

.bg-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(50% - 16em);
  z-index: -5;
  width: 32em;
  margin: 0 auto;
  overflow: hidden;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.bg-area img {
  width: 100%;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
}

/*
@media (min-width: 1000px) {
    .bg-area::after, .bg-area::before{
        content:"";
        position: absolute;
        top:12.5em; left:0; bottom:0; right:0;
        //  z-index:-1;
        background: url("/img/Event/202605-Hilife/bg-side.png?v=20260204") 0% 0%/7.5em auto repeat-y;
        background-image: image-set(
            url("/img/Event/202605-Hilife/bg-side.avif?v=20260204") type("image/avif"),
            url("/img/Event/202605-Hilife/bg-side.png?v=20260204") type("image/png"),
        );
        opacity: .3;
    }
    .bg-area::before{
        top: 12em;
        background-position: 0% 0%;
        transform: scale(-1,1);
    }
}
*/
#article .banner {
  position: relative;
  display: block;
}

#main .c-btn.btn-normal {
  height: 2em;
  min-width: 10em;
  margin-top: 1em;
}
@media (max-width: 767px) {
  #main .c-btn.btn-normal {
    font-size: 0.6em;
  }
}

#main .btn {
  font: inherit;
  font-size: 1em;
  font-family: "Noto Serif TC", "Noto Sans TC", Arial, Helvetica, sans-serif;
  font-weight: 900;
  line-height: 1.2;
  display: inline-block;
  vertical-align: bottom;
  text-align: center;
  text-decoration: none;
  color: #fff;
  text-shadow: 0 0.05em 0.1em rgba(40, 20, 10, 0.5), 0 0.05em 0.25em rgb(40, 20, 10);
  padding: 0em 0;
  margin: 0.25em 0;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  max-width: 72%;
  border: none;
  border-radius: 0;
  -webkit-transition: -webkit-filter 0.1s;
  transition: -webkit-filter 0.1s;
  transition: filter 0.1s;
  transition: filter 0.1s, -webkit-filter 0.1s;
  background-repeat: no-repeat;
  background-size: contain;
  cursor: pointer;
}
#main .btn img {
  display: inline-block;
  vertical-align: middle;
  margin: 0;
  -webkit-transition: none;
  transition: none;
  opacity: 1;
}
#main .btn img:nth-child(2) {
  opacity: 0;
  z-index: 5;
}
#main .btn.active img:nth-child(2), #main .btn:active img:nth-child(2), #main .btn:hover img:nth-child(2) {
  opacity: 1;
}

.btn-link {
  font: inherit;
  color: inherit;
  line-height: inherit;
  border: none;
  background: none;
  text-decoration: underline;
  text-underline-offset: 0.2em;
  cursor: pointer;
}

.btn-pointer::after {
  content: "";
  position: absolute;
  z-index: 5;
  left: calc(100% - 1.5em);
  top: 70%;
  width: 1.75em;
  height: 1.75em;
  background: url("/img/Event/202605-Hilife/pointer.png?v=20260204") center/contain no-repeat;
  -webkit-filter: drop-shadow(0.1em 0.2em 0.05em rgba(0, 0, 0, 0.25));
          filter: drop-shadow(0.1em 0.2em 0.05em rgba(0, 0, 0, 0.25));
  -webkit-animation: btnPointer 1.2s infinite ease-in-out;
          animation: btnPointer 1.2s infinite ease-in-out;
  pointer-events: none;
}

@-webkit-keyframes btnPointer {
  0% {
    -webkit-transform: scale(1) translate(0, 0);
            transform: scale(1) translate(0, 0);
    -webkit-filter: drop-shadow(0.1em 0.2em 0.05em rgba(0, 0, 0, 0.25));
            filter: drop-shadow(0.1em 0.2em 0.05em rgba(0, 0, 0, 0.25));
  }
  50% {
    -webkit-transform: rotate(10deg) scale(1.1) translate(0.25em, 0.1em);
            transform: rotate(10deg) scale(1.1) translate(0.25em, 0.1em);
    -webkit-filter: drop-shadow(0.1em 0.3em 0.1em rgba(0, 0, 0, 0.25));
            filter: drop-shadow(0.1em 0.3em 0.1em rgba(0, 0, 0, 0.25));
  }
}

@keyframes btnPointer {
  0% {
    -webkit-transform: scale(1) translate(0, 0);
            transform: scale(1) translate(0, 0);
    -webkit-filter: drop-shadow(0.1em 0.2em 0.05em rgba(0, 0, 0, 0.25));
            filter: drop-shadow(0.1em 0.2em 0.05em rgba(0, 0, 0, 0.25));
  }
  50% {
    -webkit-transform: rotate(10deg) scale(1.1) translate(0.25em, 0.1em);
            transform: rotate(10deg) scale(1.1) translate(0.25em, 0.1em);
    -webkit-filter: drop-shadow(0.1em 0.3em 0.1em rgba(0, 0, 0, 0.25));
            filter: drop-shadow(0.1em 0.3em 0.1em rgba(0, 0, 0, 0.25));
  }
}
/*===================*/
/* MAIN PAGE CONTENT */
.sr-only {
  position: fixed;
  top: -9in;
  height: 1px;
  width: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}

.section {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
}

/*==============*/
/* PAGE CONTENT */
#main {
  color: #fff;
  overflow: hidden;
}
#main img {
  max-width: 100%;
}
#main .content {
  position: relative;
  width: 96%;
  max-width: 960px;
  margin: 0 auto;
}
#main .content p,
#main .content ul,
#main .content ol {
  font-size: 0.45em;
  font-size: clamp(13.5px, 0.42em, 36px);
  margin: 0.25em 0;
}
#main .content ul,
#main .content ol {
  -webkit-padding-start: 1em;
          padding-inline-start: 1em;
}
#main .content strong {
  font-weight: 700;
}
#main .content b {
  display: inline-block;
  font-weight: inherit;
}
#main .content a {
  text-underline-offset: 0.18em;
}
#main .content hr {
  font-size: 0.5em;
  font-size: clamp(14px, 0.5em, 30px);
  border: none;
  border-top: 1px solid #888;
  margin: 0.25em 0;
}
#main .head-title {
  display: block;
  position: relative;
  top: 0;
  width: 100%;
  left: 0;
  padding: 1.8em 0 0;
}
#main .border,
#main .border2,
#main .border_box {
  position: relative;
  display: block;
  z-index: 0;
  font-weight: 400;
  margin: 0.75em auto 0.75em;
  padding: 0.25em 0.35em;
  border-radius: 0.65em;
  --outline-width: .12em;
  scroll-margin: 1em;
}
#main .border::before,
#main .border2::before,
#main .border_box::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: -1;
  -o-border-image: url("/img/Event/202605-Hilife/border.png?v=20260204") 99 6 6 6 fill/1.5em 0.1em 0.1em 0.1em/0.1em;
     border-image: url("/img/Event/202605-Hilife/border.png?v=20260204") 99 6 6 6 fill/1.5em 0.1em 0.1em 0.1em/0.1em;
  border-image-source: image-set(url("/img/Event/202605-Hilife/border.png?v=20260204") type("image/png"));
  pointer-events: none;
}
#main .border2 {
  margin-top: 0;
}
#main .border2::before {
  -o-border-image: url("/img/Event/202605-Hilife/border2.png?v=20260204") 6 fill/0.1em/0.1em;
     border-image: url("/img/Event/202605-Hilife/border2.png?v=20260204") 6 fill/0.1em/0.1em;
  border-image-source: image-set(url("/img/Event/202605-Hilife/border2.png?v=20260204") type("image/png"));
}
#main .border2 .title {
  margin: 0 auto;
}
#main .border2 .title img {
  max-height: 2em;
}
#main .prize-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#main .prize-group > * {
  margin: 0.5em 0;
}
#main .prize-group img {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  margin: -0.2em -0.25em;
}
#main .img-box {
  display: block;
  position: relative;
  margin: 0.25em auto 0.5em;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  max-width: 96%;
  border-radius: 0.25em;
  -webkit-box-shadow: 0 0.1em 0.15em rgba(0, 0, 0, 0.25);
          box-shadow: 0 0.1em 0.15em rgba(0, 0, 0, 0.25);
  background: linear-gradient(45deg, #f9d026 25%, #00abe7 25%, #00abe7 75%, #f9d026 75%) border-box;
  border: 0.065em solid rgba(255, 246, 170, 0);
  border-radius: 0.25em;
  -webkit-box-shadow: 0 0 0 0.1em #fffce2, 0 0.25em 0 rgba(0, 0, 0, 0.35);
          box-shadow: 0 0 0 0.1em #fffce2, 0 0.25em 0 rgba(0, 0, 0, 0.35);
}
#main .img-box::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 1;
  pointer-events: none;
}
#main .img-box > * {
  display: block;
  overflow: hidden;
  border-radius: 0.25em;
}
#main .img-box img {
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
  will-change: transform;
  display: block;
}
#main .img-box .badge-img {
  position: absolute;
  top: -0.3em;
  left: 0.5em;
  z-index: 2;
  height: 1.1em;
}
#main .img-box .content-img {
  vertical-align: middle;
  font-size: 0.92em;
  width: 16em;
  height: 9em;
}
#main .img-box a:hover img {
  -webkit-transform: scale(1.01);
          transform: scale(1.01);
}
#main .edm-video {
  display: block;
  position: relative;
  width: 15.6667em;
  max-width: 940px;
  height: 8.8125em;
  margin: 0em auto 1em;
}
#main .edm-video::after {
  content: "";
  position: absolute;
  top: -4%;
  left: -1%;
  bottom: 0;
  right: 0;
  width: 102%;
  height: 109.5%;
  background: url("/img/Event/202605-Hilife/border_video.png?v=20260204") center/contain no-repeat;
  pointer-events: none;
  z-index: 6;
  background-size: 100% 100%;
}
#main .edm-video .video-container {
  width: 100%;
  height: 100%;
  border-radius: 0;
  padding: 0;
  overflow: hidden;
  z-index: 5;
}
#main .edm-video .yotubeMore {
  font-size: 0.55em;
  position: absolute;
  z-index: 10;
  right: 1.25em;
  bottom: -1em;
  padding: 0.25em 1em;
  line-height: 1.5;
  text-align: center;
  text-decoration: none;
  color: #fff;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(20%, #fc6464), color-stop(80%, #f03b3b));
  background: linear-gradient(#fc6464 20%, #f03b3b 80%);
  -webkit-box-shadow: inset 0 0 0.5em hsla(0, 0%, 100%, 0.5), 0 0.2em 0.5em rgba(0, 0, 0, 0.5);
          box-shadow: inset 0 0 0.5em hsla(0, 0%, 100%, 0.5), 0 0.2em 0.5em rgba(0, 0, 0, 0.5);
  border: 0.1em solid #fff;
  border-radius: 2em;
  text-shadow: 1px 1px 4px rgba(0, 0, 0, 0);
  -webkit-transition: text-shadow 0.3s ease, -webkit-filter 0.3s ease, -webkit-transform 0.3s ease;
  transition: text-shadow 0.3s ease, -webkit-filter 0.3s ease, -webkit-transform 0.3s ease;
  transition: filter 0.3s ease, transform 0.3s ease, text-shadow 0.3s ease;
  transition: filter 0.3s ease, transform 0.3s ease, text-shadow 0.3s ease, -webkit-filter 0.3s ease, -webkit-transform 0.3s ease;
  -webkit-filter: brightness(1);
          filter: brightness(1);
  -webkit-transform: scale(1);
          transform: scale(1);
  will-change: transform, filter;
}
#main .edm-video .yotubeMore:hover {
  -webkit-filter: brightness(1.3);
          filter: brightness(1.3);
  text-shadow: 1px 1px 4px rgba(0, 0, 0, 0.5);
}
#main .prize-img {
  position: relative;
  margin: 0 auto;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  -ms-flex-negative: 1;
      flex-shrink: 1;
}
#main .box {
  position: relative;
  border-radius: 2em;
  -o-border-image: url("/img/Event/202605-Hilife/border2.png?v=20260204") 119 fill/2em/0.35em 0;
     border-image: url("/img/Event/202605-Hilife/border2.png?v=20260204") 119 fill/2em/0.35em 0;
  margin: 0.5em 0 0.5em;
  min-height: 3em;
}
#main .box2 {
  display: block;
  position: relative;
  padding: 0.25em 0.25em;
  margin: 0.5em 0;
  border-radius: 2em;
  border: 0.1em solid #ffd69f;
  background: rgba(85, 24, 0, 0.4);
}
#main .title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 1em;
  font-size: clamp(20px, 1em, 60px);
  font-weight: 700;
  line-height: 1.2;
  border-radius: 1em;
  --outline-width: .08em;
  text-align: center;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  max-width: 100%;
  margin: 0em auto -1.7em 0;
  padding: 0;
  position: relative;
  z-index: 15;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  max-width: 55vw;
}
#main .title img {
  display: inline-block;
  margin: 0;
  -o-object-fit: contain;
     object-fit: contain;
}
#main .title2 {
  font-size: 0.8em;
  font-weight: 550;
  line-height: 1.25;
  padding: 0.25em 1em;
  margin: 0 auto 0.6667em;
  color: #fff5bc;
  text-align: center;
}
#main .title2 b {
  font-weight: 800;
  letter-spacing: -0.02em;
  margin: 0 0.05em;
  font-size: 1.25em;
  line-height: 1;
}
#main .title2 > * {
  -webkit-filter: drop-shadow(0 0.05em 0.05em rgba(0, 0, 0, 0.5));
          filter: drop-shadow(0 0.05em 0.05em rgba(0, 0, 0, 0.5));
}
#main .font-serif {
  font-family: "Noto Serif TC", serif;
}
#main .font-display {
  font-family: "MStif", "Heiti TC", "Microsoft JhengHei", Verdana, display;
}
#main .text-hilight {
  color: #efcf9d;
}
#main .text-yellow {
  color: #00ffd8;
}
#main .text-red {
  color: #ff7373;
}
#main .text-green {
  color: #3fd432;
}
#main .text-blue {
  color: #6ecdff;
}
#main .text-gray {
  color: #515151;
}
#main .text-big {
  font-size: larger;
}
#main .text-small {
  font-size: smaller;
}
#main .text-center {
  text-align: center;
}
#main .bg-star {
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  bottom: 11%;
  z-index: -1;
  pointer-events: none;
  width: 100%;
}
#main .text-outline {
  letter-spacing: normal;
  text-shadow: calc(0.7 * var(--outline-width)) calc(0.7 * var(--outline-width)) calc(0.25 * var(--outline-width)) var(--outline-color), calc(0.7 * var(--outline-width)) calc(-0.7 * var(--outline-width)) calc(0.25 * var(--outline-width)) var(--outline-color), calc(-0.7 * var(--outline-width)) calc(0.7 * var(--outline-width)) calc(0.25 * var(--outline-width)) var(--outline-color), calc(-0.7 * var(--outline-width)) calc(-0.7 * var(--outline-width)) calc(0.25 * var(--outline-width)) var(--outline-color), calc(1 * var(--outline-width)) 0 calc(0.25 * var(--outline-width)) var(--outline-color), calc(-1 * var(--outline-width)) 0 calc(0.25 * var(--outline-width)) var(--outline-color), 0 calc(1 * var(--outline-width)) calc(0.25 * var(--outline-width)) var(--outline-color), 0 calc(-1 * var(--outline-width)) calc(0.25 * var(--outline-width)) var(--outline-color), calc(0.9 * var(--outline-width)) calc(0.4 * var(--outline-width)) calc(0.3 * var(--outline-width)) var(--outline-color), calc(0.9 * var(--outline-width)) calc(-0.4 * var(--outline-width)) calc(0.3 * var(--outline-width)) var(--outline-color), calc(-0.9 * var(--outline-width)) calc(0.4 * var(--outline-width)) calc(0.3 * var(--outline-width)) var(--outline-color), calc(-0.9 * var(--outline-width)) calc(-0.4 * var(--outline-width)) calc(0.3 * var(--outline-width)) var(--outline-color), calc(0.4 * var(--outline-width)) calc(0.9 * var(--outline-width)) calc(0.3 * var(--outline-width)) var(--outline-color), calc(0.4 * var(--outline-width)) calc(-0.9 * var(--outline-width)) calc(0.3 * var(--outline-width)) var(--outline-color), calc(-0.4 * var(--outline-width)) calc(0.9 * var(--outline-width)) calc(0.3 * var(--outline-width)) var(--outline-color), calc(-0.4 * var(--outline-width)) calc(-0.9 * var(--outline-width)) calc(0.3 * var(--outline-width)) var(--outline-color);
}
@supports ((-webkit-background-clip: text) or (background-clip: text)) or (-webkit-background-clip: text) {
  #main [text-stroke] {
    color: transparent;
    text-shadow: none;
    display: inline-block;
    position: relative;
    background: -webkit-gradient(linear, left top, left bottom, from(#000), to(#000));
    background: linear-gradient(#000, #000);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-stroke: 0.05em transparent;
    -webkit-filter: drop-shadow(0 0.05em 0.05em #000);
            filter: drop-shadow(0 0.05em 0.05em #000);
  }
  #main [text-stroke]::before {
    content: attr(text-stroke);
    position: absolute;
    z-index: 1;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(10%, #ffeeb7), color-stop(60%, #ffc300), color-stop(90%, #fe9600));
    background: linear-gradient(#ffeeb7 10%, #ffc300 60%, #fe9600 90%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-stroke: 0em transparent;
    pointer-events: none;
  }
  #main [text-stroke].text-blue::before {
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(10%, #fff), color-stop(60%, #4dffb6), color-stop(90%, #b64dff));
    background-image: linear-gradient(#fff 10%, #4dffb6 60%, #b64dff 90%);
  }
}
#main #content-area {
  position: relative;
  width: 16.66667em;
  left: calc(50% - 8.33333em);
}
#main .side-container {
  position: fixed;
  left: 50%;
  -webkit-transform: translate(-50%);
          transform: translate(-50%);
  top: 2.25em;
  z-index: 5;
  pointer-events: none;
  width: 100%;
  max-width: 24em;
  opacity: 1;
}
#main .side-container > * {
  pointer-events: all;
}
#main .side-btn {
  display: block;
  margin-left: auto;
  margin-right: 0.25em;
  width: 3.15em;
  opacity: 1;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}
@media (max-width: 1280px) {
  #main .side-btn {
    opacity: 0;
    pointer-events: none;
  }
}
#main .input-group {
  font-size: 1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0.25em auto;
  gap: 0.25em;
  width: 100%;
}
#main .text-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: space-evenly;
      -ms-flex-pack: space-evenly;
          justify-content: space-evenly;
  padding: 0em 0.25em;
  margin: 0;
  word-wrap: break-word;
  min-width: 4.7em;
  background: -webkit-gradient(linear, left top, left bottom, from(#69330f), to(rgba(134, 69, 22, 0.75)));
  background: linear-gradient(#69330f, rgba(134, 69, 22, 0.75));
  border-radius: 1em;
  -webkit-box-shadow: inset 0.05em 0.05em 0.15em rgba(0, 0, 0, 0.25), 0.025em 0.025em 0.05em rgba(255, 255, 255, 0.15);
          box-shadow: inset 0.05em 0.05em 0.15em rgba(0, 0, 0, 0.25), 0.025em 0.025em 0.05em rgba(255, 255, 255, 0.15);
  text-shadow: 0 0.025em 0.05em #000;
}
#main .input {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  width: 100%;
  font: inherit;
  color: #333;
  background: #fff;
  border: none;
  border-radius: 0.5em;
  -webkit-box-shadow: inset 0 0 0.1em 0.05em rgba(0, 0, 0, 0.15), inset 0.075em 0.05em 0.1em 0.05em rgba(0, 0, 0, 0.15);
          box-shadow: inset 0 0 0.1em 0.05em rgba(0, 0, 0, 0.15), inset 0.075em 0.05em 0.1em 0.05em rgba(0, 0, 0, 0.15);
  padding: 0.2em 0.5em;
}
#main .input::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.5;
}
#main .input::-moz-placeholder {
  color: inherit;
  opacity: 0.5;
}
#main .input:-ms-input-placeholder {
  color: inherit;
  opacity: 0.5;
}
#main .input::-ms-input-placeholder {
  color: inherit;
  opacity: 0.5;
}
#main .input::placeholder {
  color: inherit;
  opacity: 0.5;
}
#main .btn-submit {
  display: inline-block;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  font: inherit;
  color: #fff;
  text-shadow: 0 0.05em 0.1em rgba(0, 0, 0, 0.25);
  background: -webkit-gradient(linear, left top, left bottom, from(#4ae28e), to(#219954));
  background: linear-gradient(#4ae28e, #219954);
  padding: 0.2em 1em;
  border: 0.05em solid #080;
  border-radius: 0.5em;
  -webkit-box-shadow: 0.025em 0.05em 0.1em rgba(0, 0, 0, 0.25);
          box-shadow: 0.025em 0.05em 0.1em rgba(0, 0, 0, 0.25);
  -webkit-transition: background 0.1s;
  transition: background 0.1s;
  cursor: pointer;
}
#main .btn-submit:active, #main .btn-submit:hover {
  background: -webkit-gradient(linear, left top, left bottom, from(#219954), to(#4ae28e));
  background: linear-gradient(#219954, #4ae28e);
}
#main .envelope-grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 0em;
  justify-items: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  max-width: 15em;
  margin: 0.5em auto 0.25em;
  -webkit-animation: envGlow 1s infinite alternate ease-in-out;
          animation: envGlow 1s infinite alternate ease-in-out;
}
#main .envelope-grid.closed {
  -webkit-animation: none;
          animation: none;
  -webkit-filter: drop-shadow(0 0.1em 0.2em rgba(50, 0, 0, 0.7));
          filter: drop-shadow(0 0.1em 0.2em rgba(50, 0, 0, 0.7));
}
#main .envelope-grid.closed .envelope {
  pointer-events: none;
  -webkit-filter: sepia(0.75) saturate(1) brightness(0.75);
          filter: sepia(0.75) saturate(1) brightness(0.75);
}
#main .envelope {
  font-size: inherit;
  position: relative;
  z-index: 0;
  width: 5em;
  height: 6em;
  border: none;
  background: none;
  -webkit-perspective: 12em;
          perspective: 12em;
  cursor: pointer;
  -webkit-filter: drop-shadow(0 0 0.1em rgba(255, 255, 255, 0.25)) brightness(1) saturate(1);
          filter: drop-shadow(0 0 0.1em rgba(255, 255, 255, 0.25)) brightness(1) saturate(1);
}
#main .envelope::before, #main .envelope::after {
  content: "";
  position: absolute;
  top: -2em;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 0;
  pointer-events: none;
}
#main .envelope::before {
  background: url("/img/Event/202605-Hilife/env-open.png?v=20260204") top/100% 100% no-repeat;
  opacity: 0;
}
#main .envelope::after {
  background: url("/img/Event/202605-Hilife/env-close.png?v=20260204") top/100% 100% no-repeat;
  opacity: 1;
}
#main .envelope .envelope-prize {
  pointer-events: none;
  position: relative;
  z-index: 0;
  opacity: 0;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
#main .envelope .anim-shine {
  opacity: 0;
  z-index: -1;
  -webkit-transition: opacity 1s;
  transition: opacity 1s;
}
#main .envelope.open {
  cursor: default;
  z-index: 1;
  -webkit-animation: none;
          animation: none;
}
#main .envelope.open::before {
  opacity: 1;
  -webkit-transition: opacity 1s;
  transition: opacity 1s;
}
#main .envelope.open::after {
  opacity: 0;
  -webkit-transition: opacity 1s;
  transition: opacity 1s;
}
#main .envelope.open .envelope-prize {
  pointer-events: all;
  -webkit-transition: opacity 1s 0.25s;
  transition: opacity 1s 0.25s;
  opacity: 1;
}
#main .envelope.open .envelope-prize > img {
  position: relative;
  z-index: 1;
}
#main .envelope.open .anim-shine {
  opacity: 1;
  -webkit-transition: opacity 1s 0.5s;
  transition: opacity 1s 0.5s;
}
#main .envelope.reveal {
  cursor: default;
  -webkit-transition: -webkit-filter 2s;
  transition: -webkit-filter 2s;
  transition: filter 2s;
  transition: filter 2s, -webkit-filter 2s;
  -webkit-filter: drop-shadow(0 0.1em 0.1em rgba(136, 0, 0, 0.25)) brightness(0.8) saturate(0.5);
          filter: drop-shadow(0 0.1em 0.1em rgba(136, 0, 0, 0.25)) brightness(0.8) saturate(0.5);
}
#main .envelope.reveal::before, #main .envelope.reveal::after {
  -webkit-transition: opacity 2s 1s, -webkit-filter 1s;
  transition: opacity 2s 1s, -webkit-filter 1s;
  transition: filter 1s, opacity 2s 1s;
  transition: filter 1s, opacity 2s 1s, -webkit-filter 1s;
  opacity: 0.25;
}
#main .envelope.reveal .envelope-prize {
  opacity: 1;
}
@-webkit-keyframes envGlow {
  0% {
    -webkit-filter: drop-shadow(0 0 0.1em rgba(255, 255, 170, 0.5));
            filter: drop-shadow(0 0 0.1em rgba(255, 255, 170, 0.5));
  }
  100% {
    -webkit-filter: drop-shadow(0 0 0.2em #ffffaa);
            filter: drop-shadow(0 0 0.2em #ffffaa);
  }
}
@keyframes envGlow {
  0% {
    -webkit-filter: drop-shadow(0 0 0.1em rgba(255, 255, 170, 0.5));
            filter: drop-shadow(0 0 0.1em rgba(255, 255, 170, 0.5));
  }
  100% {
    -webkit-filter: drop-shadow(0 0 0.2em #ffffaa);
            filter: drop-shadow(0 0 0.2em #ffffaa);
  }
}
#main #rules {
  margin-top: 1.5em;
}
#main #rules .border {
  padding: 1em 0.5em;
  margin-bottom: 0;
}
#main #rules .title {
  margin: -1.7em 0 0 0;
}
#main #rules li {
  text-align: justify;
}
#main #rules li + li {
  margin-top: 0.5em;
}
#main #socials {
  -webkit-filter: drop-shadow(0 0.05em 0.15em rgba(0, 0, 0, 0.5));
          filter: drop-shadow(0 0.05em 0.15em rgba(0, 0, 0, 0.5));
}
#main {
  /*==============*/
  /* MODAL STYLES */
}
#main .modal.old {
  font: 400 60px/1.5 "Noto Sans TC", Arial, Helvetica, sans-serif !important;
  font-size: clamp(16px, 6vw, 60px) !important;
  display: none;
}
#main .modal.old.is-active {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#main .modal.old {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 1000;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#main .modal.old .mask {
  position: fixed;
  top: -50vh;
  left: -50vw;
  bottom: -50vh;
  right: -50vw;
  background: rgba(0, 0, 0, 0.75);
  -webkit-animation: fade 0.4s ease-out;
          animation: fade 0.4s ease-out;
}
@supports (backdrop-filter: blur(0.1rem)) {
  #main .modal.old .mask {
    backdrop-filter: blur(0.15rem);
    background: rgba(8, 8, 8, 0.8);
    -webkit-transition: backdrop-filter 0.5s ease-out;
    transition: backdrop-filter 0.5s ease-out;
  }
}
#main .modal.old .border p,
#main .modal.old .border ul,
#main .modal.old .border ol {
  font-size: 0.6667em;
  font-size: clamp(14px, 0.6667em, 40px);
}
#main .modal-overflow {
  overflow-y: auto;
  overflow-x: hidden;
  width: 100%;
  max-height: 100vh;
  scrollbar-width: none;
}
#main .modal-overflow::-webkit-scrollbar {
  width: 0px;
}
#main .modal-window {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  width: 97.5%;
  max-width: 14em;
  margin: 1.5em auto 1.25em;
  padding: 0.5em 0;
  line-height: 1.4;
  -webkit-animation: pop 0.3s;
          animation: pop 0.3s;
  min-height: 360px;
}
#main .modal-window .message {
  font-size: clamp(13.5px, 1.42em, 36px);
  text-shadow: calc(0.7 * var(--outline-width)) calc(0.7 * var(--outline-width)) calc(0.25 * var(--outline-width)) var(--outline-color), calc(0.7 * var(--outline-width)) calc(-0.7 * var(--outline-width)) calc(0.25 * var(--outline-width)) var(--outline-color), calc(-0.7 * var(--outline-width)) calc(0.7 * var(--outline-width)) calc(0.25 * var(--outline-width)) var(--outline-color), calc(-0.7 * var(--outline-width)) calc(-0.7 * var(--outline-width)) calc(0.25 * var(--outline-width)) var(--outline-color), calc(1 * var(--outline-width)) 0 calc(0.25 * var(--outline-width)) var(--outline-color), calc(-1 * var(--outline-width)) 0 calc(0.25 * var(--outline-width)) var(--outline-color), 0 calc(1 * var(--outline-width)) calc(0.25 * var(--outline-width)) var(--outline-color), 0 calc(-1 * var(--outline-width)) calc(0.25 * var(--outline-width)) var(--outline-color), calc(0.9 * var(--outline-width)) calc(0.4 * var(--outline-width)) calc(0.3 * var(--outline-width)) var(--outline-color), calc(0.9 * var(--outline-width)) calc(-0.4 * var(--outline-width)) calc(0.3 * var(--outline-width)) var(--outline-color), calc(-0.9 * var(--outline-width)) calc(0.4 * var(--outline-width)) calc(0.3 * var(--outline-width)) var(--outline-color), calc(-0.9 * var(--outline-width)) calc(-0.4 * var(--outline-width)) calc(0.3 * var(--outline-width)) var(--outline-color), calc(0.4 * var(--outline-width)) calc(0.9 * var(--outline-width)) calc(0.3 * var(--outline-width)) var(--outline-color), calc(0.4 * var(--outline-width)) calc(-0.9 * var(--outline-width)) calc(0.3 * var(--outline-width)) var(--outline-color), calc(-0.4 * var(--outline-width)) calc(0.9 * var(--outline-width)) calc(0.3 * var(--outline-width)) var(--outline-color), calc(-0.4 * var(--outline-width)) calc(-0.9 * var(--outline-width)) calc(0.3 * var(--outline-width)) var(--outline-color);
}
#main .modal-window .message p {
  font-size: clamp(13.5px, 1.42em, 36px);
}
#main .modal-window .message h3 {
  margin-bottom: 0.5em;
  margin-top: 0.2em;
}
#main .modal-window .message .line {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-shadow: none;
  width: 62%;
  margin: 0 auto;
  font-size: 0.8em;
}
#main .modal-window .message .tips {
  color: #eae269;
  text-shadow: none;
  font-size: 0.65em;
  margin-top: 1em;
  margin-bottom: 0.5em;
}
#main .modal-window .message .tips a {
  border-bottom: 2px solid;
}
#main {
  /* ==================== */
  /* JS ANIMATION CLASSES */
}
#main .fade-up,
#main .fade-left,
#main .fade-right,
#main .fade-down,
#main .fade-in {
  opacity: 0;
  -webkit-transition: opacity 1.6s, -webkit-transform 1s;
  transition: opacity 1.6s, -webkit-transform 1s;
  transition: opacity 1.6s, transform 1s;
  transition: opacity 1.6s, transform 1s, -webkit-transform 1s;
}
#main .fade-up.faded,
#main .fade-left.faded,
#main .fade-right.faded,
#main .fade-down.faded,
#main .fade-in.faded {
  -webkit-transform: none;
          transform: none;
  opacity: 1;
}
#main .fade-up {
  -webkit-transform: translate(0, 1em);
          transform: translate(0, 1em);
}
#main .fade-down {
  -webkit-transform: translate(0, -1em);
          transform: translate(0, -1em);
}
#main .fade-left {
  -webkit-transform: translate(1em, 0);
          transform: translate(1em, 0);
}
#main .fade-right {
  -webkit-transform: translate(-1em, 0);
          transform: translate(-1em, 0);
}
#main .bg-area.fade-up,
#main .bg-area .fade-up {
  -webkit-transform: none;
          transform: none;
}

/*=====================*/
/* KEYFRAMES AND MEDIA */
@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@-webkit-keyframes glow {
  0% {
    visibility: hidden;
  }
  50% {
    visibility: visible;
  }
}
@keyframes glow {
  0% {
    visibility: hidden;
  }
  50% {
    visibility: visible;
  }
}
@-webkit-keyframes pop {
  0% {
    -webkit-transform: scale(0);
            transform: scale(0);
  }
  to {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes pop {
  0% {
    -webkit-transform: scale(0);
            transform: scale(0);
  }
  to {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@-webkit-keyframes fade {
  0% {
    opacity: 0;
    backdrop-filter: blur(0);
  }
  to {
    opacity: 1;
    backdrop-filter: blur(8px);
  }
}
@keyframes fade {
  0% {
    opacity: 0;
    backdrop-filter: blur(0);
  }
  to {
    opacity: 1;
    backdrop-filter: blur(8px);
  }
}
@-webkit-keyframes blink {
  0% {
    background-position: top;
  }
  50% {
    background-position: bottom;
  }
}
@keyframes blink {
  0% {
    background-position: top;
  }
  50% {
    background-position: bottom;
  }
}
@media (max-width: 1000px) {
  #main .head-title {
    width: 16em;
    left: calc(50% - 8em);
  }
  #main .modal-window #message h3 {
    font-size: 1em;
    margin-bottom: 0.3em;
  }
  #main .modal-window #message .line {
    font-size: 0.65em;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
  }
  #main .modal-window #message .tips {
    font-size: 0.55em;
  }
}
@media (max-width: 520px) {
  #main .modal-window #message {
    font-size: 0.7em;
  }
  #main .modal-window #message .line {
    font-size: 0.7em;
    width: 80%;
  }
  #main .modal-window #message .tips {
    font-size: 0.5em;
  }
}
/* ==================== Banner 持續動畫 (進場結束後啟用) ==================== */
/* 上下浮動 */
.banner-layer .loop-float {
  -webkit-animation: loopFloat 3s ease-in-out infinite alternate;
          animation: loopFloat 3s ease-in-out infinite alternate;
}

@-webkit-keyframes loopFloat {
  from {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  to {
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
  }
}

@keyframes loopFloat {
  from {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  to {
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
  }
}
/* 縮放呼吸 */
.banner-layer .loop-pulse {
  -webkit-animation: loopPulse 2.5s ease-in-out infinite alternate;
          animation: loopPulse 2.5s ease-in-out infinite alternate;
}

@-webkit-keyframes loopPulse {
  from {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  to {
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
  }
}

@keyframes loopPulse {
  from {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  to {
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
  }
}
/* 左右搖擺 */
.banner-layer .loop-swing {
  -webkit-animation: loopSwing 3s ease-in-out infinite alternate;
          animation: loopSwing 3s ease-in-out infinite alternate;
}

@-webkit-keyframes loopSwing {
  from {
    -webkit-transform: translateX(-5px);
            transform: translateX(-5px);
  }
  to {
    -webkit-transform: translateX(5px);
            transform: translateX(5px);
  }
}

@keyframes loopSwing {
  from {
    -webkit-transform: translateX(-5px);
            transform: translateX(-5px);
  }
  to {
    -webkit-transform: translateX(5px);
            transform: translateX(5px);
  }
}/*# sourceMappingURL=main.css.map */