:root{color:#fff8e8;background:#08060c;font-family:PingFang SC,Microsoft YaHei,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #282429;--cream: #fff7df;--gold: #ffb21a;--stage-ratio: .56221889}*{box-sizing:border-box}html,body,#app{width:100%;min-width:320px;min-height:100%;margin:0}body{min-height:100vh;min-height:100dvh;overflow:hidden;background:#08060c}button,input{font:inherit}button{color:inherit;-webkit-tap-highlight-color:transparent;-webkit-appearance:none;appearance:none}button:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:3px solid #ffe26a;outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.desktop-viewport{width:100%;min-height:100vh;min-height:100dvh;display:grid;place-items:center;background:#08060c}.app-shell{position:relative;width:100%;height:100vh;height:100dvh;min-height:568px;overflow:hidden;isolation:isolate;container-type:inline-size;background:#08060c}.stage-root,.overlay-root,.screen{position:absolute;inset:0}.screen{overflow:hidden;background:#0c090e url(/common/main-bg.jpg) center / cover no-repeat;animation:screen-enter .48s cubic-bezier(.22,1,.36,1) both}@keyframes screen-enter{0%{opacity:0}to{opacity:1}}.primary-button,.small-image-button{border:0;background:transparent url(/common/button-bg.png) center / 100% 100% no-repeat;color:#fffdf4;font-weight:700;cursor:pointer;text-shadow:0 1px 1px rgb(70 25 0 / 20%)}.primary-button{width:72cqw;min-height:max(52px,13.73cqw);font-size:clamp(25px,5.87cqw,44px)}.department-screen{color:#fff8ec}.department-ribbon{position:absolute;pointer-events:none}.department-ribbon--top{top:-8.8cqw;left:50%;width:151.866667cqw;height:auto;transform:translate(-50%)}.department-ribbon--center{top:50%;left:50%;width:120.266667cqw;height:auto;transform:translate(-50%,-69.538462%)}.department-ribbon--bottom{right:-6.666667cqw;bottom:-9.733333cqw;width:72.4cqw;height:auto}.department-heading{position:absolute;top:max(36px,calc(7cqw + env(safe-area-inset-top,0px)));left:0;width:100%;display:flex;align-items:center;justify-content:center;gap:2cqw;z-index:2}.department-heading h1{margin:0;font-size:clamp(30px,7.2cqw,54px);font-weight:700;letter-spacing:.08em}.department-heading img{width:7.6cqw;height:auto}.department-winners{position:absolute;top:50%;left:50%;width:92cqw;height:122cqw;transform:translate(-50%,-50%);z-index:1}.department-winner{position:absolute;top:var(--department-winner-y, 50%);left:var(--department-winner-x, 50%);width:34cqw;min-height:31cqw;padding:0;transform:translate(-50%,-50%) scale(var(--department-winner-scale, 1));transform-origin:center;border:0;background:transparent;color:#ffbd16;cursor:pointer}.department-winner img{display:block;width:22cqw;height:22cqw;margin:0 auto 1.3cqw;object-fit:contain}.department-winner__name,.department-winner__work{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.department-winner__name{font-size:clamp(14px,3.45cqw,26px);font-weight:700;font-style:italic}.department-winner__work{margin-top:.8cqw;font-size:clamp(10px,1.8cqw,14px)}.department-more{position:absolute;left:50%;bottom:max(34px,calc(8.533333cqw + env(safe-area-inset-bottom,0px)));display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:44cqw;height:max(44px,12.8cqw);padding:0;transform:translate(-50%);border:0;background:transparent;font-size:clamp(19px,4.27cqw,32px);font-weight:700;cursor:pointer}.department-more__asset-slot{display:block;width:0;height:0;margin:1.5cqw auto 0;border-top:3.2cqw solid #ffc141;border-right:1.6cqw solid transparent;border-left:1.6cqw solid transparent}.home-screen{background-position:center}.home-screen img{position:absolute;pointer-events:none;user-select:none}.home-logo{display:none}.home-title{top:5.333333cqw;left:50%;width:70.666667cqw;height:auto;transform:translate(-50%);z-index:6}.home-human-layer{position:absolute;top:50%;left:3.333333cqw;width:105.866667cqw;aspect-ratio:794 / 830;transform:translateY(-50%);pointer-events:none;z-index:4}.home-light-anchor{position:absolute;top:40.722892%;left:26.448363%;width:15.11335%;aspect-ratio:800 / 795;transform:translate(-51.9625%,-46.0881%);pointer-events:none;z-index:1}.home-light{inset:0;width:100%;height:100%;transform-origin:51.9625% 46.0881%;animation:home-light-twinkle 5.6s cubic-bezier(.65,0,.35,1) infinite}.home-human{inset:0;width:100%;height:auto;object-fit:contain;z-index:2}.home-cloud--left-one{top:-55.066667cqw;left:-25.333333cqw;width:103.733333cqw;height:auto;z-index:2}.home-cloud--left-two{bottom:-41.066667cqw;left:-45.066667cqw;width:131.2cqw;height:auto;z-index:2}.home-cloud--right{top:-12.266667cqw;right:-27.066667cqw;width:59.733333cqw;height:auto;z-index:2}.home-floating{animation:home-floating-drift 4.8s cubic-bezier(.65,0,.35,1) var(--home-float-delay, 0s) infinite;z-index:3}.home-floating--1{display:none;--home-float-delay: -.37s}.home-floating--2{width:29cqw;left:2cqw;bottom:15cqw;--home-float-delay: -1.23s}.home-floating--3{top:52.533333cqw;left:39.333333cqw;width:11.6cqw;height:auto;--home-float-delay: -2.91s}.home-floating--4{top:1.066667cqw;left:6.533333cqw;width:20cqw;height:auto;--home-float-delay: -4.16s}.home-floating--5{left:57.466667cqw;bottom:11.733333cqw;width:17.733333cqw;height:auto;--home-float-delay: -.86s}.home-floating--6{right:-7.6cqw;bottom:14cqw;width:23.333333cqw;height:auto;--home-float-delay: -3.54s}@keyframes home-floating-drift{0%,to{transform:translate3d(0,-1.066667cqw,0)}50%{transform:translate3d(0,1.066667cqw,0)}}@keyframes home-light-twinkle{0%,to{transform:scale(.92);opacity:.42}38%{transform:scale(1.02);opacity:.68}52%{transform:scale(1.18);opacity:1}68%{transform:scale(.98);opacity:.56}}.screen-entry-hitarea{position:absolute;left:20%;right:20%;bottom:max(12px,env(safe-area-inset-bottom,0px));height:14%;border:0;background:transparent;cursor:pointer;z-index:10}.screen-entry-hitarea--full{inset:0;width:100%;height:100%}.intro-heading{position:absolute;top:max(62px,calc(17cqw + env(safe-area-inset-top,0px)));left:0;width:100%;z-index:3;text-align:center;font-size:clamp(26px,6.4cqw,48px);font-weight:700;line-height:1.35}.intro-heading p{margin:0}.intro-heading strong{color:#ffae10;font-size:1.25em}.intro-galaxy{position:absolute;top:24cqw;left:3.6cqw;width:59.733333cqw;height:auto}.intro-planet{position:absolute}.intro-planet--1{top:34.933333cqw;right:11.866667cqw;width:16cqw;height:auto}.intro-planet--2{right:18.8cqw;bottom:31.066667cqw;width:16.266667cqw;height:auto}.intro-planet--3{bottom:14cqw;left:16.133333cqw;width:13.733333cqw;height:auto}.galaxy-screen{display:grid;grid-template-rows:auto minmax(0,1fr);padding-top:max(26px,calc(6.5cqw + env(safe-area-inset-top,0px)));padding-bottom:max(132px,36.08cqw)}.galaxy-rainbow{position:absolute;pointer-events:none}.galaxy-rainbow--top{top:-.933333cqw;left:50%;width:151.066667cqw;height:auto;transform:translate(-50%)}.galaxy-heading{position:relative;z-index:2;text-align:center}.galaxy-heading h1{margin:0 0 2.6cqw;font-size:clamp(24px,5.87cqw,44px);line-height:1.3}.outline-button{min-width:24cqw;min-height:44px;padding:0 3.5cqw;border:1.5px solid #f6a92b;border-radius:999px;background:#0b080d94;color:#ffb743;font-size:clamp(14px,3.2cqw,24px);cursor:pointer}.galaxy-scroll{position:relative;z-index:1;min-height:0;margin-top:2cqw;overflow-x:auto;overflow-y:hidden;overscroll-behavior:contain;scrollbar-width:none;touch-action:pan-x;cursor:grab;user-select:none}.galaxy-scroll::-webkit-scrollbar{display:none}.galaxy-grid{position:relative;width:var(--galaxy-width);height:100%}.galaxy-award{position:absolute;top:var(--planet-top);left:var(--planet-left);width:28cqw;min-height:0;padding:0;border:0;background:transparent;color:#fff7e8;cursor:pointer;transform:translate(-50%,-50%)}.galaxy-award img{display:block;width:var(--planet-size);height:var(--planet-size);margin:0 auto .8cqw;object-fit:contain}.galaxy-award span{display:-webkit-box;overflow:hidden;font-size:clamp(11px,2.4cqw,18px);line-height:1.3;-webkit-box-orient:vertical;-webkit-line-clamp:2}.galaxy-footer{position:absolute;bottom:8.533333cqw;left:0;z-index:3;width:100%;text-align:center}.galaxy-footer p{margin:0 0 4.933333cqw;font-size:clamp(16px,3.2cqw,24px);font-weight:700;line-height:1.45}.galaxy-footer .primary-button{width:71.333333cqw;height:max(44px,13.333333cqw);min-height:0}.courses-screen{padding:max(55px,calc(11.733333cqw + env(safe-area-inset-top,0px))) 8cqw max(28px,calc(5cqw + env(safe-area-inset-bottom,0px)))}.courses-planet{position:absolute;z-index:1;height:auto;pointer-events:none}.courses-planet--1{top:-30cqw;left:-47.2cqw;z-index:3;width:72.533333cqw}.courses-planet--2{right:-17.333333cqw;bottom:-35.066667cqw;width:61.733333cqw}.courses-planet--3{top:-9.866667cqw;right:3.333333cqw;width:25.333333cqw}.courses-planet--4{bottom:25.6cqw;left:8.266667cqw;z-index:3;width:22.4cqw}.courses-heading{position:relative;z-index:2;display:flow-root;text-align:center}.courses-heading p,.courses-heading h1{font-size:clamp(24px,5.333333cqw,40px);line-height:1.2}.courses-heading p{margin:0;font-style:italic;font-weight:700}.courses-heading h1{margin:.7cqw 0 1cqw}.courses-panel{position:absolute;z-index:2;inset:30.233333cqw 8cqw 36.4cqw;height:auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:5.5cqw 7cqw 9cqw;border-radius:4cqw;background:#ffd95d url(/common/popup-bg_1.jpg) center bottom / 100% 100% no-repeat;color:var(--ink)}.courses-panel ul{margin:0;padding:0;list-style:none}.courses-panel li{margin-bottom:4cqw;text-align:center;font-size:clamp(15px,3.2cqw,24px);line-height:1.35}.courses-panel small{display:block;font-size:.78em}.courses-generate{position:absolute;z-index:4;left:50%;bottom:max(24px,calc(10cqw + env(safe-area-inset-bottom,0px)));transform:translate(-50%)}.constellation-screen{display:flex;flex-direction:column;padding-top:max(36px,calc(11.733333cqw + env(safe-area-inset-top,0px)));padding-bottom:48cqw}.constellation-planet{position:absolute;z-index:1;height:auto;pointer-events:none}.constellation-planet--left{top:5.066667cqw;left:7.2cqw;width:15.2cqw}.constellation-planet--right{top:-37.466667cqw;right:-24cqw;width:55.333333cqw}.constellation-heading{position:relative;z-index:2}.constellation-heading h1{margin:0 0 4cqw;text-align:center;font-size:clamp(24px,5.333333cqw,40px)}.constellation-card{position:relative;z-index:3;display:grid;grid-template-columns:43% 57%;gap:3cqw;width:88cqw;min-height:41cqw;margin:0 auto;padding:2cqw;border-radius:4cqw;background:#ffd86f url(/common/popup-bg_2.jpg) center / 100% 100% no-repeat;color:var(--ink)}.constellation-image-slot{min-height:36.5cqw;border-radius:2.7cqw;background:#071012}.constellation-copy{display:flex;flex-direction:column;justify-content:space-between;padding:1cqw 2.666667cqw .5cqw 0}.constellation-copy p{margin:0;font-size:clamp(13px,2.8cqw,21px);line-height:1.55}.small-image-button{align-self:flex-end;width:34.4cqw;height:max(44px,8cqw);min-height:0;font-size:clamp(17px,3.6cqw,27px)}.barrage-field{position:relative;flex:1 1 auto;min-height:0;overflow:hidden}.wish-barrage{position:absolute;left:100%;display:flex;align-items:center;width:max-content;height:6.8cqw;animation:barrage-move 16s linear infinite;animation-delay:var(--delay, 0s)}.wish-barrage img{position:relative;z-index:2;left:.8cqw;top:.4cqw;flex:0 0 auto;width:9cqw;height:9cqw;object-fit:contain}.wish-barrage span{display:flex;align-items:center;flex:0 0 auto;min-width:26.266667cqw;height:6.8cqw;margin-left:-1.5cqw;padding:.8cqw 1.866667cqw 0 3.466667cqw;background:transparent url(/learning-constellation/wish-floating_bg.png) center / 100% 100% no-repeat;color:#292123;font-size:clamp(14px,2.666667cqw,20px);line-height:4cqw;white-space:nowrap}.wish-barrage--1{top:8%;--delay: -1s}.wish-barrage--2{top:26%;--delay: -8s;animation-duration:19s}.wish-barrage--3{top:46%;--delay: -4s;animation-duration:17s}.wish-barrage--4{top:67%;--delay: -12s;animation-duration:21s}.wish-barrage--5{top:15%;--delay: -14s;animation-duration:20s}.wish-barrage--6{top:37%;--delay: -6s;animation-duration:18s}.wish-barrage--7{top:57%;--delay: -16s;animation-duration:22s}.wish-barrage--8{top:76%;--delay: -10s;animation-duration:20s}@keyframes barrage-move{0%{transform:translate(0)}to{transform:translate(-155cqw)}}.wish-count{position:absolute;z-index:2;left:0;right:0;bottom:0;margin:0;text-align:center;font-size:clamp(14px,3.2cqw,24px)}.wish-footer{position:absolute;z-index:5;left:0;right:0;bottom:0;width:100%;height:44cqw;min-height:0;padding:8cqw 6cqw max(2cqw,env(safe-area-inset-bottom,0px));background:transparent url(/common/footer-bg.png) top center / 114cqw auto no-repeat;color:#342726}.wish-footer blockquote{position:absolute;bottom:22cqw;left:50%;display:flex;align-items:center;width:86.133333cqw;height:2.7em;margin:0;overflow:hidden;transform:translate(-50%);font-size:clamp(16px,3.2cqw,24px);font-weight:600;line-height:1.35}.wish-footer blockquote:before,.wish-footer blockquote:after{position:absolute;top:50%;z-index:1;width:6.8cqw;height:5.733333cqw;transform:translateY(-50%);background-position:center;background-size:contain;background-repeat:no-repeat;content:"";pointer-events:none}.wish-footer blockquote:before{left:0;background-image:url(/learning-constellation/q-left.png)}.wish-footer blockquote:after{right:0;background-image:url(/learning-constellation/q-right.png)}.wish-footer blockquote span{display:-webkit-box;width:100%;padding:0 8cqw;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.wish-actions{position:absolute;right:0;bottom:0;left:0;display:grid;grid-template-columns:1fr 1fr;align-items:center;width:100%;height:18.666667cqw;gap:3cqw;padding:0 6cqw;background:#fcb22e url(/common/footer-bg_2.jpg) center / 100% 100% no-repeat}.wish-actions button,.wish-form button{height:max(44px,8.933333cqw);min-height:0;border:1.5px solid #fff8ed;border-radius:999px;background:transparent url(/common/button-bg.png) center / 100% 100% no-repeat;color:#fffdf4;font-size:clamp(18px,4cqw,30px);font-weight:700;cursor:pointer}.wish-form{position:absolute;right:0;bottom:0;left:0;display:grid;grid-template-columns:1fr auto;align-items:center;width:100%;height:18.666667cqw;gap:0;padding:3.333333cqw 5.866667cqw 4cqw;background:#fcb22e url(/common/footer-bg_2.jpg) center / 100% 100% no-repeat}.wish-form:before{position:absolute;inset:3.333333cqw 5.866667cqw 4cqw;border:1.5px solid #fff8ed;border-radius:999px;background:#fffaf0;content:""}.wish-form input{position:relative;z-index:1;min-width:0;min-height:44px;padding:0 2.5cqw;border:0;outline:0;background:transparent;color:#342726;font-size:clamp(15px,3.3cqw,25px)}.wish-form button{position:relative;z-index:1;min-width:20cqw;padding:0 3cqw}.poster-screen{display:grid;place-items:center;padding:max(24px,env(safe-area-inset-top,0px)) 8cqw max(24px,env(safe-area-inset-bottom,0px));background:#030303}.poster-card{position:relative;width:83.2cqw;aspect-ratio:624 / 900;padding:8cqw 4cqw 2cqw;border-radius:3cqw;background:var(--cream);color:#393536;transform:translateY(-1cqw)}.poster-planet{position:absolute;top:-7cqw;left:50%;width:17cqw;transform:translate(-50%)}.poster-card h1{margin:0 0 3cqw;text-align:center;font-size:clamp(21px,5cqw,38px);font-style:italic}.poster-card h1 em{font-weight:700}.poster-image-slot{width:100%;height:74.7cqw;border-radius:2.5cqw 2.5cqw 0 0;background:#373737}.poster-card footer{display:flex;align-items:center;justify-content:space-between;min-height:18cqw;padding:0 2.5cqw;background:#f8ad29 url(/common/footer-bg_1.jpg) center / cover no-repeat;color:#fffdf4}.poster-card footer p{margin:0;font-size:clamp(16px,3.6cqw,27px);font-weight:700}.poster-card footer small{font-size:.8em}.poster-qr-slot{width:18cqw;height:18cqw;border-radius:2cqw;background:#fff}.poster-tip{margin:2.4cqw 0 0;color:#3a3535;text-align:center;font-size:clamp(14px,3.2cqw,24px)}.poster-back{min-width:88px;min-height:44px;border:0;background:transparent;color:#fff8e8;cursor:pointer}.overlay-root:empty{display:none}.modal-layer{position:absolute;inset:0;z-index:100;display:grid;place-items:center;padding:5cqw;background:#000000c2}.modal-content{position:relative;width:min(72cqw,540px);max-height:100%}.modal-content--wide{width:min(92cqw,690px)}.modal-card{position:relative;width:100%;min-height:72cqw;max-height:calc(100dvh - 10cqw);margin:0;padding:9cqw 7cqw 8cqw;overflow-x:hidden;overflow-y:auto;border-radius:4cqw;background:#ffdc62 url(/common/popup-bg_1.jpg) center bottom / 100% 100% no-repeat;color:var(--ink);text-align:center}.modal-close{position:absolute;top:-3cqw;right:-3cqw;z-index:2;width:max(44px,10cqw);height:max(44px,10cqw);border:0;background:transparent url(/common/icon-close.png) center / contain no-repeat;cursor:pointer}.award-chip{display:inline-block;margin:0 0 3cqw;padding:.6cqw 6cqw;border:2px solid #2a292a;border-radius:999px;font-size:clamp(14px,3.2cqw,24px)}.award-detail h2,.wish-success-card h2,.lottery-card h2{margin:0 0 4cqw;font-size:clamp(23px,5.3cqw,40px);line-height:1.3}.award-winner{font-size:clamp(17px,3.7cqw,28px);font-weight:700}.award-description{margin-top:5cqw;font-size:clamp(15px,3.25cqw,24px);line-height:1.65}.award-list-modal{position:relative;width:100%;height:calc(100vh - 10cqw);height:calc(100dvh - 10cqw);max-height:1230px;margin:0;overflow:hidden;border-radius:3cqw;background:#f8b32e url(/common/popup-repeat-bg.jpg) center top / 100% auto repeat-y;color:var(--ink)}.award-list-header{display:block;width:100%;height:auto}.award-list-scroll{height:calc(100% - 25cqw);overflow-y:auto;overscroll-behavior:contain;padding:1cqw 4cqw 12cqw}.award-list-group{position:relative;margin:6cqw 0;padding:7cqw 3.5cqw 4cqw;border-radius:2cqw;background:var(--cream)}.award-list-group>img{position:absolute;top:-5cqw;left:50%;width:9cqw;height:9cqw;object-fit:contain;transform:translate(-50%)}.award-list-group h2{margin:0 0 3cqw;text-align:center;font-size:clamp(17px,3.8cqw,28px)}.award-list-group ul{margin:0;padding:0;list-style:none}.award-list-group li{padding:1.3cqw 0;text-align:center;font-size:clamp(12px,2.5cqw,19px);line-height:1.35}.award-list-group li strong,.award-list-group li span{display:block}.wish-success-card>img{width:17cqw;height:17cqw;margin-top:-17cqw;object-fit:contain}.wish-success-card p{min-height:18cqw;font-size:clamp(16px,3.5cqw,26px)}.wish-success-card .primary-button,.lottery-card .primary-button{width:58.933333cqw;height:max(44px,11.2cqw);min-height:0;background:transparent url(/common/button-bg.png) center / 100% 100% no-repeat}.lottery-result-slot{min-height:36cqw}.text-button{min-width:100px;min-height:44px;border:0;background:transparent;color:#3a3030;text-decoration:underline;cursor:pointer}@media(min-width:768px){.desktop-viewport{padding:16px}.app-shell{width:min(750px,calc(100vw - 32px),calc(56.22vh - 18px));width:min(750px,calc(100vw - 32px),calc(56.22dvh - 18px));height:auto;min-height:0;aspect-ratio:750 / 1334;box-shadow:0 18px 60px #00000073}.modal-card{max-height:calc(100% - 10cqw)}.award-list-modal{height:calc(100% - 4cqw)}}@media(max-height:620px)and (max-width:767px){.department-heading{top:max(20px,calc(3cqw + env(safe-area-inset-top,0px)))}.courses-screen{padding-top:max(32px,calc(8cqw + env(safe-area-inset-top,0px)))}.courses-heading h1{margin-bottom:2cqw}.constellation-card{min-height:31cqw}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}}
