/* Account-bound daily check-in celebration; all styles stay inside this component. */
.tw-checkin-layer{font-family:"Segoe UI",system-ui,-apple-system,sans-serif;color:#202743;font-synthesis:none;line-height:normal;text-align:left;--tw-checkin-blue:#355bea;--tw-checkin-ink:#202743;--tw-checkin-muted:#69728c;--tw-checkin-yellow:#ffd84d;--tw-checkin-line:#e0e5f3}
.tw-checkin-layer,.tw-checkin-layer *,.tw-checkin-layer *:before,.tw-checkin-layer *:after,.tw-checkin-flying-star{box-sizing:border-box}
.tw-checkin-layer button{font:inherit;cursor:pointer;touch-action:manipulation;text-transform:none;letter-spacing:normal}
.tw-checkin-layer button:focus-visible{outline:3px solid #355bea;outline-offset:4px}
.tw-checkin-layer button:disabled{cursor:default}
.tw-checkin-layer button:active{transform:translateY(1px)}
.tw-checkin-layer svg,.tw-checkin-flying-star svg{display:block}
.tw-checkin-layer .tw-checkin-reward-title{color:#202743}
.tw-checkin-layer{position:fixed;inset:0;z-index:12000;overflow-y:auto;overscroll-behavior:contain;background:#20274348;backdrop-filter:blur(5px);display:flex;flex-direction:column}
.tw-checkin-layer[hidden]{display:none}
.tw-checkin-layer .tw-checkin-card-stage{flex:1;min-height:min-content;display:grid;place-items:center;padding:28px 20px 34px}
.tw-checkin-layer .tw-checkin-reward-card{position:relative;width:min(610px,100%);background:#fffefb;border:1px solid #ffffff;border-radius:28px;box-shadow:0 28px 100px #151d433d;overflow:hidden;padding:26px 32px 24px;isolation:isolate}
.tw-checkin-layer .tw-checkin-reward-card:before{content:"";position:absolute;top:50px;left:0;right:0;height:230px;background:radial-gradient(ellipse at center,#e8edff 0,transparent 66%);z-index:-1}
.tw-checkin-layer .tw-checkin-card-top{display:flex;justify-content:space-between;align-items:center;padding-right:31px;gap:12px}
.tw-checkin-layer .tw-checkin-card-kicker{font-size:11px;letter-spacing:1.4px;font-weight:850;color:#566a9c;display:flex;align-items:center;gap:7px}
.tw-checkin-layer .tw-checkin-card-kicker svg{width:17px;height:17px;color:var(--tw-checkin-blue)}
.tw-checkin-layer .tw-checkin-total-wallet{display:flex;align-items:center;gap:7px;background:#fff4c9;border:1px solid #f4e6ab;border-radius:24px;padding:7px 12px;font-size:13px;font-weight:850;white-space:nowrap}
.tw-checkin-layer .tw-checkin-total-wallet svg{color:#d3a20b;width:19px;height:19px}
.tw-checkin-layer .tw-checkin-total-wallet.tw-checkin-bump{animation:tw-checkin-counter-pop .45s ease}
.tw-checkin-layer .tw-checkin-close{position:absolute;top:24px;right:19px;display:grid;place-items:center;border:0;background:transparent;color:#7e879e;width:32px;height:32px;border-radius:50%;font-size:24px;font-weight:400;line-height:1}
.tw-checkin-layer .tw-checkin-close:hover{background:#eef1fa}
.tw-checkin-layer .tw-checkin-hero{height:152px;width:260px;margin:17px auto 0;position:relative}
.tw-checkin-layer .tw-checkin-mascot{position:absolute;width:227px;left:10px;top:0;transform-origin:50% 80%;animation:tw-checkin-mascot-arrive .6s cubic-bezier(.22,1.15,.5,1) both}
.tw-checkin-layer .tw-checkin-mascot svg{width:100%;height:auto;overflow:visible}
.tw-checkin-layer .tw-checkin-mascot .tw-checkin-wink{opacity:0;animation:tw-checkin-wink 4.6s steps(1,end) 1.05s infinite}
.tw-checkin-layer .tw-checkin-hero-spark{position:absolute;color:#eab818;animation:tw-checkin-spark-in .65s .2s both}
.tw-checkin-layer .tw-checkin-hero-spark.tw-checkin-a{width:25px;height:25px;left:4px;top:20px;transform:rotate(-12deg)}
.tw-checkin-layer .tw-checkin-hero-spark.tw-checkin-b{width:16px;height:16px;right:3px;top:58px}
.tw-checkin-layer .tw-checkin-hero-spark.tw-checkin-c{width:13px;height:13px;right:32px;bottom:15px;color:#ff8e72}
.tw-checkin-layer .tw-checkin-hero-dot{position:absolute;width:8px;height:8px;border-radius:50%;background:#ffb19b;left:22px;bottom:22px}
.tw-checkin-layer .tw-checkin-reward-badge{position:absolute;right:-4px;bottom:1px;display:flex;align-items:center;justify-content:center;gap:7px;padding:10px 15px;background:var(--tw-checkin-yellow);border:3px solid #fffefb;border-radius:35px;box-shadow:0 5px 12px #d2a82722;transform:rotate(-5deg);font-size:23px;line-height:1;font-weight:900;color:#27324f;animation:tw-checkin-badge-arrive .5s .32s both}
.tw-checkin-layer .tw-checkin-reward-badge svg{width:24px;height:24px;color:#27324f}
.tw-checkin-layer .tw-checkin-reward-title{text-align:center;font-size:32px;letter-spacing:-1.15px;line-height:1.18;margin:23px 0 9px;font-weight:850}
.tw-checkin-layer .tw-checkin-reward-description{text-align:center;font-size:14px;color:var(--tw-checkin-muted);line-height:1.65;margin:0 auto 23px;max-width:390px;min-height:23px}
.tw-checkin-layer .tw-checkin-progress-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;font-size:12px}
.tw-checkin-layer .tw-checkin-progress-heading strong{font-weight:800}
.tw-checkin-layer .tw-checkin-progress-heading span{color:#697791;font-size:11px}
.tw-checkin-layer .tw-checkin-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;list-style:none;padding:0;margin:0 0 20px}
.tw-checkin-layer .tw-checkin-day{min-width:0;position:relative;display:flex;flex-direction:column;align-items:center;gap:7px}
.tw-checkin-layer .tw-checkin-day:before{content:"";position:absolute;left:calc(50% + 22px);top:22px;width:calc(100% - 36px);height:2px;background:#e5e8f2}
.tw-checkin-layer .tw-checkin-day:last-child:before{display:none}
.tw-checkin-layer .tw-checkin-day.tw-checkin-done:before{background:#bbcaff}
.tw-checkin-layer .tw-checkin-day-circle{height:46px;width:46px;position:relative;display:grid;place-items:center;border:1.5px dashed #d3d9e9;border-radius:50%;background:#f5f6fb;color:#9aa4bd;font-size:15px;font-weight:750;z-index:1}
.tw-checkin-layer .tw-checkin-day-circle svg{height:19px;width:19px}
.tw-checkin-layer .tw-checkin-day.tw-checkin-done .tw-checkin-day-circle{background:#e9eeff;color:#4263de;border:1.5px solid #d3ddff}
.tw-checkin-layer .tw-checkin-day.tw-checkin-today .tw-checkin-day-circle{background:var(--tw-checkin-blue);color:white;border:2px solid var(--tw-checkin-blue);box-shadow:0 0 0 4px #e9edff}
.tw-checkin-layer .tw-checkin-day.tw-checkin-today .tw-checkin-tick{animation:tw-checkin-tick-in .4s .65s both}
.tw-checkin-layer .tw-checkin-day-label{font-size:10px;color:#8790a6;white-space:nowrap}
.tw-checkin-layer .tw-checkin-day.tw-checkin-done .tw-checkin-day-label{color:#4f608a;font-weight:700}
.tw-checkin-layer .tw-checkin-day.tw-checkin-today .tw-checkin-day-label{color:var(--tw-checkin-blue);font-weight:850}
.tw-checkin-layer .tw-checkin-day.tw-checkin-final .tw-checkin-day-circle{background:#fff6d7;border:1.5px solid #edcf70;color:#ad7b00}
.tw-checkin-layer .tw-checkin-day.tw-checkin-final .tw-checkin-day-label{color:#9d7306;font-weight:800}
.tw-checkin-layer .tw-checkin-day.tw-checkin-final.tw-checkin-today .tw-checkin-day-circle{background:var(--tw-checkin-yellow);color:#534008;border-color:#e0b735;box-shadow:0 0 0 4px #fff3c3}
.tw-checkin-layer .tw-checkin-day.tw-checkin-final:after{content:"+10";position:absolute;right:-1px;top:-5px;font-size:9px;font-weight:850;background:#fffefb;color:#a57600;padding:1px 3px;border-radius:5px;z-index:2}
.tw-checkin-layer .tw-checkin-bonus{display:flex;align-items:center;gap:12px;background:#fff8df;border:1px solid #f0df9b;border-radius:14px;padding:13px 15px;margin-bottom:20px}
.tw-checkin-layer .tw-checkin-bonus-icon{flex:none;width:37px;height:37px;display:grid;place-items:center;border-radius:11px;background:#ffeb9c;color:#806000}
.tw-checkin-layer .tw-checkin-bonus-icon svg{width:22px;height:22px}
.tw-checkin-layer .tw-checkin-bonus-copy{min-width:0}
.tw-checkin-layer .tw-checkin-bonus-copy strong{font-size:12px;line-height:1.4;display:block;color:#574622}
.tw-checkin-layer .tw-checkin-bonus-copy p{margin:3px 0 0;font-size:11px;line-height:1.5;color:#8b7950}
.tw-checkin-layer .tw-checkin-bonus-value{margin-left:auto;flex:none;font-size:16px;font-weight:900;color:#73530d;white-space:nowrap}
.tw-checkin-layer .tw-checkin-continue{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;border:0;border-radius:12px;background:var(--tw-checkin-blue);color:white;min-height:49px;font-size:14px;font-weight:750;box-shadow:0 4px 0 #2443b6;padding:12px 18px}
.tw-checkin-layer .tw-checkin-continue:hover{background:#2b50dc}
.tw-checkin-layer .tw-checkin-continue svg{height:17px;width:17px}
.tw-checkin-layer .tw-checkin-footnote{text-align:center;font-size:10px;color:#8b94a9;margin:14px 0 0;line-height:1.5}
.tw-checkin-layer .tw-checkin-bonus-earned{background:#fff4bf;border-color:#e8ce67}
.tw-checkin-layer .tw-checkin-bonus-earned .tw-checkin-bonus-icon{background:#f7d54d}
.tw-checkin-layer .tw-checkin-bonus-earned .tw-checkin-bonus-copy strong{color:#654c06}
.tw-checkin-layer .tw-checkin-card-celebrate{animation:tw-checkin-card-enter .45s cubic-bezier(.2,.8,.3,1) both}
.tw-checkin-flying-star{position:fixed;z-index:12001;pointer-events:none;width:var(--tw-checkin-size,22px);height:var(--tw-checkin-size,22px);color:var(--tw-checkin-color,#f4c42e);filter:drop-shadow(0 2px 0 #ad810619);animation:tw-checkin-star-flight var(--tw-checkin-duration,1.3s) var(--tw-checkin-delay,0s) cubic-bezier(.25,.5,.6,1) both}
.tw-checkin-flying-star svg{width:100%;height:100%}
.tw-checkin-layer .tw-checkin-confetti-star{position:absolute;z-index:0;pointer-events:none;width:var(--tw-checkin-size,18px);height:var(--tw-checkin-size,18px);color:var(--tw-checkin-color,#f0bf26);animation:tw-checkin-star-burst 1.55s var(--tw-checkin-delay,0s) ease-out both}
.tw-checkin-layer .tw-checkin-confetti-star svg{height:100%;width:100%}
.tw-checkin-layer .tw-checkin-reward-card>*:not(.tw-checkin-confetti-star){position:relative}
.tw-checkin-layer .tw-checkin-reward-card>.tw-checkin-close{position:absolute;z-index:5}
.tw-checkin-layer .tw-checkin-hidden-symbols{position:absolute;width:0;height:0;overflow:hidden}
@keyframes tw-checkin-card-enter{from{opacity:0;transform:translateY(17px) scale(.97)}to{opacity:1;transform:none}}
@keyframes tw-checkin-mascot-arrive{0%{opacity:0;transform:translateY(15px) scale(.75) rotate(-9deg)}65%{opacity:1;transform:translateY(-3px) scale(1.04) rotate(2deg)}100%{transform:none}}
@keyframes tw-checkin-wink{0%,88%,100%{opacity:0}89%,95%{opacity:1}}
@keyframes tw-checkin-badge-arrive{from{opacity:0;transform:rotate(-12deg) scale(.5)}to{opacity:1;transform:rotate(-5deg) scale(1)}}
@keyframes tw-checkin-spark-in{from{opacity:0;scale:.2}to{opacity:1;scale:1}}
@keyframes tw-checkin-tick-in{from{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}
@keyframes tw-checkin-counter-pop{50%{transform:scale(1.13)}}
@keyframes tw-checkin-star-flight{0%{opacity:0;transform:translate(0,0) scale(.5) rotate(-15deg)}15%{opacity:1}78%{opacity:1}100%{opacity:0;transform:translate(var(--tw-checkin-dx),var(--tw-checkin-dy)) scale(.3) rotate(160deg)}}
@keyframes tw-checkin-star-burst{0%{opacity:0;transform:translate(0,0) scale(.2) rotate(0)}15%,55%{opacity:1}100%{opacity:0;transform:translate(var(--tw-checkin-dx),var(--tw-checkin-dy)) scale(.8) rotate(110deg)}}
@media(max-width:700px){
.tw-checkin-layer .tw-checkin-card-stage{padding:18px 14px 24px;align-content:center}
.tw-checkin-layer .tw-checkin-reward-card{padding:22px 22px 20px;border-radius:24px;max-width:430px}
.tw-checkin-layer .tw-checkin-card-top{padding-right:24px;gap:8px}
.tw-checkin-layer .tw-checkin-card-kicker{font-size:10px;letter-spacing:1px;gap:5px}
.tw-checkin-layer .tw-checkin-total-wallet{font-size:12px;padding:6px 9px}
.tw-checkin-layer .tw-checkin-close{right:11px;top:19px}
.tw-checkin-layer .tw-checkin-hero{width:235px;height:140px;margin-top:17px}
.tw-checkin-layer .tw-checkin-mascot{width:212px;left:6px}
.tw-checkin-layer .tw-checkin-reward-badge{font-size:22px;right:-2px;padding:10px 13px}
.tw-checkin-layer .tw-checkin-reward-title{font-size:28px;letter-spacing:-1px;margin-top:22px}
.tw-checkin-layer .tw-checkin-reward-description{font-size:13px;line-height:1.6;margin-bottom:21px;max-width:295px;min-height:0}
.tw-checkin-layer .tw-checkin-week{gap:4px;margin-bottom:18px}
.tw-checkin-layer .tw-checkin-day-circle{height:37px;width:37px;font-size:13px}
.tw-checkin-layer .tw-checkin-day-circle svg{width:17px;height:17px}
.tw-checkin-layer .tw-checkin-day:before{left:calc(50% + 17px);top:18px;width:calc(100% - 27px)}
.tw-checkin-layer .tw-checkin-day-label{font-size:9px}
.tw-checkin-layer .tw-checkin-day.tw-checkin-final:after{font-size:8px;right:-3px;top:-5px}
.tw-checkin-layer .tw-checkin-progress-heading{font-size:11px}
.tw-checkin-layer .tw-checkin-progress-heading span{font-size:10px}
.tw-checkin-layer .tw-checkin-bonus{padding:11px 12px;gap:10px;margin-bottom:18px}
.tw-checkin-layer .tw-checkin-bonus-icon{height:33px;width:33px}
.tw-checkin-layer .tw-checkin-bonus-copy strong{font-size:11px}
.tw-checkin-layer .tw-checkin-bonus-copy p{font-size:10px}
.tw-checkin-layer .tw-checkin-bonus-value{font-size:15px}
.tw-checkin-layer .tw-checkin-continue{font-size:13px;min-height:48px}
.tw-checkin-layer .tw-checkin-footnote{font-size:9px;margin-top:13px}
}
@media(max-width:360px){
.tw-checkin-layer .tw-checkin-reward-card{padding:20px 16px 18px}
.tw-checkin-layer .tw-checkin-hero{height:126px;width:218px}
.tw-checkin-layer .tw-checkin-mascot{width:195px}
.tw-checkin-layer .tw-checkin-reward-title{font-size:25px}
.tw-checkin-layer .tw-checkin-day-circle{width:33px;height:33px}
.tw-checkin-layer .tw-checkin-day:before{top:16px;left:calc(50% + 15px);width:calc(100% - 23px)}
.tw-checkin-layer .tw-checkin-bonus-value{font-size:13px}
}
@media(max-height:740px){
.tw-checkin-layer .tw-checkin-card-stage{align-content:start}
.tw-checkin-layer .tw-checkin-hero{height:115px;width:218px;margin-top:9px}
.tw-checkin-layer .tw-checkin-mascot{width:190px;left:6px}
.tw-checkin-layer .tw-checkin-reward-title{margin-top:17px}
.tw-checkin-layer .tw-checkin-reward-description{margin-bottom:15px}
.tw-checkin-layer .tw-checkin-reward-card{padding-top:18px;padding-bottom:17px}
.tw-checkin-layer .tw-checkin-bonus{margin-bottom:15px}
.tw-checkin-layer .tw-checkin-week{margin-bottom:16px}
}
@media(prefers-reduced-motion:reduce){
.tw-checkin-layer{animation:none!important;transition:none!important}
.tw-checkin-layer *,.tw-checkin-layer *:before,.tw-checkin-layer *:after{animation:none!important;transition:none!important}
.tw-checkin-flying-star,.tw-checkin-layer .tw-checkin-confetti-star{display:none!important}
.tw-checkin-layer .tw-checkin-mascot .tw-checkin-wink{opacity:0}
.tw-checkin-layer .tw-checkin-card-celebrate,.tw-checkin-layer .tw-checkin-reward-badge,.tw-checkin-layer .tw-checkin-hero-spark,.tw-checkin-layer .tw-checkin-day.tw-checkin-today .tw-checkin-tick{opacity:1;transform:none}
}
