:root{color-scheme:dark;font-family:Georgia,'Times New Roman',serif;color:#eee5d5;background:#100a18}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;width:100%;height:100%;overflow:hidden;overscroll-behavior:none}body{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.hidden{display:none!important}button,select,input{font:inherit}button{touch-action:manipulation;cursor:pointer;color:inherit}button:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid #d49aff;outline-offset:3px}button:disabled{cursor:default;opacity:.42}#titleScreen,#battleHost{position:fixed;inset:0;width:100%;height:100%;height:100dvh;border:0}#titleScreen{overflow:hidden;background:#100a18;isolation:isolate}#battleHost{z-index:10;background:#091518}.titleWorld{position:absolute;width:max(100vw,177.69dvh);height:max(100dvh,56.28vw);left:50%;top:50%;transform:translate(-50%,-50%);z-index:-2;pointer-events:none;overflow:hidden}.titleLandscape{display:block;width:100%;height:100%;object-fit:fill}.titleContent{position:absolute;left:max(4.6vw,calc(env(safe-area-inset-left) + 12px));top:max(1.5dvh,env(safe-area-inset-top));bottom:calc(env(safe-area-inset-bottom) + 15px);width:min(43vw,620px);display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start}.titleContent h1{width:100%;margin:0 0 4px;line-height:0}.titleLogo{display:block;width:100%;height:auto;max-height:31dvh;object-fit:contain;object-position:left center}.titleMenu{width:min(100%,340px);display:flex;flex-direction:column;gap:0;padding:2px 0 0 7px}.titleMenu button{position:relative;border:2px solid transparent;background:transparent;text-align:left;font-size:clamp(20px,2.4vw,32px);font-weight:500;line-height:1.12;min-height:44px;padding:4px 18px 5px 22px;text-shadow:1px 2px 3px #000,0 0 5px #000;white-space:nowrap}.titleMenu button:not(:disabled):is(:hover,:focus-visible,.selected){border-color:#c983ef;background:linear-gradient(90deg,#1c092be8,#160c1bd9,transparent);box-shadow:inset 0 0 0 1px #5f326f,0 0 6px #b747e16b;outline:none}.titleMenu button:not(:disabled):is(:hover,:focus-visible,.selected)::before,.titleMenu button:not(:disabled):is(:hover,:focus-visible,.selected)::after{content:'';position:absolute;top:50%;width:10px;height:10px;border:2px solid #e1a5ff;transform:translateY(-50%) rotate(45deg);background:#6a2295;box-shadow:0 0 5px #c96bff}.titleMenu button::before{left:-6px}.titleMenu button::after{right:-6px}.titleVersion{position:absolute;bottom:max(8px,env(safe-area-inset-bottom));right:max(14px,env(safe-area-inset-right));font:10px system-ui;color:#c0adb9;text-shadow:0 1px 3px #000}#titleNotice{position:absolute;left:5vw;bottom:max(6px,env(safe-area-inset-bottom));max-width:70%;font:12px system-ui;color:#e9d4e9;text-shadow:0 1px 3px #000;margin:0}.srOnly{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}#titleEmbers{position:absolute;inset:0;pointer-events:none;width:100%;height:100%;z-index:-1}.skyDrift{position:absolute;inset:0 0 45%;background:linear-gradient(105deg,transparent 30%,#59405c16 48%,transparent 70%);animation:skyDrift 44s ease-in-out infinite alternate;pointer-events:none}.crystalPulse{position:absolute;left:74%;top:43%;width:20%;height:35%;background:radial-gradient(ellipse,#b13bff55,transparent 65%);mix-blend-mode:screen;animation:crystalPulse 5.5s ease-in-out infinite alternate}.runePulse{position:absolute;left:90%;top:0;width:10%;height:75%;background:linear-gradient(90deg,transparent,#36ff6c33,transparent);mix-blend-mode:screen;animation:runePulse 7s ease-in-out infinite alternate}.lavaShimmer{position:absolute;left:10%;top:61%;width:85%;height:35%;background:radial-gradient(ellipse at 55% 50%,#ff6c1e30,transparent 70%);mix-blend-mode:screen;animation:lavaShimmer 4.5s ease-in-out infinite alternate}@keyframes crystalPulse{from{opacity:.18}to{opacity:.58}}@keyframes runePulse{from{opacity:.16}to{opacity:.65}}@keyframes lavaShimmer{from{opacity:.15;transform:translateX(-3px)}to{opacity:.55;transform:translateX(3px)}}@keyframes skyDrift{from{transform:translateX(-2%);opacity:.3}to{transform:translateX(2%);opacity:.7}}
.titleDialog{position:absolute;inset:0;z-index:20;background:#08050ae6;display:flex;align-items:center;justify-content:center;padding:max(14px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}.titleDialogFrame{width:min(710px,100%);max-height:100%;display:flex;flex-direction:column;background:repeating-linear-gradient(140deg,#111017 0 3px,#101016 3px 8px);border:3px double #887594;box-shadow:inset 0 0 0 3px #29202f,0 4px 20px #000;padding:12px}.titleDialogFrame header{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid #5a3e66;padding-bottom:8px;flex:none}.titleDialog h2{font-size:24px;color:#e0cadf;margin:0}.titleDialogBody{overflow:auto;min-height:0;padding:10px 4px;overscroll-behavior:contain;touch-action:pan-y;font-size:16px;line-height:1.5}.titleDialog button{background:linear-gradient(#25202c,#121017);border:2px solid #74647e;padding:9px 14px;min-height:44px;font-size:16px}.titleDialog button:hover{border-color:#c080e2}.titleDialog .primary{background:linear-gradient(#4a1e5d,#24132e);border-color:#bf7cda}.titleDialog button+button{margin-left:6px}.titleDialog label{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0;font:15px system-ui}.titleDialog select{min-height:44px;padding:8px;background:#211a2a;color:#f0e4ee;max-width:55%;border:1px solid #887297}.titleDialog input[type=checkbox]{width:22px;height:22px;accent-color:#9e4bc1}.titleDialog .saveSlot{border:1px solid #57485f;padding:10px;margin:0 0 8px}.titleDialog h3{margin:0;font-size:19px}.titleDialog p{margin:7px 0 12px}.titleDialog .muted{color:#b9a8bd;font:13px/1.5 system-ui}.titleDialog .dialogButtons{display:flex;gap:8px;flex-wrap:wrap}.titleDialog .dialogButtons button{margin:0}.titleDialog .saveSlots{display:grid;grid-template-columns:1fr 1fr;gap:8px}
@media(orientation:landscape) and (max-height:340px){.titleLogo{max-height:23dvh}.titleMenu button{min-height:40px;font-size:19px;padding-top:3px;padding-bottom:3px}.titleContent{top:max(4px,env(safe-area-inset-top));bottom:8px}.titleVersion{font-size:8px}.titleDialogFrame{padding:8px}.titleDialog h2{font-size:20px}}
@media(orientation:portrait){.titleWorld{width:100vw;height:56.28vw;top:auto;bottom:3dvh;left:0;transform:none}.titleContent{width:min(88vw,570px);left:max(6vw,env(safe-area-inset-left));top:max(4dvh,env(safe-area-inset-top));bottom:20dvh}.titleLogo{max-height:25dvh;object-position:left center}.titleMenu{max-width:310px;width:80%;padding-top:12px}.titleMenu button{font-size:25px;min-height:48px}.titleWorld::after{content:'';position:absolute;inset:0;background:linear-gradient(#100a1800 70%,#100a18)}.titleVersion{bottom:max(10px,env(safe-area-inset-bottom))}.titleDialog .saveSlots{grid-template-columns:1fr}.titleDialog h2{font-size:21px}}
@media(prefers-reduced-motion:reduce){.titleWorld>*{animation:none!important}#titleEmbers{display:none}}.motionOff .titleWorld>*{animation:none!important}.motionOff #titleEmbers{display:none}
.titleContent{overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none}.titleContent h1,.titleMenu{flex-shrink:0}
#battleHost{inset:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);width:calc(100% - env(safe-area-inset-left) - env(safe-area-inset-right));height:calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom))}
@media(orientation:landscape) and (max-height:340px){.titleLogo{max-height:min(23dvh,max(32px,calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 228px)))}}
