@charset "UTF-8";
/* Brand */
/* Button */
/* Status */
/* Gray */
/* Line / Border */
/* Font size */
/* =====================
   Button Size
   ===================== */
/* =====================
   Disabled
   ===================== */
/* =====================
   Gray Button Colors
   ===================== */
/* =====================
   Button Base
   ===================== */
.btn {
  display: -webkit-inline-flex;
  display: -moz-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 8px;
  border-radius: 8px;
  font-weight: 500;
  cursor: pointer;
  -webkit-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  transition: all 0.2s ease;
  border: 1px solid transparent;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  line-height: 1;
  /* icon 通用 */
}
.btn .icon {
  display: -webkit-inline-flex;
  display: -moz-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 1em;
}
.btn svg,
.btn img {
  width: 1em;
  height: 1em;
}
.btn:disabled, .btn.is-disabled {
  cursor: not-allowed;
  pointer-events: none;
}

.btn-icon-r {
  -webkit-flex-direction: row-reverse;
     -moz-box-orient: horizontal;
     -moz-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

/* Filled Button */
.btn-main {
  background: #1a6de0;
  color: #fff;
}
.btn-main .icon,
.btn-main svg {
  fill: currentColor;
}
.btn-main:hover {
  background: #d3970e;
}
.btn-main:active {
  background: #d3970e;
}
.btn-main:disabled, .btn-main.is-disabled {
  background: #aaaaaa;
  color: #ebebeb;
}

/* Outline Button */
.btn-main-o {
  background: transparent;
  color: #1a6de0;
  border-color: #1a6de0;
}
.btn-main-o .icon,
.btn-main-o svg {
  fill: currentColor;
}
.btn-main-o:hover {
  background: #1a6de0;
  color: #fff;
}
.btn-main-o:active {
  background: #d3970e;
  border-color: #d3970e;
}
.btn-main-o:disabled, .btn-main-o.is-disabled {
  background: transparent;
  color: #aaaaaa;
  border-color: #aaaaaa;
}

.btn-gray {
  background: #222;
  color: #fff;
}
.btn-gray .icon,
.btn-gray svg {
  fill: currentColor;
}
.btn-gray:hover {
  background: #525252;
  color: #fff;
}
.btn-gray:active {
  background: #111;
  color: #fff;
}
.btn-gray:disabled, .btn-gray.is-disabled {
  background: #aaaaaa;
  color: #ebebeb;
}

.btn-gray-o {
  background: transparent;
  color: #222;
  border-color: #222;
}
.btn-gray-o .icon,
.btn-gray-o svg {
  fill: currentColor;
}
.btn-gray-o:hover {
  background: #222;
  color: #fff;
}
.btn-gray-o:active {
  background: #111;
  border-color: #111;
}
.btn-gray-o:disabled, .btn-gray-o.is-disabled {
  color: #ebebeb;
  border-color: #aaaaaa;
}

/* =====================
   Text Button (Link-like)
   ===================== */
.btn-text {
  background: none;
  border: 0;
  padding: 0;
  margin: 0;
  color: #1a6de0;
  font-size: inherit;
  font-weight: 500;
  line-height: inherit;
  cursor: pointer;
  border-bottom: 1px solid #1a6de0;
  -webkit-transition: color 0.2s ease;
  -o-transition: color 0.2s ease;
  -moz-transition: color 0.2s ease;
  transition: color 0.2s ease;
}
.btn-text:hover {
  color: #f0be41;
  border-bottom: 1px solid #f0be41;
}
.btn-text:active {
  color: #d3970e;
}
.btn-text:disabled, .btn-text.is-disabled {
  color: #ebebeb;
  cursor: not-allowed;
  pointer-events: none;
  text-decoration: none;
}

/* =====================
   Button Size
   ===================== */
.btn-sm {
  height: 32px;
  padding: 0 12px;
  font-size: 14px;
  gap: 6px;
}

.btn-md {
  height: 40px;
  padding: 0 16px;
  font-size: 16px;
  gap: 6px;
}

.btn-lg {
  height: 48px;
  padding: 0 20px;
  font-size: 18px;
  gap: 10px;
}

.g-main-s {
  --gap: 12px;
  width: 100%;
  max-width: 640px;
  padding-right: var(--gap);
  padding-left: var(--gap);
  margin-right: auto;
  margin-left: auto;
  position: relative;
}

.g-main-m {
  --gap: 12px;
  width: 100%;
  max-width: 768px;
  padding-right: var(--gap);
  padding-left: var(--gap);
  margin-right: auto;
  margin-left: auto;
  position: relative;
}

.g-main-l {
  --gap: 12px;
  width: 100%;
  max-width: 1280px;
  padding-right: var(--gap);
  padding-left: var(--gap);
  margin-right: auto;
  margin-left: auto;
  position: relative;
}

.g-main-xl {
  --gap: 12px;
  width: 100%;
  max-width: 1280px;
  padding-right: var(--gap);
  padding-left: var(--gap);
  margin-right: auto;
  margin-left: auto;
  position: relative;
}

.row {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  gap: var(--gap);
  position: relative;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.nowarp {
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
}

.flexalign_cc {
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.space-between {
  -webkit-justify-content: space-between;
     -moz-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.flex-center {
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.flexalign_center {
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.g-21 {
  -webkit-flex: 0 0 -webkit-calc(100% - var(--gap));
     -moz-box-flex: 0;
      -ms-flex: 0 0 calc(100% - var(--gap));
          flex: 0 0 calc(100% - var(--gap));
}

@media (min-width: 768px) {
  .g-21 {
    -webkit-flex: 0 0 -webkit-calc(50% - var(--gap));
       -moz-box-flex: 0;
        -ms-flex: 0 0 calc(50% - var(--gap));
            flex: 0 0 calc(50% - var(--gap));
  }
}
.g-321 {
  -webkit-flex: 0 0 -webkit-calc(100% - var(--gap));
     -moz-box-flex: 0;
      -ms-flex: 0 0 calc(100% - var(--gap));
          flex: 0 0 calc(100% - var(--gap));
}

@media (min-width: 768px) {
  .g-321 {
    -webkit-flex: 0 0 -webkit-calc(50% - var(--gap));
       -moz-box-flex: 0;
        -ms-flex: 0 0 calc(50% - var(--gap));
            flex: 0 0 calc(50% - var(--gap));
  }
}
@media (min-width: 992px) {
  .g-321 {
    -webkit-flex: 0 0 -webkit-calc(33.33% - var(--gap));
       -moz-box-flex: 0;
        -ms-flex: 0 0 calc(33.33% - var(--gap));
            flex: 0 0 calc(33.33% - var(--gap));
  }
}
.g-1 {
  -webkit-flex: 1;
     -moz-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.g-basis {
  -webkit-flex-basis: 1;
      -ms-flex-preferred-size: 1;
          flex-basis: 1;
}

.g-auto {
  -webkit-flex: 0 0 auto;
     -moz-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}

.g-33 {
  -webkit-flex: 0 0 33.33%;
     -moz-box-flex: 0;
      -ms-flex: 0 0 33.33%;
          flex: 0 0 33.33%;
}

.g-half {
  -webkit-flex: 0 0 50%;
     -moz-box-flex: 0;
      -ms-flex: 0 0 50%;
          flex: 0 0 50%;
}

.g-70 {
  -webkit-flex: 0 0 70%;
     -moz-box-flex: 0;
      -ms-flex: 0 0 70%;
          flex: 0 0 70%;
}

.g-100 {
  -webkit-flex: 0 0 100%;
     -moz-box-flex: 0;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
}

label {
  display: block;
  margin: 10px 0;
  padding: 0 10px 0 0;
  font-weight: normal;
}

button,
input,
optgroup,
select,
textarea {
  margin: 0;
  font: inherit;
  color: inherit;
}

button,
input,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

button,
select {
  text-transform: none;
  background: transparent;
  border: 0;
}

::-webkit-input-placeholder {
  /* WebKit browsers */
  color: #999;
}

:-moz-placeholder {
  /* Mozilla Firefox 4 to 18 */
  color: #999;
}

::-moz-placeholder {
  /* Mozilla Firefox 19+ */
  color: #999;
}

:-ms-input-placeholder {
  /* Internet Explorer 10+ */
  color: #999;
}

.mgc {
  position: relative;
  width: 16px;
  height: 16px;
  background-clip: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  margin: -0.15px 0.6px 0 0;
  vertical-align: text-bottom;
  border-radius: 3px;
  -webkit-transition: background-color 0.25s;
  -o-transition: background-color 0.25s;
  -moz-transition: background-color 0.25s;
  transition: background-color 0.25s;
  background-color: #fff;
  border: 1px solid #d7d7d7;
}

.mgc:checked:after {
  content: "";
  display: block;
  height: 4px;
  width: 7px;
  border: 0 solid #333;
  border-width: 0 0 2px 2px;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
   -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
       transform: rotate(-45deg);
  position: absolute;
  top: 3px;
  left: 3px;
}

.mgc:disabled {
  opacity: 0.65;
}

.mgc:focus {
  outline: none;
  box-shadow: inset 0 1px 1px rgba(255, 255, 255, 0.075), 0 0 2px #38a7ff;
}

.mgc:checked {
  background-color: #fff;
  border-color: #d7d7d7;
}

.mgc:checked:after {
  border-color: #414141;
}

.mgc-primary {
  background-color: #fff;
  border: 1px solid #d7d7d7;
}

.mgc-primary:checked {
  background-color: #fff;
  border-color: #1a6de0;
}

.mgc-primary:checked:after {
  border-color: #1a6de0;
}

.mgc-info {
  background-color: #fff;
  border: 1px solid #d7d7d7;
}

.mgc-info:checked {
  background-color: #5bc0de;
  border-color: #5bc0de;
}

.mgc-info:checked:after {
  border-color: #fff;
}

.mgc-warning {
  background-color: #fff;
  border: 1px solid #d7d7d7;
}

.mgc-warning:checked {
  background-color: #f0ad4e;
  border-color: #f0ad4e;
}

.mgc-warning:checked:after {
  border-color: #fff;
}

.mgc-danger {
  background-color: #fff;
  border: 1px solid #d7d7d7;
}

.mgc-danger:checked {
  background-color: #cf3b3a;
  border-color: #cf3b3a;
}

.mgc-danger:checked:after {
  border-color: #fff;
}

.mgc-mg {
  width: 18px;
  height: 18px;
}

.mgc-mg:checked:after {
  top: 3px;
  left: 3px;
  height: 6px;
  width: 12px;
}

.mgc-lg {
  width: 24px;
  height: 24px;
}

.mgc-lg:checked:after {
  top: 4px;
  left: 4px;
  height: 8px;
  width: 16px;
}

.mgr {
  position: relative;
  width: 16px;
  height: 16px;
  background-clip: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  vertical-align: text-bottom;
  border-radius: 50%;
  background-color: #fff;
  border: 1px solid #d7d7d7;
}

.mgr:disabled {
  opacity: 0.65;
}

.mgr:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
     -moz-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
       -o-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  height: 0;
  width: 0;
  -webkit-transition: all 0.98s;
  -o-transition: all 0.98s;
  -moz-transition: all 0.98s;
  transition: all 0.98s;
  -webkit-transition-timing-function: linear(0, 0.015, 0.057, 0.118, 0.192, 0.275, 0.362, 0.449, 0.535, 0.617, 0.693, 0.763, 0.825, 0.879, 0.925, 0.965, 0.997, 1.022, 1.042, 1.056, 1.065, 1.071, 1.073, 1.073, 1.071, 1.067, 1.062, 1.056, 1.049, 1.043, 1.036, 1.03, 1.025, 1.019, 1.015, 1.01, 1.007, 1.004, 1.001, 0.999, 0.997, 0.996, 0.995, 0.995, 0.995, 0.995, 0.995, 0.995, 0.995, 0.996, 0.996, 0.997, 0.997, 0.998, 0.998, 0.998, 0.999, 0.999, 0.999, 1);
     -moz-transition-timing-function: linear(0, 0.015, 0.057, 0.118, 0.192, 0.275, 0.362, 0.449, 0.535, 0.617, 0.693, 0.763, 0.825, 0.879, 0.925, 0.965, 0.997, 1.022, 1.042, 1.056, 1.065, 1.071, 1.073, 1.073, 1.071, 1.067, 1.062, 1.056, 1.049, 1.043, 1.036, 1.03, 1.025, 1.019, 1.015, 1.01, 1.007, 1.004, 1.001, 0.999, 0.997, 0.996, 0.995, 0.995, 0.995, 0.995, 0.995, 0.995, 0.995, 0.996, 0.996, 0.997, 0.997, 0.998, 0.998, 0.998, 0.999, 0.999, 0.999, 1);
       -o-transition-timing-function: linear(0, 0.015, 0.057, 0.118, 0.192, 0.275, 0.362, 0.449, 0.535, 0.617, 0.693, 0.763, 0.825, 0.879, 0.925, 0.965, 0.997, 1.022, 1.042, 1.056, 1.065, 1.071, 1.073, 1.073, 1.071, 1.067, 1.062, 1.056, 1.049, 1.043, 1.036, 1.03, 1.025, 1.019, 1.015, 1.01, 1.007, 1.004, 1.001, 0.999, 0.997, 0.996, 0.995, 0.995, 0.995, 0.995, 0.995, 0.995, 0.995, 0.996, 0.996, 0.997, 0.997, 0.998, 0.998, 0.998, 0.999, 0.999, 0.999, 1);
          transition-timing-function: linear(0, 0.015, 0.057, 0.118, 0.192, 0.275, 0.362, 0.449, 0.535, 0.617, 0.693, 0.763, 0.825, 0.879, 0.925, 0.965, 0.997, 1.022, 1.042, 1.056, 1.065, 1.071, 1.073, 1.073, 1.071, 1.067, 1.062, 1.056, 1.049, 1.043, 1.036, 1.03, 1.025, 1.019, 1.015, 1.01, 1.007, 1.004, 1.001, 0.999, 0.997, 0.996, 0.995, 0.995, 0.995, 0.995, 0.995, 0.995, 0.995, 0.996, 0.996, 0.997, 0.997, 0.998, 0.998, 0.998, 0.999, 0.999, 0.999, 1);
}

.mgr:checked:before {
  height: 8px;
  width: 8px;
  border-radius: 50%;
}

.mgr:focus {
  outline: none;
  box-shadow: inset 0 1px 1px rgba(255, 255, 255, 0.075), 0 0 2px #38a7ff;
}

.mgr:checked {
  border: 1px solid #555;
}

.mgr:checked:before {
  background-color: #555;
}

.mgr-primary {
  background-color: #fff;
  border: 1px solid #d7d7d7;
}

.mgr-primary:checked {
  border: 1px solid #1a6de0;
}

.mgr-primary:checked:before {
  background-color: #1a6de0;
}

.mgr-success {
  background-color: #fff;
  border: 1px solid #d7d7d7;
}

.mgr-success:checked {
  border: 1px solid #5cb85c;
}

.mgr-success:checked:before {
  background-color: #5cb85c;
}

.mgr-info {
  background-color: #fff;
  border: 1px solid #d7d7d7;
}

.mgr-info:checked {
  border: 1px solid #5bc0de;
}

.mgr-info:checked:before {
  background-color: #5bc0de;
}

.mgr-warning {
  background-color: #fff;
  border: 1px solid #d7d7d7;
}

.mgr-warning:checked {
  border: 1px solid #f0ad4e;
}

.mgr-warning:checked:before {
  background-color: #f0ad4e;
}

.mgr-danger {
  background-color: #fff;
  border: 1px solid #d7d7d7;
}

.mgr-danger:checked {
  border: 1px solid #cf3b3a;
}

.mgr-danger:checked:before {
  background-color: #cf3b3a;
}

.mgr-lg {
  width: 24px;
  height: 24px;
}

.mgr-lg:checked:before {
  height: 16px;
  width: 16px;
  border-radius: 50%;
}

.mgc-switch {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  position: relative;
  width: 41px;
  height: 24px;
  border: 1px solid #dfdfdf;
  outline: 0;
  border-radius: 16px;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  background: #dfdfdf;
}

.mgc-switch:before,
.mgc-switch:after {
  content: " ";
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 15px;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  -o-transition: -o-transform 0.3s;
  -moz-transition: transform 0.3s, -moz-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s, -moz-transform 0.3s, -o-transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.mgc-switch:before {
  width: 39px;
  height: 22px;
  background-color: #fdfdfd;
}

.mgc-switch:after {
  width: 22px;
  height: 22px;
  background-color: #fff;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}

.mgc-switch:checked {
  border-color: #04be02;
  background-color: #04be02;
}

.mgc-switch:checked:before {
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
   -ms-transform: scale(0);
    -o-transform: scale(0);
       transform: scale(0);
}

.mgc-switch:checked:after {
  -webkit-transform: translateX(17px);
  -moz-transform: translateX(17px);
   -ms-transform: translateX(17px);
    -o-transform: translateX(17px);
       transform: translateX(17px);
}

.mgc-sm.mgc-switch {
  height: 20px;
  width: 32px;
}

.mgc-sm.mgc-switch:before {
  height: 18px;
  width: 30px;
}

.mgc-sm.mgc-switch:after {
  width: 18px;
  height: 18px;
}

.mgc-sm.mgc-switch:checked:after {
  top: 0;
  left: 2px;
  -webkit-transform: translateX(10px);
  -moz-transform: translateX(10px);
   -ms-transform: translateX(10px);
    -o-transform: translateX(10px);
       transform: translateX(10px);
}

.mgc-lg.mgc-switch {
  height: 32px;
  width: 52px;
}

.mgc-lg.mgc-switch:before {
  height: 30px;
  width: 50px;
}

.mgc-lg.mgc-switch:after {
  width: 30px;
  height: 30px;
}

.mgc-lg.mgc-switch:checked:after {
  top: 0;
  left: 2px;
  -webkit-transform: translateX(18px);
  -moz-transform: translateX(18px);
   -ms-transform: translateX(18px);
    -o-transform: translateX(18px);
       transform: translateX(18px);
}

.form-style input[type=text],
.form-style input[type=date],
.form-style input[type=datetime-local],
.form-style input[type=datetime],
.form-style input[type=email],
.form-style input[type=number],
.form-style input[type=search],
.form-style input[type=time],
.form-style input[type=url],
.form-style input[type=tel],
.form-style input[type=password],
.form-style textarea,
.form-style select {
  width: 100%;
  height: 44px;
  padding: 0.625rem 1rem 0.625rem 1rem;
  font-size: 0.875rem;
  border-radius: 0.5rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: #fff;
  box-shadow: var(--shadow-theme-xs);
  outline: none;
  -webkit-transition: border-color 0.15s ease, box-shadow 0.15s ease;
  -o-transition: border-color 0.15s ease, box-shadow 0.15s ease;
  -moz-transition: border-color 0.15s ease, box-shadow 0.15s ease;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
  border: 1px solid #d1d5db;
  color: #1f2937;
}

.form-style textarea {
  min-height: 120px;
}

.form-style input[type=text]:focus,
.form-style input[type=date]:focus,
.form-style input[type=datetime-local]:focus,
.form-style input[type=datetime]:focus,
.form-style input[type=email]:focus,
.form-style input[type=number]:focus,
.form-style input[type=search]:focus,
.form-style input[type=time]:focus,
.form-style input[type=url]:focus,
.form-style input[type=tel]:focus,
.form-style input[type=password]:focus,
.form-style textarea:focus,
.form-style select:focus {
  border-color: #47a9fd;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.form-style input[type=submit],
.form-style input[type=button] {
  width: 100%;
}

.form-style.error input[type=text],
.form-style.error input[type=date],
.form-style.error input[type=datetime-local],
.form-style.error input[type=datetime],
.form-style.error input[type=email],
.form-style.error input[type=number],
.form-style.error input[type=search],
.form-style.error input[type=time],
.form-style.error input[type=url],
.form-style.error input[type=password],
.form-style.error input[type=tel],
.form-style.error textarea,
.form-style.error select {
  box-shadow: 0 0 5px #fa5353;
  border: 1px solid #fa5353;
}

.form-style.error p {
  color: #fa5353;
  font-size: 13px;
}

.form-style input[type=text]:disabled,
.form-style input[type=date]:disabled,
.form-style input[type=datetime-local]:disabled,
.form-style input[type=datetime]:disabled,
.form-style input[type=email]:disabled,
.form-style input[type=number]:disabled,
.form-style input[type=search]:disabled,
.form-style input[type=time]:disabled,
.form-style input[type=url]:disabled,
.form-style textarea:disabled,
.form-style select:disabled {
  background-color: #eee;
  border: 1px solid #d1d5db;
}

.form-style .icon-down {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: url(../images/public/ic_arr_g0.svg) no-repeat right 0.5em center;
  background-color: #fff;
  -o-background-size: 16px;
     background-size: 16px;
}

select::-ms-expand {
  display: none;
}

* {
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body {
  background: #000711;
  font-family: "Noto Sans TC", "Helvetica", "Microsoft JhengHei", Verdana, Arial, sans-serif;
  color: #fff;
  font-size: 16px;
  font-weight: normal;
  line-height: 1.5;
  position: relative;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

p {
  margin: 0;
}

a {
  color: #333;
  margin: 0px;
  text-decoration: none;
}

a:focus,
a:hover {
  color: #d3970e;
}

a:focus {
  outline: none !important;
  text-decoration: none;
}

button:focus {
  outline: none !important;
  text-decoration: none;
}

a:hover {
  text-decoration: none;
}

em {
  font-style: normal;
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 500;
  line-height: 1.5;
  margin: 0;
  color: #333;
}

:after,
:before {
  -moz-box-sizing: border-box;
       box-sizing: border-box;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none !important;
  margin: 0;
}

select::-ms-expand {
  display: none;
}

ul,
ol,
li {
  margin: 0;
  padding: 0;
  list-style: none;
}

.circle_box {
  border-radius: 999em;
}

.clear {
  clear: both;
}

/* ------------------------------------ */
.mx-8 {
  margin: 0 8px !important;
}

.mx-12 {
  margin: 0 12px !important;
}

.mx-16 {
  margin: 0 16px !important;
}

.mx-24 {
  margin: 0 24px !important;
}

.mt-8 {
  margin-top: 8px !important;
}

.mt-12 {
  margin-top: 12px !important;
}

.mt-16 {
  margin-top: 16px !important;
}

.mt-20 {
  margin-top: 20px !important;
}

.mt-24 {
  margin-top: 24px !important;
}

.mt-32 {
  margin-top: 32px !important;
}

.mt-36 {
  margin-top: 36px !important;
}

.mt-40 {
  margin-top: 40px !important;
}

.mt-44 {
  margin-top: 44px !important;
}

.mt-48 {
  margin-top: 48px !important;
}

.mt-60 {
  margin-top: 60px !important;
}

.mb-0 {
  margin-bottom: 0px !important;
}

.mb-8 {
  margin-bottom: 8px !important;
}

.mb-12 {
  margin-bottom: 12px !important;
}

.mb-16 {
  margin-bottom: 16px !important;
}

.mb-20 {
  margin-bottom: 20px !important;
}

.mb-24 {
  margin-bottom: 24px !important;
}

.mb-28 {
  margin-bottom: 28px !important;
}

.mb-32 {
  margin-bottom: 32px !important;
}

.mb-36 {
  margin-bottom: 36px !important;
}

.mb-40 {
  margin-bottom: 40px !important;
}

.mb-44 {
  margin-bottom: 44px !important;
}

.mb-48 {
  margin-bottom: 48px !important;
}

.ml-0 {
  margin-left: 0px !important;
}

.ml-8 {
  margin-left: 8px !important;
}

.ml-12 {
  margin-left: 12px !important;
}

.ml-16 {
  margin-left: 16px !important;
}

.ml-20 {
  margin-left: 20px !important;
}

.ml-24 {
  margin-left: 24px !important;
}

.mr-0 {
  margin-right: 0px !important;
}

.mr-8 {
  margin-right: 8px !important;
}

.mr-12 {
  margin-right: 12px !important;
}

.mr-16 {
  margin-right: 16px !important;
}

.mr-20 {
  margin-right: 20px !important;
}

.mr-24 {
  margin-right: 24px !important;
}

.px-8 {
  padding: 0 8px !important;
}

.px-12 {
  padding: 0 12px !important;
}

.px-16 {
  padding: 0 16px !important;
}

.px-24 {
  padding: 0 24px !important;
}

.pt-8 {
  padding-top: 8px !important;
}

.pt-12 {
  padding-top: 12px !important;
}

.pt-16 {
  padding-top: 16px !important;
}

.pt-20 {
  padding-top: 20px !important;
}

.pt-24 {
  padding-top: 24px !important;
}

.pt-28 {
  padding-top: 28px !important;
}

.pt-32 {
  padding-top: 32px !important;
}

.pt-36 {
  padding-top: 36px !important;
}

.pt-40 {
  padding-top: 40px !important;
}

.pt-44 {
  padding-top: 44px !important;
}

.pt-48 {
  padding-top: 48px !important;
}

.pb-8 {
  padding-bottom: 8px !important;
}

.pb-12 {
  padding-bottom: 12px !important;
}

.pb-16 {
  padding-bottom: 16px !important;
}

.pb-20 {
  padding-bottom: 20px !important;
}

.pb-24 {
  padding-bottom: 24px !important;
}

.pb-28 {
  padding-bottom: 28px !important;
}

.pb-32 {
  padding-bottom: 32px !important;
}

.pb-36 {
  padding-bottom: 36px !important;
}

.pb-40 {
  padding-bottom: 40px !important;
}

.pb-44 {
  padding-bottom: 44px !important;
}

.pb-48 {
  padding-bottom: 48px !important;
}

.js-modal-open {
  cursor: pointer;
}

.img-rwd {
  max-width: 100%;
  height: auto;
  vertical-align: top;
}

.hide {
  display: none;
}

.text-l {
  text-align: left;
}

.text-c {
  text-align: center;
  display: block !important;
}

.text-r {
  text-align: right;
}

.p-red {
  color: #fa5353;
}

.p-green {
  color: #5cb85c;
}

.main-top {
  margin-top: 72px;
  -webkit-transition: margin-top 0.4s;
  -o-transition: margin-top 0.4s;
  -moz-transition: margin-top 0.4s;
  transition: margin-top 0.4s;
}

@media (max-width: 1000px) {
  .main-top {
    margin-top: 72px;
  }
}
.mainnav {
  position: sticky;
  top: 72px;
  z-index: 180;
  width: 100%;
  background: #000000;
  margin-top: 72px;
  overflow: hidden;
  padding: 0 20px;
}

.mainnav__inner {
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  min-height: 64px;
  padding: 0 16px;
}

.mainnav__item {
  position: relative;
  display: -webkit-inline-flex;
  display: -moz-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex: 0 0 auto;
     -moz-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: auto;
  min-height: 64px;
  padding: 0 4px;
  color: #ffffff;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  white-space: nowrap;
}
.mainnav__item::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 10px;
  width: 80%;
  height: 2px;
  background: #47a9fd;
  opacity: 0;
  -webkit-transform: translateX(-50%) scaleX(0);
     -moz-transform: translateX(-50%) scaleX(0);
      -ms-transform: translateX(-50%) scaleX(0);
       -o-transform: translateX(-50%) scaleX(0);
          transform: translateX(-50%) scaleX(0);
  -webkit-transition: opacity 0.2s ease, -webkit-transform 0.2s ease;
  transition: opacity 0.2s ease, -webkit-transform 0.2s ease;
  -o-transition: opacity 0.2s ease, -o-transform 0.2s ease;
  -moz-transition: opacity 0.2s ease, transform 0.2s ease, -moz-transform 0.2s ease;
  transition: opacity 0.2s ease, transform 0.2s ease;
  transition: opacity 0.2s ease, transform 0.2s ease, -webkit-transform 0.2s ease, -moz-transform 0.2s ease, -o-transform 0.2s ease;
}
.mainnav__item:hover {
  color: #ffffff;
}
.mainnav__item:hover::after {
  opacity: 1;
  -webkit-transform: translateX(-50%) scaleX(1);
     -moz-transform: translateX(-50%) scaleX(1);
      -ms-transform: translateX(-50%) scaleX(1);
       -o-transform: translateX(-50%) scaleX(1);
          transform: translateX(-50%) scaleX(1);
}

.mainnav__item--image img {
  display: block;
  width: auto;
  height: 40px;
}

@media (max-width: 767px) {
  .mainnav__inner {
    padding: 0 12px;
  }
}
.pagenav {
  position: relative;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: flex-end;
     -moz-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 0px;
  width: min(100%, 1536px);
  margin: -80px auto 20px;
  padding: 20px 20px 0;
}
.pagenav::after {
  content: "";
  position: absolute;
  left: 20px;
  right: 20px;
  bottom: 4%;
  height: 2px;
  background: -webkit-linear-gradient(left, rgba(31, 21, 0, 0.58), rgba(212, 154, 24, 0.58), rgba(255, 216, 132, 0.58), rgba(69, 168, 255, 0.58), rgba(0, 38, 71, 0.58));
  background: -moz-linear-gradient(left, rgba(31, 21, 0, 0.58), rgba(212, 154, 24, 0.58), rgba(255, 216, 132, 0.58), rgba(69, 168, 255, 0.58), rgba(0, 38, 71, 0.58));
  background: -o-linear-gradient(left, rgba(31, 21, 0, 0.58), rgba(212, 154, 24, 0.58), rgba(255, 216, 132, 0.58), rgba(69, 168, 255, 0.58), rgba(0, 38, 71, 0.58));
  background: linear-gradient(90deg, rgba(31, 21, 0, 0.58), rgba(212, 154, 24, 0.58), rgba(255, 216, 132, 0.58), rgba(69, 168, 255, 0.58), rgba(0, 38, 71, 0.58));
}

.pagenav__item {
  position: relative;
  z-index: 1;
  display: -webkit-inline-flex;
  display: -moz-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: clamp(180px, 18vw, 244px);
  aspect-ratio: 244/80;
  color: rgba(255, 255, 255, 0.34);
  font-size: clamp(24px, 2.7vw, 28px);
  font-weight: 600;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  background-image: url("../images/pagenav_bg.svg");
  background-position: center bottom;
  background-repeat: no-repeat;
  -o-background-size: 100% 100%;
     background-size: 100% 100%;
  -webkit-transition: color 0.2s ease, -webkit-filter 0.2s ease;
  transition: color 0.2s ease, -webkit-filter 0.2s ease;
  -o-transition: color 0.2s ease, filter 0.2s ease;
  -moz-transition: color 0.2s ease, filter 0.2s ease;
  transition: color 0.2s ease, filter 0.2s ease;
  transition: color 0.2s ease, filter 0.2s ease, -webkit-filter 0.2s ease;
}
.pagenav__item:hover {
  color: #ffffff;
  -webkit-filter: brightness(1.08);
          filter: brightness(1.08);
}

.pagenav__item--regular {
  color: rgba(255, 255, 255, 0.42);
}

.pagenav__item--regular.is-active {
  color: #ffffff;
  background-image: url("../images/pagenav_ranking.svg");
}

.pagenav__item--final {
  color: rgba(91, 132, 187, 0.64);
}

.pagenav__item--final.is-active {
  color: #ffffff;
  background-image: url("../images/pagenav_final.svg");
}

@media (max-width: 640px) {
  .pagenav {
    gap: 0px;
    margin: -40px auto 0px;
    padding: 16px 24px 0;
  }
  .pagenav::after {
    left: 0px;
    right: 0px;
  }
  .pagenav__item {
    -webkit-flex: 1 1 0;
       -moz-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0;
    min-width: 0;
    width: auto;
    padding: 0 18px;
    font-size: 20px;
  }
}
.page_hero {
  width: 100%;
  min-height: 400px;
  background-image: url("../images/page_hero2.png");
  background-position: center center;
  background-repeat: no-repeat;
  -o-background-size: cover;
     background-size: cover;
}

@media (max-width: 999px) {
  .page_hero {
    min-height: 40vw;
  }
}
.page_hero2 {
  width: 100%;
  min-height: 400px;
  background-image: url("../images/page_hero1.png");
  background-position: center center;
  background-repeat: no-repeat;
  -o-background-size: cover;
     background-size: cover;
}

@media (max-width: 999px) {
  .page_hero2 {
    min-height: 40vw;
  }
}
.information {
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr);
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
  padding: 24px;
  border: 1px solid rgba(54, 114, 179, 0.68);
  border-radius: 10px;
  color: #ffffff;
  background: rgba(4, 15, 28, 0.92);
  box-shadow: inset 0 0 0 1px rgba(91, 162, 255, 0.16), 0 0 18px rgba(39, 112, 196, 0.22);
}

.information__avatar {
  width: 80px;
  aspect-ratio: 1;
  overflow: hidden;
  border: 2px solid rgba(255, 203, 75, 0.64);
  border-radius: 50%;
  background: #ffffff;
}

.information__avatar img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.information__list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px 24px;
  margin: 0;
}

.information__item {
  min-width: 0;
}

.information__item dt {
  display: -webkit-inline-flex;
  display: -moz-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 6px;
  margin: 0 0 4px;
  color: #8fb9e9;
  font-size: 15px;
  line-height: 1.5;
}

.information__item dd {
  margin: 0;
  color: #ffffff;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.35;
}

.information__btn {
  display: -webkit-inline-flex;
  display: -moz-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 40px;
  padding: 0 18px;
  border: 1px solid rgba(71, 169, 253, 0.78);
  border-radius: 6px;
  color: #d9ecff;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  background: rgba(8, 40, 78, 0.86);
  cursor: pointer;
}

.information__btn--agreed {
  gap: 8px;
  border-color: rgba(79, 210, 119, 0.75);
  color: #ffffff;
  background: -webkit-linear-gradient(top, #23b65d, #138642);
  background: -moz-linear-gradient(top, #23b65d, #138642);
  background: -o-linear-gradient(top, #23b65d, #138642);
  background: linear-gradient(180deg, #23b65d, #138642);
}

.information__icon {
  width: 18px;
  height: 18px;
}

.information-edit-btn {
  display: -webkit-inline-flex;
  display: -moz-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 24px;
  height: 24px;
  padding: 0;
  border: 1px solid rgba(71, 169, 253, 0.42);
  border-radius: 6px;
  color: #9fd2ff;
  background: rgba(8, 40, 78, 0.58);
  cursor: pointer;
  -webkit-transition: color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, -webkit-transform 0.2s ease;
  transition: color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, -webkit-transform 0.2s ease;
  -o-transition: color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, -o-transform 0.2s ease;
  -moz-transition: color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease, -moz-transform 0.2s ease;
  transition: color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
  transition: color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease, -webkit-transform 0.2s ease, -moz-transform 0.2s ease, -o-transform 0.2s ease;
}

.information-edit-btn svg {
  width: 16px;
  height: 16px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.information-edit-btn:hover,
.information-edit-btn:focus-visible {
  color: #ffffff;
  border-color: rgba(159, 210, 255, 0.8);
  box-shadow: 0 0 10px rgba(71, 169, 253, 0.32);
  -webkit-transform: translateY(-1px);
     -moz-transform: translateY(-1px);
      -ms-transform: translateY(-1px);
       -o-transform: translateY(-1px);
          transform: translateY(-1px);
}

.sharelink {
  grid-column: 1/-1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 14px;
  width: 100%;
  padding: 16px;
  border: 1px solid rgba(71, 169, 253, 0.32);
  border-radius: 10px;
  background: rgba(2, 19, 42, 0.72);
}

.sharelink__content {
  min-width: 0;
}

.sharelink__label {
  display: block;
  margin-bottom: 6px;
  color: #8fb9e9;
  font-size: 14px;
  line-height: 1.2;
}

.sharelink__url {
  display: block;
  overflow: hidden;
  color: #ffffff;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.35;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  white-space: nowrap;
}

.sharelink__copy {
  display: -webkit-inline-flex;
  display: -moz-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: 104px;
  min-height: 42px;
  padding: 8px 16px;
  border: 1px solid rgba(71, 169, 253, 0.72);
  border-radius: 8px;
  color: #bfe2ff;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.2;
  background: rgba(8, 40, 78, 0.86);
  cursor: pointer;
  -webkit-transition: border-color 0.2s ease, color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
  -o-transition: border-color 0.2s ease, color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
  -moz-transition: border-color 0.2s ease, color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
  transition: border-color 0.2s ease, color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
}

.sharelink__copy:hover,
.sharelink__copy:focus-visible {
  color: #ffffff;
  border-color: rgba(159, 210, 255, 0.86);
  box-shadow: 0 0 12px rgba(71, 169, 253, 0.28);
}

.sharelink__copied-text,
.sharelink__copy.is-copied .sharelink__copy-text {
  display: none;
}

.sharelink__copy.is-copied {
  color: #ffffff;
  border-color: rgba(79, 210, 119, 0.78);
  background: #168a46;
}

.sharelink__copy.is-copied .sharelink__copied-text {
  display: inline;
}

.score {
  grid-column: 1/-1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  width: 100%;
  margin-top: 8px;
  font-size: 0;
}

.score__card {
  min-width: 0;
  min-height: 110px;
  border: 2px solid rgba(35, 132, 221, 0.72);
  border-radius: 12px;
  background: -webkit-linear-gradient(315deg, rgba(0, 50, 94, 0.82), rgba(3, 13, 28, 0.96)), -webkit-radial-gradient(18% 50%, circle, rgba(24, 130, 255, 0.24), transparent 34%);
  background: -moz-linear-gradient(315deg, rgba(0, 50, 94, 0.82), rgba(3, 13, 28, 0.96)), -moz-radial-gradient(18% 50%, circle, rgba(24, 130, 255, 0.24), transparent 34%);
  background: -o-linear-gradient(315deg, rgba(0, 50, 94, 0.82), rgba(3, 13, 28, 0.96)), -o-radial-gradient(18% 50%, circle, rgba(24, 130, 255, 0.24), transparent 34%);
  background: linear-gradient(135deg, rgba(0, 50, 94, 0.82), rgba(3, 13, 28, 0.96)), radial-gradient(circle at 18% 50%, rgba(24, 130, 255, 0.24), transparent 34%);
  box-shadow: inset 0 0 18px rgba(0, 133, 255, 0.16);
}

.score__card {
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr);
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 16px;
  padding: 16px 20px;
}

.score__card--gold {
  border-color: rgba(229, 165, 32, 0.82);
  background: -webkit-linear-gradient(315deg, rgba(63, 42, 7, 0.9), rgba(12, 15, 19, 0.96)), -webkit-radial-gradient(18% 50%, circle, rgba(255, 184, 40, 0.24), transparent 34%);
  background: -moz-linear-gradient(315deg, rgba(63, 42, 7, 0.9), rgba(12, 15, 19, 0.96)), -moz-radial-gradient(18% 50%, circle, rgba(255, 184, 40, 0.24), transparent 34%);
  background: -o-linear-gradient(315deg, rgba(63, 42, 7, 0.9), rgba(12, 15, 19, 0.96)), -o-radial-gradient(18% 50%, circle, rgba(255, 184, 40, 0.24), transparent 34%);
  background: linear-gradient(135deg, rgba(63, 42, 7, 0.9), rgba(12, 15, 19, 0.96)), radial-gradient(circle at 18% 50%, rgba(255, 184, 40, 0.24), transparent 34%);
  box-shadow: inset 0 0 18px rgba(255, 190, 52, 0.18);
}

.score__icon {
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  border: 1px solid rgba(76, 166, 255, 0.28);
  border-radius: 50%;
  color: #a9d4ff;
  background: rgba(7, 39, 75, 0.86);
  box-shadow: inset 0 0 12px rgba(89, 172, 255, 0.16);
}

.score__card--gold .score__icon {
  color: #ffd36a;
  border-color: rgba(255, 205, 86, 0.3);
  background: rgba(78, 51, 9, 0.86);
  box-shadow: inset 0 0 12px rgba(255, 197, 65, 0.18);
}

.score__icon svg {
  width: 32px;
  height: 32px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.score__icon-svg--fill {
  fill: currentColor !important;
  stroke: none !important;
}

.score__content {
  min-width: 0;
}

.score__content span,
.score__cta span {
  display: block;
  color: #b8c5dd;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.25;
}

.score__content strong,
.score__cta strong {
  display: block;
  margin-top: 6px;
  color: #ffffff;
  font-size: clamp(24px, 4vw, 32px);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0;
  text-shadow: 0 0 10px rgba(163, 204, 255, 0.28);
}

.score__card--gold .score__content strong {
  color: #ffc84f;
}

.score__value--positive {
  color: #ff4f58 !important;
}

.score__cta {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-color: rgba(255, 197, 54, 0.95);
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  background: -webkit-linear-gradient(top, rgba(7, 23, 48, 0.98), rgba(3, 13, 30, 0.98));
  background: -moz-linear-gradient(top, rgba(7, 23, 48, 0.98), rgba(3, 13, 30, 0.98));
  background: -o-linear-gradient(top, rgba(7, 23, 48, 0.98), rgba(3, 13, 30, 0.98));
  background: linear-gradient(180deg, rgba(7, 23, 48, 0.98), rgba(3, 13, 30, 0.98));
  box-shadow: inset 0 0 16px rgba(255, 204, 72, 0.08), 0 0 14px rgba(255, 195, 48, 0.34);
}

.score__cta span {
  color: #ffffff;
  font-size: 28px;
  font-weight: 500;
}

.score__cta strong {
  color: #ffca45;
  font-size: clamp(30px, 4vw, 46px);
}

@media (max-width: 999px) {
  .score {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }
}
@media (max-width: 767px) {
  .information {
    grid-template-columns: 1fr;
    justify-items: center;
    gap: 18px;
    padding: 12px;
    text-align: center;
  }
  .information__avatar {
    width: 112px;
  }
  .information__list {
    width: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .information__item--actions dd {
    -webkit-justify-content: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .sharelink {
    grid-template-columns: 1fr;
  }
  .sharelink__copy {
    width: 100%;
  }
  .score__card {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    min-height: 108px;
    padding: 12px;
  }
  .score__icon {
    display: none;
  }
  .score__content span,
  .score__cta span {
    font-size: 15px;
  }
  .score__content strong,
  .score__cta strong {
    font-size: 22px;
  }
}
.ticket {
  position: relative;
  padding: 12px 16px;
  overflow: hidden;
  border: 1px solid rgba(54, 114, 179, 0.68);
  border-radius: 10px;
  color: transparent;
  font-size: 0;
  background: -webkit-linear-gradient(315deg, rgba(0, 44, 84, 0.86), rgba(3, 13, 28, 0.96)), -webkit-radial-gradient(14% 18%, circle, rgba(255, 199, 70, 0.18), transparent 34%);
  background: -moz-linear-gradient(315deg, rgba(0, 44, 84, 0.86), rgba(3, 13, 28, 0.96)), -moz-radial-gradient(14% 18%, circle, rgba(255, 199, 70, 0.18), transparent 34%);
  background: -o-linear-gradient(315deg, rgba(0, 44, 84, 0.86), rgba(3, 13, 28, 0.96)), -o-radial-gradient(14% 18%, circle, rgba(255, 199, 70, 0.18), transparent 34%);
  background: linear-gradient(135deg, rgba(0, 44, 84, 0.86), rgba(3, 13, 28, 0.96)), radial-gradient(circle at 14% 18%, rgba(255, 199, 70, 0.18), transparent 34%);
  box-shadow: inset 0 0 0 1px rgba(91, 162, 255, 0.16), 0 0 18px rgba(39, 112, 196, 0.22);
  margin-bottom: 12px;
}

.ticket__head {
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr);
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 16px;
}

.ticket__icon {
  display: grid;
  place-items: center;
  width: 88px;
  height: 88px;
  border: 1px solid rgba(71, 169, 253, 0.72);
  border-radius: 50%;
  background: rgba(31, 30, 49, 0.84);
  box-shadow: inset 0 0 16px rgba(66, 233, 255, 0.2);
}

.ticket__icon img {
  display: block;
  width: 58px;
  height: 58px;
  -o-object-fit: contain;
     object-fit: contain;
}

.ticket__head p {
  margin: 0;
  color: #b8c5dd;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.25;
  margin-bottom: 8px;
}

.ticket__head strong {
  display: block;
  margin-top: 4px;
  color: #ffca45;
  font-size: clamp(30px, 4vw, 44px);
  font-weight: 800;
  line-height: 1;
}

.ticket__list {
  display: grid;
  gap: 8px;
  margin: 0;
}

.ticket__item dt {
  margin: 0 0 6px;
  color: #8fb9e9;
  font-size: 14px;
  line-height: 1.25;
}

.ticket__item dd {
  display: grid;
  grid-template-columns: 60px minmax(0, 1fr) 40px;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  margin: 0;
}
.ticket__item dd p {
  color: #8fb9e9;
  font-size: 14px;
}

.ticket__value {
  display: block;
  min-width: 0;
  min-height: 40px;
  padding: 10px 12px;
  overflow: hidden;
  border: 1px solid rgba(71, 169, 253, 0.32);
  border-radius: 6px;
  color: #ffffff;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.25;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  white-space: nowrap;
  background: rgba(2, 19, 42, 0.78);
}

a.ticket__value {
  color: #8fc9ff;
  text-decoration: none;
}

.tab3 {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
  width: 100%;
  margin: 0 0 24px;
  padding: 6px;
  border: 1px solid rgba(71, 169, 253, 0.42);
  border-radius: 10px;
  background: -webkit-linear-gradient(top, rgba(3, 24, 54, 0.92), rgba(1, 10, 25, 0.92));
  background: -moz-linear-gradient(top, rgba(3, 24, 54, 0.92), rgba(1, 10, 25, 0.92));
  background: -o-linear-gradient(top, rgba(3, 24, 54, 0.92), rgba(1, 10, 25, 0.92));
  background: linear-gradient(180deg, rgba(3, 24, 54, 0.92), rgba(1, 10, 25, 0.92));
  box-shadow: inset 0 0 18px rgba(71, 169, 253, 0.1), 0 0 18px rgba(71, 169, 253, 0.12);
}

.tab3 button {
  position: relative;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: 0;
  min-height: 44px;
  padding: 8px;
  border: 1px solid transparent;
  border-radius: 7px;
  color: #9fc6ee;
  font-size: clamp(16px, 1.6vw, 18px);
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  letter-spacing: 0.04em;
  white-space: nowrap;
  background: rgba(2, 17, 39, 0.58);
  cursor: pointer;
  -webkit-transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease, -webkit-transform 0.2s ease;
  transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease, -webkit-transform 0.2s ease;
  -o-transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease, -o-transform 0.2s ease;
  -moz-transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease, -moz-transform 0.2s ease;
  transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
  transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease, -webkit-transform 0.2s ease, -moz-transform 0.2s ease, -o-transform 0.2s ease;
}

.tab3 button:hover,
.tab3 button:focus-visible {
  color: #ffffff;
  border-color: rgba(71, 169, 253, 0.58);
  background: rgba(9, 52, 101, 0.72);
  box-shadow: inset 0 0 14px rgba(71, 169, 253, 0.1);
}

.tab3 button.is-active {
  color: #07101c;
  border-color: rgba(255, 204, 98, 0.88);
  background: -webkit-linear-gradient(top, #ffe08a, #ffba3d);
  background: -moz-linear-gradient(top, #ffe08a, #ffba3d);
  background: -o-linear-gradient(top, #ffe08a, #ffba3d);
  background: linear-gradient(180deg, #ffe08a, #ffba3d);
  box-shadow: 0 0 14px rgba(255, 195, 81, 0.38), inset 0 1px 0 rgba(255, 255, 255, 0.38);
  -webkit-transform: translateY(-1px);
     -moz-transform: translateY(-1px);
      -ms-transform: translateY(-1px);
       -o-transform: translateY(-1px);
          transform: translateY(-1px);
}

.tab3_content1[hidden] {
  display: none;
}

.exchange-panel {
  font-size: 0;
}

.exchange-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  font-size: 16px;
}

.exchange-card {
  position: relative;
  aspect-ratio: 781/252;
  min-height: 168px;
  overflow: hidden;
  background-image: url("../images/exchange_bg.png");
  background-position: center;
  background-repeat: no-repeat;
  -o-background-size: 100% 100%;
     background-size: 100% 100%;
}

.exchange-card__exchange {
  position: absolute;
  left: 5.4%;
  top: 14.5%;
  z-index: 1;
  margin: 0;
  color: #4aa7ff;
  font-size: clamp(16px, 1.42vw, 20px);
  font-weight: 600;
  line-height: 1;
}

.exchange-card__rank {
  position: absolute;
  left: 4.2%;
  bottom: 16%;
  width: 16%;
}

.exchange-card__rank img,
.exchange-card__avatar img {
  display: block;
  width: 100%;
  height: 100%;
}

.exchange-card__rank img {
  height: auto;
  -webkit-filter: drop-shadow(0 0 10px rgba(255, 199, 56, 0.55));
          filter: drop-shadow(0 0 10px rgba(255, 199, 56, 0.55));
}

.exchange-card__avatar {
  position: absolute;
  left: 24%;
  top: 18%;
  display: grid;
  place-items: center;
  width: 18%;
  aspect-ratio: 1;
  border: 2px solid rgba(255, 207, 70, 0.78);
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 0 18px rgba(255, 200, 52, 0.42), inset 0 0 14px rgba(255, 221, 90, 0.25);
  overflow: hidden;
}

.exchange-card__avatar img {
  -o-object-fit: cover;
     object-fit: cover;
}

.exchange-card__content {
  position: absolute;
  left: 46%;
  right: 6%;
  top: 16%;
  min-width: 0;
}

.exchange-card__name {
  display: block;
  max-width: 100%;
  overflow: hidden;
  margin: 0 0 0.32em;
  color: #ffe08a;
  font-size: clamp(18px, 2.5vw, 26px);
  font-weight: 600;
  line-height: 1.05;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  white-space: nowrap;
  text-shadow: 0 0 10px rgba(255, 195, 81, 0.46);
}

.exchange-card__team {
  display: inline-block;
  max-width: 70%;
  min-width: 120px;
  margin: 0 0 1em;
  padding: 5px 0;
  overflow: hidden;
  color: #ffffff;
  font-size: clamp(14px, 1.4vw, 16px);
  font-weight: 600;
  line-height: 1.15;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  white-space: nowrap;
  background: rgba(10, 13, 18, 0.88);
}

.exchange-card__stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0;
  color: #d7e3f2;
}

.exchange-card__stats div {
  min-width: 0;
  padding-right: 10px;
}

.exchange-card__stats div + div {
  padding-left: 18px;
  border-left: 1px solid rgba(0, 137, 255, 0.56);
}

.exchange-card__stats dt {
  margin: 0 0 0.2em;
  color: #c8e8ff;
  font-size: clamp(14px, 1.1vw, 16px);
  line-height: 1.15;
  white-space: nowrap;
}

.exchange-card__stats dd {
  margin: 0;
  color: #dce5f4;
  font-size: clamp(16px, 2.05vw, 24px);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.05em;
  white-space: nowrap;
}

@media (max-width: 1100px) {
  .exchange-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 767px) {
  .tab3 {
    grid-template-columns: repeat(5, minmax(88px, 1fr));
    gap: 6px;
    padding: 5px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .tab3 button {
    min-height: 40px;
    padding: 8px 6px;
    font-size: 14px;
    line-height: 1.25;
    white-space: nowrap;
  }
  .exchange-grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }
}
@media (max-width: 560px) {
  .exchange-grid {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
  }
  .exchange-card {
    -moz-box-sizing: border-box;
         box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    min-height: 220px;
    aspect-ratio: auto;
    -o-background-size: 100% 100%;
       background-size: 100% 100%;
    background-image: url("../images/exchange_bg2.png");
  }
  .exchange-card__exchange {
    left: 7%;
    top: 10%;
    font-size: clamp(14px, 4vw, 18px);
  }
  .exchange-card__rank {
    right: 6%;
    bottom: 10%;
    left: auto;
    top: auto;
    width: 20%;
  }
  .exchange-card__avatar {
    left: 8%;
    top: 34%;
    width: 25%;
  }
  .exchange-card__content {
    left: 40%;
    right: 6%;
    top: 18%;
  }
  .exchange-card__name {
    font-size: clamp(18px, 5vw, 22px);
  }
  .exchange-card__team {
    max-width: 100%;
    min-width: 0;
    margin-bottom: 0.7em;
  }
  .exchange-card__stats {
    grid-template-columns: 1fr;
    gap: 8px;
  }
  .exchange-card__stats div {
    padding-right: 0;
  }
  .exchange-card__stats div + div {
    padding-left: 0;
    border-left: 0;
  }
  .exchange-card__stats dd {
    font-size: clamp(16px, 5vw, 22px);
    letter-spacing: 0.02em;
  }
}
.ticket__copy,
.ticket__link {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border: 1px solid rgba(71, 169, 253, 0.72);
  border-radius: 6px;
  color: #bfe2ff;
  background: rgba(8, 40, 78, 0.86);
  cursor: pointer;
}

.ticket__copy svg,
.ticket__link svg {
  width: 21px;
  height: 21px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ticket__link:hover,
.ticket__link:focus-visible {
  color: #ffffff;
  border-color: rgba(143, 201, 255, 0.92);
  background: rgba(23, 80, 142, 0.92);
}

.ticket__copy-icon--check {
  display: none;
}

.ticket__copy.is-copied .ticket__copy-icon--copy {
  display: none;
}

.ticket__copy.is-copied .ticket__copy-icon--check {
  display: block;
}

.ticket__copy.is-copied {
  border-color: rgba(79, 210, 119, 0.78);
  color: #ffffff;
  background: #168a46;
}

@media (max-width: 767px) {
  .ticket {
    padding: 18px;
  }
  .ticket__head {
    grid-template-columns: minmax(0, 1fr);
    gap: 14px;
  }
  .ticket__icon {
    display: none;
  }
  .ticket__icon img {
    width: 38px;
    height: 38px;
  }
}
.award {
  display: grid;
  gap: 16px;
  color: transparent;
  font-size: 0;
}

.award__card {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr) auto;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 16px;
  min-height: 86px;
  padding: 17px 20px;
  border: 2px solid rgba(229, 165, 32, 0.86);
  border-radius: 10px;
  color: #ffffff;
  background: -webkit-linear-gradient(315deg, rgba(68, 45, 8, 0.94), rgba(12, 15, 19, 0.98)), -webkit-radial-gradient(12% 50%, circle, rgba(255, 195, 50, 0.24), transparent 36%);
  background: -moz-linear-gradient(315deg, rgba(68, 45, 8, 0.94), rgba(12, 15, 19, 0.98)), -moz-radial-gradient(12% 50%, circle, rgba(255, 195, 50, 0.24), transparent 36%);
  background: -o-linear-gradient(315deg, rgba(68, 45, 8, 0.94), rgba(12, 15, 19, 0.98)), -o-radial-gradient(12% 50%, circle, rgba(255, 195, 50, 0.24), transparent 36%);
  background: linear-gradient(135deg, rgba(68, 45, 8, 0.94), rgba(12, 15, 19, 0.98)), radial-gradient(circle at 12% 50%, rgba(255, 195, 50, 0.24), transparent 36%);
  box-shadow: inset 0 0 18px rgba(255, 190, 52, 0.16), 0 0 14px rgba(255, 195, 48, 0.18);
}

.award__icon {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  border: 1px solid rgba(255, 210, 94, 0.42);
  border-radius: 50%;
  color: #ffd36a;
  background: rgba(78, 51, 9, 0.86);
  box-shadow: inset 0 0 12px rgba(255, 197, 65, 0.18);
}

.award__icon svg {
  width: 30px;
  height: 30px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.award__card strong,
.award__name {
  overflow: hidden;
  color: #ffffff;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.25;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  white-space: nowrap;
}

.award__name {
  display: grid;
  gap: 2px;
}

.award__name span:first-child {
  font-weight: normal;
  color: #d3a175;
}
.award__name span {
  overflow: hidden;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  white-space: nowrap;
}

.award__amount {
  color: #ffca45;
  font-size: 24px;
  font-weight: 900;
  line-height: 1;
  white-space: nowrap;
}

@media (max-width: 767px) {
  .award__card {
    grid-template-columns: 48px minmax(0, 1fr) auto;
    gap: 12px;
    min-height: 76px;
    padding: 14px;
  }
  .award__icon {
    width: 46px;
    height: 46px;
  }
  .award__icon svg {
    width: 26px;
    height: 26px;
  }
  .award__card strong,
  .award__name {
    font-size: 17px;
  }
  .award__amount {
    font-size: 20px;
  }
}
.page_tab1 {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  width: min(100% - 32px, 680px);
  aspect-ratio: 3237/486;
  margin: 40px auto 32px;
  background-image: url("../images/page_tab1_a.png");
  background-position: center center;
  background-repeat: no-repeat;
  -o-background-size: contain;
     background-size: contain;
}

.page_tab1.is-tab2 {
  background-image: url("../images/page_tab1_b.png");
}

.page_tab2 {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  width: min(100% - 32px, 1200px);
  aspect-ratio: 1200/99;
  margin: 40px auto 32px;
  background-image: url("../images/page_tab2_a.png");
  background-position: center center;
  background-repeat: no-repeat;
  -o-background-size: contain;
     background-size: contain;
}

.page_tab2.is-tab2 {
  background-image: url("../images/page_tab2_b.png");
}

.page_tab2.is-tab3 {
  background-image: url("../images/page_tab2_c.png");
}

.page_tab2__scroller {
  width: 100%;
}

.page_tab2__button {
  -webkit-flex: 1 1 33.333%;
     -moz-box-flex: 1;
      -ms-flex: 1 1 33.333%;
          flex: 1 1 33.333%;
  min-width: 0;
  border: 0;
  padding: 0;
  overflow: hidden;
  color: transparent;
  background: transparent;
  cursor: pointer;
}

.page_tab1__button {
  -webkit-flex: 1 1 50%;
     -moz-box-flex: 1;
      -ms-flex: 1 1 50%;
          flex: 1 1 50%;
  min-width: 0;
  border: 0;
  padding: 0;
  overflow: hidden;
  color: transparent;
  background: transparent;
  cursor: pointer;
}

.tab1_content1,
.tab1_content2,
.tab2_content1,
.tab2_content2,
.tab2_content3 {
  display: none;
}

.tab1_content1.is-active,
.tab1_content2.is-active,
.tab2_content1.is-active,
.tab2_content2.is-active,
.tab2_content3.is-active {
  display: block;
}

.camp-toggle {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 12px;
  margin: 0 auto;
}

.camp-toggle__button {
  min-width: 132px;
  min-height: 44px;
  padding: 0 28px;
  border: 1px solid rgba(71, 169, 253, 0.58);
  border-radius: 99em;
  color: #b9dcff;
  font-size: 18px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.08em;
  background: rgba(4, 27, 61, 0.82);
  cursor: pointer;
  box-shadow: inset 0 0 14px rgba(71, 169, 253, 0.14);
  -webkit-transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease, -webkit-transform 0.2s ease;
  transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease, -webkit-transform 0.2s ease;
  -o-transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease, -o-transform 0.2s ease;
  -moz-transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease, -moz-transform 0.2s ease;
  transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
  transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease, -webkit-transform 0.2s ease, -moz-transform 0.2s ease, -o-transform 0.2s ease;
}

.camp-toggle__button:hover,
.camp-toggle__button:focus-visible {
  color: #ffffff;
  border-color: rgba(116, 202, 255, 0.82);
  background: rgba(9, 52, 101, 0.86);
  box-shadow: inset 0 0 16px rgba(71, 169, 253, 0.22), 0 0 12px rgba(71, 169, 253, 0.22);
}

.camp-toggle__button.is-active {
  color: #07101c;
  border-color: rgba(255, 204, 98, 0.9);
  background: -webkit-linear-gradient(top, #ffe08a, #ffba3d);
  background: -moz-linear-gradient(top, #ffe08a, #ffba3d);
  background: -o-linear-gradient(top, #ffe08a, #ffba3d);
  background: linear-gradient(180deg, #ffe08a, #ffba3d);
  box-shadow: 0 0 14px rgba(255, 195, 81, 0.38), inset 0 1px 0 rgba(255, 255, 255, 0.38);
  -webkit-transform: translateY(-1px);
     -moz-transform: translateY(-1px);
      -ms-transform: translateY(-1px);
       -o-transform: translateY(-1px);
          transform: translateY(-1px);
}

@media (max-width: 580px) {
  .page_tab1 {
    width: -webkit-calc(100% - 12px);
    width: -moz-calc(100% - 12px);
    width: calc(100% - 12px);
    margin: 24px auto 20px;
  }
  .page_tab2__scroller {
    width: 100vw;
    margin-left: -webkit-calc(50% - 50vw);
    margin-left: -moz-calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
    overflow-x: scroll;
    padding: 0px 12px 0px;
    -webkit-overflow-scrolling: touch;
  }
  .page_tab2 {
    width: 528px;
    height: 42px;
    margin: 0;
    overflow: auto;
    background-position: left center;
    -o-background-size: cover;
       background-size: cover;
  }
  .camp-toggle {
    gap: 8px;
    margin-bottom: 20px;
  }
  .camp-toggle__button {
    -webkit-flex: 1 1 0;
       -moz-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0;
    min-width: 0;
    min-height: 42px;
    padding: 0 16px;
    font-size: 16px;
  }
}
.rank {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  -webkit-align-items: end;
     -moz-box-align: end;
      -ms-flex-align: end;
          align-items: end;
  gap: clamp(14px, 2vw, 28px);
  margin: clamp(24px, 4vw, 56px) auto;
}

.rank__card {
  position: relative;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-justify-content: flex-end;
     -moz-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  aspect-ratio: 880/542;
  min-width: 0;
  padding: 14.5% 11% 8%;
  color: #ffffff;
  background-position: center center;
  background-repeat: no-repeat;
  -o-background-size: 100% 100%;
     background-size: 100% 100%;
}

.rank__card--first {
  -webkit-order: 2;
     -moz-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  -webkit-transform: translateY(-32px);
     -moz-transform: translateY(-32px);
      -ms-transform: translateY(-32px);
       -o-transform: translateY(-32px);
          transform: translateY(-32px);
  background-image: url("../images/rank1.png");
}

.rank__card--second {
  -webkit-order: 1;
     -moz-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  background-image: url("../images/rank2.png");
}

.rank__card--third {
  -webkit-order: 3;
     -moz-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
  background-image: url("../images/rank3.png");
}

.rank__avatar {
  position: absolute;
  left: 10.5%;
  top: 22%;
  display: grid;
  place-items: center;
  width: 22%;
  aspect-ratio: 1;
  border: 2px solid rgba(255, 207, 70, 0.72);
  border-radius: 50%;
  color: #ffd65a;
  font-size: clamp(28px, 3.6vw, 52px);
  font-weight: 800;
  background: #fff;
  box-shadow: 0 0 18px rgba(255, 200, 52, 0.35);
  overflow: hidden;
}
.rank__avatar img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.rank__profile {
  position: absolute;
  left: 38%;
  top: 26%;
  min-width: 0;
}

.rank__name {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  margin: 0 0 0.42em;
  font-size: clamp(18px, 3.1vw, 26px);
  font-weight: 600;
  line-height: 1.08;
  color: #fff;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.95);
  padding-right: 12px;
}

.rank__team {
  overflow: hidden;
  white-space: nowrap;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  margin: 0;
  font-size: clamp(16px, 1.6vw, 20px);
  line-height: 1.2;
}

.rank__stats {
  position: absolute;
  width: 78%;
  bottom: 0;
  left: 50%;
  -webkit-transform: translate(-50%, -15%);
     -moz-transform: translate(-50%, -15%);
      -ms-transform: translate(-50%, -15%);
       -o-transform: translate(-50%, -15%);
          transform: translate(-50%, -15%);
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0;
}

.rank__stat:first-child {
  border-right: 1px solid #333;
}
.rank__stat {
  -webkit-flex: 1;
     -moz-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
  padding: 0 6%;
  text-align: center;
}

.rank__stat dt {
  margin: 0 0 0.18em;
  color: #ffd65a;
  font-size: 16px;
  line-height: 1.15;
}

.rank__stat dd {
  margin: 0;
  color: #ffffff;
  font-size: 16px;
  line-height: 1.05;
  word-break: keep-all;
}

.rank2__card {
  position: relative;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-justify-content: flex-end;
     -moz-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  aspect-ratio: 880/542;
  min-width: 0;
  padding: 14.5% 11% 8%;
  color: #ffffff;
  background-position: center center;
  background-repeat: no-repeat;
  -o-background-size: 100% 100%;
     background-size: 100% 100%;
}

.rank2__card--first {
  -webkit-order: 2;
     -moz-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  -webkit-transform: translateY(-32px);
     -moz-transform: translateY(-32px);
      -ms-transform: translateY(-32px);
       -o-transform: translateY(-32px);
          transform: translateY(-32px);
  background-image: url("../images/rank1_team.png");
}

.rank2__card--second {
  -webkit-order: 1;
     -moz-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  background-image: url("../images/rank2_team.png");
}

.rank2__card--third {
  -webkit-order: 3;
     -moz-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
  background-image: url("../images/rank3_team.png");
}

.rank2__avatar {
  position: absolute;
  left: 12%;
  top: 22%;
  display: grid;
  place-items: center;
  width: 22%;
  aspect-ratio: 1;
  border: 2px solid rgba(255, 207, 70, 0.72);
  border-radius: 50%;
  color: #ffd65a;
  font-size: clamp(28px, 3.6vw, 52px);
  font-weight: 800;
  background: #fff;
  box-shadow: 0 0 18px rgba(255, 200, 52, 0.35);
  overflow: hidden;
}

.rank2__avatar > img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.rank2__profile {
  position: absolute;
  left: 38%;
  top: 26%;
  min-width: 0;
}

.rank2__name {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  line-clamp: 1;
  margin: 0 0 0.42em;
  font-size: clamp(18px, 3.1vw, 24px);
  font-weight: 600;
  line-height: 1.08;
  color: #fff;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.95);
  padding-right: 18px;
}

.rank2__team {
  overflow: hidden;
  white-space: nowrap;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  margin: 0;
  font-size: 15px;
  line-height: 1.2;
  margin-bottom: 12px;
}

.rank2__stats {
  position: absolute;
  width: 78%;
  bottom: 0;
  left: 50%;
  -webkit-transform: translate(-50%, -15%);
     -moz-transform: translate(-50%, -15%);
      -ms-transform: translate(-50%, -15%);
       -o-transform: translate(-50%, -15%);
          transform: translate(-50%, -15%);
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0;
}

.rank2__stat:first-child {
  border-right: 1px solid #333;
}
.rank2__stat {
  -webkit-flex: 1;
     -moz-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
  padding: 0 6%;
  text-align: center;
}

.rank2__stat dt {
  margin: 0 0 0.18em;
  color: #ffd65a;
  font-size: 16px;
  line-height: 1.15;
}

.rank2__stat dd {
  margin: 0;
  color: #ffffff;
  font-size: 16px;
  line-height: 1.05;
  word-break: keep-all;
}

@media (max-width: 999px) {
  .rank {
    grid-template-columns: minmax(0, 1fr);
    max-width: 620px;
  }
  .rank__card--first {
    -webkit-order: 1;
       -moz-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    -webkit-transform: none;
       -moz-transform: none;
        -ms-transform: none;
         -o-transform: none;
            transform: none;
  }
  .rank__card--second {
    -webkit-order: 2;
       -moz-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .rank__card--third {
    -webkit-order: 3;
       -moz-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
  .rank__name {
    font-size: clamp(28px, 8vw, 44px);
  }
  .rank__team {
    font-size: clamp(16px, 4vw, 24px);
  }
  .rank__stat dt {
    font-size: clamp(16px, 4vw, 24px);
  }
  .rank__stat dd {
    font-size: clamp(20px, 6vw, 34px);
  }
  .rank2__card--first {
    -webkit-order: 1;
       -moz-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    -webkit-transform: none;
       -moz-transform: none;
        -ms-transform: none;
         -o-transform: none;
            transform: none;
  }
  .rank2__card--second {
    -webkit-order: 2;
       -moz-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .rank2__card--third {
    -webkit-order: 3;
       -moz-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
  .rank2__name {
    font-size: clamp(28px, 8vw, 44px);
  }
  .rank2__team {
    font-size: clamp(16px, 4vw, 24px);
  }
  .rank2__stat dt {
    font-size: clamp(16px, 4vw, 24px);
  }
  .rank2__stat dd {
    font-size: clamp(20px, 6vw, 34px);
  }
}
.rank-table-wrap {
  width: 100%;
  margin: clamp(24px, 4vw, 48px) auto;
  overflow-x: auto;
  border: 1px solid rgba(54, 114, 179, 0.68);
  border-radius: 10px;
  background: rgba(4, 15, 28, 0.92);
  box-shadow: inset 0 0 0 1px rgba(91, 162, 255, 0.16), 0 0 18px rgba(39, 112, 196, 0.22);
  -webkit-overflow-scrolling: touch;
  cursor: -webkit-grab;
  cursor: -moz-grab;
  cursor: grab;
}

.rank-table-wrap.is-dragging {
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing;
  cursor: grabbing;
}

.rank-table {
  width: 100%;
  min-width: 960px;
  border-collapse: separate;
  border-spacing: 0;
  color: #ffffff;
  font-size: 16px;
  line-height: 1.25;
}

.rank-table th,
.rank-table td,
.rank-table strong,
.rank-table em,
.rank-table span {
  font-size: 16px;
}

.rank-table th {
  padding: 18px 16px;
  color: #ffffff;
  font-weight: 500;
  text-align: center;
  white-space: nowrap;
  background: rgba(12, 29, 50, 0.94);
}

.rank-table td {
  padding: 12px 16px;
  text-align: center;
  vertical-align: middle;
  border-top: 1px solid rgba(64, 106, 151, 0.26);
  background: rgba(3, 14, 27, 0.72);
  white-space: nowrap;
}

.rank-table tbody tr:first-child td {
  border-top-color: rgba(60, 125, 196, 0.42);
}

.rank-table tbody tr.is-current-user td {
  border-top: 2px solid #33a8ff;
  border-bottom: 2px solid #33a8ff;
  background: rgba(10, 42, 78, 0.78);
  box-shadow: inset 0 0 16px rgba(51, 168, 255, 0.18);
}

.rank-table tbody tr.is-current-user td:first-child {
  border-left: 2px solid #33a8ff;
  border-radius: 8px 0 0 8px;
}

.rank-table tbody tr.is-current-user td:last-child {
  border-right: 2px solid #33a8ff;
  border-radius: 0 8px 8px 0;
}

.rank-table__player {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-width: 220px;
  text-align: left;
  gap: 14px;
}

.rank-table__player--button {
  cursor: pointer;
}

.rank-table__player--button:hover strong,
.rank-table__player--button:focus-visible strong {
  color: #ffcb4b;
}

.rank-table__player--button:focus-visible {
  outline: 2px solid #ffcb4b;
  outline-offset: 4px;
  border-radius: 8px;
}

.rank-table__avatar {
  display: grid;
  place-items: center;
  -webkit-flex: 0 0 48px;
     -moz-box-flex: 0;
      -ms-flex: 0 0 48px;
          flex: 0 0 48px;
  width: 48px;
  height: 48px;
  border: 2px solid rgba(255, 203, 75, 0.52);
  border-radius: 50%;
  color: #10213a;
  font-weight: 800;
  background: #fff;
  overflow: hidden;
}

.rank-table__avatar img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.rank-table__player strong,
.rank-table__player em {
  display: block;
  overflow: hidden;
  max-width: 168px;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  white-space: nowrap;
}

.rank-table__player strong {
  margin-bottom: 4px;
  color: #ffffff;
  font-weight: 700;
}

.rank-table__player em {
  color: #c5d5ee;
  font-style: normal;
}

.rank-table__medal {
  display: inline-grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  color: #ffffff;
  font-weight: 800;
  box-shadow: 0 0 12px rgba(255, 209, 90, 0.32);
}

.rank-table__medal--gold {
  background: -webkit-linear-gradient(top, #ffe173, #bb7608);
  background: -moz-linear-gradient(top, #ffe173, #bb7608);
  background: -o-linear-gradient(top, #ffe173, #bb7608);
  background: linear-gradient(180deg, #ffe173, #bb7608);
}

.rank-table__medal--silver {
  background: -webkit-linear-gradient(top, #f0f5ff, #727d8c);
  background: -moz-linear-gradient(top, #f0f5ff, #727d8c);
  background: -o-linear-gradient(top, #f0f5ff, #727d8c);
  background: linear-gradient(180deg, #f0f5ff, #727d8c);
}

.rank-table__medal--bronze {
  background: -webkit-linear-gradient(top, #ffc16d, #8f4c13);
  background: -moz-linear-gradient(top, #ffc16d, #8f4c13);
  background: -o-linear-gradient(top, #ffc16d, #8f4c13);
  background: linear-gradient(180deg, #ffc16d, #8f4c13);
}

.rank-table__camp {
  font-weight: 700;
}

.rank-table__camp--human {
  color: #ff852f;
}

.rank-table__camp--robot {
  color: #58a9ff;
}

.rank-table__positive {
  color: #ff4f58;
  font-weight: 700;
}

@media (max-width: 767px) {
  .rank-table-wrap {
    border-radius: 8px;
  }
  .rank-table th,
  .rank-table td {
    padding: 12px;
  }
}
.pk_hero {
  width: 100%;
  min-height: 260px;
  background-image: url("../images/pk_hero_desktop.jpg");
  background-position: center center;
  background-repeat: no-repeat;
  -o-background-size: cover;
     background-size: cover;
}

@media (max-width: 999px) {
  .pk_hero {
    min-height: 76.9vw;
    background-image: url("../images/pk_hero_mobile.jpg");
  }
}
.pk2_hero {
  width: 100%;
  min-height: 520px;
  background-image: url("../images/pk2_hero_desktop.jpg");
  background-position: center center;
  background-repeat: no-repeat;
  -o-background-size: cover;
     background-size: cover;
}

@media (max-width: 999px) {
  .pk2_hero {
    min-height: 100vw;
    aspect-ratio: 1/1;
    background-image: url("../images/pk2_hero_mobile.jpg");
  }
}
.hero {
  position: relative;
  width: 100%;
  min-height: 50.83vw;
  overflow: hidden;
  background-color: #000711;
  background-image: url("../images/hero_bg_desktop.png");
  background-position: center top;
  background-repeat: no-repeat;
  -o-background-size: cover;
     background-size: cover;
}

@media (max-width: 999px) {
  .hero {
    position: relative;
    width: 100%;
    min-height: 50.83vw;
    overflow: hidden;
    background-color: #000711;
    background-image: url("../images/hero_bg_mobile.png");
    background-position: center top;
    background-repeat: no-repeat;
    -o-background-size: cover;
       background-size: cover;
  }
}
.hero__inner {
  position: relative;
  z-index: 1;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: min(100%, 1180px);
  min-height: inherit;
  margin: 0 auto;
  padding: clamp(42px, 4.6vw, 88px) 24px clamp(38px, 4.2vw, 80px);
}

.hero__title-wrap {
  position: relative;
  width: min(56.05vw, 1076px);
  min-width: 520px;
}

.hero__title {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: auto;
  -webkit-filter: drop-shadow(0 12px 24px rgba(0, 0, 0, 0.46));
          filter: drop-shadow(0 12px 24px rgba(0, 0, 0, 0.46));
  -webkit-animation: heroTitleFlash 1.5s infinite;
     -moz-animation: heroTitleFlash 1.5s infinite;
       -o-animation: heroTitleFlash 1.5s infinite;
          animation: heroTitleFlash 1.5s infinite;
}

@-webkit-keyframes heroTitleFlash {
  0%, 18%, 36%, 100% {
    -webkit-filter: drop-shadow(0 12px 24px rgba(0, 0, 0, 0.46)) brightness(1);
            filter: drop-shadow(0 12px 24px rgba(0, 0, 0, 0.46)) brightness(1);
  }
  8%, 26% {
    -webkit-filter: drop-shadow(0 12px 24px rgba(0, 0, 0, 0.46)) brightness(1.3);
            filter: drop-shadow(0 12px 24px rgba(0, 0, 0, 0.46)) brightness(1.3);
  }
  12%, 30% {
    -webkit-filter: drop-shadow(0 0 28px rgba(71, 169, 253, 0.6)) brightness(1.18);
            filter: drop-shadow(0 0 28px rgba(71, 169, 253, 0.6)) brightness(1.18);
  }
}

@-moz-keyframes heroTitleFlash {
  0%, 18%, 36%, 100% {
    filter: drop-shadow(0 12px 24px rgba(0, 0, 0, 0.46)) brightness(1);
  }
  8%, 26% {
    filter: drop-shadow(0 12px 24px rgba(0, 0, 0, 0.46)) brightness(1.3);
  }
  12%, 30% {
    filter: drop-shadow(0 0 28px rgba(71, 169, 253, 0.6)) brightness(1.18);
  }
}

@-o-keyframes heroTitleFlash {
  0%, 18%, 36%, 100% {
    filter: drop-shadow(0 12px 24px rgba(0, 0, 0, 0.46)) brightness(1);
  }
  8%, 26% {
    filter: drop-shadow(0 12px 24px rgba(0, 0, 0, 0.46)) brightness(1.3);
  }
  12%, 30% {
    filter: drop-shadow(0 0 28px rgba(71, 169, 253, 0.6)) brightness(1.18);
  }
}

@keyframes heroTitleFlash {
  0%, 18%, 36%, 100% {
    -webkit-filter: drop-shadow(0 12px 24px rgba(0, 0, 0, 0.46)) brightness(1);
            filter: drop-shadow(0 12px 24px rgba(0, 0, 0, 0.46)) brightness(1);
  }
  8%, 26% {
    -webkit-filter: drop-shadow(0 12px 24px rgba(0, 0, 0, 0.46)) brightness(1.3);
            filter: drop-shadow(0 12px 24px rgba(0, 0, 0, 0.46)) brightness(1.3);
  }
  12%, 30% {
    -webkit-filter: drop-shadow(0 0 28px rgba(71, 169, 253, 0.6)) brightness(1.18);
            filter: drop-shadow(0 0 28px rgba(71, 169, 253, 0.6)) brightness(1.18);
  }
}
.hero__lightning {
  position: absolute;
  inset: -12% -8%;
  z-index: 2;
  display: block;
  width: 116%;
  height: 124%;
  pointer-events: none;
  mix-blend-mode: screen;
}

@media (prefers-reduced-motion: reduce) {
  .hero__title {
    -webkit-animation: none;
       -moz-animation: none;
         -o-animation: none;
            animation: none;
  }
}
.hero__tagline {
  margin: clamp(18px, 2.2vw, 42px) 0 0;
  color: #ffffff;
  font-size: clamp(20px, 1.67vw, 32px);
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: 0.06em;
  text-align: center;
  text-shadow: 0 0 12px rgba(90, 160, 255, 0.55);
}

.hero__schedule {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: min(42.4vw, 814px);
  min-width: 560px;
  margin-top: clamp(18px, 2.1vw, 40px);
  padding: 18px 30px 20px;
  border: 1px solid rgba(35, 132, 241, 0.78);
  border-radius: 11px;
  background: rgba(0, 9, 28, 0.62);
  box-shadow: inset 0 0 18px rgba(19, 102, 213, 0.18);
}

.hero__schedule-item {
  display: grid;
  justify-items: center;
  gap: 16px;
  min-width: 0;
  padding: 0 22px;
  text-align: center;
}
.hero__schedule-item + .hero__schedule-item {
  border-left: 1px solid rgba(64, 140, 225, 0.32);
}
.hero__schedule-item strong {
  width: 100%;
  padding-bottom: 14px;
  border-bottom: 2px solid currentColor;
  font-size: clamp(26px, 2vw, 38px);
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.04em;
}
.hero__schedule-item time {
  font-size: clamp(22px, 1.67vw, 32px);
  font-weight: 500;
  line-height: 1;
  white-space: nowrap;
}

.hero__schedule-item--gold {
  color: #ffd132;
}

.hero__schedule-item--blue {
  color: #47a9fd;
}

.hero__actions {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: clamp(54px, 6vw, 116px);
  width: 100%;
  margin-top: clamp(30px, 3.25vw, 62px);
}

.hero__button {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: min(25.1vw, 506px);
  min-width: 360px;
  aspect-ratio: 506/126;
  color: #061b34;
  font-size: clamp(28px, 2.4vw, 46px);
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.04em;
  text-align: center;
  text-decoration: none;
  background-position: center;
  background-repeat: no-repeat;
  -o-background-size: contain;
     background-size: contain;
  -webkit-filter: drop-shadow(0 0 16px rgba(0, 132, 255, 0.28));
          filter: drop-shadow(0 0 16px rgba(0, 132, 255, 0.28));
  -webkit-transition: -webkit-filter 0.2s ease, -webkit-transform 0.2s ease;
  transition: -webkit-filter 0.2s ease, -webkit-transform 0.2s ease;
  -o-transition: filter 0.2s ease, -o-transform 0.2s ease;
  -moz-transition: filter 0.2s ease, transform 0.2s ease, -moz-transform 0.2s ease;
  transition: filter 0.2s ease, transform 0.2s ease;
  transition: filter 0.2s ease, transform 0.2s ease, -webkit-filter 0.2s ease, -webkit-transform 0.2s ease, -moz-transform 0.2s ease, -o-transform 0.2s ease;
}
.hero__button:hover {
  color: #061b34;
  -webkit-filter: brightness(1.08) drop-shadow(0 0 18px rgba(75, 170, 255, 0.45));
          filter: brightness(1.08) drop-shadow(0 0 18px rgba(75, 170, 255, 0.45));
  -webkit-transform: translateY(-2px);
     -moz-transform: translateY(-2px);
      -ms-transform: translateY(-2px);
       -o-transform: translateY(-2px);
          transform: translateY(-2px);
}

.hero__button--record {
  background-image: url("../images/bt_bg.png");
}

.hero__button--start {
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  color: #dcefff;
  background-image: url("../images/bt_bg2.png");
}
.hero__button--start:hover {
  color: #a8d9ff;
}
.hero__button--start small {
  display: block;
  margin-top: 5px;
  font-size: 0.54em;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.04em;
}

@media (max-width: 999px) {
  .hero {
    min-height: 112vw;
    background-position: center top;
  }
  .hero__inner {
    padding: 34px 16px 42px;
  }
  .hero__title-wrap {
    width: min(92vw, 560px);
    min-width: 0;
  }
  .hero__schedule {
    width: min(92vw, 560px);
    min-width: 0;
    padding: 14px 12px 16px;
  }
  .hero__schedule-item {
    gap: 12px;
    padding: 0 10px;
  }
  .hero__schedule-item strong {
    padding-bottom: 10px;
    font-size: 22px;
  }
  .hero__schedule-item time {
    font-size: 18px;
  }
  .hero__actions {
    -webkit-flex-direction: column;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 14px;
    margin-top: 28px;
  }
  .hero__button {
    width: min(86vw, 420px);
    min-width: 0;
    font-size: 34px;
  }
}
@media (max-width: 420px) {
  .hero__tagline {
    font-size: 18px;
  }
  .hero__schedule-item strong {
    font-size: 20px;
  }
  .hero__schedule-item time {
    font-size: 15px;
  }
  .hero__button {
    font-size: 30px;
  }
}
.s2 {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(28px, 3.15vw, 60px);
  width: min(100%, 1836px);
  margin: 0 auto;
  padding: clamp(36px, 5.2vw, 100px) 0;
  color: #ffffff;
}

.s2__card {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: clamp(360px, 23.9vw, 400px);
  padding: 24px 32px;
  border: 3px solid #176bd0;
  border-radius: 16px;
  background: #06142a;
  text-align: center;
  -webkit-order: 2;
     -moz-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}

.s2__card--featured {
  border-color: #f5b72a;
  box-shadow: 0 0 14px rgba(245, 183, 42, 0.86);
  min-height: -webkit-calc(clamp(360px, 23.9vw, 400px) + 20px);
  min-height: -moz-calc(clamp(360px, 23.9vw, 400px) + 20px);
  min-height: calc(clamp(360px, 23.9vw, 400px) + 20px);
}

.s2__card h2 {
  margin: 0;
  color: #ffffff;
  font-size: clamp(32px, 3.13vw, 48px);
  font-weight: 600;
  line-height: 1.12;
  letter-spacing: 0.04em;
}

.s2__card p {
  min-height: 2.6em;
  margin: clamp(28px, 2.2vw, 42px) 0 clamp(34px, 2.6vw, 50px);
  color: #ffffff;
  font-size: clamp(24px, 2.08vw, 28px);
  line-height: 1.25;
  letter-spacing: 0.04em;
}

.s2__button {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: min(100%, 506px);
  aspect-ratio: 506/126;
  padding: 0 1em;
  color: #061b34;
  font-size: clamp(30px, 2.24vw, 40px);
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0.04em;
  text-align: center;
  text-indent: 0.04em;
  text-decoration: none;
  white-space: nowrap;
  background-position: center;
  background-repeat: no-repeat;
  -o-background-size: contain;
     background-size: contain;
  -webkit-transition: -webkit-filter 0.2s ease, -webkit-transform 0.2s ease;
  transition: -webkit-filter 0.2s ease, -webkit-transform 0.2s ease;
  -o-transition: filter 0.2s ease, -o-transform 0.2s ease;
  -moz-transition: filter 0.2s ease, transform 0.2s ease, -moz-transform 0.2s ease;
  transition: filter 0.2s ease, transform 0.2s ease;
  transition: filter 0.2s ease, transform 0.2s ease, -webkit-filter 0.2s ease, -webkit-transform 0.2s ease, -moz-transform 0.2s ease, -o-transform 0.2s ease;
}
.s2__button:hover {
  -webkit-filter: brightness(1.08);
          filter: brightness(1.08);
  -webkit-transform: translateY(-2px);
     -moz-transform: translateY(-2px);
      -ms-transform: translateY(-2px);
       -o-transform: translateY(-2px);
          transform: translateY(-2px);
}

.s2__button--blue {
  color: #c7e7ff;
  background-image: url("../images/bt_bg2.png");
}
.s2__button--blue:hover {
  color: #8fd1ff;
}

.s2__button--gold {
  color: #061b34;
  background-image: url("../images/bt_bg.png");
}
.s2__button--gold:hover {
  color: #061b34;
}

@media (max-width: 1100px) {
  .s2 {
    grid-template-columns: 1fr;
    width: min(100%, 640px);
    gap: 22px;
    padding: 48px 0;
  }
  .s2__card,
  .s2__card--featured {
    min-height: 0;
  }
  .s2__card--featured {
    -webkit-order: 1;
       -moz-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .s2__card {
    padding: 34px 24px;
  }
  .s2__card h2 {
    font-size: 40px;
  }
  .s2__card p {
    margin: 22px 0 28px;
    font-size: 28px;
  }
  .s2__button {
    width: min(100%, 420px);
    font-size: 34px;
  }
}
@media (max-width: 480px) {
  .s2 {
    padding: 36px 0;
  }
  .s2__card {
    padding: 28px 16px;
    border-width: 2px;
  }
  .s2__card h2 {
    font-size: 34px;
  }
  .s2__card p {
    font-size: 22px;
  }
  .s2__button {
    font-size: 28px;
  }
}
.s3 {
  display: grid;
  grid-template-columns: minmax(360px, 0.86fr) minmax(520px, 1.26fr);
  gap: clamp(28px, 2.6vw, 50px);
  width: min(100%, 1824px);
  margin: 0 auto;
  padding: 0 0 clamp(48px, 5vw, 96px);
  color: #ffffff;
}

.s3__panel {
  position: relative;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: clamp(520px, 37.5vw, 720px);
  padding: clamp(20px, 4.2vw, 32px);
  border: 2px solid #176bd0;
  border-radius: 12px;
  background: #06142a;
  overflow: hidden;
  text-align: center;
}

.s3__panel--final {
  isolation: isolate;
  border-color: #d49a18;
  background: -webkit-linear-gradient(315deg, rgba(63, 21, 54, 0.96), rgba(2, 21, 47, 0.96) 58%, rgba(91, 54, 6, 0.94));
  background: -moz-linear-gradient(315deg, rgba(63, 21, 54, 0.96), rgba(2, 21, 47, 0.96) 58%, rgba(91, 54, 6, 0.94));
  background: -o-linear-gradient(315deg, rgba(63, 21, 54, 0.96), rgba(2, 21, 47, 0.96) 58%, rgba(91, 54, 6, 0.94));
  background: linear-gradient(135deg, rgba(63, 21, 54, 0.96), rgba(2, 21, 47, 0.96) 58%, rgba(91, 54, 6, 0.94));
  box-shadow: inset 0 0 24px rgba(255, 204, 98, 0.12), 0 0 24px rgba(71, 169, 253, 0.16);
}

.s3__panel--final::before {
  content: "";
  position: absolute;
  top: -35%;
  bottom: -35%;
  left: -55%;
  z-index: 0;
  width: 42%;
  pointer-events: none;
  background: -webkit-linear-gradient(left, transparent 0%, rgba(255, 245, 180, 0.04) 18%, rgba(255, 245, 180, 0.28) 48%, rgba(255, 255, 255, 0.5) 52%, rgba(255, 245, 180, 0.16) 68%, transparent 100%);
  background: -moz-linear-gradient(left, transparent 0%, rgba(255, 245, 180, 0.04) 18%, rgba(255, 245, 180, 0.28) 48%, rgba(255, 255, 255, 0.5) 52%, rgba(255, 245, 180, 0.16) 68%, transparent 100%);
  background: -o-linear-gradient(left, transparent 0%, rgba(255, 245, 180, 0.04) 18%, rgba(255, 245, 180, 0.28) 48%, rgba(255, 255, 255, 0.5) 52%, rgba(255, 245, 180, 0.16) 68%, transparent 100%);
  background: linear-gradient(90deg, transparent 0%, rgba(255, 245, 180, 0.04) 18%, rgba(255, 245, 180, 0.28) 48%, rgba(255, 255, 255, 0.5) 52%, rgba(255, 245, 180, 0.16) 68%, transparent 100%);
  -webkit-filter: blur(2px);
          filter: blur(2px);
  mix-blend-mode: screen;
  -webkit-transform: skewX(-18deg) translateX(0);
     -moz-transform: skewX(-18deg) translateX(0);
      -ms-transform: skewX(-18deg) translateX(0);
       -o-transform: skewX(-18deg) translateX(0);
          transform: skewX(-18deg) translateX(0);
  -webkit-animation: finalPanelSweep 4.2s ease-in-out infinite;
     -moz-animation: finalPanelSweep 4.2s ease-in-out infinite;
       -o-animation: finalPanelSweep 4.2s ease-in-out infinite;
          animation: finalPanelSweep 4.2s ease-in-out infinite;
}

@-webkit-keyframes finalPanelSweep {
  0%, 18% {
    -webkit-transform: skewX(-18deg) translateX(0);
            transform: skewX(-18deg) translateX(0);
    opacity: 0;
  }
  28% {
    opacity: 0.9;
  }
  58% {
    -webkit-transform: skewX(-18deg) translateX(430%);
            transform: skewX(-18deg) translateX(430%);
    opacity: 0;
  }
  100% {
    -webkit-transform: skewX(-18deg) translateX(430%);
            transform: skewX(-18deg) translateX(430%);
    opacity: 0;
  }
}

@-moz-keyframes finalPanelSweep {
  0%, 18% {
    -moz-transform: skewX(-18deg) translateX(0);
         transform: skewX(-18deg) translateX(0);
    opacity: 0;
  }
  28% {
    opacity: 0.9;
  }
  58% {
    -moz-transform: skewX(-18deg) translateX(430%);
         transform: skewX(-18deg) translateX(430%);
    opacity: 0;
  }
  100% {
    -moz-transform: skewX(-18deg) translateX(430%);
         transform: skewX(-18deg) translateX(430%);
    opacity: 0;
  }
}

@-o-keyframes finalPanelSweep {
  0%, 18% {
    -o-transform: skewX(-18deg) translateX(0);
       transform: skewX(-18deg) translateX(0);
    opacity: 0;
  }
  28% {
    opacity: 0.9;
  }
  58% {
    -o-transform: skewX(-18deg) translateX(430%);
       transform: skewX(-18deg) translateX(430%);
    opacity: 0;
  }
  100% {
    -o-transform: skewX(-18deg) translateX(430%);
       transform: skewX(-18deg) translateX(430%);
    opacity: 0;
  }
}

@keyframes finalPanelSweep {
  0%, 18% {
    -webkit-transform: skewX(-18deg) translateX(0);
       -moz-transform: skewX(-18deg) translateX(0);
         -o-transform: skewX(-18deg) translateX(0);
            transform: skewX(-18deg) translateX(0);
    opacity: 0;
  }
  28% {
    opacity: 0.9;
  }
  58% {
    -webkit-transform: skewX(-18deg) translateX(430%);
       -moz-transform: skewX(-18deg) translateX(430%);
         -o-transform: skewX(-18deg) translateX(430%);
            transform: skewX(-18deg) translateX(430%);
    opacity: 0;
  }
  100% {
    -webkit-transform: skewX(-18deg) translateX(430%);
       -moz-transform: skewX(-18deg) translateX(430%);
         -o-transform: skewX(-18deg) translateX(430%);
            transform: skewX(-18deg) translateX(430%);
    opacity: 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .s3__panel--final::before {
    -webkit-animation: none;
       -moz-animation: none;
         -o-animation: none;
            animation: none;
    opacity: 0;
  }
}
.s3__panel > :not(.magic-rings) {
  position: relative;
  z-index: 1;
}

.magic-rings {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  opacity: 0.72;
  mix-blend-mode: screen;
}

.magic-rings canvas {
  display: block;
  width: 100%;
  height: 100%;
}

.s3__panel h2 {
  margin: 0;
  font-size: clamp(32px, 3.34vw, 48px);
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: 0.04em;
}

.s3__panel time {
  display: block;
  margin-top: clamp(28px, 2vw, 38px);
  color: #4aa9ff;
  font-size: clamp(20px, 2.1vw, 28px);
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: 0.04em;
}

.s3__panel p {
  width: 100%;
  margin: clamp(20px, 2vw, 32px) 0 0;
  color: #ffffff;
  font-size: clamp(20px, 1.98vw, 24px);
  font-weight: 400;
  line-height: 1.34;
  letter-spacing: 0.02em;
  text-align: left;
}

.s3__panel--regular h2 {
  color: #45a8ff;
}

.s3__panel--final h2,
.s3__panel--final time {
  color: #ffd044;
}

.s3__panel--final p {
  text-align: center;
}

.s3__panel--final img {
  display: block;
  width: min(100%, 780px);
  max-width: 100%;
  min-width: 0;
  height: auto;
}

.s3__prizes {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(16px, 1.2vw, 20px);
  width: 100%;
  margin-top: auto;
  padding-top: 28px;
}

.s3__prize {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: clamp(220px, 14.9vw, 286px);
  padding: 20px 12px;
  border: 2px solid #2489f1;
  border-radius: 12px;
  background: rgba(2, 18, 43, 0.68);
}

.s3__prize strong {
  display: block;
  color: #ffffff;
  font-size: clamp(20px, 2vw, 30px);
  font-weight: 600;
  line-height: 1.12;
  letter-spacing: 0.04em;
}

.s3__prize strong small {
  display: block;
  font-size: 0.72em;
  font-weight: 400;
}

.s3__prize span {
  display: block;
  margin-top: clamp(32px, 2.9vw, 48px);
  color: #ffd044;
  font-size: clamp(24px, 3vw, 36px);
  font-weight: 600;
  line-height: 1;
}

.s3__prize span small {
  font-size: 0.58em;
  letter-spacing: 0.04em;
}

@media (max-width: 1100px) {
  .s3 {
    grid-template-columns: 1fr;
    width: min(100%, 760px);
    padding-bottom: 56px;
  }
  .s3__panel {
    min-height: 0;
    padding: 42px 24px;
  }
  .s3__panel p,
  .s3__panel--final p {
    text-align: center;
  }
  .s3__prizes {
    margin-top: 0;
    padding-top: 34px;
  }
}
@media (max-width: 620px) {
  .s3 {
    gap: 22px;
    max-width: -webkit-calc(100vw - 24px);
    max-width: -moz-calc(100vw - 24px);
    max-width: calc(100vw - 24px);
    overflow: hidden;
  }
  .s3__panel {
    width: 100%;
    max-width: 100%;
    -moz-box-sizing: border-box;
         box-sizing: border-box;
    padding: 34px 16px;
    border-width: 2px;
  }
  .s3__panel h2 {
    font-size: 38px;
  }
  .s3__panel time {
    font-size: 20px;
    letter-spacing: 0;
    overflow-wrap: anywhere;
  }
  .s3__panel p {
    font-size: 18px;
  }
  .s3__panel--final img {
    width: 100%;
  }
  .s3__prizes {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }
  .s3__prize {
    min-height: 150px;
    padding: 16px 8px;
  }
  .s3__prize strong {
    font-size: 18px;
  }
  .s3__prize span {
    margin-top: 22px;
    font-size: 22px;
    letter-spacing: 0.04em;
  }
}
.s4 {
  width: min(100%, 1734px);
  margin: 0 auto;
  padding: 0 0 clamp(56px, 5.2vw, 100px);
  color: #ffffff;
}

.s4__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(28px, 5vw, 52px);
}

.s4__card {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: clamp(330px, 20.4vw, 392px);
  padding: 24px;
  border: 2px solid #176bd0;
  border-radius: 12px;
  background: #06142a;
  text-align: center;
}

.s4__crown {
  display: block;
  width: clamp(96px, 7.65vw, 147px);
  height: auto;
  margin-bottom: 28px;
}

.s4__card h2 {
  margin: 0;
  color: #ffffff;
  font-size: clamp(24px, 2vw, 36px);
  font-weight: 600;
  line-height: 1.15;
  letter-spacing: 0.04em;
}

.s4__card p {
  min-height: 3.4em;
  margin: 18px 0 22px;
  color: #ffffff;
  font-size: clamp(18px, 1.4vw, 20px);
  font-weight: 400;
  line-height: 1.25;
}

.s4__card strong {
  display: block;
  margin-top: auto;
  color: #ffd044;
  font-size: clamp(24px, 2.6vw, 36px);
  font-weight: 600;
  line-height: 1;
}

.s4__card strong small {
  font-size: 0.64em;
  letter-spacing: 0.04em;
}

.s4__bonus {
  width: min(100%, 1000px);
  margin: clamp(40px, 4vw, 60px) auto 0;
  padding: 18px 24px;
  border: 3px solid #d49a18;
  border-radius: 16px;
  background: #3b2e0d;
  text-align: center;
}

.s4__bonus p {
  margin: 0;
  color: #ffffff;
  font-size: clamp(20px, 2vw, 28px);
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0.04em;
}

.s4__bonus span {
  color: #ffd044;
  font-size: 1.25em;
  letter-spacing: 0.08em;
}

@media (max-width: 1200px) {
  .s4__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
  }
}
@media (max-width: 620px) {
  .s4 {
    max-width: -webkit-calc(100vw - 24px);
    max-width: -moz-calc(100vw - 24px);
    max-width: calc(100vw - 24px);
    padding-bottom: 56px;
  }
  .s4__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }
  .s4__card {
    min-height: 0;
    padding: 18px 10px;
    border-width: 2px;
  }
  .s4__crown {
    width: 72px;
    margin-bottom: 14px;
  }
  .s4__card h2 {
    font-size: 24px;
  }
  .s4__card p {
    min-height: 0;
    margin: 12px 0 16px;
    font-size: 16px;
    letter-spacing: 0;
  }
  .s4__card strong {
    font-size: 26px;
    letter-spacing: 0.04em;
  }
  .s4__bonus {
    padding: 16px 14px;
    border-width: 2px;
  }
  .s4__bonus p {
    font-size: 22px;
  }
}
.s5 {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(24px, 4vw, 52px);
  width: min(100%, 1510px);
  margin: 0 auto;
  padding: 0 0 clamp(56px, 5.2vw, 100px);
  color: #ffffff;
}

.s5__card {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: clamp(330px, 20.4vw, 392px);
  padding: 28px;
  border: 2px solid #176bd0;
  border-radius: 16px;
  background: #06142a;
  text-align: center;
}

.s5__card h2 {
  margin: 0;
  color: #ffffff;
  font-size: clamp(28px, 2.24vw, 36px);
  font-weight: 600;
  line-height: 1.1;
}

.s5__card p {
  margin: 26px 0 0;
  color: #ffffff;
  font-size: clamp(18px, 1.5vw, 20px);
  font-weight: 400;
  line-height: 1.22;
}

.s5__award {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: baseline;
     -moz-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 18px;
  width: 100%;
  margin-top: auto;
  padding-top: 20px;
}

.s5__award--stack {
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 18px;
}

.s5__award strong {
  color: #ffd044;
  font-size: clamp(44px, 3.23vw, 62px);
  font-weight: 900;
  line-height: 1;
  white-space: nowrap;
}

.s5__award strong small {
  font-size: 0.58em;
  letter-spacing: 0.04em;
}

.s5__award span,
.s5__note {
  color: #ffffff;
  font-size: clamp(20px, 1.56vw, 30px);
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: 0.04em;
}

.s5__note {
  margin-top: 16px;
  font-size: 16px;
}

@media (max-width: 1100px) {
  .s5 {
    grid-template-columns: 1fr;
    width: min(100%, 560px);
    gap: 22px;
  }
  .s5__card {
    min-height: 0;
  }
}
@media (max-width: 620px) {
  .s5 {
    max-width: -webkit-calc(100vw - 24px);
    max-width: -moz-calc(100vw - 24px);
    max-width: calc(100vw - 24px);
    padding-bottom: 56px;
  }
  .s5__card {
    padding: 28px 18px;
    border-width: 2px;
  }
  .s5__card h2 {
    font-size: 34px;
  }
  .s5__card p,
  .s5__award span,
  .s5__note {
    font-size: 22px;
  }
  .s5__award {
    -webkit-flex-direction: column;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-align-items: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 14px;
    padding-top: 30px;
  }
  .s5__award strong {
    font-size: 46px;
  }
}
.s6 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(28px, 4.2vw, 66px);
  width: min(100%, 1248px);
  margin: 0 auto;
  padding: 0 0 clamp(56px, 5.2vw, 100px);
  color: #ffffff;
}

.s6__card {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: clamp(350px, 25.7vw, 412px);
  border: 3px solid currentColor;
  border-radius: 12px;
  overflow: hidden;
  background: #06142a;
  text-align: center;
}

.s6__card--human {
  color: #ffd044;
  background: #3b2e0d;
}

.s6__card--robot {
  color: #45a8ff;
}

.s6__icon {
  display: block;
  width: 160px;
  height: auto;
  margin-bottom: 0px;
}

.s6__card h2 {
  margin: 0;
  color: currentColor;
  font-size: clamp(32px, 2.9vw, 38px);
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: 0.04em;
}

.s6__card p {
  margin: clamp(20px, 3vw, 28px) 0 0;
  color: #ffffff;
  font-size: clamp(18px, 1.8vw, 20px);
  font-weight: 400;
  line-height: 1.36;
  letter-spacing: 0.04em;
  padding: 0 24px;
}

@media (max-width: 900px) {
  .s6 {
    grid-template-columns: 1fr;
    width: min(100%, 620px);
    gap: 22px;
  }
  .s6__card {
    min-height: 0;
  }
}
@media (max-width: 620px) {
  .s6 {
    max-width: -webkit-calc(100vw - 24px);
    max-width: -moz-calc(100vw - 24px);
    max-width: calc(100vw - 24px);
    padding-bottom: 56px;
  }
  .s6__card {
    padding: 0px 0px 28px;
    border-width: 2px;
  }
  .s6__icon {
    width: 86px;
    margin-bottom: 20px;
  }
  .s6__card h2 {
    font-size: 34px;
  }
  .s6__card p {
    margin-top: 24px;
    font-size: 20px;
    letter-spacing: 0.02em;
  }
}
.s7 {
  width: min(100%, 1146px);
  margin: 0 auto;
  padding: 0 0 clamp(56px, 5.2vw, 100px);
  color: #ffffff;
}

.s7__lead {
  margin: 0 0 36px;
  color: #ffffff;
  font-size: clamp(20px, 1.98vw, 28px);
  line-height: 1.3;
  text-align: center;
}

.s7__formula {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  min-height: 116px;
  padding: 20px 28px;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  background-image: url("../images/s7_bg.png");
  background-position: center;
  background-repeat: no-repeat;
  -o-background-size: 100% 100%;
     background-size: 100% 100%;
  color: #ffffff;
  font-size: clamp(20px, 2.8vw, 28px);
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
}

.s7__cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(28px, 4.2vw, 40px);
  margin-top: 28px;
}

.s7__card {
  display: grid;
  place-items: center;
  min-height: 134px;
  padding: 20px 18px;
  border: 2px solid #d49a18;
  border-radius: 8px;
  background: #3b2e0d;
  text-align: center;
}

.s7__card h2 {
  margin: 0;
  color: #ffffff;
  font-size: clamp(20px, 1.98vw, 28px);
  font-weight: 600;
  line-height: 1.15;
}

.s7__card strong {
  display: block;
  margin-top: 8px;
  color: #ffd044;
  font-size: clamp(20px, 1.98vw, 28px);
  font-weight: 600;
  line-height: 1.15;
}

.s7__note {
  margin: 24px 0 0;
  color: #ffffff;
  font-size: 16px;
  line-height: 1.35;
  letter-spacing: 0.02em;
}

.s7__table {
  margin-top: 42px;
  overflow-x: auto;
  border: 2px solid rgba(69, 168, 255, 0.22);
  border-radius: 16px;
  background: #071426;
}

.s7__table table {
  width: 100%;
  min-width: 960px;
  border-collapse: separate;
  border-spacing: 0;
  color: #ffffff;
  text-align: left;
  font-size: clamp(16px, 1.4vw, 20px);
  font-weight: 600;
}

.s7__table th,
.s7__table td {
  padding: 20px;
  border-bottom: 1px solid rgba(94, 125, 165, 0.28);
  vertical-align: top;
}

.s7__table thead th {
  color: #b8cce2;
  font-size: clamp(16px, 1.2vw, 20px);
  background: rgba(19, 32, 51, 0.9);
  white-space: nowrap;
}

.s7__table tbody th {
  background: rgba(7, 20, 38, 0.94);
  white-space: nowrap;
}

.s7__table tbody td:nth-child(2),
.s7__table thead th:nth-child(3) {
  text-align: left;
}

.s7__table tbody tr:last-child th,
.s7__table tbody tr:last-child td {
  border-bottom: 0;
}

@media (max-width: 900px) {
  .s7 {
    width: min(100%, 680px);
  }
  .s7__cards {
    grid-template-columns: 1fr;
    gap: 16px;
  }
}
@media (max-width: 620px) {
  .s7 {
    max-width: -webkit-calc(100vw - 24px);
    max-width: -moz-calc(100vw - 24px);
    max-width: calc(100vw - 24px);
    padding-bottom: 56px;
  }
  .s7__lead {
    margin-bottom: 22px;
    font-size: 20px;
  }
  .s7__formula {
    min-height: 0;
    padding: 18px 14px;
    font-size: 24px;
  }
  .s7__card {
    min-height: 108px;
  }
  .s7__card h2,
  .s7__card strong {
    font-size: 20px;
  }
  .s7__note {
    font-size: 16px;
  }
  .s7__table table {
    min-width: 600px;
  }
  .s7__table th,
  .s7__table td {
    padding: 18px 16px;
  }
}
.qa {
  width: min(100%, 1146px);
  margin: 0 auto;
  padding: 0 0 clamp(56px, 5.2vw, 100px);
  color: #ffffff;
}

.qa__tabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(20px, 4vw, 40px);
  margin-bottom: 32px;
}

.qa__tab {
  position: relative;
  display: -webkit-inline-flex;
  display: -moz-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0 0 18px;
  color: #ffffff;
  font-size: clamp(18px, 1.56vw, 24px);
  font-weight: 600;
  line-height: 1;
  cursor: pointer;
}

.qa__tab::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 78px;
  height: 4px;
  background: #45a8ff;
  box-shadow: 0 0 12px rgba(69, 168, 255, 0.92);
  opacity: 0;
  -webkit-transform: translateX(-50%);
     -moz-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
       -o-transform: translateX(-50%);
          transform: translateX(-50%);
}

.qa__tab.is-active {
  color: #45a8ff;
}

.qa__tab.is-active::after {
  opacity: 1;
}

.qa__panels {
  border-top: 0;
}

.qa__panel {
  display: none;
}

.qa__panel.is-active {
  display: block;
}

.qa__item {
  border-bottom: 1px solid rgba(94, 125, 165, 0.42);
}

.qa__question {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: space-between;
     -moz-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 20px;
  width: 100%;
  padding: 26px 0;
  color: #ffffff;
  font-size: clamp(18px, 1.45vw, 20px);
  font-weight: 600;
  line-height: 1.35;
  text-align: left;
  cursor: pointer;
}

.qa__question i {
  -webkit-flex: 0 0 auto;
     -moz-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 16px solid #ffffff;
  -webkit-transition: -webkit-transform 0.2s ease;
  transition: -webkit-transform 0.2s ease;
  -o-transition: -o-transform 0.2s ease;
  -moz-transition: transform 0.2s ease, -moz-transform 0.2s ease;
  transition: transform 0.2s ease;
  transition: transform 0.2s ease, -webkit-transform 0.2s ease, -moz-transform 0.2s ease, -o-transform 0.2s ease;
}

.qa__item:not(.is-open) .qa__question i {
  -webkit-transform: rotate(-90deg);
     -moz-transform: rotate(-90deg);
      -ms-transform: rotate(-90deg);
       -o-transform: rotate(-90deg);
          transform: rotate(-90deg);
}

.qa__answer {
  display: none;
  padding: 0 48px 28px 0;
  color: #45a8ff;
  font-size: clamp(18px, 1.45vw, 20px);
  line-height: 1.35;
}
.qa__answer a {
  color: #a7d6ff;
  border-bottom: 1px solid #a7d6ff;
}

.qa__item.is-open .qa__answer {
  display: block;
}

@media (max-width: 767px) {
  .qa {
    max-width: -webkit-calc(100vw - 24px);
    max-width: -moz-calc(100vw - 24px);
    max-width: calc(100vw - 24px);
    padding-bottom: 56px;
  }
  .qa__tabs {
    gap: 12px;
    margin-bottom: 22px;
  }
  .qa__tab {
    font-size: 15px;
    padding-bottom: 14px;
  }
  .qa__tab::after {
    width: 48px;
    height: 3px;
  }
  .qa__question {
    padding: 20px 0;
    font-size: 17px;
  }
  .qa__answer {
    padding-right: 0;
    font-size: 16px;
  }
}
.float-actions {
  position: fixed;
  top: 50%;
  right: clamp(12px, 1.8vw, 34px);
  z-index: 50;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(10px, 1vw, 18px);
  -webkit-transform: translateY(-50%);
     -moz-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
       -o-transform: translateY(-50%);
          transform: translateY(-50%);
}

.float-actions__item {
  display: block;
  width: clamp(86px, 7.45vw, 143px);
  height: auto;
  line-height: 0;
  -webkit-filter: drop-shadow(0 0 14px rgba(0, 132, 255, 0.35));
          filter: drop-shadow(0 0 14px rgba(0, 132, 255, 0.35));
  -webkit-transition: -webkit-filter 0.2s ease, -webkit-transform 0.2s ease;
  transition: -webkit-filter 0.2s ease, -webkit-transform 0.2s ease;
  -o-transition: filter 0.2s ease, -o-transform 0.2s ease;
  -moz-transition: filter 0.2s ease, transform 0.2s ease, -moz-transform 0.2s ease;
  transition: filter 0.2s ease, transform 0.2s ease;
  transition: filter 0.2s ease, transform 0.2s ease, -webkit-filter 0.2s ease, -webkit-transform 0.2s ease, -moz-transform 0.2s ease, -o-transform 0.2s ease;
}
.float-actions__item:hover {
  -webkit-filter: brightness(1.08) drop-shadow(0 0 18px rgba(255, 195, 62, 0.42));
          filter: brightness(1.08) drop-shadow(0 0 18px rgba(255, 195, 62, 0.42));
  -webkit-transform: translateX(-3px);
     -moz-transform: translateX(-3px);
      -ms-transform: translateX(-3px);
       -o-transform: translateX(-3px);
          transform: translateX(-3px);
}
.float-actions__item img {
  display: block;
  width: 100%;
  height: auto;
}

@media (max-width: 767px) {
  .float-actions {
    right: 8px;
    gap: 8px;
  }
  .float-actions__item {
    width: 88px;
  }
}
.title1 {
  margin-top: 16px;
  margin-bottom: 8px;
  font-size: 36px;
  font-weight: bold;
  text-align: center;
  color: #fff;
}

.title2 {
  display: inline-block;
  margin-top: 16px;
  margin-bottom: 8px;
  font-size: 28px;
  font-weight: bold;
  line-height: 1.4;
  color: #f5f7fb;
  background: -webkit-linear-gradient(top, #ffffff 0%, #dfe4ec 45%, #9ea8b8 100%);
  background: -moz-linear-gradient(top, #ffffff 0%, #dfe4ec 45%, #9ea8b8 100%);
  background: -o-linear-gradient(top, #ffffff 0%, #dfe4ec 45%, #9ea8b8 100%);
  background: linear-gradient(180deg, #ffffff 0%, #dfe4ec 45%, #9ea8b8 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.title2--with-status {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: baseline;
     -moz-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -webkit-justify-content: space-between;
     -moz-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
  gap: 16px;
}

.title2__status {
  color: #d8e7fb;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.04em;
  white-space: nowrap;
  text-shadow: 0 0 6px rgba(176, 206, 245, 0.36);
  -webkit-text-fill-color: currentColor;
}
.title2__status span {
  color: #ffc351;
  text-shadow: 0 0 8px rgba(255, 195, 81, 0.58);
  -webkit-text-fill-color: currentColor;
}

.title3 {
  display: inline-block;
  margin-top: 16px;
  margin-bottom: 8px;
  font-size: 28px;
  font-weight: bold;
  line-height: 1.4;
  color: #f0be41;
}
.title3 span {
  font-size: 16px;
  color: #ffffff !important;
  padding-left: 8px;
}

@media (max-width: 767px) {
  .title3 span {
    display: block;
    padding-left: 0;
    padding-top: 8px;
  }
}
.title4 {
  display: inline-block;
  margin-top: 8px;
  margin-bottom: 8px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.4;
  color: #f5f7fb;
  background: -webkit-linear-gradient(top, #ffffff 0%, #dfe4ec 45%, #9ea8b8 100%);
  background: -moz-linear-gradient(top, #ffffff 0%, #dfe4ec 45%, #9ea8b8 100%);
  background: -o-linear-gradient(top, #ffffff 0%, #dfe4ec 45%, #9ea8b8 100%);
  background: linear-gradient(180deg, #ffffff 0%, #dfe4ec 45%, #9ea8b8 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.title5 {
  color: #727d8c;
  display: inline-block;
}

@media (max-width: 767px) {
  .title5 {
    display: block;
    margin-bottom: 4px;
  }
}
.title6 {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.4;
  color: #f5f7fb;
  background: -webkit-linear-gradient(top, #ffffff 0%, #dfe4ec 45%, #9ea8b8 100%);
  background: -moz-linear-gradient(top, #ffffff 0%, #dfe4ec 45%, #9ea8b8 100%);
  background: -o-linear-gradient(top, #ffffff 0%, #dfe4ec 45%, #9ea8b8 100%);
  background: linear-gradient(180deg, #ffffff 0%, #dfe4ec 45%, #9ea8b8 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  margin-bottom: 4px;
}

.bt {
  display: -webkit-inline-flex;
  display: -moz-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: 132px;
  height: 42px;
  padding: 0 26px;
  border: 1px solid rgba(71, 169, 253, 0.92);
  border-radius: 999px;
  color: #ffffff;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  background: -webkit-linear-gradient(top, rgba(26, 112, 194, 0.96) 0%, rgba(7, 45, 91, 0.96) 100%);
  background: -moz-linear-gradient(top, rgba(26, 112, 194, 0.96) 0%, rgba(7, 45, 91, 0.96) 100%);
  background: -o-linear-gradient(top, rgba(26, 112, 194, 0.96) 0%, rgba(7, 45, 91, 0.96) 100%);
  background: linear-gradient(180deg, rgba(26, 112, 194, 0.96) 0%, rgba(7, 45, 91, 0.96) 100%);
  box-shadow: inset 0 0 12px rgba(97, 190, 255, 0.35), 0 0 14px rgba(71, 169, 253, 0.28);
  -webkit-transition: border-color 0.2s ease, box-shadow 0.2s ease, -webkit-transform 0.2s ease, -webkit-filter 0.2s ease;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, -webkit-transform 0.2s ease, -webkit-filter 0.2s ease;
  -o-transition: border-color 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease, -o-transform 0.2s ease;
  -moz-transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease, -moz-transform 0.2s ease;
  transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
  transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease, -webkit-transform 0.2s ease, -moz-transform 0.2s ease, -o-transform 0.2s ease, -webkit-filter 0.2s ease;
}
.bt:hover {
  -webkit-transform: translateY(-1px);
     -moz-transform: translateY(-1px);
      -ms-transform: translateY(-1px);
       -o-transform: translateY(-1px);
          transform: translateY(-1px);
  border-color: #8ad0ff;
  -webkit-filter: brightness(1.12);
          filter: brightness(1.12);
  box-shadow: inset 0 0 16px rgba(140, 217, 255, 0.48), 0 0 18px rgba(71, 169, 253, 0.5);
}

.modal-open {
  overflow: hidden;
}

.modal {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: none;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 24px;
}
.modal.is-open {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
}

.modal__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 7, 17, 0.78);
  backdrop-filter: blur(3px);
}

.modal__dialog {
  position: relative;
  width: min(100%, 960px);
  max-height: -webkit-calc(100vh - 48px);
  max-height: -moz-calc(100vh - 48px);
  max-height: calc(100vh - 48px);
  overflow: auto;
  padding: 28px;
  border: 2px solid rgba(71, 169, 253, 0.72);
  border-radius: 8px;
  color: #eef6ff;
  background: -webkit-linear-gradient(top, rgba(3, 28, 58, 0.98), rgba(0, 12, 30, 0.98)), #000c1e;
  background: -moz-linear-gradient(top, rgba(3, 28, 58, 0.98), rgba(0, 12, 30, 0.98)), #000c1e;
  background: -o-linear-gradient(top, rgba(3, 28, 58, 0.98), rgba(0, 12, 30, 0.98)), #000c1e;
  background: linear-gradient(180deg, rgba(3, 28, 58, 0.98), rgba(0, 12, 30, 0.98)), #000c1e;
  box-shadow: inset 0 0 28px rgba(37, 126, 210, 0.24), 0 0 24px rgba(71, 169, 253, 0.34);
}

.modal__dialog--confirm {
  width: min(100%, 480px);
  padding: 32px 28px 28px;
  text-align: center;
}

.modal__close {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 36px;
  height: 36px;
  padding: 0;
  border: 0;
  cursor: pointer;
  background: transparent;
}
.modal__close span {
  position: absolute;
  top: 17px;
  left: 6px;
  width: 24px;
  height: 3px;
  border-radius: 999px;
  background: #9fd2ff;
  box-shadow: 0 0 8px rgba(85, 176, 255, 0.7);
}
.modal__close span:first-child {
  -webkit-transform: rotate(45deg);
     -moz-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
       -o-transform: rotate(45deg);
          transform: rotate(45deg);
}
.modal__close span:last-child {
  -webkit-transform: rotate(-45deg);
     -moz-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
       -o-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.modal__title {
  margin: 0 44px 18px 0;
  color: #ffffff;
  font-size: 24px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-shadow: 0 0 10px rgba(157, 209, 255, 0.42);
}

.modal__body {
  color: #cfe1f8;
  font-size: 16px;
  line-height: 1.75;
}
.modal__body p {
  margin: 0;
}

.modal__dialog--confirm .modal__title {
  margin: 0 0 16px;
  font-size: 24px;
  letter-spacing: 0.04em;
}

.modal__dialog--confirm .modal__body {
  font-size: 16px;
  line-height: 1.7;
}

.confirm-actions {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 16px;
  margin-top: 28px;
}

.confirm-actions__btn {
  min-width: 112px;
  height: 44px;
  padding: 0 24px;
  border: 1px solid rgba(159, 210, 255, 0.72);
  border-radius: 999px;
  color: #dcefff;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  background: rgba(12, 32, 62, 0.92);
  -webkit-transition: border-color 0.2s ease, box-shadow 0.2s ease, -webkit-transform 0.2s ease, -webkit-filter 0.2s ease;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, -webkit-transform 0.2s ease, -webkit-filter 0.2s ease;
  -o-transition: border-color 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease, -o-transform 0.2s ease;
  -moz-transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease, -moz-transform 0.2s ease;
  transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
  transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease, -webkit-transform 0.2s ease, -moz-transform 0.2s ease, -o-transform 0.2s ease, -webkit-filter 0.2s ease;
}

.confirm-actions__btn:hover {
  -webkit-transform: translateY(-1px);
     -moz-transform: translateY(-1px);
      -ms-transform: translateY(-1px);
       -o-transform: translateY(-1px);
          transform: translateY(-1px);
  border-color: #8ad0ff;
  -webkit-filter: brightness(1.12);
          filter: brightness(1.12);
  box-shadow: 0 0 14px rgba(71, 169, 253, 0.34);
}

.confirm-actions__btn--primary {
  border-color: rgba(71, 169, 253, 0.92);
  color: #ffffff;
  background: -webkit-linear-gradient(top, rgba(26, 112, 194, 0.96) 0%, rgba(7, 45, 91, 0.96) 100%);
  background: -moz-linear-gradient(top, rgba(26, 112, 194, 0.96) 0%, rgba(7, 45, 91, 0.96) 100%);
  background: -o-linear-gradient(top, rgba(26, 112, 194, 0.96) 0%, rgba(7, 45, 91, 0.96) 100%);
  background: linear-gradient(180deg, rgba(26, 112, 194, 0.96) 0%, rgba(7, 45, 91, 0.96) 100%);
  box-shadow: inset 0 0 12px rgba(97, 190, 255, 0.35), 0 0 14px rgba(71, 169, 253, 0.28);
}

.vote-login-modal {
  display: grid;
  gap: 20px;
}

.vote-login-modal__notice {
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.7;
}
.vote-login-modal__notice span {
  color: #ff4a4f;
}

.vote-login-modal__input {
  width: 100%;
  height: 48px;
  padding: 0 16px;
  border: 1px solid rgba(159, 210, 255, 0.72);
  border-radius: 8px;
  color: #1f2937;
  font-size: 16px;
  line-height: 1;
  background: #ffffff;
  outline: none;
  -webkit-transition: border-color 0.2s ease, box-shadow 0.2s ease;
  -o-transition: border-color 0.2s ease, box-shadow 0.2s ease;
  -moz-transition: border-color 0.2s ease, box-shadow 0.2s ease;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.vote-login-modal__input:focus {
  border-color: #47a9fd;
  box-shadow: 0 0 0 3px rgba(71, 169, 253, 0.18);
}

@media (max-width: 767px) {
  .modal {
    padding: 16px;
  }
  .modal__dialog {
    max-height: -webkit-calc(100vh - 32px);
    max-height: -moz-calc(100vh - 32px);
    max-height: calc(100vh - 32px);
    padding: 28px 22px 24px;
  }
  .confirm-actions {
    gap: 12px;
  }
  .confirm-actions__btn {
    -webkit-flex: 1;
       -moz-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0;
  }
}
.ic {
  position: relative;
  display: inline;
  width: 32px;
  height: 32px;
}

.ic_arr1 {
  -webkit-mask: url("../images/public/ic_arr.svg") no-repeat center;
          mask: url("../images/public/ic_arr.svg") no-repeat center;
  -webkit-mask-size: contain;
          mask-size: contain;
}

.ic_s {
  background: url(../images/public/ic_smartpush_A.svg) no-repeat;
  -o-background-size: cover;
     background-size: cover;
}

.animation {
  position: relative;
  width: 100%;
  height: 100vh;
}
.animation .fx {
  width: 100%;
  max-width: 860px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
     -moz-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
       -o-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 3;
}
.animation .fx .fx_inner {
  height: 0;
  padding-bottom: 100%;
  background: url(../images/animation/light_fx_fps.png) 0 0 no-repeat;
  background-repeat: no-repeat;
  /*----呼叫動畫名稱 ----*/
  -webkit-animation-name: Fps12p;
     -moz-animation-name: Fps12p;
       -o-animation-name: Fps12p;
          animation-name: Fps12p;
  /*----播放時間----*/
  -webkit-animation-duration: 1s;
     -moz-animation-duration: 1s;
       -o-animation-duration: 1s;
          animation-duration: 1s;
  /*----影格數----*/
  -webkit-animation-timing-function: steps(12, end);
     -moz-animation-timing-function: steps(12, end);
       -o-animation-timing-function: steps(12, end);
          animation-timing-function: steps(12, end);
  /*----播放次數 ----*/
  -webkit-animation-iteration-count: 1;
     -moz-animation-iteration-count: 1;
       -o-animation-iteration-count: 1;
          animation-iteration-count: 1;
  /*----停在最後一格 ----*/
  -webkit-animation-fill-mode: forwards;
     -moz-animation-fill-mode: forwards;
       -o-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  /*----background-size 的寬度值設為 N影格 ×100% ----*/
  -o-background-size: 1200% 100%;
     background-size: 1200% 100%;
  position: relative;
  display: block;
}
.animation .scenes {
  width: 100%;
  max-width: 640px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
     -moz-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
       -o-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 2;
}
.animation .scenes .scenes_inner {
  height: 0;
  padding-bottom: 100%;
}
.animation .bg {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
     -moz-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
       -o-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 1;
}
.animation .bg .bg_inner {
  height: 0;
  padding-bottom: 100%;
  background: url(../images/animation/light2_fx_fps.svg) 0 0 no-repeat;
  background-repeat: no-repeat;
  /*----呼叫動畫名稱 ----*/
  -webkit-animation-name: Fps12p;
     -moz-animation-name: Fps12p;
       -o-animation-name: Fps12p;
          animation-name: Fps12p;
  /*----播放時間----*/
  -webkit-animation-duration: 1s;
     -moz-animation-duration: 1s;
       -o-animation-duration: 1s;
          animation-duration: 1s;
  /*----影格數----*/
  -webkit-animation-timing-function: steps(12, end);
     -moz-animation-timing-function: steps(12, end);
       -o-animation-timing-function: steps(12, end);
          animation-timing-function: steps(12, end);
  /*----播放次數 ----*/
  -webkit-animation-iteration-count: 1;
     -moz-animation-iteration-count: 1;
       -o-animation-iteration-count: 1;
          animation-iteration-count: 1;
  /*----停在最後一格 ----*/
  -webkit-animation-fill-mode: forwards;
     -moz-animation-fill-mode: forwards;
       -o-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  /*----background-size 的寬度值設為 N影格 ×100% ----*/
  -o-background-size: 1200% 100%;
     background-size: 1200% 100%;
  position: relative;
  display: block;
}

.MG_icon {
  width: 100%;
  /*----物件需要顯示的寬高比例 ----*/
  height: 0;
  padding-bottom: 100%;
  /*----逐格動畫圖片檔 ----*/
  background: url(../images/public/ic_smartpush_A.svg) 0 0 no-repeat;
  background-repeat: no-repeat;
  /*----呼叫動畫名稱 ----*/
  -webkit-animation-name: Fps12p;
     -moz-animation-name: Fps12p;
       -o-animation-name: Fps12p;
          animation-name: Fps12p;
  /*----播放時間----*/
  -webkit-animation-duration: 1s;
     -moz-animation-duration: 1s;
       -o-animation-duration: 1s;
          animation-duration: 1s;
  /*----影格數----*/
  -webkit-animation-timing-function: steps(12, end);
     -moz-animation-timing-function: steps(12, end);
       -o-animation-timing-function: steps(12, end);
          animation-timing-function: steps(12, end);
  /*----播放次數 ----*/
  -webkit-animation-iteration-count: infinite;
     -moz-animation-iteration-count: infinite;
       -o-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
  /*----停在最後一格 ----*/
  -webkit-animation-fill-mode: forwards;
     -moz-animation-fill-mode: forwards;
       -o-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  /*----background-size 的寬度值設為 N影格 ×100% ----*/
  -o-background-size: 1200% 100%;
     background-size: 1200% 100%;
  position: relative;
  display: block;
}

@-webkit-keyframes Fps12p {
  0% {
    background-position: left top;
  }
  100% {
    /*----background-position 的結束位置為 100% + (100 ÷(N - 1))% ----*/
    background-position: 109.09% top;
  }
}

@-moz-keyframes Fps12p {
  0% {
    background-position: left top;
  }
  100% {
    /*----background-position 的結束位置為 100% + (100 ÷(N - 1))% ----*/
    background-position: 109.09% top;
  }
}

@-o-keyframes Fps12p {
  0% {
    background-position: left top;
  }
  100% {
    /*----background-position 的結束位置為 100% + (100 ÷(N - 1))% ----*/
    background-position: 109.09% top;
  }
}

@keyframes Fps12p {
  0% {
    background-position: left top;
  }
  100% {
    /*----background-position 的結束位置為 100% + (100 ÷(N - 1))% ----*/
    background-position: 109.09% top;
  }
}
.mod_tip {
  position: relative;
  display: inline-block;
  border-bottom: 1px dotted black;
  color: #000;
  cursor: pointer;
}
.mod_tip .active {
  color: red;
}
.mod_tip .tiptext {
  visibility: hidden;
  width: 120px;
  background-color: black;
  color: #fff;
  text-align: center;
  border-radius: 6px;
  padding: 5px 0;
  position: absolute;
  z-index: 1;
  top: 100%;
  left: 50%;
  margin-left: -60px;
  font-size: 15px;
}
.mod_tip .tiptext:after {
  content: "";
  position: absolute;
  bottom: 100%;
  left: 50%;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: transparent transparent black transparent;
}
.mod_tip:hover .tiptext {
  visibility: visible;
}
.mod_tip .toggle {
  visibility: visible;
}

.lightbox-target {
  display: none;
  position: fixed;
  top: 0;
  height: 100%;
  width: 100%;
  background: rgba(0, 0, 0, 0.7);
  -webkit-transition: opacity 0.5s ease-in-out;
  -o-transition: opacity 0.5s ease-in-out;
  -moz-transition: opacity 0.5s ease-in-out;
  transition: opacity 0.5s ease-in-out;
  z-index: 2000;
}

.lightbox-target .content {
  width: 90%;
  height: auto;
  background: #fff;
  color: #333;
  margin: auto;
  margin-top: 6%;
  padding: 8px;
  position: relative;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  border-radius: 12px;
}
.lightbox-target .content .lightboxbody {
  position: relative;
  max-height: 100%;
  overflow-y: auto;
  width: 100%;
  padding-left: 8px;
  padding-right: 8px;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
}
.lightbox-target .content .title {
  text-align: center;
  font-size: 28px;
  line-height: 52px;
}

.lightbox-target .content {
  max-width: 640px;
  max-height: 460px;
}

@media (max-width: 640px) {
  .lightbox-target .content {
    max-width: 640px;
    max-height: 640px;
  }
}
.lightboxopen {
  display: block;
}

.lightbox-close {
  display: block;
  width: 40px;
  height: 40px;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  background: #1a6de0;
  color: #fff;
  position: absolute;
  top: -20px;
  right: -20px;
  -webkit-transition: ease-in-out 0.5s;
  -o-transition: ease-in-out 0.5s;
  -moz-transition: ease-in-out 0.5s;
  transition: ease-in-out 0.5s;
  z-index: 99;
  cursor: pointer;
  border-radius: 99em;
}

.lightbox-close:before,
.lightbox-close:after {
  content: " ";
  display: block;
  height: 24px;
  width: 1px;
  background: #fff;
  position: absolute;
  left: 20px;
  top: 8px;
  -webkit-transform: rotate(45deg);
     -moz-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
       -o-transform: rotate(45deg);
          transform: rotate(45deg);
}

.lightbox-close:after {
  -webkit-transform: rotate(-45deg);
     -moz-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
       -o-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.scale11 {
  height: 0;
  padding-bottom: 100%;
  -o-background-size: cover;
     background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  display: block;
  overflow: hidden;
  position: relative;
}
.scale11 img {
  width: 100%;
}

.scale169 {
  height: 0;
  padding-bottom: 52.5%;
  -o-background-size: cover;
     background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  display: block;
  overflow: hidden;
  position: relative;
}
.scale169 img {
  width: 100%;
}

.ellipsis1 {
  overflow: hidden;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  line-clamp: 1;
  -webkit-line-clamp: 1;
}

.ellipsis2 {
  overflow: hidden;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  line-clamp: 2;
  -webkit-line-clamp: 2;
}

.ellipsis3 {
  overflow: hidden;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  line-clamp: 3;
  -webkit-line-clamp: 3;
}

.videobg {
  width: 100%;
  height: 100vh;
}
.videobg .video {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
}

.youtube-container {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}

.youtube-container iframe,
.youtube-container object,
.youtube-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.mod-pages {
  margin-top: 32px;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
}
.mod-pages .paginations {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.mod-pages .paginations .pageitem {
  width: 44px;
  height: 44px;
  line-height: 44px;
  border: #e5e5e5 solid 1px;
  border-radius: 8px;
  margin: 0 3px;
  background-color: #fff;
  text-align: center;
}
.mod-pages .paginations .active {
  border: 1px solid #1a6de0;
}
.mod-pages .paginations .active a {
  color: #1a6de0;
}

.table-normal {
  position: relative;
  margin: 0 auto 20px;
}
.table-normal .table-wrap {
  border-top: 1px solid #e5e5e5;
  border-left: 1px solid #e5e5e5;
}
.table-normal table {
  width: 100%;
  margin: auto;
  border-collapse: separate;
  border-spacing: 0;
  font-size: 16px;
}
.table-normal tr:nth-child(even) {
  background: #f9f9f9;
}
.table-normal th,
.table-normal td {
  padding: 8px 4px;
  border-right: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
  vertical-align: top;
  display: table-cell;
  vertical-align: middle;
  text-align: center;
}
.table-normal th {
  background: #47a9fd;
}
.table-normal th span {
  display: block;
  font-size: 13px;
}
.table-normal thead,
.table-normal tfoot {
  background: #f9f9f9;
}

.mod-table-scrollx {
  overflow-x: auto;
  margin: 0 auto 20px;
}
.mod-table-scrollx table {
  width: 100%;
  margin: auto;
  border-collapse: separate;
  border-spacing: 0;
  font-size: 15px;
  border-top: 1px solid #e5e5e5;
  border-left: 1px solid #e5e5e5;
}
.mod-table-scrollx tr:nth-child(even) {
  background: #f9f9f9;
}
.mod-table-scrollx th,
.mod-table-scrollx td {
  padding: 8px 4px;
  border-right: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
  vertical-align: top;
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  white-space: nowrap;
}
.mod-table-scrollx th {
  background: #47a9fd;
}
.mod-table-scrollx th span {
  display: block;
  font-size: 13px;
}

.list-decimal {
  padding-left: 24px;
}
.list-decimal li {
  list-style-type: decimal;
  margin-bottom: 8px;
}
.list-decimal li li {
  margin-left: 24px;
  list-style-type: disc;
}

.list-disc {
  padding-left: 24px;
}
.list-disc li {
  list-style-type: disc;
  margin-bottom: 8px;
}

.swiper-pagination-bullet-active {
  background: #1a6de0;
}

.ic {
  position: relative;
  display: inline-block;
  width: 32px;
  height: 32px;
}

.ic_search {
  background: url(../images/public/ic_search.svg) no-repeat;
  -o-background-size: cover;
     background-size: cover;
}

.ic_person {
  background: url(../images/public/ic_person.svg) no-repeat;
  -o-background-size: cover;
     background-size: cover;
}

.ic_older {
  background: url(../images/public/ic_older.svg) no-repeat;
  -o-background-size: cover;
     background-size: cover;
}

.ic_notify {
  background: url(../images/public/ic_notify.svg) no-repeat;
  -o-background-size: cover;
     background-size: cover;
}

.ic_s {
  background: url(../images/public/ic_smartpush_A.svg) no-repeat;
  -o-background-size: cover;
     background-size: cover;
}

.ic_fb {
  background: url(../images/public/ic_fb.svg) no-repeat center center;
  -o-background-size: cover;
     background-size: cover;
}

.ic_fb2 {
  background: url(../images/public/ic_fb2.svg) no-repeat center center;
  -o-background-size: cover;
     background-size: cover;
}

.ic_line {
  background: url(../images/public/ic_line.svg) no-repeat center center;
  -o-background-size: cover;
     background-size: cover;
}

.ic_line2 {
  background: url(../images/public/ic_line2.svg) no-repeat center center;
  -o-background-size: cover;
     background-size: cover;
}

.ic_language {
  background: url(../images/public/ic_language.svg) no-repeat;
  -o-background-size: contain;
     background-size: contain;
  background-position: 0 4px;
  position: relative;
  display: inline-block;
  width: 40px;
  height: 32px;
}

.ic_close {
  background: url(../images/public/ic_close.svg) no-repeat center center, #fff;
  -o-background-size: cover;
     background-size: cover;
  border-radius: 50%;
}

.ic_message {
  background: url(../images/public/ic_smartpush.svg) no-repeat center center, #fff;
  -o-background-size: 38px 38px;
     background-size: 38px 38px;
  width: 44px;
  height: 44px;
}

.message_MG {
  width: 100%;
  /*----物件需要顯示的寬高比例 ----*/
  height: 0;
  padding-bottom: 100%;
  /*----逐格動畫圖片檔 ----*/
  background: url(../images/public/ic_smartpush_A.svg) 0 0 no-repeat;
  background-repeat: no-repeat;
  /*----呼叫動畫名稱 ----*/
  -webkit-animation-name: Fps12p;
     -moz-animation-name: Fps12p;
       -o-animation-name: Fps12p;
          animation-name: Fps12p;
  /*----播放時間----*/
  -webkit-animation-duration: 1s;
     -moz-animation-duration: 1s;
       -o-animation-duration: 1s;
          animation-duration: 1s;
  /*----影格數----*/
  -webkit-animation-timing-function: steps(12, end);
     -moz-animation-timing-function: steps(12, end);
       -o-animation-timing-function: steps(12, end);
          animation-timing-function: steps(12, end);
  /*----播放次數 ----*/
  -webkit-animation-iteration-count: infinite;
     -moz-animation-iteration-count: infinite;
       -o-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
  /*----停在最後一格 ----*/
  -webkit-animation-fill-mode: forwards;
     -moz-animation-fill-mode: forwards;
       -o-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  /*----background-size 的寬度值設為 N影格 ×100% ----*/
  -o-background-size: 1200% 100%;
     background-size: 1200% 100%;
  position: relative;
  display: block;
}

@keyframes Fps12p {
  0% {
    background-position: left top;
  }
  100% {
    /*----background-position 的結束位置為 100% + (100 ÷(N - 1))% ----*/
    background-position: 109.09% top;
  }
}
a.sr-only {
  padding: 4px 8px;
  background: #d1a36d;
  color: #fff;
  position: fixed;
  top: -3rem;
  left: 0;
  -webkit-transition: top 1s ease-out;
  -o-transition: top 1s ease-out;
  -moz-transition: top 1s ease-out;
  transition: top 1s ease-out;
  z-index: 210;
}

a.sr-only:focus {
  position: fixed;
  left: 0px;
  top: 0px;
  outline-color: transparent;
  -webkit-transition: top 0.1s ease-in;
  -o-transition: top 0.1s ease-in;
  -moz-transition: top 0.1s ease-in;
  transition: top 0.1s ease-in;
  background: #d1a36d;
  font-weight: 700;
}

.heroheader {
  background: #fff;
  display: block;
  position: fixed;
  width: 100%;
  z-index: 200;
  top: 0;
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  -moz-transition: 0.5s;
  transition: 0.5s;
  border-top: 2px solid;
  -moz-border-image: -moz-linear-gradient(left, #aa0225, #aa0225 75%, #004738 75%) 1;
    -o-border-image: -o-linear-gradient(left, #aa0225, #aa0225 75%, #004738 75%) 1;
       border-image: -webkit-linear-gradient(left, #aa0225, #aa0225 75%, #004738 75%) 1;
       border-image: linear-gradient(to right, #aa0225, #aa0225 75%, #004738 75%) 1;
  box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
}
.heroheader .inner {
  width: 100%;
  max-width: 1260px;
  margin: 0 auto;
  position: relative;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 12px;
}
.heroheader .inner .logobox {
  -webkit-flex: 0 0 auto;
     -moz-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 72px;
}
.heroheader .inner .logobox .logo {
  display: inline-block;
  vertical-align: middle;
  height: 45px;
}
.heroheader .inner .logobox .logo img {
  width: 150px;
  padding-right: 8px;
}
.heroheader .inner .logobox span {
  color: #d1a36d;
  font-size: 1.1em;
  font-weight: 550;
  padding-top: 9px;
  padding-left: 9px;
  vertical-align: top;
  display: inline-block;
  border-left: 1px solid #c4c4c4;
}
.heroheader .inner .navbox {
  -webkit-flex: 1;
     -moz-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
     -moz-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.heroheader .inner .navbox .in {
  width: 100%;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-justify-content: space-between;
     -moz-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.heroheader .inner .navbox .in .nav {
  -webkit-flex: 1;
     -moz-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -webkit-order: 1;
     -moz-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.heroheader .inner .navbox .in .member {
  -webkit-flex: 0 0 auto;
     -moz-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  -webkit-order: 2;
     -moz-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}
.heroheader .inner .navbox .in .channel {
  display: none;
  -webkit-order: 3;
     -moz-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
}
.heroheader .inner .hamburger {
  display: none;
  width: 44px;
  height: 44px;
  background: url(../images/public/ic_hamburger.svg) no-repeat center center;
  -o-background-size: 28px;
     background-size: 28px;
  cursor: pointer;
}
.heroheader .inner .mod-message {
  width: 40px;
  height: 40px;
  cursor: pointer;
}
.heroheader .inner .mod-message .ic {
  width: 44px;
  height: 44px;
}

@media (max-width: 1000px) {
  .heroheader .inner {
    -webkit-justify-content: space-between;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .heroheader .inner .navbox {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    overflow-y: auto;
    background-color: #f5f5f5;
    z-index: 999;
  }
  .heroheader .inner .navbox .in {
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
  }
  .heroheader .inner .navbox .in .nav {
    -webkit-order: 2;
       -moz-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    -webkit-flex: 0 0 100%;
       -moz-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
  }
  .heroheader .inner .navbox .in .member {
    -webkit-order: 1;
       -moz-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    -webkit-flex: 0 0 100%;
       -moz-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    padding: 12px;
  }
  .heroheader .inner .navbox .in .channel {
    display: block;
    -webkit-flex: 0 0 100%;
       -moz-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    -webkit-order: 3;
       -moz-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
  .heroheader .inner .hamburger {
    display: inline-block;
  }
  .heroheader .inner .show {
    display: block;
  }
}
.member {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
}
.member li {
  display: none;
}
.member li:nth-child(1) {
  display: inline;
}

.membernav {
  position: relative;
  cursor: pointer;
}
.membernav .lists {
  position: absolute;
  display: none;
  background-color: #fff;
  width: 128px;
  top: 36px;
  right: 0;
  box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
  z-index: 110;
  border-radius: 12px;
  text-align: center;
}
.membernav .lists a {
  line-height: 44px;
  width: 100%;
  display: block;
  color: #333;
}
.membernav .lists a:hover {
  color: #d1a36d;
}
.membernav .lists a i {
  width: 20px;
  height: 20px;
  display: inline-block;
  margin-right: 8px;
}

@media (max-width: 1000px) {
  .member li {
    position: relative;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-align-items: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-flex: 0 0 auto;
       -moz-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    margin-left: 8px;
    height: 36px;
  }
  .member li:nth-child(2) {
    margin-left: auto;
  }
  .member li .ic {
    width: 36px;
    height: 36px;
    -o-background-size: 24px;
       background-size: 24px;
    background-position: center 8px;
  }
  .member li span {
    float: right;
    line-height: 36px;
  }
  .member li .close_hamburger .ic {
    -o-background-size: 18px;
       background-size: 18px;
    background-position: center center;
  }
  .membernav .lists {
    right: -88px;
  }
}
.nav-title {
  display: none;
}

@media (max-width: 1000px) {
  .nav-title {
    display: block;
    background: #e1e1e1;
    padding: 4px 12px;
    font-size: 0.9em;
    font-weight: bold;
    color: #333;
  }
}
.font0 {
  font-size: 0em;
}

.mod-language {
  cursor: pointer;
  position: relative;
}
.mod-language .language-content {
  display: none;
  position: absolute;
  background-color: #fff;
  min-width: 88px;
  top: 100%;
  right: 0;
  box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
  z-index: 110;
  border-radius: 12px;
  overflow: hidden;
}
.mod-language .language-content a {
  color: black;
  padding: 12px 16px;
  text-decoration: none;
  display: block;
  text-align: center;
}
.mod-language .language-content a:hover {
  background-color: #ddd;
}

.mod-message {
  cursor: pointer;
  position: relative;
}
.mod-message .message-content {
  display: none;
  position: absolute;
  background-color: #fff;
  min-width: 260px;
  top: 100%;
  right: 0;
  box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
  z-index: 110;
  padding: 8px;
}
.mod-message .message-content .bt {
  display: block;
  color: #e40439;
  text-align: center;
}

.mod-content-card {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  border-bottom: 1px solid #eee;
  padding: 8px 0;
}
.mod-content-card .pic {
  -webkit-flex: 0 0 88px;
     -moz-box-flex: 0;
      -ms-flex: 0 0 88px;
          flex: 0 0 88px;
  margin-right: 4px;
}
.mod-content-card .content {
  -webkit-flex: 1;
     -moz-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.mod-content-card .content .time {
  font-size: 0.8em;
  text-align: right;
  color: #999;
}

.loginbt {
  background-color: rgb(241, 241, 241);
  color: #333;
  padding: 8px 24px;
  border-radius: 50px;
}
.loginbt:hover {
  color: #d1a36d;
}

@media (max-width: 1000px) {
  .loginbt {
    display: inline-block;
  }
}
.channel {
  font-size: 1.1em;
}
.channel a {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  height: 50px;
  padding-left: 20px;
  background: #fff;
  border-bottom: 1px solid #e5e5e5;
  color: #333;
}
.channel a:hover {
  color: #d1a36d;
}
.channel a .pic {
  -webkit-flex: 0 0 52px;
     -moz-box-flex: 0;
      -ms-flex: 0 0 52px;
          flex: 0 0 52px;
  margin-right: 8px;
}
.channel a p {
  -webkit-flex: 1;
     -moz-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding-top: 12px;
}

.nav {
  display: block;
  background: #fff;
  font-size: 1.1em;
}
.nav .menu li {
  position: relative;
}
.nav .menu a {
  padding-left: 20px;
  line-height: 52px;
  font-weight: 550;
  color: #333;
}
.nav .menu a:hover {
  color: #d1a36d;
}
.nav .active {
  color: #d1a36d;
}
.nav .subhide {
  display: none;
}
.nav .open {
  display: block;
}
.nav {
  /*menu層style*/
}
.nav .menu > li a {
  display: block;
  border-bottom: 1px solid #e5e5e5;
}
.nav {
  /*第一層style*/
}
.nav .sub-menu {
  background-color: #fcfcfc;
}
.nav .sub-menu a {
  font-weight: normal;
  padding-left: 40px;
}
.nav {
  /*第二層style*/
}
.nav .sub-menu ul {
  background-color: #f6f6f6;
}
.nav .sub-menu ul a {
  font-size: 0.9em;
  color: #555;
  padding-left: 60px;
}
.nav {
  /*第三層style*/
}
.nav .sub-menu ul ul a {
  padding-left: 56px;
}
.nav .toggleIcon {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 44px;
  background: url(../images/public/ic_plus.svg) no-repeat;
  background-position: right 24px top 50%;
  margin-top: 5px;
  -o-background-size: 16px;
     background-size: 16px;
}
.nav .closebt {
  background: url(../images/public/ic_minus.svg) no-repeat;
  background-position: right 24px top 50%;
  -o-background-size: 16px;
     background-size: 16px;
}

/* nav pc版顯示*/
@media screen and (min-width: 1000px) {
  .nav {
    background: #fff;
    /*PC所有層基本style*/
  }
  .nav .menu {
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-justify-content: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .nav .menu li {
    position: relative;
    -webkit-flex: 0 0 auto;
       -moz-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    text-align: center;
    padding: 0 12px;
  }
  .nav .menu a {
    line-height: 40px;
    padding-left: 0px;
  }
  .nav .subhide {
    display: block;
  }
  .nav .open {
    display: block;
  }
  .nav {
    /*pc menu層style*/
  }
  .nav .menu > li a {
    display: block;
    border-bottom: 0px;
  }
  .nav {
    /*pc 第一層style*/
  }
  .nav .sub-menu {
    background: url(../images/public/megamenu_bg.jpg) no-repeat;
    -o-background-size: cover;
       background-size: cover;
    background-position: bottom;
    box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.06) 0px 2px 4px -1px;
    position: absolute;
    left: 0;
    width: 100%;
    padding: 12px 6px 32px;
  }
  .nav .sub-menu li {
    float: none;
    width: 15%;
    padding: 0 4px;
    display: inline-block;
    vertical-align: top;
  }
  .nav .sub-menu li a {
    font-weight: normal;
    padding-left: 0px;
    border-bottom: 1px solid #e5e5e5;
    background: url(../images/public/ic_nav.svg) no-repeat center left;
    text-align: left;
    padding-left: 12px;
  }
  .nav .sub-menu li a[href="javascript:void(0)"]:hover {
    color: #333;
    cursor: text;
  }
  .nav {
    /*pc 第二層style*/
  }
  .nav .sub-menu ul {
    background-color: transparent;
  }
  .nav .sub-menu ul li {
    width: 100%;
  }
  .nav .sub-menu ul li a {
    font-size: 0.9em;
    padding-left: 0px;
    border-bottom: 0;
    background: none;
  }
  .nav .sub-menu ul li a:hover {
    color: #d1a36d;
  }
  .nav {
    /*pc 第三層style*/
  }
  .nav .sub-menu ul ul {
    background-color: #f5f5f5;
  }
  .nav .sub-menu ul ul a {
    padding-left: 0px;
  }
  .toggleIcon {
    display: none;
  }
  .closebt {
    display: none;
  }
  .mega {
    position: static !important;
  }
  .mega > .subhide {
    display: none;
  }
  .mega > .open {
    display: block;
  }
}
footer {
  background: #444444;
  text-align: center;
  color: #fff;
  font-size: 0.9em;
}
footer p {
  width: 100%;
  max-width: 1260px;
  padding: 12px;
  margin: 0 auto;
}
footer .copywriter {
  background-color: #cf092c;
}

.roundpic {
  display: inline-block;
  width: 36px;
  height: 36px;
  overflow: hidden;
  border-radius: 50%;
  vertical-align: middle;
  border: 2px solid rgb(235, 235, 235);
}

.roundpic.line {
  border: 2px solid #7cd231;
}

.c-g {
  color: #5cf568 !important;
}

.case1 {
  --case1-edge: clamp(20px, 4vw, 32px);
  --case1-slice: 112;
  --text-main: #eef5ff;
  --text-muted: #a7b2c8;
  padding: 24px 28px;
  position: relative;
  color: var(--text-main);
  isolation: isolate;
}
.case1::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  border: var(--case1-edge) solid transparent;
  -moz-border-image: url("../images/case_bg2.png") var(--case1-slice) stretch;
    -o-border-image: url("../images/case_bg2.png") var(--case1-slice) stretch;
       border-image: url("../images/case_bg2.png") var(--case1-slice) fill stretch;
}
.case1 > * {
  position: relative;
  z-index: 1;
}

@media (max-width: 767px) {
  .case1 {
    padding: 20px 16px;
  }
}
.case2 {
  --case2-edge: clamp(20px, 4vw, 32px);
  --case2-slice: 112;
  --text-main: #eef5ff;
  --text-muted: #a7b2c8;
  padding: 24px 28px;
  position: relative;
  color: var(--text-main);
  isolation: isolate;
}
.case2::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  border: var(--case2-edge) solid transparent;
  -moz-border-image: url("../images/case_bg1.png") var(--case2-slice) stretch;
    -o-border-image: url("../images/case_bg1.png") var(--case2-slice) stretch;
       border-image: url("../images/case_bg1.png") var(--case2-slice) fill stretch;
}
.case2 > * {
  position: relative;
  z-index: 1;
}

@media (max-width: 767px) {
  .case2 {
    padding: 20px 16px;
  }
}
.match-filter {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(320px, 2fr);
  -webkit-align-items: start;
     -moz-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  gap: 18px;
}

.match-filter__team {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-align-self: start;
      -ms-flex-item-align: start;
          align-self: start;
  min-height: 52px;
  gap: 14px;
}

.match-filter__avatar {
  width: 76px;
  height: 76px;
  -webkit-flex: 0 0 76px;
     -moz-box-flex: 0;
      -ms-flex: 0 0 76px;
          flex: 0 0 76px;
  border: 2px solid rgba(116, 188, 255, 0.76);
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
  box-shadow: 0 0 12px rgba(71, 169, 253, 0.42);
}

.match-filter__team-name {
  color: #eef6ff;
  font-size: 18px;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-shadow: 0 0 8px rgba(157, 209, 255, 0.45);
}

.match-filter__field {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
}

.match-filter__label {
  color: #9ec8f5;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.match-filter select {
  height: 52px;
  width: 100%;
  border: 1px solid rgba(55, 126, 196, 0.68);
  border-radius: 8px;
  color: #eef6ff;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.02em;
  background-color: rgba(0, 12, 28, 0.58);
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 9L12 15L18 9' stroke='%2347A9FD' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-position: right 16px center;
  background-repeat: no-repeat;
  -o-background-size: 18px;
     background-size: 18px;
  box-shadow: inset 0 0 14px rgba(23, 91, 164, 0.22), 0 0 10px rgba(25, 117, 205, 0.18);
}
.match-filter select:focus {
  border-color: #47a9fd;
  box-shadow: inset 0 0 16px rgba(35, 139, 235, 0.3), 0 0 14px rgba(71, 169, 253, 0.36);
}
.match-filter select option {
  color: #0b1726;
}

@media (max-width: 900px) {
  .match-filter {
    grid-template-columns: 1fr;
    -webkit-align-items: stretch;
       -moz-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    gap: 14px;
  }
  .match-filter__team {
    min-height: 48px;
  }
  .match-filter__avatar {
    width: 48px;
    height: 48px;
    -webkit-flex-basis: 48px;
        -ms-flex-preferred-size: 48px;
            flex-basis: 48px;
  }
  .match-filter select {
    height: 48px;
  }
}
.remind {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 24px;
  margin-top: 20px;
  padding-top: 12px;
  border-top: 1px solid rgba(66, 142, 216, 0.32);
}

.remind__main {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 14px;
  min-width: 0;
}
.remind__main p {
  margin: 0;
  color: #eef6ff;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.04em;
  text-shadow: 0 0 8px rgba(157, 209, 255, 0.36);
}

.remind__icon {
  width: 42px;
  height: 42px;
  -webkit-flex: 0 0 42px;
     -moz-box-flex: 0;
      -ms-flex: 0 0 42px;
          flex: 0 0 42px;
  color: #ffc351;
  -webkit-filter: drop-shadow(0 0 7px rgba(255, 181, 61, 0.72));
          filter: drop-shadow(0 0 7px rgba(255, 181, 61, 0.72));
}
.remind__icon path {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.remind__deadline {
  min-width: 280px;
  text-align: right;
}

.remind__countdown {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: baseline;
     -moz-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -webkit-justify-content: flex-end;
     -moz-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: 8px;
  margin: 0;
  color: #b9dafc;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.04em;
}
.remind__countdown strong {
  color: #ffffff;
  font-size: 24px;
  font-weight: 900;
  line-height: 1;
  text-shadow: 0 0 10px rgba(71, 169, 253, 0.7), 0 0 18px rgba(71, 169, 253, 0.38);
}

.remind__note {
  margin: 8px 0 0;
  color: #8fb2d8;
  font-size: 13px;
  line-height: 1.4;
  letter-spacing: 0.04em;
}

@media (max-width: 767px) {
  .remind {
    grid-template-columns: 1fr;
    gap: 16px;
    margin-top: 18px;
    padding-top: 18px;
  }
  .remind__main {
    -webkit-align-items: flex-start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .remind__icon {
    width: 36px;
    height: 36px;
    -webkit-flex-basis: 36px;
        -ms-flex-preferred-size: 36px;
            flex-basis: 36px;
  }
  .remind__deadline {
    min-width: 0;
    text-align: left;
  }
  .remind__countdown {
    -webkit-justify-content: flex-start;
       -moz-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .remind__countdown strong {
    font-size: 22px;
  }
}
.lineup-table {
  overflow: hidden;
}

.lineup-table__head,
.lineup-row {
  display: grid;
  grid-template-columns: minmax(300px, 1.2fr) minmax(180px, 0.56fr);
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.lineup-table__head {
  min-height: 58px;
  color: #d8e9ff;
  font-size: 16px;
  letter-spacing: 0.1em;
  text-align: center;
  background: rgba(2, 20, 43, 0.74);
  border-bottom: 1px solid rgba(38, 91, 148, 0.46);
  text-shadow: 0 0 8px rgba(170, 211, 255, 0.38);
}
.lineup-table__head span {
  padding: 0 24px;
  text-align: center;
}
.lineup-table__head span:first-child {
  text-align: left;
}

.lineup-row {
  min-height: 92px;
  color: #e9f3ff;
  border-bottom: 1px solid rgba(33, 78, 128, 0.5);
  background: -webkit-linear-gradient(left, rgba(4, 32, 67, 0.64), rgba(1, 15, 35, 0.72)), rgba(0, 11, 28, 0.84);
  background: -moz-linear-gradient(left, rgba(4, 32, 67, 0.64), rgba(1, 15, 35, 0.72)), rgba(0, 11, 28, 0.84);
  background: -o-linear-gradient(left, rgba(4, 32, 67, 0.64), rgba(1, 15, 35, 0.72)), rgba(0, 11, 28, 0.84);
  background: linear-gradient(90deg, rgba(4, 32, 67, 0.64), rgba(1, 15, 35, 0.72)), rgba(0, 11, 28, 0.84);
}
.lineup-row:last-child {
  border-bottom: 0;
}

.lineup-member {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 22px;
  min-width: 0;
  padding: 12px 24px;
}

.lineup-avatar {
  width: 70px;
  height: 70px;
  -webkit-flex: 0 0 70px;
     -moz-box-flex: 0;
      -ms-flex: 0 0 70px;
          flex: 0 0 70px;
  border: 2px solid rgba(73, 161, 244, 0.68);
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
  box-shadow: 0 0 12px rgba(71, 169, 253, 0.44), inset 0 0 8px rgba(71, 169, 253, 0.3);
}

.lineup-member__info {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 14px;
  min-width: 0;
}

.lineup-name {
  color: #ffffff;
  font-size: 18px;
  line-height: 1.15;
  letter-spacing: 0.08em;
  text-shadow: 0 0 8px rgba(186, 215, 255, 0.42);
}

.lineup-role {
  display: -webkit-inline-flex;
  display: -moz-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: 64px;
  height: 30px;
  padding: 0 14px;
  border-radius: 999px;
  font-size: 15px;
  letter-spacing: 0.08em;
}

.lineup-role--member {
  color: #afd9ff;
  border: 1px solid rgba(56, 143, 230, 0.72);
  background: rgba(8, 48, 92, 0.62);
  box-shadow: inset 0 0 10px rgba(65, 171, 255, 0.25);
}

.lineup-role--leader {
  color: #ffd36d;
  border: 1px solid rgba(230, 165, 44, 0.8);
  background: rgba(87, 56, 12, 0.6);
  box-shadow: inset 0 0 10px rgba(255, 190, 56, 0.25);
}

.lineup-market {
  padding: 12px 28px;
  color: #d7e6f9;
  font-size: 16px;
  letter-spacing: 0.08em;
  text-align: left;
  text-shadow: 0 0 7px rgba(186, 215, 255, 0.32);
}

.lineup-action {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 12px 28px;
}

.lineup-btn {
  min-width: 170px;
  height: 54px;
  padding: 0 26px;
  border: 2px solid rgba(67, 175, 255, 0.86);
  border-radius: 10px;
  color: #d8f0ff;
  font-size: 18px;
  font-weight: 900;
  letter-spacing: 0.08em;
  line-height: 1;
  cursor: pointer;
  background: rgba(6, 45, 91, 0.72);
  box-shadow: inset 0 0 18px rgba(65, 171, 255, 0.34), 0 0 14px rgba(65, 171, 255, 0.36);
  -webkit-transition: color 0.2s ease, background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, -webkit-transform 0.2s ease;
  transition: color 0.2s ease, background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, -webkit-transform 0.2s ease;
  -o-transition: color 0.2s ease, background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, -o-transform 0.2s ease;
  -moz-transition: color 0.2s ease, background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease, -moz-transform 0.2s ease;
  transition: color 0.2s ease, background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
  transition: color 0.2s ease, background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease, -webkit-transform 0.2s ease, -moz-transform 0.2s ease, -o-transform 0.2s ease;
}
.lineup-btn:hover {
  -webkit-transform: translateY(-1px);
     -moz-transform: translateY(-1px);
      -ms-transform: translateY(-1px);
       -o-transform: translateY(-1px);
          transform: translateY(-1px);
  color: #ffffff;
  border-color: #76caff;
  background: rgba(14, 80, 148, 0.82);
  box-shadow: inset 0 0 22px rgba(105, 204, 255, 0.5), 0 0 18px rgba(77, 180, 255, 0.56);
}
.lineup-btn.is-active {
  color: #1e1705;
  border-color: rgba(255, 211, 106, 0.95);
  background: -webkit-linear-gradient(top, #ffd96f 0%, #d99a21 100%);
  background: -moz-linear-gradient(top, #ffd96f 0%, #d99a21 100%);
  background: -o-linear-gradient(top, #ffd96f 0%, #d99a21 100%);
  background: linear-gradient(180deg, #ffd96f 0%, #d99a21 100%);
  box-shadow: inset 0 0 16px rgba(255, 248, 178, 0.42), 0 0 18px rgba(255, 191, 55, 0.5);
}

@media (max-width: 900px) {
  .lineup-table__head {
    display: none;
  }
  .lineup-row {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 10px;
    min-height: 0;
    padding: 16px 0;
  }
  .lineup-member {
    grid-column: 1/-1;
    padding: 0;
    gap: 14px;
  }
  .lineup-avatar {
    width: 58px;
    height: 58px;
    -webkit-flex-basis: 58px;
        -ms-flex-preferred-size: 58px;
            flex-basis: 58px;
  }
  .lineup-member__info {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    gap: 8px;
  }
  .lineup-name {
    font-size: 21px;
  }
  .lineup-market {
    padding: 0 8px 0 0;
  }
  .lineup-action {
    -webkit-justify-content: flex-end;
       -moz-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    padding: 0 0 0 8px;
  }
  .lineup-btn {
    min-width: 150px;
    height: 46px;
    font-size: 16px;
  }
}
.selected-lineup {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
}

.selected-card {
  --selected-cut: 14px;
  position: relative;
  display: grid;
  justify-items: center;
  min-height: 220px;
  padding: 16px;
  color: #eef6ff;
  background: -webkit-radial-gradient(50% 28%, circle, rgba(35, 116, 208, 0.28), transparent 34%), -webkit-linear-gradient(top, rgba(3, 28, 58, 0.96), rgba(0, 13, 33, 0.98));
  background: -moz-radial-gradient(50% 28%, circle, rgba(35, 116, 208, 0.28), transparent 34%), -moz-linear-gradient(top, rgba(3, 28, 58, 0.96), rgba(0, 13, 33, 0.98));
  background: -o-radial-gradient(50% 28%, circle, rgba(35, 116, 208, 0.28), transparent 34%), -o-linear-gradient(top, rgba(3, 28, 58, 0.96), rgba(0, 13, 33, 0.98));
  background: radial-gradient(circle at 50% 28%, rgba(35, 116, 208, 0.28), transparent 34%), linear-gradient(180deg, rgba(3, 28, 58, 0.96), rgba(0, 13, 33, 0.98));
  box-shadow: inset 0 0 26px rgba(255, 195, 81, 0.14), 0 0 16px rgba(255, 195, 81, 0.22);
}
.selected-card::before {
  content: "";
  position: absolute;
  inset: 0;
  padding: 2px;
  pointer-events: none;
  background: -webkit-linear-gradient(315deg, rgba(255, 237, 169, 0.98), rgba(255, 195, 81, 0.78) 18%, rgba(128, 85, 24, 0.52) 50%, rgba(255, 195, 81, 0.8) 82%, rgba(255, 237, 169, 0.98));
  background: -moz-linear-gradient(315deg, rgba(255, 237, 169, 0.98), rgba(255, 195, 81, 0.78) 18%, rgba(128, 85, 24, 0.52) 50%, rgba(255, 195, 81, 0.8) 82%, rgba(255, 237, 169, 0.98));
  background: -o-linear-gradient(315deg, rgba(255, 237, 169, 0.98), rgba(255, 195, 81, 0.78) 18%, rgba(128, 85, 24, 0.52) 50%, rgba(255, 195, 81, 0.8) 82%, rgba(255, 237, 169, 0.98));
  background: linear-gradient(135deg, rgba(255, 237, 169, 0.98), rgba(255, 195, 81, 0.78) 18%, rgba(128, 85, 24, 0.52) 50%, rgba(255, 195, 81, 0.8) 82%, rgba(255, 237, 169, 0.98));
  -webkit-clip-path: inherit;
          clip-path: inherit;
  -webkit-mask: -webkit-linear-gradient(#000, #000) content-box, -webkit-linear-gradient(#000, #000);
          mask: linear-gradient(#000, #000) content-box, linear-gradient(#000, #000);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}

.selected-card__remove {
  position: absolute;
  top: 18px;
  right: 18px;
  width: 34px;
  height: 34px;
  padding: 0;
  border: 0;
  cursor: pointer;
  background: transparent;
}
.selected-card__remove span {
  position: absolute;
  top: 16px;
  left: 5px;
  width: 24px;
  height: 3px;
  border-radius: 999px;
  background: #9fd2ff;
  box-shadow: 0 0 8px rgba(85, 176, 255, 0.7);
}
.selected-card__remove span:first-child {
  -webkit-transform: rotate(45deg);
     -moz-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
       -o-transform: rotate(45deg);
          transform: rotate(45deg);
}
.selected-card__remove span:last-child {
  -webkit-transform: rotate(-45deg);
     -moz-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
       -o-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.selected-card__rank {
  position: absolute;
  top: 28px;
  left: 26px;
  display: grid;
  place-items: center;
  width: 50px;
  height: 58px;
  color: #bfdfff;
  font-size: 30px;
  font-weight: 900;
  line-height: 1;
  text-shadow: 0 0 8px rgba(111, 188, 255, 0.78);
  background: rgba(9, 44, 86, 0.76);
  -webkit-clip-path: polygon(50% 0, 92% 24%, 92% 76%, 50% 100%, 8% 76%, 8% 24%);
          clip-path: polygon(50% 0, 92% 24%, 92% 76%, 50% 100%, 8% 76%, 8% 24%);
  box-shadow: inset 0 0 13px rgba(71, 169, 253, 0.32);
}
.selected-card__rank::before {
  content: "";
  position: absolute;
  inset: 3px;
  border: 2px solid rgba(76, 163, 245, 0.62);
  -webkit-clip-path: inherit;
          clip-path: inherit;
}

.selected-card__rank--gold {
  color: #ffe8a0;
  text-shadow: 0 0 8px rgba(255, 195, 81, 0.86);
  background: url("data:image/svg+xml,%3Csvg width='50' height='58' viewBox='0 0 50 58' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M25 1L48 14.5V43.5L25 57L2 43.5V14.5L25 1Z' fill='%235C3E0D' fill-opacity='0.8' stroke='%23FFE8A0' stroke-width='1'/%3E%3C/svg%3E") center/contain no-repeat;
}
.selected-card__rank--gold::before {
  display: none;
}

.selected-card__avatar {
  width: 112px;
  height: 112px;
  border: 3px solid rgba(71, 169, 253, 0.72);
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
  box-shadow: 0 0 14px rgba(71, 169, 253, 0.55), inset 0 0 12px rgba(71, 169, 253, 0.36);
}

.selected-card__body {
  width: 100%;
  margin-top: 18px;
  text-align: center;
}

.selected-card__name-row {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 12px;
  min-width: 0;
}
.selected-card__name-row h3 {
  margin: 0;
  color: #ffffff;
  font-size: 20px;
  letter-spacing: 0.08em;
  text-shadow: 0 0 8px rgba(186, 215, 255, 0.48);
}

.selected-card__role {
  display: -webkit-inline-flex;
  display: -moz-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: 56px;
  height: 28px;
  padding: 0 12px;
  border: 1px solid rgba(56, 143, 230, 0.72);
  border-radius: 999px;
  color: #afd9ff;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0.06em;
  background: rgba(8, 48, 92, 0.62);
}

.selected-card__role--leader {
  color: #ffd36d;
  border-color: rgba(230, 165, 44, 0.8);
  background: rgba(87, 56, 12, 0.6);
}

.selected-card p {
  margin: 10px 0 0;
  color: #d6e6f7;
  font-size: 16px;
  letter-spacing: 0.08em;
  text-shadow: 0 0 7px rgba(186, 215, 255, 0.32);
}

@media (max-width: 1180px) {
  .selected-lineup {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 640px) {
  .selected-lineup {
    grid-template-columns: 1fr;
  }
}
.schedule-timeline {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 44px minmax(0, 1fr) 44px minmax(0, 1fr);
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 12px;
}

.timeline-step {
  --timeline-edge: clamp(14px, 2vw, 22px);
  --timeline-slice: 112;
  position: relative;
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr);
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: 116px;
  color: #fff;
  border: var(--timeline-edge) solid transparent;
  -moz-border-image: url("../images/case_bg1.png") var(--timeline-slice) stretch;
    -o-border-image: url("../images/case_bg1.png") var(--timeline-slice) stretch;
       border-image: url("../images/case_bg1.png") var(--timeline-slice) fill stretch;
}

.timeline-step__meta {
  display: grid;
  justify-items: center;
  gap: 8px;
  padding-right: 0px;
  border-right: 2px solid rgba(25, 113, 205, 0.55);
}

.timeline-step__no {
  color: #d9edff;
  font-size: clamp(30px, 2.9vw, 36px);
  font-weight: 700;
  line-height: 1;
  text-shadow: 0 0 8px rgba(111, 193, 255, 0.9), 0 0 18px rgba(42, 122, 220, 0.75);
}

.timeline-step__icon {
  width: 44px;
  height: 44px;
  color: #b9ddff;
  -webkit-filter: drop-shadow(0 0 6px rgba(92, 177, 255, 0.75));
          filter: drop-shadow(0 0 6px rgba(92, 177, 255, 0.75));
}
.timeline-step__icon path {
  fill: none;
  stroke: currentColor;
  stroke-width: 3;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.timeline-step__content {
  padding-left: 28px;
  min-width: 0;
}
.timeline-step__content p {
  margin: 8px 0 0;
  font-size: clamp(16px, 1.5vw, 18px);
  line-height: 1.22;
  color: #fff;
}

.timeline-step__date {
  display: block;
  color: #fff;
  font-size: clamp(18px, 2.35vw, 24px);
  font-weight: 800;
  line-height: 1;
}

.timeline-arrow {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #4ea9ff;
  -webkit-filter: drop-shadow(0 0 7px rgba(54, 150, 255, 0.95));
          filter: drop-shadow(0 0 7px rgba(54, 150, 255, 0.95));
}
.timeline-arrow svg {
  width: 38px;
  height: 38px;
}
.timeline-arrow path {
  fill: none;
  stroke: currentColor;
  stroke-width: 4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

@media (max-width: 1180px) {
  .schedule-timeline {
    grid-template-columns: minmax(0, 1fr) 34px minmax(0, 1fr) 34px minmax(0, 1fr);
    gap: 8px;
  }
  .timeline-step {
    grid-template-columns: 82px minmax(0, 1fr);
    padding: 12px 0px;
  }
  .timeline-step__content {
    padding-left: 16px;
  }
}
@media (max-width: 767px) {
  .schedule-timeline {
    grid-template-columns: 1fr;
    gap: 8px;
    padding-top: 0;
  }
  .schedule-timeline::before {
    top: 10px;
    bottom: 10px;
    left: 28px;
    right: auto;
    width: 2px;
    height: auto;
    background: -webkit-linear-gradient(top, rgba(83, 182, 255, 0.35), rgba(105, 194, 255, 0.95), rgba(83, 182, 255, 0.35));
    background: -moz-linear-gradient(top, rgba(83, 182, 255, 0.35), rgba(105, 194, 255, 0.95), rgba(83, 182, 255, 0.35));
    background: -o-linear-gradient(top, rgba(83, 182, 255, 0.35), rgba(105, 194, 255, 0.95), rgba(83, 182, 255, 0.35));
    background: linear-gradient(180deg, rgba(83, 182, 255, 0.35), rgba(105, 194, 255, 0.95), rgba(83, 182, 255, 0.35));
  }
  .timeline-step {
    grid-template-columns: 78px minmax(0, 1fr);
    min-height: 108px;
    padding: 12px 0px;
  }
  .timeline-step::before {
    top: 50%;
    left: -10px;
    width: 18px;
    height: 18px;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
         -o-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .timeline-step__content {
    padding-left: 16px;
  }
  .timeline-arrow {
    -webkit-transform: rotate(90deg);
       -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
         -o-transform: rotate(90deg);
            transform: rotate(90deg);
  }
}
/* 表單容器與網格佈局 */
.rules-section,
.review-section {
  margin-top: 28px;
}

.rules-bento {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 14px 28px;
  margin-top: 18px;
}

.rules-bento__column {
  display: grid;
  gap: 14px;
  min-width: 0;
}

.rules-bento__column--left {
  grid-template-rows: repeat(3, minmax(102px, auto));
}

.rules-bento__column--right {
  grid-template-rows: repeat(2, minmax(0, 1fr));
}

.rule-card {
  --rule-cut: 16px;
  position: relative;
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: 102px;
  padding: 22px 28px;
  color: #d8e4f8;
}
.rule-card p {
  margin: 0;
  font-size: clamp(18px, 1.45vw, 20px);
  line-height: 1.75;
  letter-spacing: 0.04em;
  text-shadow: 0 0 5px rgba(180, 211, 255, 0.45);
}

.rule-card__icon {
  width: 50px;
  height: 50px;
  color: #ffc351;
  -webkit-filter: drop-shadow(0 0 7px rgba(255, 181, 61, 0.72));
          filter: drop-shadow(0 0 7px rgba(255, 181, 61, 0.72));
}
.rule-card__icon path,
.rule-card__icon rect,
.rule-card__icon circle {
  fill: none;
  stroke: currentColor;
  stroke-width: 3;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.review-table-wrap {
  margin-top: 12px;
  overflow-x: auto;
  cursor: -webkit-grab;
  cursor: -moz-grab;
  cursor: grab;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-overflow-scrolling: touch;
  border: 2px solid rgba(42, 109, 176, 0.62);
  border-radius: 22px;
  background: rgba(1, 20, 43, 0.88);
  box-shadow: inset 0 0 28px rgba(20, 91, 164, 0.22), 0 0 18px rgba(38, 124, 204, 0.22);
}
.review-table-wrap.is-dragging {
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing;
  cursor: grabbing;
}

.review-toolbar {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: space-between;
     -moz-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 16px;
}

.review-count {
  margin: 0;
  color: #dce7f7;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-shadow: 0 0 6px rgba(176, 206, 245, 0.42);
}

.review-batch-actions {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 16px;
}

.review-batch-btn {
  min-width: 168px;
  height: 48px;
  padding: 0 22px;
  border-radius: 8px;
  font-size: 16px;
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1;
  cursor: pointer;
  -webkit-transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease;
  -o-transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease;
  -moz-transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease;
  transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease;
}

.review-batch-btn--pass {
  color: #a9f4bd;
  border: 2px solid rgba(82, 210, 114, 0.72);
  background: rgba(15, 77, 47, 0.42);
  box-shadow: inset 0 0 10px rgba(84, 214, 116, 0.36), 0 0 8px rgba(84, 214, 116, 0.28);
}
.review-batch-btn--pass:hover {
  color: #e8fff0;
  border-color: rgba(128, 255, 160, 0.96);
  background: rgba(28, 126, 70, 0.64);
  box-shadow: inset 0 0 14px rgba(118, 255, 151, 0.52), 0 0 14px rgba(118, 255, 151, 0.48);
}

.review-batch-btn--fail {
  color: #ffd0cd;
  border: 2px solid rgba(235, 91, 83, 0.82);
  background: rgba(86, 22, 30, 0.58);
  box-shadow: inset 0 0 16px rgba(236, 91, 83, 0.34), 0 0 12px rgba(236, 91, 83, 0.32);
}
.review-batch-btn--fail:hover {
  color: #fff0ef;
  border-color: rgb(255, 126, 119);
  background: rgba(140, 34, 43, 0.76);
  box-shadow: inset 0 0 20px rgba(255, 119, 112, 0.48), 0 0 18px rgba(255, 119, 112, 0.52);
}

.review-table {
  width: 100%;
  min-width: 800px;
  border-collapse: separate;
  border-spacing: 0;
  color: #dce7f7;
  font-size: clamp(16px, 1.35vw, 20px);
  text-align: center;
}
.review-table th,
.review-table td {
  padding: 12px 8px;
  border-right: 2px solid rgba(51, 93, 139, 0.55);
  border-bottom: 2px solid rgba(51, 93, 139, 0.55);
  white-space: nowrap;
  font-size: 16px;
}
.review-table th {
  color: #eef6ff;
  background: rgba(8, 42, 78, 0.92);
  font-weight: 500;
  letter-spacing: 0.06em;
  text-shadow: 0 0 6px rgba(178, 213, 255, 0.55);
}
.review-table td {
  background: rgba(2, 25, 52, 0.76);
  text-shadow: 0 0 5px rgba(176, 206, 245, 0.32);
}
.review-table th:last-child,
.review-table td:last-child {
  border-right: 0;
}
.review-table tbody tr:last-child td {
  border-bottom: 0;
}
.review-table .review-select-cell {
  width: 56px;
  min-width: 56px;
  text-align: center;
}
.review-table .mgc {
  margin: 0;
}

.review-avatar {
  width: 58px;
  height: 58px;
  border: 3px solid rgba(168, 195, 224, 0.76);
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
  vertical-align: middle;
  box-shadow: 0 0 9px rgba(126, 176, 224, 0.55);
}

.review-status {
  display: -webkit-inline-flex;
  display: -moz-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  color: #ffc34d;
}
.review-status::before {
  content: "";
  width: 15px;
  height: 15px;
  border-radius: 50%;
  background: -webkit-radial-gradient(circle, #ffd36a 35%, #e59b19 68%);
  background: -moz-radial-gradient(circle, #ffd36a 35%, #e59b19 68%);
  background: -o-radial-gradient(circle, #ffd36a 35%, #e59b19 68%);
  background: radial-gradient(circle, #ffd36a 35%, #e59b19 68%);
  box-shadow: 0 0 7px rgba(255, 185, 51, 0.8);
}
.review-status--passed {
  color: #7df2a0;
}
.review-status--passed::before {
  background: -webkit-radial-gradient(circle, #9cffb6 35%, #28b95b 68%);
  background: -moz-radial-gradient(circle, #9cffb6 35%, #28b95b 68%);
  background: -o-radial-gradient(circle, #9cffb6 35%, #28b95b 68%);
  background: radial-gradient(circle, #9cffb6 35%, #28b95b 68%);
  box-shadow: 0 0 7px rgba(83, 255, 135, 0.72);
}
.review-status--failed {
  color: #ffaaa7;
}
.review-status--failed::before {
  background: -webkit-radial-gradient(circle, #ffb3af 35%, #e0433c 68%);
  background: -moz-radial-gradient(circle, #ffb3af 35%, #e0433c 68%);
  background: -o-radial-gradient(circle, #ffb3af 35%, #e0433c 68%);
  background: radial-gradient(circle, #ffb3af 35%, #e0433c 68%);
  box-shadow: 0 0 7px rgba(255, 105, 96, 0.72);
}

.review-btn {
  min-width: 78px;
  height: 42px;
  margin: 0 5px;
  padding: 0 14px;
  border-radius: 8px;
  line-height: 1;
  cursor: pointer;
  color: #8fa9c8;
  border: 2px solid rgba(73, 117, 162, 0.48);
  background: rgba(5, 28, 58, 0.36);
  box-shadow: inset 0 0 8px rgba(75, 138, 202, 0.16);
  -webkit-transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease, -webkit-transform 0.2s ease;
  transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease, -webkit-transform 0.2s ease;
  -o-transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease, -o-transform 0.2s ease;
  -moz-transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease, transform 0.2s ease, -moz-transform 0.2s ease;
  transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease, transform 0.2s ease;
  transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease, transform 0.2s ease, -webkit-transform 0.2s ease, -moz-transform 0.2s ease, -o-transform 0.2s ease;
}

.review-btn--pass.is-selected {
  color: #a9f4bd;
  border: 2px solid rgba(82, 210, 114, 0.72);
  background: rgba(15, 77, 47, 0.42);
  box-shadow: inset 0 0 10px rgba(84, 214, 116, 0.36), 0 0 8px rgba(84, 214, 116, 0.28);
}
.review-btn--pass.is-selected:hover {
  color: #e8fff0;
  border-color: rgba(128, 255, 160, 0.96);
  background: rgba(28, 126, 70, 0.64);
  box-shadow: inset 0 0 14px rgba(118, 255, 151, 0.52), 0 0 14px rgba(118, 255, 151, 0.48);
}

.review-btn--fail.is-selected {
  color: #ffaaa7;
  border: 2px solid rgba(235, 91, 83, 0.76);
  background: rgba(86, 22, 30, 0.44);
  box-shadow: inset 0 0 10px rgba(236, 91, 83, 0.34), 0 0 8px rgba(236, 91, 83, 0.25);
}
.review-btn--fail.is-selected:hover {
  color: #ffe4e2;
  border-color: rgba(255, 126, 119, 0.98);
  background: rgba(140, 34, 43, 0.66);
  box-shadow: inset 0 0 14px rgba(255, 119, 112, 0.5), 0 0 14px rgba(255, 119, 112, 0.45);
}

@media (max-width: 767px) {
  .rules-section,
  .review-section {
    margin-top: 28px;
  }
  .rules-bento {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  .rules-bento__column {
    grid-template-rows: none;
    gap: 12px;
  }
  .rule-card,
  .rule-card--large {
    grid-template-columns: 58px minmax(0, 1fr);
    min-height: 0;
    padding: 18px 20px;
  }
  .rule-card__icon {
    width: 42px;
    height: 42px;
  }
  .review-table-wrap {
    border-radius: 16px;
  }
  .review-toolbar {
    -webkit-align-items: flex-start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-flex-direction: column;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .review-batch-actions {
    width: 100%;
    gap: 10px;
  }
  .review-batch-btn {
    -webkit-flex: 1;
       -moz-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0;
    padding: 0 12px;
  }
  .review-table {
    min-width: 1040px;
  }
}
.large-action-buttons {
  max-width: 720px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 288fr) minmax(0, 320fr);
  gap: 24px;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.large-action-buttons:has(> .large-action-btn:only-child), .large-action-buttons.large-action-buttons--single {
  max-width: 320px;
  grid-template-columns: 1fr;
  justify-items: center;
}

.large-action-btn {
  display: block;
  border: 0;
  background: transparent;
  line-height: 0;
  -webkit-transition: -webkit-filter 0.2s ease, -webkit-transform 0.2s ease;
  transition: -webkit-filter 0.2s ease, -webkit-transform 0.2s ease;
  -o-transition: filter 0.2s ease, -o-transform 0.2s ease;
  -moz-transition: filter 0.2s ease, transform 0.2s ease, -moz-transform 0.2s ease;
  transition: filter 0.2s ease, transform 0.2s ease;
  transition: filter 0.2s ease, transform 0.2s ease, -webkit-filter 0.2s ease, -webkit-transform 0.2s ease, -moz-transform 0.2s ease, -o-transform 0.2s ease;
  cursor: pointer;
}
.large-action-btn img {
  width: 100%;
  height: auto;
  vertical-align: top;
}
.large-action-btn:hover {
  -webkit-filter: brightness(1.15) drop-shadow(0 0 16px rgba(75, 178, 255, 0.55));
          filter: brightness(1.15) drop-shadow(0 0 16px rgba(75, 178, 255, 0.55));
  -webkit-transform: translateY(-2px);
     -moz-transform: translateY(-2px);
      -ms-transform: translateY(-2px);
       -o-transform: translateY(-2px);
          transform: translateY(-2px);
}

.modal__dialog--create-team {
  width: min(100%, 520px);
}

.modal__dialog--consent {
  width: min(100%, 680px);
}

.consent-form {
  display: grid;
  gap: 22px;
}

.consent-form__list {
  display: grid;
  gap: 14px;
  margin: 0;
  padding-left: 1.5em;
  color: #dcecff;
  font-size: 16px;
  line-height: 1.8;
}
.consent-form__list li {
  list-style: decimal outside;
}
.consent-form__list strong {
  color: #ffffff;
  font-weight: 900;
}

.consent-form__check {
  display: -webkit-inline-flex;
  display: -moz-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0;
  padding: 10px 12px;
  border: 1px solid rgba(71, 169, 253, 0.32);
  border-radius: 8px;
  color: #ffffff;
  font-size: 16px;
  font-weight: 800;
  background: rgba(5, 28, 58, 0.42);
  cursor: pointer;
}
.consent-form__check .mgc {
  margin: 0;
}

.consent-form__submit {
  display: -webkit-inline-flex;
  display: -moz-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  justify-self: end;
  min-width: 132px;
  min-height: 44px;
  padding: 10px 24px;
  border: 1px solid rgba(255, 204, 98, 0.88);
  border-radius: 8px;
  color: #08111f;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.2;
  background: #ffcc62;
  box-shadow: 0 0 14px rgba(255, 204, 98, 0.3);
  cursor: pointer;
  -webkit-transition: box-shadow 0.2s ease, -webkit-transform 0.2s ease, -webkit-filter 0.2s ease;
  transition: box-shadow 0.2s ease, -webkit-transform 0.2s ease, -webkit-filter 0.2s ease;
  -o-transition: filter 0.2s ease, box-shadow 0.2s ease, -o-transform 0.2s ease;
  -moz-transition: transform 0.2s ease, filter 0.2s ease, box-shadow 0.2s ease, -moz-transform 0.2s ease;
  transition: transform 0.2s ease, filter 0.2s ease, box-shadow 0.2s ease;
  transition: transform 0.2s ease, filter 0.2s ease, box-shadow 0.2s ease, -webkit-transform 0.2s ease, -moz-transform 0.2s ease, -o-transform 0.2s ease, -webkit-filter 0.2s ease;
}
.consent-form__submit:hover, .consent-form__submit:focus-visible {
  -webkit-transform: translateY(-1px);
     -moz-transform: translateY(-1px);
      -ms-transform: translateY(-1px);
       -o-transform: translateY(-1px);
          transform: translateY(-1px);
  -webkit-filter: brightness(1.08);
          filter: brightness(1.08);
  box-shadow: 0 0 18px rgba(255, 204, 98, 0.42);
}
.consent-form__submit:disabled {
  color: rgba(255, 255, 255, 0.46);
  border-color: rgba(143, 169, 200, 0.28);
  background: rgba(143, 169, 200, 0.22);
  box-shadow: none;
  cursor: not-allowed;
  -webkit-transform: none;
     -moz-transform: none;
      -ms-transform: none;
       -o-transform: none;
          transform: none;
  -webkit-filter: none;
          filter: none;
}

.create-team-form {
  display: grid;
  gap: 18px;
}

.create-team-form__field {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  color: #dcecff;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;
}

.create-team-form__field em {
  color: #ff646a;
}

.create-team-form__field input:not([type=file]) {
  width: 100%;
  min-height: 48px;
  padding: 10px 14px;
  border: 1px solid rgba(159, 210, 255, 0.72);
  border-radius: 8px;
  color: #1f2937;
  font-size: 16px;
  line-height: 1.2;
  background: #ffffff;
  outline: none;
  -webkit-transition: border-color 0.2s ease, box-shadow 0.2s ease;
  -o-transition: border-color 0.2s ease, box-shadow 0.2s ease;
  -moz-transition: border-color 0.2s ease, box-shadow 0.2s ease;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.create-team-form__field input:not([type=file]):focus {
  border-color: #47a9fd;
  box-shadow: 0 0 0 3px rgba(71, 169, 253, 0.18);
}

.create-team-form__submit {
  display: -webkit-inline-flex;
  display: -moz-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  min-height: 48px;
  margin-top: 8px;
  padding: 10px 24px;
  border: 1px solid rgba(255, 204, 98, 0.88);
  border-radius: 8px;
  color: #08111f;
  font-size: 18px;
  font-weight: 900;
  line-height: 1.2;
  background: #ffcc62;
  box-shadow: 0 0 14px rgba(255, 204, 98, 0.3);
  cursor: pointer;
  -webkit-transition: box-shadow 0.2s ease, -webkit-transform 0.2s ease, -webkit-filter 0.2s ease;
  transition: box-shadow 0.2s ease, -webkit-transform 0.2s ease, -webkit-filter 0.2s ease;
  -o-transition: filter 0.2s ease, box-shadow 0.2s ease, -o-transform 0.2s ease;
  -moz-transition: transform 0.2s ease, filter 0.2s ease, box-shadow 0.2s ease, -moz-transform 0.2s ease;
  transition: transform 0.2s ease, filter 0.2s ease, box-shadow 0.2s ease;
  transition: transform 0.2s ease, filter 0.2s ease, box-shadow 0.2s ease, -webkit-transform 0.2s ease, -moz-transform 0.2s ease, -o-transform 0.2s ease, -webkit-filter 0.2s ease;
}

.create-team-form__submit:hover,
.create-team-form__submit:focus-visible {
  -webkit-transform: translateY(-1px);
     -moz-transform: translateY(-1px);
      -ms-transform: translateY(-1px);
       -o-transform: translateY(-1px);
          transform: translateY(-1px);
  -webkit-filter: brightness(1.08);
          filter: brightness(1.08);
  box-shadow: 0 0 18px rgba(255, 204, 98, 0.42);
}

@media (max-width: 767px) {
  .large-action-buttons {
    max-width: 80%;
    grid-template-columns: 1fr;
    gap: 14px;
  }
}
.form-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
  max-width: 1200px;
  width: 100%;
}

.form-container--join {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

/* 各欄樣式 */
.form-column {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 24px;
}

/* 表單群組 (標籤 + 輸入框) */
.form-group {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.form-group label {
  font-size: 16px;
  color: #c0d0e0;
  margin-bottom: 8px;
}

.required {
  color: #ef4444; /* 紅色星號 */
  margin-left: 4px;
}

/* 輸入框與文字區域通用樣式 */
.input-wrapper {
  position: relative;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

input[type=text],
input[type=email],
input[type=tel],
select,
textarea {
  width: 100%;
  background-color: transparent;
  border: 1px solid #1a2c42;
  border-radius: 6px;
  padding: 12px;
  color: #ffffff;
  font-size: 16px;
  outline: none;
  -webkit-transition: border-color 0.2s;
  -o-transition: border-color 0.2s;
  -moz-transition: border-color 0.2s;
  transition: border-color 0.2s;
}

input[type=text]:focus,
input[type=email]:focus,
input[type=tel]:focus,
select:focus,
textarea:focus {
  border-color: #3b82f6; /* 獲取焦點時的藍色邊框 */
}

select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: url("../images/public/ic_arr_g0.svg");
  background-position: right 12px center;
  background-repeat: no-repeat;
  -o-background-size: 14px;
     background-size: 14px;
  padding-right: 40px;
}
select option {
  color: #0b1726;
}

input::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
  color: #7491b6;
}

input:-moz-placeholder, textarea:-moz-placeholder {
  color: #7491b6;
}

input::-moz-placeholder, textarea::-moz-placeholder {
  color: #7491b6;
}

input:-ms-input-placeholder, textarea:-ms-input-placeholder {
  color: #7491b6;
}

input::placeholder,
textarea::placeholder {
  color: #7491b6;
}

/* 處理字數統計的輸入框間距 */
.has-count input {
  padding-right: 50px;
}

.has-count textarea {
  padding-bottom: 30px;
  resize: none;
  height: 120px;
}

.char-count {
  position: absolute;
  font-size: 12px;
  color: #7491b6;
  pointer-events: none;
}

/* 單行輸入框的字數統計位置 */
.has-count.single-line .char-count {
  right: 12px;
}

/* 多行文字區域的字數統計位置 */
.has-count.multi-line .char-count {
  right: 12px;
  bottom: 12px;
}

/* 雙欄並排 (如手機號碼與Email) */
.form-row {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
}

.form-row .form-group {
  -webkit-flex: 1;
     -moz-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

/* 檔案上傳區塊 */
.upload-area {
  position: relative;
  border: 1px dashed #1a2c42;
  border-radius: 8px;
  padding: 16px;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 16px;
  cursor: pointer;
  -webkit-transition: border-color 0.2s;
  -o-transition: border-color 0.2s;
  -moz-transition: border-color 0.2s;
  transition: border-color 0.2s;
}

.upload-area:hover {
  border-color: #3b82f6;
}

.upload-area input[type=file] {
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
}

.upload-icon {
  width: 44px;
  height: 44px;
  background-color: #122136;
  border-radius: 8px;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 24px;
  color: #7491b6;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}

.upload-title {
  color: #c0d0e0;
  font-size: 14px;
  margin-bottom: 4px;
}

.upload-hint {
  color: #7491b6;
  font-size: 14px;
}

/* 選擇按鈕群組 */
.radio-group {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
     -moz-box-orient: vertical;
     -moz-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 16px;
  margin-top: 8px;
}

.radio-label {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  font-size: 14px;
  color: #8c9eba;
  cursor: pointer;
}

/* 自訂 Radio 樣式 */
.radio-label input[type=radio] {
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  width: 18px;
  height: 18px;
  border: 1px solid #4a5c73;
  border-radius: 50%;
  background-color: transparent;
  outline: none;
  cursor: pointer;
  position: relative;
  margin: 0;
  padding: 0;
}

.radio-label input[type=radio]:checked {
  border-color: #3b82f6;
}

.radio-label input[type=radio]:checked::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
     -moz-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
       -o-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 8px;
  height: 8px;
  background-color: #3b82f6;
  border-radius: 50%;
}

.radio-label:hover {
  color: #c0d0e0;
}

/* 響應式設計：小螢幕時轉為單欄 */
@media (max-width: 900px) {
  .form-container {
    grid-template-columns: 1fr;
  }
}
.pk_title {
  text-align: center;
  max-width: 1000px;
  margin: 0 auto;
}
.pk_title p {
  font-size: 16px;
  color: #d3970e;
}

.empty {
  text-align: center;
  border: 1px dashed #1a6de0;
  color: #47a9fd;
  padding: 12px;
  font-size: 18px;
  font-weight: bold;
  margin: 12px 0;
}

.pk2_hero + .g-main-l {
  display: none;
}

.live-match {
  margin-top: 18px;
  padding: clamp(14px, 2.4vw, 22px);
  background: rgba(1, 13, 25, 0.96);
  box-shadow: inset 0 0 28px rgba(30, 79, 137, 0.24), 0 0 22px rgba(30, 79, 137, 0.24);
}

.live-match__head {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: space-between;
     -moz-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 24px;
  padding: 0 8px 14px;
}

.live-match__head h1 {
  margin: 0;
  color: #ffd34d;
  font-size: clamp(24px, 3.3vw, 32px);
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: 0.02em;
  text-shadow: 0 0 10px rgba(255, 191, 57, 0.34);
}

.live-match__time {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 24px;
  color: #ffffff;
  font-size: clamp(18px, 3vw, 24px);
  font-weight: 600;
  line-height: 1;
  white-space: nowrap;
}

.live-match__time strong {
  display: -webkit-inline-flex;
  display: -moz-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 12px;
  height: 52px;
  padding: 0 12px;
  border: 2px solid rgba(196, 28, 32, 0.86);
  border-radius: 6px;
  color: #ffffff;
  font-size: 28px;
  font-weight: 600;
  line-height: 1;
  background: rgba(107, 9, 18, 0.82);
  box-shadow: inset 0 0 12px rgba(255, 47, 53, 0.24);
  -webkit-animation: liveBadgePulse 1.45s ease-in-out infinite;
     -moz-animation: liveBadgePulse 1.45s ease-in-out infinite;
       -o-animation: liveBadgePulse 1.45s ease-in-out infinite;
          animation: liveBadgePulse 1.45s ease-in-out infinite;
}

.live-match__time i {
  display: block;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  background: #ff1218;
  box-shadow: 0 0 8px rgba(255, 18, 24, 0.9);
  -webkit-animation: liveDotPulse 1s ease-in-out infinite;
     -moz-animation: liveDotPulse 1s ease-in-out infinite;
       -o-animation: liveDotPulse 1s ease-in-out infinite;
          animation: liveDotPulse 1s ease-in-out infinite;
}

@-webkit-keyframes liveBadgePulse {
  0%, 100% {
    border-color: rgba(196, 28, 32, 0.86);
    -webkit-filter: brightness(1);
            filter: brightness(1);
    box-shadow: inset 0 0 12px rgba(255, 47, 53, 0.24), 0 0 0 rgba(255, 35, 40, 0);
  }
  50% {
    border-color: #ff4a4f;
    -webkit-filter: brightness(1.22);
            filter: brightness(1.22);
    box-shadow: inset 0 0 18px rgba(255, 82, 88, 0.48), 0 0 18px rgba(255, 35, 40, 0.72);
  }
}

@-moz-keyframes liveBadgePulse {
  0%, 100% {
    border-color: rgba(196, 28, 32, 0.86);
    filter: brightness(1);
    box-shadow: inset 0 0 12px rgba(255, 47, 53, 0.24), 0 0 0 rgba(255, 35, 40, 0);
  }
  50% {
    border-color: #ff4a4f;
    filter: brightness(1.22);
    box-shadow: inset 0 0 18px rgba(255, 82, 88, 0.48), 0 0 18px rgba(255, 35, 40, 0.72);
  }
}

@-o-keyframes liveBadgePulse {
  0%, 100% {
    border-color: rgba(196, 28, 32, 0.86);
    filter: brightness(1);
    box-shadow: inset 0 0 12px rgba(255, 47, 53, 0.24), 0 0 0 rgba(255, 35, 40, 0);
  }
  50% {
    border-color: #ff4a4f;
    filter: brightness(1.22);
    box-shadow: inset 0 0 18px rgba(255, 82, 88, 0.48), 0 0 18px rgba(255, 35, 40, 0.72);
  }
}

@keyframes liveBadgePulse {
  0%, 100% {
    border-color: rgba(196, 28, 32, 0.86);
    -webkit-filter: brightness(1);
            filter: brightness(1);
    box-shadow: inset 0 0 12px rgba(255, 47, 53, 0.24), 0 0 0 rgba(255, 35, 40, 0);
  }
  50% {
    border-color: #ff4a4f;
    -webkit-filter: brightness(1.22);
            filter: brightness(1.22);
    box-shadow: inset 0 0 18px rgba(255, 82, 88, 0.48), 0 0 18px rgba(255, 35, 40, 0.72);
  }
}
@-webkit-keyframes liveDotPulse {
  0%, 100% {
    -webkit-transform: scale(1);
            transform: scale(1);
    box-shadow: 0 0 8px rgba(255, 18, 24, 0.9);
  }
  50% {
    -webkit-transform: scale(1.35);
            transform: scale(1.35);
    box-shadow: 0 0 16px rgb(255, 18, 24), 0 0 26px rgba(255, 18, 24, 0.72);
  }
}
@-moz-keyframes liveDotPulse {
  0%, 100% {
    -moz-transform: scale(1);
         transform: scale(1);
    box-shadow: 0 0 8px rgba(255, 18, 24, 0.9);
  }
  50% {
    -moz-transform: scale(1.35);
         transform: scale(1.35);
    box-shadow: 0 0 16px rgb(255, 18, 24), 0 0 26px rgba(255, 18, 24, 0.72);
  }
}
@-o-keyframes liveDotPulse {
  0%, 100% {
    -o-transform: scale(1);
       transform: scale(1);
    box-shadow: 0 0 8px rgba(255, 18, 24, 0.9);
  }
  50% {
    -o-transform: scale(1.35);
       transform: scale(1.35);
    box-shadow: 0 0 16px rgb(255, 18, 24), 0 0 26px rgba(255, 18, 24, 0.72);
  }
}
@keyframes liveDotPulse {
  0%, 100% {
    -webkit-transform: scale(1);
       -moz-transform: scale(1);
         -o-transform: scale(1);
            transform: scale(1);
    box-shadow: 0 0 8px rgba(255, 18, 24, 0.9);
  }
  50% {
    -webkit-transform: scale(1.35);
       -moz-transform: scale(1.35);
         -o-transform: scale(1.35);
            transform: scale(1.35);
    box-shadow: 0 0 16px rgb(255, 18, 24), 0 0 26px rgba(255, 18, 24, 0.72);
  }
}
.live-match__player {
  width: 100%;
  aspect-ratio: 16/8.86;
  min-height: 360px;
  border-bottom: 6px solid #000000;
  background: #ffffff;
}

.live-vote {
  padding: 54px 22px 36px;
}

.live-vote h2 {
  margin: 0 0 8px;
  color: #ffd34d;
  font-size: clamp(24px, 3vw, 24px);
  font-weight: 900;
  line-height: 1.25;
  text-shadow: 0 0 10px rgba(255, 191, 57, 0.3);
}

.live-vote p {
  margin: 0;
  color: #e4edf8;
  font-size: clamp(16px, 1.7vw, 18px);
  line-height: 1.6;
}

.live-vote__login {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 18px;
  margin-top: 26px;
}

.live-vote__login a {
  display: -webkit-inline-flex;
  display: -moz-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: 164px;
  height: 52px;
  padding: 0 22px;
  color: #ffffff;
  font-size: 22px;
  font-weight: 800;
  line-height: 1;
  background: #45aaf8;
  -webkit-transition: box-shadow 0.2s ease, -webkit-transform 0.2s ease, -webkit-filter 0.2s ease;
  transition: box-shadow 0.2s ease, -webkit-transform 0.2s ease, -webkit-filter 0.2s ease;
  -o-transition: filter 0.2s ease, box-shadow 0.2s ease, -o-transform 0.2s ease;
  -moz-transition: transform 0.2s ease, filter 0.2s ease, box-shadow 0.2s ease, -moz-transform 0.2s ease;
  transition: transform 0.2s ease, filter 0.2s ease, box-shadow 0.2s ease;
  transition: transform 0.2s ease, filter 0.2s ease, box-shadow 0.2s ease, -webkit-transform 0.2s ease, -moz-transform 0.2s ease, -o-transform 0.2s ease, -webkit-filter 0.2s ease;
}

.live-vote__login a:hover {
  color: #ffffff;
  -webkit-filter: brightness(1.12);
          filter: brightness(1.12);
  -webkit-transform: translateY(-2px);
     -moz-transform: translateY(-2px);
      -ms-transform: translateY(-2px);
       -o-transform: translateY(-2px);
          transform: translateY(-2px);
  box-shadow: 0 0 16px rgba(69, 170, 248, 0.58);
}

.live-vote__teams {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(20px, 3.8vw, 36px);
  max-width: 1050px;
  margin: 36px auto 0;
}

.live-vote__vs {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  line-height: 0;
}

.live-vote__vs img {
  width: clamp(74px, 8.6vw, 118px);
  height: auto;
  vertical-align: top;
}

.vote-team {
  display: grid;
  justify-items: center;
  gap: 22px;
}

.vote-team__card {
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr);
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  min-height: 150px;
  padding: 18px 34px;
  border-radius: 10px;
  background: rgba(2, 14, 31, 0.92);
}

.vote-team__avatar {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 128px;
  height: 128px;
  border: 3px solid rgba(71, 169, 253, 0.72);
  border-radius: 50%;
  overflow: hidden;
  background: rgba(3, 18, 39, 0.96);
  box-shadow: 0 0 14px rgba(71, 169, 253, 0.5), inset 0 0 12px rgba(71, 169, 253, 0.28);
}

.vote-team__avatar img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.vote-team__card h3 {
  margin: 0;
  color: #ffffff;
  font-size: clamp(20px, 2.1vw, 28px);
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: 0.08em;
}

.vote-team__card span {
  display: block;
  margin-top: 8px;
  color: #b8cce2;
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.24em;
}

.vote-team button {
  min-width: 150px;
  height: 58px;
  border-radius: 8px;
  color: #ffffff;
  font-size: 24px;
  font-weight: 900;
  letter-spacing: 0.08em;
  cursor: pointer;
  -webkit-transition: box-shadow 0.2s ease, -webkit-transform 0.2s ease, -webkit-filter 0.2s ease;
  transition: box-shadow 0.2s ease, -webkit-transform 0.2s ease, -webkit-filter 0.2s ease;
  -o-transition: filter 0.2s ease, box-shadow 0.2s ease, -o-transform 0.2s ease;
  -moz-transition: transform 0.2s ease, filter 0.2s ease, box-shadow 0.2s ease, -moz-transform 0.2s ease;
  transition: transform 0.2s ease, filter 0.2s ease, box-shadow 0.2s ease;
  transition: transform 0.2s ease, filter 0.2s ease, box-shadow 0.2s ease, -webkit-transform 0.2s ease, -moz-transform 0.2s ease, -o-transform 0.2s ease, -webkit-filter 0.2s ease;
}

.vote-team button:hover {
  -webkit-transform: translateY(-2px);
     -moz-transform: translateY(-2px);
      -ms-transform: translateY(-2px);
       -o-transform: translateY(-2px);
          transform: translateY(-2px);
  -webkit-filter: brightness(1.12);
          filter: brightness(1.12);
}

.vote-team--blue .vote-team__card {
  border: 2px solid rgba(36, 132, 255, 0.9);
  box-shadow: inset 0 0 24px rgba(36, 132, 255, 0.26), 0 0 16px rgba(36, 132, 255, 0.28);
}

.vote-team--blue button {
  border: 1px solid rgba(66, 158, 255, 0.9);
  background: rgba(9, 55, 105, 0.94);
  box-shadow: inset 0 0 12px rgba(66, 158, 255, 0.32);
}

.vote-team--blue button:hover {
  box-shadow: inset 0 0 16px rgba(92, 181, 255, 0.52), 0 0 16px rgba(66, 158, 255, 0.48);
}

.vote-team--red .vote-team__card {
  border: 2px solid rgba(218, 44, 36, 0.9);
  box-shadow: inset 0 0 24px rgba(218, 44, 36, 0.24), 0 0 16px rgba(218, 44, 36, 0.26);
}

.vote-team--red button {
  border: 1px solid rgba(231, 52, 48, 0.92);
  background: rgba(121, 9, 20, 0.96);
  box-shadow: inset 0 0 12px rgba(231, 52, 48, 0.32);
}

.vote-team--red button:hover {
  box-shadow: inset 0 0 16px rgba(255, 82, 74, 0.5), 0 0 16px rgba(231, 52, 48, 0.48);
}

.live-match + section.mb-48:not(.team-card-section) {
  display: none;
}

.team-card-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
  margin-top: 18px;
}

.team-card {
  position: relative;
  display: grid;
  justify-items: center;
  -webkit-align-content: start;
      -ms-flex-line-pack: start;
          align-content: start;
  min-height: 186px;
  padding: 34px 12px 18px;
  border: 2px solid rgba(71, 169, 253, 0.78);
  border-radius: 16px;
  color: #ffffff;
  text-align: center;
  background: rgba(2, 18, 40, 0.78);
  box-shadow: inset 0 0 18px rgba(71, 169, 253, 0.16), 0 0 12px rgba(71, 169, 253, 0.18);
  cursor: pointer;
  -webkit-transition: border-color 0.2s ease, box-shadow 0.2s ease, -webkit-transform 0.2s ease, -webkit-filter 0.2s ease;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, -webkit-transform 0.2s ease, -webkit-filter 0.2s ease;
  -o-transition: border-color 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease, -o-transform 0.2s ease;
  -moz-transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease, filter 0.2s ease, -moz-transform 0.2s ease;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease, filter 0.2s ease;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease, filter 0.2s ease, -webkit-transform 0.2s ease, -moz-transform 0.2s ease, -o-transform 0.2s ease, -webkit-filter 0.2s ease;
}

.team-card:hover,
.team-card:focus-visible {
  border-color: #8ad0ff;
  -webkit-filter: brightness(1.08);
          filter: brightness(1.08);
  -webkit-transform: translateY(-2px);
     -moz-transform: translateY(-2px);
      -ms-transform: translateY(-2px);
       -o-transform: translateY(-2px);
          transform: translateY(-2px);
  box-shadow: inset 0 0 20px rgba(71, 169, 253, 0.28), 0 0 18px rgba(71, 169, 253, 0.36);
  outline: none;
}

.team-card__badge {
  position: absolute;
  top: -20px;
  left: 50%;
  width: 120px;
  height: auto;
  -webkit-transform: translateX(-50%);
     -moz-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
       -o-transform: translateX(-50%);
          transform: translateX(-50%);
  -webkit-filter: drop-shadow(0 0 10px rgba(255, 210, 82, 0.42));
          filter: drop-shadow(0 0 10px rgba(255, 210, 82, 0.42));
}

.team-card__avatar {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 92px;
  height: 92px;
  border: 2px solid rgba(116, 188, 255, 0.82);
  border-radius: 50%;
  overflow: hidden;
  background: rgba(0, 10, 26, 0.92);
  box-shadow: 0 0 12px rgba(71, 169, 253, 0.42);
}

.team-card__avatar img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.team-card h3 {
  display: -webkit-box;
  width: 100%;
  margin: 14px 0 0;
  overflow: hidden;
  color: #ffffff;
  font-size: 16px;
  font-weight: 800;
  line-height: 1.25;
  letter-spacing: 0.04em;
  text-shadow: 0 0 8px rgba(157, 209, 255, 0.42);
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
}

.modal__dialog--team-members {
  width: min(100%, 960px);
  padding: 36px 18px 18px;
  border-color: rgba(105, 184, 248, 0.82);
  background: -webkit-radial-gradient(85% 0, circle, rgba(255, 195, 81, 0.16), transparent 30%), -webkit-radial-gradient(18% 10%, circle, rgba(0, 148, 255, 0.18), transparent 32%), -webkit-linear-gradient(top, rgba(2, 18, 40, 0.98), rgba(0, 7, 17, 0.99));
  background: -moz-radial-gradient(85% 0, circle, rgba(255, 195, 81, 0.16), transparent 30%), -moz-radial-gradient(18% 10%, circle, rgba(0, 148, 255, 0.18), transparent 32%), -moz-linear-gradient(top, rgba(2, 18, 40, 0.98), rgba(0, 7, 17, 0.99));
  background: -o-radial-gradient(85% 0, circle, rgba(255, 195, 81, 0.16), transparent 30%), -o-radial-gradient(18% 10%, circle, rgba(0, 148, 255, 0.18), transparent 32%), -o-linear-gradient(top, rgba(2, 18, 40, 0.98), rgba(0, 7, 17, 0.99));
  background: radial-gradient(circle at 85% 0, rgba(255, 195, 81, 0.16), transparent 30%), radial-gradient(circle at 18% 10%, rgba(0, 148, 255, 0.18), transparent 32%), linear-gradient(180deg, rgba(2, 18, 40, 0.98), rgba(0, 7, 17, 0.99));
  box-shadow: inset 0 0 42px rgba(37, 126, 210, 0.2), 0 0 28px rgba(185, 128, 65, 0.24);
}

.team-members-modal__title {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: -30px auto 24px;
  padding: 0 72px;
  color: #ffffff;
  font-size: clamp(28px, 4vw, 32px);
  font-weight: 900;
  line-height: 1.15;
  letter-spacing: 0.08em;
  text-align: center;
  text-shadow: 0 0 14px rgba(157, 209, 255, 0.45);
}

.team-members-hero,
.team-members-panel {
  border: 1px solid rgba(185, 128, 65, 0.72);
  border-radius: 12px;
  background: rgba(1, 13, 29, 0.74);
  box-shadow: inset 0 0 28px rgba(71, 169, 253, 0.08);
}

.team-members-hero {
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr);
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 24px;
  min-height: 300px;
  padding: 24px 40px;
}

.team-members-hero__emblem {
  position: relative;
  display: grid;
  place-items: center;
  width: 230px;
  height: 230px;
  border: 2px solid rgba(0, 139, 255, 0.42);
  border-radius: 50%;
  overflow: visible;
  background: rgba(0, 19, 45, 0.94);
  box-shadow: inset 0 0 24px rgba(0, 148, 255, 0.24), 0 0 24px rgba(0, 148, 255, 0.26);
}

.team-members-hero__emblem > img:not(.team-members-hero__badge) {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
}

.team-members-hero__badge {
  position: absolute;
  top: -20px;
  left: 50%;
  z-index: 1;
  width: 160px;
  height: auto;
  -webkit-transform: translateX(-50%);
     -moz-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
       -o-transform: translateX(-50%);
          transform: translateX(-50%);
  -webkit-filter: drop-shadow(0 0 12px rgba(255, 210, 82, 0.5));
          filter: drop-shadow(0 0 12px rgba(255, 210, 82, 0.5));
}

.team-members-hero__content {
  display: grid;
  gap: 28px;
  width: 100%;
  min-width: 0;
}

.team-members-hero h3 {
  margin: 0 0 16px;
  color: #ffffff;
  font-size: clamp(28px, 4vw, 32px);
  font-weight: 900;
  line-height: 1.15;
  letter-spacing: 0.1em;
  text-shadow: 0 0 12px rgba(255, 255, 255, 0.32);
}

.team-members-hero p {
  max-width: 620px;
  margin: 0;
  color: #c9d5e3;
  font-size: 18px;
  line-height: 1.8;
}

.team-members-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border: 1px solid rgba(116, 188, 255, 0.22);
  border-radius: 10px;
  overflow: hidden;
  background: rgba(2, 19, 43, 0.82);
}

.team-members-stat {
  display: grid;
  justify-items: center;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center;
  gap: 12px;
  min-height: 96px;
  padding: 16px 22px;
  text-align: center;
  border-right: 1px solid rgba(116, 188, 255, 0.18);
}

.team-members-stat:last-child {
  border-right: 0;
}

.team-members-stat span {
  color: #d7e3f2;
  font-size: 16px;
  line-height: 1;
}

.team-members-stat strong {
  color: #ffcc62;
  font-size: 24px;
  font-weight: 600;
  line-height: 1;
}

.team-members-stat small {
  color: #ffffff;
  font-size: 16px;
}

.team-members-hero__award {
  display: grid;
  justify-items: center;
  gap: 10px;
  color: #ffd86a;
  text-align: center;
  font-size: 28px;
  font-weight: 900;
  line-height: 1.15;
  text-shadow: 0 0 10px rgba(255, 195, 81, 0.46);
}

.team-members-hero__award img {
  width: 210px;
  height: auto;
  -webkit-filter: drop-shadow(0 0 14px rgba(255, 195, 81, 0.4));
          filter: drop-shadow(0 0 14px rgba(255, 195, 81, 0.4));
}

.team-members-panel {
  margin-top: 18px;
  padding: 22px 14px 14px;
}

.team-members-panel h3 {
  position: relative;
  margin: 0 0 14px;
  padding-left: 26px;
  color: #ffffff;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.15;
  letter-spacing: 0.08em;
}

.team-members-panel h3::before {
  content: "";
  position: absolute;
  top: 3px;
  left: 4px;
  width: 4px;
  height: 24px;
  border-radius: 999px;
  background: #1aa0ff;
  box-shadow: 0 0 10px rgba(26, 160, 255, 0.8);
}

.team-captain-card {
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 28px;
  min-height: 176px;
  padding: 18px 34px;
  border: 1px solid rgba(116, 188, 255, 0.24);
  border-radius: 10px;
  background: rgba(1, 22, 52, 0.76);
}

.team-captain-card__avatar {
  position: relative;
  width: 132px;
  height: 132px;
  border: 2px solid rgba(0, 148, 255, 0.72);
  border-radius: 50%;
  overflow: visible;
  background: rgba(0, 10, 26, 0.92);
  box-shadow: 0 0 16px rgba(0, 148, 255, 0.46);
}

.team-captain-card__avatar img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
}

.team-captain-card__avatar span {
  position: absolute;
  right: -22px;
  bottom: 2px;
  min-width: 72px;
  padding: 5px 14px;
  border: 1px solid rgba(255, 195, 81, 0.72);
  border-radius: 999px;
  color: #ffd86a;
  font-size: 16px;
  font-weight: 900;
  line-height: 1;
  text-align: center;
  background: rgba(82, 54, 5, 0.94);
}

.team-captain-card h4 {
  margin: 0 0 14px;
  color: #ffffff;
  font-size: 28px;
  font-weight: 900;
  line-height: 1.2;
}

.team-captain-card p {
  margin: 0;
  color: #d7e3f2;
  font-size: 18px;
  line-height: 1.8;
}

.team-members-table-wrap {
  overflow-x: auto;
  border: 1px solid rgba(116, 188, 255, 0.24);
  border-radius: 10px;
  background: rgba(1, 22, 52, 0.72);
}

.team-members-table {
  width: 100%;
  min-width: 860px;
  border-collapse: collapse;
  color: #ffffff;
  text-align: center;
  font-size: 18px;
}

.team-members-table th,
.team-members-table td {
  height: 64px;
  padding: 8px 16px;
  border-bottom: 1px solid rgba(116, 188, 255, 0.16);
  border-right: 1px solid rgba(116, 188, 255, 0.14);
}

.team-members-table th:last-child,
.team-members-table td:last-child {
  border-right: 0;
}

.team-members-table th {
  color: #d7e3f2;
  font-size: 16px;
  font-weight: 800;
  white-space: nowrap;
}

.team-members-table td:first-child {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 14px;
  text-align: left;
}

.team-members-table td img {
  width: 44px;
  height: 44px;
  border: 1px solid rgba(116, 188, 255, 0.6);
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
}

.team-members-table .is-profit {
  color: #ff4f58;
  font-weight: 900;
}

.ad {
  display: block;
  width: 100%;
  margin-top: 28px;
  aspect-ratio: 1200/308;
  overflow: hidden;
  border-radius: 12px;
  background-image: url("../images/banner_desktop.png");
  background-position: center;
  background-repeat: no-repeat;
  -o-background-size: cover;
     background-size: cover;
  text-indent: 101%;
  white-space: nowrap;
  -webkit-transition: -webkit-filter 0.2s ease, -webkit-transform 0.2s ease;
  transition: -webkit-filter 0.2s ease, -webkit-transform 0.2s ease;
  -o-transition: filter 0.2s ease, -o-transform 0.2s ease;
  -moz-transition: filter 0.2s ease, transform 0.2s ease, -moz-transform 0.2s ease;
  transition: filter 0.2s ease, transform 0.2s ease;
  transition: filter 0.2s ease, transform 0.2s ease, -webkit-filter 0.2s ease, -webkit-transform 0.2s ease, -moz-transform 0.2s ease, -o-transform 0.2s ease;
}

.ad:hover {
  -webkit-filter: brightness(1.08);
          filter: brightness(1.08);
  -webkit-transform: translateY(-2px);
     -moz-transform: translateY(-2px);
      -ms-transform: translateY(-2px);
       -o-transform: translateY(-2px);
          transform: translateY(-2px);
}

.team-card-section + section.mb-48:not(.schedule-section) {
  display: none;
}

.schedule-section {
  padding-top: 48px;
}

.schedule-tabs {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: clamp(42px, 8vw, 110px);
  margin-bottom: 48px;
}

.schedule-tab {
  position: relative;
  padding: 0 4px 8px;
  color: rgba(127, 158, 205, 0.68);
  font-size: clamp(24px, 3.6vw, 32px);
  font-weight: 600;
  line-height: 1;
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 7px;
  -webkit-transition: color 0.2s ease, text-shadow 0.2s ease;
  -o-transition: color 0.2s ease, text-shadow 0.2s ease;
  -moz-transition: color 0.2s ease, text-shadow 0.2s ease;
  transition: color 0.2s ease, text-shadow 0.2s ease;
}

.schedule-tab.is-active {
  color: #47a9fd;
  text-shadow: 0 0 12px rgba(71, 169, 253, 0.35);
}

.schedule-tab:hover {
  color: #7fc5ff;
}

.schedule-panel {
  display: none;
}

.schedule-panel.is-active {
  display: block;
}

.schedule-panel h2 {
  margin: 0 0 40px;
  color: #ffffff;
  font-size: clamp(20px, 3vw, 28px);
  font-weight: 600;
  line-height: 1.25;
  text-align: center;
  letter-spacing: 0.02em;
}

.schedule-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 22px clamp(32px, 6vw, 32px);
}

.schedule-card {
  display: grid;
  place-items: center;
  min-height: 176px;
  padding: 20px 12px;
  border: 2px solid #1a7bdd;
  border-radius: 10px;
  color: #ffffff;
  text-align: center;
  background: rgba(3, 18, 43, 0.86);
  box-shadow: inset 0 0 16px rgba(71, 169, 253, 0.08);
}

.schedule-card time,
.schedule-card span,
.schedule-card strong {
  display: block;
  color: currentColor;
  font-size: clamp(18px, 2vw, 24px);
  font-weight: 400;
  line-height: 1;
}

.schedule-card strong {
  font-weight: 500;
}

.schedule-card--upcoming {
  border-color: #2d9dff;
  box-shadow: inset 0 0 18px rgba(71, 169, 253, 0.14), 0 0 12px rgba(71, 169, 253, 0.18);
}

.schedule-card--disabled {
  color: rgba(223, 234, 248, 0.62);
  border-color: rgba(63, 118, 178, 0.56);
  background: rgba(3, 18, 43, 0.52);
}

.g-main-l:has(> .schedule-section) + .g-main-l:not(:has(.leaderboard-section)) {
  display: none;
}

.leaderboard-table-wrap {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.leaderboard-table {
  width: 100%;
  min-width: 1000px;
  border-collapse: separate;
  border-spacing: 0;
  color: #ffffff;
  text-align: center;
  font-size: clamp(16px, 2vw, 20px);
}

.leaderboard-table th,
.leaderboard-table td {
  height: 64px;
  padding: 8px;
  white-space: nowrap;
  border-bottom: 4px solid #000711;
}

.leaderboard-table th {
  height: 72px;
  color: #ffffff;
  background: #010812;
  font-size: clamp(16px, 2vw, 18px);
  font-weight: 600;
  text-align: center;
}

.leaderboard-table tbody tr:nth-child(odd) td {
  background: #338be2;
}

.leaderboard-table tbody tr:nth-child(even) td {
  background: #4d6b92;
}

.leaderboard-table tbody tr:last-child td {
  border-bottom: 0;
}

.leaderboard-table td:nth-child(2) {
  text-align: center;
}

.notice-toggle {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 16px;
  width: 100%;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.notice-toggle__icon {
  -webkit-flex: 0 0 auto;
     -moz-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 14px solid #47a9fd;
  -webkit-filter: drop-shadow(0 0 8px rgba(71, 169, 253, 0.58));
          filter: drop-shadow(0 0 8px rgba(71, 169, 253, 0.58));
  -webkit-transition: -webkit-transform 0.2s ease;
  transition: -webkit-transform 0.2s ease;
  -o-transition: -o-transform 0.2s ease;
  -moz-transition: transform 0.2s ease, -moz-transform 0.2s ease;
  transition: transform 0.2s ease;
  transition: transform 0.2s ease, -webkit-transform 0.2s ease, -moz-transform 0.2s ease, -o-transform 0.2s ease;
}

.notice-toggle.is-collapsed .notice-toggle__icon {
  -webkit-transform: rotate(-90deg);
     -moz-transform: rotate(-90deg);
      -ms-transform: rotate(-90deg);
       -o-transform: rotate(-90deg);
          transform: rotate(-90deg);
}

.notice-toggle + ul {
  display: block;
  margin: 16px 0 0;
  padding-left: 1.4em;
  color: #dce9f8;
  font-size: 16px;
  line-height: 1.9;
  list-style: disc outside;
}

.notice-toggle + ul li {
  display: list-item;
  list-style: decimal outside;
}

.notice-toggle.is-collapsed + ul {
  display: none;
}

.lottery {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 24px;
  margin: 36px 0 48px;
  padding: 24px 28px;
  border: 1px solid rgba(255, 204, 98, 0.72);
  border-radius: 12px;
  color: #ffffff;
  background: -webkit-linear-gradient(315deg, rgba(63, 21, 54, 0.96), rgba(2, 21, 47, 0.96) 58%, rgba(91, 54, 6, 0.94));
  background: -moz-linear-gradient(315deg, rgba(63, 21, 54, 0.96), rgba(2, 21, 47, 0.96) 58%, rgba(91, 54, 6, 0.94));
  background: -o-linear-gradient(315deg, rgba(63, 21, 54, 0.96), rgba(2, 21, 47, 0.96) 58%, rgba(91, 54, 6, 0.94));
  background: linear-gradient(135deg, rgba(63, 21, 54, 0.96), rgba(2, 21, 47, 0.96) 58%, rgba(91, 54, 6, 0.94));
  box-shadow: inset 0 0 24px rgba(255, 204, 98, 0.12), 0 0 24px rgba(71, 169, 253, 0.16);
  overflow: hidden;
}

.lottery::before {
  content: "";
  position: absolute;
  top: -35%;
  bottom: -35%;
  left: -55%;
  z-index: 0;
  width: 42%;
  pointer-events: none;
  background: -webkit-linear-gradient(left, transparent 0%, rgba(255, 245, 180, 0.04) 18%, rgba(255, 245, 180, 0.28) 48%, rgba(255, 255, 255, 0.5) 52%, rgba(255, 245, 180, 0.16) 68%, transparent 100%);
  background: -moz-linear-gradient(left, transparent 0%, rgba(255, 245, 180, 0.04) 18%, rgba(255, 245, 180, 0.28) 48%, rgba(255, 255, 255, 0.5) 52%, rgba(255, 245, 180, 0.16) 68%, transparent 100%);
  background: -o-linear-gradient(left, transparent 0%, rgba(255, 245, 180, 0.04) 18%, rgba(255, 245, 180, 0.28) 48%, rgba(255, 255, 255, 0.5) 52%, rgba(255, 245, 180, 0.16) 68%, transparent 100%);
  background: linear-gradient(90deg, transparent 0%, rgba(255, 245, 180, 0.04) 18%, rgba(255, 245, 180, 0.28) 48%, rgba(255, 255, 255, 0.5) 52%, rgba(255, 245, 180, 0.16) 68%, transparent 100%);
  -webkit-filter: blur(2px);
          filter: blur(2px);
  mix-blend-mode: screen;
  -webkit-transform: skewX(-18deg) translateX(0);
     -moz-transform: skewX(-18deg) translateX(0);
      -ms-transform: skewX(-18deg) translateX(0);
       -o-transform: skewX(-18deg) translateX(0);
          transform: skewX(-18deg) translateX(0);
  -webkit-animation: finalPanelSweep 4.2s ease-in-out infinite;
     -moz-animation: finalPanelSweep 4.2s ease-in-out infinite;
       -o-animation: finalPanelSweep 4.2s ease-in-out infinite;
          animation: finalPanelSweep 4.2s ease-in-out infinite;
}

.lottery > :not(.magic-rings) {
  z-index: 1;
}

.lottery__content {
  min-width: 0;
}

.lottery__label {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 0 10px;
  padding: 4px 12px;
  border-radius: 999px;
  color: #07101c;
  background: #ffcc62;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.2;
}

.lottery h2 {
  margin: 0 0 12px;
  color: #ffffff;
  font-size: clamp(24px, 4vw, 36px);
  font-weight: 900;
  line-height: 1.15;
}

.lottery__text {
  max-width: 760px;
  color: #f3f7ff;
  font-size: 18px;
  line-height: 1.8;
}

.lottery__note {
  margin-top: 10px;
  color: #ffd978;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.6;
}

.lottery__side {
  display: grid;
  justify-items: end;
  gap: 16px;
  min-width: 300px;
}

.lottery__status {
  position: absolute;
  top: 20px;
  right: 20px;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: 36px;
  padding: 6px 14px;
  border: 1px solid rgba(118, 255, 175, 0.56);
  border-radius: 999px;
  color: #b8ffd2;
  background: rgba(16, 92, 50, 0.58);
  font-size: 16px;
  font-weight: 800;
  line-height: 1.2;
}

.lottery__actions {
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-justify-content: flex-end;
     -moz-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: 12px;
}

.lottery__btn {
  display: -webkit-inline-flex;
  display: -moz-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-align-items: center;
     -moz-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
     -moz-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: 148px;
  min-height: 44px;
  padding: 10px 18px;
  border-radius: 8px;
  font-size: 16px;
  font-weight: 800;
  line-height: 1.2;
  -webkit-transition: box-shadow 0.2s ease, -webkit-transform 0.2s ease, -webkit-filter 0.2s ease;
  transition: box-shadow 0.2s ease, -webkit-transform 0.2s ease, -webkit-filter 0.2s ease;
  -o-transition: filter 0.2s ease, box-shadow 0.2s ease, -o-transform 0.2s ease;
  -moz-transition: transform 0.2s ease, filter 0.2s ease, box-shadow 0.2s ease, -moz-transform 0.2s ease;
  transition: transform 0.2s ease, filter 0.2s ease, box-shadow 0.2s ease;
  transition: transform 0.2s ease, filter 0.2s ease, box-shadow 0.2s ease, -webkit-transform 0.2s ease, -moz-transform 0.2s ease, -o-transform 0.2s ease, -webkit-filter 0.2s ease;
}

.lottery__btn:hover,
.lottery__btn:focus-visible {
  -webkit-transform: translateY(-2px);
     -moz-transform: translateY(-2px);
      -ms-transform: translateY(-2px);
       -o-transform: translateY(-2px);
          transform: translateY(-2px);
  -webkit-filter: brightness(1.08);
          filter: brightness(1.08);
}

.lottery__btn--primary {
  color: #08111f;
  background: #ffcc62;
  box-shadow: 0 0 14px rgba(255, 204, 98, 0.35);
}

.lottery__btn--secondary {
  color: #ffffff;
  border: 1px solid rgba(138, 208, 255, 0.78);
  background: rgba(7, 67, 123, 0.72);
}

@media (max-width: 999px) {
  .ad {
    aspect-ratio: 1000/863;
    background-image: url("../images/banner_mobile.png");
  }
}
@media (max-width: 900px) {
  .lottery {
    grid-template-columns: 1fr;
    gap: 20px;
    margin: 28px 0 36px;
    padding: 24px 18px;
  }
  .lottery__text {
    font-size: 16px;
  }
  .lottery__side {
    justify-items: stretch;
    min-width: 0;
  }
  .lottery__actions,
  .lottery__btn {
    width: 100%;
  }
  .lottery__status {
    -webkit-justify-content: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .lottery__actions {
    -webkit-justify-content: stretch;
       -moz-box-pack: stretch;
        -ms-flex-pack: stretch;
            justify-content: stretch;
  }
  .live-match {
    border-radius: 18px;
  }
  .live-match__head {
    -webkit-align-items: flex-start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-flex-direction: column;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 12px;
  }
  .live-match__time {
    width: 100%;
    -webkit-justify-content: space-between;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 12px;
  }
  .live-match__time strong {
    height: 40px;
    font-size: 22px;
  }
  .live-match__player {
    min-height: 0;
    aspect-ratio: 1/1;
  }
  .live-vote {
    padding: 30px 4px 18px;
  }
  .live-vote__login {
    -webkit-flex-direction: column;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-align-items: stretch;
       -moz-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
  .live-vote__teams {
    grid-template-columns: 1fr;
    gap: 18px;
  }
  .live-vote__vs {
    text-align: center;
  }
  .live-vote__vs img {
    width: 88px;
  }
  .vote-team__card {
    grid-template-columns: 96px minmax(0, 1fr);
    min-height: 116px;
    padding: 14px 18px;
  }
  .vote-team__avatar {
    width: 84px;
    height: 84px;
  }
  .team-card-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px 10px;
  }
  .team-card {
    min-height: 142px;
    padding: 28px 8px 14px;
    border-radius: 16px;
  }
  .team-card__badge {
    top: -16px;
    width: 88px;
  }
  .team-card__avatar {
    width: 68px;
    height: 68px;
  }
  .team-card h3 {
    margin-top: 10px;
    font-size: 16px;
  }
  .modal__dialog--team-members {
    padding: 28px 12px 14px;
  }
  .team-members-modal__title {
    margin-top: -22px;
    padding: 0 42px;
    font-size: 32px;
  }
  .team-members-hero {
    grid-template-columns: 1fr;
    justify-items: center;
    gap: 18px;
    min-height: 0;
    padding: 22px 16px;
  }
  .team-members-hero__emblem {
    width: 150px;
    height: 150px;
  }
  .team-members-hero__badge {
    top: -16px;
    width: 120px;
  }
  .team-members-hero__content {
    width: 100%;
    text-align: center;
  }
  .team-members-hero h3 {
    font-size: 30px;
  }
  .team-members-hero p {
    font-size: 16px;
  }
  .team-members-stats {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .team-members-stat {
    min-height: 78px;
    padding: 14px 8px;
    border-right: 1px solid rgba(116, 188, 255, 0.18);
    border-bottom: 0;
  }
  .team-members-stat:last-child {
    border-right: 0;
  }
  .team-members-stat span {
    font-size: 14px;
  }
  .team-members-stat strong {
    font-size: 24px;
  }
  .team-members-stat small {
    font-size: 14px;
  }
  .team-members-hero__award img {
    width: 140px;
  }
  .team-members-hero__award {
    font-size: 22px;
  }
  .team-members-panel {
    padding: 18px 10px 10px;
  }
  .team-members-panel h3 {
    font-size: 24px;
  }
  .team-captain-card {
    grid-template-columns: 1fr;
    justify-items: center;
    gap: 18px;
    padding: 18px;
    text-align: center;
  }
  .team-captain-card h4 {
    font-size: 28px;
  }
  .team-captain-card p {
    font-size: 16px;
  }
  .team-members-table {
    font-size: 20px;
  }
  .team-members-table th {
    font-size: 18px;
  }
  .schedule-tabs {
    gap: 22px;
    margin-bottom: 36px;
  }
  .schedule-tab {
    font-size: 24px;
  }
  .schedule-panel h2 {
    margin-bottom: 34px;
    font-size: 22px;
  }
  .schedule-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px 10px;
  }
  .schedule-card {
    min-height: 132px;
    padding: 16px 8px;
    border-radius: 8px;
  }
  .schedule-card time,
  .schedule-card span,
  .schedule-card strong {
    font-size: 16px;
    line-height: 1.45;
  }
  .leaderboard-table {
    min-width: 980px;
    font-size: 20px;
  }
  .leaderboard-table th,
  .leaderboard-table td {
    height: 58px;
    padding: 10px 16px;
  }
  .leaderboard-table th {
    height: 64px;
    font-size: 20px;
  }
}/*# sourceMappingURL=daui.css.map */