:root{--sgm:#5422E8;--sgm2:#7A5CFF;--sgmInk:#171421;--sgmSoft:#F6F3FF;--sgmLine:#E9E2FF;--sgmGood:#1C9B67;--sgmPink:#FF6FB5}
.sgm-shell{max-width:980px;margin:24px auto;color:var(--sgmInk);font-family:inherit}
.sgm-site-strip{position:relative;z-index:50;display:flex;align-items:center;justify-content:center;gap:12px;padding:8px 42px 8px 14px;background:linear-gradient(90deg,#5422E8,#7354F4,#5422E8);background-size:180% 100%;color:#fff;font-size:12px;line-height:1.35;animation:sgmGradient 8s ease infinite}.sgm-site-strip span{opacity:.96}.sgm-site-strip a{display:inline-flex;align-items:center;white-space:nowrap;border-radius:999px;padding:5px 10px;background:#fff;color:#5422E8!important;font-weight:800;text-decoration:none!important}.sgm-site-strip button{position:absolute;right:12px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#fff;font-size:20px;line-height:1;cursor:pointer;opacity:.72}
.sgm-hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px;border-radius:28px;background:radial-gradient(circle at 90% 20%,rgba(255,255,255,.35),transparent 28%),linear-gradient(135deg,#5422E8,#7A5CFF);color:#fff;box-shadow:0 18px 50px rgba(84,34,232,.2)}.sgm-hero:after{content:"";position:absolute;width:170px;height:170px;border-radius:50%;right:-55px;bottom:-80px;background:rgba(255,255,255,.09)}.sgm-hero h2{font-size:clamp(26px,5vw,42px);line-height:1.03;margin:5px 0 10px;color:#fff}.sgm-hero p{margin:0;max-width:620px;color:rgba(255,255,255,.88)}.sgm-kicker{font-size:11px;letter-spacing:.16em;font-weight:800;opacity:.82}.sgm-gem-orb{width:148px;height:148px;flex:0 0 148px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.24);box-shadow:inset 0 1px rgba(255,255,255,.35),0 15px 34px rgba(35,13,112,.22);backdrop-filter:blur(12px)}.sgm-gem-orb span{font-size:30px}.sgm-gem-orb strong{font-size:34px;line-height:1}.sgm-gem-orb small{font-size:11px;margin-top:7px;opacity:.85}
.sgm-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:14px 0}.sgm-stat,.sgm-card{background:#fff;border:1px solid var(--sgmLine);box-shadow:0 10px 30px rgba(34,22,76,.06);border-radius:22px}.sgm-stat{padding:20px;display:flex;flex-direction:column}.sgm-stat-icon{font-size:25px;margin-bottom:10px}.sgm-stat small{font-size:12px;color:#7A718D}.sgm-stat strong{font-size:22px;margin:3px 0}.sgm-stat p,.sgm-card p{font-size:13px;color:#746D82;margin:0}.sgm-card{padding:22px;margin:14px 0}.sgm-card-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.sgm-card-head small{font-size:10px;letter-spacing:.13em;color:#8A80A0;font-weight:800}.sgm-card-head h3{font-size:21px;margin:3px 0 0}.sgm-card-head>strong{font-size:13px;color:var(--sgm)}
.sgm-upgrade-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;margin:14px 0;padding:18px 20px;border:1px solid #E0D4FF;border-radius:22px;background:linear-gradient(135deg,#FFF9FE,#F4F0FF);box-shadow:0 10px 30px rgba(84,34,232,.07)}.sgm-upgrade-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:16px;background:#fff;font-size:24px;box-shadow:0 8px 24px rgba(84,34,232,.10)}.sgm-upgrade-copy small{font-size:9px;letter-spacing:.14em;font-weight:900;color:var(--sgm)}.sgm-upgrade-copy h3{margin:2px 0 4px;font-size:18px}.sgm-upgrade-copy p{margin:0;color:#726981;font-size:12px}.sgm-upgrade-card .sgm-join-btn{margin:0;background:var(--sgm)!important;color:#fff!important;box-shadow:none;white-space:nowrap}
.sgm-progress,.sgm-mini-progress{height:10px;border-radius:999px;background:#EFEAFF;overflow:hidden}.sgm-progress i,.sgm-mini-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#5422E8,#9A7EFF);position:relative}.sgm-progress i:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.6),transparent);animation:sgmShine 2.2s infinite}.sgm-level-card p{margin-top:10px}.sgm-pill{display:inline-flex;align-items:center;border-radius:999px;background:var(--sgmSoft);color:var(--sgm);font-weight:700;font-size:11px;padding:7px 10px}.sgm-missions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.sgm-mission{display:flex;align-items:center;gap:11px;padding:14px;border-radius:17px;background:#FBFAFF;border:1px solid #EFEAFF}.sgm-mission.done{background:#F4FFF9;border-color:#DCF5E7}.sgm-mission-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:13px;background:#fff;box-shadow:0 4px 14px rgba(53,35,110,.08)}.sgm-mission-body{min-width:0;flex:1;display:flex;flex-direction:column}.sgm-mission-body b{font-size:13px}.sgm-mission-body small{font-size:11px;color:#81788F;margin:2px 0 7px}.sgm-mini-progress{height:5px}.sgm-mission>span{font-size:11px;font-weight:800;color:var(--sgm)}
.sgm-ledger>div{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid #F0ECFA}.sgm-ledger>div:last-child{border-bottom:0}.sgm-ledger span{display:flex;flex-direction:column}.sgm-ledger b{font-size:13px}.sgm-ledger small{font-size:11px;color:#8A8394;margin-top:3px}.sgm-ledger strong{font-size:13px}.sgm-ledger .plus{color:var(--sgmGood)}.sgm-ledger .minus{color:#D44866}.sgm-empty{padding:28px;text-align:center;border-radius:16px;background:#FAF8FF;color:#81788F}
.sgm-join-btn,.sgm-primary-link{margin-top:16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;padding:12px 18px;background:#fff!important;color:var(--sgm)!important;font-weight:800;text-decoration:none!important;cursor:pointer;box-shadow:0 8px 24px rgba(33,14,99,.18)}.sgm-join-btn:disabled{opacity:.65;cursor:wait}.sgm-mini-wallet{display:inline-flex;align-items:center;gap:5px;padding:8px 12px!important;border-radius:999px;background:#F4F0FF;color:#5422E8!important;text-decoration:none!important;font-size:12px;font-weight:700}
.sgm-product-earn{display:flex;align-items:center;gap:10px;margin:8px 0 14px;padding:10px 12px;border:1px solid #E4DAFF;border-radius:14px;background:linear-gradient(135deg,#FCFAFF,#F5F0FF);max-width:520px}.sgm-product-gem{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;border-radius:11px;background:#fff;box-shadow:0 5px 15px rgba(84,34,232,.10);font-size:17px}.sgm-product-earn div{display:flex;flex-direction:column;gap:2px}.sgm-product-earn strong{font-size:12px;color:#3B286E;line-height:1.35}.sgm-product-earn small{font-size:10px;color:#827792;line-height:1.35}.sgm-loop-earn{display:inline-flex;align-items:center;margin:4px 0 7px;padding:4px 7px;border-radius:999px;background:#F5F0FF;color:#5422E8;font-size:10px;font-weight:800;line-height:1.2}
.sgm-earn-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 17px;margin:0 0 16px;border:1px solid #E1D6FF;border-radius:18px;background:linear-gradient(135deg,#FCFAFF,#F4F0FF);box-shadow:0 8px 24px rgba(84,34,232,.05)}.sgm-earn-left{display:flex;align-items:center;gap:12px;min-width:0}.sgm-earn-left>span{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border-radius:14px;background:#fff;font-size:21px;box-shadow:0 6px 18px rgba(84,34,232,.09)}.sgm-earn-left div{display:flex;flex-direction:column}.sgm-earn-left small{font-size:9px;letter-spacing:.13em;font-weight:900;color:#8C80A4}.sgm-earn-left strong{font-size:16px;color:#2A1B57}.sgm-earn-left strong em{font-style:normal;font-size:11px;color:#7A6F8E;font-weight:600}.sgm-earn-left p{font-size:11px;color:#7A7187;margin:3px 0 0}.sgm-earn-banner .sgm-join-btn{margin:0;background:#5422E8!important;color:#fff!important;box-shadow:none;white-space:nowrap;font-size:11px;padding:10px 14px}
.sgm-redeem-box{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 16px;border:1px solid #E7DFFF;border-radius:18px;background:linear-gradient(135deg,#FBFAFF,#F4F0FF);margin:0 0 18px}.sgm-redeem-copy{display:flex;align-items:center;gap:12px}.sgm-redeem-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#fff;box-shadow:0 5px 18px rgba(62,38,137,.08);font-size:20px}.sgm-redeem-copy div{display:flex;flex-direction:column}.sgm-redeem-copy b{font-size:13px}.sgm-redeem-copy small{font-size:11px;color:#7C738D}.sgm-redeem-action{display:flex;gap:7px}.sgm-redeem-action input{width:86px!important;min-height:39px!important;border:1px solid #D8CFFF!important;border-radius:12px!important;padding:8px!important}.sgm-redeem-action button{min-height:39px;border:0;border-radius:12px;padding:9px 13px;background:#5422E8;color:#fff;font-weight:800;cursor:pointer}.sgm-applied{display:inline-flex;align-items:center;padding:8px 10px;border-radius:999px;background:#EAFBF2;color:#177B54;font-size:11px;font-weight:800}.sgm-redeem-action .sgm-remove{background:#fff;color:#5422E8;border:1px solid #D8CFFF}
.sgm-celebrate,.sgm-welcome-panel{position:relative;overflow:hidden;margin:24px 0;padding:26px;border-radius:24px;background:linear-gradient(135deg,#5422E8,#7A5CFF);color:#fff;box-shadow:0 18px 44px rgba(84,34,232,.2)}.sgm-celebrate{text-align:center}.sgm-celebrate small,.sgm-welcome-panel small{font-size:10px;letter-spacing:.14em;font-weight:800;opacity:.8}.sgm-celebrate h3,.sgm-welcome-panel h3{font-size:28px;color:#fff;margin:5px 0 7px}.sgm-celebrate p,.sgm-welcome-panel p{max-width:650px;margin:0 auto 14px;color:rgba(255,255,255,.88)}.sgm-celebrate-btn{display:inline-flex!important;align-items:center;justify-content:center;padding:11px 16px;border-radius:999px;background:#fff;color:#5422E8!important;font-weight:900;text-decoration:none!important}.sgm-burst{font-size:42px;animation:sgmPop .8s cubic-bezier(.2,.8,.2,1)}.sgm-welcome-panel{display:flex;align-items:center;gap:18px;text-align:left}.sgm-welcome-panel .sgm-burst{flex:0 0 auto}.sgm-welcome-panel p{margin:0}
.sgm-confetti{position:fixed;z-index:999999;pointer-events:none;width:8px;height:12px;border-radius:2px;background:#5422E8;animation:sgmFall 1.8s linear forwards}.sgm-toast{font-family:inherit}

/* Tiny mobile header Gem balance ---------------------------------------- */
.sgm-header-gems{display:none!important;align-items:center;gap:4px;position:absolute;left:14px;top:50%;transform:translateY(-50%);z-index:30;padding:5px 7px!important;margin:0!important;min-width:0!important;min-height:0!important;border:0!important;border-radius:999px;background:rgba(255,255,255,.18);box-shadow:none!important;color:#5422E8!important;text-decoration:none!important;font-size:13px!important;font-weight:900!important;line-height:1!important;letter-spacing:0!important;white-space:nowrap;-webkit-tap-highlight-color:transparent;backdrop-filter:blur(3px)}
.sgm-header-gems:hover,.sgm-header-gems:focus{color:#5422E8!important;background:rgba(255,255,255,.3);text-decoration:none!important}
.sgm-header-gem-icon{width:17px;height:17px;display:block;flex:0 0 17px}
.sgm-header-gem-icon svg{display:block;width:100%;height:100%;fill:currentColor}
.sgm-header-gems strong{font:inherit!important;color:inherit!important;margin:0!important;padding:0!important}
.sgm-header-gems.sgm-header-mounted{display:inline-flex!important}
@media(min-width:769px){.sgm-header-gems{display:none!important}}

@keyframes sgmPop{0%{transform:scale(.3) rotate(-20deg);opacity:0}70%{transform:scale(1.2) rotate(8deg)}100%{transform:scale(1)}}@keyframes sgmShine{0%{transform:translateX(-120%)}100%{transform:translateX(120%)}}@keyframes sgmFall{to{transform:translateY(105vh) rotate(620deg);opacity:.5}}@keyframes sgmGradient{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}
@media(max-width:700px){.sgm-site-strip{justify-content:flex-start;padding:7px 36px 7px 10px;font-size:10px}.sgm-site-strip a{padding:4px 8px}.sgm-shell{margin:12px 0}.sgm-hero{padding:21px;border-radius:22px;align-items:flex-end}.sgm-gem-orb{width:105px;height:105px;flex-basis:105px}.sgm-gem-orb strong{font-size:27px}.sgm-gem-orb small{font-size:9px;text-align:center}.sgm-grid{grid-template-columns:1fr 1fr}.sgm-stat:last-child{grid-column:1/-1}.sgm-missions{grid-template-columns:1fr}.sgm-card-head{align-items:flex-start;flex-direction:column}.sgm-redeem-box{align-items:flex-start;flex-direction:column}.sgm-redeem-action{width:100%}.sgm-redeem-action input{flex:0 0 88px}.sgm-redeem-action button{flex:1}.sgm-hero h2{font-size:28px}.sgm-hero p{font-size:13px}.sgm-card{padding:17px}.sgm-stat{padding:16px}.sgm-upgrade-card{grid-template-columns:auto 1fr}.sgm-upgrade-card .sgm-join-btn{grid-column:1/-1;width:100%}.sgm-earn-banner{align-items:flex-start;flex-direction:column}.sgm-earn-banner .sgm-join-btn{width:100%}.sgm-earn-left strong{font-size:14px}.sgm-earn-left strong em{display:block;margin-top:2px}.sgm-welcome-panel{align-items:flex-start}.sgm-welcome-panel h3,.sgm-celebrate h3{font-size:23px}.sgm-product-earn{padding:9px 10px;margin-bottom:11px}}

/* v2.2: five lifetime-Gem tier slabs ---------------------------------- */
.sgm-tier-ladder{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:17px}
.sgm-tier{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:82px;padding:10px 6px;border:1px solid #ECE7F8;border-radius:16px;background:#FBFAFE;color:#A29BAE;text-align:center;transition:.2s ease}
.sgm-tier span{font-size:20px;line-height:1;margin-bottom:4px;filter:grayscale(1);opacity:.52}.sgm-tier b{font-size:11px;line-height:1.15}.sgm-tier small{font-size:9px;margin-top:4px;color:#9A92A8}.sgm-tier.achieved{background:#F8F5FF;color:#4D3B74;border-color:#DDD2FF}.sgm-tier.achieved span{filter:none;opacity:1}.sgm-tier.current{background:linear-gradient(145deg,#5422E8,#7A5CFF);color:#fff;border-color:transparent;box-shadow:0 9px 22px rgba(84,34,232,.19);transform:translateY(-2px)}.sgm-tier.current small{color:rgba(255,255,255,.78)}.sgm-tier-note{margin-top:11px;padding:9px 11px;border-radius:12px;background:#F7F4FF;color:#756B87;font-size:11px;line-height:1.4}
@media(max-width:700px){.sgm-tier-ladder{gap:5px}.sgm-tier{min-height:72px;padding:8px 3px;border-radius:13px}.sgm-tier span{font-size:17px}.sgm-tier b{font-size:9px}.sgm-tier small{font-size:8px}.sgm-tier-note{font-size:10px}}
