.account-welcome-splash{position:fixed;inset:0;z-index:10050;display:grid;place-items:center;overflow:hidden;background:#10110f;color:#fff;text-align:center;cursor:pointer;opacity:1;isolation:isolate;transition:opacity .5s ease,visibility .5s ease}.account-welcome-splash[hidden]{display:none}.account-welcome-splash.is-leaving{opacity:0;visibility:hidden}.account-welcome-backdrop{position:absolute;inset:-3%;z-index:-3;background:url('../img/account-welcome-logistics-v1.webp') center/cover no-repeat;transform:scale(1.03);animation:welcomeDrift 7s ease-out both}.account-welcome-splash:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(5,6,5,.55),rgba(7,8,7,.3) 40%,rgba(5,6,5,.6)),linear-gradient(0deg,rgba(6,7,6,.55),transparent 55%);transition:background .4s}.account-welcome-splash[data-period="morning"]:before{background:linear-gradient(90deg,rgba(47,28,7,.4),rgba(44,24,4,.12),rgba(20,12,4,.46)),linear-gradient(0deg,rgba(18,10,3,.48),rgba(255,184,75,.08))}.account-welcome-splash[data-period="day"]:before{background:linear-gradient(90deg,rgba(13,18,15,.36),rgba(255,217,143,.04),rgba(12,17,14,.43)),linear-gradient(0deg,rgba(5,9,7,.44),transparent)}.account-welcome-splash[data-period="evening"]:before{background:linear-gradient(90deg,rgba(27,14,7,.5),rgba(92,39,8,.12),rgba(14,8,5,.58)),linear-gradient(0deg,rgba(10,6,4,.58),rgba(216,112,24,.06))}.account-welcome-splash[data-period="night"]:before{background:linear-gradient(90deg,rgba(4,8,11,.65),rgba(5,12,16,.36),rgba(2,5,7,.68)),linear-gradient(0deg,rgba(1,4,6,.68),rgba(24,61,72,.08))}.account-welcome-glow{position:absolute;z-index:-1;width:62vmax;height:62vmax;border-radius:50%;background:radial-gradient(circle,rgba(225,158,49,.14),transparent 62%);animation:welcomePulse 3.2s ease-in-out infinite}.account-welcome-copy{position:relative;max-width:760px;padding:36px;text-shadow:0 4px 22px rgba(0,0,0,.56)}.account-welcome-copy>span{font-size:12px;font-weight:750;letter-spacing:.25em;color:#f0c46e}.account-welcome-copy h1{font-size:clamp(36px,7vw,76px);line-height:1.03;margin:18px 0 15px;letter-spacing:-.045em}.account-welcome-copy p{max-width:650px;margin:0 auto;font-size:clamp(16px,2.1vw,22px);line-height:1.55;color:rgba(255,255,255,.86)}.account-welcome-splash>small{position:absolute;bottom:max(28px,env(safe-area-inset-bottom));padding:8px 14px;border:1px solid rgba(255,255,255,.14);border-radius:99px;background:rgba(0,0,0,.2);color:rgba(255,255,255,.65);backdrop-filter:blur(8px)}
.profile-promo-card{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px;margin-bottom:18px}.profile-promo-card h2{margin:4px 0}.profile-promo-card p{margin:0;color:var(--account-muted,#73766d)}.profile-promo-card form{display:flex;gap:8px}.profile-promo-card input,.currency-converter input,.currency-converter select{min-width:0;border:1px solid var(--account-border,#dedfd8);border-radius:12px;padding:11px 13px;background:var(--account-surface,#fff);color:inherit}
.currency-converter-footer{margin-top:18px;padding:22px;background:linear-gradient(145deg,var(--account-surface,#fff),rgba(222,158,42,.055));overflow:hidden}.currency-converter-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}.currency-converter-heading h2{margin:3px 0 5px;font-size:22px}.currency-converter-heading p{margin:0;color:var(--account-muted,#73766d);font-size:11px}.currency-symbol{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(145deg,#171713,#4a3510);color:#f4c65d;font-size:24px;font-weight:850;box-shadow:0 10px 24px rgba(35,25,5,.16)}.currency-converter-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.currency-converter-controls label{display:grid;gap:6px;color:var(--account-muted,#73766d);font-size:9px;font-weight:750}.bank-rate-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:12px}.bank-rate-list button{border:1px solid var(--account-border,#dedfd8);background:rgba(255,255,255,.44);color:inherit;border-radius:13px;padding:12px 13px;display:grid;gap:4px;text-align:left;cursor:default}.bank-rate-list button span{font-size:9px;color:var(--account-muted,#73766d)}.bank-rate-list button strong{font-size:12px}.bank-rate-list button small{min-height:18px;margin-top:5px;color:#a66b14;font-size:15px;font-weight:800}.currency-rate-note{margin:11px 0 0;font-size:9px;color:var(--account-muted,#73766d)}
@keyframes welcomePulse{50%{transform:scale(1.08);opacity:.7}}@keyframes welcomeDrift{from{transform:scale(1.08)}to{transform:scale(1.03)}}
@media(max-width:860px){.profile-promo-card{align-items:stretch;flex-direction:column}.profile-promo-card form{width:100%}.profile-promo-card input{flex:1}.currency-converter-footer{padding:16px}.bank-rate-list{grid-template-columns:1fr}.currency-converter-heading p{font-size:10px}}
@media(max-width:540px){.currency-converter-controls{grid-template-columns:1fr}.account-welcome-copy{padding:24px}.account-welcome-copy h1{font-size:clamp(34px,11vw,52px)}.account-welcome-backdrop{background-position:52% center}.currency-symbol{width:42px;height:42px}}
@media(prefers-reduced-motion:reduce){.account-welcome-glow,.account-welcome-backdrop{animation:none}.account-welcome-splash{transition:none}}

/* Account welcome v3: time-of-day scene + live weather atmosphere. */
.account-welcome-splash {
  --welcome-overlay: 52%;
  background: #0d100e;
}
.account-welcome-splash .account-welcome-backdrop {
  inset: -4%;
  background: var(--welcome-image) center / cover no-repeat;
  filter: saturate(1.08) contrast(1.02);
  animation: welcomeCinematicDrift 8s ease-out both;
}
.account-welcome-splash.account-welcome-splash::before {
  background:
    linear-gradient(90deg, color-mix(in srgb, #030504 var(--welcome-overlay), transparent), rgba(3,5,4,.12) 50%, color-mix(in srgb, #030504 var(--welcome-overlay), transparent)),
    linear-gradient(0deg, rgba(2,4,3,.68), transparent 60%) !important;
}
.account-welcome-splash[data-period="morning"]::after,
.account-welcome-splash[data-period="day"]::after,
.account-welcome-splash[data-period="evening"]::after,
.account-welcome-splash[data-period="night"]::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
}
.account-welcome-splash[data-period="morning"]::after { background: linear-gradient(135deg, rgba(255,188,91,.13), transparent 48%); }
.account-welcome-splash[data-period="day"]::after { background: linear-gradient(180deg, rgba(255,243,198,.06), transparent 48%); }
.account-welcome-splash[data-period="evening"]::after { background: linear-gradient(135deg, rgba(228,101,24,.15), transparent 52%); }
.account-welcome-splash[data-period="night"]::after { background: linear-gradient(180deg, rgba(21,45,78,.16), rgba(0,0,0,.18)); }
.account-welcome-weather {
  position: absolute;
  inset: -12%;
  z-index: -1;
  pointer-events: none;
  overflow: hidden;
}
.account-welcome-splash[data-weather="cloudy"] .account-welcome-weather {
  background: linear-gradient(110deg, rgba(35,42,43,.28), rgba(170,177,174,.11), rgba(31,37,38,.3));
  animation: welcomeClouds 9s ease-in-out infinite alternate;
}
.account-welcome-splash[data-weather="rain"] .account-welcome-weather,
.account-welcome-splash[data-weather="storm"] .account-welcome-weather {
  background-image: repeating-linear-gradient(105deg, transparent 0 20px, rgba(220,235,241,.38) 21px, transparent 22px 38px);
  background-size: 150% 150%;
  opacity: .58;
  animation: welcomeRain .72s linear infinite;
}
.account-welcome-splash[data-weather="storm"] .account-welcome-weather::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(235,244,255,.36);
  opacity: 0;
  animation: welcomeLightning 7s steps(1) infinite;
}
.account-welcome-splash[data-weather="snow"] .account-welcome-weather {
  background-image:
    radial-gradient(circle, rgba(255,255,255,.92) 0 2px, transparent 2.5px),
    radial-gradient(circle, rgba(255,255,255,.72) 0 3px, transparent 3.5px),
    radial-gradient(circle, rgba(255,255,255,.62) 0 1px, transparent 1.5px);
  background-size: 90px 90px, 145px 145px, 55px 55px;
  background-position: 0 0, 40px -30px, 15px 20px;
  opacity: .78;
  animation: welcomeSnow 8s linear infinite;
}
.account-welcome-splash[data-weather="fog"] .account-welcome-weather {
  background:
    radial-gradient(ellipse at 20% 48%, rgba(225,229,226,.42), transparent 44%),
    radial-gradient(ellipse at 75% 60%, rgba(225,229,226,.35), transparent 48%);
  filter: blur(22px);
  animation: welcomeFog 10s ease-in-out infinite alternate;
}
.account-welcome-copy { max-width: 820px; }
.welcome-brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #f4c96f !important;
}
.welcome-brand img {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  object-fit: cover;
  box-shadow: 0 7px 22px rgba(0,0,0,.3);
}
.welcome-brand b { font-size: 12px; letter-spacing: .22em; }
.welcome-weather-meta {
  display: block;
  width: max-content;
  margin: 16px auto -5px;
  padding: 7px 12px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 999px;
  background: rgba(5,8,6,.24);
  color: rgba(255,255,255,.84) !important;
  font-size: 12px !important;
  font-weight: 650 !important;
  letter-spacing: .02em !important;
  backdrop-filter: blur(12px);
}
.welcome-default-message p { margin: 0 auto; }
.welcome-personal-message {
  width: min(650px, calc(100vw - 42px));
  margin: 5px auto 0;
  padding: 20px 24px;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 22px;
  background: rgba(7,10,8,.38);
  box-shadow: 0 25px 70px rgba(0,0,0,.22);
  backdrop-filter: blur(18px);
}
.welcome-personal-message > span,
.welcome-personal-message > small { display: block; }
.welcome-personal-message > span { color: #f2c76e; font-size: 12px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.welcome-personal-message p { margin: 10px 0 12px; color: #fff; font-size: clamp(16px,2vw,21px); line-height: 1.5; }
.welcome-personal-message small { color: rgba(255,255,255,.7); font-size: 12px; }
.account-welcome-splash[data-personal="1"] .account-welcome-copy h1 { margin-bottom: 20px; }
@keyframes welcomeCinematicDrift { from { transform: scale(1.09); } to { transform: scale(1.025); } }
@keyframes welcomeRain { to { background-position: -160px 260px; } }
@keyframes welcomeSnow { to { background-position: 35px 180px, 5px 220px, 60px 150px; } }
@keyframes welcomeClouds { to { transform: translate3d(4%,0,0); opacity: .82; } }
@keyframes welcomeFog { to { transform: translate3d(5%,-2%,0) scale(1.08); } }
@keyframes welcomeLightning { 8%,10% { opacity: .7; } 11%,14% { opacity: 0; } 15% { opacity: .4; } 17%,100% { opacity: 0; } }
@media (max-width: 540px) {
  .welcome-brand img { width: 30px; height: 30px; }
  .welcome-brand b { font-size: 10px; }
  .welcome-personal-message { padding: 17px 18px; border-radius: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  .account-welcome-weather,
  .account-welcome-splash .account-welcome-backdrop { animation: none !important; }
}

/* Account 2.1: warm, track-first dashboard based on approved concept 2. */
.warm-account-intro {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(330px, .7fr);
  gap: 22px;
  align-items: end;
  margin-bottom: 16px;
  padding: 28px 30px;
  overflow: hidden;
  border: 1px solid var(--ab-line);
  border-radius: 28px;
  background: var(--ab-surface);
  box-shadow: var(--ab-shadow-soft);
}
.warm-account-intro::after {
  content: "";
  position: absolute;
  right: -70px;
  top: -110px;
  width: 280px;
  height: 280px;
  border-radius: 50%;
  background: rgba(224,160,30,.08);
  filter: blur(2px);
  pointer-events: none;
}
.warm-account-greeting { position: relative; z-index: 1; }
.warm-account-greeting h1 { margin: 4px 0 8px; font-size: clamp(31px, 3.2vw, 48px); letter-spacing: -.05em; }
.warm-account-greeting p { margin: 0; color: var(--ab-muted); font-size: 15px; }
.warm-account-greeting p strong { color: #2e7148; }
.warm-track-lookup { position: relative; z-index: 1; display: grid; grid-template-columns: 1fr auto; gap: 9px; align-items: end; }
.warm-track-lookup label { display: grid; gap: 7px; color: var(--ab-muted); font-size: 10px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.warm-track-lookup textarea { width: 100%; min-height: 48px; max-height: 110px; padding: 13px 14px; border: 1px solid var(--ab-line); border-radius: 14px; background: var(--ab-surface-2); color: var(--ab-ink); font: inherit; resize: vertical; outline: 0; }
.warm-track-lookup textarea:focus { border-color: #dba737; box-shadow: 0 0 0 4px rgba(219,167,55,.1); }
.warm-lookup-results { grid-column: 1 / -1; }
.warm-ready-card { margin-bottom: 16px; }
.warm-account-focus { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(290px, .72fr); gap: 16px; align-items: start; }
.featured-track-card { padding: 26px; }
.featured-track-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; }
.featured-track-head h2 { margin: 5px 0 0; font-size: clamp(24px, 2.7vw, 34px); overflow-wrap: anywhere; }
.featured-track-head p { margin: 6px 0 0; color: var(--ab-muted); font-size: 12px; }
.featured-track-card .track-progress-v2 { margin: 30px 2px 28px; }
.track-guidance-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.track-guidance-grid article { display: grid; grid-template-columns: 38px minmax(0, 1fr); gap: 11px; align-items: start; min-height: 120px; padding: 16px; border: 1px solid var(--ab-line); border-radius: 17px; background: var(--ab-surface-2); }
.track-guidance-grid article:last-child { background: color-mix(in srgb, var(--ab-gold-soft) 48%, var(--ab-surface)); }
.guidance-icon { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 12px; background: var(--ab-surface); color: var(--ab-gold-deep); font-size: 17px; font-weight: 900; }
.track-guidance-grid small,
.track-guidance-grid strong { display: block; }
.track-guidance-grid small { margin: 2px 0 7px; color: var(--ab-gold-deep); font-size: 10px; font-weight: 850; text-transform: uppercase; }
.track-guidance-grid strong { font-size: 13px; line-height: 1.5; }
.client-action-note { display: flex; align-items: center; gap: 10px; margin-top: 12px; padding: 13px 15px; border-radius: 14px; background: #edf7f0; color: #236840; }
.client-action-note > span { width: 24px; height: 24px; display: grid; place-items: center; border-radius: 50%; background: #d8eddf; }
.client-action-note strong { font-size: 12px; }
.client-action-note.tone-ready { background: #fff3d3; color: #8a5b00; }
.client-action-note.tone-attention { background: #fff0ed; color: #a43d2d; }
.featured-track-footer { display: flex; justify-content: space-between; gap: 14px; margin-top: 17px; color: var(--ab-muted); font-size: 10px; }
.featured-track-footer a { color: var(--ab-gold-deep); font-weight: 850; }
.first-track-card { min-height: 330px; display: grid; grid-template-columns: auto 1fr; align-content: center; gap: 18px; padding: 30px; }
.first-track-card > span { width: 64px; height: 64px; display: grid; place-items: center; border-radius: 22px; background: var(--ab-gold-soft); color: var(--ab-gold-deep); font-size: 30px; }
.first-track-card h2 { margin: 5px 0 7px; font-size: 28px; }
.first-track-card p { margin: 0; color: var(--ab-muted); line-height: 1.55; }
.first-track-card .account-button { grid-column: 2; justify-self: start; }
.warm-account-side { display: grid; gap: 16px; }
.warm-quick-actions { padding: 20px; }
.warm-quick-actions > div:last-child { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.warm-quick-actions > div:last-child a { min-width: 0; min-height: 108px; display: flex; flex-direction: column; padding: 13px; border: 1px solid var(--ab-line); border-radius: 15px; color: var(--ab-ink); background: var(--ab-surface-2); transition: .18s var(--ease); }
.warm-quick-actions > div:last-child a:hover { transform: translateY(-2px); border-color: #dbc585; background: color-mix(in srgb, var(--ab-gold-soft) 40%, var(--ab-surface)); }
.warm-quick-actions a > span { width: 30px; height: 30px; display: grid; place-items: center; margin-bottom: 11px; border-radius: 10px; background: var(--ab-surface); color: var(--ab-gold-deep); font-size: 17px; }
.warm-quick-actions a strong { font-size: 11px; line-height: 1.3; }
.warm-quick-actions a small { margin-top: 4px; color: var(--ab-muted); font-size: 9px; }
.warm-support-card { display: grid; grid-template-columns: auto 1fr; gap: 13px; align-items: start; padding: 20px; }
.support-mark { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 15px; background: var(--ab-gold-soft); color: var(--ab-gold-deep); font-size: 20px; }
.warm-support-card h2 { margin: 4px 0; font-size: 20px; }
.warm-support-card p { margin: 0; color: var(--ab-muted); font-size: 11px; line-height: 1.45; }
.warm-support-card .account-button { grid-column: 1 / -1; width: 100%; }
.warm-account-stats { margin-top: 16px; }
.warm-account-stats .metric-icon { font-size: 18px; font-weight: 850; }
.warm-dashboard-mosaic { grid-template-columns: minmax(0, 1.2fr) minmax(300px, .8fr); }
.warm-dashboard-mosaic .warm-club-preview { grid-column: 1 / -1; }

@media (max-width: 1120px) {
  .warm-account-intro { grid-template-columns: 1fr; align-items: start; }
  .warm-account-focus { grid-template-columns: 1fr; }
  .warm-account-side { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .warm-account-intro { padding: 22px 18px; border-radius: 22px; }
  .warm-track-lookup { grid-template-columns: 1fr; }
  .warm-track-lookup .account-button { width: 100%; }
  .featured-track-card { padding: 18px; }
  .featured-track-head { display: grid; }
  .track-guidance-grid,
  .warm-account-side,
  .warm-dashboard-mosaic { grid-template-columns: 1fr; }
  .warm-dashboard-mosaic .warm-club-preview { grid-column: auto; }
  .featured-track-footer { display: grid; }
}
@media (max-width: 480px) {
  .warm-account-greeting h1 { font-size: 31px; }
  .track-guidance-grid article { min-height: 0; }
  .first-track-card { grid-template-columns: 1fr; padding: 22px; }
  .first-track-card .account-button { grid-column: 1; width: 100%; }
}
.track-progress-v2.is-complete span i,.track-progress-v2.is-complete:before{background:#22965a!important;border-color:#22965a!important}.track-progress-v2.is-complete span small{color:#197643!important}.track-details-v2{margin-top:10px;border-top:1px solid var(--account-border,#dedfd8);padding-top:10px}.track-details-v2 summary{cursor:pointer;font-size:11px;font-weight:800;color:#9a6811}.track-detail-path{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.track-detail-path span{padding:7px 9px;border-radius:10px;background:var(--account-surface-2,#f6f6f2);font-size:10px}.tone-danger{color:#a52222!important;background:#fff0ee!important}.tone-lost{color:#fff!important;background:#111!important}
.phone-confirm-reminder{display:flex;align-items:center;gap:10px;margin-bottom:14px;padding:13px 15px;border:1px solid rgba(205,143,24,.25);border-radius:16px;background:linear-gradient(145deg,rgba(245,184,54,.12),var(--ab-surface,#fff))}.phone-confirm-reminder>div{display:grid;gap:2px;flex:1}.phone-confirm-reminder strong{font-size:13px}.phone-confirm-reminder span{font-size:10px;color:var(--ab-muted)}.phone-confirm-reminder form{margin:0}.phone-change-card form{display:flex;gap:8px}.phone-change-card input{flex:1}@media(max-width:650px){.phone-confirm-reminder{align-items:stretch;flex-direction:column}.phone-confirm-reminder .account-button{width:100%;text-align:center}.phone-change-card form{flex-direction:column}}
