.elsky-passport-account input,
.elsky-passport-account select,
.elsky-passport-account button {
  box-sizing: border-box;
  min-width: 0;
  min-height: 38px;
  border: 1px solid rgba(88, 240, 238, 0.54);
  border-radius: 8px;
  background: rgba(4, 21, 28, 0.92);
  color: #effafa;
  font: inherit;
}

.elsky-passport-account input,
.elsky-passport-account select {
  width: 100%;
  padding: 8px 10px;
}

.elsky-passport-account button {
  padding: 8px 12px;
  color: #04151c;
  background: #58f0ee;
  font-weight: 900;
  cursor: pointer;
}

a.elsky-bali-passport__account-link,
a.elsky-bali-passport__account-link:link,
a.elsky-bali-passport__account-link:visited {
  box-sizing: border-box;
  grid-area: account;
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  min-width: 0;
  margin: 0;
  padding: 5px 9px;
  border: 1px solid #ffc46b;
  border-radius: 999px;
  color: #07191f !important;
  background: #f59d3d;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .34), 0 2px 8px rgba(0, 0, 0, .24);
  font-size: clamp(.64rem, 1.7vw, .74rem);
  font-weight: 900;
  line-height: 1.15;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  word-break: keep-all;
}

a.elsky-bali-passport__account-link:hover,
a.elsky-bali-passport__account-link:focus,
a.elsky-bali-passport__account-link:focus-visible {
  border-color: #ffe0a3;
  color: #04151c !important;
  background: #ffb45c;
}

a.elsky-bali-passport__account-link:focus,
a.elsky-bali-passport__account-link:focus-visible {
  outline: 3px solid #58f0ee;
  outline-offset: 2px;
}

a.elsky-bali-passport__account-link:active {
  color: #04151c !important;
  background: #df761f;
  transform: translateY(1px);
}

a.elsky-bali-passport__account-link[aria-disabled="true"] {
  color: #243338 !important;
  background: #e8a75e;
  opacity: .78;
}

.elsky-passport-save-dialog {
  box-sizing: border-box;
  width: min(460px, calc(100vw - 24px));
  max-width: none;
  height: fit-content;
  max-height: none;
  margin: auto;
  padding: 0;
  overflow: visible;
  border: 1px solid rgba(88, 240, 238, 0.55);
  border-radius: 18px;
  color: #effafa;
  background: linear-gradient(145deg, rgba(8, 31, 39, 0.99), rgba(4, 21, 28, 0.99));
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.58);
}

.elsky-passport-save-dialog::backdrop {
  background: rgba(1, 10, 14, 0.76);
  backdrop-filter: blur(3px);
}

.elsky-passport-save-dialog__panel {
  position: relative;
  box-sizing: border-box;
  display: grid;
  gap: 0;
  min-width: 0;
  padding: 11px clamp(20px, 5vw, 30px);
}

.elsky-passport-save-dialog__brand,
.elsky-passport-save-dialog__intro,
.elsky-passport-save-dialog__status,
.elsky-passport-save-dialog h2 {
  margin: 0;
}

.elsky-passport-save-dialog .elsky-passport-save-dialog__brand {
  justify-self: center;
  margin: 0 0 22px;
  color: #f5d891;
  font-size: clamp(1.25rem, 3vw, 1.5rem);
  font-weight: 950;
  line-height: 1.2;
  letter-spacing: 0;
  text-align: center;
  white-space: nowrap;
}

.elsky-passport-save-dialog__logo {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 0;
  margin: 0 0 22px;
  padding: 0;
  line-height: 0;
}

.elsky-passport-save-dialog__logo .custom-logo-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 0;
  margin: 0 auto;
  padding: 0;
  line-height: 0;
}

.elsky-passport-save-dialog__logo .custom-logo {
  display: block;
  width: 192px !important;
  max-width: 192px !important;
  height: 192px !important;
  max-height: 192px !important;
  object-fit: contain;
}

.elsky-passport-save-dialog .elsky-passport-save-dialog__panel > h2 {
  margin: 0 0 9px;
  padding: 0;
  padding-inline: 0;
  color: #f5d891;
  font-size: clamp(1.15rem, 4.6vw, 1.55rem);
  line-height: 1.25;
  text-align: center;
}

.elsky-passport-save-dialog .elsky-passport-save-dialog__intro {
  margin: 0 0 10px;
  color: rgba(239, 250, 250, 0.82);
  font-size: 0.86rem;
  line-height: 1.6;
  text-align: center;
}

.elsky-passport-save-dialog form {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 8px;
}

.elsky-passport-provider {
  display: grid;
  gap: 9px;
  width: 100%;
  min-width: 0;
  margin: 0 0 10px;
}

.elsky-passport-provider__google {
  display: flex;
  justify-content: center;
  width: 100%;
  min-width: 0;
  min-height: 40px;
}

.elsky-passport-provider__google > div,
.elsky-passport-provider__google iframe {
  max-width: 100% !important;
}

.elsky-passport-provider__divider {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: 9px;
  color: rgba(239, 250, 250, 0.68);
  font-size: 0.72rem;
  font-weight: 800;
  text-align: center;
}

.elsky-passport-provider__divider::before,
.elsky-passport-provider__divider::after {
  height: 1px;
  background: rgba(88, 240, 238, 0.26);
  content: '';
}

.elsky-passport-provider[aria-busy='true'] {
  opacity: 0.72;
  pointer-events: none;
}

.elsky-passport-save-dialog label {
  display: grid;
  gap: 5px;
  min-width: 0;
  color: #effafa;
  font-size: 0.76rem;
  font-weight: 850;
  text-align: center;
}

.elsky-passport-save-dialog input,
.elsky-passport-save-dialog button {
  box-sizing: border-box;
  min-width: 0;
  min-height: 40px;
  border: 1px solid rgba(88, 240, 238, 0.54);
  border-radius: 8px;
  font: inherit;
}

.elsky-passport-save-dialog input {
  width: 100%;
  padding: 8px 10px;
  color: #effafa;
  background: rgba(4, 21, 28, 0.92);
  text-align: left;
}

.elsky-passport-save-dialog form button {
  justify-self: center;
  width: auto;
  max-width: 100%;
  padding: 8px 12px;
  color: #04151c;
  background: #58f0ee;
  font-weight: 900;
  white-space: nowrap;
  cursor: pointer;
}

.elsky-passport-save-dialog button.is-sending,
.elsky-passport-account button.is-sending {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .55em;
  cursor: wait;
}

.elsky-passport-save-dialog button.is-sending::before,
.elsky-passport-account button.is-sending::before {
  box-sizing: border-box;
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  border: 2px solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  content: '';
  animation: elsky-passport-send-spin .72s linear infinite;
}

@keyframes elsky-passport-send-spin {
  to { transform: rotate(360deg); }
}

