/* VOLT v9.5 · «دعوت و هدیه» and gift credit in the wallet */
@keyframes rfUp{from{opacity:0;transform:translateY(16px)}}
@keyframes rfTicket{from{opacity:0;transform:rotate(-4deg) translateY(22px) scale(.94)}}
@keyframes rfFloat{50%{transform:translateY(-6px) rotate(6deg)}}
@keyframes rfShine{0%,55%{transform:translateX(130%) skewX(-18deg)}100%{transform:translateX(-260%) skewX(-18deg)}}

.rf-page{display:grid;gap:18px;min-width:0;animation:rfUp .5s cubic-bezier(.2,.8,.2,1) both}
.rf-page :where(h2,p,b,small,li){overflow-wrap:anywhere}

/* ---------- hero ---------- */
.rf-hero{position:relative;overflow:hidden;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:22px;padding:26px;border-radius:30px;border:1px solid #FFC24A40;
  background:radial-gradient(80% 120% at 100% 0%,#FFC24A2e,transparent 60%),radial-gradient(70% 120% at 0% 100%,#FF6B3D2a,transparent 60%),var(--v8-card,#17191D)}
.rf-hero::before{content:"";position:absolute;z-index:-1;width:150px;height:150px;left:42%;top:-60px;border-radius:50%;border:1px dashed #FFC24A3d;animation:rfFloat 9s ease-in-out infinite}
.rf-hero.off{border-color:var(--v8-line2,#ffffff24);background:var(--v8-card,#17191D)}
.rf-kicker{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:900;letter-spacing:.08em;color:#FFC24A}
.rf-kicker .icon{width:18px;height:18px}
.rf-hero h2{margin:8px 0 16px;font-size:clamp(22px,3.2vw,30px);font-weight:900;line-height:1.45}
.rf-hero p{margin:0;color:var(--v8-t2,#B9BEC7);line-height:1.9}
.rf-gifts{display:flex;align-items:stretch;flex-wrap:wrap;gap:10px}
.rf-gifts>div{display:grid;gap:2px;min-width:0;padding:12px 16px;border-radius:18px;background:#ffffff0a;border:1px solid #ffffff17}
.rf-gifts small{font-size:12px;font-weight:800;color:var(--v8-t2,#B9BEC7)}
.rf-gifts b{font-size:19px;font-weight:900;color:#FFD27A}
.rf-gifts i{align-self:center;font-style:normal;font-size:22px;font-weight:900;color:#FFC24A}

/* the ticket with the code */
.rf-ticket{--notch:14px;position:relative;overflow:hidden;min-width:0;display:grid;grid-template-columns:minmax(0,1fr);gap:12px;justify-items:center;padding:22px 20px 18px;border-radius:24px;color:var(--v8-ink,#1A0B05);text-align:center;
  background:linear-gradient(145deg,#FFE29A,#FFC24A 40%,#FF9466);box-shadow:0 26px 50px -26px #FF9466;animation:rfTicket .75s cubic-bezier(.2,.9,.25,1) .1s both;
  -webkit-mask:radial-gradient(circle var(--notch) at 0 62%,transparent 98%,#000) left/51% 100% no-repeat,radial-gradient(circle var(--notch) at 100% 62%,transparent 98%,#000) right/51% 100% no-repeat;
  mask:radial-gradient(circle var(--notch) at 0 62%,transparent 98%,#000) left/51% 100% no-repeat,radial-gradient(circle var(--notch) at 100% 62%,transparent 98%,#000) right/51% 100% no-repeat}
.rf-ticket::after{content:"";position:absolute;inset:0 auto 0 0;width:40%;background:linear-gradient(90deg,transparent,#ffffff70,transparent);animation:rfShine 5.5s ease-in-out 1.2s infinite;pointer-events:none}
.rf-ticket>small{font-size:12.5px;font-weight:900;color:#4a1d06}
.rf-code{max-width:100%;font-family:'Barlow Condensed','Barlow',ui-monospace,monospace;font-size:clamp(28px,8vw,44px);font-weight:700;letter-spacing:.32em;padding-left:.32em;line-height:1.1;white-space:nowrap}
.rf-ticket-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;width:100%;padding-top:12px;border-top:2px dashed #1A0B0533}
.rf-ticket .rf-ticket-actions .btn{flex:1 1 130px;min-width:0;justify-content:center;white-space:nowrap}
.rf-ticket .rf-ticket-actions .btn:not(.secondary):not(.ghost):not(.pro-link):not(.pro-ghost){background:#1A0B05!important;color:#FFE29A!important;border-color:#1A0B05!important;box-shadow:0 10px 22px -12px #1A0B05}
.rf-ticket .rf-ticket-actions .btn.secondary{background:#ffffff66!important;color:#1A0B05!important;border-color:#1A0B0540!important;box-shadow:none}
.rf-ticket-actions .btn .icon{width:17px;height:17px}
.rf-link{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:4px 8px;border:0;border-radius:10px;background:transparent;color:#4a1d06;font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.rf-link span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.rf-link .icon{flex:none;width:15px;height:15px}

/* ---------- panels ---------- */
.rf-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:18px;align-items:start}
.rf-col{display:grid;gap:18px;min-width:0}
.rf-panel{position:relative;min-width:0;margin:0;padding:20px;border-radius:24px;border:1px solid var(--v8-line,#ffffff14);background:var(--v8-card,#17191D);animation:rfUp .55s cubic-bezier(.2,.8,.2,1) .1s both}
.rf-panel h2{display:flex;align-items:center;gap:9px;margin:0 0 12px;font-size:17px;font-weight:900;line-height:1.55}
.rf-panel h2 .icon{flex:none;width:20px;height:20px;color:#FFC24A}
.rf-steps ol{display:grid;gap:12px;margin:0;padding:0;list-style:none;counter-reset:rf}
.rf-steps li{counter-increment:rf;display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 12px;align-items:start}
.rf-steps li::before{content:counter(rf);grid-row:span 2;display:grid;place-items:center;width:34px;height:34px;border-radius:12px;background:#FFC24A24;color:#FFD27A;font-weight:900}
.rf-steps li b{font-size:14.5px;font-weight:900}
.rf-steps li small{font-size:13px;line-height:1.85;color:var(--v8-t2,#B9BEC7)}
.rf-fine{display:flex;gap:9px;align-items:flex-start;margin:14px 0 0;padding:12px 14px;border-radius:16px;background:#ffffff07;border:1px dashed #ffffff22;font-size:12.5px;line-height:1.9;color:var(--v8-t2,#B9BEC7)}
.rf-fine .icon{flex:none;width:17px;height:17px;margin-top:3px;color:#FFC24A}
.rf-fine a{color:#FFB08F;font-weight:800}
.rf-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px}
.rf-stats>div{display:grid;gap:2px;min-width:0;padding:12px;border-radius:16px;background:#ffffff06;text-align:center}
.rf-stats b{font-size:22px;font-weight:900;line-height:1.4}
.rf-stats .earn b{font-size:16px;color:#FFD27A;line-height:1.9}
.rf-stats small{font-size:12px;font-weight:700;color:var(--v8-t3,#8E95A0)}
.rf-claim p{margin:0 0 10px;font-size:13.5px;line-height:1.9;color:var(--v8-t2,#B9BEC7)}
.rf-claim{border-color:#FFC24A55;background:radial-gradient(90% 120% at 100% 0%,#FFC24A1a,transparent 60%),var(--v8-card,#17191D)}
.rf-claim-form input{letter-spacing:.12em;text-transform:uppercase;font-weight:800}
.rf-by{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px}
.rf-by-ic{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:#7CC7FF24;color:#7CC7FF}
.rf-by-ic .icon{width:20px;height:20px}
.rf-by>div{display:grid;gap:2px;min-width:0}
.rf-by b{font-size:14.5px;font-weight:900}
.rf-by small{font-size:12.5px;color:var(--v8-t2,#B9BEC7);line-height:1.8}
.rf-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px 12px;margin-bottom:12px}
.rf-head h2{margin:0}
.rf-head>span{font-size:12px;font-weight:700;color:var(--v8-t3,#8E95A0)}
.rf-friends ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.rf-friends li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px;border-radius:16px;border:1px solid var(--v8-line,#ffffff14);background:#ffffff04;animation:rfUp .4s both;animation-delay:calc(60ms + var(--i,0) * 40ms)}
.rf-friends li>div{display:grid;min-width:0}
.rf-friends li b{font-size:14px;font-weight:900}
.rf-friends li small{font-size:12px;color:var(--v8-t3,#8E95A0)}
.rf-av{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:linear-gradient(140deg,#FFE29A,#FF9466);color:#1A0B05;font-weight:900}
.rf-st{display:inline-block;padding:5px 10px;border-radius:999px;font-size:11.5px;font-weight:900;white-space:nowrap;background:#ffffff10;color:var(--v8-t2,#B9BEC7)}
.rf-st.ok{background:#C5E86C24;color:#C5E86C}
.rf-st.wait{background:#FFC24A1f;color:#FFC24A}
.rf-note{display:block;margin-top:4px}
.rf-empty{display:grid;justify-items:center;gap:6px;text-align:center;padding:26px 20px}
.rf-empty>span{display:grid;place-items:center;width:54px;height:54px;border-radius:18px;background:#FFC24A1f;color:#FFC24A}
.rf-empty>span .icon{width:24px;height:24px}
.rf-empty h2{margin:4px 0 0}
.rf-empty p{margin:0;font-size:13px;color:var(--v8-t2,#B9BEC7);line-height:1.9}
.rf-admin-cfg h2{display:flex;align-items:center;gap:9px}
.rf-admin-cfg h2 .icon{width:20px;height:20px;color:#FFC24A}

/* ---------- wallet: gift credit ---------- */
.wl-gift-chip{display:inline-flex;align-items:center;gap:6px;justify-self:start;width:fit-content;max-width:100%;padding:5px 11px;border-radius:999px;background:#1A0B0522;color:#2a0e04;font-size:12px;font-weight:900}
.wl-gift-chip .icon{width:15px;height:15px}
.wl-tx.gift,.wl-admin-tx li.gift{--t:#FFC24A}
.wl-adm-gift{display:flex;align-items:center;gap:5px;margin-top:3px;font-size:11.5px;font-weight:800;color:#FFC24A}
.wl-adm-gift .icon{width:13px;height:13px}
.wl-adj-now{flex-wrap:wrap}
.wl-adj-now em{flex-basis:100%;display:flex;align-items:center;gap:6px;font-style:normal;font-size:12px;font-weight:800;color:#FFC24A}
.wl-adj-now em .icon{width:14px;height:14px}

@media(max-width:1020px){.rf-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:860px){.rf-hero{grid-template-columns:minmax(0,1fr);padding:22px}}
@media(max-width:600px){
  .rf-hero{padding:18px;border-radius:26px;gap:18px}
  .rf-panel{padding:16px;border-radius:22px}
  .rf-gifts>div{flex:1 1 120px}
  .rf-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rf-stats .earn{grid-column:1/-1}
  .rf-by{grid-template-columns:auto minmax(0,1fr)}
  .rf-by .btn{grid-column:1/-1}
  .rf-gifts b{font-size:17px;white-space:nowrap}
  .rf-friends li{grid-template-columns:auto minmax(0,1fr)}
  .rf-friends li .rf-st{grid-column:2;justify-self:start}
}
@media(max-width:420px){.rf-ticket-actions{flex-direction:column}.rf-ticket .rf-ticket-actions .btn{flex:none;width:100%}}
@media(max-width:360px){.rf-gifts i{display:none}}
@media(prefers-reduced-motion:reduce){.rf-page,.rf-panel,.rf-ticket,.rf-friends li,.rf-hero::before,.rf-ticket::after{animation:none!important}}
.wl-how a{color:#FFB08F;font-weight:800;text-decoration:underline;text-underline-offset:3px}
