/* Cookie Settings modal — Figma 2713:96897
 * 内容区 padding 40、纵向 gap 24；分割线宽 648（左右各缩进 40），不顶满弹窗。
 * Cookie Settings 介绍与 Necessary Cookies 之间无横线。
 */

.CookiesManageModal_panel__37w_G {
  width: 100%;
  max-width: 728px;
  padding: 0;
  overflow: hidden;
  border: none;
  /* Figma 2713:96897 cornerRadius 16；覆盖 Dialog 默认 rounded-sm / 主题 2xl=5px */
  border-radius: 16px !important;
  background: #fff;
  color: #3a3a3a;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.12);
  /* 正文默认 Inter；标题单独用 Encode Sans Expanded */
  font-family: Inter, var(--font-sans), system-ui, sans-serif;
}

.CookiesManageModal_content__l598p {
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding: 26px 40px 34px;
  box-sizing: border-box;
}

.CookiesManageModal_topBar__Ru6k4 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 29px;
}

.CookiesManageModal_logo__b_Tqv {
  color: #3a3a3a;
}

.CookiesManageModal_close__587o_ {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 29px;
  margin: 0 -6px 0 0;
  padding: 0;
  border: none;
  border-radius: 8px;
  background: transparent;
  color: #3a3a3a;
  cursor: pointer;
}

.CookiesManageModal_close__587o_:hover {
  background: rgba(0, 0, 0, 0.04);
}

.CookiesManageModal_close__587o_:focus-visible {
  outline: 2px solid #ff631b;
  outline-offset: 2px;
}

.CookiesManageModal_divider__5tYwG {
  display: block;
  width: 100%;
  height: 0;
  margin: 0;
  border: none;
  border-top: 1px solid #e5e5e5;
}

.CookiesManageModal_intro___sw8s {
  display: flex;
  flex-direction: column;
  gap: 6px;
  /* Figma Frame 835416：介绍区底部 pad 40，再加内容区 gap 24 到 Necessary */
  padding-bottom: 40px;
}

.CookiesManageModal_title__vTyuy {
  margin: 0;
  font-family: var(--font-encode-expanded), "Encode Sans Expanded", sans-serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  line-height: 24px !important;
  color: #3a3a3a !important;
}

.CookiesManageModal_description__XgtSk {
  margin: 0;
  font-family: Inter, var(--font-sans), system-ui, sans-serif;
  font-size: 11px;
  font-weight: 500;
  /* Figma 文字行高 Auto → 13.3125px */
  line-height: 13.3125px;
  color: rgba(0, 0, 0, 0.5);
}

.CookiesManageModal_section__SDvFO {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin: 0;
  padding: 0;
}

.CookiesManageModal_sectionHead__F1Joi {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.CookiesManageModal_sectionCopy__mREmb {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}

.CookiesManageModal_sectionTitle__awaYy {
  margin: 0;
  font-family: Inter, var(--font-sans), system-ui, sans-serif;
  font-size: 14px;
  font-weight: 600;
  /* Figma 文字行高 Auto → ~16.94px */
  line-height: 16.94px;
  color: #3a3a3a;
}

.CookiesManageModal_sectionDesc__VBEQH {
  margin: 0;
  font-family: Inter, var(--font-sans), system-ui, sans-serif;
  font-size: 11px;
  font-weight: 500;
  line-height: 13.3125px;
  color: rgba(0, 0, 0, 0.5);
}

.CookiesManageModal_alwaysActive__Zxp3V {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  height: 32px;
  padding: 0 16px;
  border: 1px solid #ff631b;
  border-radius: 16px;
  background: #fff;
  color: #3a3a3a;
  font-family: Inter, var(--font-sans), system-ui, sans-serif;
  font-size: 11px;
  font-weight: 600;
  line-height: 1;
  white-space: nowrap;
}

.CookiesManageModal_switch__gkYwS {
  position: relative;
  flex: 0 0 auto;
  width: 36px;
  height: 20px;
  margin-top: 2px;
  padding: 0;
  border: none;
  border-radius: 100px;
  background: #d1d5db;
  cursor: pointer;
  transition: background-color 0.18s ease;
}

.CookiesManageModal_switchOn__y6X4W {
  background: #ff631b;
}

.CookiesManageModal_switch__gkYwS:focus-visible {
  outline: 2px solid #ff631b;
  outline-offset: 2px;
}

.CookiesManageModal_switchThumb__njHPq {
  position: absolute;
  top: 2px;
  left: 2px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.12);
  transition: transform 0.18s ease;
}

