/* Shared full-page waiting state. The job API owns completion and recovery. */
.epp-layer,
.epp-layer *,
.epp-layer *::before,
.epp-layer *::after { box-sizing: border-box; }
body.epp-is-busy { overflow: hidden !important; }

.epp-layer {
  --epp-blue: #4d86ff;
  --epp-cyan: #80dfef;
  --epp-green: #80ddbb;
  --epp-glow: 77, 134, 255;
  --epp-glow-two: 78, 202, 228;
  --epp-bg: #061122;
  --epp-mid: #0a182e;
  --epp-center: #132748;
  --epp-ink: #f4f8ff;
  --epp-muted: #a8bbd7;
  --epp-brand: #9db0ce;
  --epp-eyebrow: #a9c6fa;
  --epp-title-one: #88b8ff;
  --epp-title-two: #c8dfff;
  --epp-tile: rgba(19, 43, 82, .78);
  --epp-tile-edge: rgba(183, 216, 255, .3);
  --epp-tile-light: rgba(226, 242, 255, .13);
  --epp-track-bg: rgba(163, 194, 239, .17);
  --epp-recovery-bg: rgba(43, 72, 112, .25);
  --epp-shadow: rgba(0, 5, 16, .28);
  position: fixed;
  inset: 0;
  z-index: 2147483500;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  height: 100vh;
  height: 100dvh;
  padding: max(100px, env(safe-area-inset-top)) max(32px, env(safe-area-inset-right)) max(70px, env(safe-area-inset-bottom)) max(32px, env(safe-area-inset-left));
  overflow-x: hidden;
  overflow-y: auto;
  isolation: isolate;
  overscroll-behavior: contain;
  background: var(--epp-bg);
  color: var(--epp-ink);
  opacity: 0;
  visibility: hidden;
  transition: opacity 220ms ease, visibility 0s linear 230ms;
  font: 400 16px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  text-align: center;
  -webkit-font-smoothing: antialiased;
  -webkit-tap-highlight-color: transparent;
}
.epp-layer[hidden], .epp-layer [hidden] { display: none !important; }
.epp-layer.epp-is-visible { opacity: 1; visibility: visible; transition-delay: 0s; }

/* Context changes the atmosphere and symbol, never the operation's outcome. */
.epp-layer[data-epp-kind="mail"] {
  --epp-blue: #9074ef;
  --epp-cyan: #91bcff;
  --epp-glow: 130, 94, 239;
  --epp-glow-two: 88, 145, 255;
  --epp-center: #25274a;
  --epp-title-one: #b3a2fa;
  --epp-title-two: #bdd5ff;
  --epp-eyebrow: #c4b7f5;
}
.epp-layer[data-epp-kind="calendar"] {
  --epp-blue: #589afa;
  --epp-cyan: #83e5e9;
  --epp-glow-two: 74, 210, 222;
  --epp-title-two: #a7ebef;
}
.epp-layer[data-epp-kind="profile"] {
  --epp-blue: #a381f2;
  --epp-cyan: #d0b9ff;
  --epp-glow: 147, 112, 230;
  --epp-glow-two: 118, 155, 226;
  --epp-center: #292345;
  --epp-title-one: #b8a0f7;
  --epp-title-two: #dfd2ff;
  --epp-eyebrow: #c4b3eb;
}
.epp-layer[data-epp-kind="report"] {
  --epp-blue: #4f9de7;
  --epp-cyan: #9ccfeb;
  --epp-glow: 63, 133, 214;
  --epp-glow-two: 104, 187, 227;
  --epp-title-one: #90bdef;
  --epp-title-two: #cce5f8;
}
.epp-layer[data-epp-kind="food"] {
  --epp-blue: #dba16d;
  --epp-cyan: #ffd2a1;
  --epp-glow: 183, 106, 58;
  --epp-glow-two: 202, 156, 86;
  --epp-bg: #17100c;
  --epp-mid: #211910;
  --epp-center: #36281b;
  --epp-ink: #fff8ef;
  --epp-muted: #d2bca7;
  --epp-brand: #b9a58f;
  --epp-eyebrow: #dfbe97;
  --epp-title-one: #e6b382;
  --epp-title-two: #ffe3bb;
  --epp-tile: rgba(76, 51, 30, .73);
  --epp-tile-edge: rgba(244, 202, 155, .3);
  --epp-tile-light: rgba(255, 228, 194, .14);
  --epp-track-bg: rgba(213, 175, 128, .18);
  --epp-recovery-bg: rgba(99, 68, 37, .27);
  --epp-shadow: rgba(9, 5, 0, .28);
}
.epp-layer[data-epp-kind="wellbeing"] {
  --epp-blue: #608b79;
  --epp-cyan: #8eb2a0;
  --epp-green: #6b9c88;
  --epp-glow: 156, 190, 157;
  --epp-glow-two: 170, 197, 179;
  --epp-bg: #f5f5ed;
  --epp-mid: #f4f5ee;
  --epp-center: #ebf0e6;
  --epp-ink: #2e4940;
  --epp-muted: #61766d;
  --epp-brand: #71867b;
  --epp-eyebrow: #628576;
  --epp-title-one: #426b59;
  --epp-title-two: #749585;
  --epp-tile: rgba(250, 253, 247, .74);
  --epp-tile-edge: rgba(111, 149, 126, .33);
  --epp-tile-light: rgba(255, 255, 255, .9);
  --epp-track-bg: rgba(112, 151, 132, .19);
  --epp-recovery-bg: rgba(255, 255, 250, .6);
  --epp-shadow: rgba(63, 96, 73, .09);
}