.elsky-passport-save-dialog__close {
  position: absolute;
  z-index: 1;
  top: 10px;
  right: 10px;
  display: inline-grid;
  width: 34px;
  min-width: 34px !important;
  height: 34px;
  min-height: 34px !important;
  padding: 0;
  place-items: center;
  border-radius: 50% !important;
  border-color: rgba(245, 216, 145, .72);
  color: #04151c;
  background: linear-gradient(135deg, #58f0ee 0%, #f5d891 100%);
  box-shadow: 0 4px 13px rgba(0, 0, 0, .32);
  font-size: 1.25rem;
  line-height: 1;
  cursor: pointer;
}
.elsky-passport-save-dialog__close:hover { filter: brightness(1.06); transform: translateY(-1px); }
.elsky-passport-save-dialog__close:focus-visible { outline: 3px solid #f5d891; outline-offset: 2px; }
.elsky-passport-account .elsky-passport-save-dialog__close {
  border-color: rgba(245, 216, 145, .72);
  color: #04151c;
  background: linear-gradient(135deg, #58f0ee 0%, #f5d891 100%);
}
.elsky-passport-close-mark {
  display: block;
  width: 16px;
  height: 16px;
  overflow: visible;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.35;
  stroke-linecap: round;
  vector-effect: non-scaling-stroke;
  pointer-events: none;
}

.elsky-passport-save-dialog .elsky-passport-save-dialog__status {
  min-height: 1.4em;
  margin: 11px 0 0;
  color: #58f0ee;
  font-size: 0.78rem;
  font-weight: 800;
  line-height: 1.7;
  text-align: center;
  white-space: pre-line;
}

.elsky-passport-save-dialog__status:empty {
  display: none;
}

.elsky-passport-save-dialog__status.is-error {
  color: #ffb4b4;
}

.elsky-passport-account {
  box-sizing: border-box;
  width: min(1120px, calc(100% - 24px));
  margin: 4px auto clamp(24px, 5vw, 70px);
  color: #effafa;
}

.elsky-passport-account *,
.elsky-passport-account *::before,
.elsky-passport-account *::after { box-sizing: border-box; }

.elsky-passport-account__hero,
.elsky-passport-account__login,
.elsky-passport-account__confirm,
.elsky-passport-account__private {
  padding: clamp(16px, 3vw, 30px);
  border: 1px solid rgba(88, 240, 238, .34);
  border-radius: 16px;
  background: linear-gradient(145deg, rgba(8, 31, 39, .98), rgba(4, 21, 28, .96));
  box-shadow: 0 16px 42px rgba(0, 0, 0, .28);
}

.elsky-passport-account__hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(156px, 196px);
  align-items: center;
  gap: clamp(18px, 4vw, 54px);
  margin-bottom: 14px;
  overflow: hidden;
}
.elsky-passport-account__hero-copy { min-width: 0; }
.elsky-passport-account__hero h1 { margin: 0; color: #f5d891; font-size: clamp(1.55rem, 5vw, 2.7rem); }
.elsky-passport-account__hero p { margin: 7px 0 0; }
.elsky-passport-account__eyebrow { color: #58f0ee; font-size: .74rem; font-weight: 950; letter-spacing: .14em; }
.elsky-passport-account__hero-crest {
  position: relative;
  display: grid;
  justify-items: center;
  min-width: 0;
  width: 100%;
  max-width: 196px;
  min-height: 170px;
  padding: 11px 10px 10px;
  justify-self: center;
  align-content: center;
  overflow: hidden;
  border: 1px solid rgba(245,216,145,.55);
  border-radius: 24px;
  background: radial-gradient(circle at 50% 25%, rgba(245,216,145,.16), rgba(4,21,28,.82) 68%);
  box-shadow: inset 0 0 0 5px rgba(88,240,238,.05), 0 10px 26px rgba(0,0,0,.32);
  text-align: center;
}
.elsky-passport-account__hero-crest::after {
  width: 72%;
  height: 1px;
  margin-top: 7px;
  background: linear-gradient(90deg, transparent, rgba(88,240,238,.7), transparent);
  content: '';
}
.elsky-passport-account__hero-crest strong { max-width: 100%; color: #f5d891; font-size: .76rem; line-height: 1.2; overflow-wrap: normal; }
.elsky-passport-account__hero-crest [data-elsky-account-progress] { display: block; max-width: 100%; margin-top: 3px; color: rgba(239,250,250,.82); font-size: .66rem; line-height: 1.3; white-space: nowrap; }
.elsky-passport-account__hero-trophy { display: block; width: 112px; height: 94px; margin-inline: auto; color: #45535a; filter: drop-shadow(0 4px 6px rgba(0,0,0,.48)); }
.elsky-passport-account__status { min-height: 1.4em; margin: 7px 4px; color: #58f0ee; font-weight: 800; }
.elsky-passport-account__status.is-error { color: #ffb4b4; }
.elsky-passport-account__route-status {
  width: 100%;
  margin: 0 0 14px;
  padding: 11px 14px;
  border: 1px solid currentColor;
  border-radius: 10px;
  background: rgba(88, 240, 238, .08);
  font-weight: 850;
  line-height: 1.65;
  overflow-wrap: anywhere;
}
.elsky-passport-account__route-status.is-success { color: #76f5f2; }
.elsky-passport-account__route-status.is-error,
.elsky-passport-account__route-status.is-danger {
  color: #ff9ca5;
  background: rgba(255, 90, 96, .08);
}

.elsky-passport-account__login form,
.elsky-passport-account__confirm form,
.elsky-passport-account__profile form {
  display: grid;
  gap: 10px;
}

.elsky-passport-account__login form { grid-template-columns: minmax(0, 1fr) auto; align-items: end; }
.elsky-passport-account__login > .elsky-passport-provider { max-width: 360px; margin-inline: auto; }
.elsky-passport-account__confirm { text-align: center; }
.elsky-passport-account__confirm h2 { margin-bottom: 10px; font-size: clamp(1.1rem, 4vw, 1.45rem); }
.elsky-passport-account__confirm p { max-width: 680px; margin: 0 auto 16px; line-height: 1.8; }
.elsky-passport-account__confirm form { justify-items: center; }
.elsky-passport-account__confirm button { min-width: min(100%, 260px); }
.elsky-passport-account label { display: grid; gap: 5px; min-width: 0; color: #effafa; font-size: .78rem; font-weight: 800; }

.elsky-passport-account__private {
  position: relative;
  isolation: isolate;
  overflow: hidden;
}
.elsky-passport-account__private::before {
  position: absolute;
  z-index: -1;
  inset: 0;
  opacity: .22;
  background-image: repeating-linear-gradient(115deg, transparent 0 34px, rgba(88,240,238,.08) 35px 36px), radial-gradient(circle at 84% 18%, rgba(245,216,145,.14), transparent 28%);
  content: '';
  pointer-events: none;
}
.elsky-passport-account__privacy { margin: 0 0 14px; color: rgba(239, 250, 250, .75); }
.elsky-passport-account__section-kicker { margin: 0 0 3px; color: #f5d891; font-size: .62rem; font-weight: 950; letter-spacing: .16em; }
.elsky-passport-account__trophy-svg { display: block; width: 100%; height: 100%; overflow: visible; filter: drop-shadow(0 5px 4px rgba(0,0,0,.52)); }
.elsky-passport-account__trophy-handles { fill: none; stroke: currentColor; stroke-width: 5; stroke-linecap: round; stroke-linejoin: round; }
.elsky-passport-account__trophy-bowl,
.elsky-passport-account__trophy-rim,
.elsky-passport-account__trophy-stem { stroke: rgba(255,255,255,.26); stroke-width: .8; }
.elsky-passport-account__trophy-shadow { fill: rgba(0,0,0,.42); filter: blur(1.5px); }
.elsky-passport-account__trophy-cup-depth { fill: rgba(3,14,19,.22); }
.elsky-passport-account__trophy-shine { fill: rgba(255,255,255,.56); }
.elsky-passport-account__trophy-base-highlight { fill: rgba(255,255,255,.45); }
.elsky-passport-account__trophy-glint { fill: #fff6c7; opacity: .72; transform-origin: 55px 14px; }
.elsky-passport-account__hero-trophy.is-none .elsky-passport-account__trophy-handles,
.elsky-passport-account__hero-trophy.is-none .elsky-passport-account__trophy-bowl,
.elsky-passport-account__hero-trophy.is-none .elsky-passport-account__trophy-stem,
.elsky-passport-account__hero-trophy.is-none .elsky-passport-account__trophy-rim { fill: transparent; stroke: currentColor; stroke-width: 1.5; stroke-dasharray: 3 3; }
.elsky-passport-account__hero-trophy.is-bronze { color: #c98750; }
.elsky-passport-account__hero-trophy.is-silver { color: #d9e4e8; }
.elsky-passport-account__hero-trophy.is-gold { color: #f5d891; }
.elsky-passport-account__hero-trophy.is-platinum { color: #bdeef0; }
.elsky-passport-account__hero-trophy.is-rainbow,
.elsky-passport-account__hero-trophy.is-super_rainbow_platinum { color: #ff8cac; filter: drop-shadow(0 0 8px rgba(88,240,238,.62)); animation: elsky-passport-rainbow-trophy 5s linear infinite; }
.elsky-passport-account__hero-trophy:not(.is-none) .elsky-passport-account__trophy-glint,
.elsky-passport-account__trophy-road li.is-current:not(.is-none) .elsky-passport-account__trophy-glint { animation: elsky-passport-trophy-glint 3.8s ease-in-out infinite; }

@keyframes elsky-passport-rainbow-trophy {
  0%,100% { color: #ff8cac; }
  25% { color: #f5d891; }
  50% { color: #58f0ee; }
  75% { color: #a7a1ff; }
}

@keyframes elsky-passport-trophy-glint {
  0%, 66%, 100% { opacity: .4; transform: scale(.72) rotate(0); }
  74% { opacity: 1; transform: scale(1.16) rotate(18deg); }
  82% { opacity: .56; transform: scale(.86) rotate(30deg); }
}

.elsky-passport-account__merge { margin: 0 0 14px; padding: 14px; border: 1px solid rgba(245,216,145,.5); border-radius: 12px; background: rgba(245,216,145,.08); }
.elsky-passport-account__merge h2 { margin: 0; color: #f5d891; font-size: 1rem; }
.elsky-passport-account__merge p { margin: 6px 0; }
.elsky-passport-account__merge div { display: flex; flex-wrap: wrap; gap: 7px; }

.elsky-passport-account__lists {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.elsky-passport-account__lists > section {
  min-width: 0;
  padding: 13px;
  border: 1px solid rgba(88, 240, 238, .24);
  border-radius: 11px;
  background: rgba(255, 255, 255, .035);
}

.elsky-passport-account h2 { margin: 0 0 8px; color: #58f0ee; font-size: .92rem; }
.elsky-passport-account ul { display: grid; gap: 5px; margin: 0; padding: 0; list-style: none; }
.elsky-passport-account li,
.elsky-passport-account a { min-width: 0; color: #effafa; overflow-wrap: anywhere; }
.elsky-passport-account li.is-empty { color: rgba(239, 250, 250, .55); }
.elsky-passport-account__profile {
  margin-bottom: 14px;
  padding: clamp(14px, 2.6vw, 24px);
  border: 1px solid rgba(88,240,238,.42);
  border-radius: 14px;
  background: linear-gradient(120deg, rgba(8,31,39,.96), rgba(5,24,31,.92));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 12px 34px rgba(0,0,0,.24);
}
.elsky-passport-account__profile > header,
.elsky-passport-account__trophy-road > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 13px;
  padding-bottom: 9px;
  border-bottom: 1px solid rgba(88,240,238,.22);
}
.elsky-passport-account__profile > header h2,
.elsky-passport-account__trophy-road > header h2 { margin: 0; color: #58f0ee; font-size: 1.08rem; }
.elsky-passport-account__profile-edit { flex: 0 0 auto; background: transparent !important; color: #58f0ee !important; }
.elsky-passport-account__identity {
  display: grid;
  grid-template-columns: minmax(195px, 252px) minmax(0, 1fr);
  gap: clamp(16px, 3vw, 34px);
  align-items: stretch;
}
.elsky-passport-account__portrait { min-width: 0; }
.elsky-passport-account__portrait-frame {
  position: relative;
  width: min(100%, 232px);
  aspect-ratio: 2 / 3;
  margin-inline: auto;
  overflow: hidden;
  border: 1px solid rgba(245,216,145,.62);
  border-radius: 7px;
  background: radial-gradient(circle at 50% 32%, rgba(88,240,238,.22), rgba(4,21,28,.96) 72%);
  box-shadow: 0 11px 24px rgba(0,0,0,.34), inset 0 0 0 5px rgba(3,18,24,.62);
}
.elsky-passport-account__portrait-frame > img,
.elsky-passport-account__portrait-frame > span { position: absolute; inset: 0; width: 100%; height: 100%; }
.elsky-passport-account__portrait-frame > img { display: block; object-fit: cover; }
.elsky-passport-account__portrait-frame > span { display: grid; place-items: center; }
.elsky-passport-account__portrait-frame > span[hidden] { display: none; }
.elsky-passport-account__portrait-frame svg { width: 88%; height: 88%; fill: rgba(88,240,238,.34); }
.elsky-passport-account__portrait-frame .elsky-passport-account__portrait-line { fill: none; stroke: rgba(245,216,145,.5); stroke-width: 2; stroke-dasharray: 4 4; }
.elsky-passport-account .elsky-passport-account__photo-remove {
  position: absolute;
  z-index: 3;
  top: 0;
  right: 0;
  display: grid;
  width: 38px;
  min-width: 38px;
  height: 38px;
  min-height: 38px;
  padding: 0;
  place-items: center;
  border: 1px solid rgba(255,255,255,.75);
  border-radius: 50%;
  opacity: 0;
  color: #fff;
  background: #c22536;
  box-shadow: 0 4px 12px rgba(0,0,0,.48);
  pointer-events: none;
  transform: scale(.86);
  transition: opacity .16s ease, transform .16s ease, background-color .16s ease;
}
.elsky-passport-account .elsky-passport-account__photo-remove span { font-size: 24px; font-weight: 700; line-height: 1; transform: translateY(-1px); }
.elsky-passport-account__profile.is-editing form.has-saved-photo .elsky-passport-account__portrait-frame:hover .elsky-passport-account__photo-remove,
.elsky-passport-account__profile.is-editing form.has-saved-photo .elsky-passport-account__portrait-frame:focus-within .elsky-passport-account__photo-remove {
  opacity: 1;
  pointer-events: auto;
  transform: scale(1);
}
.elsky-passport-account .elsky-passport-account__photo-remove:hover { background: #d42c3e; }
.elsky-passport-account .elsky-passport-account__photo-remove:focus-visible { outline: 3px solid #58f0ee; outline-offset: 2px; }
.elsky-passport-account__portrait > p { margin: 8px 0 0; color: rgba(239,250,250,.58); font-size: .68rem; line-height: 1.5; text-align: center; }
.elsky-passport-account__photo-controls { display: grid; gap: 7px; margin-top: 9px; }
.elsky-passport-account__photo-controls label { display: grid; place-items: center; min-height: 38px; padding: 7px 10px; border: 1px solid rgba(88,240,238,.54); border-radius: 8px; background: rgba(4,21,28,.92); cursor: pointer; }
.elsky-passport-account__photo-controls input[type="file"] { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); }
.elsky-passport-account__issue {
  display: inline-flex;
  width: 100%;
  min-height: 42px;
  align-items: center;
  justify-content: center;
  gap: 7px;
  margin-top: 12px;
  border: 1px solid #f5d891;
  border-radius: 9px;
  color: #03171f;
  background: linear-gradient(135deg, #f5d891, #58f0ee);
  font-weight: 950;
  box-shadow: 0 8px 20px rgba(0,0,0,.24);
}
.elsky-passport-account__issue > span { display: inline-flex; width: 19px; height: 19px; }
.elsky-passport-account__issue svg { width: 100%; height: 100%; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.elsky-passport-account__issue:hover { filter: brightness(1.08); transform: translateY(-1px); }
.elsky-passport-account__issue:focus-visible { outline: 3px solid #58f0ee; outline-offset: 3px; }
.elsky-passport-account__identity-fields {
  min-width: 0;
  padding-left: clamp(15px, 2.4vw, 28px);
  border-left: 1px solid rgba(245,216,145,.36);
}
.elsky-passport-account__field-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 12px; }
.elsky-passport-account__field-grid .is-wide { grid-column: 1 / -1; }
.elsky-passport-account__field-grid .is-age { grid-column: 1 / -1; }
.elsky-passport-account__visit-frequency { min-width: 0; margin: 0; padding: 0; border: 0; }
.elsky-passport-account__visit-frequency legend { margin-bottom: 6px; color: #f5d891; font-size: .72rem; font-weight: 850; }
.elsky-passport-account__visit-frequency > div { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 5px; }
.elsky-passport-account__visit-frequency label { position: relative; min-width: 0; }
.elsky-passport-account__visit-frequency input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.elsky-passport-account__visit-frequency span { display: grid; min-height: 38px; place-items: center; padding: 5px 4px; border: 1px solid rgba(88,240,238,.28); border-radius: 8px; color: rgba(239,250,250,.72); background: rgba(255,255,255,.025); font-size: .68rem; font-weight: 850; line-height: 1.25; text-align: center; cursor: pointer; }
.elsky-passport-account__visit-frequency input:checked + span { border-color: #f5d891; color: #061a20; background: linear-gradient(135deg,#f5d891,#58f0ee); box-shadow: 0 4px 13px rgba(0,0,0,.22); }
.elsky-passport-account__visit-frequency input:focus-visible + span { outline: 3px solid #58f0ee; outline-offset: 2px; }
.elsky-passport-account__visit-frequency input:disabled + span { cursor: default; }
.elsky-passport-account__country-field { position: relative; min-width: 0; }
.elsky-passport-account__country-field > label { display: block; }
.elsky-passport-account__country-combobox { position: relative; min-width: 0; }
.elsky-passport-account__country-combobox > input[type="search"] { width: 100%; }
.elsky-passport-account__country-combobox > ul {
  position: absolute;
  z-index: 8;
  top: calc(100% + 4px);
  right: 0;
  left: 0;
  display: grid;
  max-height: 224px;
  gap: 0;
  margin: 0;
  padding: 4px;
  overflow-y: auto;
  border: 1px solid rgba(88,240,238,.64);
  border-radius: 9px;
  background: #061a21;
  box-shadow: 0 12px 28px rgba(0,0,0,.52);
}
.elsky-passport-account__country-combobox [role="option"] {
  padding: 7px 8px;
  border-radius: 6px;
  color: #effafa;
  cursor: pointer;
  overflow-wrap: normal;
}
.elsky-passport-account__country-combobox [role="option"].is-active,
.elsky-passport-account__country-combobox [role="option"]:hover { color: #031418; background: #58f0ee; }
.elsky-passport-account__country-empty { margin: 5px 0 0; color: rgba(239,250,250,.62); font-size: .7rem; }
.elsky-passport-account__profile textarea { box-sizing: border-box; width: 100%; min-width: 0; padding: 9px 10px; resize: vertical; border: 1px solid rgba(88,240,238,.54); border-radius: 8px; color: #effafa; background: rgba(4,21,28,.92); font: inherit; line-height: 1.55; }
.elsky-passport-account__profile input:disabled,
.elsky-passport-account__profile select:disabled,
.elsky-passport-account__profile textarea:disabled,
.elsky-passport-account__profile input[readonly] {
  opacity: 1;
  border-color: rgba(88,240,238,.18);
  color: #effafa;
  background: rgba(255,255,255,.025);
  -webkit-text-fill-color: #effafa;
}
.elsky-passport-account__language-checks { display: flex; flex-wrap: wrap; gap: 6px; min-width: 0; margin: 11px 0; padding: 0; border: 0; }
.elsky-passport-account__language-checks legend { width: 100%; margin-bottom: 3px; color: #effafa; font-size: .78rem; font-weight: 800; }
.elsky-passport-account__language-checks label { display: inline-flex; flex: 0 1 auto; align-items: center; gap: 5px; padding: 5px 8px; border: 1px solid rgba(88,240,238,.25); border-radius: 999px; background: rgba(255,255,255,.03); }
.elsky-passport-account__language-checks input { width: 16px; min-width: 16px; min-height: 16px; margin: 0; accent-color: #58f0ee; }
.elsky-passport-account__introduction { margin-top: 2px; }
.elsky-passport-account__profile-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 10px; }
.elsky-passport-account__profile-actions [data-elsky-profile-cancel] { color: #effafa; background: transparent; }
.elsky-passport-account__profile-status { min-height: 1.4em; margin: 8px 0 0; color: #58f0ee; font-size: .78rem; font-weight: 800; text-align: right; }
.elsky-passport-account__profile-status.is-error { color: #ffb4b4; }

.elsky-passport-account__trophy-road {
  min-width: 0;
  margin-bottom: 14px;
  padding: clamp(13px, 2.2vw, 20px);
  border: 1px solid rgba(245,216,145,.35);
  border-radius: 14px;
  background: rgba(4,21,28,.72);
}
.elsky-passport-account__trophy-summary { display: grid; justify-items: end; color: rgba(239,250,250,.68); font-size: .72rem; line-height: 1.4; text-align: right; }
.elsky-passport-account__trophy-summary strong { color: #f5d891; font-size: .8rem; }
.elsky-passport-account__trophy-road ol {
  --elsky-road-gap: clamp(1px, .45vw, 8px);
  --elsky-road-trophy: clamp(30px, 4.2vw, 52px);
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  min-width: 0;
  gap: var(--elsky-road-gap);
  margin: 0;
  padding: 22px 0 4px;
  overflow: visible;
  list-style: none;
}
.elsky-passport-account__trophy-road li {
  position: relative;
  display: grid;
  grid-template-rows: 18px var(--elsky-road-trophy) minmax(2.4em, auto) auto;
  min-width: 0;
  justify-items: center;
  align-content: start;
  gap: 2px;
  padding: 0 1px 4px;
  border: 0;
  border-radius: 0;
  color: #53636b;
  background: transparent;
  text-align: center;
}
.elsky-passport-account__trophy-road li::after {
  position: absolute;
  z-index: 0;
  top: calc(18px + 2px + (var(--elsky-road-trophy) / 2) - 1px);
  left: 50%;
  width: calc(100% + var(--elsky-road-gap));
  border-top: 2px dotted rgba(115,132,139,.42);
  content: '';
}
.elsky-passport-account__trophy-road li::before {
  position: absolute;
  z-index: 0;
  top: calc(18px + 2px + (var(--elsky-road-trophy) / 2) - 1px);
  left: 50%;
  display: none;
  width: calc(100% + var(--elsky-road-gap));
  border-top: 2px dotted rgba(245,216,145,.62);
  content: '';
}
.elsky-passport-account__trophy-road li:last-child::after { content: none; }
.elsky-passport-account__trophy-road li.is-achieved:not(.is-current):not(:last-child)::before { display: block; }
.elsky-passport-account__trophy-road li.is-current:not(:last-child)::before {
  display: block;
  width: calc((100% + var(--elsky-road-gap)) / 2);
}
.elsky-passport-account__road-current {
  align-self: start;
  max-width: 100%;
  padding: 1px 3px;
  border-radius: 999px;
  color: #04161c;
  background: #f5d891;
  font-size: clamp(.42rem, .56vw, .58rem);
  font-weight: 950;
  line-height: 1.35;
  visibility: hidden;
  white-space: nowrap;
}
.elsky-passport-account__trophy-road li.is-current .elsky-passport-account__road-current { visibility: visible; }
.elsky-passport-account__road-trophy { position: relative; z-index: 1; display: block; width: var(--elsky-road-trophy); height: var(--elsky-road-trophy); color: currentColor; filter: drop-shadow(0 3px 5px rgba(0,0,0,.5)); }
.elsky-passport-account__start-badge-svg { display: block; width: 100%; height: 100%; overflow: visible; }
.elsky-passport-account__start-badge-shadow { fill: rgba(0,0,0,.52); transform: translateY(3px); }
.elsky-passport-account__start-badge-rim { stroke: currentColor; stroke-width: 2; }
.elsky-passport-account__start-badge-inner { fill: rgba(3,17,23,.78); stroke: rgba(255,255,255,.26); stroke-width: 1.5; }
.elsky-passport-account__start-badge-check { fill: none; stroke: currentColor; stroke-width: 6; stroke-linecap: round; stroke-linejoin: round; }
.elsky-passport-account__start-badge-shine { fill: none; stroke: rgba(255,255,255,.74); stroke-width: 3; stroke-linecap: round; }
.elsky-passport-account__trophy-road li strong { min-width: 0; max-width: 100%; color: inherit; font-size: clamp(.48rem, .7vw, .7rem); line-height: 1.16; overflow-wrap: anywhere; }
.elsky-passport-account__road-range { min-width: 0; max-width: 100%; color: rgba(174,190,196,.56); font-size: clamp(.43rem, .58vw, .6rem); line-height: 1.18; overflow-wrap: anywhere; }
.elsky-passport-account__trophy-road li.is-achieved:not(.is-current) { color: #93a9ae; }
.elsky-passport-account__trophy-road li.is-achieved.is-bronze:not(.is-current) { color: #8e6748; }
.elsky-passport-account__trophy-road li.is-achieved.is-silver:not(.is-current) { color: #8fa1a7; }
.elsky-passport-account__trophy-road li.is-achieved.is-gold:not(.is-current) { color: #9d8754; }
.elsky-passport-account__trophy-road li.is-achieved.is-platinum:not(.is-current) { color: #75999d; }
.elsky-passport-account__trophy-road li.is-achieved.is-rainbow:not(.is-current),
.elsky-passport-account__trophy-road li.is-achieved.is-super_rainbow_platinum:not(.is-current) { color: #8e6f89; }
.elsky-passport-account__trophy-road li.is-unmet { color: #44535a; opacity: .72; }
.elsky-passport-account__trophy-road li.is-current { opacity: 1; }
.elsky-passport-account__trophy-road li.is-current.is-none { color: #9aa9ae; }
.elsky-passport-account__trophy-road li.is-current.is-none .elsky-passport-account__trophy-handles,
.elsky-passport-account__trophy-road li.is-current.is-none .elsky-passport-account__trophy-bowl,
.elsky-passport-account__trophy-road li.is-current.is-none .elsky-passport-account__trophy-stem,
.elsky-passport-account__trophy-road li.is-current.is-none .elsky-passport-account__trophy-rim { fill: transparent; stroke: currentColor; stroke-width: 1.5; stroke-dasharray: 3 3; }
.elsky-passport-account__trophy-road li.is-current.is-bronze { color: #c98750; }
.elsky-passport-account__trophy-road li.is-current.is-silver { color: #d9e4e8; }
.elsky-passport-account__trophy-road li.is-current.is-gold { color: #f5d891; }
.elsky-passport-account__trophy-road li.is-current.is-platinum { color: #bdeef0; }
.elsky-passport-account__trophy-road li.is-current.is-rainbow,
.elsky-passport-account__trophy-road li.is-current.is-super_rainbow_platinum { color: #ff8cac; }
.elsky-passport-account__photo-road { border-color: rgba(88,240,238,.34); background: linear-gradient(135deg, rgba(3,22,29,.82), rgba(7,31,38,.7)); }
.elsky-passport-account__photo-road .elsky-passport-account__road-trophy { color: #53636b; filter: drop-shadow(0 3px 5px rgba(0,0,0,.5)); }
.elsky-passport-account__photo-quest-svg { display: block; width: 100%; height: 100%; overflow: visible; fill: rgba(4,21,28,.88); stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
.elsky-passport-account__photo-quest-depth { filter: drop-shadow(0 2px 2px rgba(0,0,0,.46)); }
.elsky-passport-account__photo-quest-gleam { fill: none; stroke: rgba(255,255,255,.42); stroke-width: 2.4; opacity: .18; }
.elsky-passport-account__photo-road li.is-achieved:not(.is-current) { color: #6ca5a8; }
.elsky-passport-account__photo-road li.is-current { color: #58f0ee; }
.elsky-passport-account__photo-road li.is-current.is-photo-perfect,
.elsky-passport-account__photo-road li.is-current.is-photo-collector { color: #f5d891; }
.elsky-passport-account__photo-road li.is-current.is-photo-keeper,
.elsky-passport-account__photo-road li.is-current.is-photo-complete { color: #ff8cac; }
.elsky-passport-account__photo-road li.is-current .elsky-passport-account__photo-quest-svg { filter: drop-shadow(0 0 6px currentColor) drop-shadow(0 3px 5px rgba(0,0,0,.5)); }
.elsky-passport-account__photo-road li.is-current .elsky-passport-account__photo-quest-gleam { opacity: .9; animation: elsky-passport-trophy-glint 3.8s ease-in-out infinite; }

.elsky-passport-account__achievement {
  min-width: 0;
  margin-bottom: 14px;
  padding: clamp(14px, 2.4vw, 22px);
  overflow: hidden;
  border: 1px solid rgba(245,216,145,.42);
  border-radius: 16px;
  background:
    radial-gradient(circle at 18% 42%, rgba(245,216,145,.11), transparent 34%),
    radial-gradient(circle at 82% 45%, rgba(88,240,238,.08), transparent 35%),
    linear-gradient(135deg, rgba(3,20,27,.96), rgba(8,32,40,.88));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 13px 34px rgba(0,0,0,.25);
}
.elsky-passport-account__achievement > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
  padding-bottom: 9px;
  border-bottom: 1px solid rgba(88,240,238,.22);
}
.elsky-passport-account__achievement > header h2 { margin: 0; color: #58f0ee; font-size: 1.08rem; }
.elsky-passport-account__achievement > header > strong { color: #f5d891; font-size: .8rem; text-align: right; }
.elsky-passport-account__achievement-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
  gap: 0;
}
.elsky-passport-account__composite-stage {
  display: grid;
  min-width: 0;
  justify-items: center;
  align-content: center;
  padding: 4px;
}
.elsky-passport-account__composite-trophy {
  --elsky-passport-tier-metal-a: #263740;
  --elsky-passport-tier-metal-b: #647177;
  --elsky-passport-tier-metal-c: #0d171b;
  --elsky-passport-photo-metal-a: #4b555a;
  --elsky-passport-photo-metal-b: #7d898f;
  --elsky-passport-photo-metal-c: #20292d;
  --elsky-passport-photo-glow: rgba(145,160,167,.48);
  --elsky-passport-review-metal-a: #4b555a;
  --elsky-passport-review-metal-b: #7d898f;
  --elsky-passport-review-metal-c: #20292d;
  --elsky-passport-review-jewel-a: #d8e1e5;
  --elsky-passport-review-jewel-b: #85949a;
  --elsky-passport-review-jewel-c: #344248;
  --elsky-passport-review-glow: rgba(145,160,167,.48);
  display: block;
  width: min(100%, 220px);
  color: var(--elsky-passport-tier-metal-b);
  filter: drop-shadow(0 10px 10px rgba(0,0,0,.48));
}
.elsky-passport-account__hero-trophy.elsky-passport-account__composite-trophy { width: 112px; height: 94px; }
.elsky-passport-account__composite-svg { display: block; width: 100%; height: auto; overflow: visible; }
.elsky-passport-account__composite-shadow { fill: rgba(0,0,0,.56); filter: blur(2px); }
.elsky-passport-account__composite-rim,
.elsky-passport-account__composite-bowl,
.elsky-passport-account__composite-stem { stroke: rgba(255,255,255,.26); stroke-width: 1; }
.elsky-passport-account__composite-depth { fill: rgba(1,9,13,.28); }
.elsky-passport-account__composite-base-shine { fill: rgba(255,255,255,.5); }
.elsky-passport-account__composite-cup-shine { fill: rgba(255,255,255,.58); }
.elsky-passport-account__composite-start-seal circle { fill: rgba(2,15,20,.84); stroke: currentColor; stroke-width: 2; }
.elsky-passport-account__composite-start-seal path { fill: none; stroke: currentColor; stroke-width: 4; stroke-linecap: round; stroke-linejoin: round; }
.elsky-passport-account__composite-trophy:not(.is-none) .elsky-passport-account__composite-start-seal { opacity: 0; }
.elsky-passport-account__composite-trophy.is-none .elsky-passport-account__composite-rim,
.elsky-passport-account__composite-trophy.is-none .elsky-passport-account__composite-bowl,
.elsky-passport-account__composite-trophy.is-none .elsky-passport-account__composite-stem { fill: rgba(4,21,28,.72); stroke: currentColor; stroke-width: 2; stroke-dasharray: 4 3; }
.elsky-passport-account__composite-trophy.is-none:not(.elsky-passport-account__axis-preview) .elsky-passport-account__composite-rim,
.elsky-passport-account__composite-trophy.is-none:not(.elsky-passport-account__axis-preview) .elsky-passport-account__composite-bowl,
.elsky-passport-account__composite-trophy.is-none:not(.elsky-passport-account__axis-preview) .elsky-passport-account__composite-depth,
.elsky-passport-account__composite-trophy.is-none:not(.elsky-passport-account__axis-preview) .elsky-passport-account__composite-stem,
.elsky-passport-account__composite-trophy.is-none:not(.elsky-passport-account__axis-preview) .elsky-passport-account__composite-base-shine,
.elsky-passport-account__composite-trophy.is-none:not(.elsky-passport-account__axis-preview) .elsky-passport-account__composite-cup-shine { opacity: 0; }
.elsky-passport-account__composite-trophy.is-bronze { --elsky-passport-tier-metal-a: #7d4329; --elsky-passport-tier-metal-b: #c98750; --elsky-passport-tier-metal-c: #f1b47a; }
.elsky-passport-account__composite-trophy.is-silver { --elsky-passport-tier-metal-a: #8c9aa3; --elsky-passport-tier-metal-b: #d9e4e8; --elsky-passport-tier-metal-c: #fbffff; }
.elsky-passport-account__composite-trophy.is-gold { --elsky-passport-tier-metal-a: #9e691c; --elsky-passport-tier-metal-b: #f5d891; --elsky-passport-tier-metal-c: #fff4bb; }
.elsky-passport-account__composite-trophy.is-platinum { --elsky-passport-tier-metal-a: #5c9aa3; --elsky-passport-tier-metal-b: #bdeef0; --elsky-passport-tier-metal-c: #ecffff; }
.elsky-passport-account__composite-trophy.is-rainbow { --elsky-passport-tier-metal-a: #58f0ee; --elsky-passport-tier-metal-b: #ff8cac; --elsky-passport-tier-metal-c: #f5d891; }
.elsky-passport-account__composite-trophy.is-super_rainbow { --elsky-passport-tier-metal-a: #8d7cff; --elsky-passport-tier-metal-b: #ff8cac; --elsky-passport-tier-metal-c: #58f0ee; }
.elsky-passport-account__composite-trophy.is-super_rainbow_platinum { --elsky-passport-tier-metal-a: #ffffff; --elsky-passport-tier-metal-b: #f5d891; --elsky-passport-tier-metal-c: #58f0ee; }
.elsky-passport-account__composite-trophy.is-photo-rank-bronze {
  --elsky-passport-photo-metal-a: #6d301f; --elsky-passport-photo-metal-b: #d88949; --elsky-passport-photo-metal-c: #f2b06d; --elsky-passport-photo-glow: rgba(216,137,73,.68);
}
.elsky-passport-account__composite-trophy.is-photo-rank-silver {
  --elsky-passport-photo-metal-a: #72818c; --elsky-passport-photo-metal-b: #eef8ff; --elsky-passport-photo-metal-c: #9fcde2; --elsky-passport-photo-glow: rgba(205,239,255,.72);
}
.elsky-passport-account__composite-trophy.is-photo-rank-gold {
  --elsky-passport-photo-metal-a: #9b5b08; --elsky-passport-photo-metal-b: #ffd66e; --elsky-passport-photo-metal-c: #bd7b16; --elsky-passport-photo-glow: rgba(255,214,110,.78);
}
.elsky-passport-account__composite-trophy.is-photo-rank-platinum {
  --elsky-passport-photo-metal-a: #9dbfc9; --elsky-passport-photo-metal-b: #ffffff; --elsky-passport-photo-metal-c: #a8d7e7; --elsky-passport-photo-glow: rgba(220,249,255,.86);
}
.elsky-passport-account__composite-trophy.is-photo-rank-rainbow {
  --elsky-passport-photo-metal-a: #5ef3ff; --elsky-passport-photo-metal-b: #ff78d1; --elsky-passport-photo-metal-c: #ffd365; --elsky-passport-photo-glow: rgba(255,120,209,.88);
}
.elsky-passport-account__composite-trophy.is-photo-rank-super_rainbow,
.elsky-passport-account__composite-trophy.is-photo-rank-super_rainbow_platinum {
  --elsky-passport-photo-metal-a: #ffffff; --elsky-passport-photo-metal-b: #ff8cdf; --elsky-passport-photo-metal-c: #68f5ff; --elsky-passport-photo-glow: rgba(255,255,255,.96);
}
.elsky-passport-account__composite-trophy.is-photo-rank-bronze .elsky-passport-account__composite-ribbons,
.elsky-passport-account__composite-trophy.is-photo-rank-bronze .elsky-passport-account__composite-crystals { transform: scale(.94); }
.elsky-passport-account__composite-trophy.is-photo-rank-silver .elsky-passport-account__composite-ribbons,
.elsky-passport-account__composite-trophy.is-photo-rank-silver .elsky-passport-account__composite-crystals { transform: scale(.97); }
.elsky-passport-account__composite-trophy.is-photo-rank-gold .elsky-passport-account__composite-ribbons,
.elsky-passport-account__composite-trophy.is-photo-rank-gold .elsky-passport-account__composite-crystals { transform: scale(1); }
.elsky-passport-account__composite-trophy.is-photo-rank-platinum .elsky-passport-account__composite-ribbons,
.elsky-passport-account__composite-trophy.is-photo-rank-platinum .elsky-passport-account__composite-crystals { transform: scale(1.025); }
.elsky-passport-account__composite-trophy.is-photo-rank-rainbow .elsky-passport-account__composite-ribbons,
.elsky-passport-account__composite-trophy.is-photo-rank-rainbow .elsky-passport-account__composite-crystals { transform: scale(1.045); }
.elsky-passport-account__composite-trophy.is-photo-rank-super_rainbow .elsky-passport-account__composite-ribbons,
.elsky-passport-account__composite-trophy.is-photo-rank-super_rainbow .elsky-passport-account__composite-crystals,
.elsky-passport-account__composite-trophy.is-photo-rank-super_rainbow_platinum .elsky-passport-account__composite-ribbons,
.elsky-passport-account__composite-trophy.is-photo-rank-super_rainbow_platinum .elsky-passport-account__composite-crystals { transform: scale(1.065); }
.elsky-passport-account__composite-trophy.is-review-rank-bronze {
  --elsky-passport-review-metal-a: #6a2b1c; --elsky-passport-review-metal-b: #ce7a3d; --elsky-passport-review-metal-c: #f0a75f;
  --elsky-passport-review-jewel-a: #ffd49a; --elsky-passport-review-jewel-b: #cb6f32; --elsky-passport-review-jewel-c: #692714; --elsky-passport-review-glow: rgba(206,122,61,.7);
}
.elsky-passport-account__composite-trophy.is-review-rank-silver {
  --elsky-passport-review-metal-a: #727e88; --elsky-passport-review-metal-b: #edf7ff; --elsky-passport-review-metal-c: #a9ccdc;
  --elsky-passport-review-jewel-a: #ffffff; --elsky-passport-review-jewel-b: #b9d9e8; --elsky-passport-review-jewel-c: #657682; --elsky-passport-review-glow: rgba(214,241,255,.74);
}
.elsky-passport-account__composite-trophy.is-review-rank-gold {
  --elsky-passport-review-metal-a: #9a5909; --elsky-passport-review-metal-b: #ffd66e; --elsky-passport-review-metal-c: #b9700f;
  --elsky-passport-review-jewel-a: #fff4ae; --elsky-passport-review-jewel-b: #e8a928; --elsky-passport-review-jewel-c: #8a4d06; --elsky-passport-review-glow: rgba(255,214,110,.82);
}
.elsky-passport-account__composite-trophy.is-review-rank-platinum {
  --elsky-passport-review-metal-a: #a8c7cf; --elsky-passport-review-metal-b: #ffffff; --elsky-passport-review-metal-c: #9acbe0;
  --elsky-passport-review-jewel-a: #ffffff; --elsky-passport-review-jewel-b: #bceeff; --elsky-passport-review-jewel-c: #6f9eb3; --elsky-passport-review-glow: rgba(224,250,255,.9);
}
.elsky-passport-account__composite-trophy.is-review-rank-rainbow {
  --elsky-passport-review-metal-a: #5ef3ff; --elsky-passport-review-metal-b: #ff78d1; --elsky-passport-review-metal-c: #ffd365;
  --elsky-passport-review-jewel-a: #ffffff; --elsky-passport-review-jewel-b: #ff8cdf; --elsky-passport-review-jewel-c: #68f5ff; --elsky-passport-review-glow: rgba(255,120,209,.9);
}
.elsky-passport-account__composite-trophy.is-review-rank-super_rainbow,
.elsky-passport-account__composite-trophy.is-review-rank-super_rainbow_platinum {
  --elsky-passport-review-metal-a: #ffffff; --elsky-passport-review-metal-b: #ff9ee6; --elsky-passport-review-metal-c: #7df7ff;
  --elsky-passport-review-jewel-a: #ffffff; --elsky-passport-review-jewel-b: #fff1a2; --elsky-passport-review-jewel-c: #b273ff; --elsky-passport-review-glow: rgba(255,255,255,.98);
}
.elsky-passport-account__composite-trophy.is-review-rank-bronze .elsky-passport-account__composite-review-ribbon,
.elsky-passport-account__composite-trophy.is-review-rank-bronze .elsky-passport-account__composite-filigree,
.elsky-passport-account__composite-trophy.is-review-rank-bronze .elsky-passport-account__composite-jewels { transform: scaleX(.94); }
.elsky-passport-account__composite-trophy.is-review-rank-silver .elsky-passport-account__composite-review-ribbon,
.elsky-passport-account__composite-trophy.is-review-rank-silver .elsky-passport-account__composite-filigree,
.elsky-passport-account__composite-trophy.is-review-rank-silver .elsky-passport-account__composite-jewels { transform: scaleX(.97); }
.elsky-passport-account__composite-trophy.is-review-rank-gold .elsky-passport-account__composite-review-ribbon,
.elsky-passport-account__composite-trophy.is-review-rank-gold .elsky-passport-account__composite-filigree,
.elsky-passport-account__composite-trophy.is-review-rank-gold .elsky-passport-account__composite-jewels { transform: scaleX(1); }
.elsky-passport-account__composite-trophy.is-review-rank-platinum .elsky-passport-account__composite-review-ribbon,
.elsky-passport-account__composite-trophy.is-review-rank-platinum .elsky-passport-account__composite-filigree,
.elsky-passport-account__composite-trophy.is-review-rank-platinum .elsky-passport-account__composite-jewels { transform: scaleX(1.03); }
.elsky-passport-account__composite-trophy.is-review-rank-rainbow .elsky-passport-account__composite-review-ribbon,
.elsky-passport-account__composite-trophy.is-review-rank-rainbow .elsky-passport-account__composite-filigree,
.elsky-passport-account__composite-trophy.is-review-rank-rainbow .elsky-passport-account__composite-jewels { transform: scaleX(1.05); }
.elsky-passport-account__composite-trophy.is-review-rank-super_rainbow .elsky-passport-account__composite-review-ribbon,
.elsky-passport-account__composite-trophy.is-review-rank-super_rainbow .elsky-passport-account__composite-filigree,
.elsky-passport-account__composite-trophy.is-review-rank-super_rainbow .elsky-passport-account__composite-jewels,
.elsky-passport-account__composite-trophy.is-review-rank-super_rainbow_platinum .elsky-passport-account__composite-review-ribbon,
.elsky-passport-account__composite-trophy.is-review-rank-super_rainbow_platinum .elsky-passport-account__composite-filigree,
.elsky-passport-account__composite-trophy.is-review-rank-super_rainbow_platinum .elsky-passport-account__composite-jewels { transform: scaleX(1.08); }
.elsky-passport-account__composite-trophy.is-rainbow,
.elsky-passport-account__composite-trophy.is-super_rainbow,
.elsky-passport-account__composite-trophy.is-super_rainbow_platinum { color: var(--elsky-passport-tier-metal-b); filter: drop-shadow(0 0 11px rgba(88,240,238,.64)) drop-shadow(0 10px 10px rgba(0,0,0,.48)); animation: elsky-passport-rainbow-trophy 5s linear infinite; }
.elsky-passport-account__composite-trophy.is-super_rainbow .elsky-passport-account__composite-svg,
.elsky-passport-account__composite-trophy.is-super_rainbow_platinum .elsky-passport-account__composite-svg { transform: scale(1.035); transform-origin: center; }
.elsky-passport-account__composite-ribbons,
.elsky-passport-account__composite-crystals,
.elsky-passport-account__composite-review-ribbon,
.elsky-passport-account__composite-filigree,
.elsky-passport-account__composite-jewels,
.elsky-passport-account__composite-crown,
.elsky-passport-account__composite-sparkles { opacity: 0; transition: opacity .28s ease, filter .28s ease, transform .28s ease; transform-origin: center; }
.elsky-passport-account__composite-ribbons { opacity: .16; stroke-width: .75; filter: grayscale(.88) brightness(.42) drop-shadow(0 2px 2px rgba(0,0,0,.62)); }
.elsky-passport-account__composite-ribbons path,
.elsky-passport-account__composite-crystals > *,
.elsky-passport-account__composite-review-ribbon > *,
.elsky-passport-account__composite-filigree path,
.elsky-passport-account__composite-jewels > * { opacity: 0; }
.elsky-passport-account__composite-ribbons .is-ribbon-2 { filter: brightness(1.36); }
.elsky-passport-account__composite-ribbons .is-ribbon-3 { opacity: .42; }
.elsky-passport-account__composite-crystals { stroke-width: .9; filter: drop-shadow(0 0 3px var(--elsky-passport-photo-glow)); }
.elsky-passport-account__composite-review-ribbon { opacity: .16; stroke-width: .8; filter: grayscale(.9) brightness(.42) drop-shadow(0 2px 2px rgba(0,0,0,.66)); }
.elsky-passport-account__composite-filigree { stroke-width: 1.55; filter: drop-shadow(0 0 1px rgba(245,216,145,.65)); }
.elsky-passport-account__composite-filigree .is-filigree-2 { stroke-width: 1.15; }
.elsky-passport-account__composite-filigree .is-filigree-3 { stroke-width: .95; }
.elsky-passport-account__composite-jewels { stroke-width: .7; filter: drop-shadow(0 0 2px rgba(245,216,145,.86)); }
.elsky-passport-account__composite-crown { stroke-width: 2.2; filter: drop-shadow(0 0 3px rgba(245,216,145,.86)); }
.elsky-passport-account__composite-sparkles { fill: #fff6c7; }
.elsky-passport-account__composite-trophy.is-photo-level-1 .elsky-passport-account__composite-ribbons,
.elsky-passport-account__composite-trophy.is-photo-level-2 .elsky-passport-account__composite-ribbons { opacity: .8; filter: saturate(1.12) drop-shadow(0 0 3px var(--elsky-passport-photo-glow)); }
.elsky-passport-account__composite-trophy.is-photo-level-3 .elsky-passport-account__composite-ribbons,
.elsky-passport-account__composite-trophy.is-photo-level-4 .elsky-passport-account__composite-ribbons,
.elsky-passport-account__composite-trophy.is-photo-level-5 .elsky-passport-account__composite-ribbons { opacity: .98; filter: saturate(1.35) brightness(1.08) drop-shadow(0 0 6px var(--elsky-passport-photo-glow)); }
.elsky-passport-account__composite-trophy.is-photo-level-1 .elsky-passport-account__composite-ribbons .is-ribbon-1,
.elsky-passport-account__composite-trophy.is-photo-level-2 .elsky-passport-account__composite-ribbons .is-ribbon-1,
.elsky-passport-account__composite-trophy.is-photo-level-2 .elsky-passport-account__composite-ribbons .is-ribbon-2,
.elsky-passport-account__composite-trophy.is-photo-level-3 .elsky-passport-account__composite-ribbons path,
.elsky-passport-account__composite-trophy.is-photo-level-4 .elsky-passport-account__composite-ribbons path,
.elsky-passport-account__composite-trophy.is-photo-level-5 .elsky-passport-account__composite-ribbons path { opacity: 1; }
.elsky-passport-account__composite-trophy.is-photo-level-1 .elsky-passport-account__composite-crystals .is-crystal-1,
.elsky-passport-account__composite-trophy.is-photo-level-2 .elsky-passport-account__composite-crystals .is-crystal-1,
.elsky-passport-account__composite-trophy.is-photo-level-3 .elsky-passport-account__composite-crystals .is-crystal-1,
.elsky-passport-account__composite-trophy.is-photo-level-4 .elsky-passport-account__composite-crystals .is-crystal-1,
.elsky-passport-account__composite-trophy.is-photo-level-5 .elsky-passport-account__composite-crystals .is-crystal-1 { opacity: 1; }
.elsky-passport-account__composite-trophy.is-photo-level-1 .elsky-passport-account__composite-crystals,
.elsky-passport-account__composite-trophy.is-photo-level-2 .elsky-passport-account__composite-crystals,
.elsky-passport-account__composite-trophy.is-photo-level-3 .elsky-passport-account__composite-crystals,
.elsky-passport-account__composite-trophy.is-photo-level-4 .elsky-passport-account__composite-crystals,
.elsky-passport-account__composite-trophy.is-photo-level-5 .elsky-passport-account__composite-crystals { opacity: .72; }
.elsky-passport-account__composite-trophy.is-photo-level-3 .elsky-passport-account__composite-crystals .is-crystal-2,
.elsky-passport-account__composite-trophy.is-photo-level-4 .elsky-passport-account__composite-crystals .is-crystal-2,
.elsky-passport-account__composite-trophy.is-photo-level-5 .elsky-passport-account__composite-crystals .is-crystal-2,
.elsky-passport-account__composite-trophy.is-photo-level-5 .elsky-passport-account__composite-crystals .is-crystal-3 { opacity: 1; }
.elsky-passport-account__composite-trophy.is-photo-level-4 .elsky-passport-account__composite-crystals,
.elsky-passport-account__composite-trophy.is-photo-level-5 .elsky-passport-account__composite-crystals { opacity: 1; filter: drop-shadow(0 0 5px var(--elsky-passport-photo-glow)); }
.elsky-passport-account__composite-trophy.is-review-level-1 .elsky-passport-account__composite-review-ribbon,
.elsky-passport-account__composite-trophy.is-review-level-2 .elsky-passport-account__composite-review-ribbon { opacity: .76; filter: saturate(1.05) drop-shadow(0 2px 3px var(--elsky-passport-review-glow)); }
.elsky-passport-account__composite-trophy.is-review-level-3 .elsky-passport-account__composite-review-ribbon,
.elsky-passport-account__composite-trophy.is-review-level-4 .elsky-passport-account__composite-review-ribbon,
.elsky-passport-account__composite-trophy.is-review-level-5 .elsky-passport-account__composite-review-ribbon { opacity: .98; filter: saturate(1.36) brightness(1.06) drop-shadow(0 0 6px var(--elsky-passport-review-glow)); }
.elsky-passport-account__composite-trophy.is-review-level-1 .elsky-passport-account__composite-review-ribbon .is-review-band,
.elsky-passport-account__composite-trophy.is-review-level-1 .elsky-passport-account__composite-review-ribbon .is-review-wing-left,
.elsky-passport-account__composite-trophy.is-review-level-1 .elsky-passport-account__composite-review-ribbon .is-review-wing-right,
.elsky-passport-account__composite-trophy.is-review-level-1 .elsky-passport-account__composite-review-ribbon .is-review-center,
.elsky-passport-account__composite-trophy.is-review-level-2 .elsky-passport-account__composite-review-ribbon .is-review-band,
.elsky-passport-account__composite-trophy.is-review-level-2 .elsky-passport-account__composite-review-ribbon .is-review-wing-left,
.elsky-passport-account__composite-trophy.is-review-level-2 .elsky-passport-account__composite-review-ribbon .is-review-wing-right,
.elsky-passport-account__composite-trophy.is-review-level-2 .elsky-passport-account__composite-review-ribbon .is-review-center,
.elsky-passport-account__composite-trophy.is-review-level-2 .elsky-passport-account__composite-review-ribbon .is-review-facet-left,
.elsky-passport-account__composite-trophy.is-review-level-2 .elsky-passport-account__composite-review-ribbon .is-review-facet-right,
.elsky-passport-account__composite-trophy.is-review-level-3 .elsky-passport-account__composite-review-ribbon > *,
.elsky-passport-account__composite-trophy.is-review-level-4 .elsky-passport-account__composite-review-ribbon > *,
.elsky-passport-account__composite-trophy.is-review-level-5 .elsky-passport-account__composite-review-ribbon > * { opacity: 1; }
.elsky-passport-account__composite-trophy.is-review-level-1 .elsky-passport-account__composite-filigree { opacity: .34; }
.elsky-passport-account__composite-trophy.is-review-level-2 .elsky-passport-account__composite-filigree { opacity: .58; }
.elsky-passport-account__composite-trophy.is-review-level-3 .elsky-passport-account__composite-filigree,
.elsky-passport-account__composite-trophy.is-review-level-4 .elsky-passport-account__composite-filigree,
.elsky-passport-account__composite-trophy.is-review-level-5 .elsky-passport-account__composite-filigree { opacity: .9; }
.elsky-passport-account__composite-trophy.is-review-level-1 .elsky-passport-account__composite-filigree .is-filigree-1,
.elsky-passport-account__composite-trophy.is-review-level-2 .elsky-passport-account__composite-filigree .is-filigree-1,
.elsky-passport-account__composite-trophy.is-review-level-2 .elsky-passport-account__composite-filigree .is-filigree-2,
.elsky-passport-account__composite-trophy.is-review-level-3 .elsky-passport-account__composite-filigree path,
.elsky-passport-account__composite-trophy.is-review-level-4 .elsky-passport-account__composite-filigree path,
.elsky-passport-account__composite-trophy.is-review-level-5 .elsky-passport-account__composite-filigree path { opacity: 1; }
.elsky-passport-account__composite-trophy.is-review-level-2 .elsky-passport-account__composite-jewels,
.elsky-passport-account__composite-trophy.is-review-level-3 .elsky-passport-account__composite-jewels,
.elsky-passport-account__composite-trophy.is-review-level-4 .elsky-passport-account__composite-jewels,
.elsky-passport-account__composite-trophy.is-review-level-5 .elsky-passport-account__composite-jewels { opacity: .7; }
.elsky-passport-account__composite-trophy.is-review-level-2 .elsky-passport-account__composite-jewels .is-jewel-1,
.elsky-passport-account__composite-trophy.is-review-level-3 .elsky-passport-account__composite-jewels .is-jewel-1,
.elsky-passport-account__composite-trophy.is-review-level-4 .elsky-passport-account__composite-jewels .is-jewel-1,
.elsky-passport-account__composite-trophy.is-review-level-5 .elsky-passport-account__composite-jewels .is-jewel-1,
.elsky-passport-account__composite-trophy.is-review-level-3 .elsky-passport-account__composite-jewels .is-jewel-2,
.elsky-passport-account__composite-trophy.is-review-level-4 .elsky-passport-account__composite-jewels .is-jewel-2,
.elsky-passport-account__composite-trophy.is-review-level-5 .elsky-passport-account__composite-jewels .is-jewel-2,
.elsky-passport-account__composite-trophy.is-review-level-5 .elsky-passport-account__composite-jewels .is-jewel-3 { opacity: 1; }
.elsky-passport-account__composite-trophy.is-review-level-4 .elsky-passport-account__composite-jewels,
.elsky-passport-account__composite-trophy.is-review-level-5 .elsky-passport-account__composite-jewels { opacity: 1; filter: drop-shadow(0 0 5px var(--elsky-passport-review-glow)); }
.elsky-passport-account__composite-trophy.is-review-level-4 .elsky-passport-account__composite-crown,
.elsky-passport-account__composite-trophy.is-review-level-5 .elsky-passport-account__composite-crown { opacity: .78; }
.elsky-passport-account__composite-trophy.is-photo-level-5 .elsky-passport-account__composite-sparkles,
.elsky-passport-account__composite-trophy.is-review-level-5 .elsky-passport-account__composite-sparkles { opacity: .92; animation: elsky-passport-composite-sparkle 3.6s ease-in-out infinite; }
.elsky-passport-account__composite-trophy.is-photo-rank-rainbow .elsky-passport-account__composite-ribbons,
.elsky-passport-account__composite-trophy.is-photo-rank-super_rainbow .elsky-passport-account__composite-ribbons,
.elsky-passport-account__composite-trophy.is-review-rank-rainbow .elsky-passport-account__composite-filigree,
.elsky-passport-account__composite-trophy.is-review-rank-super_rainbow .elsky-passport-account__composite-filigree { filter: hue-rotate(32deg) saturate(1.5) brightness(1.18) drop-shadow(0 0 7px currentColor); }
.elsky-passport-account__axis-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); min-width: 0; gap: clamp(7px, 1.4vw, 13px); }
.elsky-passport-account__axis {
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  min-width: 0;
  align-items: center;
  gap: 8px;
  padding: clamp(9px, 1.5vw, 13px);
  border: 1px solid rgba(88,240,238,.2);
  border-radius: 11px;
  background: rgba(255,255,255,.035);
}
.elsky-passport-account__axis.is-visit { border-color: rgba(245,216,145,.3); }
.elsky-passport-account__axis.is-photo { border-color: rgba(88,240,238,.32); }
.elsky-passport-account__axis.is-review { border-color: rgba(245,216,145,.34); }
.elsky-passport-account__axis-main { display: block; min-width: 0; min-height: 76px; }
.elsky-passport-account__axis-current { min-width: 0; }
.elsky-passport-account__axis-preview { width: 100%; max-width: 92px; min-width: 0; }
.elsky-passport-account__axis-preview .elsky-passport-account__composite-svg { display: block; width: 100%; height: auto; }
.elsky-passport-account__axis-preview.is-axis-visit .elsky-passport-account__composite-ribbons,
.elsky-passport-account__axis-preview.is-axis-visit .elsky-passport-account__composite-crystals,
.elsky-passport-account__axis-preview.is-axis-visit .elsky-passport-account__composite-review-ribbon,
.elsky-passport-account__axis-preview.is-axis-visit .elsky-passport-account__composite-filigree,
.elsky-passport-account__axis-preview.is-axis-visit .elsky-passport-account__composite-jewels,
.elsky-passport-account__axis-preview.is-axis-visit .elsky-passport-account__composite-crown,
.elsky-passport-account__axis-preview.is-axis-visit .elsky-passport-account__composite-sparkles { display: none; }
.elsky-passport-account__axis-preview.is-axis-visit.is-none .elsky-passport-account__composite-rim,
.elsky-passport-account__axis-preview.is-axis-visit.is-none .elsky-passport-account__composite-bowl,
.elsky-passport-account__axis-preview.is-axis-visit.is-none .elsky-passport-account__composite-depth,
.elsky-passport-account__axis-preview.is-axis-visit.is-none .elsky-passport-account__composite-stem,
.elsky-passport-account__axis-preview.is-axis-visit.is-none .elsky-passport-account__composite-base-shine,
.elsky-passport-account__axis-preview.is-axis-visit.is-none .elsky-passport-account__composite-cup-shine { opacity: 0; }
.elsky-passport-account__axis-preview.is-axis-photo { --elsky-passport-tier-metal-a: #14262d; --elsky-passport-tier-metal-b: #344951; --elsky-passport-tier-metal-c: #071216; }
.elsky-passport-account__axis-preview.is-axis-photo .elsky-passport-account__composite-start-seal,
.elsky-passport-account__axis-preview.is-axis-photo .elsky-passport-account__composite-review-ribbon,
.elsky-passport-account__axis-preview.is-axis-photo .elsky-passport-account__composite-filigree,
.elsky-passport-account__axis-preview.is-axis-photo .elsky-passport-account__composite-jewels,
.elsky-passport-account__axis-preview.is-axis-photo .elsky-passport-account__composite-crown,
.elsky-passport-account__axis-preview.is-axis-photo .elsky-passport-account__composite-sparkles { display: none; }
.elsky-passport-account__axis-preview.is-axis-photo.is-photo-level-0 .elsky-passport-account__composite-ribbons { opacity: .26; }
.elsky-passport-account__axis-preview.is-axis-photo.is-photo-level-0 .elsky-passport-account__composite-ribbons .is-ribbon-1 { opacity: .5; }
.elsky-passport-account__axis-preview.is-axis-review { --elsky-passport-tier-metal-a: #151d21; --elsky-passport-tier-metal-b: #344047; --elsky-passport-tier-metal-c: #070c0f; }
.elsky-passport-account__axis-preview.is-axis-review .elsky-passport-account__composite-start-seal,
.elsky-passport-account__axis-preview.is-axis-review .elsky-passport-account__composite-ribbons,
.elsky-passport-account__axis-preview.is-axis-review .elsky-passport-account__composite-crystals,
.elsky-passport-account__axis-preview.is-axis-review .elsky-passport-account__composite-crown { display: none; }
.elsky-passport-account__axis-preview.is-axis-review .elsky-passport-account__composite-rim,
.elsky-passport-account__axis-preview.is-axis-review .elsky-passport-account__composite-bowl,
.elsky-passport-account__axis-preview.is-axis-review .elsky-passport-account__composite-depth,
.elsky-passport-account__axis-preview.is-axis-review .elsky-passport-account__composite-cup-shine { opacity: .12; }
.elsky-passport-account__axis-preview.is-axis-review.is-review-level-0 .elsky-passport-account__composite-review-ribbon { opacity: .26; }
.elsky-passport-account__axis-preview.is-axis-review.is-review-level-0 .elsky-passport-account__composite-review-ribbon .is-review-band,
.elsky-passport-account__axis-preview.is-axis-review.is-review-level-0 .elsky-passport-account__composite-review-ribbon .is-review-center { opacity: .48; }
.elsky-passport-account__axis h3 { margin: 0 0 4px; color: #effafa; font-size: clamp(.7rem, 1.1vw, .84rem); line-height: 1.25; }
.elsky-passport-account__axis h3 b { display: inline-block; margin-left: 3px; padding: 1px 5px; border: 1px solid currentColor; border-radius: 999px; color: #f5d891; font-size: .72em; font-weight: 950; line-height: 1.25; white-space: nowrap; }
.elsky-passport-account__axis strong,
.elsky-passport-account__axis span { display: block; min-width: 0; overflow-wrap: anywhere; }
.elsky-passport-account__axis .elsky-passport-account__axis-rank-headings,
.elsky-passport-account__axis .elsky-passport-account__axis-transition { display: grid; }
.elsky-passport-account__axis .elsky-passport-account__axis-transition-step { display: grid; }
.elsky-passport-account__axis strong { color: #f5d891; font-size: clamp(.68rem, 1vw, .8rem); line-height: 1.35; }
.elsky-passport-account__axis-current > span { margin-top: 2px; color: rgba(239,250,250,.66); font-size: clamp(.6rem, .88vw, .72rem); line-height: 1.35; }
.elsky-passport-account__axis-next {
  --elsky-axis-transition-icon-width: clamp(60px, 5.2vw, 74px);
  --elsky-axis-transition-icon-height: clamp(50px, 4.33vw, 62px);
  display: grid;
  grid-template-rows: auto auto;
  align-content: end;
  gap: 5px;
  min-width: 0;
  padding-top: 7px;
  border-top: 1px solid rgba(239,250,250,.12);
}
.elsky-passport-account__axis-rank-headings {
  grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  align-items: end;
  gap: 8px;
}
.elsky-passport-account__axis-rank-headings > span,
.elsky-passport-account__axis-rank-headings > strong {
  color: rgba(239,250,250,.72);
  font-size: clamp(.54rem, .72vw, .64rem);
  font-weight: 900;
  line-height: 1.2;
  overflow-wrap: normal;
}
.elsky-passport-account__axis-rank-headings > strong { color: #effafa; text-align: right; }
.elsky-passport-account__axis-transition {
  grid-template-columns: var(--elsky-axis-transition-icon-width) minmax(18px,1fr) var(--elsky-axis-transition-icon-width);
  align-items: start;
  justify-content: stretch;
  min-width: 0;
}
.elsky-passport-account__axis-transition-step {
  grid-template-rows: var(--elsky-axis-transition-icon-height) auto;
  min-width: 0;
  justify-items: center;
  gap: 2px;
}
.elsky-passport-account__axis-transition-step.is-next { opacity: .42; filter: grayscale(.28) brightness(.8); }
.elsky-passport-account__axis-transition-icon { width: var(--elsky-axis-transition-icon-width); height: var(--elsky-axis-transition-icon-height); max-width: 74px; filter: none; }
.elsky-passport-account__axis-transition-icon .elsky-passport-account__composite-svg { width: 100%; height: 100%; object-fit: contain; }
.elsky-passport-account__axis-transition-step small { max-width: 100%; color: rgba(239,250,250,.72); font-size: clamp(.48rem, .62vw, .58rem); font-weight: 850; line-height: 1.15; text-align: center; white-space: normal; }
.elsky-passport-account__axis-transition-line {
  position: relative;
  display: block;
  height: var(--elsky-axis-transition-icon-height);
  min-width: 0;
}
.elsky-passport-account__axis-transition-line > small {
  position: absolute;
  right: 50%;
  bottom: calc(50% + 6px);
  left: 50%;
  width: max-content;
  max-width: 86px;
  transform: translateX(-50%);
  color: rgba(239,250,250,.84);
  font-size: clamp(.46rem, .6vw, .56rem);
  font-weight: 900;
  line-height: 1.1;
  text-align: center;
  white-space: nowrap;
}
.elsky-passport-account__axis-transition-track {
  position: absolute;
  top: 50%;
  right: 0;
  left: 0;
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 0;
  height: 12px;
  transform: translateY(-50%);
}
.elsky-passport-account__axis-transition-track i { display: block; height: 3px; }
.elsky-passport-account__axis-transition-track i.is-active { background: #f5d891; box-shadow: 0 0 5px rgba(245,216,145,.52); }
.elsky-passport-account__axis.is-photo .elsky-passport-account__axis-transition-track i.is-active { background: #58f0ee; box-shadow: 0 0 5px rgba(88,240,238,.52); }
.elsky-passport-account__axis.is-review .elsky-passport-account__axis-transition-track i.is-active { background: #ff9b6c; box-shadow: 0 0 5px rgba(255,155,108,.48); }
.elsky-passport-account__axis-transition-track i.is-disabled { background: rgba(239,250,250,.18); }
.elsky-passport-account__axis-transition-track svg {
  position: absolute;
  top: 50%;
  right: -5px;
  width: 12px;
  height: 12px;
  transform: translateY(-50%);
  fill: none;
  stroke: rgba(239,250,250,.5);
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.elsky-passport-account__axis-next.is-complete { grid-template-rows: auto; }
.elsky-passport-account__axis-next.is-complete .elsky-passport-account__axis-transition { display: none; }
.elsky-passport-account__axis-next.is-complete .elsky-passport-account__axis-rank-headings > strong { color: #f5d891; }

@keyframes elsky-passport-composite-sparkle {
  0%, 64%, 100% { opacity: .34; transform: scale(.88); }
  72% { opacity: 1; transform: scale(1.08); }
  82% { opacity: .54; transform: scale(.94); }
}

.elsky-passport-account__future { color: rgba(239, 250, 250, .55); font-size: .75rem; }
.elsky-passport-account__utility {
  display: flex;
  width: 100%;
  margin: 0 0 10px;
  justify-content: flex-end;
}
.elsky-passport-account__utility .elsky-passport-account__actions {
  max-width: 100%;
  align-items: center;
  justify-content: flex-end;
}
.elsky-passport-account__utility .elsky-passport-account__actions button { width: auto; white-space: nowrap; }
.elsky-passport-account__utility .elsky-passport-account__delete-status { text-align: right; }
.elsky-passport-account__utility .elsky-passport-account__delete-status:empty { display: none; }
.elsky-passport-account__actions { display: flex; flex-wrap: wrap; gap: 8px; }
.elsky-passport-account__actions [data-elsky-account-delete],
.elsky-passport-delete-dialog [data-elsky-account-delete-confirm] {
  border-color: #ef7d86;
  background: #a91f2c;
  color: #fff;
  font-weight: 900;
}
.elsky-passport-account__actions [data-elsky-account-delete]:hover,
.elsky-passport-delete-dialog [data-elsky-account-delete-confirm]:hover { background: #c32b39; }
.elsky-passport-account__actions [data-elsky-account-delete]:focus-visible,
.elsky-passport-delete-dialog button:focus-visible { outline: 3px solid #58f0ee; outline-offset: 2px; }
.elsky-passport-account__actions [data-elsky-account-delete]:disabled,
.elsky-passport-delete-dialog [data-elsky-account-delete-confirm]:disabled { opacity: .68; cursor: wait; }
.elsky-passport-delete-dialog__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
}
.elsky-passport-delete-dialog__actions button {
  width: auto;
  max-width: 100%;
  padding: 8px 13px;
  color: #effafa;
  background: rgba(4, 21, 28, .92);
  font-weight: 850;
  cursor: pointer;
}
.elsky-passport-account__delete-status { flex: 0 0 100%; min-height: 1.4em; margin: 0; color: #58f0ee; font-size: .78rem; font-weight: 800; white-space: pre-line; }
.elsky-passport-account__delete-status.is-error { color: #ffb4b4; }

.elsky-passport-account__tabs {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 6px;
  margin: 0 0 14px;
  padding: 6px;
  border: 1px solid rgba(88,240,238,.32);
  border-radius: 13px;
  background: rgba(3,18,24,.88);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
}
.elsky-passport-account__tabs button {
  display: grid;
  grid-template-columns: 18px minmax(0, auto) auto;
  min-width: 0;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 7px 9px;
  border: 1px solid transparent;
  border-radius: 9px;
  color: rgba(239,250,250,.72);
  background: transparent;
  font-size: clamp(.65rem, .92vw, .78rem);
  font-weight: 880;
  line-height: 1.25;
  cursor: pointer;
}
.elsky-passport-account__tabs button svg { display: block; width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.elsky-passport-account__tabs button span { min-width: 0; overflow-wrap: normal; }
.elsky-passport-account__tab-label-short { display: none; }
.elsky-passport-account__tabs button b { display: grid; min-width: 1.55em; min-height: 1.55em; padding: 0 .3em; place-items: center; border-radius: 999px; color: #031418; background: #f5d891; font-size: .66rem; line-height: 1; }
.elsky-passport-account__tabs button[aria-selected="true"] { border-color: rgba(88,240,238,.68); color: #58f0ee; background: linear-gradient(145deg, rgba(88,240,238,.16), rgba(245,216,145,.07)); box-shadow: inset 0 -2px 0 #58f0ee; }
.elsky-passport-account__tabs button:hover { color: #effafa; background: rgba(88,240,238,.08); }
.elsky-passport-account__tabs button:focus-visible { outline: 3px solid #f5d891; outline-offset: 2px; }

.elsky-passport-account__tab-panel { min-width: 0; }
.elsky-passport-account__planner,
.elsky-passport-account__offers {
  padding: clamp(13px, 2.2vw, 21px);
  border: 1px solid rgba(88,240,238,.3);
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(6,28,36,.96), rgba(3,18,24,.94));
}
.elsky-passport-account__planner > header,
.elsky-passport-account__offers > header { margin: 0 0 13px; padding: 0 0 10px; border-bottom: 1px solid rgba(88,240,238,.2); }
.elsky-passport-account__planner > header h2,
.elsky-passport-account__offers > header h2 { margin: 0; font-size: 1.08rem; }
.elsky-passport-account__offers > header p { max-width: 780px; margin: 5px 0 0; color: rgba(239,250,250,.66); font-size: .76rem; line-height: 1.6; }

.elsky-passport-account__planner-table-wrap { max-width: 100%; overflow: visible; }
.elsky-passport-account__planner table { box-sizing: border-box; width: 100%; table-layout: fixed; border-spacing: 0; border-collapse: separate; border: 1px solid rgba(88,240,238,.28); border-radius: 10px; overflow: hidden; color: #effafa; font-size: clamp(.68rem, .92vw, .78rem); }
.elsky-passport-account__planner th,
.elsky-passport-account__planner td { box-sizing: border-box; min-width: 0; padding: 9px 10px; vertical-align: middle; border-right: 1px solid rgba(88,240,238,.16); border-bottom: 1px solid rgba(88,240,238,.16); overflow-wrap: anywhere; }
.elsky-passport-account__planner th { color: #f5d891; background: rgba(4,21,28,.82); font-size: .68rem; font-weight: 900; text-align: left; }
.elsky-passport-account__planner th:nth-child(1) { width: 19%; }
.elsky-passport-account__planner th:nth-child(2) { width: 11%; }
.elsky-passport-account__planner th:nth-child(3) { width: 25%; }
.elsky-passport-account__planner th:nth-child(4) { width: 13%; }
.elsky-passport-account__planner th:nth-child(5) { width: 14%; }
.elsky-passport-account__planner th:nth-child(6) { width: 11%; }
.elsky-passport-account__planner th:nth-child(7) { width: 7%; }
.elsky-passport-account__planner[data-elsky-account-planner="visited"] th:nth-child(1) { width: 17%; }
.elsky-passport-account__planner[data-elsky-account-planner="visited"] th:nth-child(2) { width: 9%; }
.elsky-passport-account__planner[data-elsky-account-planner="visited"] th:nth-child(3) { width: 22%; }
.elsky-passport-account__planner[data-elsky-account-planner="visited"] th:nth-child(4) { width: 12%; }
.elsky-passport-account__planner[data-elsky-account-planner="visited"] th:nth-child(5) { width: 10%; }
.elsky-passport-account__planner[data-elsky-account-planner="visited"] th:nth-child(6) { width: 13%; }
.elsky-passport-account__planner[data-elsky-account-planner="visited"] th:nth-child(7) { width: 10%; }
.elsky-passport-account__planner[data-elsky-account-planner="visited"] th:nth-child(8) { width: 7%; }
.elsky-passport-account__planner th button {
  display: inline-flex;
  width: 100%;
  min-width: 0;
  min-height: 30px;
  align-items: center;
  justify-content: space-between;
  gap: 4px;
  padding: 2px 0;
  border: 0;
  border-radius: 5px;
  color: inherit;
  background: transparent;
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.elsky-passport-account__planner th button span { min-width: 0; overflow-wrap: anywhere; }
.elsky-passport-account__planner th button svg { flex: 0 0 14px; width: 14px; height: 14px; fill: none; stroke: rgba(239,250,250,.46); stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.elsky-passport-account__planner th.is-sort-active { color: #58f0ee; background: rgba(88,240,238,.11); }
.elsky-passport-account__planner th[aria-sort="ascending"] button svg .is-down,
.elsky-passport-account__planner th[aria-sort="descending"] button svg .is-up { opacity: .16; }
.elsky-passport-account__planner th[aria-sort="ascending"] button svg .is-up,
.elsky-passport-account__planner th[aria-sort="descending"] button svg .is-down { stroke: #58f0ee; stroke-width: 2.2; }
.elsky-passport-account__planner th button:hover { color: #effafa; }
.elsky-passport-account__planner th button:focus-visible { outline: 2px solid #58f0ee; outline-offset: 2px; }
.elsky-passport-account__planner tr:last-child td { border-bottom: 0; }
.elsky-passport-account__planner th:last-child,
.elsky-passport-account__planner td:last-child { border-right: 0; text-align: center; }
.elsky-passport-account__planner tbody tr { background: rgba(255,255,255,.025); }
.elsky-passport-account__planner tbody tr:nth-child(even) { background: rgba(88,240,238,.025); }
.elsky-passport-account__planner td a { color: #58f0ee; font-weight: 850; }
.elsky-passport-account__planner td.is-rating { color: #f5d891; white-space: nowrap; }
.elsky-passport-account__comment-preview { display: -webkit-box; margin-top: 5px; overflow: hidden; color: rgba(239,250,250,.72); font-size: .7rem; line-height: 1.45; white-space: pre-line; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.elsky-passport-account__photo-status { display: inline-flex; max-width: 100%; align-items: center; gap: 4px; margin-top: 6px; padding: 3px 6px; border: 1px solid rgba(88,240,238,.25); border-radius: 999px; color: rgba(239,250,250,.66); background: rgba(2,18,24,.62); font-size: .64rem; font-weight: 850; line-height: 1.2; }
.elsky-passport-account__photo-status svg { flex: 0 0 auto; width: 14px; height: 14px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.elsky-passport-account__photo-status.is-check { color: #58f0ee; }
.elsky-passport-account__photo-status.is-double { color: #f5d891; }
.elsky-passport-account__photo-status.is-perfect { color: #ff9fb9; border-color: rgba(255,159,185,.45); }
.elsky-passport-account__photo-status-checks { color: currentColor; font-size: .72rem; font-weight: 950; letter-spacing: -.12em; white-space: nowrap; }
.elsky-passport-account__photo-status-count { white-space: nowrap; }
.elsky-passport-account__planner td.is-photo .elsky-passport-account__photo-status {
  width: max-content;
  max-width: 100%;
  margin-top: 0;
  justify-self: start;
}
.elsky-passport-account__planner td button { min-height: 34px; padding: 6px 9px; white-space: nowrap; }
.elsky-passport-account__planner-empty { margin: 12px 0 0; color: rgba(239,250,250,.58); text-align: center; }

.elsky-passport-planner-dialog {
  box-sizing: border-box;
  width: min(100% - 24px, 720px);
  max-height: min(92vh, 850px);
  margin: auto;
  padding: 0;
  overflow-y: auto;
  border: 1px solid rgba(88,240,238,.54);
  border-radius: 16px;
  color: #effafa;
  background: #061a21;
  box-shadow: 0 24px 70px rgba(0,0,0,.65);
}

.elsky-passport-share-dialog {
  box-sizing: border-box;
  width: min(calc(100% - 20px), 620px);
  max-height: calc(100dvh - 20px);
  margin: auto;
  padding: 0;
  overflow: hidden;
  border: 1px solid rgba(88,240,238,.58);
  border-radius: 18px;
  color: #effafa;
  background: #041820;
  box-shadow: 0 24px 72px rgba(0,0,0,.62);
}
.elsky-passport-share-dialog::backdrop { background: rgba(0,8,12,.78); backdrop-filter: blur(4px); }
.elsky-passport-share-dialog__panel { position: relative; display: grid; max-height: calc(100dvh - 22px); justify-items: center; gap: clamp(5px, 1dvh, 9px); padding: clamp(10px, 1.8dvh, 17px) clamp(14px, 3vw, 24px); overflow: hidden; text-align: center; }
.elsky-passport-share-dialog__panel > h2 { margin: 0; color: #f5d891; font-size: clamp(1.1rem, 3.6vw, 1.5rem); }
.elsky-passport-share-dialog__panel > p:not(.elsky-passport-account__section-kicker) { max-width: 520px; margin: 0; color: rgba(239,250,250,.76); font-size: clamp(.72rem, 1.5dvh, .9rem); line-height: 1.35; }
.elsky-passport-share-dialog__preview { position: relative; display: grid; width: min(100%, 320px, calc((100dvh - 330px) * .5625)); min-width: 0; aspect-ratio: 9 / 16; place-items: center; overflow: hidden; border: 1px solid rgba(245,216,145,.48); border-radius: 14px; background: radial-gradient(circle, rgba(88,240,238,.1), rgba(2,13,18,.92)); }
.elsky-passport-share-dialog__preview img { display: block; width: 100%; height: 100%; object-fit: contain; }
.elsky-passport-share-dialog__spinner { display: none; width: 28px; height: 28px; border: 3px solid rgba(239,250,250,.22); border-top-color: #58f0ee; border-radius: 50%; animation: elsky-passport-send-spin .8s linear infinite; }
.elsky-passport-share-dialog__panel.is-generating .elsky-passport-share-dialog__spinner { display: block; }
.elsky-passport-share-dialog__status { min-height: 1.2em; color: #58f0ee !important; font-size: .76rem; font-weight: 850; line-height: 1.2; }
.elsky-passport-share-dialog__status.is-error { color: #ffb4b4 !important; }
.elsky-passport-share-dialog__actions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); width: min(100%,360px); gap: 9px; }
.elsky-passport-share-dialog__actions button { display: inline-flex; min-width: 0; min-height: 42px; align-items: center; justify-content: center; gap: 7px; padding: 8px 13px; color: #03171f; font-weight: 900; line-height: 1.15; white-space: nowrap; }
.elsky-passport-share-dialog__actions [data-elsky-passport-share-native] { border-color: #ffd76b; color: #03171f; background: linear-gradient(135deg,#ffe893,#f4bd38); box-shadow: 0 7px 18px rgba(245,190,55,.2); }
.elsky-passport-share-dialog__actions [data-elsky-passport-share-native]:hover:not(:disabled),
.elsky-passport-share-dialog__actions [data-elsky-passport-share-native]:focus-visible:not(:disabled) { color: #020c10; background: linear-gradient(135deg,#fff1aa,#ffd35f); }
.elsky-passport-share-dialog__actions [data-elsky-passport-share-save] { border-color: #58f0ee; color: #03171f; background: #58f0ee; }
.elsky-passport-share-dialog__share-icon { width: 18px; height: 18px; flex: 0 0 18px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.elsky-passport-share-dialog__actions button:focus-visible { outline: 3px solid #f5d891; outline-offset: 3px; }
@media (max-width: 767px) {
  .elsky-passport-share-dialog__preview { width: min(100%, 270px, calc((100dvh - 330px) * .5625)); }
}
.elsky-passport-planner-dialog::backdrop { background: rgba(1,10,14,.76); backdrop-filter: blur(5px); }
.elsky-passport-planner-dialog > form { position: relative; display: grid; gap: 11px; padding: clamp(18px, 3vw, 30px); }
.elsky-passport-planner-dialog h2 { margin: 0; color: #58f0ee; font-size: clamp(1.05rem, 2.4vw, 1.35rem); }
.elsky-passport-planner-dialog__venue { margin: -5px 0 3px; color: #f5d891; font-weight: 850; }
.elsky-passport-planner-dialog__close { z-index: 3; }
.elsky-passport-account .elsky-passport-save-dialog__close { width: 34px; height: 34px; min-width: 34px; min-height: 34px; padding: 0; border-radius: 50%; line-height: 1; }
.elsky-passport-planner-dialog__fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 12px; }
.elsky-passport-planner-dialog__fields > label:first-child,
.elsky-passport-planner-dialog__fields > label:nth-child(2) { grid-column: 1 / -1; }
.elsky-passport-planner-dialog__money { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; }
.elsky-passport-planner-dialog__amount-control { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: stretch; margin-top: 4px; }
.elsky-passport-planner-dialog__currency-affix { display: inline-grid; min-width: 54px; place-items: center; border: 1px solid rgba(88,240,238,.46); border-right: 0; border-radius: 8px 0 0 8px; color: #03171f; background: #58f0ee; font-size: .76rem; font-weight: 950; letter-spacing: .04em; }
.elsky-passport-planner-dialog__amount-control select { min-width: 0; margin: 0; border-radius: 0 8px 8px 0; }
.elsky-passport-planner-dialog__legacy-money { margin: 5px 0 0; color: #f5d891; font-size: .68rem; line-height: 1.45; }
.elsky-passport-planner-dialog__date { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: end; gap: 7px; }
.elsky-passport-planner-dialog__date label { min-width: 0; }
.elsky-passport-planner-dialog__date [data-elsky-planner-date-clear] { min-height: 34px; padding: 5px 8px; border-color: rgba(88,240,238,.4); color: #58f0ee; background: rgba(4,21,28,.86); font-size: .66rem; font-weight: 850; white-space: nowrap; }
.elsky-passport-planner-dialog__date [data-elsky-planner-date-clear]:focus-visible { outline: 3px solid #f5d891; outline-offset: 2px; }
.elsky-passport-planner-dialog input,
.elsky-passport-planner-dialog select { box-sizing: border-box; width: 100%; min-width: 0; }
.elsky-passport-planner-dialog details { padding: 8px; border: 1px solid rgba(88,240,238,.24); border-radius: 10px; background: rgba(255,255,255,.025); }
.elsky-passport-planner-dialog summary { color: #58f0ee; font-size: .76rem; font-weight: 880; cursor: pointer; }
.elsky-passport-planner-dialog__detail-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-top: 8px; }
.elsky-passport-account__rating { min-width: 0; margin: 0; padding: 8px; border: 1px solid rgba(88,240,238,.2); border-radius: 9px; }
.elsky-passport-account__rating legend { padding: 0 4px; color: #f5d891; font-size: .84rem; font-weight: 900; line-height: 1.3; }
.elsky-passport-account__stars { display: flex; flex-wrap: nowrap; align-items: center; gap: 4px; }
.elsky-passport-account__stars label { position: relative; display: inline-flex; min-width: 38px; min-height: 38px; align-items: center; justify-content: center; gap: 0; border-radius: 7px; color: rgba(239,250,250,.42); cursor: pointer; transition: color .16s ease, background .16s ease, transform .16s ease; }
.elsky-passport-account__stars label.is-clear { flex: 0 1 auto; min-width: 46px; min-height: 38px; justify-content: center; padding: 0 4px; color: rgba(239,250,250,.72); font-size: .66rem; font-weight: 800; white-space: nowrap; }
.elsky-passport-account__stars label.is-star svg { width: 24px; height: 24px; overflow: visible; filter: drop-shadow(0 2px 4px rgba(0,0,0,.28)); }
.elsky-passport-account__stars label.is-star path { fill: transparent; stroke: currentColor; stroke-width: 1.55; stroke-linejoin: round; }
.elsky-passport-account__stars label.is-star.is-filled { color: #f5c94f; background: rgba(245,201,79,.1); }
.elsky-passport-account__stars label.is-star.is-filled path { fill: currentColor; stroke: #ffe9a5; stroke-width: 1.1; }
.elsky-passport-account__stars label.is-star:hover { transform: translateY(-1px); }
.elsky-passport-account__stars input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.elsky-passport-account__stars label:has(input:checked) { box-shadow: inset 0 0 0 1px rgba(245,216,145,.54); }
.elsky-passport-account__stars label:has(input:focus-visible) { outline: 3px solid #58f0ee; outline-offset: 1px; }
.elsky-passport-account__rating-current { display: block; min-height: 1.3em; margin-top: 3px; color: #effafa; font-size: .82rem; font-weight: 850; text-align: right; }
.elsky-passport-planner-dialog__rating-help { margin: 0; color: rgba(239,250,250,.63); font-size: .72rem; }
.elsky-passport-planner-dialog__actions { display: flex; justify-content: flex-end; gap: 8px; }
.elsky-passport-planner-dialog__actions button:first-child { color: #effafa; background: transparent; }
.elsky-passport-planner-dialog [data-elsky-planner-status] { min-height: 1.4em; margin: 0; color: #58f0ee; font-size: .76rem; font-weight: 850; text-align: right; }
.elsky-passport-planner-dialog [data-elsky-planner-status].is-error { color: #ffb4b4; }
.elsky-passport-planner-dialog__comment { display: grid; gap: 5px; }
.elsky-passport-planner-dialog__comment[hidden] { display: none; }
.elsky-passport-planner-dialog__comment > span { color: #f5d891; font-size: .8rem; font-weight: 850; }
.elsky-passport-planner-dialog__comment textarea { box-sizing: border-box; width: 100%; min-height: 72px; resize: vertical; white-space: pre-wrap; }
.elsky-passport-planner-dialog__comment small { color: rgba(239,250,250,.62); font-size: .68rem; line-height: 1.45; }
.elsky-passport-planner-dialog__ugc { display: grid; gap: 7px; padding: 9px; border: 1px solid rgba(88,240,238,.24); border-radius: 10px; background: rgba(2,18,24,.66); }
.elsky-passport-planner-dialog__ugc[hidden] { display: none; }
.elsky-passport-planner-dialog__ugc h3 { margin: 0; color: #f5d891; font-size: .86rem; }
.elsky-passport-planner-dialog__ugc-heading { display: flex; min-width: 0; align-items: center; gap: 9px; }
.elsky-passport-planner-dialog__ugc-heading h3 { flex: 0 1 auto; }
.elsky-passport-planner-dialog__ugc-notice { margin: 0; color: rgba(239,250,250,.76); font-size: .7rem; line-height: 1.5; }
.elsky-passport-planner-dialog__ugc-tiles { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
.elsky-passport-planner-dialog__ugc-tile { position: relative; min-width: 0; aspect-ratio: 4 / 3; overflow: visible; border: 1px dashed rgba(88,240,238,.48); border-radius: 9px; background: rgba(255,255,255,.025); }
.elsky-passport-planner-dialog__ugc-tile.has-photo { overflow: visible; border-style: solid; }
.elsky-passport-planner-dialog__ugc-tile img { display: block; width: 100%; height: 100%; border-radius: 8px; object-fit: cover; }
.elsky-passport-account .elsky-passport-planner-dialog__ugc-visibility { position: relative; display: inline-flex; min-height: 44px; flex-wrap: nowrap; align-items: center; gap: 6px; padding: 3px 5px; color: #effafa; font-size: .65rem; font-weight: 900; white-space: nowrap; cursor: pointer; }
.elsky-passport-planner-dialog__ugc-visibility input { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; }
.elsky-passport-planner-dialog__ugc-switch { position: relative; display: block; flex: 0 0 auto; width: 38px; height: 22px; border: 1px solid rgba(239,250,250,.26); border-radius: 999px; background: #26363c; box-shadow: inset 0 1px 3px rgba(0,0,0,.5); transition: background-color .16s ease, border-color .16s ease; }
.elsky-passport-planner-dialog__ugc-switch i { position: absolute; top: 3px; left: 3px; width: 14px; height: 14px; border-radius: 50%; background: #d7e1e3; box-shadow: 0 1px 3px rgba(0,0,0,.48); transition: transform .16s ease, background-color .16s ease; }
.elsky-passport-planner-dialog__ugc-visibility input:checked + .elsky-passport-planner-dialog__ugc-switch { border-color: #58f0ee; background: #178f82; }
.elsky-passport-planner-dialog__ugc-visibility input:checked + .elsky-passport-planner-dialog__ugc-switch i { transform: translateX(16px); background: #efffff; }
.elsky-passport-planner-dialog__ugc-visibility input:focus-visible + .elsky-passport-planner-dialog__ugc-switch { outline: 3px solid #f5d891; outline-offset: 3px; }
.elsky-passport-planner-dialog__ugc-visibility input:disabled + .elsky-passport-planner-dialog__ugc-switch { opacity: .58; }
.elsky-passport-planner-dialog__ugc-add { position: relative; display: grid; width: 100%; height: 100%; min-height: 70px; place-content: center; justify-items: center; gap: 4px; padding: 7px; color: #58f0ee; font-size: .7rem; font-weight: 850; text-align: center; cursor: pointer; }
.elsky-passport-planner-dialog__ugc-add > span[aria-hidden] { font-size: 1.35rem; line-height: 1; }
.elsky-passport-planner-dialog__ugc-add input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
.elsky-passport-planner-dialog__ugc-add:focus-within { outline: 3px solid rgba(245,216,145,.78); outline-offset: 2px; }
.elsky-passport-account .elsky-passport-planner-dialog__ugc-remove { position: absolute; z-index: 2; top: -7px; right: -7px; display: grid; width: 30px; height: 30px; min-width: 30px; min-height: 30px; place-items: center; padding: 0; border: 2px solid #fff; border-radius: 50%; color: #fff; background: #c92f3c; box-shadow: rgba(0,0,0,.42) 0 4px 12px; line-height: 1; }
.elsky-passport-account .elsky-passport-planner-dialog__ugc-remove:hover { color: #fff; background: #e33f4c; }
.elsky-passport-account .elsky-passport-planner-dialog__ugc-remove:focus-visible { outline: 3px solid #f5d891; outline-offset: 2px; }
.elsky-passport-planner-dialog__ugc-remove .elsky-passport-close-mark { width: 13px; height: 13px; }
.elsky-passport-planner-dialog [data-elsky-planner-ugc-status] { min-height: 1.4em; margin: 0; color: #58f0ee; font-size: .72rem; font-weight: 850; }
.elsky-passport-planner-dialog [data-elsky-planner-ugc-status].is-error { color: #ffb4b4; }
.elsky-passport-planner-dialog__ugc[aria-busy="true"] [data-elsky-planner-ugc-status]::before { display: inline-block; width: 12px; height: 12px; margin-right: 6px; border: 2px solid rgba(88,240,238,.3); border-top-color: #58f0ee; border-radius: 50%; content: ""; vertical-align: -2px; animation: elsky-passport-spin .7s linear infinite; }

.elsky-passport-account__exclusive { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 13px; margin: 0 0 15px; padding: 15px; border: 1px solid rgba(245,216,145,.48); border-radius: 12px; background: linear-gradient(120deg, rgba(245,216,145,.12), rgba(88,240,238,.045)); }
.elsky-passport-account__exclusive > span { align-self: start; padding: 4px 7px; border: 1px solid rgba(245,216,145,.6); border-radius: 6px; color: #f5d891; font-size: .62rem; font-weight: 950; letter-spacing: .12em; }
.elsky-passport-account__exclusive h3,
.elsky-passport-account__offer-section h3 { margin: 0; color: #f5d891; font-size: .9rem; }
.elsky-passport-account__exclusive p { margin: 4px 0 0; color: rgba(239,250,250,.68); font-size: .74rem; line-height: 1.6; }
.elsky-passport-account__offer-section { margin-top: 15px; padding-top: 13px; border-top: 1px solid rgba(88,240,238,.2); }
.elsky-passport-account__offer-section > h3 { color: #58f0ee; }
.elsky-passport-account__offer-section > p { color: rgba(239,250,250,.55); }
.elsky-passport-account__offer-group { margin-top: 10px; }
.elsky-passport-account__offer-group > h4 { margin: 0 0 7px; font-size: .82rem; }
.elsky-passport-account__offer-group > h4 a { color: #f5d891; }
.elsky-passport-account__offer-grid { display: grid; grid-template-columns: repeat(9,minmax(0,1fr)); gap: 8px; }
.elsky-passport-account__offer-group article { position: relative; display: block; min-width: 0; aspect-ratio: 1; overflow: hidden; border: 1px solid rgba(88,240,238,.32); border-radius: 10px; background: #071a22; box-shadow: 0 5px 16px rgba(0,0,0,.18); }
.elsky-passport-account__offer-media { position: absolute; inset: 0; overflow: hidden; background: #071a22; }
.elsky-passport-account__offer-media img { display: block; width: 100%; height: 100%; object-fit: cover; }
.elsky-passport-account__offer-card-body { position: absolute; inset: 0; display: flex; min-width: 0; flex-direction: column; gap: 3px; padding: 7px; pointer-events: none; background: linear-gradient(180deg,rgba(3,20,24,.12) 8%,rgba(3,20,24,.18) 36%,rgba(3,20,24,.92) 100%); }
.elsky-passport-account__offer-badges { display: flex; min-width: 0; flex-wrap: nowrap; gap: 4px; }
.elsky-passport-account__offer-badges span { display: none; max-width: 100%; padding: 2px 5px; overflow: hidden; border-radius: 999px; font-size: .48rem; font-weight: 900; line-height: 1.25; text-overflow: ellipsis; white-space: nowrap; }
.elsky-passport-account__offer-badges span:last-child { display: block; }
.elsky-passport-account__offer-badges .is-venue { color: #f5d891; background: rgba(245,216,145,.12); }
.elsky-passport-account__offer-badges .is-official { color: #031418; background: #58f0ee; }
.elsky-passport-account__offer-badges .is-ota { color: #031418; background: #f5d891; }
.elsky-passport-account__offer-card-top { display: flex; min-height: 0; margin-top: auto; align-items: flex-end; }
.elsky-passport-account__offer-card-top h5 { display: -webkit-box; min-width: 0; margin: 0; overflow: hidden; color: #fff; font-size: .68rem; font-weight: 900; line-height: 1.26; text-shadow: 0 1px 4px #000; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.elsky-passport-account__offer-group article p { margin: 0; overflow: hidden; color: #f5d891; font-size: .51rem; font-weight: 800; line-height: 1.25; text-overflow: ellipsis; text-shadow: 0 1px 3px #000; white-space: nowrap; }
.elsky-passport-account__offer-cta { position: absolute; z-index: 2; inset: 0; overflow: hidden; border: 0; border-radius: inherit; color: transparent !important; font-size: 0; pointer-events: auto; text-decoration: none; }
.elsky-passport-account__offer-cta::before { position: absolute; top: 6px; right: 6px; width: 20px; height: 20px; border: 1px solid rgba(245,216,145,.72); border-radius: 50%; background: rgba(3,20,24,.76); content: ''; }
.elsky-passport-account__offer-cta::after { position: absolute; top: 12px; right: 13px; width: 6px; height: 6px; border-top: 2px solid #f5d891; border-right: 2px solid #f5d891; content: ''; transform: rotate(45deg); }
.elsky-passport-account__offer-card:has(.elsky-passport-account__offer-cta:focus-visible) { outline: 3px solid #f5d891; outline-offset: 2px; }

.elsky-passport-account [hidden] { display: none !important; }

@media (min-width: 1025px) {
  .elsky-passport-account { width: min(var(--elsky-wide, 1440px), 100%); margin-top: 0; }
  .elsky-passport-account__field-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .elsky-passport-account__field-grid .is-age { grid-column: auto; }
  .elsky-passport-account__private {
    padding: 0;
    overflow: visible;
    border: 0;
    background: transparent;
    box-shadow: none;
  }
  .elsky-passport-account__private::before { display: none; }
  .elsky-passport-account__tabs,
  .elsky-passport-account__tab-panel { width: 100%; margin-inline: 0; }
}

@media (max-width: 1024px) {
  .elsky-passport-account__offer-grid { grid-template-columns: repeat(6,minmax(0,1fr)); gap: 7px; }
  .elsky-passport-account__offer-card-body { padding: 6px; }
  .elsky-passport-account__offer-card-top h5 { font-size: .62rem; }
}

@media (max-width: 767px) {
  .elsky-passport-account__visit-frequency > div { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .elsky-passport-account__offer-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 6px; }
  .elsky-passport-account__offer-card-body { padding: 5px; }
  .elsky-passport-account__offer-card-top h5 { font-size: .58rem; line-height: 1.2; }
  .elsky-passport-account__offer-group article p { font-size: .46rem; }
  .elsky-passport-account__offer-cta::before { top: 4px; right: 4px; width: 18px; height: 18px; }
  .elsky-passport-account__offer-cta::after { top: 9px; right: 10px; }
}

.elsky-passport-account .elsky-passport-account__confirm-title {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(5px, 1.3vw, 10px);
  max-width: 100%;
  margin: 0 auto 10px;
  color: #f5d891;
  font-size: clamp(1.45rem, 4.5vw, 2rem);
  font-weight: 950;
  line-height: 1.15;
  text-align: center;
  white-space: nowrap;
}

.elsky-passport-account__confirm-icon {
  display: inline-flex;
  flex: 0 0 clamp(20px, 2.4vw, 24px);
  width: clamp(20px, 2.4vw, 24px);
  height: clamp(20px, 2.4vw, 24px);
}

.elsky-passport-account__confirm-icon svg { display: block; width: 100%; height: 100%; overflow: visible; }

@media (max-width: 700px) {
  .elsky-passport-account__hero { grid-template-columns: minmax(0, 1fr) 118px; gap: 8px; }
  .elsky-passport-account__hero-crest { min-height: 142px; padding: 7px 5px; border-radius: 18px; }
  .elsky-passport-account__hero-trophy { width: 92px; height: 77px; }
  .elsky-passport-account__hero-crest strong { font-size: .62rem; }
  .elsky-passport-account__hero-crest [data-elsky-account-progress] { font-size: .56rem; }
  .elsky-passport-account__identity { grid-template-columns: minmax(0, 1fr); }
  .elsky-passport-account__portrait-frame { width: 186px; }
  .elsky-passport-account__profile.is-editing form.has-saved-photo .elsky-passport-account__photo-remove {
    opacity: 1;
    pointer-events: auto;
    transform: scale(1);
  }
  .elsky-passport-account__identity-fields { padding: 14px 0 0; border-top: 1px solid rgba(245,216,145,.36); border-left: 0; }
  .elsky-passport-account__trophy-road ol { padding-inline: 0; }
  .elsky-passport-account__achievement-body { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .elsky-passport-account__hero-trophy.elsky-passport-account__composite-trophy { width: 92px; height: 77px; }
  .elsky-passport-account__axis-grid { grid-template-columns: minmax(0, 1fr); gap: 5px; }
  .elsky-passport-account__axis { grid-template-columns: minmax(0, 1fr) minmax(116px, .9fr); grid-template-rows: auto; gap: 8px; padding: 8px 9px; }
  .elsky-passport-account__axis-main { min-height: 0; align-self: center; }
  .elsky-passport-account__axis h3 { margin-bottom: 2px; font-size: .68rem; }
  .elsky-passport-account__axis strong { font-size: .65rem; }
  .elsky-passport-account__axis-current > span { font-size: .58rem; }
  .elsky-passport-account__axis-next { --elsky-axis-transition-icon-width: 35px; --elsky-axis-transition-icon-height: 30px; align-content: center; gap: 3px; padding: 0 0 0 8px; border-top: 0; border-left: 1px solid rgba(239,250,250,.12); }
  .elsky-passport-account__axis-rank-headings { gap: 4px; }
  .elsky-passport-account__axis-rank-headings > span,
  .elsky-passport-account__axis-rank-headings > strong { font-size: .49rem; }
  .elsky-passport-account__axis-transition { grid-template-columns: 35px minmax(20px,1fr) 35px; }
  .elsky-passport-account__axis-transition-line > small { bottom: calc(50% + 5px); max-width: 72px; font-size: .43rem; }
  .elsky-passport-account__axis-transition-step small { font-size: .46rem; }
}

@media (max-width: 767px) {
  .elsky-passport-account__tabs { gap: 3px; padding: 4px; }
  .elsky-passport-account__tabs button { position: relative; grid-template-columns: minmax(0, 1fr); grid-template-rows: auto auto; min-height: 54px; gap: 2px; padding: 5px 2px; font-size: clamp(.45rem, 1.85vw, .56rem); line-height: 1.12; text-align: center; }
  .elsky-passport-account__tabs button svg { grid-column: 1 / -1; justify-self: center; width: 16px; height: 16px; }
  .elsky-passport-account__tabs button span { min-width: 0; white-space: nowrap; }
  .elsky-passport-account__tab-label-full { display: none; }
  .elsky-passport-account__tab-label-short { display: block; font-size: clamp(.45rem, 1.85vw, .56rem); }
  .elsky-passport-account__tabs button b { position: absolute; top: 3px; right: 3px; min-width: 1.35em; min-height: 1.35em; padding: 0 .18em; font-size: .48rem; }
  .elsky-passport-account__planner { padding: 10px; }
  .elsky-passport-account__planner-table-wrap { overflow: visible; }
  .elsky-passport-account__planner table,
  .elsky-passport-account__planner tbody { display: block; width: 100%; border: 0; overflow: visible; }
  .elsky-passport-account__planner thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); }
  .elsky-passport-account__planner tbody tr { display: grid; width: 100%; margin: 0 0 9px; overflow: hidden; border: 1px solid rgba(88,240,238,.34); border-radius: 10px; background: rgba(255,255,255,.03); box-shadow: 0 5px 15px rgba(0,0,0,.18); }
  .elsky-passport-account__planner tbody td { display: grid; grid-template-columns: minmax(86px, .38fr) minmax(0, 1fr); width: 100%; min-height: 38px; align-items: start; gap: 8px; padding: 8px 9px; border-right: 0; border-bottom: 1px solid rgba(88,240,238,.14); text-align: left !important; white-space: normal; }
  .elsky-passport-account__planner tbody td::before { color: #f5d891; content: attr(data-label); font-size: .62rem; font-weight: 900; line-height: 1.4; }
  .elsky-passport-account__planner tbody td:last-child { border-bottom: 0; }
  .elsky-passport-account__planner tbody td.is-summary > * { grid-column: 2; }
  .elsky-passport-account__planner tbody td button { justify-self: start; }
  .elsky-passport-account__planner td.is-rating { white-space: normal; }
  .elsky-passport-account__planner[data-elsky-account-planner="visited"] tbody tr { position: relative; }
  .elsky-passport-account__planner[data-elsky-account-planner="visited"] tbody td.is-venue { min-height: 54px; padding-right: 84px; }
  .elsky-passport-account__planner[data-elsky-account-planner="visited"] tbody td.is-action { position: absolute; top: 7px; right: 9px; display: block; width: auto; min-height: 0; padding: 0; border: 0; }
  .elsky-passport-account__planner[data-elsky-account-planner="visited"] tbody td.is-action::before { display: none; content: none; }
  .elsky-passport-account__planner[data-elsky-account-planner="visited"] tbody td.is-action button { min-width: 58px; min-height: 40px; justify-self: auto; }
  .elsky-passport-planner-dialog { width: calc(100% - 14px); max-height: calc(100vh - 14px); }
  .elsky-passport-planner-dialog > form { gap: 9px; padding: 16px 13px; }
  .elsky-passport-planner-dialog__fields,
  .elsky-passport-planner-dialog__detail-grid { grid-template-columns: minmax(0, 1fr); }
  .elsky-passport-planner-dialog__fields > label:first-child,
  .elsky-passport-planner-dialog__fields > label:nth-child(2) { grid-column: auto; }
  .elsky-passport-planner-dialog__money { grid-template-columns: minmax(0, 1fr); }
  .elsky-passport-planner-dialog__ugc { gap: 6px; padding: 8px; }
  .elsky-passport-planner-dialog__ugc-tiles { gap: 6px; }
  .elsky-passport-planner-dialog__ugc-add { min-height: 64px; padding: 5px; font-size: .62rem; }
  .elsky-passport-account .elsky-passport-planner-dialog__ugc-remove { top: -5px; right: -5px; width: 28px; height: 28px; min-width: 28px; min-height: 28px; }
  .elsky-passport-account__rating { padding: 7px; }
  .elsky-passport-account__stars { gap: 3px; }
  .elsky-passport-account__stars label { min-width: 36px; min-height: 36px; }
  .elsky-passport-account__stars label.is-clear { min-width: 44px; min-height: 36px; padding-inline: 3px; font-size: .63rem; }
  .elsky-passport-account__stars label.is-star svg { width: 22px; height: 22px; }
  .elsky-passport-account__exclusive { grid-template-columns: minmax(0, 1fr); gap: 8px; padding: 12px; }
  .elsky-passport-account__exclusive > span { justify-self: start; }
}

@media (hover: none), (pointer: coarse) {
  .elsky-passport-account__profile.is-editing form.has-saved-photo .elsky-passport-account__photo-remove {
    opacity: 1;
    pointer-events: auto;
    transform: scale(1);
  }
}

@media (max-width: 560px) {
  .elsky-passport-account__login form { grid-template-columns: minmax(0, 1fr); }
  .elsky-bali-passport__account-link { margin: 0 2px; padding: 4px 5px; font-size: .58rem; }
  .elsky-passport-save-dialog__panel { padding: 11px 15px; }
  .elsky-passport-save-dialog__logo { min-height: 0; }
  .elsky-passport-save-dialog__logo .custom-logo { width: 168px !important; max-width: 168px !important; height: 168px !important; max-height: 168px !important; }
  .elsky-passport-account { width: min(100% - 12px, 1120px); }
  .elsky-passport-account__hero,
  .elsky-passport-account__login,
  .elsky-passport-account__confirm,
  .elsky-passport-account__private { padding: 13px; border-radius: 12px; }
  .elsky-passport-account__lists { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
  .elsky-passport-account__lists > section { padding: 8px; }
  .elsky-passport-account__field-grid { grid-template-columns: minmax(0, 1fr); }
  .elsky-passport-account__field-grid .is-wide { grid-column: auto; }
  .elsky-passport-account__profile form { grid-template-columns: minmax(0, 1fr); }
  .elsky-passport-account__profile > header,
  .elsky-passport-account__trophy-road > header { align-items: flex-start; }
  .elsky-passport-account__profile > header { flex-direction: column; }
  .elsky-passport-account__profile > header h2 { white-space: nowrap; }
  .elsky-passport-account__profile-edit { align-self: flex-end; }
  .elsky-passport-account__trophy-summary { max-width: 48%; }
  .elsky-passport-account__achievement { padding: 10px; }
  .elsky-passport-account__achievement > header { align-items: flex-start; margin-bottom: 9px; gap: 6px; }
  .elsky-passport-account__achievement > header > strong { max-width: 45%; font-size: .63rem; line-height: 1.3; }
  .elsky-passport-account__achievement > header h2 { font-size: .88rem; }
  .elsky-passport-account__composite-stage { padding: 0; }
  .elsky-passport-account__composite-rank { margin-top: -2px; font-size: .64rem; }
}

@media (max-width: 440px) {
  .elsky-passport-account .elsky-passport-account__confirm-title { white-space: normal; }
  .elsky-passport-account__confirm-title > span:not(.elsky-passport-account__confirm-icon) { min-width: 0; }
}

@media (max-width: 360px) {
  .elsky-passport-save-dialog .elsky-passport-save-dialog__brand { font-size: 18px; }
  .elsky-passport-account .elsky-passport-account__confirm-title { gap: 4px; font-size: clamp(1.18rem, 6vw, 1.45rem); }
}

@media (prefers-reduced-motion: reduce) {
  .elsky-passport-save-dialog button.is-sending::before,
  .elsky-passport-account button.is-sending::before { animation: none; }
  .elsky-passport-account *,
  .elsky-passport-account *::before,
  .elsky-passport-account *::after { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
}

/* One transparent coordinate system: visit base, photo sash, review pedestal ribbon. */
.elsky-passport-account__composite-cup,
.elsky-passport-account__composite-ribbons,
.elsky-passport-account__composite-crystals,
.elsky-passport-account__composite-review-ribbon,
.elsky-passport-account__composite-filigree,
.elsky-passport-account__composite-jewels {
  transform-box: view-box;
  transform-origin: 90px 88px;
}
.elsky-passport-account__composite-trophy.is-photo-rank-none .elsky-passport-account__composite-ribbons,
.elsky-passport-account__composite-trophy.is-photo-rank-none .elsky-passport-account__composite-crystals,
.elsky-passport-account__composite-trophy.is-review-rank-none .elsky-passport-account__composite-review-ribbon,
.elsky-passport-account__composite-trophy.is-review-rank-none .elsky-passport-account__composite-filigree,
.elsky-passport-account__composite-trophy.is-review-rank-none .elsky-passport-account__composite-jewels { display: none; }
.elsky-passport-account__axis-preview.is-axis-photo .elsky-passport-account__composite-cup,
.elsky-passport-account__axis-preview.is-axis-photo .elsky-passport-account__composite-shadow,
.elsky-passport-account__axis-preview.is-axis-review .elsky-passport-account__composite-cup,
.elsky-passport-account__axis-preview.is-axis-review .elsky-passport-account__composite-shadow { display: none; }
.elsky-passport-account__composite-trophy.is-bronze .elsky-passport-account__composite-svg { transform: scale(.93); transform-origin: center; }
.elsky-passport-account__composite-trophy.is-silver .elsky-passport-account__composite-svg { transform: scale(.95); transform-origin: center; }
.elsky-passport-account__composite-trophy.is-gold .elsky-passport-account__composite-svg { transform: scale(.98); transform-origin: center; }
.elsky-passport-account__composite-trophy.is-platinum .elsky-passport-account__composite-svg { transform: scale(1); transform-origin: center; }
.elsky-passport-account__composite-trophy.is-rainbow .elsky-passport-account__composite-svg { transform: scale(1.025); transform-origin: center; }
.elsky-passport-account__composite-trophy.is-super_rainbow .elsky-passport-account__composite-svg,
.elsky-passport-account__composite-trophy.is-super_rainbow_platinum .elsky-passport-account__composite-svg { transform: scale(1.05); transform-origin: center; }
.elsky-passport-account__hero-trophy.elsky-passport-account__composite-trophy { width: 150px; height: 133px; }
.elsky-passport-account__axis-next {
  --elsky-axis-transition-icon-width: clamp(76px, 6.5vw, 92px);
  --elsky-axis-transition-icon-height: clamp(68px, 5.8vw, 82px);
}
.elsky-passport-account__axis-transition {
  grid-template-columns: var(--elsky-axis-transition-icon-width) minmax(18px,1fr) var(--elsky-axis-transition-icon-width);
}
.elsky-passport-account__axis-transition-icon { max-width: 92px; }

@media (max-width: 700px) {
  .elsky-passport-account__hero-trophy.elsky-passport-account__composite-trophy { width: 104px; height: 92px; }
  .elsky-passport-account__axis-next {
    --elsky-axis-transition-icon-width: 50px;
    --elsky-axis-transition-icon-height: 44px;
  }
  .elsky-passport-account__axis-transition { grid-template-columns: 50px minmax(16px,1fr) 50px; }
}

/* Transparent full-square raster layers share one canvas and one anchor. */
.elsky-passport-account__trophy-layer-stack {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 1;
}
.elsky-passport-account__trophy-layer,
.elsky-passport-account__trophy-start-layer {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  pointer-events: none;
}
.elsky-passport-account__trophy-layer.is-visit { z-index: 1; }
.elsky-passport-account__trophy-layer.is-photo { z-index: 2; }
.elsky-passport-account__trophy-layer.is-review { z-index: 3; }
.elsky-passport-account__trophy-start-layer { z-index: 4; display: grid; place-items: center; padding: 20%; }
.elsky-passport-account__trophy-start-layer svg { display: block; width: 100%; height: 100%; }
.elsky-passport-account__trophy-layer[hidden],
.elsky-passport-account__trophy-start-layer[hidden] { display: none; }
.elsky-passport-account__hero-trophy.elsky-passport-account__composite-trophy { width: 150px; height: 150px; }
.elsky-passport-account__axis-next {
  --elsky-axis-transition-icon-width: clamp(76px, 6.5vw, 92px);
  --elsky-axis-transition-icon-height: clamp(76px, 6.5vw, 92px);
}

@media (max-width: 700px) {
  .elsky-passport-account__hero-trophy.elsky-passport-account__composite-trophy { width: 104px; height: 104px; }
  .elsky-passport-account__axis-next {
    --elsky-axis-transition-icon-width: 50px;
    --elsky-axis-transition-icon-height: 50px;
  }
}
