*{box-sizing:border-box}body{margin:0;background:#e5edf6;color:#16314f;font:15px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,a,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}button:focus-visible,a:focus-visible{outline:3px solid #1274cb;outline-offset:3px}button{border:0;background:transparent;color:inherit}a{color:inherit;text-decoration:none}.app{max-width:520px;margin:auto;min-height:100dvh;background:linear-gradient(#f8fbff,#eaf2fc 460px);padding-bottom:100px}header{display:flex;align-items:center;justify-content:space-between;padding:22px 22px 16px}.brand{display:flex;align-items:center;gap:12px;font-size:22px;font-weight:750}.brand small{display:block;font-size:10px;letter-spacing:2px;color:#7b8ca2;font-weight:400}.logo{display:flex;flex-direction:column;align-items:center;justify-content:center;width:55px;height:55px;border-radius:16px;background:#173956;color:#f4d898;font-size:24px;line-height:1.1;box-shadow:0 5px 12px #18355220}.logo span{font-size:6px;letter-spacing:2px;margin-top:5px}.bell{width:42px;height:42px;background:white;border-radius:14px;border:1px solid #d8e4f2;font-size:24px}.status{margin:0 22px 20px;color:#718398;font-size:11px;display:flex;align-items:center;gap:6px}.status i{width:6px;height:6px;background:#d8a65e;border-radius:50%}main{padding:0 20px}h1,h2,h3,p{margin-top:0}h1{font-size:28px;line-height:1.3;letter-spacing:-1px;margin-bottom:8px}h2{font-size:18px;margin-bottom:12px}h3{font-size:14px;margin-bottom:8px}.muted,small{color:#7b8ca2}.eyebrow{font-size:10px;letter-spacing:2px;color:#6688ae;font-weight:700}.card{background:#ffffffdb;border:1px solid #fff;border-radius:25px;padding:24px;margin-bottom:16px;box-shadow:0 8px 30px #2b557008}.hero{background:radial-gradient(ellipse at top right,#d8e9ff,transparent 75%),#fff;padding:28px}.hero p{font-size:12px;color:#718398}.stats{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:25px 0}.stats>div+div{border-left:1px solid #dae5f3;padding-left:20px}.stats small{display:block;font-size:12px}.stats strong{font-size:32px;line-height:1.6}.primary{display:block;width:100%;padding:13px 18px;background:#568fde;color:white;border-radius:14px;font-weight:650;box-shadow:0 6px 14px #578fe526}.secondary{width:100%;padding:12px;border-radius:12px;background:#eaf2ff;color:#4377b5;font-weight:600}.inline{display:flex;justify-content:space-between;align-items:center;gap:12px}.inline>*{min-width:0}.tag{font-size:10px;background:#edf3fa;color:#6986aa;padding:4px 9px;border-radius:8px;white-space:nowrap}.grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tile{background:#eaf2fc;border-radius:16px;padding:17px}.tile b{display:block;font-size:24px}.tile small{font-size:11px}.link{color:#4d81c4;font-size:12px}.balls{display:flex;align-items:center;justify-content:center;gap:10px;margin:22px 0}.ball{display:grid;place-items:center;border-radius:50%;width:47px;height:47px;background:linear-gradient(#edf6ff,#d6e7ff);border:3px solid white;box-shadow:0 3px 12px #7196bf20;font-size:24px;font-weight:700}.ball.total{background:#d5ecdf;color:#397b66}.caption{font-size:11px;color:#8292a7}.tabs{display:flex;gap:5px;overflow:auto;margin:0 0 20px;padding:5px;background:#dfeaf7;border-radius:13px}.tabs button{white-space:nowrap;flex:1;padding:8px 10px;border-radius:10px;font-size:12px}.tabs .active{background:white;color:#397ccc;box-shadow:0 2px 8px #48658410}.choices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.choice{border:1px solid #dbe7f5;border-radius:13px;padding:12px 3px;text-align:center;background:#f8fbff}.choice small{display:block;font-size:10px}.empty{text-align:center;padding:28px 8px;color:#7e90a7;font-size:13px}.empty b{display:block;color:#355474;margin-bottom:8px}.empty .symbol{font-size:38px;opacity:.45;margin-bottom:10px}.row{display:flex;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid #e9eff6;font-size:13px}.row:last-child{border:0}.row span{color:#758ba5}.menu button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:17px 0;border-bottom:1px solid #edf1f7}.menu button:last-child{border:0}.menu button span{color:#96a8bd}.avatar{display:grid;place-items:center;background:#dceafa;border:4px solid white;border-radius:50%;width:65px;height:65px;font-size:21px;font-weight:bold}.rule{font-size:13px;color:#6d8098;line-height:1.9}.rule li{margin:10px 0}nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:520px;display:flex;background:#ffffffed;backdrop-filter:blur(16px);border-top:1px solid #dce7f3;padding:12px 12px calc(12px + env(safe-area-inset-bottom));z-index:5}nav a{flex:1;text-align:center;color:#8594a8;font-size:11px}nav svg{display:block;margin:0 auto 5px;width:23px;height:23px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}nav a.active{color:#377fcb;font-weight:700}dialog{width:calc(100% - 32px);max-width:450px;max-height:80dvh;overflow:auto;border:0;border-radius:24px;padding:25px;color:#16314f;box-shadow:0 25px 100px #13284244}dialog::backdrop{background:#0b213966;backdrop-filter:blur(4px)}.modalhead{display:flex;align-items:center;justify-content:space-between}.modalhead button{font-size:28px}.modalhead h2{margin:0}#modal-body{padding-top:18px;font-size:14px;color:#718398}.footnote{text-align:center;font-size:10px;color:#9baabb;margin:25px 0}@media(max-width:360px){header{padding:18px 16px}.brand{font-size:20px}main{padding:0 12px}.card{padding:19px}.stats strong{font-size:27px}.balls{gap:7px}.ball{width:40px;height:40px}.tabs button{padding:8px}.choices{gap:6px}}
[hidden]{display:none!important}.gate{min-height:100dvh;max-width:520px;margin:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:35px;text-align:center;background:linear-gradient(#f8fbff,#eaf2fc)}.gate .logo{margin-bottom:24px}.gate h1{font-size:25px}.gate p{color:#718398;line-height:1.9}header{padding-top:max(22px,var(--tg-content-safe-area-inset-top,0px))}.brand>div,.row>div{overflow-wrap:anywhere}.row>span{flex-shrink:0}.app{min-height:var(--tg-viewport-stable-height,100dvh)}
input,select,textarea{display:block;width:100%;box-sizing:border-box;padding:12px;border:1px solid #d3e1f2;border-radius:12px;background:#f7faff;color:inherit;font:inherit;margin:7px 0 15px;min-width:0}label{display:block;font-size:13px;color:#64809e}.quick{display:flex;gap:8px;margin-bottom:12px}.quick button{flex:1;background:#e7effa;border-radius:10px;padding:8px}.choice.selected{background:#568fde;color:white;border-color:#568fde}.choice.selected small{color:white}.center{text-align:center}.record{padding:14px 0;border-bottom:1px solid #e5edf6}.record summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;font-size:13px}.record summary span{min-width:0;overflow-wrap:anywhere}.record .rule{padding-top:12px}.positive{color:#139177}.grow{flex:1;min-width:0;overflow-wrap:anywhere}.rank-number{width:22px;font-weight:700}.my-row{background:#ecf4ff}.road{display:grid;grid-template-rows:repeat(6,32px);grid-auto-flow:column;grid-auto-columns:32px;overflow-x:auto;margin:15px 0 24px;gap:3px}.road span{display:grid;place-items:center;border:1px solid;border-radius:50%;font-size:12px}.red{color:#ca6675}.blue{color:#5a88c6}.setting-row{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e2ebf6;padding:12px 0}.setting-row input{width:20px;height:20px;margin:0}.admin-entry{display:flex;justify-content:space-between;padding:17px 0;color:#427abc}.wrap,code{overflow-wrap:anywhere;white-space:pre-wrap}.notice{border-bottom:1px solid #e2ebf6;padding:15px 0}.history-link{display:flex;align-items:center;justify-content:space-between;width:100%;padding:16px 0;border-bottom:1px solid #e2ebf6}.ticket-number{font-size:24px;letter-spacing:3px}.round h2{font-size:16px}.stats strong{overflow-wrap:anywhere}.tag{white-space:normal;text-align:right;max-width:55%}.modalhead button{flex-shrink:0}.modalhead h2{overflow-wrap:anywhere}html[data-theme=night] body{background:#101e30;color:#dae7f7}html[data-theme=night] .app,html[data-theme=night] .gate{background:#122238}html[data-theme=night] .card,html[data-theme=night] dialog,html[data-theme=night] nav{background:#1a2d46;color:#dae7f7;border-color:#263d5b}html[data-theme=night] .tile,html[data-theme=night] .tabs,html[data-theme=night] .secondary,html[data-theme=night] .choice,html[data-theme=night] input,html[data-theme=night] textarea,html[data-theme=night] select{background:#203954;color:#d2e2f6;border-color:#34516f}html[data-theme=night] .tabs .active,html[data-theme=night] .choice.selected{background:#4676b7;color:white}html[data-theme=night] .hero{background:#1c3451}html[data-theme=night] .my-row{background:#294b70}@media(max-width:360px){.row{font-size:12px}.stats strong{font-size:25px}.round .inline{align-items:flex-start}.round .tag{font-size:9px}}

html[data-animation=on] .balls{animation:reveal .25s ease-out}@keyframes reveal{from{opacity:.4;transform:translateY(4px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.balls{animation:none!important}}

.stats{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}.stats strong{font-size:clamp(16px,5vw,26px);white-space:nowrap;letter-spacing:-.6px;font-variant-numeric:tabular-nums}.stats>div{min-width:0}.stats>div+div{padding-left:12px}.stats strong small{display:inline;margin-left:4px}
/* Compact mini-app layout, matching the supplied betting-page reference. */
header{padding:16px;gap:9px;background:#f8fbff;margin-bottom:16px}.brand{gap:10px;font-size:19px;flex:1;min-width:0}.brand>div{white-space:nowrap}.brand small{display:none}.logo{width:43px;height:43px;border-radius:12px;font-size:21px;flex-shrink:0}.header-balance{background:white;border:1px solid #dbe5f1;border-radius:30px;padding:8px 13px;font-size:15px;font-weight:700;white-space:nowrap;max-width:32%;overflow:hidden;text-overflow:ellipsis}.bell{width:38px;height:38px;flex-shrink:0;border-radius:12px}.status{font-size:12px;margin:0 16px 12px}.draw-panel{border-radius:23px;overflow:hidden;background:#fbfdff;border:1px solid white;box-shadow:0 10px 25px #2b557012;margin-bottom:15px}.draw-top{padding:18px 16px 21px}.draw-heading{display:flex;align-items:center;justify-content:center;gap:7px;margin-bottom:16px}.draw-heading h2{font-size:15px;margin:0;white-space:nowrap}.reveal-toggle{display:flex;align-items:center;gap:5px;padding:4px 9px;border-radius:25px;color:#387ac5;background:#e3effe;font-size:12px;font-weight:650;white-space:nowrap}.reveal-toggle i{width:12px;height:12px;background:#629fe8;border-radius:50%}.draw-balls{display:flex;align-items:center;justify-content:center;gap:7px}.result-ball{width:53px;height:53px;flex-shrink:0;border-radius:50%;display:grid;place-items:center;color:white;font-size:25px;font-weight:700;box-shadow:0 6px 12px #18385820}.ball-0{background:linear-gradient(140deg,#4eab9a,#15917e)}.ball-1{background:linear-gradient(140deg,#d26973,#bb444c)}.ball-2{background:linear-gradient(140deg,#6094e4,#3c70ca)}.sum-ball{background:linear-gradient(140deg,#91c5f9,#367dce);color:#102d4f}.operator{font-weight:700;color:#637285}.history-toggle{width:30px;height:31px;background:white;border:1px solid #dbe5f1;border-radius:9px;flex-shrink:0;font-size:18px;color:#68788b}.round-strip{background:#e5eef9;border-top:1px solid #cbdbef;padding:13px 16px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px}.round-strip>div{display:flex;align-items:center;gap:9px;min-width:0}.round-strip b{white-space:nowrap}.round-state{color:#347ecd;white-space:nowrap}.countdown-wrap{color:#78889a}.countdown-wrap b{border:1px solid #cadbef;border-radius:6px;padding:2px 5px;color:#183653;font-variant-numeric:tabular-nums}.play-page main{padding:0 16px}.play-page .tabs{background:transparent;padding:0;gap:0;margin-bottom:13px;border-radius:0}.play-page .tabs button{font-size:12px;padding:12px 6px;flex:1;min-width:0}.play-page .tabs .active{border-radius:9px;color:#16314f;box-shadow:0 2px 6px #19345413}.bet-workspace{display:flex;align-items:stretch;border:1px solid #dce5f1;border-radius:14px;background:white;overflow:hidden;min-height:320px;margin-bottom:14px}.play-categories{width:76px;flex-shrink:0;display:flex;flex-direction:column;background:#e4edf8;border-right:1px solid #cbdbef}.play-categories button{min-height:72px;font-size:13px;font-weight:650;padding:12px 4px;white-space:normal}.play-categories .active{background:#d3e3f8;border-left:3px solid #5a9ded;border-radius:10px;color:#337ec8}.play-options{padding:17px 14px;flex:1;min-width:0}.choice-group{margin-bottom:22px}.choice-group:last-child{margin-bottom:0}.choice-group h3{font-size:13px;color:#69788b;font-weight:550;margin-bottom:10px}.choice{background:white;border:1px solid #dce5f1;border-radius:11px;padding:7px 2px;box-shadow:0 2px 3px #1e42600a;min-height:49px;font-size:15px;font-weight:650}.choice small{font-size:12px;font-weight:550;color:#6a778a;line-height:1.3}.choice.selected{background:#163452;border-color:#163452}.choices{gap:6px}.bet-tray{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(77px + env(safe-area-inset-bottom));width:calc(100% - 20px);max-width:500px;border:1px solid #dbe5f1;border-radius:16px;background:#fff;padding:10px;z-index:6;box-shadow:0 -5px 24px #1739580e}.tray-label,.tray-totals{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px}.tray-label{margin-bottom:7px}.tray-label label{color:#78869b}.stake-controls{display:flex;gap:7px;margin-bottom:6px}.stake-controls button{flex:1;min-width:0;padding:7px 2px;border:1px solid #dbe5f1;border-radius:11px;font-size:16px;font-weight:650}.stake-controls button.active{background:#10283f;color:white;border-color:#10283f}.stake-controls input{width:29%;margin:0;padding:7px 8px;border-radius:11px;background:white;font-weight:650;font-size:16px}.tray-totals{color:#78869b;margin:7px 0}.tray-totals b{color:#17314e}.bet-tray .primary{background:#163452;border-radius:11px;padding:10px;box-shadow:none;font-size:14px}.bet-tray .primary:disabled{opacity:1;background:#e5eef9;color:#8290a1}.test-note{font-size:9px;color:#8a99ad;text-align:center;margin-top:4px}.with-tray{padding-bottom:290px}.play-page .footnote{display:none}.app>nav{height:77px;box-sizing:content-box;padding:0 0 env(safe-area-inset-bottom);align-items:center}.app>nav a{font-size:12px}.app>nav svg{width:24px;height:24px}.modalhead{position:sticky;top:-25px;background:inherit;padding:8px 0;z-index:1}html[data-animation=on] .draw-balls{animation:reveal .25s ease-out}html[data-theme=night] header,html[data-theme=night] .draw-panel,html[data-theme=night] .bet-workspace,html[data-theme=night] .bet-tray{background:#1a2d46;border-color:#344861}html[data-theme=night] .round-strip,html[data-theme=night] .play-categories{background:#203954;border-color:#344861}html[data-theme=night] .header-balance,html[data-theme=night] .history-toggle{background:#203954;border-color:#344861}html[data-theme=night] .play-categories .active{background:#315474;color:#d1e6fc}html[data-theme=night] .tray-totals b,html[data-theme=night] .countdown-wrap b{color:#d1e6fc}html[data-theme=night] .bet-tray input{background:#203954}@media(max-width:360px){header{padding:12px 10px;gap:6px}.brand{font-size:16px;gap:6px}.logo{width:36px;height:36px;font-size:18px}.header-balance{padding:7px 9px;font-size:13px}.bell{width:32px;height:34px}.play-page main{padding:0 10px}.draw-top{padding:14px 10px 17px}.draw-heading h2{font-size:13px}.reveal-toggle{font-size:10px;padding:4px 6px}.result-ball{width:44px;height:44px;font-size:23px}.draw-balls{gap:5px}.round-strip{padding:11px 10px;gap:7px;flex-wrap:wrap}.round-strip>div{gap:7px}.countdown-wrap{margin-left:auto}.play-categories{width:65px}.play-categories button{font-size:12px}.play-options{padding:13px 10px}.choices{gap:5px}.choice{font-size:13px;min-height:47px}.choice small{font-size:11px}.play-page .tabs button{padding:10px 3px;font-size:11px}.stake-controls{gap:5px}.stake-controls button,.stake-controls input{font-size:14px}.tray-totals{font-size:11px}}

header .logo span{font-size:5px;letter-spacing:1px}@media(max-width:360px){header .logo span{font-size:4px;letter-spacing:1px}}

/* Consistent mobile overview pages. */
.page-heading{margin:4px 0 20px}.page-heading h1{font-size:25px;margin:0}.page-heading p{color:#77889d;font-size:13px;margin:6px 0}.challenge-card{text-align:center;padding:25px 22px 0;overflow:hidden}.challenge-card h1{font-size:23px;margin:0}.challenge-stats{display:grid;grid-template-columns:1fr 1fr;margin:23px 0;gap:12px}.challenge-stats>div+div{border-left:1px solid #d7e3f2}.challenge-stats small{display:block;color:#7c8ba0;font-size:13px}.challenge-stats strong{font-size:27px;display:block;overflow-wrap:anywhere;line-height:1.3;margin-top:8px}.challenge-card .primary{margin-top:5px}.challenge-invite{margin:20px -22px 0;background:#e5eef9;border-top:1px solid #d4e2f3;display:flex;align-items:center;gap:12px;padding:16px 20px;text-align:left;color:#6b7c92;font-size:12px}.challenge-invite span{flex:1}.challenge-invite button{background:white;border-radius:22px;padding:8px 16px;white-space:nowrap;color:#16314f;font-weight:650}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px}.section-heading h2{margin:0;font-size:18px}.section-heading .link{font-size:12px}.ticket-overview{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ticket-overview a{background:#e5effb;border:1px solid #cedff5;border-radius:17px;padding:15px 12px;color:inherit;text-decoration:none;min-width:0}.ticket-overview small{font-size:13px;color:#6e7d90}.ticket-overview b{display:block;font-size:29px;margin:5px 0}.ticket-overview em{font-style:normal;font-size:12px;margin-left:6px}.ticket-overview span{font-size:11px;color:#7b8ba0}.home-links a,.home-links button{display:flex;width:100%;align-items:center;justify-content:space-between;padding:15px 0;color:inherit;text-decoration:none;font-size:15px;border-bottom:1px solid #e5ebf4}.home-links>:last-child{border-bottom:0}.rank-summary{display:flex;justify-content:space-between;align-items:center;background:#e8f1fb;padding:14px;border-radius:12px;margin-top:15px;font-size:13px}.rank-summary b{font-size:23px}.rank-name{min-width:0;overflow-wrap:anywhere}.row>b{flex-shrink:0}.profile-heading{display:flex;align-items:center;gap:15px}.profile-name{min-width:0;flex:1}.profile-name h2{overflow-wrap:anywhere;margin:0;font-size:21px}.profile-card .stats strong{font-size:27px;overflow-wrap:anywhere}.ticket-number{overflow-wrap:anywhere}.history-link{gap:10px}.history-link b{overflow-wrap:anywhere}html[data-theme=night] .challenge-invite,html[data-theme=night] .ticket-overview a,html[data-theme=night] .rank-summary{background:#203954;border-color:#344861}html[data-theme=night] .challenge-invite button{background:#315474;color:#d1e6fc}@media(max-width:360px){.challenge-card{padding:22px 16px 0}.challenge-invite{margin-left:-16px;margin-right:-16px;padding:14px}.challenge-stats strong{font-size:23px}.ticket-overview{gap:8px}.ticket-overview a{padding:12px 9px}.profile-card .stats strong{font-size:22px}}

.challenge-stats strong.long-number,.profile-card .stats strong.long-number{font-size:17px;letter-spacing:-.5px;white-space:nowrap}

.admin-health{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:15px 0}.admin-health>div{min-width:0;background:#e8f1fb;padding:12px;border-radius:12px}.admin-health small,.admin-health b{display:block;overflow-wrap:anywhere}.admin-health small{font-size:11px;color:#75859a}.admin-health b{font-size:14px;margin-top:5px}.admin-health+.caption{overflow-wrap:anywhere}html[data-theme=night] .admin-health>div{background:#203954}

.bell{position:relative}.bell.has-unread:after,.unread-dot{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:#d64949}.bell.has-unread:after{position:absolute;right:4px;top:4px;border:2px solid white;width:11px;height:11px}.unread-dot{margin-right:5px}.message-card .section-heading{align-items:flex-start}.message-card .section-heading small{font-size:11px}.message-card .section-heading small:last-child{text-align:right}.message-card h2{font-size:18px;overflow-wrap:anywhere}.message-card p{margin:10px 0 0}.message-toolbar{margin-bottom:18px}.message-toolbar small{color:#77889d}

.career-grid{display:grid;grid-template-columns:1fr 1fr}.career-grid>div{padding:16px 10px;border-bottom:1px solid #dbe5f2;min-width:0}.career-grid>div:nth-child(odd){border-right:1px solid #dbe5f2}.career-grid>div:nth-last-child(-n+2){border-bottom:0}.career-grid small{display:block;font-size:12px;color:#78889d}.career-grid strong{display:block;font-size:20px;margin-top:7px;overflow-wrap:anywhere}html[data-theme=night] .career-grid>div{border-color:#344861}@media(max-width:360px){.career-grid strong{font-size:17px}.career-grid>div{padding:13px 8px}}

.purchase-note{background:#e8f1fb;border-radius:14px;padding:14px;color:#27496b}.purchase-shortcuts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0 20px}.purchase-shortcuts button{padding:9px 4px;border:1px solid #d3e1f2;border-radius:12px;background:#edf4fc;color:#315d8a}.purchase-total{font-weight:650;overflow-wrap:anywhere}#ticket-numbers{width:100%;resize:vertical;font:inherit}html[data-theme=night] .purchase-note,html[data-theme=night] .purchase-shortcuts button{background:#203954;color:#d1e6fc}
.lottery-page .tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 15px}.lottery-page .tabs button{border:1px solid #c6d9ec;border-radius:10px;font-size:14px;padding:10px}.lottery-page .tabs button.active{background:linear-gradient(120deg,#96c4f0,#5b9fe4);color:#173553}.lottery-page .card{margin-bottom:15px;padding:16px;border-radius:18px}.lottery-page h2{font-size:16px;margin:0}.lottery-pool{text-align:center;background:linear-gradient(140deg,#dbeafa,#fff)}.lottery-pool p{font-size:13px;color:#788493;margin:8px 0 12px}.lottery-pool .pool-value{font-size:38px;color:#347dc5;line-height:1.4}.lottery-page .gold-card{border:1px solid #e2d1ad;background:linear-gradient(140deg,#fffaf0,#fff)}.gold-card .pool-value{color:#89601e}.lottery-badges{display:flex;justify-content:center;flex-wrap:wrap;gap:6px;margin:15px 0 10px}.lottery-badges span,.order-strip span{border:1px solid #d2dfef;background:#e7effa;border-radius:12px;padding:3px 10px;font-size:11px}.lottery-clock{display:grid;grid-template-columns:1fr 1fr;background:#e6eef9;border:1px solid #d5e1f0;border-radius:12px;padding:12px;margin-top:12px}.lottery-clock div+div{border-left:1px solid #d5e1f0}.lottery-clock small,.lottery-clock b{display:block}.lottery-clock small{font-size:11px;color:#8793a3}.lottery-clock b{font-size:18px}.lottery-result .section-heading{margin-bottom:16px}.lottery-result small{font-size:12px;color:#7d8897}.lottery-digits{display:flex;justify-content:center;gap:12px;margin:14px 0}.lottery-digits b{font-size:34px;min-width:34px;text-align:center}.gold-digits{gap:7px}.gold-digits b{font-size:26px;border:1px solid #e3d1ad;border-radius:13px;background:linear-gradient(#fff6e5,#fff);width:40px;padding:8px 2px;color:#6b7685}.lottery-prizes{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:12px 0 16px}.lottery-prizes>div{background:#eaf2fc;border:1px solid #dbe5f2;border-radius:12px;padding:12px 3px;text-align:center;min-width:0}.lottery-prizes small,.lottery-prizes span,.lottery-prizes strong{display:block}.lottery-prizes small,.lottery-prizes span{font-size:11px;color:#7e8896}.lottery-prizes strong{font-size:16px;color:#347bbd}.lottery-prizes em{display:inline-block;font-size:10px;font-style:normal;border:1px solid #d5dfed;border-radius:10px;padding:0 5px;color:#7b8797}.lottery-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:15px 0}.lottery-stats>div{background:#fff;border:1px solid #dce5ef;border-radius:13px;padding:13px 8px;min-width:0}.lottery-stats small{display:block;font-size:10px;color:#768596}.lottery-stats b{display:block;font-size:19px;overflow-wrap:anywhere}.lottery-stats em{font-size:10px;font-style:normal}.lottery-purchase-link{display:block;position:relative;width:100%;padding:16px;text-align:left;border:1px solid #ceddef;border-radius:16px;background:linear-gradient(110deg,#e6f0fc,#fff);margin:16px 0;color:#193654}.lottery-purchase-link b,.lottery-purchase-link span{display:block;margin-right:10px}.lottery-purchase-link span{font-size:11px;color:#7c899b}.lottery-purchase-link i{position:absolute;right:13px;top:18px;font-size:24px}.lottery-history summary,.lottery-explanation summary{cursor:pointer;font-size:14px}.lottery-history summary{display:flex;justify-content:space-between;align-items:center;gap:5px}.lottery-history summary small{font-size:10px;color:#7e8998}.lottery-history-row{display:flex;align-items:center;gap:8px;width:100%;padding:12px 0;background:none;border:0;border-bottom:1px solid #e5ebf3;text-align:left;color:inherit}.lottery-history-row>span:first-child{flex:1}.lottery-history-row small{display:block;color:#7f8b9b;font-size:10px}.lottery-history-row strong{letter-spacing:2px;border:1px solid #dfcda8;background:#fff6e3;color:#8c641e;border-radius:8px;padding:2px 8px}.lottery-explanation p{font-size:13px;line-height:1.9}.order-strip{display:flex;gap:4px;margin:8px 0}.order-strip span{padding:4px;font-size:10px;border-radius:7px}.lottery-buybar{position:fixed;bottom:calc(77px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:100%;max-width:520px;background:#fff;border-top:1px solid #d6e0ee;z-index:9;padding:11px 15px;display:flex;justify-content:space-between;gap:8px;align-items:center}.lottery-buybar b,.lottery-buybar small{display:block}.lottery-buybar b{font-size:17px;color:#89601e}.lottery-buybar small{font-size:10px;color:#7c8797}.lottery-buybar button{padding:12px 20px;background:linear-gradient(120deg,#efc16f,#d99b31);color:#302009;border:2px solid #ffefcf;border-radius:13px;font-weight:700;box-shadow:0 3px 8px #d4bc91}.lottery-super{padding-bottom:190px}.proof-title{text-align:center;margin:15px 0;color:#397ec0}.proof-title h2{font-size:18px;color:#19344d}.proof-step{text-align:center;background:#eaf2fd;border:1px solid #dbe5f3;border-radius:13px;padding:13px;margin:12px 0}.proof-step h3{font-size:14px;margin:0 0 12px}.proof-step p{font-size:12px}.proof-step code{display:block;padding:12px;border:1px solid #cfddec;border-radius:9px;overflow-wrap:anywhere;white-space:normal;background:#e2ecf9;font-size:11px}.proof-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;text-align:left}.proof-grid>div{padding:10px;background:#fff;border:1px solid #d9e3ef;border-radius:10px;min-width:0}.proof-grid small{display:block;color:#7b8797;font-size:11px}.proof-grid b{font-size:21px;color:#3b7dbd}.proof-grid span{float:right;font-size:10px;color:#7b8797}.proof-grid>div>span{margin-top:9px}html[data-theme=night] .lottery-page .card,html[data-theme=night] .lottery-buybar,html[data-theme=night] .lottery-stats>div,html[data-theme=night] .proof-grid>div{background:#1a2d46;border-color:#425269}html[data-theme=night] .lottery-prizes>div,html[data-theme=night] .lottery-clock,html[data-theme=night] .proof-step,html[data-theme=night] .proof-step code,html[data-theme=night] .lottery-purchase-link{background:#203954;color:#d1e6fc;border-color:#425269}@media(max-width:360px){.lottery-page .card{padding:13px}.lottery-digits{gap:6px}.gold-digits b{width:36px}.lottery-buybar{padding:9px 11px}.lottery-buybar button{padding:10px 14px}.lottery-stats b{font-size:16px}.proof-grid>div{padding:8px}.proof-grid b{font-size:18px}}
/* Amounts and voucher identifiers must remain readable on narrow screens. */
.ticket-overview b{font-size:clamp(16px,4.8vw,23px);overflow-wrap:anywhere}
.lottery-prizes strong{font-size:clamp(13px,3.8vw,18px);overflow-wrap:anywhere}

.round-strip.maintenance .round-state{color:#a3680a}.round-strip.maintenance .countdown-wrap{white-space:normal;flex:1;min-width:0;max-width:58%;line-height:1.5}.round-strip.maintenance .countdown-wrap span{white-space:normal}.round-strip.maintenance #round-countdown{display:none}@media(max-width:360px){.round-strip.maintenance .countdown-wrap{max-width:100%;flex-basis:100%;margin-left:0}}

/* Theme surfaces and text use one neutral palette across every mini-app view. */
.theme-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:22px 0}
.theme-options button{padding:10px 4px;border:1px solid #c8d9eb;border-radius:11px;color:#52677e;font-weight:650}
.theme-options button.active{background:linear-gradient(120deg,#96c4f0,#5b9fe4);color:#16314f;border-color:#85b2e3}
.theme-card .caption{margin-bottom:0;line-height:1.8}.theme-card .section-heading small{white-space:nowrap}
html[data-theme=night]{color-scheme:dark;--night-bg:#0e0f11;--night-panel:#181a1e;--night-raised:#25282e;--night-line:#383c43;--night-text:#f0f1f3;--night-muted:#b1b7c1;--night-selected:#d4d9e1}
html[data-theme=night] body,html[data-theme=night] .app,html[data-theme=night] .gate{background:var(--night-bg);color:var(--night-text)}
html[data-theme=night] :is(header,.card,dialog,.draw-panel,.bet-workspace,.bet-tray,.lottery-page .card,.lottery-buybar,.lottery-stats>div,.proof-grid>div){background:var(--night-panel);color:var(--night-text);border-color:var(--night-line);box-shadow:0 8px 24px #0002}
html[data-theme=night] nav{background:#111216;color:var(--night-text);border-color:var(--night-line)}
html[data-theme=night] :is(.tile,.tabs,.secondary,.choice,input,textarea,select,.hero,.round-strip,.play-categories,.header-balance,.history-toggle,.challenge-invite,.ticket-overview a,.rank-summary,.admin-health>div,.purchase-note,.purchase-shortcuts button,.lottery-prizes>div,.lottery-clock,.proof-step,.proof-step code,.lottery-purchase-link,.lottery-badges span,.order-strip span,.quick button,.reveal-toggle,.tag){background:var(--night-raised);color:var(--night-text);border-color:var(--night-line)}
html[data-theme=night] :is(small,.muted,.caption,.status,.eyebrow,.rule,.empty,.row span,label,.menu button span,.hero p,.gate p,.page-heading p,.challenge-stats small,.ticket-overview small,.ticket-overview span,.admin-health small,.career-grid small,.lottery-pool p,.lottery-clock small,.lottery-result small,.lottery-prizes small,.lottery-prizes span,.lottery-prizes em,.lottery-stats small,.lottery-purchase-link span,.lottery-history summary small,.lottery-history-row small,.lottery-buybar small,.proof-grid small,.proof-grid span,.choice small,.choice-group h3,.operator,.countdown-wrap,.tray-label label,.tray-totals,.test-note,.footnote,.message-toolbar small){color:var(--night-muted)}
html[data-theme=night] #modal-body{color:var(--night-text)}
html[data-theme=night] :is(.empty b,.tray-totals b,.countdown-wrap b,.proof-title h2,.proof-step h3,.lottery-clock b,.header-balance,.history-toggle){color:var(--night-text)}
html[data-theme=night] :is(.link,.admin-entry,.blue,.round-state,.proof-title,.proof-grid b,.lottery-prizes strong,.lottery-pool .pool-value){color:#a7c9f8}
html[data-theme=night] .gold-card .pool-value,html[data-theme=night] .lottery-buybar b{color:#efbc70}
html[data-theme=night] :is(.row,.record,.menu button,.stats>div+div,.challenge-stats>div+div,.career-grid>div,.setting-row,.notice,.history-link,.home-links a,.home-links button,.lottery-clock div+div,.lottery-history-row,.lottery-prizes em,.countdown-wrap b){border-color:var(--night-line)}
html[data-theme=night] :is(.primary,.tabs .active,.play-page .tabs .active,.lottery-page .tabs button.active,.choice.selected,.stake-controls button.active,.theme-options button.active){background:linear-gradient(120deg,#dce0e6,#b9c1cd);color:#181b21;border-color:#aeb6c2;box-shadow:none}
html[data-theme=night] .choice.selected small{color:#303a47}
html[data-theme=night] :is(.primary:disabled,.bet-tray .primary:disabled,button:disabled){opacity:1;background:#30343c;color:#b5bdc8;border-color:#414751;box-shadow:none}
html[data-theme=night] :is(.bell,.avatar,.challenge-invite button){background:var(--night-raised);color:var(--night-text);border-color:var(--night-line)}
html[data-theme=night] .bell.has-unread:after{border-color:var(--night-panel)}
html[data-theme=night] .avatar{flex-shrink:0}
html[data-theme=night] :is(.play-categories .active,.my-row){background:#343941;color:var(--night-text);border-color:#aeb9c8}
html[data-theme=night] :is(.stake-controls button,.theme-options button){border-color:var(--night-line);color:var(--night-muted)}
html[data-theme=night] .stake-controls button.active,html[data-theme=night] .theme-options button.active{color:#181b21}
html[data-theme=night] nav a{color:var(--night-muted)}html[data-theme=night] nav a.active{color:#f0f1f3}
html[data-theme=night] .ball{background:#323b48;color:#f0f1f3;border-color:#4c5665;box-shadow:none}
html[data-theme=night] .ball.total{background:#24493e;color:#d1f0df}
html[data-theme=night] .gold-digits b,html[data-theme=night] .lottery-history-row strong{background:#302b23;color:#efcc94;border-color:#716044}
html[data-theme=night] .round-strip.maintenance .round-state{color:#efbc70}
html[data-theme=night] .positive{color:#75d6b4}html[data-theme=night] .red{color:#f3a3b1}
html[data-theme=night] input::placeholder,html[data-theme=night] textarea::placeholder{color:#aeb6c2;opacity:1}
html[data-theme=night] .modalhead{background:var(--night-panel)}
html[data-theme=night] progress{accent-color:#c5ceda}
html[data-theme=night] :is(button,a,input,select,textarea):focus-visible{outline:3px solid #a7c9f8;outline-offset:3px}
html[data-theme=day]{color-scheme:light}

/* Home reference alignment: paired pools and compact invitation footer. */
.challenge-invite .invite-avatar{flex:0 0 26px;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#65a0e8;color:#10283f;border:2px solid white;font-size:20px;line-height:1}
.home-pools .ticket-overview small::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:#159c87;margin-right:5px}
.home-pools .ticket-overview a:first-child{border-color:#8fb8ed;background:#dae8fa}
html[data-theme=night] .home-pools .ticket-overview a:first-child{background:#303238;border-color:#747780}
html[data-theme=night] .challenge-invite .invite-avatar{background:#c2cad7;color:#171b22;border-color:#353a43}

/* Leaderboard: reference podium, summary and aligned ranking rows. */
.rank-page>.tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin-bottom:14px}.rank-page>.tabs button{padding:11px 2px;font-size:12px;white-space:nowrap}
.rank-overview{display:grid;grid-template-columns:1fr 1fr;padding:0;overflow:hidden;text-align:center}.rank-overview>div{padding:18px 8px;min-width:0}.rank-overview>div+div{border-left:1px solid #d7e3f2}.rank-overview small{display:block;color:#7c8ba0;font-size:12px}.rank-overview strong{display:block;font-size:25px;margin-top:5px;overflow-wrap:anywhere}.rank-overview .rank-gap{font-size:clamp(16px,5vw,25px)}
.rank-poster{width:100%;margin:0 0 16px;border:1px solid #cdd9e8}.rank-board{padding:0;overflow:hidden}.rank-podium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-items:end;padding:30px 12px 18px}.podium-place{display:flex;flex-direction:column;align-items:center;min-width:0;gap:6px;padding-top:30px}.podium-place.place-1{padding-top:0;padding-bottom:18px}.rank-avatar{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#e2ebf7;border:2px solid #cad7e8;color:#536b8b;flex-shrink:0;font-size:18px}.podium-place .rank-avatar{width:48px;height:48px}.place-1 .rank-avatar{width:56px;height:56px;border-color:#d9b468}.podium-crown{font-size:24px;color:#bd8a30;line-height:1}.podium-medal{width:22px;height:22px;border-radius:50%;background:#d6dfec;color:#283b53;display:grid;place-items:center;font-weight:700}.place-1 .podium-medal{background:#f1d68d}.place-3 .podium-medal{background:#d6a675}.podium-name{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.podium-place>b{max-width:100%;overflow-wrap:anywhere;font-size:14px}.vacant{color:#7c8ba0}
.rank-list-row{display:grid;grid-template-columns:24px 40px minmax(0,1fr) auto;gap:10px;align-items:center;padding:14px;border-top:1px solid #dce5ef}.rank-position{color:#7c8ba0;text-align:center}.rank-list-name{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:13px}.rank-list-row>b{font-size:14px;font-variant-numeric:tabular-nums}
html[data-theme=night] .rank-page .rank-overview>div+div,html[data-theme=night] .rank-list-row{border-color:var(--night-line)}html[data-theme=night] .rank-avatar{background:#25282e;border-color:#3e424a;color:#d1d6de}html[data-theme=night] .place-1 .rank-avatar{border-color:#bbc2cf}html[data-theme=night] .podium-crown{color:#c2cad5}html[data-theme=night] .rank-page>.tabs button.active{background:var(--night-panel);color:var(--night-text);box-shadow:none}html[data-theme=night] .rank-poster{border-color:#454a52}
@media(max-width:360px){.rank-list-row{gap:7px;padding:12px 9px;grid-template-columns:20px 32px minmax(0,1fr) auto}.rank-list-row .rank-avatar{width:32px;height:32px;font-size:15px}.rank-list-row>b{font-size:12px}.rank-podium{gap:5px;padding-left:8px;padding-right:8px}.podium-place>b{font-size:12px}}
.profile-settings{flex-shrink:0;align-self:flex-start;padding:6px 2px}.profile-name small{display:block;margin-top:4px;color:#6f8198;overflow-wrap:anywhere}.menu{padding-top:6px;padding-bottom:6px}.menu-title{margin:10px 0 2px;font-size:13px;color:#6f8198;font-weight:600}.menu button{gap:10px;text-align:left}.menu-label{min-width:0;overflow-wrap:anywhere;color:inherit}.menu .menu-note{flex-shrink:0;color:#8394a9;font-size:12px}.menu .admin-entry{padding:13px 0}.career-more{margin-top:12px;border-top:1px solid #dbe5f2;padding-top:10px}.career-more summary{cursor:pointer;font-size:13px;color:#4d81c4;padding:4px 0}.career-more .career-grid{margin-top:8px}.career-card>.caption{margin-bottom:0}.account-info{margin-bottom:14px}.account-info h3{margin:0 0 4px;font-size:14px}.account-info .row b{min-width:0;text-align:right;overflow-wrap:anywhere}.settings-links{display:grid;gap:8px;margin-top:14px}
html[data-theme=night] .profile-name small,html[data-theme=night] .menu-title,html[data-theme=night] .menu .menu-note{color:var(--night-muted)}html[data-theme=night] .career-more{border-color:var(--night-line)}html[data-theme=night] .career-more summary{color:#a7c9f8}
.menu .menu-label{color:#16314f}html[data-theme=night] .menu .menu-label{color:var(--night-text)}.profile-name h2{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;word-break:break-all}
.account-info .row span{flex-shrink:0}.account-info .row b{flex:1;white-space:normal;word-break:break-all}
.pill-link{padding:5px 11px;border-radius:999px;background:#e3eefb;color:#3f73b5;font-size:12px;font-weight:600;white-space:nowrap}
.balance-box{display:grid;justify-items:center;gap:3px;padding:16px 10px;margin-bottom:12px;border:1px solid #cfdcec;border-radius:14px;background:#eef4fb;text-align:center}.balance-box small{font-size:12px;color:#6f8198}.balance-box strong{font-size:24px;color:#8a6a2c}.balance-box span{font-size:11px;color:#8394a9}
.career-grid strong.off{color:#8394a9;font-size:15px;font-weight:600}
.function-center h2{margin:0 0 12px;font-size:18px}.function-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 4px}.function-grid button{display:grid;justify-items:center;gap:6px;padding:4px 0;font-size:12px;color:#34465c;min-width:0}.function-grid button>span:last-child{max-width:100%;overflow-wrap:anywhere;text-align:center}.function-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#e6effa;color:#4d81c4}.function-center .admin-entry{margin-top:12px;border-top:1px solid #e2ebf6;padding:13px 0 2px}
.settings-block{padding:14px 0;border-bottom:1px solid #e2ebf6}.settings-block:first-child{padding-top:0}.settings-block:last-child{border-bottom:0}.settings-block h3{margin:0 0 10px;font-size:14px}.settings-block .theme-options{margin:0 0 8px}.settings-block .caption{margin:0}
.account-body{display:grid;grid-template-columns:52px minmax(0,1fr);gap:12px;align-items:center}.account-body .avatar{width:52px;height:52px;font-size:19px;border-width:3px}.account-body .row{padding:7px 0}.account-body .row:last-child{border-bottom:0}
.switch-row{gap:12px;cursor:pointer}.switch-row>span{min-width:0;display:grid;gap:3px}.switch-row b{font-size:13px}.switch-row small{font-size:11px;color:#78889d}
.switch-row input[type=checkbox]{appearance:none;-webkit-appearance:none;flex-shrink:0;width:42px;height:24px;border-radius:12px;background:#cdd8e6;position:relative;transition:background .2s;cursor:pointer}.switch-row input[type=checkbox]::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:transform .2s}.switch-row input[type=checkbox]:checked{background:#568fde}.switch-row input[type=checkbox]:checked::after{transform:translateX(18px)}.switch-row input:disabled{opacity:.6}
.settings-block>.secondary{margin-top:12px}.settings-block.menu button{padding:13px 0}.about b{display:block;margin-bottom:6px;font-size:13px}.about p{margin:0 0 6px;font-size:12px;line-height:1.7;color:#5d6f85}
.off-block{margin-top:12px;padding:14px;border-radius:14px;background:#f2f6fb}.off-block h3{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:0 0 6px;font-size:14px}.off-block h3 em,.off-block h3 small{font-style:normal;font-size:11px;font-weight:500;color:#8394a9}.off-block .caption{margin:0 0 8px}.off-block .secondary{margin-top:4px}
.invite-code{display:grid;gap:10px;justify-items:center;padding:16px 12px;border-radius:14px;background:#f2f6fb;text-align:center}.invite-code small{color:#6f8198;font-size:12px}.invite-code strong{font-size:22px;letter-spacing:1px;overflow-wrap:anywhere;max-width:100%}.invite-code button{width:100%}
.invite-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:8px;margin-top:12px}.invite-stats>div{padding:12px 10px;border-radius:12px;background:#f2f6fb;min-width:0}.invite-stats small{display:block;font-size:11px;color:#6f8198}.invite-stats strong{display:block;margin-top:4px;font-size:18px;overflow-wrap:anywhere}.invite-stats strong.off{font-size:13px;color:#8394a9}
.modal-tabs{background:#e6eef8;padding:4px;border-radius:12px;gap:4px}.modal-tabs button{padding:9px 6px;border-radius:9px}.modal-tabs button.active{background:#fff;color:#16314f;font-weight:600}
html[data-theme=night] .pill-link,html[data-theme=night] .function-icon{background:var(--night-raised);color:#a7c9f8}html[data-theme=night] .balance-box,html[data-theme=night] .off-block,html[data-theme=night] .invite-code,html[data-theme=night] .invite-stats>div{background:var(--night-raised);border-color:var(--night-line)}html[data-theme=night] .balance-box strong{color:#e2c88f}html[data-theme=night] :is(.balance-box small,.balance-box span,.career-grid strong.off,.switch-row small,.about p,.off-block h3 em,.off-block h3 small,.invite-code small,.invite-stats small,.invite-stats strong.off){color:var(--night-muted)}html[data-theme=night] .function-grid button{color:var(--night-text)}html[data-theme=night] :is(.settings-block,.function-center .admin-entry){border-color:var(--night-line)}html[data-theme=night] .switch-row input[type=checkbox]{background:#3e424a}html[data-theme=night] .switch-row input[type=checkbox]:checked{background:#c9d1dc}html[data-theme=night] .switch-row input[type=checkbox]:checked::after{background:#181b21}html[data-theme=night] .modal-tabs{background:var(--night-raised)}html[data-theme=night] .modal-tabs button.active{background:var(--night-panel);color:var(--night-text)}
@media(max-width:340px){.function-grid{gap:10px 2px}.function-icon{width:34px;height:34px}.function-grid button{font-size:11px}}
.account-body{grid-template-columns:1fr;gap:6px}.account-body .avatar{width:44px;height:44px;font-size:17px}.account-body .row b{white-space:nowrap}.account-body .row:first-child b{white-space:normal}
html[data-theme=night] .invite-code .secondary{border:1px solid var(--night-line);background:var(--night-panel)}html[data-theme=night] .career-grid strong.off{color:var(--night-muted)}
.home-pools .ticket-overview a small{display:flex;align-items:center;gap:6px}.home-pools .ticket-overview a small i{width:7px;height:7px;border-radius:50%;background:#3f9a78;flex-shrink:0}.home-pools .ticket-overview a.featured{background:#dbe8f8;border-color:#a9c6ec}.home-pools .ticket-overview a:not(.featured){background:#eef3fa}
.pool-clock{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:14px 0 12px;font-size:13px;color:#6f8198}.clock-boxes{display:flex;align-items:baseline;gap:4px;font-size:11px;white-space:nowrap}.clock-boxes b{display:inline-block;min-width:28px;padding:3px 5px;border-radius:7px;background:#e5eef9;color:#16314f;font-size:16px;text-align:center;font-variant-numeric:tabular-nums}
.pool-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pool-actions .primary{margin:0;padding:12px 8px}.pool-actions .outline{display:grid;place-items:center;border:1px solid #c8d9eb;border-radius:14px;background:#fff;color:#16314f;font-weight:650;text-decoration:none;padding:12px 8px}
.pool-foot{margin:14px 0 0;padding-top:12px;border-top:1px solid #e2ebf6;font-size:12px;color:#6f8198;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 6px}.pool-foot b{font-size:15px;color:#16314f}.pool-foot a{color:#4d81c4;text-decoration:none}
.home-entries{padding:0;overflow:hidden}.home-entries button{display:flex;align-items:center;gap:14px;width:100%;padding:14px 16px;text-align:left;border-bottom:1px solid #e2ebf6}.home-entries button:last-child{border-bottom:0}.entry-logo{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,#9cc3f0,#5b8fdc);color:#fff;font-weight:800;font-size:15px;letter-spacing:.5px}.entry-text{flex:1;min-width:0;display:grid;gap:3px}.entry-text b{font-size:15px;overflow-wrap:anywhere}.entry-text small{font-size:12px;color:#78889d;overflow-wrap:anywhere}.entry-arrow{color:#a3b2c4;font-size:18px}
.admin-subtitle{margin:18px 0 4px;font-size:15px}.home-link-editor{display:grid;gap:10px;margin:10px 0 14px}.home-link-row{display:grid;gap:6px;margin:0;padding:10px;border:1px solid #d9e4f1;border-radius:12px}.home-link-row legend{padding:0 4px;font-size:12px;color:#6f8198}.home-link-row input{margin:0}
html[data-theme=night] .home-pools .ticket-overview a.featured{background:#2c3037;border-color:#4a505a}html[data-theme=night] .home-pools .ticket-overview a:not(.featured){background:var(--night-raised)}html[data-theme=night] :is(.pool-clock,.pool-foot,.entry-text small,.home-link-row legend){color:var(--night-muted)}html[data-theme=night] .clock-boxes b{background:var(--night-raised);color:var(--night-text)}html[data-theme=night] .pool-actions .outline{background:var(--night-panel);border-color:var(--night-line);color:var(--night-text)}html[data-theme=night] .pool-foot b{color:var(--night-text)}html[data-theme=night] .pool-foot a{color:#a7c9f8}html[data-theme=night] :is(.pool-foot,.home-entries button,.home-link-row){border-color:var(--night-line)}html[data-theme=night] .entry-logo{background:linear-gradient(135deg,#4a5260,#2e333b);color:#e9edf2}
.subpage-head{display:flex;align-items:center;gap:10px;margin:0 0 14px}.subpage-head h1{margin:0;font-size:19px}.subpage-head .back{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#fff;border:1px solid #d9e4f1;color:#16314f;font-size:22px;line-height:1;text-decoration:none;flex-shrink:0}
.off-card h3{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:0 0 6px;font-size:15px}.off-card h3 em,.off-card h3 small{font-style:normal;font-size:11px;font-weight:500;color:#8394a9}.off-card .caption{margin:0 0 8px}
.invite-code.card{margin-bottom:0}.invite-stats{margin-bottom:12px}.subpage-head+.tabs.modal-tabs{margin-bottom:12px}.settings-page .settings-block:first-child{padding-top:0}
.help-hero small{color:#4d81c4;font-size:12px}.help-hero h2{margin:4px 0 8px;font-size:20px}.help-hero .caption{margin:0}.help-row{display:grid;grid-template-columns:72px minmax(0,1fr);gap:10px;padding:12px;margin-top:8px;border-radius:12px;background:#f2f6fb}.help-row b{font-size:13px;line-height:1.6}.help-row p{margin:0;font-size:12px;line-height:1.7;color:#4f6278}.help-group .rule{margin:0}
.records-list .section-heading{margin:0 2px 10px}.bet-record{margin-bottom:10px;padding:13px;border-radius:16px;background:#fff;border:1px solid #e1e9f3;border-left:4px solid #b9c7d8}.bet-record.won{background:#f0f8f3;border-color:#cfe6d8;border-left-color:#3f9a6a}.bet-record.lost{background:#fbf3f3;border-color:#f0dada;border-left-color:#c75b5b}.bet-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.bet-head>div{min-width:0}.bet-head b{display:block;font-size:15px;overflow-wrap:anywhere}.bet-head small{display:block;margin-top:3px;font-size:12px;color:#78889d}.bet-tag{flex-shrink:0;padding:3px 9px;border-radius:999px;font-size:11px;background:#e7edf5;color:#5d6f85}.won .bet-tag{background:#d8efe1;color:#2e7a52}.lost .bet-tag{background:#f4dddd;color:#a84444}.bet-cells{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:10px}.bet-cells>div{padding:8px;border-radius:10px;background:#edf3fa;min-width:0}.bet-cells small{display:block;font-size:11px;color:#78889d}.bet-cells b{display:block;margin-top:3px;font-size:14px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.bet-cells b.positive{color:#2e8a57}.bet-cells b.negative{color:#c24848}
.draw-toast{position:fixed;left:50%;top:calc(12px + env(safe-area-inset-top));z-index:50;transform:translate(-50%,-150%);max-width:calc(100% - 32px);padding:9px 16px;border-radius:999px;background:#3b76d6;color:#fff;font-size:13px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:0 6px 18px #2b55702e;transition:transform .3s;pointer-events:none}.draw-toast.show{transform:translate(-50%,0)}
.notice.unread h3{display:flex;align-items:center;gap:6px}
html[data-theme=night] .subpage-head .back{background:var(--night-panel);border-color:var(--night-line);color:var(--night-text)}html[data-theme=night] :is(.help-row,.bet-cells>div){background:var(--night-raised)}html[data-theme=night] :is(.help-row p,.bet-head small,.bet-cells small,.off-card h3 em,.off-card h3 small){color:var(--night-muted)}html[data-theme=night] .help-hero small{color:#a7c9f8}html[data-theme=night] .bet-record{background:var(--night-panel);border-color:var(--night-line);border-left-color:#5a606a}html[data-theme=night] .bet-record.won{background:#17231c;border-color:#2c3f33;border-left-color:#5fbf8a}html[data-theme=night] .bet-record.lost{background:#261a1a;border-color:#473030;border-left-color:#d77272}html[data-theme=night] .bet-tag{background:var(--night-raised);color:var(--night-muted)}html[data-theme=night] .won .bet-tag{background:#1f3a2a;color:#8fd8ae}html[data-theme=night] .lost .bet-tag{background:#3d2424;color:#f0a0a0}html[data-theme=night] .bet-cells b.positive{color:#8fd8ae}html[data-theme=night] .bet-cells b.negative{color:#f0a0a0}html[data-theme=night] .draw-toast{background:#d4d9e1;color:#181b21}
@media(max-width:340px){.help-row{grid-template-columns:1fr;gap:4px}}
.bet-cells b{overflow-wrap:normal;white-space:nowrap;font-size:clamp(11px,3.6vw,14px);letter-spacing:-.2px}
.play-page main>.tabs{background:#e3ecf7;padding:4px;border-radius:14px;gap:2px;margin:14px 0 12px}.play-page main>.tabs button{border-radius:11px;padding:10px 2px;color:#5d6f85}.play-page main>.tabs button.active{background:#fff;color:#16314f;font-weight:650;box-shadow:0 2px 8px #2b557014}
.road-card h2{margin:0 0 12px;font-size:16px}.bead-road{display:grid;grid-auto-flow:column;grid-template-rows:repeat(6,22px);grid-auto-columns:22px;width:max-content;max-width:100%;overflow-x:auto;border-top:1px solid #dfe7f1;border-left:1px solid #dfe7f1;scrollbar-width:none}.bead-road::-webkit-scrollbar{display:none}.bead-road span{display:grid;place-items:center;width:22px;height:22px;border-right:1px solid #dfe7f1;border-bottom:1px solid #dfe7f1;font-size:11px;font-weight:700;color:#fff;box-sizing:border-box}.bead-road span.r,.bead-road span.b,.bead-road span.q{border-radius:50%;border:1px solid #fff}.bead-road span.r{background:#d2463e}.bead-road span.b{background:#3f73db}.bead-road span.q{background:#9aa6b5}
.draw-history .section-heading{margin-bottom:12px}.history-row{display:flex;align-items:center;gap:10px;padding:11px 12px;margin-top:8px;border-radius:12px;background:#edf3fa}.history-row>b{min-width:78px;font-size:14px;font-variant-numeric:tabular-nums}.history-row>span:last-child{margin-left:auto;font-size:13px;color:#4f6278}.mini-balls{display:flex;align-items:center;gap:2px;font-size:12px;color:#6f8198}.mini-balls i{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;font-style:normal;font-size:11px;font-weight:700;color:#fff}.mini-balls .b0{background:linear-gradient(140deg,#4eab9a,#15917e)}.mini-balls .b1{background:linear-gradient(140deg,#d26973,#bb444c)}.mini-balls .b2{background:linear-gradient(140deg,#6094e4,#3c70ca)}.mini-balls .bs{background:linear-gradient(140deg,#91c5f9,#367dce);color:#102d4f}.pending-draw{margin-left:auto;color:#b0703a;font-size:13px}
.odds-rules h2{margin:0 0 10px;font-size:16px}.odds-rules p{margin:0 0 6px;font-size:14px;line-height:1.7;color:#34465c}.odds-rules .caption{margin-top:10px;font-size:12px}.odds-rules .link{display:inline-block;margin-top:6px}
.bet-tray{padding-top:10px;padding-bottom:10px}.bet-tray .stake-controls button,.bet-tray .stake-controls input{height:40px;padding-top:0;padding-bottom:0}.bet-tray .primary{padding:11px}
html[data-theme=night].play-page main>.tabs,html[data-theme=night] .play-page main>.tabs{background:var(--night-raised)}html[data-theme=night] .play-page main>.tabs button{color:var(--night-muted)}html[data-theme=night] .play-page main>.tabs button.active{background:var(--night-panel);color:var(--night-text)}html[data-theme=night] :is(.bead-road,.bead-road span){border-color:#343840}html[data-theme=night] .bead-road span.r,html[data-theme=night] .bead-road span.b{border-color:var(--night-panel)}html[data-theme=night] .history-row{background:var(--night-raised)}html[data-theme=night] :is(.history-row>span:last-child,.mini-balls){color:var(--night-muted)}html[data-theme=night] .odds-rules p{color:var(--night-text)}
.auto-round-note{margin:0 0 10px;padding:10px 12px;border-radius:12px;background:#e8f4ee;color:#2e6e4c;font-size:13px;line-height:1.6}html[data-theme=night] .auto-round-note{background:#1d2b23;color:#9fd8b6}
.broadcast-preview{font-size:13px;line-height:1.6}.broadcast-preview p{margin:0 0 4px}.broadcast-preview table{width:100%;border-collapse:collapse;margin:8px 0;font-size:12px}.broadcast-preview th,.broadcast-preview td{padding:5px 6px;border:1px solid #d9e4f1}.broadcast-preview tr:nth-child(even) td{background:#f2f6fb}.broadcast-preview th{background:#e6eef8;font-weight:650}
html[data-theme=night] .broadcast-preview :is(th,td){border-color:var(--night-line)}html[data-theme=night] .broadcast-preview th{background:var(--night-raised)}html[data-theme=night] .broadcast-preview tr:nth-child(even) td{background:#202328}
.broadcast-actions{display:grid;gap:8px;margin:12px 0}.broadcast-actions .primary,.broadcast-actions .secondary{margin:0}textarea.mono{font-family:ui-monospace,Menlo,monospace;font-size:12px;white-space:pre;overflow-x:auto}.notice-ok{margin:0 0 10px;padding:9px 12px;border-radius:10px;background:#e8f4ee;color:#2e6e4c;font-size:13px}html[data-theme=night] .notice-ok{background:#1d2b23;color:#9fd8b6}
.form-error{margin:8px 0;padding:8px 12px;border-radius:10px;background:#fbeaea;color:#a84444;font-size:13px}html[data-theme=night] .form-error{background:#3a2222;color:#f0a0a0}
.sample-fill{margin:0 0 12px;padding:12px;border-radius:12px;background:#f2f6fb}.sample-fill-inputs{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sample-fill-inputs label{margin:0}.sample-fill .secondary{margin:8px 0 6px}.sample-fill .caption{margin:0}html[data-theme=night] .sample-fill{background:var(--night-raised)}
/* lottery section, PC28 layout */
.gold-digits b{color:#8a6320;font-weight:800}.lottery-digits b[data-roll]{color:#16314f}.gold-digits b[data-roll]{color:#8a6320}
.gold-clock{color:#a3741c!important;font-variant-numeric:tabular-nums}.state-pill{padding:3px 10px;border:1px solid #d9e4f1;border-radius:999px;font-size:11px;color:#5d6f85;background:#fff}.count-pill{padding:2px 9px;border-radius:999px;background:#e6eef8;font-size:12px;color:#5d6f85}
.lottery-prizes em{font-style:normal}
.lottery-purchase-link{display:flex;align-items:center;gap:12px;text-decoration:none}.lottery-purchase-link>span:nth-child(2){flex:1;margin:0}.lottery-purchase-link small{display:block;font-size:11px;color:#7c899b;margin-top:3px}.lottery-purchase-link i{position:static}.fire-icon{display:grid!important;place-items:center;width:40px;height:40px;border-radius:11px;background:linear-gradient(135deg,#6ea4ea,#3f73db);font-size:20px;flex-shrink:0;margin:0!important}
.pool-flow{padding:10px 14px;overflow:hidden}.flow-roll{height:48px;overflow:hidden;position:relative}.flow-roll>p{margin:0;height:24px;line-height:24px;font-size:12px;color:#4f6278;animation:flowUp calc(var(--n)*3s) linear infinite}@keyframes flowUp{to{transform:translateY(calc(var(--n)*-24px))}}
.draw-broadcast{margin-top:10px;padding:10px 12px;border:1px solid #dbe5f2;border-radius:12px;background:#f2f6fb}.draw-broadcast small{font-size:12px;color:#6f8198}.draw-broadcast .center{margin:6px 0 0;font-size:13px;color:#4f6278;text-align:center}
.last-winners{background:#e6eef8}.last-winners .caption{margin:0 0 8px}.green{color:#2e8a57!important;font-weight:650}.winner-roll{height:26px;overflow:hidden}.winner-roll>div{animation:winUp calc(var(--n)*2.5s) steps(var(--n)) infinite}.winner-roll p{display:flex;gap:10px;align-items:center;height:26px;margin:0;font-size:13px}.winner-roll b{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.winner-roll span{font-size:12px;color:#6f8198}.winner-roll em{font-style:normal;color:#2e8a57;font-weight:650;min-width:58px;text-align:right}@keyframes winUp{to{transform:translateY(calc(var(--n)*-26px))}}
.lottery-history summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;list-style:none}.lottery-history summary::-webkit-details-marker{display:none}.lottery-history summary small{padding:3px 9px;border:1px solid #d9e4f1;border-radius:999px;font-size:11px;color:#5d6f85}
.history-line{display:flex;align-items:center;gap:8px;width:100%;margin-top:9px;padding:10px 12px;border:1px solid #e1e9f3;border-radius:12px;background:#fff;text-align:left}.history-line>span{flex:1;min-width:0}.history-line b{display:block;font-size:14px}.history-line small{display:block;font-size:11px;color:#6f8198;margin-top:2px}.history-line.ordinary small{color:#4d81c4}.history-line i{font-style:normal;font-size:12px;color:#34465c;min-width:58px;text-align:right}.history-line strong{font-size:20px;color:#3f73c4;letter-spacing:2px;font-variant-numeric:tabular-nums}.gold-pill{font-style:normal;padding:3px 10px;border:1px solid #e3cf9f;border-radius:8px;background:#fff6e2;color:#8a6320;font-weight:800;letter-spacing:2px;font-variant-numeric:tabular-nums}
.lottery-explanation summary{display:flex;justify-content:space-between;list-style:none;cursor:pointer}.lottery-explanation summary::-webkit-details-marker{display:none}.lottery-explanation p{font-size:13px;line-height:1.8;color:#4f6278}.lottery-explanation code{padding:1px 5px;border-radius:5px;background:#e6eef8;font-size:12px}
.ticket-empty{display:grid;justify-items:center;gap:4px;padding:18px 0;text-align:center;font-size:13px;color:#6f8198}.ticket-empty .ticket-icon{font-size:22px}.ordinary .ticket-empty{border:1px dashed #cbd9ea;border-radius:12px;background:#f2f6fb}
.lottery-buybar .buy-btn{padding:11px 22px;border-radius:13px;background:linear-gradient(135deg,#e7c77e,#c99a3c);color:#3b2a0a;font-weight:750;text-decoration:none;box-shadow:0 4px 10px #b3843433}.lottery-buybar .buy-btn:disabled{opacity:.5}
.buy-info ul,.gain-list{margin:0;padding-left:18px;font-size:13px;line-height:1.9;color:#34465c}.buy-info li::marker,.gain-list li::marker{color:#d09a3c}
.day-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.day-cards button{padding:10px 8px;border:1px solid #d9e4f1;border-radius:13px;background:#eef3fa;text-align:left}.day-cards button.active{border-color:#5b8fdc;background:#fff;box-shadow:0 0 0 1px #5b8fdc}.day-cards b{display:block;font-size:17px}.day-cards small{font-size:11px;color:#4d81c4}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#3f9a78;margin-right:5px}
.qty-row{display:grid;grid-template-columns:48px 1fr 48px;gap:10px;align-items:center}.qty-row button{height:44px;border-radius:12px;border:1px solid #d9e4f1;background:#eef3fa;font-size:22px}.qty-row input{text-align:center;font-size:20px;border:0;background:transparent}.purchase-shortcuts{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:10px}.purchase-shortcuts small{font-size:12px;color:#6f8198}.purchase-shortcuts button{padding:5px 11px;border-radius:999px;background:#e6eef8;font-size:12px}
html[data-theme=night] :is(.draw-broadcast,.history-line,.day-cards button,.qty-row button,.purchase-shortcuts button,.count-pill,.state-pill,.lottery-explanation code){background:var(--night-raised);border-color:var(--night-line);color:var(--night-text)}html[data-theme=night] .last-winners{background:var(--night-panel)}html[data-theme=night] :is(.flow-roll>p,.history-line small,.winner-roll span,.draw-broadcast small,.draw-broadcast .center,.lottery-explanation p,.ticket-empty,.buy-info ul,.gain-list){color:var(--night-muted)}html[data-theme=night] .history-line strong{color:#a7c9f8}html[data-theme=night] .gold-pill{background:#2d2616;border-color:#6b5427;color:#e2c88f}html[data-theme=night] .day-cards button.active{background:var(--night-panel);border-color:#c9d1dc;box-shadow:none}html[data-theme=night] .ordinary .ticket-empty{background:var(--night-raised);border-color:var(--night-line)}
html[data-theme=night] .history-line i{color:var(--night-text)}.lottery-buybar small#buy-summary{font-size:11px}.lottery-buybar #buy-amount{font-size:20px;color:#3f73c4}html[data-theme=night] .lottery-buybar #buy-amount{color:#a7c9f8}
.gain-list{list-style:none;padding:0}.gain-list li{position:relative;padding-left:16px}.gain-list li::before{content:"";position:absolute;left:2px;top:.8em;width:6px;height:6px;border-radius:50%;background:#d09a3c}.gain-list b{font-size:15px}.form-hint{margin:6px 0 0;font-size:12px;color:#6f8198}.form-hint.bad{color:#c24848}
.invite-buy{display:flex;align-items:center;gap:12px}.invite-buy>div{flex:1;min-width:0}.invite-buy b{display:block;font-size:15px}.invite-buy small{display:block;margin-top:3px;font-size:12px;color:#6f8198;line-height:1.5}.invite-buy button{flex-shrink:0;padding:8px 16px;border-radius:999px;border:1px solid #e0c48b;background:#fbf0da;color:#7a5418;font-weight:700}
html[data-theme=night] .invite-buy button{background:#2d2616;border-color:#6b5427;color:#e2c88f}html[data-theme=night] :is(.invite-buy small,.form-hint){color:var(--night-muted)}
.day-cards button{position:relative;padding:12px 10px}.day-cards button.active{background:#e3eefc;border:2px solid #5b8fdc;box-shadow:none}.day-cards b{font-size:19px}.day-check{position:absolute;top:8px;right:8px;width:18px;height:18px;border-radius:50%;background:#d5dfeb}.active .day-check{background:#3f73c4}.active .day-check::after{content:"";position:absolute;left:6px;top:3px;width:4px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.buy-dayline,.day-cards+.caption{margin-top:14px;font-size:13px;color:#34465c}.day-cards+.caption b{font-size:14px}
html[data-theme=night] .day-cards button.active{background:#243246;border-color:#8fb3e8}html[data-theme=night] .day-check{background:#3e424a}html[data-theme=night] .day-cards+.caption{color:var(--night-text)}
dialog[data-kind=ticket-confirm]{margin:auto auto 0;width:100%;max-width:520px;border-radius:24px 24px 0 0;padding:20px 18px calc(16px + env(safe-area-inset-bottom));max-height:88dvh}dialog[data-kind=ticket-confirm] #modal-body{padding-top:4px;color:#16314f}
.sheet-sub{margin:0 0 12px;padding-bottom:12px;border-bottom:1px solid #e2ebf6;font-size:13px;color:#5d6f85}.sheet-block{margin:12px 0}.sheet-block>small{display:block;margin-bottom:6px;font-size:13px;color:#6f8198}.sheet-block p{margin:4px 0;font-size:14px}.sheet-block p span{margin-left:10px;color:#5d6f85}
.pay-option{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border:2px solid #5b8fdc;border-radius:14px;background:#eef4fc;text-align:left}.pay-option>span:nth-child(2){flex:1}.pay-option b{display:block;font-size:16px}.pay-option small{font-size:12px;color:#5d6f85}.pay-option i{font-style:normal;color:#3f73c4;font-size:20px}.pay-logo{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:#dbe8f8;color:#3f73c4;font-weight:800}
.sheet-actions{display:grid;grid-template-columns:auto 1fr;gap:12px;margin-top:16px;padding-top:12px;border-top:1px solid #e2ebf6}.sheet-actions .secondary{width:auto;padding:12px 22px}.sheet-actions .primary{margin:0}
html[data-theme=night] dialog[data-kind=ticket-confirm] #modal-body{color:var(--night-text)}html[data-theme=night] .pay-option{background:var(--night-raised);border-color:#8fb3e8}html[data-theme=night] .pay-logo{background:var(--night-panel);color:#a7c9f8}html[data-theme=night] :is(.sheet-sub,.sheet-actions){border-color:var(--night-line)}html[data-theme=night] :is(.sheet-sub,.sheet-block>small,.sheet-block p span,.pay-option small){color:var(--night-muted)}
/* confirm-order sheet, PC28 layout */
dialog[data-kind=ticket-confirm]{padding:0;border-radius:22px 22px 0 0;overflow:auto}dialog[data-kind=ticket-confirm] .modalhead{display:none}dialog[data-kind=ticket-confirm] #modal-body{padding:0;font-size:14px;color:#16314f}
.sheet-head{padding:18px 18px 12px;border-bottom:1px solid #e3eaf3}.sheet-head h2{margin:0;font-size:18px;font-weight:800;color:#16233a}.sheet-head p{margin:4px 0 0;font-size:13px;color:#5d6b7e}
.sheet-body{padding:6px 18px 12px}.sheet-label{display:block;margin:14px 0 6px;font-size:13px;color:#6b788a}.sheet-item{margin:5px 0;font-size:14px;color:#16233a}.sheet-item span{margin-left:14px;color:#6b788a}.sheet-item.muted{font-size:12px;color:#6b788a}
dialog[data-kind=ticket-confirm] .pay-option{display:flex;align-items:center;gap:12px;padding:11px 14px;border:1.5px solid #7aa3e3;border-radius:14px;background:#f2f6fc;color:#3d6fc4}.pay-logo{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:#e0e9f7;color:#3d6fc4;font-weight:800;font-size:14px}.pay-name{flex:1;display:grid;gap:1px}.pay-name b{font-size:16px;color:#16233a}.pay-name small{font-size:12px;color:#6b788a}
.sheet-foot{display:flex;justify-content:space-between;align-items:center;padding:12px 18px calc(12px + env(safe-area-inset-bottom));border-top:1px solid #e3eaf3}.sheet-cancel{padding:12px 17px;border:1px solid #cbd8ea;border-radius:12px;background:#e8eef7;color:#5d6b7e;font-size:14px;font-weight:650}.sheet-pay{padding:13px 26px;border-radius:13px;background:linear-gradient(135deg,#72a0e6,#3a67bd);color:#0f2442;font-size:15px;font-weight:800;box-shadow:0 8px 18px #3a67bd40}
html[data-theme=night] dialog[data-kind=ticket-confirm] #modal-body{color:var(--night-text)}html[data-theme=night] :is(.sheet-head,.sheet-foot){border-color:var(--night-line)}html[data-theme=night] :is(.sheet-head h2,.sheet-item,.pay-name b){color:var(--night-text)}html[data-theme=night] :is(.sheet-head p,.sheet-label,.sheet-item span,.pay-name small){color:var(--night-muted)}html[data-theme=night] dialog[data-kind=ticket-confirm] .pay-option{background:var(--night-raised);border-color:#8fb3e8;color:#a7c9f8}html[data-theme=night] .pay-logo{background:var(--night-panel);color:#a7c9f8}html[data-theme=night] .sheet-cancel{background:var(--night-raised);border-color:var(--night-line);color:var(--night-muted)}
.sheet-cancel:focus:not(:focus-visible),.sheet-pay:focus:not(:focus-visible){outline:none}

.order-actions{display:grid;gap:10px}.order-actions button{white-space:normal;overflow-wrap:anywhere}
dialog[data-kind=poster] .modalhead{display:none}dialog[data-kind=poster]{padding:14px}dialog[data-kind=poster] #modal-body{padding-top:0}.poster-card img{display:block;width:100%;border-radius:14px}.poster-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0}.poster-actions>*{margin:0;text-align:center;text-decoration:none;padding:11px}.poster-save{border:1px solid #6f9ae0;background:#fff!important;color:#3a67bd!important}.poster-close{background:#fff!important;border:1px solid #d9e4f1;color:#34465c!important}
html[data-theme=night] .poster-save,html[data-theme=night] .poster-close{background:var(--night-raised)!important;border-color:var(--night-line);color:var(--night-text)!important}
dialog[data-kind=poster]{max-height:92dvh}.poster-card img{max-height:62dvh;width:auto;max-width:100%;margin:0 auto}.poster-actions>*:focus:not(:focus-visible){outline:none}
a.balance-box{text-decoration:none;color:inherit}.balance-box.big strong{font-size:30px}
.rebate-claim{display:flex;align-items:center;gap:12px}.rebate-claim>div{flex:1;min-width:0}.rebate-claim small{display:block;font-size:12px;color:#6f8198}.rebate-claim b{display:block;font-size:22px;color:#2e8a57;margin-top:2px}.rebate-claim em{display:block;font-style:normal;font-size:11px;color:#8394a9;margin-top:2px}.rebate-claim .primary{width:auto;margin:0;padding:10px 16px}
.withdraw-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}.withdraw-stats>div{padding:10px 12px;border-radius:12px;background:#f2f6fb}.withdraw-stats small{display:block;font-size:11px;color:#6f8198}.withdraw-stats b{display:block;font-size:17px;margin-top:2px}
.withdraw-channel{display:flex;align-items:center;gap:10px;padding:10px 12px;margin-bottom:10px;border:1.5px solid #7aa3e3;border-radius:13px;background:#f2f6fc}.withdraw-channel b{display:block;font-size:15px}.withdraw-channel small{font-size:11px;color:#6b788a}
.withdraw-row{display:flex;gap:8px;align-items:center;margin-bottom:10px}.withdraw-row input{flex:1;margin:0}.withdraw-row .primary{width:auto;margin:0;padding:11px 14px;white-space:nowrap}.row .positive,.row span.positive{color:#2e8a57}
#rebate-search{margin:4px 0 8px}
html[data-theme=night] :is(.withdraw-stats>div){background:var(--night-raised)}html[data-theme=night] .withdraw-channel{background:var(--night-raised);border-color:#8fb3e8}html[data-theme=night] :is(.rebate-claim small,.rebate-claim em,.withdraw-stats small,.withdraw-channel small){color:var(--night-muted)}html[data-theme=night] .rebate-claim b{color:#8fd8ae}
.invite-stats+.primary{margin:0 0 12px}
.withdraw-ops{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:6px 0 4px}.withdraw-ops .secondary{margin:0;padding:10px}.withdraw-ops .reject{color:#c24848;background:#fbeaea}html[data-theme=night] .withdraw-ops .reject{background:#3a2222;color:#f0a0a0}
/* modal close: soft round button like PC28 */
.modalhead button[data-action=close]{display:grid;place-items:center;width:34px;height:34px;padding:0;border-radius:50%;border:1px solid #dbe4f0;background:#f4f7fb;color:#5d6b7e;font-size:0;box-shadow:0 1px 3px #1a33551a}.modalhead button[data-action=close]::before{content:"";width:12px;height:12px;background:linear-gradient(45deg,transparent calc(50% - .8px),currentColor calc(50% - .8px) calc(50% + .8px),transparent calc(50% + .8px)),linear-gradient(-45deg,transparent calc(50% - .8px),currentColor calc(50% - .8px) calc(50% + .8px),transparent calc(50% + .8px))}.modalhead button[data-action=close]:active{background:#e8eef7}.modalhead button[data-action=close]:focus:not(:focus-visible){outline:none}.modalhead button[data-action=close]:focus-visible{outline:2px solid #7aa3e3;outline-offset:2px}
.modalhead h2{font-size:18px}
html[data-theme=night] .modalhead button[data-action=close]{background:var(--night-raised);border-color:var(--night-line);color:var(--night-muted)}
/* top toast */
.app-toast{position:fixed;left:50%;top:calc(96px + env(safe-area-inset-top));z-index:60;transform:translate(-50%,-10px);opacity:0;max-width:calc(100% - 40px);padding:9px 18px;border-radius:999px;background:#3f9a63;color:#fff;font-size:14px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:0 8px 20px #2e8a5740;transition:opacity .2s,transform .2s;pointer-events:none}.app-toast.show{opacity:1;transform:translate(-50%,0)}.app-toast[data-kind=err]{background:#c24848}
/* records, PC28 template */
.bet-record{padding:14px 14px 12px;border-radius:16px;border:1px solid #e1e9f3;border-left-width:4px;box-shadow:0 2px 8px #2b55700a}.bet-record.pending{background:#f7f2ea;border-color:#e8dcc7;border-left-color:#b8862e}.pending .bet-tag{background:#f6e4c1;color:#9a6a17}.bet-record.cancelled,.bet-record.refunded{background:#f3f5f8;border-left-color:#aab5c3}.bet-head b{font-size:17px}.bet-cells>div{background:#eef3fa;border-radius:10px}.pending .bet-cells>div{background:#edf1f7}.bet-cells b{font-size:15px}
.bet-foot{display:flex;justify-content:flex-end;margin-top:10px}.bet-cancel{padding:7px 14px;border-radius:10px;border:1px solid #b9cbe6;background:#e3ecf8;color:#3a67bd;font-size:13px;font-weight:650}
.records-more{display:block;width:100%;margin:6px 0 10px;padding:11px;border-radius:12px;border:1px solid #e1e9f3;background:#fff;color:#16314f;font-size:13px;font-weight:650}.records-more:disabled{color:#16314f;opacity:1}
html[data-theme=night] .bet-record.pending{background:#2a241b;border-color:#4a3d27;border-left-color:#d8a64a}html[data-theme=night] .pending .bet-tag{background:#4a3a1d;color:#f0cc86}html[data-theme=night] .bet-record:is(.cancelled,.refunded){background:var(--night-panel)}html[data-theme=night] .bet-cancel{background:var(--night-raised);border-color:#5d7eb3;color:#a7c9f8}html[data-theme=night] .records-more{background:var(--night-panel);border-color:var(--night-line);color:var(--night-text)}
.bet-tray .primary{background:linear-gradient(135deg,#9cc3f0,#5b8fdc);color:#16233a;font-weight:750;border-radius:14px;padding:12px;box-shadow:0 6px 14px #5b8fdc33}.bet-tray .primary:disabled{background:#e3ebf5;color:#5d6b7e;box-shadow:none;opacity:1}
.choice.selected{background:linear-gradient(135deg,#a9ccf3,#6d9ee0)!important;border-color:#5b8fdc!important;color:#16233a!important;box-shadow:0 0 0 2px #7aa3e355}.choice.selected small{color:#16233a!important}
html[data-theme=night] .bet-tray .primary:disabled{background:var(--night-raised);color:var(--night-muted)}
.pool-value .yen{font-size:.55em;margin-right:2px;vertical-align:.12em}
.gold-digits b,.gold-digits b[data-roll]{color:#34465c;background:linear-gradient(#fffaf0,#fff);border-color:#ead9b5;font-weight:700}
.plain-state{font-size:13px;color:#5d6f85;white-space:nowrap}
.lottery-clock b:not(.gold-clock){color:#16233a;font-variant-numeric:tabular-nums}
html[data-theme=night] .gold-digits b,html[data-theme=night] .gold-digits b[data-roll]{color:var(--night-text);background:#2a2518;border-color:#5a4a2a}html[data-theme=night] .plain-state{color:var(--night-muted)}html[data-theme=night] .lottery-clock b:not(.gold-clock){color:var(--night-text)}
.flow-roll>p{animation:none}.flow-roll.rolling>p{animation:flowUp calc(var(--n)*3s) linear infinite}
.lottery-page.ordinary .lottery-pool .secondary{background:#fff;border:1px solid #d6e0ec;color:#16233a;font-weight:600;border-radius:12px}
.lottery-page.ordinary .lottery-pool{background:linear-gradient(160deg,#dde9f8,#f7faff 55%)}
.lottery-stats>div:nth-child(2){background:linear-gradient(135deg,#e3edf9,#fff)}
button.back{cursor:pointer}
html[data-theme=night] .lottery-page.ordinary .lottery-pool .secondary{background:var(--night-panel);border-color:var(--night-line);color:var(--night-text)}html[data-theme=night] .lottery-page.ordinary .lottery-pool{background:var(--night-panel)}html[data-theme=night] .lottery-stats>div:nth-child(2){background:var(--night-raised)}
/* close button: SVG centered */
.modalhead button[data-action=close]::before{content:none}.modalhead button[data-action=close] svg{display:block}
/* home challenge card, PC28 layout */
.challenge-card h1{font-size:21px;font-weight:800;color:#16233a}.challenge-card>.caption.center:first-of-type{margin:4px 0 0;font-size:13px;color:#5d6b7e}
.challenge-stats{margin:18px 0 10px}.challenge-stats small{font-size:14px;color:#5d6b7e}.challenge-stats strong{font-size:32px;font-weight:800;color:#16233a;margin-top:2px}
.gap-line{margin:6px 0 10px;font-size:14px;color:#34465c}.gap-line b{color:#3a67bd;font-weight:750}
.gap-bar{height:9px;border-radius:9px;background:#e4ebf4;overflow:hidden;margin:0 0 16px}.gap-bar i{display:block;height:100%;min-width:14%;border-radius:9px;background:linear-gradient(90deg,#8fb8ec,#5b8fdc)}
.claim-btn{padding:15px;border-radius:16px;font-size:17px;font-weight:750;background:linear-gradient(135deg,#a9ccf3,#5b8fdc);color:#fff;box-shadow:0 8px 18px #5b8fdc40}.claim-btn:disabled{background:linear-gradient(135deg,#dce8f7,#c9daf1);color:#8aa0bd;box-shadow:none;opacity:1}
.claim-left{margin:12px 0 14px;font-size:14px;color:#34465c}.claim-left b{color:#16233a}
html[data-theme=night] .challenge-card h1,html[data-theme=night] .challenge-stats strong,html[data-theme=night] .claim-left b{color:var(--night-text)}html[data-theme=night] :is(.gap-line,.claim-left){color:var(--night-muted)}html[data-theme=night] .gap-line b{color:#a7c9f8}html[data-theme=night] .gap-bar{background:var(--night-raised)}html[data-theme=night] .claim-btn:disabled{background:var(--night-raised);color:var(--night-muted)}
html[data-theme=night] .challenge-card .claim-btn:disabled{background:var(--night-raised)!important;color:var(--night-muted)!important;box-shadow:none!important}html[data-theme=night] .challenge-card .claim-btn:not(:disabled){background:linear-gradient(135deg,#8fb8ec,#4f7fc9)!important;color:#fff!important}
.rp-card{background:linear-gradient(160deg,#fff4ec,#fff 60%);border-color:#f3d3c0}.rp-top{display:flex;gap:12px;align-items:center;margin-bottom:14px}.rp-icon{font-size:34px}.rp-top b{display:block;font-size:17px;color:#16233a}.rp-top small{display:block;margin-top:3px;font-size:12px;color:#6b788a}
.rp-progress>div:first-child{display:flex;justify-content:space-between;font-size:13px;color:#34465c;margin-bottom:6px}.rp-progress .gap-bar i{background:linear-gradient(90deg,#f2a07b,#d9534f)}
.rp-captcha label{font-size:13px;color:#34465c}.rp-code{display:flex;align-items:center;gap:12px;margin:8px 0}.rp-code img{width:150px;height:56px;border-radius:10px;border:1px solid #e3d6cc;image-rendering:pixelated}#rp-input{font-size:22px;letter-spacing:8px;text-align:center}.rp-captcha .primary{margin-top:10px;background:linear-gradient(135deg,#f08a6c,#d9534f);color:#fff}
.rp-done{display:grid;justify-items:center;gap:4px;padding:16px;margin:12px 0;border-radius:14px;background:#fff;border:1px dashed #f0c3ad;text-align:center}.rp-done small{color:#6b788a}.rp-done strong{font-size:34px;letter-spacing:6px;color:#c0392b}.rp-done span{font-size:12px;color:#6b788a}.rp-done.off strong{font-size:20px;letter-spacing:0;color:#6b788a}.rp-go{display:block;text-align:center;text-decoration:none}
html[data-theme=night] .rp-card{background:var(--night-panel);border-color:#4a3a33}html[data-theme=night] .rp-top b{color:var(--night-text)}html[data-theme=night] :is(.rp-top small,.rp-progress>div:first-child,.rp-captcha label,.rp-done small,.rp-done span){color:var(--night-muted)}html[data-theme=night] .rp-done{background:var(--night-raised);border-color:#5a4036}html[data-theme=night] .rp-done strong{color:#f0a08a}
html[data-theme=night] .rp-captcha .primary{background:linear-gradient(135deg,#d97a60,#b8443f)!important;color:#fff!important}
.rp-upload{display:grid;gap:6px;margin:0 0 12px;padding:10px;border:1px dashed #c9d8ec;border-radius:12px}.rp-upload img{width:100%;border-radius:10px}.rp-upload small{font-size:12px;color:#6b788a}
html[data-theme=night] .rp-upload{border-color:var(--night-line)}
/* admin console */
.admin-head{display:flex;align-items:center;gap:12px;margin:4px 0 12px}.admin-head h1{margin:0;font-size:20px}.admin-head small{font-size:12px;color:#6b788a}.admin-head .back{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#fff;border:1px solid #d9e4f1;font-size:22px;color:#16314f}
.admin-tabs{display:flex;gap:6px;overflow-x:auto;padding:2px 0 10px;margin:0 -4px 6px;scrollbar-width:none;position:sticky;top:0;z-index:3;background:linear-gradient(#eef4fb 80%,#eef4fb00)}.admin-tabs::-webkit-scrollbar{display:none}.admin-tabs button{flex-shrink:0;padding:8px 13px;border-radius:999px;background:#fff;border:1px solid #d9e4f1;font-size:13px;color:#34465c;white-space:nowrap}.admin-tabs button.active{background:linear-gradient(135deg,#8fb8ec,#4f7fc9);border-color:#4f7fc9;color:#fff;font-weight:650}.admin-tabs i{display:inline-block;min-width:16px;margin-left:5px;padding:0 5px;border-radius:9px;background:#e05b4f;color:#fff;font-style:normal;font-size:11px;line-height:16px}
.admin-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.admin-tiles>div{padding:11px 12px;border-radius:12px;background:#f2f6fb}.admin-tiles small{display:block;font-size:12px;color:#6b788a}.admin-tiles b{display:block;margin-top:3px;font-size:20px;font-variant-numeric:tabular-nums}.admin-tiles.small{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-top:10px}.admin-tiles.small>div{padding:7px 4px;text-align:center}.admin-tiles.small b{font-size:15px}.admin-tiles.small small{font-size:11px}
.admin-state{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px}.admin-state span{font-size:13px;font-weight:650}.admin-state .ok{color:#2e8a57}.admin-state .bad{color:#c24848}.admin-state .secondary{width:auto;margin:0;padding:8px 14px}
.admin-log summary{display:flex;justify-content:space-between;list-style:none;cursor:pointer}.admin-log summary::-webkit-details-marker{display:none}.admin-log small{color:#6b788a}.log-detail{max-width:55%;text-align:right;font-size:11px}
.admin-search{display:flex;gap:8px}.admin-search input{flex:1;margin:0}.admin-search .primary{width:auto;margin:0;padding:10px 16px}.admin-filters{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:6px;margin-top:8px}.admin-filters :is(input,select){margin:0;font-size:12px;padding:8px}
.tk-list{padding:4px 12px}.tk-row,.us-row{display:flex;align-items:center;gap:10px;width:100%;padding:11px 2px;border-bottom:1px solid #e3eaf3;text-align:left}.tk-row:last-of-type,.us-row:last-of-type{border-bottom:0}.tk-num{flex-shrink:0;min-width:64px;padding:5px 8px;border-radius:9px;background:#e6eef8;color:#3a67bd;font-weight:800;letter-spacing:1.5px;text-align:center;font-variant-numeric:tabular-nums}.tk-num.super{background:#fbf0da;color:#8a6320}.tk-meta{flex:1;min-width:0;display:grid;gap:2px}.tk-meta b{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tk-meta b small{font-weight:400;color:#8394a9}.tk-meta small{font-size:11px;color:#6b788a;overflow-wrap:anywhere}.tk-st{flex-shrink:0;font-size:12px;text-align:right;color:#6b788a}.tk-st.issued{color:#b8862e}.tk-st[class*=tier_]{color:#2e8a57;font-weight:700}.us-row i{font-style:normal;color:#a3b2c4;font-size:18px}
.role-badge{font-size:12px;padding:3px 9px;border-radius:999px;background:#fbf0da;color:#8a6320}.admin-item{padding:4px 0 10px;border-bottom:1px solid #e3eaf3}.perm-chips{display:flex;flex-wrap:wrap;gap:5px}.perm-chips i{font-style:normal;font-size:11px;padding:3px 8px;border-radius:999px;background:#e6eef8;color:#3a67bd}.link.danger{color:#c24848;margin-left:10px}
.perm-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:10px}.perm-opt{display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid #d9e4f1;border-radius:11px;font-size:13px;margin:0}.perm-opt input{width:18px;height:18px;margin:0}.perm-opt:has(input:checked){border-color:#5b8fdc;background:#eef4fc}
html[data-theme=night] .admin-tabs{background:linear-gradient(var(--night-bg) 80%,#0000)}html[data-theme=night] .admin-tabs button,html[data-theme=night] .admin-head .back{background:var(--night-panel);border-color:var(--night-line);color:var(--night-text)}html[data-theme=night] .admin-tabs button.active{background:#c9d1dc;color:#181b21;border-color:#c9d1dc}html[data-theme=night] :is(.admin-tiles>div){background:var(--night-raised)}html[data-theme=night] :is(.admin-tiles small,.admin-head small,.tk-meta small,.tk-st){color:var(--night-muted)}html[data-theme=night] :is(.tk-row,.us-row,.admin-item){border-color:var(--night-line)}html[data-theme=night] .tk-num{background:var(--night-raised);color:#a7c9f8}html[data-theme=night] .tk-num.super{background:#2d2616;color:#e2c88f}html[data-theme=night] .perm-opt{border-color:var(--night-line)}html[data-theme=night] .perm-opt:has(input:checked){background:var(--night-raised);border-color:#8fb3e8}html[data-theme=night] .perm-chips i{background:var(--night-raised);color:#a7c9f8}
.admin-filters.two{grid-template-columns:1fr 1fr}.admin-tiles.small.three{grid-template-columns:repeat(3,minmax(0,1fr))}.pt-tabs{margin:0 0 12px}.pt-rank{flex-shrink:0;width:24px;text-align:center;color:#8394a9;font-weight:700}.pt-net{flex-shrink:0;font-size:14px;text-align:right}.pt-net .positive,.tk-list .positive{color:#2e8a57}.pt-net .negative,.tk-list .negative,.caption .negative{color:#c24848}.caption .positive{color:#2e8a57}.tk-st.bet-won{color:#2e8a57;font-weight:700}.tk-st.bet-lost{color:#c24848}.tk-st.bet-pending{color:#b8862e}.tk-row .tk-num:not(.super){min-width:56px;letter-spacing:0;font-size:13px}
html[data-theme=night] .pt-rank{color:var(--night-muted)}
.redeem-item{padding:12px 0;border-bottom:1px solid #e3eaf3}.redeem-item:last-child{border-bottom:0}.redeem-item .row{padding:0;border:0}.redeem-item .caption{margin:6px 0 8px;font-size:12px}.redeem-item .primary{margin:0;padding:10px}.redeem-item.requested{background:#fff8ec;margin:0 -12px;padding:12px;border-radius:12px}.redeem-amt{font-size:17px;color:#2e8a57}.redeem-item.redeemed,.redeem-item.expired{opacity:.6}
html[data-theme=night] .redeem-item{border-color:var(--night-line)}html[data-theme=night] .redeem-item.requested{background:#2a241b}
.redeem-item .uname{color:#3a67bd;font-weight:600}html[data-theme=night] .redeem-item .uname{color:#a7c9f8}
.redeem-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}.redeem-head h2{margin:0}.redeem-head .primary{width:auto;margin:0;padding:9px 18px;background:linear-gradient(135deg,#f08a6c,#d9534f);color:#fff}.redeem-count{color:#d9534f;font-weight:700}
.wd-records summary{display:flex;justify-content:space-between;align-items:center;list-style:none;cursor:pointer;padding:10px 12px;border-radius:12px;background:#f2f6fb;font-weight:600}.wd-records summary::-webkit-details-marker{display:none}.wd-arrow{font-style:normal;color:#3a67bd;transition:transform .2s}.wd-records[open] .wd-arrow{transform:rotate(180deg)}.note-withdraw_paid h2{color:#2e8a57}.note-withdraw_rejected h2{color:#c24848}
html[data-theme=night] .wd-records summary{background:var(--night-raised)}html[data-theme=night] .wd-arrow{color:#a7c9f8}
.usdt-line{margin:-2px 0 10px;font-size:13px;color:#5d6b7e}.usdt-line b{color:#d9534f;font-size:16px}.usdt-big{color:#d9534f;font-size:20px;font-weight:800;font-variant-numeric:tabular-nums}.wd-amt{display:grid;justify-items:end;gap:2px;text-align:right}.wd-amt b{font-size:14px;color:#34465c}.wd-amt small{font-size:11px;color:#8394a9}
html[data-theme=night] .usdt-line{color:var(--night-muted)}html[data-theme=night] :is(.usdt-line b,.usdt-big){color:#f0a08a}html[data-theme=night] .wd-amt b{color:var(--night-text)}
.bb-account{display:inline-block;margin-top:6px;color:#d9534f;font-size:16px;font-weight:800;font-variant-numeric:tabular-nums;user-select:all}.record .uname{color:#3a67bd;font-weight:600}
html[data-theme=night] .bb-account{color:#f0a08a}html[data-theme=night] .record .uname{color:#a7c9f8}
/* admin wide mode (only on 管理后台) */
.admin-head .admin-zoom{margin-left:auto;padding:7px 12px;border-radius:999px;border:1px solid #d9e4f1;background:#fff;color:#3a67bd;font-size:13px;font-weight:650;white-space:nowrap}
html.admin-wide .app{max-width:min(1280px,100%)}html.admin-wide nav{max-width:min(1280px,100%)}html.admin-wide #main{padding-left:24px;padding-right:24px}
html.admin-wide .admin-tabs{flex-wrap:wrap;overflow:visible}html.admin-wide .admin-tiles{grid-template-columns:repeat(4,minmax(0,1fr))}html.admin-wide .admin-tiles.small{grid-template-columns:repeat(5,minmax(0,1fr))}
html.admin-wide #main>.card,html.admin-wide #main>section.card{max-width:none}
@media(min-width:900px){html.admin-wide .tk-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}html.admin-wide .tk-list .records-more{grid-column:1/-1}}
html[data-theme=night] .admin-head .admin-zoom{background:var(--night-panel);border-color:var(--night-line);color:#a7c9f8}
.cemoji{display:inline-block;width:1.25em;height:1.25em;vertical-align:-.25em;object-fit:contain}
.notice-admin{padding:10px 0;border-bottom:1px solid #e3eaf3}.notice-admin:last-child{border-bottom:0}.notice-admin .row{padding:0;border:0}.notice-admin .caption{margin:6px 0 0}html[data-theme=night] .notice-admin{border-color:var(--night-line)}
.cemoji-box{position:relative;display:inline-block;width:1.25em;height:1.25em;vertical-align:-.25em}.cemoji-box .cemoji{width:100%;height:100%;vertical-align:top}.cemoji-anim{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0}.cemoji-box.live .cemoji-anim{opacity:1}.cemoji-box.live .cemoji{visibility:hidden}
.reward-grid{display:grid;gap:0}html.admin-wide .reward-grid{grid-template-columns:1fr 1fr;gap:16px;align-items:start}
.reward-batch{margin-top:10px;padding:10px 12px;border-radius:12px;background:#f7f2ea;border:1px solid #ecdcbf}.reward-batch.done{background:#f2f6fb;border-color:#e1e9f3;opacity:.8}.reward-batch summary{display:flex;justify-content:space-between;align-items:center;gap:8px;list-style:none;cursor:pointer}.reward-batch summary::-webkit-details-marker{display:none}.reward-batch summary b{display:block;font-size:14px}.reward-batch summary small{font-size:12px;color:#6b788a}.reward-batch summary em{font-style:normal;font-size:12px;font-weight:700;color:#b8862e}.reward-batch.done summary em{color:#2e8a57}.reward-batch .row{padding:8px 0}.reward-batch .rk{color:#3a67bd}.reward-batch .secondary{margin-top:8px}
html[data-theme=night] .reward-batch{background:#2a241b;border-color:#4a3d27}html[data-theme=night] .reward-batch.done{background:var(--night-raised);border-color:var(--night-line)}html[data-theme=night] .reward-batch summary small{color:var(--night-muted)}
.demo-tag{display:inline-block;margin-right:6px;padding:1px 6px;border-radius:6px;background:#eef1f5;border:1px solid #d5dce6;color:#6b788a;font-size:11px;font-style:normal;font-weight:600;line-height:16px;vertical-align:1px}.podium-place .demo-tag{margin:0}
.demo-actions{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 4px}.demo-actions button{flex:1 1 140px}.demo-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;align-items:center;padding:10px 0;border-top:1px solid #e1e9f3}.demo-row input{min-width:0}.demo-row small{color:#6b788a;white-space:nowrap;font-size:12px}.demo-row-actions{grid-column:1/-1;display:flex;gap:14px;align-items:center}.demo-row-actions small{margin-right:auto}.demo-row-actions button{flex:none;width:auto;white-space:nowrap;padding:4px 0}.demo-row.off{opacity:.55}.link.danger{color:#c0392b}
html[data-theme=night] .demo-tag{background:var(--night-raised);border-color:var(--night-line);color:var(--night-muted)}html[data-theme=night] .demo-row{border-color:var(--night-line)}html[data-theme=night] .demo-row small{color:var(--night-muted)}

/* ===== v2 sapphire skin (gem theme, after PC28 2026-09 redesign) ===== */
:root{--v2-ink:#13284a;--v2-muted:#6b7e98;--v2-primary:#1f4ea3;--v2-primary-2:#2d62c9;--v2-bg:#eef4fd;--v2-line:#d8e5f6}
body,.app{background:var(--v2-bg)}
/* splash */
.gate{position:fixed;inset:0;z-index:50;max-width:none;background:radial-gradient(120% 70% at 50% 35%,#ffffff 0,#f1f6fe 55%,#e6eefb 100%);padding:40px 30px;transition:opacity .3s ease}
.gate.leaving{opacity:0;pointer-events:none}
.splash-emblem{position:relative;width:150px;height:150px;border-radius:50%;margin-bottom:30px;background:radial-gradient(circle at 50% 45%,#fff 0,#eef4fd 62%,#dde8f8 100%);box-shadow:0 0 0 1px #d7e4f6,0 18px 40px #2d62c91f;display:grid;place-items:center}
.splash-gem{width:92px;height:92px;filter:drop-shadow(0 8px 14px #1f4ea340)}
.splash-orbit,.splash-dot{position:absolute;inset:-9px;border-radius:50%}
.splash-orbit{border:2px solid transparent;border-left-color:var(--v2-primary-2);border-top-color:#2d62c955;animation:v2-spin 1.4s linear infinite}
.splash-dot{animation:v2-spin 2.8s linear infinite reverse}
.splash-dot:before,.splash-dot:after{content:"";position:absolute;width:7px;height:7px;background:var(--v2-primary-2);transform:rotate(45deg)}
.splash-dot:before{top:14px;right:18px}.splash-dot:after{bottom:16px;left:12px;width:5px;height:5px;opacity:.6}
.gate h1{font-size:26px;letter-spacing:8px;margin:0 0 0 8px;color:var(--v2-ink)}
.splash-en{margin:8px 0 26px 6px;font-size:10px;letter-spacing:6px;color:var(--v2-muted)}
.splash-bar{position:relative;width:96px;height:2px;border-radius:2px;background:#d6e2f3;overflow:hidden}
.splash-bar i{position:absolute;top:0;left:-40%;width:40%;height:100%;border-radius:2px;background:var(--v2-primary-2);animation:v2-bar 1.2s ease-in-out infinite}
.gate #gate-message{margin:14px 0 0;font-size:12px;letter-spacing:2px;color:var(--v2-muted)}
.splash-foot{position:absolute;bottom:calc(26px + env(safe-area-inset-bottom));left:0;right:0;font-size:10px;letter-spacing:3px;color:#9aa9bd}
.gate.error .splash-orbit,.gate.error .splash-dot,.gate.error .splash-bar{display:none}.gate.error #gate-message{color:#b0413e;letter-spacing:0;font-size:14px}
@keyframes v2-spin{to{transform:rotate(360deg)}}@keyframes v2-bar{to{left:100%}}
/* header */
header{background:#f9fbff;border-bottom:1px solid #e1eaf6;margin-bottom:14px;gap:8px}
.brand{gap:10px;font-size:18px;color:var(--v2-ink)}
.brand small{display:block;font-size:8px;letter-spacing:3px;color:#8193ab;font-weight:600;margin-top:2px}
.logo.gem-logo{width:42px;height:42px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#23427f,#0e1f45 70%);box-shadow:0 0 0 2px #fff,0 3px 10px #0e1f4533;padding:0;margin:0}
.gem-logo svg{width:28px;height:28px}
.header-chips{display:flex;flex-direction:column;gap:4px;flex-shrink:0}
.header-chips a{display:flex;align-items:center;gap:6px;min-width:104px;padding:2px 8px;border-radius:8px;background:#e8f0fc;border:1px solid #d3e2f6;color:var(--v2-ink);font-size:11px;line-height:18px}
.header-chips small{font-size:9px;color:var(--v2-muted);margin-right:auto}
.header-chips b{font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}
.header-chips em{font-style:normal;font-size:7px;color:var(--v2-muted);letter-spacing:.5px}
/* bottom nav */
nav{background:#fff;border-top:1px solid #e1eaf6;box-shadow:0 -6px 20px #1f4ea30d}
nav a{display:flex;flex-direction:column;align-items:center;gap:2px;color:#7b8ca3;font-size:11px;position:relative}
.nav-icon{display:grid;place-items:center;width:46px;height:32px;border-radius:12px;transition:background .2s}
nav a svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round;margin:0}
nav a.active{color:var(--v2-primary);font-weight:700}
nav a.active .nav-icon{background:linear-gradient(180deg,#e3edfd,#d3e2fa);box-shadow:inset 0 0 0 1px #c6d9f5}
nav a.active svg{stroke-width:2}
nav a.active:after{content:"";position:absolute;bottom:-5px;width:14px;height:2px;border-radius:2px;background:var(--v2-primary)}
/* home */
.home-title{display:flex;align-items:center;justify-content:space-between;margin:6px 2px 14px}
.home-title h1{margin:0;font-size:22px;letter-spacing:1px;color:var(--v2-ink)}
.home-title svg{width:28px;height:28px;fill:none;stroke:var(--v2-primary-2);stroke-width:1.5;stroke-linejoin:round}
.hero-card{position:relative;overflow:hidden;border-radius:20px;padding:22px 18px 16px;margin-bottom:14px;background:linear-gradient(150deg,#f6f9ff 0,#e3edfc 55%,#d2e2f9 100%);border:1px solid #d3e2f6;box-shadow:0 10px 26px #2a5bb214;color:var(--v2-ink)}
.hero-card:before{content:"";position:absolute;right:-40px;top:-60px;width:230px;height:230px;border-radius:50%;background:radial-gradient(circle,#ffffffb0,#fff0 70%)}
.en-label{position:relative;display:block;font-size:9px;letter-spacing:3px;font-weight:700;color:#4c6285}
.hero-card h2{position:relative;margin:6px 0 8px;font-size:23px;letter-spacing:1px}
.hero-card p{position:relative;margin:0;font-size:12.5px;line-height:1.75;color:#5a6f8f;max-width:56%}
.hero-btn{position:relative;z-index:1;display:inline-flex;align-items:center;gap:12px;margin-top:14px;padding:10px 15px;border:0;border-radius:8px;background:linear-gradient(180deg,var(--v2-primary-2),#1b438f);color:#fff;font-size:13px;font-weight:700;box-shadow:0 3px 0 #122f6b,0 8px 16px #1b438f40}
.hero-btn:active{transform:translateY(2px);box-shadow:0 1px 0 #122f6b,0 4px 10px #1b438f40}
.art-balls{position:absolute;right:6px;top:14px;width:46%;max-width:190px;height:150px;pointer-events:none}
.gball{position:absolute;display:grid;place-items:center;border-radius:50%;font:900 30px/1 Georgia,"Times New Roman",serif;color:#0f2a66;box-shadow:0 10px 18px #0f2a6638}
.gball.sapphire{width:82px;height:82px;left:0;top:4px;background:radial-gradient(circle at 50% 52%,#fff 0 33%,#dbe6f5 35%,#0000 36.5%),radial-gradient(circle at 30% 26%,#c9e2ff 0 7%,#3b74dd 30%,#10297a 78%)}
.gball.silver{width:66px;height:66px;right:4px;top:22px;font-size:26px;background:radial-gradient(circle at 50% 52%,#fff 0 36%,#e2e8f1 38%,#0000 39.5%),radial-gradient(circle at 32% 26%,#fff 0 10%,#cdd7e6 38%,#7e8ea8 82%)}
.gball.crystal{width:94px;height:94px;left:34px;top:56px;font-size:36px;background:radial-gradient(circle at 50% 52%,#fff 0 32%,#e1ebf8 34%,#0000 35.5%),conic-gradient(from 20deg,#6ea6f5,#2a5fcf,#9cc6ff,#1d4bb3,#7fb2fa,#2a5fcf,#6ea6f5)}
.art-spark{position:absolute;right:22px;top:-6px;width:26px;height:26px}
.hero-pools{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}
.hero-pools a{min-width:0;padding:9px 11px;border-radius:12px;background:#ffffffb8;border:1px solid #fff;box-shadow:0 2px 8px #1f4ea30f;color:var(--v2-ink)}
.hero-pools small{display:flex;align-items:center;gap:5px;font-size:10px;color:#4c6285;font-weight:600}
.hero-pools small i{width:6px;height:6px;border-radius:50%;background:#27a36b}
.hero-pools b{display:block;font-size:clamp(16px,5.2vw,21px);letter-spacing:-.3px;font-variant-numeric:tabular-nums;white-space:nowrap}
.hero-pools span{display:block;font-size:9px;color:var(--v2-muted)}
.hero-clock{position:relative;display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:12px;font-size:11px;color:#4c6285}
.hero-clock .clock-boxes b{background:#fff;min-width:26px;font-size:14px;padding:2px 5px;border-radius:6px}
.hero-card.honor{min-height:190px}
.art-trophy{position:absolute;right:4px;bottom:0;width:42%;max-width:170px;pointer-events:none}
.art-trophy svg{display:block;width:100%;height:auto;filter:drop-shadow(0 10px 14px #0f2a6630)}
.home-invite{display:flex;align-items:center;gap:14px;padding:16px;border-radius:18px;margin-bottom:14px;background:linear-gradient(150deg,#f8fbff,#e6effc);border:1px solid #d3e2f6;color:var(--v2-ink)}
.invite-badge{display:grid;place-items:center;width:62px;height:62px;flex-shrink:0;border-radius:50%;background:#fff;box-shadow:0 0 0 6px #e3ecfa,0 6px 14px #1f4ea31f}
.invite-badge svg{width:30px;height:30px;fill:none;stroke:var(--v2-primary);stroke-width:1.8;stroke-linecap:round}
.invite-text{flex:1;min-width:0}.invite-text b{display:block;font-size:16px}.invite-text small{display:block;font-size:11px;color:var(--v2-muted);margin:2px 0 6px}
.invite-text span{display:flex;align-items:baseline;gap:4px;font-size:10px;color:var(--v2-muted)}
.invite-text strong{font-size:22px;color:var(--v2-primary);margin-left:10px}.invite-text strong:first-child{margin-left:0}
.home-invite .entry-arrow,.home-entries .entry-arrow{color:#8a9ab0;font-size:20px}
.home-entries{border-radius:18px;border:1px solid #d9e5f5}
.home-entries .entry-logo{display:grid;place-items:center;width:40px;height:40px;border-radius:11px;background:linear-gradient(160deg,#3a70d8,#173c8c);box-shadow:0 4px 10px #1f4ea333;flex-shrink:0}
.home-entries .entry-logo svg{width:26px;height:26px}
.home-foot{text-align:center;font-size:10px;letter-spacing:3px;color:#9aa9bd;margin:18px 0 26px}
.home-foot:before,.home-foot:after{content:"◆";font-size:6px;margin:0 10px;vertical-align:2px;color:#b9c7da}
@media(max-width:350px){.header-chips a{min-width:92px}.brand{font-size:16px}.hero-card p{max-width:52%}}
@media(prefers-reduced-motion:reduce){.splash-orbit,.splash-dot,.splash-bar i{animation:none}}
/* v2 night */
html[data-theme=night]{--v2-ink:#eef2f8;--v2-muted:#a7b3c4}
html[data-theme=night] :is(body,.app){background:var(--night-bg)}
html[data-theme=night] header{background:var(--night-panel);border-color:var(--night-line)}
html[data-theme=night] .header-chips a{background:var(--night-raised);border-color:var(--night-line)}
html[data-theme=night] nav{background:#111216;box-shadow:none}
html[data-theme=night] nav a.active{color:#8fb6ff}html[data-theme=night] nav a.active:after{background:#8fb6ff}
html[data-theme=night] nav a.active .nav-icon{background:#1d2a44;box-shadow:inset 0 0 0 1px #2c3f63}
html[data-theme=night] .hero-card,html[data-theme=night] .home-invite{background:linear-gradient(150deg,#1b2233,#141a27);border-color:var(--night-line);box-shadow:none}
html[data-theme=night] .hero-card:before{background:radial-gradient(circle,#2d62c922,#0000 70%)}
html[data-theme=night] .hero-card p,html[data-theme=night] .en-label,html[data-theme=night] .hero-clock,html[data-theme=night] .hero-pools small{color:var(--night-muted)}
html[data-theme=night] .hero-pools a{background:#ffffff0d;border-color:#ffffff14}
html[data-theme=night] .hero-clock .clock-boxes b{background:var(--night-raised)}
html[data-theme=night] .invite-badge{background:var(--night-raised);box-shadow:0 0 0 6px #1f2636}
html[data-theme=night] .invite-badge svg{stroke:#8fb6ff}html[data-theme=night] .invite-text strong{color:#8fb6ff}
html[data-theme=night] .home-title svg{stroke:#8fb6ff}
/* v2 artwork (BB gem assets in /assets) */
.logo.gem-logo{background:#fff;box-shadow:0 0 0 1px #d3e2f6,0 3px 10px #0e1f4524;overflow:hidden}
.gem-logo img{width:100%;height:100%;object-fit:cover}
img.splash-gem{width:104px;height:104px;border-radius:50%;filter:drop-shadow(0 10px 16px #1f4ea340)}
.home-entries .entry-logo{background:#fff;box-shadow:0 0 0 1px #d6e3f6,0 4px 10px #1f4ea31f;overflow:hidden}
.home-entries .entry-logo img{width:34px;height:34px}
.hero-art{position:absolute;pointer-events:none;filter:drop-shadow(0 10px 14px #0f2a6630)}
.lucky-art{right:-4px;top:8px;width:50%;max-width:220px}
.honor-art{right:8px;bottom:-2px;height:92%;max-height:200px}
/* lottery pool cards */
.lottery-pool.v2-pool{position:relative;overflow:hidden;text-align:left;border-radius:20px;border:1px solid #d3e2f6;background:linear-gradient(150deg,#f6f9ff 0,#e3edfc 60%,#d4e3f9 100%);box-shadow:0 10px 26px #2a5bb214}
.v2-pool .pool-art{position:absolute;right:6px;top:10px;width:40%;max-width:160px;filter:drop-shadow(0 10px 14px #0f2a6630);pointer-events:none}
.v2-pool>p:first-of-type{position:relative;margin:10px 0 2px;max-width:60%;font-size:11px;color:#4c6285;font-weight:600}
.v2-pool .pool-value,.v2-pool.super .pool-value{position:relative;display:block;max-width:62%;color:var(--v2-ink)!important;font-size:clamp(28px,9vw,38px);letter-spacing:-.5px;line-height:1.3}
.v2-pool .pool-value .yen{font-size:.5em;color:#4c6285}
.v2-pool>p:nth-of-type(2){position:relative;max-width:64%;font-size:11px;line-height:1.7;color:#5a6f8f}
.v2-pool .lottery-badges{justify-content:flex-start}
.v2-pool .lottery-badges span{background:#ffffffb8;border:1px solid #d6e3f5;color:#34507a}
.v2-pool .lottery-clock{background:#ffffffa6;border-color:#d6e3f5}
.gold-clock{color:var(--v2-primary)!important}
.lottery-page .tabs{background:#e3ecf9;padding:4px;border-radius:14px;gap:4px}
.lottery-page .tabs button{display:flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:11px;background:transparent;color:#4c6285;font-weight:700}
.lottery-page .tabs button:before{content:"";width:26px;height:26px;background:center/contain no-repeat}
.lottery-page .tabs button[data-value=super]:before{background-image:url(/assets/super.webp)}
.lottery-page .tabs button[data-value=ordinary]:before{background-image:url(/assets/ordinary.webp)}
.lottery-page .tabs button.active{background:#fff;color:var(--v2-primary);box-shadow:0 3px 10px #1f4ea31f}
/* navy glossy number tiles */
.lottery-digits{gap:7px}
.lottery-digits b,.gold-digits b,.gold-digits b[data-roll],.lottery-digits b[data-roll]{display:grid;place-items:center;width:44px;min-width:0;height:56px;padding:0;border-radius:11px;border:1px solid #0c1d49;background:linear-gradient(180deg,#2b5aa8 0,#163a80 48%,#0e2459 100%);color:#cfe6ff;font-size:30px;font-weight:800;text-shadow:0 0 8px #6fb3ffaa;box-shadow:inset 0 2px 0 #ffffff40,inset 0 -3px 0 #00000055,0 6px 12px #0f245840;font-variant-numeric:tabular-nums}
.ordinary .lottery-digits b{width:48px}
@media(max-width:350px){.lottery-digits b,.gold-digits b{width:38px;height:50px;font-size:26px}}
.lottery-buybar b{color:var(--v2-primary)}
.lottery-buybar button{background:linear-gradient(180deg,var(--v2-primary-2),#1b438f);color:#fff;border:0;border-radius:9px;box-shadow:0 3px 0 #122f6b,0 8px 16px #1b438f40}
.ticket-empty .empty-art{width:92px;height:92px;filter:drop-shadow(0 8px 12px #1f4ea326)}
/* rank podium frames + avatars */
.rank-avatar{position:relative;overflow:hidden}
.rank-avatar img,.avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%}
.podium-frame{position:relative;display:grid;place-items:center;width:84px;height:84px}
.place-1 .podium-frame{width:104px;height:104px}
.podium-frame .frame{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.podium-place .podium-frame .rank-avatar{width:58%;height:58%;border:0;box-shadow:none;background:#dde8f7;font-size:18px}
.place-1 .podium-frame .rank-avatar{width:52%;height:52%}
.place-1 .podium-frame:before{content:"";position:absolute;inset:-14px;border-radius:50%;background:radial-gradient(circle,#4d8fff66 0,#4d8fff00 68%);animation:v2-glow 2.4s ease-in-out infinite}
@keyframes v2-glow{50%{opacity:.45;transform:scale(.92)}}
.podium-place{padding-top:24px}.podium-place.place-1{padding-top:0}
.podium-place .podium-medal{margin-top:-6px;position:relative;z-index:1;font-size:10px;width:auto;height:auto;border-radius:6px;padding:1px 8px;background:#e1ebfa;color:var(--v2-primary)}
.place-1 .podium-medal{background:var(--v2-primary);color:#fff}
/* me: member card + emblem */
.profile-card.member-card{position:relative;overflow:visible;background:linear-gradient(150deg,#f8fbff,#e6effc);border:0;box-shadow:0 10px 24px #2a5bb214;padding:0}
.member-frame{position:absolute;inset:-6px -4px;width:calc(100% + 8px);height:calc(100% + 12px);pointer-events:none;z-index:1}
.member-card .profile-heading{position:relative;padding:26px 30px 26px 28px}
.member-card .avatar{position:relative;overflow:hidden;background:linear-gradient(160deg,#5ea3ff,#2d62c9);color:#fff;border:3px solid #fff;box-shadow:0 4px 12px #1f4ea340}
.member-card .en-label{font-size:8px;letter-spacing:2px}
.member-card h2{margin:2px 0}
.career-card{position:relative}
.career-emblem{display:block;width:64px;height:64px;margin:-8px auto 2px;filter:drop-shadow(0 6px 10px #1f4ea326)}
/* night */
html[data-theme=night] .logo.gem-logo,html[data-theme=night] .home-entries .entry-logo{background:#1c2436;box-shadow:0 0 0 1px var(--night-line)}
html[data-theme=night] .lottery-pool.v2-pool,html[data-theme=night] .profile-card.member-card{background:linear-gradient(150deg,#1b2233,#141a27);border-color:var(--night-line);box-shadow:none}
html[data-theme=night] .v2-pool>p,html[data-theme=night] .v2-pool .pool-value .yen{color:var(--night-muted)}
html[data-theme=night] .v2-pool .lottery-badges span,html[data-theme=night] .v2-pool .lottery-clock{background:#ffffff0d;border-color:#ffffff14;color:var(--night-text)}
html[data-theme=night] .lottery-page .tabs{background:var(--night-raised)}html[data-theme=night] .lottery-page .tabs button{color:var(--night-muted)}html[data-theme=night] .lottery-page .tabs button.active{background:var(--night-panel);color:#8fb6ff}
html[data-theme=night] .gold-clock{color:#8fb6ff!important}
html[data-theme=night] .podium-place .podium-medal{background:#1d2a44;color:#8fb6ff}html[data-theme=night] .place-1 .podium-medal{background:#2d62c9;color:#fff}
html[data-theme=night] .podium-place .podium-frame .rank-avatar{background:#243049}
.lottery-buybar .buy-btn{background:linear-gradient(180deg,var(--v2-primary-2),#1b438f);color:#fff;border-radius:9px;box-shadow:0 3px 0 #122f6b,0 8px 16px #1b438f40}
.lottery-page .gold-card{border:1px solid #d3e2f6;background:linear-gradient(160deg,#f7faff,#fff)}
.balance-box strong{color:var(--v2-primary)}
.v2-pool>p:nth-of-type(2){max-width:58%}
html[data-theme=night] .lottery-page .gold-card{background:var(--night-panel);border-color:var(--night-line)}
html[data-theme=night] .balance-box strong{color:#8fb6ff}
html[data-theme=night] :is(.lottery-digits b,.gold-digits b,.gold-digits b[data-roll],.lottery-digits b[data-roll]){border-color:#0c1d49;background:linear-gradient(180deg,#2b5aa8 0,#163a80 48%,#0e2459 100%);color:#cfe6ff}
html[data-theme=night] .lottery-buybar b{color:#8fb6ff}
html[data-theme=night] .member-card .avatar{background:linear-gradient(160deg,#5ea3ff,#2d62c9);color:#fff;border-color:#2a3550}
/* header claim button (home) */
.chip-row{display:flex;align-items:stretch;gap:4px}
.chip-row a{flex:1}
.header-chips.with-claim a{min-width:88px}
.chip-claim{flex-shrink:0;padding:0 8px;border:0;border-radius:8px;background:linear-gradient(180deg,var(--v2-primary-2),#1b438f);color:#fff;font-size:11px;font-weight:700;line-height:20px;box-shadow:0 2px 0 #122f6b}
.chip-claim:active{transform:translateY(1px);box-shadow:none}
.chip-claim:disabled{background:#dbe5f3;color:#8a9ab0;box-shadow:none;opacity:1}
@media(max-width:350px){.header-chips.with-claim a{min-width:78px}.header-chips.with-claim small{display:none}}
/* ticket kind icons + blue accents on the buy page */
.kind-icon{width:22px;height:22px;vertical-align:-5px;margin-right:6px;filter:drop-shadow(0 2px 3px #1f4ea333)}
.buy-info h2 .kind-icon{width:28px;height:28px;vertical-align:-7px}
.fire-icon{background:#fff!important;box-shadow:0 0 0 1px #d6e3f6,0 4px 10px #1f4ea31f;overflow:hidden}
.fire-icon img{width:34px;height:34px}
.buy-info li::marker,.gain-list li::marker{color:var(--v2-primary-2)}
.gain-list li::before{background:var(--v2-primary-2)}
.invite-buy button{border-color:#c6d9f5;background:#e3edfd;color:var(--v2-primary)}
html[data-theme=night] .invite-buy button{background:#1d2a44;border-color:#2c3f63;color:#8fb6ff}
html[data-theme=night] .chip-claim:disabled{background:var(--night-raised);color:var(--night-muted)}
html[data-theme=night] .fire-icon{background:#1c2436!important}
/* ===== v2 "我的" module (PC28 2026-09 template) ===== */
.page-hero{position:relative;overflow:hidden;border-radius:20px;padding:18px 16px 14px;margin-bottom:14px;background:linear-gradient(150deg,#f6f9ff 0,#e3edfc 60%,#d4e3f9 100%);border:1px solid #d3e2f6;box-shadow:0 10px 26px #2a5bb214;color:var(--v2-ink)}
.page-hero-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.page-hero-top>div{min-width:0}
.page-hero-top img{width:86px;height:86px;flex-shrink:0;filter:drop-shadow(0 8px 12px #0f2a6630)}
.page-hero h2{margin:6px 0 4px;font-size:20px;letter-spacing:.5px}
.page-hero p{margin:0;font-size:11px;color:#5a6f8f}
.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);margin-top:14px;padding-top:12px;border-top:1px solid #cddcf2}
.hero-stats>div{text-align:center;min-width:0}.hero-stats>div+div{border-left:1px solid #cddcf2}
.hero-stats small{display:block;font-size:10px;color:var(--v2-muted)}
.hero-stats b{font-size:22px;color:var(--v2-primary);font-variant-numeric:tabular-nums}
.hero-stats em,.hero-money em,.me-row-card strong em{font-style:normal;font-size:9px;margin-left:3px;color:var(--v2-muted);font-weight:600}
.seg{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px;padding:4px;margin:0 0 12px;border-radius:13px;background:#e3ecf9}
.seg button{padding:9px 4px;border:0;border-radius:10px;background:transparent;color:#4c6285;font-size:13px;font-weight:600}
.seg button.active{background:#fff;color:var(--v2-primary);box-shadow:0 3px 10px #1f4ea31f}
.feed-search{display:flex;gap:8px;margin-bottom:8px}
.feed-search input{margin:0;flex:1;padding:10px 12px;border-radius:12px;background:#fff;border:1px solid #d9e5f5}
.feed-search button{flex-shrink:0;width:42px;border-radius:12px;border:1px solid #d9e5f5;background:#fff;color:var(--v2-primary);display:grid;place-items:center}
.feed-search svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.chips{display:flex;gap:6px;margin:0 0 12px;flex-wrap:wrap}
.chips button{padding:4px 10px;border:0;border-radius:8px;background:transparent;color:#6b7e98;font-size:11px}
.chips button.active{background:#dbe7fb;color:var(--v2-primary);font-weight:700}
.feed-row{display:flex;align-items:center;gap:12px;width:100%;padding:13px 12px;margin-bottom:10px;border-radius:16px;border:1px solid #e0e9f6;background:#fff;text-align:left;color:var(--v2-ink);box-shadow:0 4px 12px #1f4ea30a}
.feed-row>img{width:38px;height:38px;flex-shrink:0}
.feed-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}
.feed-main b{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.feed-main small{font-size:10.5px;color:var(--v2-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.feed-side{display:flex;flex-direction:column;align-items:flex-end;gap:10px;flex-shrink:0;max-width:40%}
.feed-side b{font-size:13px;color:var(--v2-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.feed-arrow{color:#9aa9bd;font-style:normal;font-size:18px}
.pill{font-style:normal;font-size:10px;padding:1px 8px;border-radius:6px;background:#e3edfd;color:var(--v2-primary);white-space:nowrap;border:1px solid #cfe0f8}
.pill.done{background:#eef2f7;color:#5a6f8f;border-color:#dde5ef}.pill.void{background:#f5f0f0;color:#9a6b6b;border-color:#ecdede}
.feed-more{width:100%;padding:12px;border-radius:14px;border:1px solid #e0e9f6;background:#fff;color:var(--v2-primary);font-weight:700;margin-bottom:10px}
.empty-box{margin:8px 0;padding:18px 10px;border-radius:12px;background:#eef3fb;color:var(--v2-muted);text-align:center;font-size:12px}
/* detail modal */
dialog[data-kind=detail] .detail-top{display:flex;flex-direction:column;align-items:center;gap:6px;padding:4px 0 14px;border-bottom:1px dashed #d6e2f3}
.detail-top img{width:48px;height:48px}.detail-top strong{font-size:30px;color:var(--v2-primary);letter-spacing:1px;overflow-wrap:anywhere;text-align:center}
.detail-rows{padding:10px 0}.detail-rows>div{display:flex;justify-content:space-between;gap:14px;padding:7px 0;font-size:12.5px}
.detail-rows span{color:var(--v2-muted);flex-shrink:0}.detail-rows b{font-weight:600;text-align:right;min-width:0;overflow-wrap:anywhere}
.detail-note{margin:4px 0 12px;padding:10px 12px;border-radius:10px;background:#eef3fb;color:#4c6285;font-size:11.5px}
dialog[data-kind=detail] .primary,dialog[data-kind=detail] .secondary{width:100%;margin-top:8px}
/* me page */
.career-card .career-grid{gap:8px;border:0}.career-card .career-grid>div{border:1px solid #e0e9f6!important;border-radius:12px;background:#f5f8fd;padding:10px 12px}
.rec-card h2{display:flex;align-items:center;gap:8px}.h-icon{width:26px;height:26px}
.rec-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:6px}
.rec-grid button{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 2px;border:0;background:transparent;color:var(--v2-ink);font-size:12px;font-weight:600;min-width:0}
.rec-grid button+button{border-left:1px solid #e3ebf6}
.rec-grid img{width:42px;height:42px}.rec-grid small{font-size:10px;color:var(--v2-primary);font-weight:700;margin-top:-3px}
.me-menu{padding:4px 14px}
.me-menu button,.me-menu a{display:flex;align-items:center;gap:12px;width:100%;padding:12px 0;border:0;background:transparent;color:var(--v2-ink);font-size:14px;text-align:left;text-decoration:none}
.me-menu>*+*{border-top:1px solid #e3ebf6}
.me-menu img{width:28px;height:28px}.me-menu span{flex:1}.me-menu i{font-style:normal;color:#9aa9bd;font-size:18px}
/* wallet */
.hero-k{margin:8px 0 0!important;font-size:12px!important}
.hero-money{display:block;font-size:clamp(28px,9vw,36px);font-weight:800;color:var(--v2-primary);letter-spacing:-.5px;font-variant-numeric:tabular-nums}
.hero-note{margin-top:12px!important;padding-top:10px;border-top:1px solid #cddcf2}
.hero-wide{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:12px;padding:11px 14px;border-radius:12px;border:1px solid #d3e2f6;background:#fff;color:var(--v2-primary);font-weight:700;font-size:14px}
.me-row-card{display:flex;align-items:center;gap:10px;padding:14px 16px;margin-bottom:12px;text-decoration:none;color:var(--v2-ink)}
.me-row-card>div{flex:1;min-width:0}.me-row-card b{display:block;font-size:14px}.me-row-card small{display:block;font-size:10.5px;color:var(--v2-muted)}
.me-row-card strong{font-size:17px;color:var(--v2-primary);white-space:nowrap}.me-row-card>i{font-style:normal;color:#9aa9bd;font-size:18px}
.chip-btn{padding:6px 14px;border-radius:9px;border:0;background:linear-gradient(180deg,var(--v2-primary-2),#1b438f);color:#fff;font-size:12px;font-weight:700}
.chip-btn:disabled{background:#dbe5f3;color:#8a9ab0;opacity:1}
.flow-sum{display:grid;grid-template-columns:1fr 1fr;margin:4px 0 12px}
.flow-sum small{display:block;font-size:10.5px;color:var(--v2-muted)}.flow-sum b{font-size:20px;font-variant-numeric:tabular-nums}
.wide-refresh{width:100%;margin-bottom:18px}
/* invite */
.invite-head{margin:4px 2px 14px}.invite-head h2{margin:6px 0 4px;font-size:20px;color:var(--v2-ink)}.invite-head p{margin:0;font-size:11px;color:var(--v2-muted)}
.invite-letter h3{margin:0;font-size:15px;letter-spacing:2px;color:var(--v2-primary)}
.invite-letter .page-hero-top{padding-bottom:12px;border-bottom:1px dashed #c6d8f2;margin-bottom:12px}
.invite-letter .page-hero-top img{width:56px;height:56px}
.invite-letter>small{display:block;font-size:10.5px;color:var(--v2-muted)}
.invite-code-big{display:block;margin:6px 0;font-size:clamp(22px,7.6vw,32px);letter-spacing:3px;font-weight:800;color:var(--v2-ink);overflow-wrap:anywhere;line-height:1.25}
.letter-btns{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.letter-btns button{margin:0;padding:11px 6px;font-size:13px}
.tile3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px}
.tile3>div{min-width:0;padding:12px;border-radius:14px;background:#fff;border:1px solid #e0e9f6}
.tile3 small{display:block;font-size:10.5px;color:var(--v2-muted)}.tile3 strong{display:block;font-size:clamp(16px,5vw,21px);color:var(--v2-primary);overflow-wrap:anywhere}
/* settings: separate cards */
.settings-page.v2 .settings-block{padding:16px;margin-bottom:12px}
.settings-page.v2 .account-body .avatar{position:relative;overflow:hidden;background:linear-gradient(160deg,#5ea3ff,#2d62c9);color:#fff}
.poster-loading{padding:60px 0}
/* night */
html[data-theme=night] :is(.page-hero){background:linear-gradient(150deg,#1b2233,#141a27);border-color:var(--night-line);box-shadow:none}
html[data-theme=night] :is(.page-hero p,.hero-stats small,.invite-head p,.invite-letter>small){color:var(--night-muted)}
html[data-theme=night] :is(.hero-stats,.hero-stats>div+div,.hero-note){border-color:var(--night-line)}
html[data-theme=night] :is(.hero-stats b,.hero-money,.me-row-card strong,.feed-side b,.tile3 strong,.invite-letter h3,.detail-top strong,.rec-grid small){color:#8fb6ff}
html[data-theme=night] .seg{background:var(--night-raised)}html[data-theme=night] .seg button{color:var(--night-muted)}html[data-theme=night] .seg button.active{background:var(--night-panel);color:#8fb6ff}
html[data-theme=night] :is(.feed-row,.feed-more,.tile3>div,.feed-search input,.feed-search button,.hero-wide){background:var(--night-panel);border-color:var(--night-line);color:var(--night-text)}
html[data-theme=night] :is(.empty-box,.detail-note,.career-card .career-grid>div){background:var(--night-raised);color:var(--night-muted);border-color:var(--night-line)!important}
html[data-theme=night] .chips button.active,html[data-theme=night] .pill{background:#1d2a44;color:#8fb6ff;border-color:#2c3f63}
html[data-theme=night] .pill.done{background:var(--night-raised);color:var(--night-muted);border-color:var(--night-line)}
html[data-theme=night] :is(.rec-grid button+button,.me-menu>*+*,.detail-top){border-color:var(--night-line)}
html[data-theme=night] :is(.rec-grid button,.me-menu button,.me-menu a,.me-row-card,.invite-head h2){color:var(--night-text)}
html[data-theme=night] .chip-btn:disabled{background:var(--night-raised);color:var(--night-muted)}
.settings-page.v2 .account-body{display:flex;align-items:center;gap:16px}.settings-page.v2 .account-body>div:last-child{flex:1;min-width:0}
.settings-page.v2 .account-body .avatar{width:56px;height:56px}
@media(max-width:350px){.brand small{letter-spacing:1.5px}.brand>div{min-width:0;overflow:hidden}}
.stake-controls button.active{background:#dbe7fb!important;color:var(--v2-primary)!important;border-color:#9cbcf0!important;box-shadow:inset 0 0 0 1px #9cbcf0}
html[data-theme=night] .stake-controls button.active{background:#1d2a44!important;color:#8fb6ff!important;border-color:#2c3f63!important}
.invite-code-big{font-size:clamp(17px,5.4vw,24px);letter-spacing:1.5px;font-family:ui-monospace,Menlo,monospace;overflow-wrap:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* rolling reel for undrawn numbers */
.lottery-digits b[data-roll]{position:relative;overflow:hidden;--cell:56px}
.lottery-digits b[data-roll] .reel{position:absolute;left:0;right:0;top:0;display:flex;flex-direction:column;transform:translateY(calc(var(--p,0) * -1 * var(--cell)));will-change:transform}
.lottery-digits b[data-roll] .reel i{display:grid;place-items:center;height:var(--cell);font-style:normal}
.lottery-digits b[data-roll]:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(#0a1c47aa,#0a1c4700 32%,#0a1c4700 68%,#0a1c47aa);pointer-events:none}
@media(max-width:350px){.lottery-digits b[data-roll]{--cell:50px}}
/* player career pop-up (rank) */
[data-player]{cursor:pointer;-webkit-tap-highlight-color:transparent}
.rank-list-row[data-player]:active,.podium-place[data-player]:active{background:#eef4fd}
dialog[data-kind=player]{animation:v2-pop .18s ease-out}
dialog[data-kind=player]::backdrop,dialog[data-kind=detail]::backdrop{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
@keyframes v2-pop{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:none}}
dialog[data-kind=player] .modalhead h2:empty{display:none}
dialog[data-kind=player] .modalhead{justify-content:flex-end;margin-bottom:-26px;position:relative;z-index:1}
.player-tag{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--v2-muted);margin-top:4px}
.player-tag svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8}
.player-head{display:flex;flex-direction:column;align-items:center;gap:4px;margin:6px 0 12px}
.player-head .podium-frame{width:96px;height:96px}
.player-head .podium-frame .rank-avatar{width:54%;height:54%;font-size:22px;background:#dde8f7;border:0}
.player-head .podium-frame.plain .rank-avatar{width:68px;height:68px;border:3px solid #fff;box-shadow:0 4px 12px #1f4ea333}
.player-head h3{margin:2px 0 0;font-size:19px;text-align:center;overflow-wrap:anywhere}
.player-head p{display:flex;align-items:center;gap:6px;margin:0;font-size:11px;color:var(--v2-muted)}
.player-score{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-radius:14px;background:linear-gradient(150deg,#f3f7ff,#e2ecfb);border:1px solid #d6e3f6}
.player-score small{font-size:11px;color:var(--v2-muted)}.player-score b{font-size:24px;color:var(--v2-primary);font-variant-numeric:tabular-nums}
.player-score em,.player-stats em{font-style:normal;font-size:9px;margin-left:3px;color:var(--v2-muted)}
.player-stats{display:grid;grid-template-columns:1fr 1fr;margin:10px 0}
.player-stats>div{padding:8px 4px;text-align:center}.player-stats>div+div{border-left:1px solid #e0e9f6}
.player-stats small{display:block;font-size:10.5px;color:var(--v2-muted)}.player-stats b{font-size:18px}
.player-rate{display:flex;align-items:center;gap:16px;padding:12px 14px;border-radius:14px;border:1px solid #e0e9f6;background:#fafcff;margin-bottom:8px}
.rate-ring{flex-shrink:0;width:66px;height:66px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--v2-primary-2) var(--deg),#dfe8f5 0)}
.rate-ring b{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#fff;font-size:13px;color:var(--v2-primary)}
.player-rate>div b{display:block;font-size:14px}.player-rate small{display:block;font-size:10.5px;color:var(--v2-muted)}
/* glossy result balls + 咪牌 */
.result-ball{position:relative;box-shadow:inset 0 -4px 8px #0003,0 6px 12px #18385826}
.result-ball:before{content:"";position:absolute;left:18%;top:10%;width:42%;height:30%;border-radius:50%;background:radial-gradient(#ffffffb0,#fff0 70%);pointer-events:none}
.ball-0{background:radial-gradient(circle at 35% 30%,#5fd0b7,#159a82 60%,#0c6f5d)}
.ball-1{background:radial-gradient(circle at 35% 30%,#f08a92,#c94550 60%,#96262f)}
.ball-2{background:radial-gradient(circle at 35% 30%,#7fb0ff,#3569d0 60%,#1d449b)}
.sum-ball{background:radial-gradient(circle at 35% 30%,#d4e8ff,#79b0f2 55%,#3d7fd6);color:#0f2d5a}
.result-ball.covered{border:0;cursor:pointer;background:radial-gradient(circle at 35% 30%,#8aa0bf,#51688a 60%,#34496a);color:#e4ecf7;font:inherit;font-weight:800;font-size:22px;animation:v2-wobble 1.6s ease-in-out infinite}
.sum-ball.covered{animation:none;cursor:default}
.result-ball.flip{animation:v2-flip .45s ease-out}
@keyframes v2-flip{0%{transform:rotateY(90deg) scale(.9)}100%{transform:none}}
@keyframes v2-wobble{50%{transform:translateY(-2px)}}
.reveal-toggle.mipai{display:inline-flex;align-items:center;gap:4px}
.reveal-toggle.mipai img{width:16px;height:16px}
.reveal-toggle.mipai.on{background:#dbe7fb;color:var(--v2-primary);border-color:#9cbcf0}
@media(prefers-reduced-motion:reduce){.result-ball.covered,.result-ball.flip,dialog[data-kind=player]{animation:none}}
/* messages / orders / help */
.msg-tools{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}
.msg-tools button{padding:10px;border-radius:12px;border:1px solid #d9e5f5;background:#fff;color:var(--v2-primary);font-weight:700;font-size:13px}
.msg-row{display:flex;gap:12px;padding:13px 12px;margin-bottom:10px;border-radius:16px;border:1px solid #e0e9f6;background:#fff;box-shadow:0 4px 12px #1f4ea30a}
.msg-row.unread{border-color:#b9d0f3;background:linear-gradient(150deg,#fff,#f1f6ff)}
.msg-row>img{width:36px;height:36px;flex-shrink:0;border-radius:50%}
.msg-row>div{flex:1;min-width:0}.msg-top{display:flex;justify-content:space-between;gap:8px}
.msg-top small{font-size:10.5px;color:var(--v2-muted);white-space:nowrap}
.msg-row b{display:block;font-size:14px;margin:2px 0}.msg-row p{margin:0;font-size:12px;color:#4c6285}.msg-row strong{color:var(--v2-primary)}
.order-card h2{display:flex;align-items:center;font-size:16px}
.help-group{border-radius:18px}
.help-group .help-row{border-radius:12px;background:#f3f7fd;border:1px solid #e3ebf6}
.help-group .section-heading small{color:var(--v2-primary);background:#e3edfd;padding:2px 8px;border-radius:6px}
/* night */
html[data-theme=night] :is(.player-score,.player-rate,.msg-row,.msg-tools button,.help-group .help-row){background:var(--night-raised);border-color:var(--night-line);color:var(--night-text)}
html[data-theme=night] .msg-row.unread{background:#1b2436;border-color:#2c3f63}
html[data-theme=night] :is(.player-score b,.rate-ring b,.msg-row strong,.msg-tools button){color:#8fb6ff}
html[data-theme=night] .rate-ring{background:conic-gradient(#5d8ff0 var(--deg),#2a3346 0)}html[data-theme=night] .rate-ring b{background:var(--night-panel)}
html[data-theme=night] .player-stats>div+div{border-color:var(--night-line)}
html[data-theme=night] :is(.msg-row p,.player-head p){color:var(--night-muted)}
html[data-theme=night] .rank-list-row[data-player]:active,html[data-theme=night] .podium-place[data-player]:active{background:var(--night-raised)}
html[data-theme=night] .help-group .section-heading small{background:#1d2a44;color:#8fb6ff}
html[data-theme=night] .reveal-toggle.mipai.on{background:#1d2a44;color:#8fb6ff;border-color:#2c3f63}
.player-card{color:var(--v2-ink)}.player-head h3,.player-stats b,.player-rate>div b{color:var(--v2-ink)}
html[data-theme=night] .player-card,html[data-theme=night] .player-head h3,html[data-theme=night] .player-stats b,html[data-theme=night] .player-rate>div b{color:var(--night-text)}

/* Touch feel and no zoom */
html{touch-action:manipulation;-webkit-text-size-adjust:100%;text-size-adjust:100%}html{overflow-x:hidden}body{overflow-x:clip}
:where(button,a,summary,[data-player]){-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;transition:transform .16s cubic-bezier(.2,.7,.3,1),opacity .16s,background-color .2s,color .2s,box-shadow .2s}
:where(button:not(:disabled),a[href],summary,[data-player]):active{transform:scale(.97);opacity:.86;transition-duration:.06s}
dialog[open]{animation:v2-pop .2s cubic-bezier(.2,.7,.3,1)}
@media (prefers-reduced-motion:reduce){dialog[open]{animation:none}:where(button,a,summary,[data-player]):active{transform:none}}
nav a:active{transform:none;opacity:1}
nav a.active .nav-icon,html[data-theme=night] nav a.active .nav-icon{background:none;box-shadow:none}
nav a.active:after{display:none}
nav a{z-index:1}nav a .nav-icon svg{transition:stroke-width .2s}
.nav-pill,.nav-line{position:absolute;left:0;top:0;pointer-events:none;opacity:0;transform-origin:center}
.nav-pill{width:46px;height:32px;border-radius:12px;background:linear-gradient(180deg,#e7f0fe,#d3e2fa);box-shadow:inset 0 0 0 1px #c6d9f5,0 4px 10px #3a6fd41a}
.nav-line{width:14px;height:2px;border-radius:2px;background:var(--v2-primary)}
html[data-theme=night] .nav-pill{background:#1d2a44;box-shadow:inset 0 0 0 1px #2c3f63}
html[data-theme=night] .nav-line{background:#8fb6ff}
.draw-balls.pop .result-ball:not(.covered):not(.flip){animation:ball-in .42s cubic-bezier(.3,1.4,.5,1) both}
.draw-balls.pop .ball-1{animation-delay:.09s!important}.draw-balls.pop .ball-2{animation-delay:.18s!important}.draw-balls.pop .ball-3{animation-delay:.27s!important}
@keyframes ball-in{from{opacity:0;transform:scale(.4)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.draw-balls.pop .result-ball{animation:none!important}}
/* 彩票红包：红色全屏页（不随夜间模式变化） */
.app.rp-mode,html[data-theme=night] .app.rp-mode{background:radial-gradient(120% 60% at 50% 0,#d8262c,#a10f17 55%,#7a0a10);padding-bottom:24px;min-height:100dvh}
.app.rp-mode>header,.app.rp-mode>nav,.app.rp-mode>.status{display:none!important}
.rp-page{position:relative;padding:max(16px,var(--tg-content-safe-area-inset-top,0px)) 14px 20px;color:#fde9c8;display:grid;gap:14px}
.rp-close{position:absolute;left:14px;top:max(14px,var(--tg-content-safe-area-inset-top,0px));z-index:2;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#0000002e;color:#fde9c8}
.rp-box{background:linear-gradient(180deg,#9c121b,#7c0c14);border:1px solid #ffffff1f;border-radius:20px;padding:18px 16px;box-shadow:inset 0 1px 0 #ffffff1a,0 8px 22px #3a000633}
.rp-box h2{margin:0 0 12px;font-size:17px;font-weight:800;color:#ffd98a;letter-spacing:.5px}
.rp-hero{padding:16px 14px 14px}
.rp-hero h1{margin:4px 40px 14px;text-align:center;font-size:19px;line-height:1.4;font-weight:800;color:#ffe2a6;text-shadow:0 1px 0 #5a0008}
.rp-banner{display:block;width:100%;border-radius:14px;box-shadow:0 4px 14px #0000004d}
.rp-banner-empty{display:grid;justify-items:center;gap:2px;padding:22px 10px;background:linear-gradient(160deg,#e4393f,#b3121b);border:1px solid #ffd98a40}
.rp-banner-empty span{font-size:46px;line-height:1.2}.rp-banner-empty b{font-size:22px;color:#ffe2a6;letter-spacing:4px}.rp-banner-empty small{font-size:12px;color:#fde9c8b3}
.rp-head{margin:0;font-size:17px;font-weight:800;color:#fff4dc}
.rp-sub{margin:4px 0 0;font-size:13px;color:#fde9c8b3}
.rp-num{font-size:18px;letter-spacing:3px;color:#ffd98a}
.rp-meter{margin-top:14px;padding:14px 16px;border-radius:14px;background:#4d050b8c}
.rp-meter small{display:block;font-size:13px;color:#fde9c8b3}
.rp-meter strong{display:block;margin:2px 0 10px;font-size:28px;line-height:1.2;font-weight:800;color:#ffd166;font-variant-numeric:tabular-nums}
.rp-bar{height:8px;border-radius:8px;background:#ffffff1f;overflow:hidden}
.rp-bar i{display:block;height:100%;min-width:8px;border-radius:8px;background:linear-gradient(90deg,#ffe08a,#f7b733)}
.rp-captcha{margin-top:14px;display:grid;gap:10px}
.rp-code{display:flex;align-items:center;gap:10px}
.rp-code img{flex:1;min-width:0;height:56px;object-fit:contain;border-radius:12px;background:#fff;image-rendering:pixelated}
.rp-refresh{width:46px;height:46px;flex-shrink:0;border-radius:12px;display:grid;place-items:center;background:#ffffff1f;color:#ffe2a6}
.rp-captcha input,html[data-theme=night] .rp-captcha input{margin:0;height:50px;text-align:center;font-size:20px;font-weight:700;letter-spacing:8px;border-radius:12px;border:1px solid #ffd98a55;background:#4d050b8c;color:#fff4dc}
.rp-captcha input::placeholder{font-size:14px;letter-spacing:1px;font-weight:500;color:#fde9c880}
.rp-error{margin:0;font-size:13px;color:#ffc2b3}
.rp-btn,html[data-theme=night] .rp-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:52px;margin-top:4px;border-radius:26px;background:linear-gradient(180deg,#ffe29a,#f5b23c);color:#7a1a08;font-size:17px;font-weight:800;text-decoration:none;box-shadow:inset 0 1px 0 #fff8,0 6px 16px #3a00064d}
.rp-box>.rp-btn{margin-top:14px}
.rp-btn:disabled{opacity:.6}
.rp-list{list-style:none;margin:0;padding:0}
.rp-list li{display:flex;align-items:center;gap:12px;padding:13px 4px;border-bottom:1px solid #ffffff17}
.rp-list li:last-child{border-bottom:0}
.rp-medal{font-size:18px;width:22px;text-align:center}
.rp-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fde9c8e6}
.rp-list b{color:#ffd166;font-weight:800}
.rp-empty{margin:0;padding:8px 0;text-align:center;font-size:13px;color:#fde9c899}
.rp-more summary{list-style:none;display:flex;align-items:center;justify-content:space-between;cursor:pointer}
.rp-more summary::-webkit-details-marker{display:none}
.rp-more summary h2{margin:0}
.rp-more summary:after{content:"";width:8px;height:8px;border:solid #ffd98a;border-width:2px 2px 0 0;transform:rotate(135deg);transition:transform .2s;margin-right:4px}
.rp-more[open] summary:after{transform:rotate(-45deg)}
.rp-more[open] summary{margin-bottom:12px}
.rp-chip{display:inline-block;margin-bottom:12px;padding:3px 14px;border-radius:14px;font-size:13px;font-weight:700;border:1px solid}
.rp-chip.on{color:#ffd98a;border-color:#ffd98a80;background:#ffd98a1a}
.rp-chip.done{color:#9ff0b8;border-color:#9ff0b880;background:#9ff0b81a}
.rp-chip.off{color:#fde9c899;border-color:#fde9c84d;background:#ffffff0f}
.rp-kv{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;padding:12px 14px;border-radius:12px;background:#4d050b8c;font-size:14px}
.rp-kv span{color:#fde9c8cc}.rp-kv b{color:#fff4dc;font-variant-numeric:tabular-nums;text-align:right}
.rp-more h3{margin:14px 0 8px;font-size:15px;color:#ffd98a}
.rp-rule{margin-bottom:8px;padding:12px 14px;border-radius:12px;background:#4d050b8c;font-size:14px;color:#fde9c8e6}
.rp-foot{margin:4px 0 0;text-align:center;font-size:12px;color:#fde9c899}
.lottery-clock>div{text-align:center}
