/* FIST suite V3 — shared glass console language for Home / Game / Promotion / Mine. */
:root{--suite-purple:#7541d7;--suite-purple2:#a769ef;--suite-mint:#3cc796;--suite-gold:#ffb300;--suite-ink:#30283f;--suite-muted:#837a92;--suite-line:rgba(111,76,173,.11);--suite-card:rgba(255,255,255,.79);--suite-shadow:0 24px 66px rgba(81,55,137,.12)}

html[data-ftst-route="index"] .page-inner,html[data-ftst-route="game"] .page-inner,html[data-ftst-route="promotion"] .page-inner,html[data-ftst-route="mine"] .page-inner{max-width:780px!important;padding-left:16px!important;padding-right:16px!important}
html[data-ftst-route="index"] .luxury-bg,html[data-ftst-route="game"] .luxury-bg,html[data-ftst-route="mine"] .luxury-bg{background:radial-gradient(470px 350px at 50% 12%,rgba(168,112,236,.18),transparent 74%),linear-gradient(180deg,rgba(255,255,255,.2),transparent 46%)!important}
html[data-ftst-route="index"] .glow-top,html[data-ftst-route="game"] .glow-top,html[data-ftst-route="mine"] .glow-top{opacity:.52!important}

/* Home — asset command center. */
html[data-ftst-route="index"] .top-bar{min-height:82px!important;padding:12px 2px 14px!important;border-bottom:1px solid rgba(109,80,164,.09)!important}
html[data-ftst-route="index"] .brand-mark-img{width:48px!important;height:48px!important;border:5px solid rgba(255,255,255,.75)!important;border-radius:16px!important;box-shadow:0 10px 28px rgba(255,175,0,.19)!important}
html[data-ftst-route="index"] .brand-name{font-size:18px!important;font-weight:850!important;letter-spacing:.02em!important}html[data-ftst-route="index"] .brand-sub{margin-top:5px!important;font:650 8px/1 ui-monospace,monospace!important;letter-spacing:.17em!important}
html[data-ftst-route="index"] .wallet-chip{height:40px!important;padding:0 16px!important;border-radius:999px!important;background:rgba(255,255,255,.78)!important;box-shadow:0 10px 28px rgba(82,55,137,.08)!important}
html[data-ftst-route="index"] .vault-wrap{margin-top:22px!important}
html[data-ftst-route="index"] .vault-card{min-height:344px!important;overflow:hidden!important;border:1px solid rgba(117,77,185,.11)!important;border-radius:32px!important;background:radial-gradient(260px 220px at 91% 10%,rgba(173,116,238,.22),transparent 68%),linear-gradient(145deg,rgba(255,255,255,.94),rgba(241,236,253,.76))!important;box-shadow:0 30px 78px rgba(79,51,135,.14)!important}
html[data-ftst-route="index"] .vault-card:before{content:"ASSET TERMINAL";position:absolute;right:25px;bottom:17px;z-index:3;color:rgba(91,59,143,.33);font:800 8px/1 ui-monospace,monospace;letter-spacing:.2em}
html[data-ftst-route="index"] .vault-inner{padding:30px 34px!important}
html[data-ftst-route="index"] .coin-medal-img{top:28px!important;right:30px!important;width:72px!important;height:72px!important;border:7px solid rgba(255,255,255,.73)!important;border-radius:24px!important;box-shadow:0 14px 30px rgba(255,175,0,.19)!important}
html[data-ftst-route="index"] .live-badge{height:30px!important;padding:0 12px!important;border-radius:10px!important;background:rgba(255,255,255,.62)!important}.live-pulse{box-shadow:0 0 0 5px rgba(60,199,150,.09),0 0 12px rgba(60,199,150,.5)!important}
html[data-ftst-route="index"] .price-block{margin-top:26px!important}html[data-ftst-route="index"] .price-num{font-size:48px!important;font-weight:880!important;letter-spacing:-.05em!important}html[data-ftst-route="index"] .price-currency{font-size:18px!important}
html[data-ftst-route="index"] .price-foot{margin-top:14px!important}.refresh-btn{width:30px!important;height:30px!important;border-radius:9px!important}
html[data-ftst-route="index"] .contract-bar{min-height:68px!important;margin-top:24px!important;padding:0 14px!important;border-radius:18px!important;background:rgba(255,255,255,.66)!important}.contract-tag-wrap{height:34px!important;padding:0 14px!important;border-radius:11px!important}.contract-action{min-width:100px!important;height:38px!important;border-radius:12px!important}
html[data-ftst-route="index"] .main-sheet{margin-top:20px!important;background:transparent!important}
html[data-ftst-route="index"] .section-pad{padding:0!important}
html[data-ftst-route="index"] .bento-grid{gap:14px!important}
html[data-ftst-route="index"] .bento-main,html[data-ftst-route="index"] .bento-sm{border-radius:24px!important;background:linear-gradient(145deg,rgba(255,255,255,.87),rgba(245,241,255,.7))!important;box-shadow:0 16px 42px rgba(79,52,133,.09)!important}
html[data-ftst-route="index"] .bento-main{min-height:204px!important;padding:24px!important}html[data-ftst-route="index"] .bento-sm{padding:20px!important}
html[data-ftst-route="index"] .bento-icon-img{width:38px!important;height:38px!important;border-radius:12px!important}html[data-ftst-route="index"] .bento-title{font-size:17px!important;font-weight:800!important}html[data-ftst-route="index"] .bento-desc{line-height:1.7!important}
html[data-ftst-route="index"] .section-header{margin:24px 0 12px!important}.section-header .header-deco{width:4px!important;height:18px!important;border-radius:4px!important;background:linear-gradient(var(--suite-purple2),var(--suite-purple))!important}.section-header .header-text{font-size:15px!important;font-weight:800!important}
html[data-ftst-route="index"] .notice-card{min-height:92px!important;border-radius:22px!important;background:rgba(255,255,255,.72)!important;box-shadow:0 14px 36px rgba(78,51,131,.08)!important}

/* Game — a luminous launch bay, no dark dead panel. */
html[data-ftst-route="game"] .scene-body{max-width:none!important;padding:0!important}html[data-ftst-route="game"] .page-header{padding:16px 0 18px!important;border-bottom:1px solid rgba(111,76,173,.09)!important}
html[data-ftst-route="game"] .page-title{font-size:24px!important;font-weight:880!important;letter-spacing:-.03em!important}html[data-ftst-route="game"] .title-underline{width:32px!important;height:3px!important;border-radius:3px!important;background:linear-gradient(90deg,var(--suite-gold),var(--suite-purple))!important}html[data-ftst-route="game"] .page-sub{margin-top:8px!important;font:650 9px/1 ui-monospace,monospace!important;letter-spacing:.13em!important}
html[data-ftst-route="game"] .center-wrap{margin-top:22px!important}
html[data-ftst-route="game"] .preview-stage{height:462px!important;overflow:hidden!important;border:1px solid rgba(117,78,185,.11)!important;border-radius:36px!important;background:radial-gradient(circle at 50% 45%,rgba(160,99,230,.2),transparent 29%),radial-gradient(circle at 50% 45%,rgba(255,255,255,.94),transparent 61%),linear-gradient(145deg,rgba(255,255,255,.78),rgba(229,221,249,.64))!important;box-shadow:0 28px 74px rgba(79,52,135,.13)!important}
html[data-ftst-route="game"] .preview-stage:before,html[data-ftst-route="game"] .preview-stage:after{content:"";position:absolute;left:50%;top:46%;border:1px solid rgba(128,76,211,.15);border-radius:50%;transform:translate(-50%,-50%)}html[data-ftst-route="game"] .preview-stage:before{width:330px;height:330px;box-shadow:0 0 0 28px rgba(124,73,204,.025),0 0 70px rgba(109,60,190,.12)}html[data-ftst-route="game"] .preview-stage:after{width:220px;height:220px;border-style:dashed;animation:suite-spin 24s linear infinite}
html[data-ftst-route="game"] .preview-fog{background:radial-gradient(circle at 50% 46%,rgba(255,255,255,.25),transparent 55%)!important;opacity:1!important}
html[data-ftst-route="game"] .preview-orbit{border-color:rgba(127,73,207,.15)!important}.preview-item{border-color:rgba(255,255,255,.7)!important;background:rgba(255,255,255,.55)!important;box-shadow:0 9px 24px rgba(92,55,157,.11)!important}.preview-icon{color:#7b43d2!important}
html[data-ftst-route="game"] .notice-panel{z-index:5!important;width:min(460px,calc(100% - 56px))!important;min-height:246px!important;padding:38px 34px!important;border:1px solid rgba(116,76,184,.12)!important;border-radius:30px!important;background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(242,237,253,.76))!important;box-shadow:0 24px 58px rgba(79,50,136,.15)!important;backdrop-filter:blur(24px)!important}
html[data-ftst-route="game"] .lock-badge{width:58px!important;height:58px!important;margin-bottom:16px!important;border:6px solid rgba(255,255,255,.75)!important;border-radius:18px!important;background:var(--suite-gold)!important;box-shadow:0 12px 28px rgba(255,178,0,.22)!important}.lock-icon{color:#fff!important}
html[data-ftst-route="game"] .notice-eyebrow{font:800 9px/1 ui-monospace,monospace!important;letter-spacing:.2em!important}.game-scene .notice-main{font-size:19px!important;font-weight:820!important}.game-scene .notice-sub{max-width:360px!important;line-height:1.75!important}.status-pill{height:30px!important;padding:0 12px!important;border-radius:999px!important;background:rgba(60,199,150,.08)!important}.status-count{font-size:9px!important}

/* Promotion — referral operations panel. */
html[data-ftst-route="promotion"] .section-wrap{margin-top:18px!important}
html[data-ftst-route="promotion"] .card-box{overflow:hidden!important;border:1px solid rgba(116,78,180,.1)!important;border-radius:30px!important;background:linear-gradient(145deg,rgba(255,255,255,.9),rgba(243,239,254,.74))!important;box-shadow:0 22px 60px rgba(80,53,136,.11)!important}
html[data-ftst-route="promotion"] .card-inner{padding:25px 28px!important}html[data-ftst-route="promotion"] .section-title-row{margin-bottom:18px!important}html[data-ftst-route="promotion"] .title-bar{width:4px!important;height:18px!important;border-radius:4px!important}html[data-ftst-route="promotion"] .section-title{font-size:16px!important;font-weight:820!important}
html[data-ftst-route="promotion"] .gold-btn{min-height:48px!important;border:0!important;border-radius:15px!important;background:linear-gradient(135deg,var(--suite-purple2),var(--suite-purple))!important;box-shadow:0 12px 28px rgba(112,61,197,.19)!important}
html[data-ftst-route="promotion"] .rate-box{overflow:hidden!important;margin-top:14px!important;border:1px solid rgba(117,79,182,.1)!important;border-radius:22px!important;background:radial-gradient(280px 160px at 0 50%,rgba(177,126,238,.13),transparent 70%),rgba(255,255,255,.63)!important}
html[data-ftst-route="promotion"] .rate-box-bg,html[data-ftst-route="promotion"] .rate-item-bg{display:none!important}
html[data-ftst-route="promotion"] .rate-box-inner{padding:22px!important}html[data-ftst-route="promotion"] .rate-item{padding:7px 0!important}html[data-ftst-route="promotion"] .rate-item-text{color:#5e526e!important;font-size:13px!important}
html[data-ftst-route="promotion"] .progress-wrap{margin:18px 0 15px!important}.progress-track{height:8px!important;border-radius:8px!important}.progress-thumb{width:16px!important;height:16px!important;border:4px solid #fff!important;box-shadow:0 5px 14px rgba(99,52,173,.25)!important}
html[data-ftst-route="promotion"] .share-btn{margin-top:14px!important}
html[data-ftst-route="promotion"] .team-total-row{margin:6px 0 18px!important;padding:13px 18px!important;border:1px solid rgba(114,79,178,.09)!important;border-radius:15px!important;background:rgba(255,255,255,.57)!important}
html[data-ftst-route="promotion"] .team-ref-grid{overflow:hidden!important;border:1px solid rgba(113,79,177,.09)!important;border-radius:18px!important;background:rgba(255,255,255,.58)!important}.ref-item{padding:16px!important}.ref-num{font-size:22px!important;font-weight:850!important}
html[data-ftst-route="promotion"] .earn-grid{gap:12px!important;margin-top:14px!important}html[data-ftst-route="promotion"] .earn-card{min-height:112px!important;border:1px solid rgba(116,77,182,.09)!important;border-radius:20px!important;background:radial-gradient(circle at 90% 10%,rgba(168,107,234,.16),transparent 55%),rgba(255,255,255,.67)!important;box-shadow:0 12px 30px rgba(82,53,140,.07)!important}.earn-amount{font-size:22px!important;font-weight:850!important}.earn-label{margin-top:7px!important}

/* Mine — personal asset cockpit. */
html[data-ftst-route="mine"] .profile-hero{width:auto!important;margin:14px 14px 0!important;overflow:hidden!important;border:1px solid rgba(118,79,183,.1)!important;border-radius:28px!important;background:radial-gradient(300px 180px at 95% 0,rgba(168,112,234,.22),transparent 67%),linear-gradient(145deg,rgba(255,255,255,.92),rgba(243,238,253,.74))!important;box-shadow:0 22px 60px rgba(81,53,137,.11)!important}
html[data-ftst-route="mine"] .profile-row{min-height:122px!important;padding:24px 28px!important}html[data-ftst-route="mine"] .avatar-wrap{width:68px!important;height:68px!important;flex:0 0 68px!important}html[data-ftst-route="mine"] .avatar-ring{border:7px solid rgba(255,255,255,.77)!important;border-radius:22px!important;box-shadow:0 12px 26px rgba(255,175,0,.2)!important}html[data-ftst-route="mine"] .avatar-letter{border-radius:17px!important}html[data-ftst-route="mine"] .profile-info{min-width:0!important;padding-left:2px!important}html[data-ftst-route="mine"] .profile-name{font-size:19px!important;font-weight:850!important}html[data-ftst-route="mine"] .profile-addr{font:650 10px/1 ui-monospace,monospace!important;letter-spacing:.08em!important}html[data-ftst-route="mine"] .badge-row{margin-top:12px!important}html[data-ftst-route="mine"] .badge{height:27px!important;padding:0 11px!important;border-radius:999px!important}
html[data-ftst-route="mine"] .wallet-card{width:auto!important;margin:14px 14px 0!important;overflow:hidden!important;border:1px solid rgba(116,78,180,.1)!important;border-radius:28px!important;background:linear-gradient(145deg,rgba(255,255,255,.9),rgba(241,236,253,.75))!important;box-shadow:0 20px 54px rgba(80,52,136,.1)!important}.wallet-inner{padding:24px 28px!important}.wallet-amount{font-size:38px!important;font-weight:880!important;letter-spacing:-.045em!important}.wallet-actions{gap:12px!important;margin-top:20px!important}.wallet-btn{min-height:48px!important;border-radius:15px!important}.wallet-btn.primary{box-shadow:0 12px 28px rgba(112,61,197,.2)!important}
html[data-ftst-route="mine"] .stats-card{width:auto!important;margin:14px 14px 0!important;overflow:hidden!important;border:1px solid rgba(116,78,180,.09)!important;border-radius:28px!important;background:rgba(255,255,255,.7)!important;box-shadow:0 15px 38px rgba(80,52,136,.08)!important}.stats-inner{padding:20px 12px!important}.stat-num{font-size:22px!important;font-weight:850!important}.stat-lbl{margin-top:7px!important;font-size:10px!important}
html[data-ftst-route="mine"] .section-block{margin-top:23px!important}.section-block .section-title{margin-bottom:12px!important}.section-block .title-text{font-size:14px!important;font-weight:800!important}.section-block .title-deco{display:none!important}
html[data-ftst-route="mine"] .list-card{overflow:hidden!important;border:1px solid rgba(116,78,180,.09)!important;border-radius:28px!important;background:rgba(255,255,255,.72)!important;box-shadow:0 16px 40px rgba(80,52,136,.08)!important}.list-item{min-height:60px!important;padding:0 18px!important}.list-item:not(.last){border-bottom:1px solid rgba(105,77,160,.08)!important}.list-icon-img{width:34px!important;height:34px!important;padding:8px!important;border-radius:11px!important;background:rgba(119,72,202,.07)!important}.list-name{font-size:13px!important;font-weight:650!important}

/* Mine layout guard: legacy component rules must never enlarge or overflow this page. */
html[data-ftst-route="mine"],html[data-ftst-route="mine"] body,html[data-ftst-route="mine"] .tab-page{overflow-x:hidden!important}
html[data-ftst-route="mine"] .profile-hero,html[data-ftst-route="mine"] .profile-row,html[data-ftst-route="mine"] .avatar-wrap,html[data-ftst-route="mine"] .avatar-ring,html[data-ftst-route="mine"] .profile-info,html[data-ftst-route="mine"] .wallet-card,html[data-ftst-route="mine"] .wallet-inner,html[data-ftst-route="mine"] .wallet-actions,html[data-ftst-route="mine"] .wallet-btn{box-sizing:border-box!important;max-width:100%!important}
html[data-ftst-route="mine"] .profile-row{display:flex!important;align-items:center!important;gap:18px!important}
html[data-ftst-route="mine"] .avatar-ring{width:100%!important;height:100%!important}
html[data-ftst-route="mine"] .avatar-status{right:-1px!important;bottom:-1px!important;width:13px!important;height:13px!important;border:3px solid #fff!important;box-sizing:border-box!important}
html[data-ftst-route="mine"] .profile-info{display:flex!important;flex:1 1 auto!important;flex-direction:column!important;align-items:flex-start!important;overflow:hidden!important}
html[data-ftst-route="mine"] .profile-name,html[data-ftst-route="mine"] .addr-row,html[data-ftst-route="mine"] .badge-row{position:static!important;max-width:100%!important;transform:none!important}
html[data-ftst-route="mine"] .addr-row{display:flex!important;align-items:center!important;gap:7px!important;margin-top:6px!important}
html[data-ftst-route="mine"] .badge-row{display:flex!important;flex-wrap:wrap!important;gap:7px!important}
html[data-ftst-route="mine"] .wallet-actions{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;width:100%!important}
html[data-ftst-route="mine"] .wallet-btn{width:100%!important;min-width:0!important;margin:0!important;padding-left:10px!important;padding-right:10px!important}
html[data-ftst-route="mine"] .wallet-btn-text{white-space:nowrap!important}

/* Navigation — quieter and more precise. */
uni-tabbar .uni-tabbar{height:66px!important;padding-bottom:env(safe-area-inset-bottom)!important;border-top:1px solid rgba(105,76,162,.09)!important;background:rgba(250,249,255,.9)!important;box-shadow:0 -14px 42px rgba(77,50,130,.09)!important}uni-tabbar .uni-tabbar__item{position:relative!important}uni-tabbar .uni-tabbar__label{margin-top:3px!important;font-size:9px!important;font-weight:650!important}uni-tabbar .uni-tabbar__icon{width:22px!important;height:22px!important}
html[data-ftst-route="index"] uni-tabbar .uni-tabbar__item:nth-child(1):before,html[data-ftst-route="game"] uni-tabbar .uni-tabbar__item:nth-child(2):before,html[data-ftst-route="mining"] uni-tabbar .uni-tabbar__item:nth-child(3):before,html[data-ftst-route="promotion"] uni-tabbar .uni-tabbar__item:nth-child(4):before,html[data-ftst-route="mine"] uni-tabbar .uni-tabbar__item:nth-child(5):before{content:"";position:absolute;left:50%;top:0;width:22px;height:3px;border-radius:0 0 5px 5px;background:linear-gradient(90deg,var(--suite-purple2),var(--suite-purple));transform:translateX(-50%);box-shadow:0 4px 10px rgba(116,65,215,.28)}

@keyframes suite-spin{to{transform:translate(-50%,-50%) rotate(360deg)}}
@media(max-width:520px){
  html[data-ftst-route="index"] .page-inner,html[data-ftst-route="game"] .page-inner,html[data-ftst-route="promotion"] .page-inner,html[data-ftst-route="mine"] .page-inner{padding-left:13px!important;padding-right:13px!important}
  html[data-ftst-route="index"] .top-bar{min-height:70px!important}.brand-mark-img{width:42px!important;height:42px!important}.wallet-chip{padding:0 12px!important}.chip-text{font-size:9px!important}
  html[data-ftst-route="index"] .vault-card{min-height:316px!important;border-radius:27px!important}.vault-inner{padding:24px 20px!important}.coin-medal-img{width:58px!important;height:58px!important;right:20px!important}.price-num{font-size:39px!important}.contract-bar{padding:0 10px!important}.contract-action{min-width:74px!important}.contract-addr{max-width:120px!important;overflow:hidden!important;text-overflow:ellipsis!important}
  html[data-ftst-route="index"] .bento-grid{grid-template-columns:1fr!important}.bento-col{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important}.bento-main{min-height:170px!important}.bento-sm{min-height:128px!important;padding:16px!important}
  html[data-ftst-route="game"] .page-header{padding-top:12px!important}.page-title{font-size:21px!important}.preview-stage{height:420px!important;border-radius:29px!important}.preview-stage:before{width:285px!important;height:285px!important}.preview-stage:after{width:192px!important;height:192px!important}.notice-panel{width:calc(100% - 36px)!important;min-height:230px!important;padding:30px 22px!important;border-radius:25px!important}.game-scene .notice-main{font-size:17px!important}.game-scene .notice-sub{font-size:10px!important}.status-row{gap:7px!important}
  html[data-ftst-route="promotion"] .card-box{border-radius:25px!important}.card-inner{padding:20px 17px!important}.earn-grid{gap:8px!important}.earn-card{min-height:96px!important}.earn-amount{font-size:18px!important}.earn-label{font-size:9px!important}
  html[data-ftst-route="mine"] .profile-hero{border-radius:25px!important}html[data-ftst-route="mine"] .profile-row{padding:20px!important}html[data-ftst-route="mine"] .avatar-wrap{width:58px!important;height:58px!important;flex-basis:58px!important}html[data-ftst-route="mine"] .profile-name{font-size:17px!important}html[data-ftst-route="mine"] .wallet-card{border-radius:24px!important}html[data-ftst-route="mine"] .wallet-inner{padding:21px 18px!important}html[data-ftst-route="mine"] .wallet-amount{font-size:32px!important}html[data-ftst-route="mine"] .stats-card{border-radius:21px!important}html[data-ftst-route="mine"] .list-card{border-radius:20px!important}
  html[data-ftst-route="mine"] .profile-row{min-height:112px!important;gap:14px!important}html[data-ftst-route="mine"] .avatar-ring{border-width:5px!important;border-radius:18px!important}html[data-ftst-route="mine"] .avatar-letter{border-radius:14px!important}html[data-ftst-route="mine"] .profile-info{padding:0!important}html[data-ftst-route="mine"] .profile-addr{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}html[data-ftst-route="mine"] .badge{height:24px!important;padding:0 9px!important;font-size:9px!important}html[data-ftst-route="mine"] .wallet-actions{gap:9px!important}html[data-ftst-route="mine"] .wallet-btn{min-height:46px!important}
}

@media(max-width:390px){
  html[data-ftst-route="mine"] .profile-row{padding:17px 15px!important;gap:12px!important}html[data-ftst-route="mine"] .avatar-wrap{width:52px!important;height:52px!important;flex:0 0 52px!important}html[data-ftst-route="mine"] .profile-name{font-size:15px!important}html[data-ftst-route="mine"] .profile-addr{font-size:8px!important}html[data-ftst-route="mine"] .badge-row{gap:5px!important;margin-top:9px!important}html[data-ftst-route="mine"] .badge{padding:0 7px!important;font-size:8px!important}html[data-ftst-route="mine"] .wallet-inner{padding:19px 15px!important}html[data-ftst-route="mine"] .wallet-amount{font-size:28px!important}html[data-ftst-route="mine"] .wallet-unit{font-size:11px!important}html[data-ftst-route="mine"] .wallet-btn-text{font-size:13px!important}
}
