.entry-screen {
  --entry-canvas: #f7faff;
  --entry-ink: #2a3049;
  --entry-secondary: #62687a;
  --entry-accent: #4364e8;
  --entry-soft: #e9edff;
  --entry-dark: #3654cf;
  --entry-edge: #e1e5ed;
  box-sizing: border-box;
  min-height: 100vh;
  min-height: 100svh;
  margin: 0;
  width: 100%;
  display: flex;
  flex-direction: column;
  background: var(--entry-canvas);
  color: var(--entry-ink);
  font: 15px/1.55 "Segoe UI", sans-serif;
}
.entry-screen *, .entry-screen *::before, .entry-screen *::after { box-sizing: border-box; }
.entry-screen[hidden], .entry-screen [hidden] { display: none !important; }
body[data-entry-product="true"] .entry-screen { --entry-accent: #e00000; --entry-soft: #fff1f1; --entry-dark: #c70000; }
body[data-entry-product="intersend"] .entry-screen { --entry-accent: #2a64f6; --entry-soft: #edf3ff; --entry-dark: #00193b; }
.entry-header { padding: 35px 48px; }
.entry-brand { display: inline-flex; align-items: center; gap: 10px; font-size: 21px; font-weight: 750; letter-spacing: -.5px; }
.entry-brand img { display: block; object-fit: contain; width: 33px; height: 33px; }
body[data-entry-product="true"] .entry-brand img { width: 83px; height: 35px; }
body[data-entry-product="intersend"] .entry-brand img { width: 145px; height: 36px; }
.entry-content { margin: auto; text-align: center; padding: 25px 24px 55px; width: min(100%, 600px); }
.entry-screen[data-state="denied"] .entry-content, .entry-screen[data-state="not-found"] .entry-content { width: min(100%, 668px); padding-bottom: 35px; }
.entry-screen h1 { font: 550 30px/1.22 "Bahnschrift", "Segoe UI", sans-serif; letter-spacing: -.8px; margin: 0 0 13px; color: var(--entry-ink); }
.entry-screen[data-state="denied"] h1, .entry-screen[data-state="not-found"] h1 { font-size: 32px; margin-bottom: 16px; }
.entry-screen .entry-message { color: var(--entry-secondary); margin: 0 auto; font-size: 16px; line-height: 1.65; max-width: 48ch; }
.entry-footer { color: var(--entry-secondary); font-size: 12px; letter-spacing: .02em; text-align: center; padding: 28px; margin-top: auto; }
.entry-art { width: 205px; height: 158px; position: relative; margin: 0 auto 28px; }
.entry-art svg { display: block; width: 100%; height: 100%; }
.entry-window { fill: #fff; stroke: var(--entry-accent); stroke-width: 1.5; }
.entry-rule { stroke: var(--entry-edge); fill: none; }
.entry-dots { fill: #c9d2e5; }
.entry-panel { fill: var(--entry-soft); }
.entry-screen[data-state="loading"] .entry-panel--animated { animation: entry-panel-reveal 3.2s ease-in-out infinite; }
.entry-panel--two { animation-delay: .25s !important; }
.entry-panel--three { animation-delay: .5s !important; }
.entry-arrival { position: absolute; width: 50px; height: 3px; border-radius: 4px; background: #1aceb1; bottom: 5px; left: calc(50% - 25px); animation: entry-arrival 3.2s ease-in-out infinite; }
.entry-screen[data-state="failure"] .entry-arrival, .entry-screen[data-state="failure"] .entry-panel--animated { animation: none; opacity: .3; }
.entry-art--recovery { display: none; width: 220px; height: 170px; margin-bottom: 27px; }
.entry-screen[data-state="denied"] .entry-art--loading { display: none; }
.entry-screen[data-state="denied"] .entry-art--recovery, .entry-screen[data-state="not-found"] .entry-art--recovery { display: block; }
.entry-symbol-disc { fill: #fff; stroke: var(--entry-edge); stroke-width: 1.5; }
.entry-symbol { stroke: var(--entry-dark); stroke-width: 2.3; stroke-linecap: round; stroke-linejoin: round; fill: none; }
.entry-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 27px; }
.entry-screen[data-state="failure"] .entry-actions { margin-top: 22px; }
.entry-action { min-height: 44px; padding: 11px 19px; border-radius: 7px; border: 1px solid var(--entry-dark); font: 650 14px/1.45 "Segoe UI", sans-serif; background: var(--entry-dark); color: #fff; cursor: pointer; }
.entry-action:hover { filter: brightness(.95); }
.entry-action:focus-visible { outline: 3px solid var(--entry-accent); outline-offset: 5px; }
.entry-action--secondary { color: var(--entry-ink); background: #fff; border-color: #d3dbe8; }
.entry-action:disabled { cursor: wait; opacity: .6; }
.entry-hint { color: var(--entry-secondary); font-size: 12px; line-height: 1.6; margin: 20px auto 0; max-width: 55ch; }
@keyframes entry-panel-reveal { 0%, 100% { opacity: .38; } 50% { opacity: 1; } }
@keyframes entry-arrival { 0%, 100% { transform: scaleX(.4); opacity: .5; } 50% { transform: scaleX(1); opacity: 1; } }
@media (max-width: 850px) { .entry-header { padding: 26px 28px; } }
@media (max-width: 600px) {
  .entry-screen h1, .entry-screen[data-state="denied"] h1, .entry-screen[data-state="not-found"] h1 { font-size: 25px; }
  .entry-screen .entry-message { font-size: 14px; }
  .entry-art { width: 170px; height: 131px; }
  .entry-art--recovery { width: 185px; height: 143px; }
  .entry-content { padding-bottom: 28px; }
  .entry-actions { gap: 10px; }
}
@media (prefers-reduced-motion: reduce) { .entry-screen *, .entry-screen *::before, .entry-screen *::after { animation: none !important; transition: none !important; } }

.entry-screen h1:focus { outline: none; }
