:root{--ng-green:#174f40;--ng-green-soft:#28765e;--ng-orange:#f47a37;--ng-gold:#ffc64a;--ng-cream:#fffaf0;--ng-text:#19352d;--ng-muted:#6f817a;--ng-line:rgba(34,86,69,.12)}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:"Microsoft YaHei","PingFang SC",Arial,sans-serif;color:var(--ng-text);background:#f8fbf7}
button,a{font:inherit}
button{cursor:pointer}
.ng-page{min-height:100vh;overflow:hidden;background:radial-gradient(circle at 9% 0,rgba(72,176,137,.11),transparent 29rem),linear-gradient(#f8fbf7,#fffaf2)}
.ng-topbar{display:flex;width:min(1380px,calc(100% - 48px));height:74px;margin:auto;align-items:center;justify-content:space-between}
.ng-topbar>a:first-child{display:flex;align-items:center;gap:12px;color:var(--ng-text);text-decoration:none}
.ng-brand-mark{display:grid;width:44px;height:44px;place-items:center;border-radius:14px;background:linear-gradient(145deg,#2f8066,#164738);box-shadow:0 10px 24px rgba(25,78,62,.2);color:#fff;font-weight:800}
.ng-topbar>a:first-child>span:last-child{display:flex;flex-direction:column}
.ng-topbar b{font-size:17px}.ng-topbar small{margin-top:2px;color:#84928d}
.ng-return-shop{padding:10px 18px;border:1px solid rgba(35,75,63,.12);border-radius:999px;background:#fff;box-shadow:0 7px 20px rgba(32,74,61,.07);color:var(--ng-text);font-size:13px;font-weight:700;text-decoration:none}
.ng-mobile-scene-nav,.ng-mobile-event{display:none}
.ng-campaign{position:relative;isolation:isolate;width:min(1720px,calc(100vw - 24px));height:680px;margin:0 auto;overflow:hidden}
.ng-campaign:after{position:absolute;z-index:1;inset:auto 0 0;height:84px;background:linear-gradient(transparent,#f8fbf7);content:"";pointer-events:none}
.ng-campaign__background{position:absolute;z-index:-2;inset:0}
.ng-campaign__background:after{position:absolute;inset:0;background:linear-gradient(90deg,#f8fbf7 0,transparent 7%,transparent 93%,#f8fbf7 100%);content:""}
.ng-campaign__background img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 51%}
.ng-campaign__copy{position:absolute;z-index:3;top:90px;left:max(72px,calc((100% - 1380px)/2 + 10px));width:430px;min-height:500px;padding:52px 42px 40px;border:1px solid rgba(255,255,255,.22);border-radius:28px;background:linear-gradient(155deg,rgba(18,78,61,.96),rgba(19,66,54,.9));box-shadow:0 24px 70px rgba(25,70,56,.25);color:#fff;backdrop-filter:blur(13px)}
.ng-campaign__copy h1{margin:0;font-size:62px;line-height:1.08;letter-spacing:-4px}
.ng-campaign__copy>p{margin:18px 0 28px;color:rgba(255,255,255,.78);font-size:20px;line-height:1.65}
.ng-campaign__facts{margin:0;padding:0;list-style:none;border-top:1px solid rgba(255,255,255,.12)}
.ng-campaign__facts li{display:grid;grid-template-columns:88px 1fr;gap:8px;padding:15px 0;border-bottom:1px solid rgba(255,255,255,.12);font-size:13px;line-height:1.5}
.ng-campaign__facts b{color:#ffd761}.ng-campaign__facts span{color:rgba(255,255,255,.78)}
.ng-campaign__status{position:relative;margin-top:26px;padding-right:110px}
.ng-campaign__status>span,.ng-campaign__status>small{display:block;color:rgba(255,255,255,.62);font-size:12px}
.ng-campaign__status>small{margin-top:6px}
.ng-campaign__status strong{position:absolute;right:0;bottom:-2px;color:#ffe174}.ng-campaign__status strong b{font-size:50px;line-height:1}.ng-campaign__status strong{font-size:17px}
.ng-campaign__links{display:flex;gap:10px;margin-top:24px}
.ng-campaign__links button{height:44px;padding:0 17px;border:1px solid rgba(255,255,255,.16);border-radius:10px;background:transparent;color:#fff;font-size:12px;font-weight:700}
.ng-campaign__links button:first-child{border-color:#ffd15d;background:#ffd15d;color:#184c3e}
.ng-campaign__links button:disabled{cursor:default;opacity:1}.ng-campaign__links button b{margin-left:4px;color:#ffe278}
.ng-campaign__game {
    position: absolute;
    z-index: 3;
    top: 86px;
    left: 66%;
    display: grid;
    width: 500px;
    height: 500px;
    place-items: center;
    transform: translateX(-20%)
}
.ng-board-wrap {
    position: relative;
    width: 85%;
    height: 85%;
    padding: 20px;
    border: 7px solid #ffc63f;
    border-radius: 52px;
    background: linear-gradient(145deg,#ffb52f,#ffe779 48%,#e98722);
    box-shadow: 0 24px 52px rgba(150,94,23,.28),inset 0 0 0 7px rgba(255,255,255,.48)
}
.ng-board-wrap:before{position:absolute;inset:12px;border:3px dotted rgba(255,255,255,.9);border-radius:35px;content:"";pointer-events:none}
.ng-board{position:relative;z-index:1;display:grid;width:100%;height:100%;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:10px;padding:12px;border-radius:28px;background:rgba(255,250,230,.9);box-shadow:inset 0 7px 24px rgba(169,102,24,.18)}
.ng-board article,.ng-board>button{display:flex;min-width:0;align-items:center;justify-content:center;flex-direction:column;border:0;border-radius:19px}
.ng-board article{position:relative;overflow:hidden;border:2px solid rgba(255,255,255,.72);background:linear-gradient(155deg,#fff,#e4f8f0);box-shadow:0 7px 14px rgba(76,111,95,.12);transition:transform .15s ease,box-shadow .15s ease,filter .15s ease}
.ng-board article:nth-of-type(2n){background:linear-gradient(155deg,#fffdf1,#ffefbe)}
.ng-board article:nth-of-type(3n){background:linear-gradient(155deg,#fff,#ffe4d7)}
.ng-board article img{display:block;width:60px;height:60px;object-fit:contain;filter:drop-shadow(0 5px 5px rgba(79,87,48,.16))}
.ng-board article b{overflow:hidden;max-width:92%;margin-top:8px;color:#29443b;font-size:13px;text-overflow:ellipsis;white-space:nowrap}
.ng-board .is-1{grid-area:1/1}.ng-board .is-2{grid-area:1/2}.ng-board .is-3{grid-area:1/3}.ng-board .is-4{grid-area:2/3}.ng-board .is-5{grid-area:3/3}.ng-board .is-6{grid-area:3/2}.ng-board .is-7{grid-area:3/1}.ng-board .is-8{grid-area:2/1}
.ng-board>button{grid-area:2/2;padding:8px;border:3px solid #ffe070;background:linear-gradient(145deg,#ff8b43,#ed5530);box-shadow:0 9px 0 #bd3d28,0 14px 22px rgba(163,62,34,.28),inset 0 3px 7px rgba(255,255,255,.35);color:#fff}
.ng-board>button:hover{filter:brightness(1.04)}.ng-board>button.is-busy{cursor:wait;filter:saturate(.7)}
.ng-board>button b{font-size:20px;line-height:1.15}.ng-board>button small{margin-top:5px;color:#fff4d9;font-size:11px}
.ng-board article.is-running{z-index:2;transform:translateY(-3px) scale(1.04);box-shadow:0 0 0 5px #fff,0 0 0 9px #ff9c37,0 12px 26px rgba(205,99,32,.32);filter:saturate(1.1)}
.ng-board article.is-hit{z-index:2;box-shadow:0 0 0 5px #fff,0 0 0 9px #ff9c37,0 13px 28px rgba(205,99,32,.35)}
.ng-overview{position:relative;z-index:5;display:grid;width:min(1220px,calc(100% - 48px));grid-template-columns:minmax(0,3.1fr) minmax(280px,1.25fr);gap:22px;margin:-58px auto 0}
.ng-panel,.ng-rules-card{overflow:hidden;border:1px solid var(--ng-line);border-radius:25px;background:rgba(255,255,255,.96);box-shadow:0 20px 55px rgba(39,77,64,.1);backdrop-filter:blur(13px)}
.ng-section-heading{display:flex;min-height:112px;padding:28px 32px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--ng-line)}
.ng-section-heading span,.ng-rules-card header span{color:#e76736;font-size:11px;font-weight:800;letter-spacing:1.2px}
.ng-section-heading h2,.ng-rules-card h2{margin:7px 0 0;font-size:28px}.ng-section-heading p{margin:0;color:#8a9893;font-size:12px}
.ng-prize-list{display:grid;grid-template-columns:repeat(4,1fr)}
.ng-prize-list article{position:relative;display:flex;min-height:160px;padding:22px 12px;align-items:center;justify-content:center;flex-direction:column;border-right:1px solid var(--ng-line);border-bottom:1px solid var(--ng-line);text-align:center}
.ng-prize-list article:nth-child(4n){border-right:0}.ng-prize-list article:nth-child(n+5){border-bottom:0}
.ng-prize-list article>span{position:absolute;top:12px;left:13px;color:#8aa39b;font-size:10px;font-weight:700}
.ng-prize-list article>img{display:block;width:72px;height:72px;object-fit:contain;filter:drop-shadow(0 7px 8px rgba(79,87,48,.13))}
.ng-prize-list article b{display:block;margin-top:10px;font-size:14px}.ng-prize-list article small{display:block;margin-top:4px;color:#8b9994;font-size:10px}
.ng-rules-card{padding:30px 28px;background:linear-gradient(155deg,rgba(255,255,255,.98),rgba(236,248,242,.97))}
.ng-rules-card ol{margin:24px 0 0;padding:0;list-style:none}
.ng-rules-card li{display:grid;grid-template-columns:28px 1fr;gap:10px;margin-top:15px;align-items:start;color:#63766f;font-size:13px;line-height:1.7}
.ng-rules-card li>b{display:grid;width:26px;height:26px;place-items:center;border-radius:8px;background:#dcf2ea;color:#26725b;font-size:12px}
.ng-state{position:absolute;z-index:4;top:50%;left:50%;width:min(520px,80%);padding:42px;border-radius:24px;background:rgba(255,255,255,.94);box-shadow:0 18px 50px rgba(33,78,62,.18);text-align:center;transform:translate(-50%,-50%)}
.ng-state span{color:#e66d37;font-weight:700}.ng-state h2{margin:12px 0 22px}.ng-state a{display:inline-flex;padding:11px 20px;border-radius:10px;background:var(--ng-green);color:#fff;text-decoration:none}
.ng-campaign--paused .ng-campaign__copy{opacity:.38}.ng-campaign--paused .ng-state{display:block}
footer{display:flex;width:min(1220px,calc(100% - 48px));height:88px;margin:auto;align-items:center;justify-content:space-between;color:#71847d;font-size:13px}footer a{color:#56766b}
.ng-toast{position:fixed;z-index:1100;left:50%;bottom:38px;max-width:min(440px,calc(100% - 40px));padding:13px 20px;border-radius:12px;background:rgba(18,53,43,.94);color:#fff;opacity:0;pointer-events:none;transform:translate(-50%,14px);transition:.22s}.ng-toast.is-show{opacity:1;transform:translate(-50%,0)}
.ng-mobile-overlay{display:none}
.ng-modal-open{overflow:hidden}
.ng-desktop-modal{position:fixed;z-index:1000;display:none;inset:0;padding:28px;align-items:center;justify-content:center;background:rgba(14,42,33,.56);backdrop-filter:blur(7px)}
.ng-desktop-modal.is-open{display:flex}
.ng-desktop-modal__panel{position:relative;width:min(620px,100%);max-height:min(760px,calc(100vh - 56px));overflow:hidden;border-radius:24px;background:#fff;box-shadow:0 28px 90px rgba(7,34,25,.3)}
.ng-desktop-modal__close{position:absolute;z-index:2;top:20px;right:20px;display:grid;width:42px;height:42px;place-items:center;border:0;border-radius:50%;background:#e8f4ef;color:#2a6b56;font-size:28px}
.ng-desktop-modal__panel>header{padding:34px 34px 24px;border-bottom:1px solid var(--ng-line)}
.ng-desktop-modal__panel>header span{color:#e66b3a;font-size:11px;font-weight:800;letter-spacing:1.3px}.ng-desktop-modal__panel>header h2{margin:7px 0 4px;font-size:30px}.ng-desktop-modal__panel>header p{margin:0;color:#86958f}
.ng-desktop-modal__body{max-height:540px;padding:8px 34px 30px;overflow-y:auto}.ng-history>div{display:grid;grid-template-columns:100px minmax(0,1fr) auto;gap:14px;padding:17px 0;align-items:center;border-bottom:1px dashed #dce5e1}.ng-history span{color:#8a9893}.ng-history b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ng-history em{color:#eb6234;font-style:normal;font-weight:700}.ng-history a{color:#277a60}.ng-history>p{padding:26px 0;color:#84938d;text-align:center}
.ng-desktop-history-more{display:block;width:100%;height:42px;margin-top:20px;border:1px solid #d9e6e1;border-radius:10px;background:#f1f8f5;color:#276c57;font-weight:700}.ng-desktop-history-more[hidden]{display:none}
@media(max-width:1280px) and (min-width:768px){.ng-campaign__copy{left:44px;width:390px}.ng-campaign__copy h1{font-size:52px}.ng-campaign__game{left:57%;width:460px;height:460px}.ng-board-wrap{padding:26px}.ng-overview{width:calc(100% - 56px)}}
@media(max-width:767px){
    html,body{background:#fff}.ng-page{min-height:100svh;background:#fff}.ng-topbar,main,footer,.ng-desktop-modal{display:none!important}
    .ng-mobile-event{position:relative;display:block;min-height:100svh;overflow:hidden;background:linear-gradient(#46c5f3,#fff2b7)}
    .ng-mobile-event__background{position:absolute;z-index:0;inset:0}.ng-mobile-event__background img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}
    .ng-mobile-scene-nav{position:absolute;z-index:12;top:max(14px,env(safe-area-inset-top));right:14px;left:14px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}.ng-mobile-scene-nav a{display:grid;width:40px;height:40px;place-items:center;border:1px solid rgba(255,255,255,.72);border-radius:50%;background:rgba(255,255,255,.86);box-shadow:0 6px 18px rgba(24,105,119,.16);color:#256c59;font-size:24px;text-decoration:none;pointer-events:auto;backdrop-filter:blur(8px)}
    .ng-mobile-title{position:absolute;z-index:2;top:max(18px,env(safe-area-inset-top));right:20px;left:20px;text-align:center;color:#fff;text-shadow:0 2px 8px rgba(9,102,142,.2)}.ng-mobile-title h1{margin:0;font-size:clamp(32px,10vw,44px);line-height:1.1;letter-spacing:-1px}.ng-mobile-title p{margin:7px 0 0;font-size:15px;font-weight:700;line-height:1.3;letter-spacing:.4px}
    .ng-mobile-machine{position:absolute;z-index:3;top:140px;left:50%;width:min(500px,126vw);aspect-ratio:941/1099;transform:translateX(-50%)}
    .ng-mobile-machine__shell{position:absolute;z-index:1;display:block;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none;user-select:none}
    .ng-mobile-machine__screen{position:absolute;z-index:2;top:17.4%;left:16.5%;width:67%;aspect-ratio:1/1;overflow:hidden;border-radius:8%}
    .ng-mobile-machine .ng-board{gap:7px;padding:9px;border:4px solid #ffb52d;border-radius:27px;background:rgba(255,247,213,.95);box-shadow:inset 0 0 0 4px rgba(255,255,255,.55)}
    .ng-mobile-machine .ng-board article{border-radius:15px}.ng-mobile-machine .ng-board article img{width:48px;height:48px}.ng-mobile-machine .ng-board article b{margin-top:3px;font-size:11px}.ng-mobile-machine .ng-board>button{border-width:2px;border-radius:16px;box-shadow:0 6px 0 #bd3d28,0 10px 15px rgba(163,62,34,.22)}.ng-mobile-machine .ng-board>button b{font-size:17px}.ng-mobile-machine .ng-board>button small{font-size:9px}
    .ng-mobile-machine .ng-board article.is-running,.ng-mobile-machine .ng-board article.is-hit{box-shadow:0 0 0 3px #fff,0 0 0 6px #ff8a31,0 8px 16px rgba(205,99,32,.3)}
    .ng-mobile-machine .ng-mobile-remaining{position:absolute;z-index:4;top:80.5%;left:50%;width:46%;padding:8px 10px;border:2px solid rgba(255,177,55,.48);border-radius:999px;background:rgba(255,255,255,.94);box-shadow:0 8px 20px rgba(116,87,28,.12);color:#92602c;text-align:center;transform:translateX(-50%);white-space:nowrap}.ng-mobile-remaining b{color:#e45c39}
    .ng-mobile-actions{position:absolute;z-index:5;right:14px;bottom:max(12px,env(safe-area-inset-bottom));left:14px;display:grid;grid-template-columns:76px minmax(0,1fr) 76px;gap:8px;align-items:end}.ng-mobile-actions button{min-width:0;padding:0;border:0;background:none;color:#7b653f}.ng-mobile-actions>button:not(.ng-mobile-cta){display:flex;height:68px;align-items:center;justify-content:flex-end;flex-direction:column;font-size:12px;font-weight:700}.ng-mobile-actions>button:not(.ng-mobile-cta) i{display:grid;width:42px;height:42px;margin-bottom:4px;place-items:center;border:3px solid #fff;border-radius:50%;background:linear-gradient(#fff8db,#ffd767);box-shadow:0 7px 14px rgba(155,89,34,.2);color:#cc6a36;font-size:22px}.ng-mobile-actions>button:not(.ng-mobile-cta) span{white-space:nowrap;word-break:keep-all}
    .ng-mobile-actions .ng-mobile-cta{display:flex;min-height:62px;padding:7px 12px;align-items:center;justify-content:center;flex-direction:column;border:3px solid #fff;border-radius:99px;background:linear-gradient(#ff8b59,#f05c44);box-shadow:0 7px 0 #bd3e35,0 12px 24px rgba(160,58,49,.3);color:#fff}.ng-mobile-cta b,.ng-mobile-cta small{display:block}.ng-mobile-cta b{font-size:18px;white-space:nowrap}.ng-mobile-cta small{margin-top:2px;font-size:11px;line-height:1.2}.ng-mobile-cta.is-busy{filter:saturate(.65)}
    .ng-mobile-state{position:relative;z-index:4;width:calc(100% - 44px);margin:150px auto 0;padding:28px;border-radius:22px;background:rgba(255,255,255,.94);text-align:center}.ng-mobile-state b{font-size:22px}.ng-mobile-state p{color:#76827d;line-height:1.7}.ng-mobile-state a{display:inline-flex;padding:10px 20px;border-radius:10px;background:#24765d;color:#fff;text-decoration:none}
    .ng-mobile-overlay{position:fixed;z-index:1000;display:flex;inset:0;padding:18px;align-items:center;justify-content:center;background:rgba(28,33,31,.62);opacity:0;pointer-events:none;transition:.2s;backdrop-filter:blur(8px)}.ng-mobile-overlay.is-open{opacity:1;pointer-events:auto}
    .ng-mobile-sheet{position:relative;display:none;width:100%;max-height:86svh;padding:34px 28px 28px;overflow-y:auto;border:3px solid #6bc3a6;border-radius:28px;background:linear-gradient(#fffef7,#f4fff9);box-shadow:0 26px 70px rgba(16,61,47,.35)}.ng-mobile-sheet.is-active{display:block}.ng-mobile-sheet__close{position:absolute;top:18px;right:18px;display:grid;width:46px;height:46px;place-items:center;border:0;border-radius:50%;background:#e4f5ee;color:#3e806b;font-size:28px}.ng-mobile-sheet>span{color:#df6b42;font-size:12px;font-weight:800;letter-spacing:1.4px}.ng-mobile-sheet h2{margin:8px 0 22px;font-size:30px}.ng-mobile-sheet ol{margin:0;padding:0;list-style:none}.ng-mobile-sheet li{display:grid;grid-template-columns:28px 1fr;gap:10px;margin-top:15px}.ng-mobile-sheet li>b{display:grid;width:27px;height:27px;place-items:center;border-radius:8px;background:#daf1e8;color:#29755d}.ng-mobile-sheet li p{margin:2px 0;color:#677a72;line-height:1.65}
    .ng-mobile-balance{padding:13px 16px;border-radius:12px;background:#eaf7f1;color:#5a756a}.ng-mobile-balance b{color:#e4653b}.ng-mobile-sheet .ng-history>div{grid-template-columns:78px minmax(0,1fr) auto;gap:8px;padding:15px 0;font-size:13px}.ng-mobile-history-status{margin:16px 0 0;color:#82918b;text-align:center}.ng-mobile-history-status[hidden]{display:none}
    .ng-result-sheet{text-align:center}.ng-result-badge{display:grid;width:74px;height:74px;margin:0 auto 16px;place-items:center;border-radius:24px;background:linear-gradient(145deg,#ffcf58,#f37b39);box-shadow:0 12px 24px rgba(211,108,42,.25);color:#fff;font-size:38px}.ng-result-sheet>strong{display:block;margin:8px 0;font-size:24px}.ng-result-sheet>p{color:#738179}.ng-result-sheet>a,.ng-result-sheet>button{display:block;width:100%;height:46px;margin-top:12px;border:0;border-radius:13px;background:#20745a;color:#fff;font-weight:700;text-decoration:none;line-height:46px}.ng-result-sheet .ng-result-link{background:#edf7f3;color:#27715a}.ng-result-order-link[hidden]{display:none}
    .ng-toast{bottom:112px;font-size:13px}
}
@media(max-width:380px){.ng-mobile-title h1{font-size:31px}.ng-mobile-actions{grid-template-columns:66px minmax(0,1fr) 66px}.ng-mobile-cta b{font-size:17px}.ng-mobile-actions>button:not(.ng-mobile-cta) span{font-size:11px}.ng-mobile-machine .ng-board article img{width:43px;height:43px}}
@media(max-height:760px) and (max-width:767px){.ng-mobile-machine{top:105px;width:min(454px,126vw)}}
@media(max-height:720px) and (max-width:767px){.ng-mobile-title{top:max(18px,env(safe-area-inset-top))}.ng-mobile-title h1{font-size:31px}.ng-mobile-title p{font-size:13px}.ng-mobile-actions{bottom:8px}.ng-mobile-actions .ng-mobile-cta{min-height:58px}.ng-mobile-actions>button:not(.ng-mobile-cta){height:61px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
