/* Scoped to the new referral screen. Existing wallet screens keep their styles. */
.aw-referral-page { position:relative; min-height:100%; padding:0; overflow:hidden; background:white; }
.aw-referral-canvas { --aw-card-shadow:0 4px 12px rgb(39 85 143 / 9%),0 1px 3px rgb(39 85 143 / 4%); --aw-small-shadow:0 2px 6px rgb(39 85 143 / 7%); position:relative; isolation:isolate; width:390px; min-height:852px; transform:scale(var(--referral-scale,1)); transform-origin:top left; color:#081b46; background:white; }
.aw-waves { position:absolute; z-index:-1; top:0; left:0; width:390px; height:292px; overflow:hidden; background:#087cf5 url('assets/referrals/poster.jpg') center/cover; }
.aw-wave-video { display:block; width:100%; height:100%; object-fit:cover; }
.aw-hero { position:relative; height:223px; }
.aw-hero .profile { position:absolute; top:19px; left:19px; gap:11.936px; }
.aw-hero .avatar { width:41.276px; height:41.276px; box-shadow:none; }
.aw-hero .profile strong { font:700 14.119px/15.813px Arial,sans-serif; }
.aw-hero .profile small { width:100.874px; height:15.172px; margin:3.236px 0 0 -1.09px; padding-left:6.52px; border-radius:10.861px; background:rgb(255 255 255 / 7%); color:rgb(255 255 255 / 63%); font:9.775px/10.752px Arial,sans-serif; letter-spacing:.1108px; }
.aw-hero .profile svg { visibility:hidden; }
.aw-hero-art { position:absolute; left:156px; top:61px; width:215px; height:170px; overflow:hidden; }
.aw-hero-art img { position:absolute; width:141.07%; height:100.24%; left:-22.93%; top:-.12%; max-width:none; }
.aw-hero-copy { position:absolute; left:25px; top:83px; width:163px; display:flex; flex-direction:column; align-items:flex-start; gap:8px; color:white; }
.aw-hero-copy h1 { font-size:29.398px; line-height:29.398px; font-weight:700; letter-spacing:0; }
.aw-hero-copy h1:focus { outline:none; }
.aw-hero-copy p { font-size:13.066px; line-height:15.156px; font-weight:600; }
.aw-hero-copy button { padding:6.754px 13.509px 7.88px; border-radius:22.515px; background:white; color:#0879ed; font:700 10.132px/normal Arial,sans-serif; white-space:nowrap; }
.aw-panel { position:relative; min-height:629px; border:1px solid white; border-bottom:0; border-radius:34px 34px 0 0; padding:17px 15px 36px; background:rgb(249 249 249 / 69%); backdrop-filter:blur(36.25px); -webkit-backdrop-filter:blur(36.25px); box-shadow:0 -3px 14px rgb(39 85 143 / 7%); }
.aw-balance { display:flex; align-items:center; gap:12px; width:100%; height:62px; padding:9px 13px; text-align:left; border-radius:17px; background:linear-gradient(120.35deg,#fff,#e5f2ff); box-shadow:var(--aw-card-shadow); }
.aw-balance-icon { display:grid; place-items:center; flex:0 0 43px; height:43px; border:1px solid #e0efff; border-radius:13px; background:linear-gradient(145deg,#fff,#f4faff); box-shadow:inset 0 1px 1px #fff,var(--aw-small-shadow); }
.aw-lucide { display:block; flex-shrink:0; object-fit:contain; }
.aw-balance-icon .aw-lucide { width:26px; height:26px; }
.aw-balance-copy { display:flex; flex-direction:column; gap:0; }
.aw-balance-copy small { font-size:9px; line-height:normal; font-weight:700; color:#7b8ba7; white-space:nowrap; }
.aw-balance-copy strong { font-size:20px; line-height:normal; padding-bottom:1px; }
.aw-balance-copy > span { font-size:9px; line-height:normal; color:#94a3b8; padding-bottom:1px; }
.aw-balance-arrow { display:grid; place-items:center; flex:0 0 28px; height:28px; margin-left:auto; border:1px solid rgb(30 139 255 / 35%); border-radius:50%; color:white; background:#087cf5; box-shadow:inset 0 1px 2px rgb(255 255 255 / 32%),0 2px 5px rgb(8 123 245 / 16%); }
.aw-balance-arrow svg { width:17px; height:17px; stroke-width:2.2; }
@property --aw-link-border-angle { syntax:"<angle>"; inherits:false; initial-value:0deg; }
.aw-link-card { position:relative; isolation:isolate; display:flex; align-items:center; gap:11.86px; height:70.751px; margin-top:7px; padding:9px 9px 8.704px 9.782px; border:1px solid rgb(255 255 255 / 95%); border-radius:17.251px; background:#c8e5ff; box-shadow:inset 0 1px 0 rgb(255 255 255 / 45%),var(--aw-card-shadow); }
.aw-link-card::before {
  content:""; position:absolute; z-index:1; inset:-1px; padding:1.6px;
  border-radius:inherit; pointer-events:none;
  background:conic-gradient(from var(--aw-link-border-angle),
    transparent 0deg,transparent 274deg,
    rgb(104 207 255 / 8%) 292deg,rgb(104 207 255 / 28%) 312deg,
    rgb(91 200 255 / 72%) 332deg,#61cfff 345deg,
    #d8f7ff 351deg,#4bbdff 355deg,transparent 360deg);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  mask-composite:exclude;
  filter:drop-shadow(0 0 3px rgb(70 186 255 / 38%));
  animation:aw-link-border-orbit 5.5s linear infinite;
}
@keyframes aw-link-border-orbit { to { --aw-link-border-angle:360deg; } }
.aw-telegram-slot { display:block; flex:0 0 50.676px; width:50.676px; height:51.047px; object-fit:contain; }
.aw-link-content { flex:1; min-width:0; display:flex; flex-direction:column; gap:5.391px; }
.aw-link-content label { font:700 9.704px/normal Arial,sans-serif; color:#7b8ba7; }
.aw-link-row { display:flex; align-items:center; gap:7.547px; }
#aw-referral-link { width:0; min-width:0; flex:1; height:30.268px; border:0; border-radius:8.626px; padding:7.547px 8.626px; background:rgb(255 255 255 / 72%); color:#081b46; font:12.939px/normal Arial,sans-serif; text-overflow:ellipsis; }
.aw-copy { display:grid; place-items:center; flex:0 0 32.346px; height:31.268px; padding:0; border-radius:8.626px; background:white; box-shadow:var(--aw-small-shadow); }
.aw-copy .aw-lucide { width:17px; height:17px; }
.aw-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; height:77px; margin-top:11.249px; }
.aw-stats > div { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2px; border-radius:15px; background:white; box-shadow:var(--aw-card-shadow); font-family:Arial,sans-serif; }
.aw-stat-slot { display:grid; place-items:center; width:28px; height:26px; flex-shrink:0; border:1px solid #e0efff; border-radius:8px; background:linear-gradient(145deg,#fff,#f4faff); box-shadow:inset 0 1px 1px #fff,var(--aw-small-shadow); }
.aw-stat-slot .aw-lucide { width:19px; height:19px; }
.aw-stats small { font-size:9px; line-height:normal; color:#8794aa; }
.aw-stats strong { font-size:16px; line-height:normal; padding-bottom:1px; }
.aw-rewards { display:block; position:relative; width:100%; height:60px; margin-top:10px; padding:0; overflow:hidden; border-radius:14.204px; text-align:left; box-shadow:var(--aw-card-shadow); }
.aw-rewards > img { display:block; width:100%; height:60px; object-fit:cover; }
.aw-rewards > span { position:absolute; top:11px; left:17px; width:202px; display:flex; flex-direction:column; gap:3px; color:white; }
.aw-rewards strong { font-size:15px; line-height:normal; white-space:nowrap; }
.aw-rewards small { font-size:11px; line-height:normal; }
.aw-operations { width:362px; margin-top:11px; padding:11px 13.398px 10.556px; border:1px solid rgb(227 238 251 / 83%); border-radius:21px; box-shadow:var(--aw-card-shadow); }
.aw-operations-heading { display:flex; align-items:center; justify-content:space-between; width:344px; margin-left:-5.398px; height:52.42646px; padding:0 0 15px 9px; }
.aw-operations-heading h2 { display:flex; align-items:center; gap:7px; font-size:12.444px; line-height:15.556px; letter-spacing:-.3111px; color:#17191f; }
.aw-clock-slot { display:inline-flex; align-items:center; justify-content:center; flex:0 0 19.145px; width:19.145px; height:19.145px; color:#536078; }
.aw-clock-slot svg { width:19.145px; height:19.145px; }
.aw-operations-heading button { display:flex; align-items:center; gap:11.277px; padding:10.713px 0; color:#667189; font-size:12.405px; background:none; }
.aw-next-slot { width:14.66px; height:14.66px; }
.aw-empty { position:relative; isolation:isolate; text-align:center; }
.aw-empty::before { content:""; position:absolute; z-index:-1; top:119px; left:50%; width:83px; height:12px; border-radius:50%; background:radial-gradient(ellipse,rgba(16,86,170,.19) 0%,rgba(38,116,200,.09) 42%,transparent 74%); filter:blur(3px); transform:translateX(-50%); animation:aw-referral-shadow 4.8s ease-in-out infinite; pointer-events:none; }
.aw-empty img { display:block; position:relative; width:152px; height:132px; object-fit:contain; margin:4.07px auto 8px; transform-origin:50% 65%; filter:drop-shadow(0 5px 6px rgba(25,105,191,.10)); animation:aw-referral-float 4.8s ease-in-out infinite; }
@keyframes aw-referral-float {
  0%,100% { transform:translate3d(0,0,0) rotate(-1deg); }
  50% { transform:translate3d(2px,-9px,0) rotate(1.2deg); }
}
@keyframes aw-referral-shadow {
  0%,100% { transform:translateX(-50%) scale(1); opacity:.75; }
  50% { transform:translateX(-50%) scale(.78); opacity:.42; }
}
.aw-empty h3 { font-size:16.6px; line-height:20px; letter-spacing:-.583px; color:#101217; }
.aw-empty p { padding:3.06px 0 9.338px; font-size:12.2px; line-height:16px; letter-spacing:-.244px; color:#858d9f; }
.aw-deposit { min-height:47px; height:47px; border:.98px solid rgb(47 150 255 / 45%); border-radius:97.994px; background:radial-gradient(ellipse 80.66% 80.67% at center,#137bf8,#6fa4f0); box-shadow:inset 0 -1.96px 3.92px rgb(0 60 201 / 12%),var(--aw-card-shadow); color:white; font-size:14.6px; font-weight:700; letter-spacing:-.219px; }
.aw-intro .aw-hero .profile,
.aw-intro .aw-hero-copy,
.aw-intro .aw-hero-art,
.aw-intro .aw-balance,
.aw-intro .aw-link-card,
.aw-intro .aw-stats > div,
.aw-intro .aw-rewards,
.aw-intro .aw-operations { animation:aw-referral-reveal 1.4s cubic-bezier(.16,1,.3,1) both; }
.aw-intro .aw-hero .profile { animation-delay:.04s; }
.aw-intro .aw-hero-copy { animation-delay:.16s; }
.aw-intro .aw-hero-art { animation-duration:1.65s; animation-delay:.24s; }
.aw-intro .aw-balance { animation-delay:.36s; }
.aw-intro .aw-link-card { animation-delay:.52s; }
.aw-intro .aw-stats > div:nth-child(1) { animation-delay:.68s; }
.aw-intro .aw-stats > div:nth-child(2) { animation-delay:.78s; }
.aw-intro .aw-stats > div:nth-child(3) { animation-delay:.88s; }
.aw-intro .aw-rewards { animation-delay:1.02s; }
.aw-intro .aw-operations { animation-delay:1.18s; }
@keyframes aw-referral-reveal {
  from { opacity:0; transform:translate3d(0,14px,0) scale(.985); filter:blur(4px); }
  to { opacity:1; transform:translate3d(0,0,0) scale(1); filter:blur(0); }
}
@media (prefers-reduced-motion:reduce) { .aw-wave-video { visibility:hidden; } .aw-empty img,.aw-empty::before,.aw-intro *,.aw-link-card::before { animation:none; } }
