body,.opening{background:repeating-linear-gradient(135deg,transparent 0 76px,#ffffff12 77px 78px,transparent 79px 152px),radial-gradient(circle at 1.5px 1.5px,#ffffff23 1.5px,transparent 1.7px) 0 0/22px 22px,#070709;background-attachment:fixed}.arena,.arena[data-scene]{background:repeating-linear-gradient(135deg,transparent 0 65px,#ffffff0d 66px 67px),radial-gradient(circle,#ffffff12 1px,transparent 1.5px) 0 0/22px 22px,#08080d}
#difficulty{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;flex-wrap:nowrap}#difficulty button,#difficulty button:nth-child(4),#difficulty button:nth-child(5){min-width:0;flex:none;flex-basis:auto;padding:11px 0;font-size:17px;white-space:nowrap;color:#ddd8e2;background:#191820;border:1px solid #494450;font-family:'Noto Sans JP','Noto Sans KR',sans-serif!important}#difficulty button.selected{background:#39333e;border-color:#cbc1d0;color:white}#difficulty button[data-diff=oni]{border-color:#ff28b7;color:#ff82d5;box-shadow:0 0 11px #ff009927}#difficulty button[data-diff=oni].selected{background:#e71999;border-color:#ff9cdd;color:white;box-shadow:0 0 17px #fa20b866}
.rankingPanel{position:relative;background:#0e0e13eb;border:1px solid #48404d;border-radius:6px;padding:17px;margin-bottom:26px;box-shadow:4px 4px #000}.rankingPanel .modalHead{margin-bottom:13px}.rankingPanel h2{font-size:24px;color:#e6dbe8;letter-spacing:2px!important}.rankFilters{display:flex;gap:8px;margin-bottom:12px}.rankFilters select{font-size:15px;min-height:42px;border:1px solid #4a4353;border-radius:4px;background:#202026;color:white;padding:8px;min-width:0}#rankSong{flex:1}#rankDiff{width:90px}#rankRows{max-height:200px;overflow:auto;scrollbar-width:thin;padding-right:3px;font-size:15px}.rankingPanel #rankDate{font-size:12px;margin:10px 0;line-height:1.5}.rankingPanel #rankPeriod{margin:0}.rankingPanel #rankPeriod button{font-size:17px;min-height:40px;padding:7px}.rankingPanel #rankPeriod .selected{background:#433248;color:#fff;border-color:#966687}.rankingPanel .rankrow{padding:10px 0}.rankingPanel .rankrow strong{color:#fac1e7}.rankingPanel .rankrow small{font-size:12px}.fullTrack{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;color:#e8e4ee;text-decoration:none;background:#201e28;border:1px solid #54465b;font-family:'Noto Sans KR',sans-serif!important;font-size:17px}.fullTrack svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7}.siteFooter{text-align:center;padding:40px 0 6px}.novelLink{display:inline-flex;min-width:160px;min-height:47px;align-items:center;justify-content:center;border:1px solid #a75391;color:#ffd2f0;background:#271020;border-radius:4px;text-decoration:none;letter-spacing:3px!important;font-size:18px}.siteFooter p{font-size:12px;color:#a19ba7;line-height:1.8;margin:23px 0 0}
.introStage{width:100%;aspect-ratio:1.9;position:relative;isolation:isolate;overflow:visible}.introLayer{position:absolute;mix-blend-mode:screen;pointer-events:none;transform-origin:center}.introLayer svg{display:block;width:100%;height:100%;overflow:hidden}.introTitle{left:0;top:0;width:100%;height:100%;mix-blend-mode:normal;animation:titleStrike .65s .7s cubic-bezier(.15,.7,.2,1) both;z-index:7}.introSubtitle{left:9%;top:72%;width:82%;height:23%;animation:subtitleWrite .7s 1.1s both;z-index:5}.introNeck{left:61%;top:1%;width:32%;height:28%;animation:neckSwing .8s .2s both;z-index:1}.introPick{left:0;top:32%;width:21%;height:29%;animation:pickSpin .7s .25s both;z-index:3}.introRibbon{left:-3%;top:25%;width:107%;height:55%;animation:ribbonWhip 1s .1s both;z-index:2}.introSlash{left:2%;top:24%;width:98%;height:48%;animation:slashStrike .65s .5s both;z-index:2}.introSpark{right:-4%;top:3%;width:35%;height:36%;animation:sparkBloom .7s .95s both;z-index:6}.introHalo{position:absolute;inset:-15%;background:radial-gradient(ellipse,#ff11a52c,transparent 63%);animation:haloPulse 2.8s both}.introSweep{position:absolute;inset:12% 0 0;z-index:8;pointer-events:none;background:linear-gradient(110deg,transparent 30%,#ffffffaa 48%,transparent 62%);mix-blend-mode:screen;animation:shineSweep .75s 1.15s both;opacity:0;clip-path:polygon(0 20%,100% 0,100% 73%,0 100%)}.introStar{position:absolute;width:24px;height:24px;z-index:8;background:#fff0fc;clip-path:polygon(50% 0,59% 41%,100% 50%,59% 59%,50% 100%,41% 59%,0 50%,41% 41%);filter:drop-shadow(0 0 6px #fa1bb5);animation:starPop .65s 1.4s both}.starOne{left:7%;top:20%}.starTwo{right:8%;bottom:15%;animation-delay:1.6s}.openingEntry{animation:entryArrival .5s 1.8s both}@keyframes titleStrike{0%{opacity:0;transform:translateY(-35px) scale(.92);filter:brightness(3)}70%{opacity:1;transform:scale(.98);filter:brightness(1.4)}100%{opacity:1;transform:none;filter:none}}@keyframes subtitleWrite{from{clip-path:inset(0 100% 0 0);opacity:0;transform:translateX(-15px)}to{clip-path:inset(0);opacity:1;transform:none}}@keyframes neckSwing{from{opacity:0;transform:translate(90px,30px) rotate(30deg)}to{opacity:.9;transform:rotate(-10deg)}}@keyframes pickSpin{from{opacity:0;transform:translate(-70px,-25px) rotate(-90deg) scale(.4)}to{opacity:1;transform:rotate(-14deg)}}@keyframes ribbonWhip{from{opacity:0;transform:scaleX(.05) rotate(-15deg)}60%{opacity:1;transform:scaleX(1.1) rotate(4deg)}to{opacity:.75;transform:rotate(-3deg)}}@keyframes slashStrike{from{opacity:0;transform:translate(-100px,55px) scale(.6)}45%{opacity:1;filter:brightness(2)}to{opacity:.8;transform:none;filter:none}}@keyframes sparkBloom{from{opacity:0;transform:scale(.2) rotate(-25deg)}60%{opacity:1;transform:scale(1.2)}to{opacity:.9;transform:none}}@keyframes haloPulse{0%{opacity:0;transform:scale(.7)}40%{opacity:1;transform:scale(1.08)}100%{opacity:.65;transform:none}}@keyframes shineSweep{0%{opacity:0;transform:translateX(-90%)}20%{opacity:.7}100%{opacity:0;transform:translateX(90%)}}@keyframes starPop{0%{opacity:0;transform:scale(0) rotate(-45deg)}50%{opacity:1;transform:scale(1.4)}100%{opacity:0;transform:scale(.3) rotate(45deg)}}@media(max-width:380px){#difficulty{gap:4px}#difficulty button,#difficulty button:nth-child(4),#difficulty button:nth-child(5){font-size:15px}.rankingPanel{padding:13px}.rankFilters select{font-size:14px}#rankDiff{width:83px}.openingEntry{margin-top:20px}}@media(prefers-reduced-motion:reduce){.introStage *,.openingEntry{animation:none!important}.introSweep,.introStar{display:none}.introLayer{opacity:1}}.reduced .introStage *,.reduced .openingEntry{animation:none!important}.reduced .introSweep,.reduced .introStar{display:none}

.detail .speedSetting{margin:18px 0 16px;padding:15px 14px 10px;background:#121117;border:1px solid #49404d;border-radius:5px;font-size:17px}.speedSetting output{font-variant-numeric:tabular-nums;color:#ff9adf}.speedEnds{display:flex;justify-content:space-between;color:#aaa1b3;font-size:13px}.speedSetting input{margin:4px 0 0;min-height:44px}

.hitArea{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.hitArea .lane{position:relative;display:block;width:100%;min-width:0;min-height:0;margin:0;padding:0;appearance:none}.lane span{left:50%;pointer-events:none}#calibrate,#beginSync{width:100%;margin-bottom:10px}#beginSync{border-color:#00eaff}#syncPad{touch-action:manipulation}#syncPad:disabled{opacity:.5}

.opening #profileForm>label{display:none}.opening #bootStatus:empty{display:none}.rankingPanel #rankRows{margin-top:12px}