.epp-layer .epp-atmosphere {
  position: fixed;
  z-index: -1;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
  background: radial-gradient(ellipse at 50% 42%, var(--epp-center) 0%, var(--epp-mid) 37%, var(--epp-bg) 75%);
}
.epp-layer .epp-atmosphere::after {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .12;
  background-image: linear-gradient(rgba(var(--epp-glow), .22) 1px, transparent 1px), linear-gradient(90deg, rgba(var(--epp-glow), .22) 1px, transparent 1px);
  background-size: 84px 84px;
  -webkit-mask-image: radial-gradient(ellipse at 50% 43%, #000 0%, transparent 68%);
  mask-image: radial-gradient(ellipse at 50% 43%, #000 0%, transparent 68%);
}
.epp-layer .epp-atmosphere i {
  position: absolute;
  display: block;
  border-radius: 50%;
  filter: blur(65px);
  will-change: transform;
}
.epp-layer .epp-atmosphere i:first-child {
  top: -57%;
  left: -23%;
  width: min(77vw, 1050px);
  height: min(77vw, 1050px);
  background: radial-gradient(circle, rgba(var(--epp-glow), .38), rgba(var(--epp-glow), 0) 67%);
  animation: epp-aurora-one 13s ease-in-out infinite alternate;
}
.epp-layer .epp-atmosphere i:last-child {
  bottom: -62%;
  right: -27%;
  width: min(78vw, 950px);
  height: min(78vw, 950px);
  background: radial-gradient(circle, rgba(var(--epp-glow-two), .23), rgba(var(--epp-glow-two), 0) 66%);
  animation: epp-aurora-two 16s ease-in-out infinite alternate;
}
.epp-layer .epp-brand {
  position: absolute;
  top: max(30px, env(safe-area-inset-top));
  left: max(38px, env(safe-area-inset-left));
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--epp-ink);
  text-align: left;
  max-width: calc(100% - 76px);
}
.epp-layer .epp-brand small { min-width: 0; overflow-wrap: anywhere; }
.epp-layer .epp-brand strong { flex-shrink: 0; }
.epp-layer .epp-brand span { display: block; }
.epp-layer .epp-brand strong {
  display: block;
  font-size: 12px;
  font-weight: 750;
  line-height: 1.5;
  letter-spacing: .2em;
}
.epp-layer .epp-brand small {
  display: block;
  margin-top: 1px;
  color: var(--epp-brand);
  font-size: 10px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: .08em;
}
.epp-layer .epp-card {
  position: relative;
  flex: 0 0 auto;
  width: 100%;
  max-width: 900px;
  margin: auto;
  padding: 5px 0;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--epp-ink);
  box-shadow: none;
  outline: none;
  text-align: center;
  opacity: 0;
  transform: translateY(12px);
  transition: transform 400ms cubic-bezier(.2, .8, .2, 1), opacity 220ms ease;
}
.epp-layer.epp-is-visible .epp-card { opacity: 1; transform: translateY(0); }
.epp-layer .epp-card::before { content: none; }
.epp-layer .epp-head {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
}
.epp-layer .epp-orbit {
  position: relative;
  z-index: 1;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 154px;
  height: 154px;
  margin: 0 auto 42px;
  border: 1px solid var(--epp-tile-edge);
  border-radius: 33px;
  background: linear-gradient(145deg, rgba(var(--epp-glow), .17), var(--epp-tile) 66%);
  box-shadow: inset 0 1px 0 var(--epp-tile-light), 0 24px 60px var(--epp-shadow), 0 0 48px rgba(var(--epp-glow), .07);
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
  color: var(--epp-cyan);
  transform: perspective(700px) rotateX(7deg) rotateY(-8deg) rotateZ(-4deg);
  animation: epp-symbol-float 5s ease-in-out infinite;
}
.epp-layer .epp-orbit::before,
.epp-layer .epp-orbit::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 50%;
  width: 260px;
  height: 168px;
  border: 1px solid rgba(var(--epp-glow), .22);
  border-radius: 50%;
  background: none;
  box-shadow: none;
  pointer-events: none;
  transform: translate(-50%, -50%) rotate(-24deg);
}
.epp-layer .epp-orbit::before { animation: epp-ring-one 9s ease-in-out infinite alternate; }
.epp-layer .epp-orbit::after {
  width: 290px;
  height: 190px;
  border-color: rgba(var(--epp-glow-two), .13);
  transform: translate(-50%, -50%) rotate(24deg);
  animation: epp-ring-two 11s ease-in-out infinite alternate;
}
.epp-layer .epp-symbol {
  display: block;
  width: 75px;
  height: 75px;
  overflow: visible;
  color: inherit;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  filter: drop-shadow(0 0 12px rgba(var(--epp-glow-two), .12));
}
.epp-layer .epp-symbol [data-epp-icon] { display: none; }
.epp-layer[data-epp-icon="mail"] .epp-symbol [data-epp-icon="mail"],
.epp-layer[data-epp-icon="document"] .epp-symbol [data-epp-icon="document"],
.epp-layer[data-epp-icon="calendar"] .epp-symbol [data-epp-icon="calendar"],
.epp-layer[data-epp-icon="profile"] .epp-symbol [data-epp-icon="profile"],
.epp-layer[data-epp-icon="report"] .epp-symbol [data-epp-icon="report"],
.epp-layer[data-epp-icon="food"] .epp-symbol [data-epp-icon="food"],
.epp-layer[data-epp-icon="wellbeing"] .epp-symbol [data-epp-icon="wellbeing"],
.epp-layer[data-epp-icon="generic"] .epp-symbol [data-epp-icon="generic"],
.epp-layer[data-epp-icon="whistle"] .epp-symbol [data-epp-icon="whistle"],
.epp-layer:not([data-epp-icon]) .epp-symbol [data-epp-icon="generic"] { display: inline; }
.epp-layer[data-epp-kind="wellbeing"] .epp-orbit { color: #608572; }
.epp-layer .epp-copy { width: 100%; min-width: 0; }
.epp-layer .epp-eyebrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  margin: 0 0 14px;
  color: var(--epp-eyebrow);
  font-size: 10px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: .23em;
  text-transform: uppercase;
}
.epp-layer .epp-eyebrow::before {
  content: "";
  flex: 0 0 5px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--epp-cyan);
  box-shadow: 0 0 12px rgba(var(--epp-glow-two), .4);
}
.epp-layer h2.epp-title {
  max-width: 850px;
  margin: 0 auto;
  padding: 0 4px 4px;
  border: 0;
  background: linear-gradient(110deg, var(--epp-ink) 10%, var(--epp-ink) 45%, var(--epp-title-two) 87%);
  color: var(--epp-ink);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  font-family: inherit;
  font-size: clamp(34px, 4.6vw, 59px);
  font-weight: 720;
  line-height: 1.15;
  letter-spacing: -.045em;
  overflow-wrap: break-word;
  word-break: normal;
  text-transform: none;
  text-overflow: clip;
  white-space: normal;
  text-shadow: none;
}
.epp-layer .epp-detail {
  position: relative;
  max-width: 600px;
  margin: 20px auto 0;
  color: var(--epp-muted);
  font-size: 15px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: .005em;
  overflow-wrap: break-word;
}
.epp-layer .epp-track {
  position: relative;
  width: min(280px, 76%);
  height: 2px;
  margin: 31px auto 0;
  overflow: hidden;
  border-radius: 20px;
  background: var(--epp-track-bg);
  box-shadow: none;
}
.epp-layer .epp-track > span {
  position: absolute;
  inset: 0 auto 0 0;
  display: block;
  width: 42%;
  border-radius: inherit;
  background: linear-gradient(90deg, transparent, var(--epp-blue) 35%, var(--epp-cyan) 70%, transparent);
  box-shadow: none;
  animation: epp-track-glide 2s cubic-bezier(.5, 0, .3, 1) infinite;
}
.epp-layer .epp-meta {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  max-width: 640px;
  margin: 14px auto 0;
  color: var(--epp-muted);
  font-size: 11px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: .015em;
}
.epp-layer .epp-count {
  padding: 4px 10px;
  border: 1px solid rgba(var(--epp-glow), .22);
  border-radius: 100px;
  background: rgba(var(--epp-glow), .06);
  color: var(--epp-eyebrow);
  font-size: 10px;
  font-weight: 600;
}
.epp-layer .epp-live {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.epp-layer .epp-recovery {
  position: relative;
  width: min(440px, 100%);
  margin: 25px auto 0;
  padding: 18px;
  border: 1px solid rgba(var(--epp-glow), .25);
  border-radius: 17px;
  background: var(--epp-recovery-bg);
}
.epp-layer .epp-recovery p {
  margin: 0 0 14px;
  color: var(--epp-muted);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.7;
}
.epp-layer .epp-dismiss {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 44px;
  margin: 0;
  padding: 10px 16px;
  border: 1px solid rgba(var(--epp-glow), .43);
  border-radius: 11px;
  background: rgba(var(--epp-glow), .13);
  color: var(--epp-ink);
  box-shadow: none;
  font: 600 13px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  cursor: pointer;
  transition: background 160ms ease, border-color 160ms ease;
}
.epp-layer .epp-dismiss:hover { border-color: var(--epp-blue); background: rgba(var(--epp-glow), .21); }
.epp-layer .epp-dismiss:focus-visible { outline: 2px solid var(--epp-blue); outline-offset: 4px; }

/* Existing BlockUI screens retain a visible fallback while their native API runs. */
.blockUI.blockMsg .blockui-default-message::after,
.blockUI.blockMsgDefault .blockui-default-message::after {
  content: "";
  display: block;
  width: min(260px, 62vw);
  height: 3px;
  margin: 14px auto 0;
  border-radius: 100px;
  background: linear-gradient(90deg, transparent 0 18%, #6f9eff 38%, #91dae8 65%, transparent 82% 100%), rgba(232, 238, 246, .2);
  background-size: 220% 100%, 100% 100%;
  animation: epp-blockui-track 1.8s ease-in-out infinite;
}

@keyframes epp-aurora-one { from { transform: translate(0, 0) scale(1); } to { transform: translate(17%, 12%) scale(1.12); } }
@keyframes epp-aurora-two { from { transform: translate(0, 0) scale(1); } to { transform: translate(-14%, -13%) scale(1.15); } }
@keyframes epp-symbol-float {
  0%, 100% { transform: perspective(700px) rotateX(7deg) rotateY(-8deg) rotateZ(-4deg) translateY(0); }
  50% { transform: perspective(700px) rotateX(4deg) rotateY(-5deg) rotateZ(-2deg) translateY(-7px); }
}
@keyframes epp-ring-one { from { transform: translate(-50%, -50%) rotate(-24deg); } to { transform: translate(-50%, -50%) rotate(-16deg); } }
@keyframes epp-ring-two { from { transform: translate(-50%, -50%) rotate(24deg); } to { transform: translate(-50%, -50%) rotate(16deg); } }
@keyframes epp-track-glide { from { transform: translateX(-110%); } to { transform: translateX(350%); } }
@keyframes epp-blockui-track { from { background-position: 110% 0, 0 0; } to { background-position: -110% 0, 0 0; } }

@media (min-width: 1600px) {
  .epp-layer .epp-orbit { width: 166px; height: 166px; margin-bottom: 48px; }
  .epp-layer .epp-detail { font-size: 16px; }
}
@media (max-width: 600px) {
  .epp-layer { padding: max(90px, env(safe-area-inset-top)) max(23px, env(safe-area-inset-right)) max(42px, env(safe-area-inset-bottom)) max(23px, env(safe-area-inset-left)); }
  .epp-layer .epp-brand { top: max(23px, env(safe-area-inset-top)); left: max(24px, env(safe-area-inset-left)); }
  .epp-layer .epp-card { padding: 0; }
  .epp-layer .epp-orbit { width: 136px; height: 136px; margin-bottom: 35px; border-radius: 29px; }
  .epp-layer .epp-orbit::before { width: 232px; height: 151px; }
  .epp-layer .epp-orbit::after { width: 266px; height: 173px; }
  .epp-layer .epp-symbol { width: 65px; height: 65px; }
  .epp-layer .epp-eyebrow { margin-bottom: 13px; font-size: 9px; letter-spacing: .19em; }
  .epp-layer h2.epp-title { font-size: clamp(30px, 7.5vw, 43px); line-height: 1.16; }
  .epp-layer .epp-detail { max-width: 380px; margin-top: 18px; font-size: 13px; line-height: 1.75; }
  .epp-layer .epp-track { width: min(240px, 76%); margin-top: 27px; }
  .epp-layer .epp-meta { max-width: 380px; font-size: 10px; }
  .epp-layer .epp-recovery { margin-top: 22px; padding: 16px; }
  .epp-layer .epp-atmosphere i:first-child { width: 130vw; height: 130vw; top: -28%; left: -65%; }
  .epp-layer .epp-atmosphere i:last-child { width: 140vw; height: 140vw; bottom: -31%; right: -70%; }
}
@media (max-width: 360px) {
  .epp-layer { padding-right: 18px; padding-left: 18px; }
  .epp-layer .epp-orbit { width: 126px; height: 126px; margin-bottom: 31px; }
  .epp-layer .epp-orbit::after { width: 250px; }
  .epp-layer h2.epp-title { font-size: 30px; }
}
@media (max-height: 690px) {
  .epp-layer { padding-top: max(83px, env(safe-area-inset-top)); padding-bottom: max(28px, env(safe-area-inset-bottom)); }
  .epp-layer .epp-card { margin: 0 auto; padding: 0; }
  .epp-layer .epp-orbit { width: 126px; height: 126px; margin-bottom: 29px; border-radius: 28px; }
  .epp-layer .epp-symbol { width: 60px; height: 60px; }
  .epp-layer .epp-orbit::before { width: 222px; height: 141px; }
  .epp-layer .epp-orbit::after { width: 248px; height: 161px; }
  .epp-layer h2.epp-title { font-size: clamp(30px, 4.5vw, 48px); }
  .epp-layer .epp-detail { margin-top: 16px; }
  .epp-layer .epp-track { margin-top: 24px; }
}
@media (max-height: 450px) and (min-width: 601px) {
  .epp-layer { padding-top: max(76px, env(safe-area-inset-top)); }
  .epp-layer .epp-card { max-width: 720px; padding-left: 200px; text-align: left; }
  .epp-layer .epp-head { align-items: flex-start; }
  .epp-layer .epp-orbit { position: absolute; top: 22px; left: -172px; width: 120px; height: 120px; margin: 0; }
  .epp-layer .epp-eyebrow { justify-content: flex-start; }
  .epp-layer h2.epp-title { margin: 0; padding-left: 0; font-size: 32px; }
  .epp-layer .epp-detail { margin: 13px 0 0; font-size: 12px; }
  .epp-layer .epp-track { margin-left: 0; }
  .epp-layer .epp-meta { align-items: flex-start; margin-left: 0; }
  .epp-layer .epp-recovery { margin-left: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .epp-layer,
  .epp-layer *,
  .epp-layer *::before,
  .epp-layer *::after {
    animation: none !important;
    transition: none !important;
    will-change: auto !important;
  }
  .epp-layer .epp-card { transform: none; }
  .epp-layer .epp-track > span { left: 0; width: 100%; opacity: .7; transform: none; background: linear-gradient(90deg, var(--epp-blue), var(--epp-cyan)); }
  .blockUI.blockMsg .blockui-default-message::after,
  .blockUI.blockMsgDefault .blockui-default-message::after { animation: none !important; }
}

/* Visual extension for confirmed results. Append after the shared progress CSS.
 * The controller sets data-epp-state="success" only after a confirmed outcome.
 * This stylesheet never turns a waiting job's end into a success. */

.epp-layer { --epp-result-ready: 1; }

/* Profile keeps the full-page navy atmosphere, with restrained slate and lilac. */
.epp-layer[data-epp-kind="profile"] {
  --epp-blue: #95a8d4;
  --epp-cyan: #bfd6df;
  --epp-glow: 112, 138, 191;
  --epp-glow-two: 118, 170, 176;
  --epp-bg: #071321;
  --epp-mid: #0d1c2f;
  --epp-center: #1d2c40;
  --epp-title-one: #a4b4d8;
  --epp-title-two: #d0e0ec;
  --epp-eyebrow: #b5c9e2;
}
.epp-layer[data-epp-kind="wellbeing"] {
  --epp-muted: #536b5e;
  --epp-brand: #5a7164;
  --epp-eyebrow: #507261;
  --epp-title-two: #668878;
}

/* Profile: a luminous identity card, with no head or face. */
.epp-layer .epp-symbol .epp-identity-card {
  fill: rgba(var(--epp-glow), .065);
  stroke: var(--epp-cyan);
}
.epp-layer .epp-symbol .epp-identity-chip {
  fill: rgba(var(--epp-glow-two), .13);
  stroke: var(--epp-blue);
  animation: epp-identity-chip-light 4.2s ease-in-out infinite;
}
.epp-layer .epp-symbol .epp-identity-chip-detail {
  stroke: var(--epp-cyan);
  stroke-width: 1.35;
  opacity: .68;
}
.epp-layer .epp-symbol .epp-identity-line {
  stroke: var(--epp-cyan);
  animation: epp-identity-line-light 4.2s ease-in-out infinite;
  animation-delay: calc(var(--epp-line, 0) * 180ms);
}
.epp-layer .epp-symbol .epp-identity-edge { stroke: var(--epp-blue); opacity: .5; }

/* Result controls are opt in; waiting screens retain their existing structure. */
.epp-layer .epp-result-actions,
.epp-layer .epp-result-detail,
.epp-layer .epp-result-track { display: none; }
.epp-layer .epp-result-symbol {
  display: none;
  width: 75px;
  height: 75px;
  overflow: visible;
  color: inherit;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.epp-layer .epp-result-symbol > circle {
  fill: rgba(var(--epp-glow-two), .055);
  stroke: currentColor;
  stroke-width: 1;
  stroke-opacity: .38;
}
.epp-layer .epp-result-symbol > path {
  fill: none;
  stroke: currentColor;
  stroke-width: 2.9;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-dasharray: 42;
  stroke-dashoffset: 0;
}

.epp-layer[data-epp-state="success"] .epp-atmosphere i { animation-play-state: paused; }
.epp-layer[data-epp-state="success"] .epp-orbit {
  color: var(--epp-cyan);
  transform: perspective(700px) rotateX(0) rotateY(0) rotateZ(0);
  animation: epp-result-settle 520ms cubic-bezier(.2, .8, .2, 1) 1 both;
  box-shadow: inset 0 1px 0 var(--epp-tile-light), 0 22px 58px var(--epp-shadow), 0 0 52px rgba(var(--epp-glow-two), .11);
}
.epp-layer[data-epp-state="success"] .epp-orbit::before {
  border-color: rgba(var(--epp-glow-two), .28);
  animation: epp-result-halo-one 1050ms cubic-bezier(.2, .8, .2, 1) 1 both;
}
.epp-layer[data-epp-state="success"] .epp-orbit::after {
  border-color: rgba(var(--epp-glow), .2);
  animation: epp-result-halo-two 1200ms cubic-bezier(.2, .8, .2, 1) 100ms 1 both;
}
.epp-layer[data-epp-state="success"] .epp-symbol { display: none; }
.epp-layer[data-epp-state="success"] .epp-result-symbol {
  display: block;
  filter: drop-shadow(0 0 15px rgba(var(--epp-glow-two), .13));
  transform-origin: 32px 32px;
  animation: epp-result-check-in 520ms cubic-bezier(.2, .8, .2, 1) 1 both;
}
.epp-layer[data-epp-state="success"] .epp-result-symbol > path {
  animation: epp-result-check-draw 580ms cubic-bezier(.25, .65, .3, 1) 140ms 1 both;
}
.epp-layer[data-epp-state="success"] .epp-track,
.epp-layer[data-epp-state="success"] .epp-meta,
.epp-layer[data-epp-state="success"] .epp-recovery { display: none; }
.epp-layer[data-epp-state="success"] .epp-eyebrow::before {
  background: var(--epp-cyan);
  box-shadow: 0 0 13px rgba(var(--epp-glow-two), .34);
}
.epp-layer[data-epp-state="success"] p.epp-result-detail {
  display: block;
  max-width: 540px;
  margin: 17px auto 0;
  padding: 12px 16px;
  border: 1px solid rgba(var(--epp-glow), .2);
  border-radius: 13px;
  background: var(--epp-recovery-bg);
  color: var(--epp-muted);
  font: 400 12px/1.7 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  letter-spacing: .005em;
  overflow-wrap: break-word;
  white-space: pre-line;
}
.epp-layer[data-epp-state="success"] .epp-result-actions {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 12px;
  max-width: 600px;
  margin: 28px auto 0;
}
.epp-layer[data-epp-state="success"] .epp-result-dismiss {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 1 auto;
  min-width: 132px;
  max-width: 100%;
  min-height: 46px;
  margin: 0;
  padding: 11px 24px;
  border: 1px solid rgba(var(--epp-glow), .44);
  border-radius: 13px;
  background: linear-gradient(145deg, rgba(var(--epp-glow), .2), rgba(var(--epp-glow), .105));
  color: var(--epp-ink);
  box-shadow: inset 0 1px 0 var(--epp-tile-light), 0 8px 25px rgba(var(--epp-glow), .07);
  font: 650 13px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  letter-spacing: .015em;
  white-space: normal;
  overflow-wrap: break-word;
  text-transform: none;
  text-align: center;
  cursor: pointer;
  transition: background 160ms ease, border-color 160ms ease, transform 160ms ease;
}
.epp-layer[data-epp-state="success"] .epp-result-dismiss:hover {
  border-color: var(--epp-blue);
  background: linear-gradient(145deg, rgba(var(--epp-glow), .28), rgba(var(--epp-glow), .17));
  transform: translateY(-1px);
}
.epp-layer[data-epp-state="success"] .epp-result-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 1 auto;
  max-width: 100%;
  min-height: 44px;
  margin: 0;
  padding: 10px 16px;
  border: 1px solid transparent;
  border-radius: 12px;
  background: transparent;
  color: var(--epp-ink);
  font: 500 13px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  letter-spacing: .005em;
  overflow-wrap: break-word;
  text-decoration: underline;
  text-decoration-color: rgba(var(--epp-glow), .65);
  text-underline-offset: 4px;
  cursor: pointer;
  transition: background 160ms ease, border-color 160ms ease;
}
.epp-layer[data-epp-state="success"] .epp-result-link:hover {
  background: rgba(var(--epp-glow), .07);
  border-color: rgba(var(--epp-glow), .2);
  color: var(--epp-ink);
  text-decoration: underline;
}
.epp-layer[data-epp-state="success"] .epp-result-dismiss:focus-visible,
.epp-layer[data-epp-state="success"] .epp-result-link:focus-visible {
  outline: 2px solid var(--epp-blue);
  outline-offset: 4px;
}
.epp-layer[data-epp-state="success"] .epp-result-track {
  position: relative;
  display: block;
  width: min(180px, 60%);
  height: 2px;
  margin: 23px auto 0;
  overflow: hidden;
  border-radius: 10px;
  background: var(--epp-track-bg);
}
.epp-layer[data-epp-state="success"] .epp-result-track > span {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--epp-blue), var(--epp-cyan));
  opacity: .7;
  transform-origin: left center;
  animation: epp-result-countdown var(--epp-result-duration, 4200ms) linear 1 forwards;
}
.epp-layer[data-epp-state="success"] .epp-result-track.epp-is-paused > span { animation-play-state: paused; }
.epp-layer[data-epp-state="success"][data-epp-kind="wellbeing"] .epp-orbit { color: #527e68; }
.epp-layer[data-epp-state="success"][data-epp-kind="wellbeing"] .epp-result-symbol > circle {
  fill: rgba(103, 147, 119, .045);
  stroke-opacity: .42;
}

@keyframes epp-identity-chip-light {
  0%, 65%, 100% { fill: rgba(var(--epp-glow-two), .1); }
  24%, 40% { fill: rgba(var(--epp-glow-two), .24); }
}
@keyframes epp-identity-line-light {
  0%, 68%, 100% { opacity: .56; }
  25%, 43% { opacity: 1; }
}
@keyframes epp-result-settle {
  from { transform: perspective(700px) rotateX(5deg) rotateY(-6deg) rotateZ(-3deg) scale(.965); }
  to { transform: perspective(700px) rotateX(0) rotateY(0) rotateZ(0) scale(1); }
}
@keyframes epp-result-halo-one {
  from { opacity: .62; transform: translate(-50%, -50%) rotate(-20deg) scale(.88); }
  to { opacity: .32; transform: translate(-50%, -50%) rotate(-14deg) scale(1.04); }
}
@keyframes epp-result-halo-two {
  from { opacity: .5; transform: translate(-50%, -50%) rotate(23deg) scale(.9); }
  to { opacity: .2; transform: translate(-50%, -50%) rotate(18deg) scale(1.04); }
}
@keyframes epp-result-check-in { from { opacity: 0; transform: scale(.86); } to { opacity: 1; transform: scale(1); } }
@keyframes epp-result-check-draw { from { stroke-dashoffset: 42; } to { stroke-dashoffset: 0; } }
@keyframes epp-result-countdown { from { transform: scaleX(1); } to { transform: scaleX(0); } }

@media (max-width: 600px) {
  .epp-layer .epp-result-symbol { width: 65px; height: 65px; }
  .epp-layer[data-epp-state="success"] .epp-result-actions { gap: 8px; margin-top: 24px; }
  .epp-layer[data-epp-state="success"] .epp-result-dismiss { min-width: 122px; padding-right: 21px; padding-left: 21px; }
  .epp-layer[data-epp-state="success"] .epp-result-link { padding-right: 13px; padding-left: 13px; font-size: 12px; }
  .epp-layer[data-epp-state="success"] .epp-result-track { margin-top: 20px; }
  .epp-layer[data-epp-state="success"] p.epp-result-detail { max-width: 380px; padding: 11px 14px; font-size: 11px; }
}
@media (max-width: 360px) {
  .epp-layer[data-epp-state="success"] .epp-result-actions { flex-direction: column; gap: 4px; }
  .epp-layer[data-epp-state="success"] .epp-result-dismiss { width: min(220px, 100%); }
}
@media (max-height: 690px) {
  .epp-layer .epp-result-symbol { width: 60px; height: 60px; }
}
@media (max-height: 450px) and (min-width: 601px) {
  .epp-layer[data-epp-state="success"] .epp-result-actions { justify-content: flex-start; margin-left: 0; margin-top: 21px; }
  .epp-layer[data-epp-state="success"] .epp-result-track { margin-left: 0; margin-top: 17px; }
  .epp-layer[data-epp-state="success"] p.epp-result-detail { margin-left: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .epp-layer[data-epp-state="success"] .epp-orbit { transform: none; }
  .epp-layer[data-epp-state="success"] .epp-result-dismiss:hover { transform: none; }
  .epp-layer[data-epp-state="success"] .epp-result-symbol { opacity: 1; transform: none; }
  .epp-layer[data-epp-state="success"] .epp-result-symbol > path { stroke-dashoffset: 0; }
  .epp-layer[data-epp-state="success"] .epp-result-track > span { transform: none; }
  .epp-layer .epp-symbol .epp-identity-line { opacity: .85; }
}

/* EPAILEAK 64x64 monoline artwork extension.
 * Append after current epaile-progress.css. Existing frame, themes, profile,
 * success, focus, recovery and timing styles remain untouched. */
.epp-layer { --epp-artwork-ready: 1; }

/* New names only; established icon selectors already live in the shared CSS. */
.epp-layer[data-epp-icon="court"] .epp-symbol [data-epp-icon="court"],
.epp-layer[data-epp-icon="receipt"] .epp-symbol [data-epp-icon="receipt"],
.epp-layer[data-epp-icon="material"] .epp-symbol [data-epp-icon="material"],
.epp-layer[data-epp-icon="training"] .epp-symbol [data-epp-icon="training"],
.epp-layer[data-epp-icon="test"] .epp-symbol [data-epp-icon="test"],
.epp-layer[data-epp-icon="chart"] .epp-symbol [data-epp-icon="chart"],
.epp-layer[data-epp-icon="security"] .epp-symbol [data-epp-icon="security"],
.epp-layer[data-epp-icon="photo"] .epp-symbol [data-epp-icon="photo"],
.epp-layer[data-epp-icon="attendance"] .epp-symbol [data-epp-icon="attendance"],
.epp-layer[data-epp-icon="sync"] .epp-symbol [data-epp-icon="sync"] { display: inline; }

/* Colors inherit the current context. No additional saturated palette. */
.epp-layer .epp-symbol .epp-art-surface { fill: rgba(var(--epp-glow), .06); }
.epp-layer .epp-symbol .epp-art-accent { stroke: var(--epp-blue); }
.epp-layer .epp-symbol .epp-art-soft { opacity: .65; }
.epp-layer .epp-symbol .epp-art-calendar-cell {
  fill: rgba(var(--epp-glow-two), .055);
  stroke: var(--epp-cyan);
  stroke-width: 1.5;
  opacity: .7;
}
.epp-layer .epp-symbol .epp-art-whistle-air,
.epp-layer .epp-symbol .epp-art-mail-route {
  stroke: var(--epp-blue);
  stroke-width: 1.5;
  opacity: .55;
}
.epp-layer .epp-symbol .epp-art-document-line,
.epp-layer .epp-symbol .epp-art-receipt-line,
.epp-layer .epp-symbol .epp-art-book-page,
.epp-layer .epp-symbol .epp-art-test-tick,
.epp-layer .epp-symbol .epp-art-report-bar { opacity: .78; }
.epp-layer .epp-symbol .epp-art-receipt-total,
.epp-layer .epp-symbol .epp-art-shirt-mark,
.epp-layer .epp-symbol .epp-art-security-edge,
.epp-layer .epp-symbol .epp-art-qr-scan { stroke: var(--epp-blue); }
.epp-layer .epp-symbol .epp-art-shirt-mark { fill: rgba(var(--epp-glow-two), .12); }
.epp-layer .epp-symbol .epp-art-security-edge { opacity: .65; }
.epp-layer .epp-symbol .epp-art-photo-upload { stroke: var(--epp-blue); stroke-width: 1.7; }
.epp-layer .epp-symbol .epp-art-qr-scan { opacity: .42; stroke-width: 1.5; }

/* Small contextual movements belong only to pending illustrations. */
.epp-layer:not([data-epp-state="success"]) .epp-symbol .epp-art-calendar-cell {
  animation: epp-art-calendar-light 4.2s ease-in-out infinite;
  animation-delay: calc(var(--epp-part, 0) * 160ms);
}
.epp-layer:not([data-epp-state="success"]) .epp-symbol .epp-art-whistle-air {
  animation: epp-art-air 4.6s ease-in-out infinite;
  animation-delay: calc(var(--epp-part, 0) * 220ms);
}
.epp-layer:not([data-epp-state="success"]) .epp-symbol .epp-art-ball {
  animation: epp-art-ball-glide 4.6s ease-in-out infinite;
}
.epp-layer:not([data-epp-state="success"]) .epp-symbol .epp-art-mail-route {
  animation: epp-art-mail-glide 4.4s ease-in-out infinite;
  animation-delay: calc(var(--epp-part, 0) * 180ms);
}
.epp-layer:not([data-epp-state="success"]) .epp-symbol .epp-art-document-line,
.epp-layer:not([data-epp-state="success"]) .epp-symbol .epp-art-receipt-line,
.epp-layer:not([data-epp-state="success"]) .epp-symbol .epp-art-test-tick,
.epp-layer:not([data-epp-state="success"]) .epp-symbol .epp-art-report-bar {
  animation: epp-art-line-light 4.2s ease-in-out infinite;
  animation-delay: calc(var(--epp-part, 0) * 200ms);
}
.epp-layer:not([data-epp-state="success"]) .epp-symbol .epp-art-document-seal {
  animation: epp-art-seal-light 5.2s ease-in-out infinite;
}
.epp-layer:not([data-epp-state="success"]) .epp-symbol .epp-art-receipt-total {
  animation: epp-art-total-light 4.8s ease-in-out infinite;
}
.epp-layer:not([data-epp-state="success"]) .epp-symbol .epp-art-shirt-mark {
  animation: epp-art-shirt-light 5s ease-in-out infinite;
}
.epp-layer:not([data-epp-state="success"]) .epp-symbol .epp-art-book-page {
  animation: epp-art-page-light 5s ease-in-out infinite;
  animation-delay: calc(var(--epp-part, 0) * 220ms);
}
.epp-layer:not([data-epp-state="success"]) .epp-symbol .epp-art-chart-bar {
  transform-box: fill-box;
  transform-origin: center bottom;
  animation: epp-art-bar-breathe 5s ease-in-out infinite;
  animation-delay: calc(var(--epp-part, 0) * 180ms);
}
.epp-layer:not([data-epp-state="success"]) .epp-symbol .epp-art-security-edge {
  animation: epp-art-shield-light 5.4s ease-in-out infinite;
}
.epp-layer:not([data-epp-state="success"]) .epp-symbol .epp-art-photo-lens {
  transform-box: fill-box;
  transform-origin: center;
  animation: epp-art-lens-breathe 5s ease-in-out infinite;
}
.epp-layer:not([data-epp-state="success"]) .epp-symbol .epp-art-photo-upload {
  animation: epp-art-upload-lift 4.6s ease-in-out infinite;
}
.epp-layer:not([data-epp-state="success"]) .epp-symbol .epp-art-qr-scan {
  animation: epp-art-qr-sweep 5.8s ease-in-out infinite;
}
.epp-layer:not([data-epp-state="success"]) .epp-symbol .epp-art-sync-arrows {
  transform-origin: 32px 32px;
  animation: epp-art-sync-turn 5.2s ease-in-out infinite;
}
.epp-layer:not([data-epp-state="success"]) .epp-symbol .epp-art-heart {
  transform-origin: 32px 32px;
  animation: epp-art-heart-breathe 5.8s ease-in-out infinite;
}

@keyframes epp-art-calendar-light {
  0%, 70%, 100% { opacity: .7; fill: rgba(var(--epp-glow-two), .055); }
  26%, 42% { opacity: 1; fill: rgba(var(--epp-glow-two), .19); }
}
@keyframes epp-art-air {
  0%, 70%, 100% { opacity: .4; transform: translate(-1px, 1px); }
  28%, 43% { opacity: .8; transform: translate(1px, -1px); }
}
@keyframes epp-art-ball-glide {
  0%, 100% { transform: translateX(0); }
  50% { transform: translateX(-3px); }
}
@keyframes epp-art-mail-glide {
  0%, 72%, 100% { opacity: .45; transform: translateX(-1px); }
  30%, 45% { opacity: .85; transform: translateX(2px); }
}
@keyframes epp-art-line-light { 0%, 70%, 100% { opacity: .6; } 28%, 44% { opacity: 1; } }
@keyframes epp-art-seal-light { 0%, 100% { opacity: .65; } 50% { opacity: 1; } }
@keyframes epp-art-total-light { 0%, 100% { opacity: .7; } 44%, 58% { opacity: 1; } }
@keyframes epp-art-shirt-light {
  0%, 100% { fill: rgba(var(--epp-glow-two), .09); }
  50% { fill: rgba(var(--epp-glow-two), .22); }
}
@keyframes epp-art-page-light {
  0%, 72%, 100% { opacity: .65; transform: translateY(0); }
  32%, 47% { opacity: 1; transform: translateY(-.6px); }
}
@keyframes epp-art-bar-breathe { 0%, 100% { transform: scaleY(.94); } 50% { transform: scaleY(1); } }
@keyframes epp-art-shield-light { 0%, 100% { opacity: .55; } 48% { opacity: 1; } }
@keyframes epp-art-lens-breathe { 0%, 100% { transform: scale(1); opacity: .8; } 50% { transform: scale(1.025); opacity: 1; } }
@keyframes epp-art-upload-lift { 0%, 100% { transform: translateY(0); } 45%, 55% { transform: translateY(-1px); } }
@keyframes epp-art-qr-sweep { 0%, 100% { transform: translateY(-9px); opacity: .4; } 50% { transform: translateY(10px); opacity: .7; } }
@keyframes epp-art-sync-turn { 0%, 100% { transform: rotate(-6deg); } 50% { transform: rotate(6deg); } }
@keyframes epp-art-heart-breathe { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.025); } }

@media (prefers-reduced-motion: reduce) {
  .epp-layer .epp-symbol *,
  .epp-layer .epp-symbol *::before,
  .epp-layer .epp-symbol *::after { animation: none !important; transition: none !important; }
  .epp-layer .epp-symbol .epp-art-ball,
  .epp-layer .epp-symbol .epp-art-whistle-air,
  .epp-layer .epp-symbol .epp-art-mail-route,
  .epp-layer .epp-symbol .epp-art-book-page,
  .epp-layer .epp-symbol .epp-art-chart-bar,
  .epp-layer .epp-symbol .epp-art-photo-lens,
  .epp-layer .epp-symbol .epp-art-photo-upload,
  .epp-layer .epp-symbol .epp-art-qr-scan,
  .epp-layer .epp-symbol .epp-art-sync-arrows,
  .epp-layer .epp-symbol .epp-art-heart { transform: none; }
  .epp-layer .epp-symbol .epp-art-calendar-cell,
  .epp-layer .epp-symbol .epp-art-whistle-air,
  .epp-layer .epp-symbol .epp-art-mail-route,
  .epp-layer .epp-symbol .epp-art-document-line,
  .epp-layer .epp-symbol .epp-art-document-seal,
  .epp-layer .epp-symbol .epp-art-receipt-line,
  .epp-layer .epp-symbol .epp-art-receipt-total,
  .epp-layer .epp-symbol .epp-art-book-page,
  .epp-layer .epp-symbol .epp-art-test-tick,
  .epp-layer .epp-symbol .epp-art-report-bar,
  .epp-layer .epp-symbol .epp-art-security-edge,
  .epp-layer .epp-symbol .epp-art-photo-lens,
  .epp-layer .epp-symbol .epp-art-qr-scan { opacity: .8; }
}

/* The same frame can sit above an existing native photo/incident dialog. */
.epp-native-host { position:fixed;inset:0;width:100vw;height:100vh;max-width:none;max-height:none;padding:0;margin:0;border:0;background:transparent;color:inherit;overflow:hidden; }
.epp-native-host::backdrop { background:transparent; }
body.epp-network-busy .blockUI.blockOverlay,body.epp-network-busy .blockUI.blockMsg { visibility:hidden!important; }
.epp-inline-wait { --epp-glow:105,137,158;--epp-glow-two:130,111,168;--epp-blue:#5e7793;--epp-cyan:#558486; }
.epp-inline-wait .epp-mini-art { display:inline-block;flex:none;width:24px;height:24px;margin-right:9px;vertical-align:middle;color:#5b7189;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round; }
.epp-inline-wait[hidden] { display:none!important; }

/* Colors inherit the current context. No additional saturated palette. */
.epp-inline-wait .epp-mini-art .epp-art-surface { fill: rgba(var(--epp-glow), .06); }
.epp-inline-wait .epp-mini-art .epp-art-accent { stroke: var(--epp-blue); }
.epp-inline-wait .epp-mini-art .epp-art-soft { opacity: .65; }
.epp-inline-wait .epp-mini-art .epp-art-calendar-cell {
  fill: rgba(var(--epp-glow-two), .055);
  stroke: var(--epp-cyan);
  stroke-width: 1.5;
  opacity: .7;
}
.epp-inline-wait .epp-mini-art .epp-art-whistle-air,
.epp-inline-wait .epp-mini-art .epp-art-mail-route {
  stroke: var(--epp-blue);
  stroke-width: 1.5;
  opacity: .55;
}
.epp-inline-wait .epp-mini-art .epp-art-document-line,
.epp-inline-wait .epp-mini-art .epp-art-receipt-line,
.epp-inline-wait .epp-mini-art .epp-art-book-page,
.epp-inline-wait .epp-mini-art .epp-art-test-tick,
.epp-inline-wait .epp-mini-art .epp-art-report-bar { opacity: .78; }
.epp-inline-wait .epp-mini-art .epp-art-receipt-total,
.epp-inline-wait .epp-mini-art .epp-art-shirt-mark,
.epp-inline-wait .epp-mini-art .epp-art-security-edge,
.epp-inline-wait .epp-mini-art .epp-art-qr-scan { stroke: var(--epp-blue); }
.epp-inline-wait .epp-mini-art .epp-art-shirt-mark { fill: rgba(var(--epp-glow-two), .12); }
.epp-inline-wait .epp-mini-art .epp-art-security-edge { opacity: .65; }
.epp-inline-wait .epp-mini-art .epp-art-photo-upload { stroke: var(--epp-blue); stroke-width: 1.7; }
.epp-inline-wait .epp-mini-art .epp-art-qr-scan { opacity: .42; stroke-width: 1.5; }

/* Small contextual movements belong only to pending illustrations. */
.epp-inline-wait .epp-mini-art .epp-art-calendar-cell {
  animation: epp-art-calendar-light 4.2s ease-in-out infinite;
  animation-delay: calc(var(--epp-part, 0) * 160ms);
}
.epp-inline-wait .epp-mini-art .epp-art-whistle-air {
  animation: epp-art-air 4.6s ease-in-out infinite;
  animation-delay: calc(var(--epp-part, 0) * 220ms);
}
.epp-inline-wait .epp-mini-art .epp-art-ball {
  animation: epp-art-ball-glide 4.6s ease-in-out infinite;
}
.epp-inline-wait .epp-mini-art .epp-art-mail-route {
  animation: epp-art-mail-glide 4.4s ease-in-out infinite;
  animation-delay: calc(var(--epp-part, 0) * 180ms);
}
.epp-inline-wait .epp-mini-art .epp-art-document-line,
.epp-inline-wait .epp-mini-art .epp-art-receipt-line,
.epp-inline-wait .epp-mini-art .epp-art-test-tick,
.epp-inline-wait .epp-mini-art .epp-art-report-bar {
  animation: epp-art-line-light 4.2s ease-in-out infinite;
  animation-delay: calc(var(--epp-part, 0) * 200ms);
}
.epp-inline-wait .epp-mini-art .epp-art-document-seal {
  animation: epp-art-seal-light 5.2s ease-in-out infinite;
}
.epp-inline-wait .epp-mini-art .epp-art-receipt-total {
  animation: epp-art-total-light 4.8s ease-in-out infinite;
}
.epp-inline-wait .epp-mini-art .epp-art-shirt-mark {
  animation: epp-art-shirt-light 5s ease-in-out infinite;
}
.epp-inline-wait .epp-mini-art .epp-art-book-page {
  animation: epp-art-page-light 5s ease-in-out infinite;
  animation-delay: calc(var(--epp-part, 0) * 220ms);
}
.epp-inline-wait .epp-mini-art .epp-art-chart-bar {
  transform-box: fill-box;
  transform-origin: center bottom;
  animation: epp-art-bar-breathe 5s ease-in-out infinite;
  animation-delay: calc(var(--epp-part, 0) * 180ms);
}
.epp-inline-wait .epp-mini-art .epp-art-security-edge {
  animation: epp-art-shield-light 5.4s ease-in-out infinite;
}
.epp-inline-wait .epp-mini-art .epp-art-photo-lens {
  transform-box: fill-box;
  transform-origin: center;
  animation: epp-art-lens-breathe 5s ease-in-out infinite;
}
.epp-inline-wait .epp-mini-art .epp-art-photo-upload {
  animation: epp-art-upload-lift 4.6s ease-in-out infinite;
}
.epp-inline-wait .epp-mini-art .epp-art-qr-scan {
  animation: epp-art-qr-sweep 5.8s ease-in-out infinite;
}
.epp-inline-wait .epp-mini-art .epp-art-sync-arrows {
  transform-origin: 32px 32px;
  animation: epp-art-sync-turn 5.2s ease-in-out infinite;
}
.epp-inline-wait .epp-mini-art .epp-art-heart {
  transform-origin: 32px 32px;
  animation: epp-art-heart-breathe 5.8s ease-in-out infinite;
}

@keyframes epp-art-calendar-light {
  0%, 70%, 100% { opacity: .7; fill: rgba(var(--epp-glow-two), .055); }
  26%, 42% { opacity: 1; fill: rgba(var(--epp-glow-two), .19); }
}
@keyframes epp-art-air {
  0%, 70%, 100% { opacity: .4; transform: translate(-1px, 1px); }
  28%, 43% { opacity: .8; transform: translate(1px, -1px); }
}
@keyframes epp-art-ball-glide {
  0%, 100% { transform: translateX(0); }
  50% { transform: translateX(-3px); }
}
@keyframes epp-art-mail-glide {
  0%, 72%, 100% { opacity: .45; transform: translateX(-1px); }
  30%, 45% { opacity: .85; transform: translateX(2px); }
}
@keyframes epp-art-line-light { 0%, 70%, 100% { opacity: .6; } 28%, 44% { opacity: 1; } }
@keyframes epp-art-seal-light { 0%, 100% { opacity: .65; } 50% { opacity: 1; } }
@keyframes epp-art-total-light { 0%, 100% { opacity: .7; } 44%, 58% { opacity: 1; } }
@keyframes epp-art-shirt-light {
  0%, 100% { fill: rgba(var(--epp-glow-two), .09); }
  50% { fill: rgba(var(--epp-glow-two), .22); }
}
@keyframes epp-art-page-light {
  0%, 72%, 100% { opacity: .65; transform: translateY(0); }
  32%, 47% { opacity: 1; transform: translateY(-.6px); }
}
@keyframes epp-art-bar-breathe { 0%, 100% { transform: scaleY(.94); } 50% { transform: scaleY(1); } }
@keyframes epp-art-shield-light { 0%, 100% { opacity: .55; } 48% { opacity: 1; } }
@keyframes epp-art-lens-breathe { 0%, 100% { transform: scale(1); opacity: .8; } 50% { transform: scale(1.025); opacity: 1; } }
@keyframes epp-art-upload-lift { 0%, 100% { transform: translateY(0); } 45%, 55% { transform: translateY(-1px); } }
@keyframes epp-art-qr-sweep { 0%, 100% { transform: translateY(-9px); opacity: .4; } 50% { transform: translateY(10px); opacity: .7; } }
@keyframes epp-art-sync-turn { 0%, 100% { transform: rotate(-6deg); } 50% { transform: rotate(6deg); } }
@keyframes epp-art-heart-breathe { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.025); } }

@media (prefers-reduced-motion: reduce) {
  .epp-inline-wait .epp-mini-art *,
  .epp-inline-wait .epp-mini-art *::before,
  .epp-inline-wait .epp-mini-art *::after { animation: none !important; transition: none !important; }
  .epp-inline-wait .epp-mini-art .epp-art-ball,
  .epp-inline-wait .epp-mini-art .epp-art-whistle-air,
  .epp-inline-wait .epp-mini-art .epp-art-mail-route,
  .epp-inline-wait .epp-mini-art .epp-art-book-page,
  .epp-inline-wait .epp-mini-art .epp-art-chart-bar,
  .epp-inline-wait .epp-mini-art .epp-art-photo-lens,
  .epp-inline-wait .epp-mini-art .epp-art-photo-upload,
  .epp-inline-wait .epp-mini-art .epp-art-qr-scan,
  .epp-inline-wait .epp-mini-art .epp-art-sync-arrows,
  .epp-inline-wait .epp-mini-art .epp-art-heart { transform: none; }
  .epp-inline-wait .epp-mini-art .epp-art-calendar-cell,
  .epp-inline-wait .epp-mini-art .epp-art-whistle-air,
  .epp-inline-wait .epp-mini-art .epp-art-mail-route,
  .epp-inline-wait .epp-mini-art .epp-art-document-line,
  .epp-inline-wait .epp-mini-art .epp-art-document-seal,
  .epp-inline-wait .epp-mini-art .epp-art-receipt-line,
  .epp-inline-wait .epp-mini-art .epp-art-receipt-total,
  .epp-inline-wait .epp-mini-art .epp-art-book-page,
  .epp-inline-wait .epp-mini-art .epp-art-test-tick,
  .epp-inline-wait .epp-mini-art .epp-art-report-bar,
  .epp-inline-wait .epp-mini-art .epp-art-security-edge,
  .epp-inline-wait .epp-mini-art .epp-art-photo-lens,
  .epp-inline-wait .epp-mini-art .epp-art-qr-scan { opacity: .8; }
}

/* Keep the existing local waiting row and its text; replace its old spinner. */
.tf-question-loading.epp-inline-wait > span { display:none; }
.epp-inline-wait .epp-mini-art .epp-identity-chip { fill:rgba(var(--epp-glow-two),.10);animation:epp-identity-chip-light 4.5s ease-in-out infinite; }
.epp-inline-wait .epp-mini-art .epp-identity-line { opacity:.7;animation:epp-identity-line-light 4.5s ease-in-out infinite;animation-delay:calc(var(--epp-line,0)*180ms); }
@media (prefers-reduced-motion:reduce) {
  .epp-inline-wait .epp-mini-art * { animation:none!important;transition:none!important; }
}


/* Every full-page job uses the current light surface. Presentation still owns copy. */
.epp-layer[data-epp-presentation],
.epp-layer[data-epp-kind] {
  --epp-blue: #2459A6;
  --epp-cyan: #C65D20;
  --epp-glow: 66, 128, 220;
  --epp-glow-two: 79, 147, 232;
  --epp-bg: #FFFFFF;
  --epp-mid: #F4F8FF;
  --epp-center: #EAF2FF;
  --epp-ink: #20324B;
  --epp-muted: #53647B;
  --epp-brand: #335E9A;
  --epp-eyebrow: #904219;
  --epp-title-one: #2459A6;
  --epp-title-two: #3B82C4;
  --epp-tile: #F1F6FF;
  --epp-tile-edge: #C9DCF6;
  --epp-tile-light: rgba(255, 255, 255, .8);
  --epp-track-bg: #D7E4F6;
  --epp-recovery-bg: #F1F6FF;
  --epp-shadow: rgba(36, 75, 130, .09);
  color-scheme: light;
}
.epp-layer[data-epp-presentation] .epp-orbit,
.epp-layer[data-epp-kind] .epp-orbit { color: var(--epp-blue); }
.epp-layer[data-epp-presentation] .epp-brand small,
.epp-layer[data-epp-kind] .epp-brand small { display: inline; }
.epp-layer[data-epp-presentation] h2.epp-title,
.epp-layer[data-epp-kind] h2.epp-title {
  color: var(--epp-title-one);
  background: none;
  -webkit-text-fill-color: currentColor;
}
/* Operations keep their contextual accents on the shared white background. */
.epp-layer[data-epp-kind="mail"]:not([data-epp-presentation="section"]) {
  --epp-blue: #6846A5; --epp-cyan: #4275AC;
  --epp-glow: 125, 99, 183; --epp-glow-two: 84, 135, 188;
  --epp-title-one: #6846A5; --epp-title-two: #4275AC; --epp-eyebrow: #6846A5;
}
.epp-layer[data-epp-kind="calendar"]:not([data-epp-presentation="section"]) {
  --epp-blue: #2459A6; --epp-cyan: #237987;
  --epp-glow: 66, 128, 220; --epp-glow-two: 70, 152, 164;
  --epp-title-one: #2459A6; --epp-title-two: #237987; --epp-eyebrow: #2459A6;
}
.epp-layer[data-epp-kind="profile"]:not([data-epp-presentation="section"]) {
  --epp-blue: #4F6486; --epp-cyan: #557E9A;
  --epp-glow: 112, 138, 191; --epp-glow-two: 118, 170, 176;
  --epp-title-one: #4F6486; --epp-title-two: #557E9A; --epp-eyebrow: #4F6486;
}
.epp-layer[data-epp-kind="report"]:not([data-epp-presentation="section"]) {
  --epp-blue: #2459A6; --epp-cyan: #3A7F9E;
  --epp-glow: 63, 133, 214; --epp-glow-two: 104, 187, 227;
  --epp-title-one: #2459A6; --epp-title-two: #3A7F9E; --epp-eyebrow: #2459A6;
}
.epp-layer[data-epp-kind="food"]:not([data-epp-presentation="section"]) {
  --epp-blue: #92501F; --epp-cyan: #A5622A;
  --epp-glow: 183, 106, 58; --epp-glow-two: 202, 156, 86;
  --epp-title-one: #92501F; --epp-title-two: #A5622A; --epp-eyebrow: #92501F;
}
.epp-layer[data-epp-kind="wellbeing"]:not([data-epp-presentation="section"]) {
  --epp-blue: #426B59; --epp-cyan: #527E68;
  --epp-glow: 156, 190, 157; --epp-glow-two: 170, 197, 179;
  --epp-title-one: #426B59; --epp-title-two: #527E68; --epp-eyebrow: #426B59;
}
@media (prefers-reduced-motion: reduce) {
  .epp-layer[data-epp-presentation] .epp-orbit,
  .epp-layer[data-epp-kind] .epp-orbit { transform: none; }
  .epp-layer[data-epp-presentation] .epp-track > span,
  .epp-layer[data-epp-kind] .epp-track > span {
    left: 36%; width: 28%; opacity: 1; background: var(--epp-blue);
  }
}
