/* ！！！切勿直接改动该文件，该文件由 generator.ts 自动生成！！！ *//* !!! DONT MODIFY THIS FILE DIRECTLY, THIS FILE IS GENERATED BY generator.ts AUTOMATICALLY !!! *//* ===== 底部主导航（1:1 复刻 NG 凸起激活态） ===== */
.ng-bottom-nav{position:fixed;z-index:100;right:50%;bottom:0;transform:translateX(50%);width:min(100%,920px);min-height:78px;padding:8px max(8px,env(safe-area-inset-right)) calc(6px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:end;overflow:visible;isolation:isolate;background:transparent;}
.ng-bottom-nav::before{content:"";position:absolute;z-index:0;right:0;bottom:0;left:0;height:calc(46px + env(safe-area-inset-bottom));pointer-events:none;background:rgba(8,13,40,.96);border-radius:22px 22px 0 0;box-shadow:0 -8px 24px rgba(20,36,62,.22);backdrop-filter:blur(18px) saturate(135%);-webkit-backdrop-filter:blur(18px) saturate(135%);}
.ng-bottom-nav__item{position:relative;z-index:1;min-width:0;min-height:68px;padding:2px 3px 1px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#a9b1dc;text-decoration:none;border-radius:18px;-webkit-tap-highlight-color:transparent;transition:color .25s ease,background-color .25s ease,transform .12s ease;}
.ng-bottom-nav__item:active{transform:scale(.94);}
.ng-bottom-nav__icon{position:relative;z-index:1;width:46px;height:46px;display:grid;place-items:center;transform-origin:center bottom;transition:transform .28s cubic-bezier(.22,1,.36,1);}
.ng-bottom-nav__icon img{width:100%;height:100%;object-fit:contain;display:block;opacity:.8;filter:brightness(.82) saturate(.92) drop-shadow(0 3px 6px rgba(11,18,31,.3));transition:opacity .25s ease,filter .25s ease;}
.ng-bottom-nav__item[aria-current="page"] .ng-bottom-nav__icon img{opacity:1;filter:drop-shadow(0 6px 16px rgba(118,92,255,.65));}
.ng-bottom-nav__label{position:relative;z-index:2;min-width:42px;max-width:100%;margin-top:-4px;padding:2px 7px 3px;font-size:10px;font-weight:700;line-height:1.2;color:#fff;text-align:center;white-space:nowrap;text-overflow:ellipsis;border:1px solid rgba(118,92,255,.3);border-radius:999px;background:#11172f;box-shadow:0 3px 8px rgba(11,18,31,.18);}
.ng-bottom-nav__item[aria-current="page"]{color:#765cff;background:transparent;}
.ng-bottom-nav__item[aria-current="page"] .ng-bottom-nav__icon{transform:translateY(-6px) scale(1.16);}
.ng-bottom-nav__item[aria-current="page"] .ng-bottom-nav__label{border-color:#a78bfa;background:linear-gradient(180deg,#7c66ff,#5b44e0);}
.ng-bottom-nav__item[aria-current="page"]::after{content:"";position:absolute;right:28%;bottom:-3px;left:34%;height:2px;border-radius:99px 99px 0 0;background:#765cff;}
.ng-bottom-nav__item--home .ng-bottom-nav__label{min-width:50px;}
#cardsScroll{padding-bottom:calc(92px + env(safe-area-inset-bottom)) !important;scroll-padding-bottom:92px;}@media(max-width:360px){.ng-bottom-nav{padding-inline:5px}.ng-bottom-nav__item{min-height:59px}.ng-bottom-nav__icon{width:38px;height:38px}.ng-bottom-nav__label{min-width:38px;padding-inline:6px;font-size:9px}}@media(orientation:landscape) and (max-height:560px){.ng-bottom-nav{min-height:58px;padding-top:4px}.ng-bottom-nav__item{min-height:48px}}/* ===== 平台卡片：深色宇宙玻璃风（1:1 复刻 NG） ===== */
#cardsScroll{
  background:
    radial-gradient(900px 520px at 10% -8%, rgba(118,92,255,.16), transparent 55%),
    radial-gradient(820px 520px at 112% -2%, rgba(56,189,248,.12), transparent 50%),
    linear-gradient(180deg, rgba(10,14,42,.34), rgba(7,10,30,.92) 30%, #06091d 100%);
}
#cardsScroll .section h2{ color:#eaf0ff; }
.card-row--platform{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; padding:0; background:none; border:none; box-shadow:none; border-radius:0; }
.card--platform{
  position:relative; display:grid; grid-template-columns:62px minmax(0,1fr) 92px;
  grid-template-areas:"avatar meta go"; align-items:center; gap:13px; padding:16px;
  border-radius:22px; border:1px solid rgba(125,112,255,.38); color:#f5f4ff;
  background:
    radial-gradient(circle at 86% 6%, rgba(70,197,255,.14), transparent 34%),
    linear-gradient(145deg, rgba(114,91,255,.16), rgba(0,0,0,0) 48%),
    rgba(13,18,52,.8);
  box-shadow:0 6px 20px rgba(3,9,23,.28), inset 0 1px 0 rgba(255,255,255,.05);
  backdrop-filter:blur(12px) saturate(1.1); -webkit-backdrop-filter:blur(12px) saturate(1.1);
  opacity:0; animation:iosCardIn .62s cubic-bezier(.22,1,.36,1) forwards;
  animation-delay:var(--stagger,0ms);
  transition:transform .3s cubic-bezier(.22,1,.36,1), border-color .3s, box-shadow .3s;
}
.card--platform:hover{
  transform:translateY(-3px); border-color:rgba(146,136,255,.66);
  box-shadow:0 16px 36px rgba(3,9,23,.45), 0 0 0 1px rgba(125,112,255,.28), inset 0 1px 0 rgba(255,255,255,.09);
}
.card--platform .avatar{
  grid-area:avatar; width:62px; height:62px; border-radius:50%; object-fit:cover;
  border:2px solid rgba(87,132,205,.68);
  box-shadow:0 0 0 4px rgba(116,91,255,.1), 0 0 22px rgba(52,205,255,.18);
  background:linear-gradient(145deg,#1c3557,#10233c);
}
.card--platform .meta{ grid-area:meta; min-width:0; }
.card--platform .title{ font-size:17px; font-weight:800; color:#edf4ff; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.card--platform .desc{ margin-top:3px; font-size:13px; line-height:1.35; font-weight:400; color:#94a6bf; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; }
.card--platform .go{
  grid-area:go; display:inline-flex; align-items:center; justify-content:center;
  width:92px; height:36px; border-radius:10px; font-size:12px; font-weight:600; color:#fff;
  text-decoration:none; border:1px solid rgba(126,225,255,.66);
  background:linear-gradient(120deg,#415ddd,#6443ba);
  box-shadow:0 6px 14px rgba(80,70,200,.38), inset 0 1px 0 rgba(255,255,255,.18);
  transition:transform .15s, filter .25s, box-shadow .25s;
}
.card--platform .go:hover{ filter:brightness(1.12); box-shadow:0 9px 22px rgba(100,80,230,.55), inset 0 1px 0 rgba(255,255,255,.24); }
.card--platform .go:active{ transform:scale(.95); }
.card-rec-badge{
  position:absolute; top:0; right:10px; z-index:2; display:inline-flex; align-items:center;
  height:20px; padding:1px 9px; font-size:11px; font-weight:700; color:#fff;
  border-radius:0 0 7px 7px; letter-spacing:.5px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.4), 0 4px 11px rgba(0,0,0,.28);
}
.badge-color-hot{ background:linear-gradient(120deg,#d91f3e 0%,#f33f32 45%,#ff8b20 100%); }
.badge-color-premium{ background:linear-gradient(120deg,#6536de 0%,#8b4df2 48%,#cf4fc4 100%); }
.badge-color-verified{ background:linear-gradient(120deg,#1559d7 0%,#167df0 48%,#12a4f3 100%); }/* 移动端：导航链接卡片保持 3 个一行（对齐线上站），并改为竖排卡片样式 */@media(max-width:860px){
  .card-row--platform{ grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
  .card--platform{
    display:flex; flex-direction:column; align-items:center; justify-content:flex-start;
    gap:7px; padding:12px 6px 10px; text-align:center; min-width:0;
  }
  .card--platform .avatar{ width:46px; height:46px; }
  .card--platform .meta{ width:100%; min-width:0; }
  .card--platform .title{ font-size:12.5px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  .card--platform .desc{ display:none; }
  .card--platform .go{ width:100%; height:30px; font-size:11.5px; border-radius:9px; }
  .card--platform .card-rec-badge{ top:4px; right:4px; height:16px; padding:0 6px; font-size:9.5px; border-radius:6px; }}@media(max-width:380px){
  .card-row--platform{ gap:6px; }
  .card--platform{ padding:10px 4px 9px; gap:6px; }
  .card--platform .avatar{ width:40px; height:40px; }
  .card--platform .title{ font-size:11.5px; }
  .card--platform .go{ height:28px; font-size:11px; }}/* ===== 第二轮：顶部品牌区/跑马灯/logo条/标题tab 深色宇宙风 ===== */
body{
  background:
    radial-gradient(1100px 620px at 10% -8%, rgba(118,92,255,.16), transparent 42%),
    radial-gradient(900px 560px at 98% 0%, rgba(56,189,248,.12), transparent 44%),
    radial-gradient(820px 620px at 50% 122%, rgba(118,92,255,.1), transparent 52%),
    linear-gradient(160deg,#070b22 0%,#0b1030 52%,#06091d 100%) !important;
  background-attachment:fixed !important;
  color:#e7ecff;
}/* 顶部品牌玻璃面板（仅作用于两个真实顶部导航，避免污染弹窗/卡片里的 <header>） */
.ng-brand-header, .site-header{
  background:linear-gradient(145deg, rgba(113,84,255,.14), rgba(0,0,0,0) 40%, rgba(40,200,255,.1)), rgba(13,18,52,.8) !important;
  border:1px solid rgba(125,112,255,.38) !important;
  box-shadow:0 6px 20px rgba(3,9,23,.28) !important;
  backdrop-filter:blur(18px) saturate(1.22); -webkit-backdrop-filter:blur(18px) saturate(1.22);
  border-radius:22px !important;
}
.ng-brand-header::before, .site-header::before{ opacity:0 !important; }
.ng-brand-header::after, .site-header::after{ background:linear-gradient(90deg,transparent,rgba(125,112,255,.55),transparent) !important; }
.brand .title{ color:#f5f4ff !important; }
.brand-logo{ filter:drop-shadow(0 6px 14px rgba(118,92,255,.4)); }
.nav-links a{ color:#e7ecff !important; }/* 右上主按钮 */
.nav-main-btn{
  background:linear-gradient(120deg,#415ddd,#6443ba) !important;
  color:#fff !important;
  border:1px solid rgba(126,225,255,.6) !important;
  box-shadow:0 8px 20px rgba(80,70,200,.45), inset 0 1px 0 rgba(255,255,255,.2) !important;
  text-shadow:none !important;
}
.nav-main-btn:hover{ filter:brightness(1.1); box-shadow:0 10px 26px rgba(100,80,230,.6), inset 0 1px 0 rgba(255,255,255,.24) !important; }/* 轮播控件协调 */
.carousel-wrap{ border:1px solid rgba(125,112,255,.3) !important; box-shadow:0 14px 34px rgba(3,9,23,.4) !important; }
.dot{ background:rgba(255,255,255,.25) !important; border-color:rgba(255,255,255,.3) !important; }
.dot.active{ background:#765cff !important; box-shadow:0 0 12px rgba(118,92,255,.7) !important; }/* 跑马灯深色玻璃 */
.marquee-wrap{
  background:linear-gradient(145deg, rgba(113,84,255,.14), rgba(0,0,0,0) 40%, rgba(40,200,255,.1)), rgba(13,18,52,.8) !important;
  border:1px solid rgba(125,112,255,.38) !important;
  border-radius:22px !important;
  box-shadow:0 6px 20px rgba(3,9,23,.28) !important;
  backdrop-filter:blur(18px) saturate(1.22); -webkit-backdrop-filter:blur(18px) saturate(1.22);
}
.marquee-wrap::before{ background:linear-gradient(135deg,#765cff,#415ddd) !important; }
.marquee-text{ color:#b8c8e0 !important; text-shadow:none !important; }/* 圆形 logo 条：去外壳、深蓝圆紫边 *//* 区块标题 */
.ng-section-title{
  text-align:center; font-size:24px; font-weight:700; color:#edf4ff;
  letter-spacing:1px; margin:14px 0 12px;
  text-shadow:0 0 24px rgba(118,92,255,.4);
}/* tab 深色玻璃 */
.category-tabs{
  background:rgba(13,18,52,.6) !important;
  border:1px solid rgba(125,112,255,.3) !important;
  box-shadow:0 6px 18px rgba(3,9,23,.3) !important;
  backdrop-filter:blur(14px) saturate(1.2); -webkit-backdrop-filter:blur(14px) saturate(1.2);
}/* 深色下的空状态与页脚文字 */
#cardGrid [style*="color:#"]{ color:#9fb0d0 !important; }@media(max-width:768px){ .ng-section-title{ font-size:20px; }}/* ===== 品牌 logo ===== */
.brand-logo{ height:42px !important; width:auto; object-fit:contain; }
.ng-brand-header{ position:relative; overflow:hidden; }
/* ===== 开奖区容器（保留基础排版） ===== */
.lottery-shell{ width:100%; padding:6px 0 18px; }
.lottery-shell .app-main{ min-height:320px; outline:0; }
/* ===== 客服视图（客服弹窗克隆其 .svc-card 结构） ===== */
.service-view{ position:fixed; top:68px; bottom:0; left:0; right:0; z-index:90; display:none; overflow-y:auto;
  padding:20px 16px calc(96px + env(safe-area-inset-bottom));
  background:
    radial-gradient(1000px 600px at 12% -6%, rgba(118,92,255,.16), transparent 44%),
    linear-gradient(160deg,#070b22 0%,#0b1030 55%,#06091d 100%); }
.service-view.show{ display:block; opacity:1; transform:none; animation:svcIn .3s ease; }@keyframes svcIn{ from{opacity:0; transform:translateY(10px);} to{opacity:1; transform:none;} }
.svc-title{ text-align:center; font-size:24px; font-weight:800; color:#eaf0ff; letter-spacing:.02em; margin:8px 0 4px; }
.svc-title span{ color:#765cff; }
.svc-title::after{ content:""; display:block; width:56px; height:3px; margin:10px auto 0; border-radius:99px;
  background:linear-gradient(90deg,#765cff,#38bdf8); }
.svc-grid{ display:grid; grid-template-columns:1fr; gap:14px; margin:22px auto 0; max-width:860px; }@media(min-width:640px){ .svc-grid{ grid-template-columns:1fr 1fr; } .svc-card:nth-child(odd){ grid-column:1; } .svc-card:nth-child(even){ grid-column:2; }}
.svc-card{ padding:16px; border-radius:18px;
  background:linear-gradient(145deg, rgba(113,84,255,.12), rgba(0,0,0,0) 46%), rgba(13,18,52,.78);
  border:1px solid rgba(125,112,255,.3);
  box-shadow:0 8px 22px rgba(3,9,23,.3);
  }
.svc-card-top{ display:flex; align-items:center; gap:12px; margin-bottom:14px; }
.svc-logo{ width:46px; height:46px; border-radius:14px; flex:0 0 auto; display:flex; align-items:center; justify-content:center; color:#fff; }
.svc-logo--tg{ background:linear-gradient(135deg,#38bdf8,#2563eb); box-shadow:0 6px 14px rgba(37,99,235,.4); }
.svc-logo--ww{ background:linear-gradient(135deg,#fff2e8,#ffe3cc); box-shadow:0 6px 14px rgba(255,122,26,.32); }
.svc-logo--qq{ background:linear-gradient(135deg,#eef4ff,#dbe7ff); box-shadow:0 6px 14px rgba(59,110,220,.3); color:#1f3b8a; }
.svc-logo--img{ background:#f4f6fb; box-shadow:0 6px 14px rgba(30,41,90,.18); }
.svc-logo img{ width:100%; height:100%; object-fit:contain; border-radius:inherit; padding:6px; }
.svc-logo svg{ width:26px; height:26px; }
.svc-meta{ flex:1; min-width:0; }
.svc-meta strong{ display:block; font-size:16px; color:#eaf0ff; font-weight:700; }
.svc-online{ display:inline-flex; align-items:center; gap:5px; font-size:11px; color:#34d399; margin-top:3px; }
.svc-online i{ width:6px; height:6px; border-radius:50%; background:#34d399; box-shadow:0 0 6px #34d399; }
.svc-meta em{ display:block; font-style:normal; font-size:12px; color:#9aa6d0; margin-top:2px; }
.svc-btn{ display:flex; align-items:center; justify-content:center; gap:7px; width:100%; height:46px; border-radius:13px;
  border:none; cursor:pointer; font-size:15px; font-weight:700; text-decoration:none; transition:filter .2s, transform .12s; }
.svc-btn--primary{ background:linear-gradient(135deg,#7c66ff,#5b44e0); color:#fff; box-shadow:0 8px 20px rgba(91,68,224,.4); }
.svc-btn--copy{ background:rgba(118,92,255,.22); color:#c4b5fd; border:1px solid rgba(125,112,255,.4); }
.svc-btn:hover{ filter:brightness(1.1); }
.svc-btn:active{ transform:scale(.98); }
.svc-tip{ max-width:860px; margin:18px auto 0; padding:14px 16px; border-radius:14px;
  background:rgba(118,92,255,.08); border:1px solid rgba(125,112,255,.25);
  display:flex; gap:12px; align-items:flex-start; color:#c4b5fd; }
.svc-tip strong{ display:block; font-size:13px; color:#eaf0ff; }
.svc-tip p{ font-size:12.5px; color:#9aa6d0; line-height:1.6; margin:3px 0 0; }/* 客服卡片排版修正：名称+在线同行；TG 旁小复制按钮 */
.svc-meta-top{ display:flex; align-items:center; justify-content:space-between; gap:8px; }
.svc-meta-top strong{ font-size:16px; color:#eaf0ff; font-weight:700; }
.svc-online{ display:inline-flex; align-items:center; gap:5px; font-size:11px; color:#34d399; }
.svc-action-row{ display:flex; gap:8px; align-items:stretch; }
.svc-action-row .svc-btn{ flex:1; }
.svc-copy-sm{ width:46px; flex:0 0 auto; border-radius:13px; cursor:pointer;
  display:flex; align-items:center; justify-content:center;
  background:rgba(118,92,255,.22); color:#c4b5fd; border:1px solid rgba(125,112,255,.4);
  transition:filter .2s, transform .12s; }
.svc-copy-sm:hover{ filter:brightness(1.15); }
.svc-copy-sm:active{ transform:scale(.92); }
/* ===== 官方公告页 ===== */
#noticeView .nc-tabs{ display:flex; gap:12px; margin:18px auto 0; max-width:860px; }
#noticeView .nc-tab{ flex:1; padding:13px 0; border-radius:13px; cursor:pointer;
  font-size:15px; font-weight:600; text-align:center;
  background:rgba(255,255,255,.06); color:#9aa6d0; border:1px solid rgba(125,112,255,.25);
  transition:background .2s, color .2s; }
#noticeView .nc-tab.is-active{ background:linear-gradient(135deg,#7c66ff,#5b44e0); color:#fff;
  border-color:transparent; box-shadow:0 8px 18px rgba(91,68,224,.4); }
#noticeView .nc-list{ display:flex; flex-direction:column; gap:14px; margin:16px auto 0; max-width:860px; }
#noticeView .nc-card{ display:flex; gap:14px; padding:18px; border-radius:18px;
  background:linear-gradient(145deg, rgba(113,84,255,.12), rgba(0,0,0,0) 46%), rgba(13,18,52,.78);
  border:1px solid rgba(125,112,255,.3);
  box-shadow:0 8px 22px rgba(3,9,23,.3);
  }
#noticeView .nc-ico{ width:46px; height:46px; flex:0 0 auto; }
#noticeView .nc-ico img{ width:46px; height:46px; object-fit:contain; filter:drop-shadow(0 4px 10px rgba(118,92,255,.35)); }
#noticeView .nc-body{ flex:1; min-width:0; }
#noticeView .nc-title{ display:flex; align-items:center; gap:8px; }
#noticeView .nc-title strong{ font-size:15px; color:#a78bfa; font-weight:700; }
#noticeView .nc-badge{ font-size:11px; font-weight:700; color:#7c66ff; background:rgba(118,92,255,.16);
  padding:2px 8px; border-radius:999px; border:1px solid rgba(125,112,255,.3); }
#noticeView .nc-body h3{ font-size:16px; color:#eaf0ff; font-weight:700; margin:8px 0 5px; }
#noticeView .nc-body p{ font-size:14px; color:#9aa6d0; line-height:1.6; }