/* Approved banner v1. Every rule is scoped to the launch screen. */
@font-face {
  font-family: Onest;
  src: url("/miniapp-dev/brand/966c5c29b4755da84b6854d5c21dd4eaa2420225d0e9874de602de176d4a9f31.ttf") format("truetype");
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}
.yp-launch {
  --launch-bg: #edf3fb; --launch-ink: #18283e; --launch-muted: #596f8c;
  --launch-blue: #446fa7; --launch-paper: #f8fbff; --launch-line: #b4c9e2; --launch-light: #bfd4f24d;
  --launch-brand-flex: 1; --launch-brand-padding: 16px 40px;
  --launch-art-width: 380px; --launch-art-margin: -28px;
  --launch-name-size: clamp(30px, 8vw, 36px);
  --launch-details: none; --launch-wait: block; --launch-status-padding: 16px 0 0;
  box-sizing: border-box;
  color-scheme: light;
  min-height: 100vh;
  min-height: 100svh;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: max(24px, var(--yp-safe-top, env(safe-area-inset-top, 0px)))
    max(24px, var(--yp-safe-right, env(safe-area-inset-right, 0px)))
    max(36px, var(--yp-safe-bottom, env(safe-area-inset-bottom, 0px)))
    max(24px, var(--yp-safe-left, env(safe-area-inset-left, 0px)));
  background: radial-gradient(ellipse 90% 70% at 70% 6%, var(--launch-light), transparent 80%), var(--launch-bg);
  color: var(--launch-ink);
  font: 400 16px/1.55 Onest, -apple-system, BlinkMacSystemFont, sans-serif;
  -webkit-text-size-adjust: 100%;
}
.yp-launch * { box-sizing: border-box; }
.yp-launch ::selection { background: var(--launch-blue); color: var(--launch-bg); }
@media (prefers-color-scheme: dark) {
  .yp-launch {
    color-scheme: dark;
    --launch-bg: #101114; --launch-ink: #f4f5f8; --launch-muted: #acb8cb;
    --launch-blue: #9bbbe8; --launch-paper: #1b202b; --launch-line: #364254; --launch-light: #28456f5c;
  }
}
:root[data-theme="light"] .yp-launch {
  color-scheme: light;
  --launch-bg: #edf3fb; --launch-ink: #18283e; --launch-muted: #596f8c;
  --launch-blue: #446fa7; --launch-paper: #f8fbff; --launch-line: #b4c9e2; --launch-light: #bfd4f24d;
}
:root[data-theme="dark"] .yp-launch {
  color-scheme: dark;
  --launch-bg: #101114; --launch-ink: #f4f5f8; --launch-muted: #acb8cb;
  --launch-blue: #9bbbe8; --launch-paper: #1b202b; --launch-line: #364254; --launch-light: #28456f5c;
}
.yp-launch .launch-brand {
  width: min(100%, 400px);
  flex: var(--launch-brand-flex);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding-block: var(--launch-brand-padding);
}
.yp-launch .launch-art {
  display: block;
  width: min(100%, var(--launch-art-width)); height: auto; margin: var(--launch-art-margin) 0;
}
.yp-launch .launch-name {
  font-family: inherit; font-size: var(--launch-name-size); line-height: 1.2;
  letter-spacing: -.035em; font-weight: 650; margin: 0 0 10px;
}
.yp-launch .launch-description { margin: 0; font-size: 15px; color: var(--launch-muted); }
.yp-launch .launch-status { width: min(100%, 400px); text-align: center; padding: var(--launch-status-padding); }
.yp-launch .launch-wait-copy { display: var(--launch-wait); margin: 0; font: inherit; color: var(--launch-muted); }
.yp-launch .launch-indicator {
  display: var(--launch-wait); width: 20px; height: 20px; margin: 0 auto 14px;
  border: 2px solid var(--launch-line); border-top-color: var(--launch-blue); border-radius: 50%;
  animation: yp-launch-wait 1.2s linear infinite;
}
.yp-launch .launch-details { display: var(--launch-details); }
.yp-launch .launch-details h2 {
  font-family: inherit; font-size: 24px; font-weight: 650; line-height: 1.25;
  letter-spacing: -.025em; color: var(--launch-ink); margin: 0; text-wrap: balance;
}
.yp-launch .launch-details p { margin: 12px 0 0; font: inherit; overflow-wrap: anywhere; color: var(--launch-muted); }
.yp-launch .launch-details button {
  min-height: 48px; width: min(100%, 300px); padding: 12px 18px; margin: 24px 0 0;
  border: 1px solid var(--launch-line); border-radius: 14px;
  background: var(--launch-paper); color: var(--launch-ink); font: inherit; font-weight: 600; cursor: pointer;
}
.yp-launch .launch-details button:hover { filter: brightness(.94); }
.yp-launch .launch-details button:focus-visible { outline: 3px solid var(--launch-blue); outline-offset: 4px; }
.yp-launch .launch-details button:disabled { opacity: .6; cursor: wait; }
.yp-launch [hidden] { display: none !important; }
.yp-launch[data-launch-state="error"],
html:not([data-miniapp-access="checking"]):not([data-miniapp-access="data_loading"]):not([data-miniapp-access="ready"]) #miniapp-access-screen {
  --launch-brand-flex: 0; --launch-brand-padding: 8px 32px;
  --launch-art-width: 180px; --launch-art-margin: -12px; --launch-name-size: 24px;
  --launch-status-padding: 0; --launch-details: block; --launch-wait: none;
}
@keyframes yp-launch-wait { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .yp-launch .launch-indicator { animation: none; } }
@media (prefers-contrast: more) { .yp-launch { background: var(--launch-bg); } }
@media (max-height: 540px) {
  .yp-launch {
    padding-block: max(16px, var(--yp-safe-top, env(safe-area-inset-top, 0px))) max(16px, var(--yp-safe-bottom, env(safe-area-inset-bottom, 0px)));
    --launch-brand-padding: 0 16px; --launch-art-width: 190px; --launch-art-margin: -20px;
    --launch-name-size: 26px; --launch-status-padding: 8px 0 0;
  }
}