.CookiesManageModal_switchOn__y6X4W .CookiesManageModal_switchThumb__njHPq {
  transform: translateX(16px);
}

.CookiesManageModal_footer__F_C7P {
  display: flex;
  justify-content: center;
}

.CookiesManageModal_save__FZz_c {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 210px;
  max-width: 100%;
  height: 32px;
  padding: 0 16px;
  border: none;
  border-radius: 16px;
  background: #ff631b;
  color: #fff;
  font-family: Inter, var(--font-sans), system-ui, sans-serif;
  font-size: 11px;
  font-weight: 600;
  line-height: 1;
  cursor: pointer;
  transition: background-color 0.15s ease;
}

.CookiesManageModal_save__FZz_c:hover {
  background: #f05712;
}

.CookiesManageModal_save__FZz_c:focus-visible {
  outline: 2px solid #ff631b;
  outline-offset: 2px;
}

@media (max-width: 639.98px) {
  /* 与 PC 同结构：只适配宽度/高度，不改按钮与分区排版 */
  .CookiesManageModal_panel__37w_G {
    max-width: calc(100vw - 24px) !important;
    max-height: calc(100dvh - 24px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
    overflow-y: auto;
  }

  .CookiesManageModal_content__l598p {
    padding: 20px 20px 28px;
  }
}

/* Cookie banner — Figma 2592:138670（PC 未登录右下角浮层） */

.CookieBanner_banner__L1AMQ {
  position: fixed;
  right: 16px;
  bottom: 16px;
  z-index: 170;
  box-sizing: border-box;
  width: min(455px, calc(100vw - 32px));
  padding: 16px;
  border: none;
  border-radius: 16px;
  /* 浅色毛玻璃：避免纯黑 4% + 强模糊显得发灰发深 */
  background: rgba(255, 255, 255, 0.55);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
  backdrop-filter: blur(40px);
  -webkit-backdrop-filter: blur(40px);
  color: #3a3a3a;
  font-family: Inter, var(--font-sans), system-ui, sans-serif;
  pointer-events: auto;
}

.CookieBanner_header__dlC_d {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin: 0;
  padding: 0;
}

.CookieBanner_title__u7ILZ {
  margin: 0;
  font-family: Inter, var(--font-sans), system-ui, sans-serif;
  font-size: 14px;
  font-weight: 600;
  /* Figma 文字行高 Auto → ~16.94px */
  line-height: 16.94px;
  color: #3a3a3a;
}

.CookieBanner_body__0_eCZ {
  margin: 10px 0 0;
  padding: 0 14px 0 1px;
  font-family: Inter, var(--font-sans), system-ui, sans-serif;
  font-size: 11px;
  font-weight: 500;
  /* Figma 文字行高 Auto → 13.3125px */
  line-height: 13.3125px;
  color: rgba(0, 0, 0, 0.5);
}

.CookieBanner_body__0_eCZ p {
  margin: 0;
}

.CookieBanner_body__0_eCZ p + p {
  margin-top: 0.35em;
}

.CookieBanner_link__UIzdV {
  color: rgba(0, 0, 0, 0.5);
  text-decoration: none;
  transition: color 0.15s ease;
}

.CookieBanner_link__UIzdV:hover {
  color: #3a3a3a;
}

.CookieBanner_actions__ZCV63 {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 14px;
}

.CookieBanner_btn__LnOnU {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 32px;
  padding: 0 16px;
  border: none;
  border-radius: 16px;
  font-family: Inter, var(--font-sans), system-ui, sans-serif;
  font-size: 11px;
  font-weight: 600;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
  transition: background-color 0.15s ease, color 0.15s ease;
}

.CookieBanner_btn__LnOnU:focus-visible {
  outline: 2px solid #ff631b;
  outline-offset: 2px;
}

.CookieBanner_btnManage__9KWox {
  background: #fff;
  color: #3a3a3a;
}

.CookieBanner_btnManage__9KWox:hover {
  background: #f3f4f6;
}

.CookieBanner_btnAccept__3qczH {
  background: #ff631b;
  color: #fff;
}

.CookieBanner_btnAccept__3qczH:hover {
  background: #f05712;
}

@media (max-width: 639.98px) {
  /* 与 PC 同 UI：仅收窄边距与安全区，按钮仍左右排布 */
  .CookieBanner_banner__L1AMQ {
    right: 12px;
    left: 12px;
    bottom: max(12px, env(safe-area-inset-bottom, 0px));
    width: auto;
  }
}

.celebrationToast_toastItem__FMBIR {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  height: auto !important;
  padding: 0 !important;
  overflow: visible !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.celebrationToast_celebrationStage__CrNyj {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: visible;
}
.celebrationToast_toastCard__3Xvey {
  position: relative;
  z-index: 1;
  display: flex;
  gap: 10px;
  align-items: center;

  /* 保留英文基准宽度，长文案按实际宽度扩展；桌面预留右侧 64px 和左侧 16px。 */
  width: max-content;
  min-width: 251px;
  max-width: calc(100vw - 80px);
  min-height: 88px;
  padding: 12px;
  overflow: hidden;
  color: #000;
  font-family: var(--font-sans);
  background: var(--neutral-0, #fff);
  border-radius: var(--radius-18, 18px);
  box-shadow: 0 2px 3px rgb(96 31 31 / 5%);
}
.celebrationToast_illustrationViewport__B6cFW {
  position: relative;
  display: block;
  flex: 0 0 64px;
  width: 64px;
  height: 64px;
  overflow: hidden;
  background: var(--neutral-0, #fff);
}
.celebrationToast_illustration__R56qy {
  position: absolute;
  top: -5px;
  left: 2px;
  width: 72px;
  max-width: none;
  height: 72px;
  object-fit: cover;
}
.celebrationToast_content__UUns9 {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 10px;
  align-items: flex-end;
  width: max-content;

  /* 视口不足时允许文案区域收缩，插图和按钮沿用现有规格。 */
  min-width: 0;
}
.celebrationToast_copy__M74u0 {
  display: flex;
  flex-direction: column;
  gap: 0;
  align-items: flex-start;
  width: 100%;
  font-weight: 600;
  font-size: 12px;
  line-height: 15px;
}
.celebrationToast_copyFirstLine__RxtIL {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  align-items: center;
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
}
.celebrationToast_copySecondLine__Xb3XL {
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
}
.celebrationToast_badge__oiTLo {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  min-width: 28px;
  height: 14px;
  padding: 1.96px 6.533px;
  overflow: hidden;
  color: var(--neutral-0, #fff);
  font-weight: 700;
  font-size: 9.147px;
  line-height: 9.147px;
  white-space: nowrap;
  background: linear-gradient(180deg, #ffab84 19.712%, #ff8462 100%);
  border-radius: var(--radius-7, 7px);
}
.celebrationToast_confirmButton__yJPHK {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 55px;
  height: 24px;
  padding: 7px 14px;
  color: var(--neutral-0, #fff);
  font: inherit;
  font-weight: 600;
  font-size: 10px;
  line-height: 10px;
  background: var(--orange-500, #ff631b);
  border: 0;
  border-radius: 13.168px;
  cursor: pointer;
}
.celebrationToast_confettiLayer__pqEDq {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: visible;

  /* 保留上、下、左侧拉花，裁掉越过卡片右边界的粒子，避免遮挡 Header 头像。 */
  clip-path: inset(-200px 0 -200px -200px);
  pointer-events: none;
}
.celebrationToast_confettiParticle__iTT5E {
  position: absolute;
  top: 50%;
  left: 50%;
  opacity: 0;
  animation-name: celebrationToast_celebration-confetti-burst__2xoyZ;
  animation-timing-function: cubic-bezier(0.12, 0.78, 0.28, 1);
  animation-fill-mode: forwards;
}

@keyframes celebrationToast_celebration-confetti-burst__2xoyZ {
  0% {
    transform: translate(-50%, -50%) rotate(0deg) scale(0.35);
    opacity: 1;
  }
  70% {
    opacity: 1;
  }
  100% {
    transform:
      translate(
        calc(-50% + var(--confetti-tx)),
        calc(-50% + var(--confetti-ty))
      )
      rotate(var(--confetti-rot))
      scale(1);
    opacity: 0;
  }
}

/* Figma 12718:218294：H5 为 261×80 胶囊卡片，仅保留插图与到账文案。 */
@media (max-width: 600px) {
  .celebrationToast_toastCard__3Xvey {
    gap: 16px;
    width: max-content;
    min-width: 261px;
    max-width: calc(100vw - 32px);
    min-height: 80px;
    padding: 12px 18px;
    border-radius: 61px;
  }
  .celebrationToast_illustrationViewport__B6cFW {
    flex-basis: 56px;
    width: 56px;
    height: 56px;
  }
  .celebrationToast_illustration__R56qy {
    top: -5.249px;
    left: -6.062px;
    width: 70px;
    height: 70px;
  }
  .celebrationToast_content__UUns9 {
    gap: 0;
    width: auto;
  }
  .celebrationToast_confirmButton__yJPHK {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .celebrationToast_confettiLayer__pqEDq {
    display: none;
  }
}

.discount-popup_overlay__6jxlo{background:rgba(0,0,0,.7) !important;backdrop-filter:blur(10px)}.discount-popup_content__iHchB{display:block !important;gap:0 !important;width:var(--discount-popup-width) !important;max-width:calc(100vw - 32px) !important;padding:0 !important;overflow:hidden;color:#fff;background:#f47b4e !important;border:var(--discount-popup-border) solid hsla(0,0%,100%,.5) !important;border-radius:var(--discount-popup-radius) !important;box-shadow:none !important;container-type:inline-size;aspect-ratio:461.404/620.022}.discount-popup_desktop__bOs5V{--discount-popup-border: 0.672px;--discount-popup-radius: 33.606px;--discount-popup-width: 461.404px}.discount-popup_mobile__jDBMn{--discount-popup-border: 0.467px;--discount-popup-radius: 23.343px;--discount-popup-width: 320.503px}.discount-popup_background__pnjw3{position:absolute;inset:0;overflow:hidden;background:#f47b4e;pointer-events:none}.discount-popup_background__pnjw3 img{object-fit:cover}.discount-popup_logo__9Ggnx{position:absolute;top:4.56%;left:50.78%;width:16.79%;height:3.58%;transform:translateX(-50%)}.discount-popup_topRightText__UeW2o,.discount-popup_middleText___WVSK,.discount-popup_bottomLeftText__qH9GC,.discount-popup_discountText__y84_f,.discount-popup_discountSuffixText__6WGQp{position:absolute;z-index:1;margin:0;color:#fff}.discount-popup_topRightText__UeW2o{top:9.21%;right:6.97%;width:34%;font-weight:500;font-size:2.913cqw;font-family:Inter,var(--font-sans),sans-serif;line-height:1.2;letter-spacing:-0.1165cqw;white-space:pre-line;text-align:right}.discount-popup_discountText__y84_f,.discount-popup_discountSuffixText__6WGQp{display:flex;align-items:center;justify-content:center;font-weight:400;font-size:49.02cqw;font-family:"Career point",serif;line-height:1;letter-spacing:-1.47cqw;white-space:nowrap;text-shadow:0 0 3.642cqw #fff;transform:skewX(-10deg) scaleY(0.98)}.discount-popup_discountText__y84_f{top:11.92%;left:2.4%;width:95.04%;height:35.92%}.discount-popup_discountSuffixText__6WGQp{top:46.77%;left:27.17%;width:70.27%;height:35.92%;text-transform:lowercase}.discount-popup_longSuffix__RZO9i{font-size:12.7cqw;letter-spacing:-0.381cqw;white-space:nowrap}.discount-popup_middleText___WVSK{top:49.92%;left:4.37%;width:55%;font-weight:500;font-size:3.642cqw;font-family:Inter,var(--font-sans),sans-serif;line-height:1.2;letter-spacing:-0.1457cqw;white-space:pre-line;text-shadow:0 0 .291cqw #ffbd9a}.discount-popup_accentLine__AML5U{position:absolute;top:52.9%;left:4.37%;z-index:1;width:32.74%;height:1px}.discount-popup_bottomLeftText__qH9GC{top:74.85%;left:5.3%;width:31%;font-weight:500;font-size:2.913cqw;font-family:Inter,var(--font-sans),sans-serif;line-height:1.2;letter-spacing:-0.1165cqw;white-space:pre-line;text-shadow:0 0 .291cqw #ffbd9a}.discount-popup_claimButton__XZcID{position:absolute;bottom:4.88%;left:50.77%;z-index:2;display:flex;align-items:center;justify-content:center;width:fit-content;height:auto;padding:4.01cqw 5.61cqw;color:#000;font-weight:800;font-size:3.365cqw;font-family:var(--font-encode-expanded),"Encode Sans Expanded",sans-serif;line-height:normal;white-space:nowrap;text-transform:uppercase;background:#fff;border:0;border-radius:999px;transform:translateX(-50%);cursor:pointer}
