/* Shared blue-white mobile entry screens. All artwork and icons are local. */
.entry-route { margin: 0; min-width: 280px; background: #effbff; }
.entry-screen { position: relative; isolation: isolate; width: 100%; min-height: 100vh; min-height: 100svh; overflow: hidden; background: radial-gradient(ellipse at 50% 36%, #fff 0%, #f4fdff 48%, #d9f4ff 100%); color: #2d4b76; font-family: "PingFang SC", "Microsoft YaHei", Arial, sans-serif; }
.entry-screen * { box-sizing: border-box; }
[hidden] { display: none !important; }
.entry-brand { position: absolute; z-index: 1; top: 3.2vw; left: 7.2vw; display: flex; flex-direction: column; gap: .8vw; }
.entry-brand strong { color: #0756ca; font-size: 5.1vw; line-height: 1.15; font-weight: 900; letter-spacing: .06em; }
.entry-brand span { color: #6d86a9; font-size: 2.2vw; letter-spacing: .2em; }
.entry-hero { display: block; width: 100%; height: auto; object-fit: contain; }
.entry-screen h1 { margin: 0; text-align: center; color: #0871e7; font-weight: 900; letter-spacing: -.045em; font-size: 9.8vw; line-height: 1.1; text-shadow: 0 .3vw 0 #fff; }
.entry-description { margin: 2.1vw 0 2.6vw; text-align: center; font-size: 3.7vw; line-height: 1.42; font-weight: 600; color: #34547e; }
.entry-screen button, .entry-screen input { font: inherit; }
.entry-screen button { -webkit-tap-highlight-color: transparent; cursor: pointer; }
.entry-screen button:disabled { opacity: .65; cursor: default; }
.entry-screen button:focus-visible, .entry-screen input:focus-visible, .entry-screen a:focus-visible { outline: 2px solid #086bd3; outline-offset: 3px; }
.entry-primary { display: flex; align-items: center; justify-content: center; gap: 2vw; width: 100%; min-height: 11.4vw; padding: 1.7vw 2vw; border: 1px solid #fff; border-radius: 3.4vw; background: linear-gradient(105deg, #36c5f5, #0879f5 58%, #3ac7f3); box-shadow: inset 0 0 0 1px #4bbfff, 0 1.8vw 4.5vw #399ae530; color: #fff; font-size: 5.1vw !important; line-height: 1.25; font-weight: 700 !important; letter-spacing: .025em; }
.entry-primary img { width: 7.2vw; height: 7.2vw; object-fit: contain; }
.entry-primary img.entry-button-arrow { width: 5vw; height: 5vw; flex-shrink: 0; filter: brightness(0) invert(1); }
.entry-secondary { display: flex; align-items: center; justify-content: center; gap: 1.5vw; width: 100%; min-height: 8vw; border: 1px solid #1781f4; border-radius: 2.2vw; background: #fff; color: #1479df; font-size: 3.6vw !important; line-height: 1.3; font-weight: 600 !important; }
.entry-secondary img { width: 4.7vw; height: 4.7vw; }
.entry-footer { display: flex; justify-content: center; align-items: center; gap: 2.4vw; padding: 3.3vw 4vw calc(3.1vw + env(safe-area-inset-bottom)); color: #6781a5; font-size: 2.7vw; line-height: 1.4; text-align: center; }
.entry-footer > span { width: 6vw; height: 1px; background: #9fbddd; }
.visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.entry-noscript { font-size: 13px; line-height: 1.5; }
