:root{--stage-w: 960px;--stage-h: 540px;--ink: #20242c;color-scheme:light}*{box-sizing:border-box}html,body{margin:0;height:100%;background:#0c0f16;font-family:-apple-system,Segoe UI,Hiragino Kaku Gothic ProN,Yu Gothic UI,Meiryo,sans-serif;color:var(--ink);-webkit-user-select:none;user-select:none}#root{height:100%}.app{height:100%;display:grid;place-items:center;padding:12px}.stage{position:relative;container-type:inline-size;width:min(96vw,calc((100vh - 24px) * 16 / 9));aspect-ratio:16 / 9;border-radius:16px;overflow:hidden;box-shadow:0 20px 60px #0000008c;background:#000}.scene{position:absolute;top:0;right:0;bottom:0;left:0}.btn{border:none;border-radius:999px;padding:1.3cqw 2.817cqw;font-size:clamp(11px,1.733cqw,32px);font-weight:700;cursor:pointer;background:#ff8a3d;color:#fff;box-shadow:0 4px #d96a20;transition:transform .08s,box-shadow .08s}.btn:active{transform:translateY(3px);box-shadow:0 1px #d96a20}.btn.ghost{background:#ffffff29;color:#fff;box-shadow:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.corner-hint{position:absolute;right:1.3cqw;bottom:1.083cqw;font-size:clamp(9px,1.3cqw,24px);color:#ffffffb3}.title-scene{display:grid;place-content:center;gap:2.384cqw;text-align:center;background:radial-gradient(circle at 50% 35%,#2a3b63,#0b1226 75%);color:#fff}.title-logo{font-size:clamp(40px,8vw,96px);font-weight:900;letter-spacing:2px}.title-logo small{display:block;font-size:.28em;letter-spacing:.65cqw;opacity:.7;font-weight:600}.title-eto-row{font-size:clamp(20px,4vw,40px);letter-spacing:4px}.movie-scene{overflow:hidden;cursor:pointer}.movie-crawl{position:absolute;left:0;right:0;top:100%;padding:0 12%;text-align:center;color:#fff;font-size:clamp(16px,2.6vw,26px);line-height:1.9;text-shadow:0 2px 12px rgba(0,0,0,.6);animation:crawl linear forwards}@keyframes crawl{0%{transform:translateY(0)}to{transform:translateY(-260%)}}.movie-skip{position:absolute;right:1.517cqw;top:1.3cqw}.prologue-scene{overflow:hidden;cursor:pointer}.prologue-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;z-index:0;pointer-events:none}.prologue-telop-wrap{position:absolute;left:0;right:0;bottom:12%;display:flex;justify-content:center;padding:0 8%;z-index:2}.prologue-telop{margin:0;max-width:97.508cqw;color:#fff;text-align:center;white-space:pre-line;font-size:clamp(12px,2.03cqw,40px);line-height:1.45;text-shadow:0 2px 14px rgba(0,0,0,.85),0 0 2px rgba(0,0,0,.9)}.prologue-dots{position:absolute;left:0;right:0;bottom:5%;display:flex;justify-content:center;gap:.65cqw;z-index:2}.prologue-dot{width:.65cqw;height:.65cqw;border-radius:50%;background:#ffffff47}.prologue-dot.on{background:#ffffffeb}.prologue-hint{position:absolute;right:1.733cqw;bottom:5%;z-index:2;color:#fff9;font-size:clamp(9px,1.408cqw,26px);text-shadow:0 1px 6px rgba(0,0,0,.8)}.dialogue-scene{cursor:pointer}.dlg-stage{position:absolute;top:0;right:0;bottom:0;left:0}.dlg-dim{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:#00000061;animation:dlgDim .5s ease}@keyframes dlgDim{0%{opacity:0}to{opacity:1}}.dlg-side{display:contents}.dlg-char{position:absolute;bottom:22%;width:34%;max-width:28.169cqw;aspect-ratio:1;display:grid;place-items:center;transition:transform .35s ease,filter .35s ease,opacity .35s ease}.dlg-char.left{left:4%;transform:scaleX(-1)}.dlg-char.right{right:4%}.dlg-side.pair .dlg-char{width:24%;max-width:20cqw}.dlg-side.pair.left .dlg-char:nth-child(1){left:3%}.dlg-side.pair.left .dlg-char:nth-child(2){left:26%}.dlg-side.pair.right .dlg-char:nth-child(1){right:3%}.dlg-side.pair.right .dlg-char:nth-child(2){right:26%}.dlg-portrait-art{position:absolute;left:0;top:0;width:100%;height:100%;object-fit:contain;object-position:center bottom;display:block}.dlg-portrait-art.fit{position:absolute;height:auto;object-fit:fill;max-width:none}.dlg-char .portrait{width:100%;height:100%;border-radius:2.6cqw;display:grid;place-items:center;font-size:clamp(60px,12vw,130px);box-shadow:0 10px 30px #0000004d;border:4px solid rgba(255,255,255,.6)}.dlg-char.inactive{filter:brightness(.45) saturate(.7);opacity:.9}.dlg-char.left.inactive{transform:translate(-6%) scaleX(-1)}.dlg-char.right.inactive{transform:translate(6%)}.dlg-char.active{filter:brightness(1.05)}.dlg-char.left.active{transform:translate(8%) scale(1.04) scaleX(-1)}.dlg-char.right.active{transform:translate(-8%) scale(1.04)}.dlg-char.entering{animation:charIn .35s ease}@keyframes charIn{0%{opacity:0}to{opacity:1}}.dlg-box{position:absolute;left:5%;right:5%;bottom:5%;min-height:22%;background:#14161edb;border:2px solid rgba(255,255,255,.18);border-radius:1.733cqw;padding:1.733cqw 2.384cqw;color:#fff}.dlg-name{font-weight:800;color:#ffd489;margin-bottom:.65cqw;font-size:clamp(14px,2.2vw,20px)}.dlg-text{font-size:clamp(15px,2.4vw,22px);line-height:1.6}.dlg-box.narration .dlg-text{font-style:italic;color:#efe7d6}.dlg-next{position:absolute;right:1.733cqw;bottom:1.3cqw;font-size:clamp(9px,1.3cqw,24px);opacity:.7;animation:blink 1s infinite}@keyframes blink{50%{opacity:.2}}.map-node{position:absolute;transform:translate(-50%,-50%);width:6.067cqw;height:6.067cqw;border-radius:50%;display:grid;place-items:center;font-weight:800;color:#fff;border:3px solid #fff;cursor:pointer;box-shadow:0 6px 16px #00000059}.map-node.locked{background:#9aa2ab;cursor:not-allowed;opacity:.75}.map-node.unlocked{background:#ff8a3d;animation:pulse 1.4s ease-in-out infinite}.map-node.cleared{background:#4caf7d}@keyframes pulse{0%,to{box-shadow:0 0 #ff8a3d99}50%{box-shadow:0 0 0 12px #ff8a3d00}}.map-marker{position:absolute;transform:translate(-50%,-120%);font-size:clamp(18px,2.817cqw,52px)}.map-marker.player{animation:bob 1.2s ease-in-out infinite}@keyframes bob{50%{transform:translate(-50%,-140%)}}.map-label{position:absolute;transform:translate(-50%,26px);font-size:clamp(9px,1.3cqw,24px);font-weight:700;color:#234;white-space:nowrap}.map-title{position:absolute;top:1.517cqw;left:1.733cqw;font-size:clamp(14px,2.167cqw,40px);font-weight:900;color:#234}.battle-scene{background:#0c0f16;overflow:hidden}.battle-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.battle-hud{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;gap:1.3cqw;padding:.867cqw 1.3cqw;background:#10121ae6;border-top:2px solid rgba(255,255,255,.12)}.roster{display:flex;gap:1.083cqw;flex:1;flex-wrap:nowrap;align-items:center;overflow-x:auto;padding-bottom:2px}.roster::-webkit-scrollbar{height:.65cqw}.roster::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.roster-group{display:flex;flex-direction:row;align-items:center;gap:.65cqw;flex:none}.roster-group:not(:first-child){border-left:1px solid rgba(255,255,255,.14);padding-left:1.083cqw}.roster-group-label{font-size:clamp(9px,1.192cqw,22px);font-weight:800;letter-spacing:1px;color:#ffd489;white-space:nowrap}.roster-group-items{display:flex;gap:5px}.roster-item{display:flex;flex-direction:column;align-items:center;gap:1px;min-width:4.984cqw;padding:4px 5px;flex:none;border:2px solid transparent;border-radius:1.083cqw;background:#ffffff14;color:#fff;cursor:pointer;transition:transform .08s,border-color .08s,background .08s}.roster-item{cursor:grab}.roster-item:hover{background:#ffffff29}.roster-item:active{cursor:grabbing}.roster-item.sel{border-color:#3b7bd6;background:#3b7bd640}.roster-item.placed{opacity:.4;filter:grayscale(.6);cursor:default}.roster-item .emoji{font-size:clamp(15px,2.384cqw,44px);line-height:1}.roster-item .nm{font-size:clamp(9px,1.083cqw,20px);font-weight:700;white-space:nowrap}.hud-right{display:flex;align-items:center;gap:1.3cqw}.hud-right .count{color:#fff;font-weight:700;font-size:clamp(10px,1.517cqw,28px);white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:0 4px #d96a20}.tutorial-banner{position:absolute;top:1.3cqw;left:50%;transform:translate(-50%);z-index:15;width:min(560px,82%);background:#10121aeb;color:#eef2f7;border:1px solid rgba(255,255,255,.16);border-top:3px solid #ff8a3d;border-radius:1.3cqw;padding:1.3cqw 1.733cqw 1.517cqw;box-shadow:0 10px 28px #00000073}.tut-step{font-size:clamp(9px,1.3cqw,24px);font-weight:800;letter-spacing:1px;color:#ffd489;margin-bottom:5px}.tut-text{font-size:clamp(10px,1.571cqw,29px);line-height:1.6;margin:0 0 1.3cqw}.tut-actions{display:flex;justify-content:flex-end;align-items:center;gap:.867cqw}.tut-actions .btn{padding:.867cqw 1.95cqw;font-size:clamp(10px,1.517cqw,28px)}.tut-hint{font-size:clamp(9px,1.3cqw,24px);color:#aab4c0}.dialogue-scene.overlay{z-index:30}.prep-home{position:absolute;left:1.3cqw;top:1.083cqw;z-index:20;border:none;border-radius:1.083cqw;padding:.867cqw 1.517cqw;font-weight:800;font-size:clamp(10px,1.517cqw,28px);line-height:1;cursor:pointer;background:#10121ad1;color:#fff;box-shadow:0 2px 8px #0006}.prep-home:hover{background:#10121af2}.peek-enemy{position:absolute;right:0;top:50%;transform:translateY(-50%);z-index:20;display:flex;flex-direction:column;align-items:center;gap:2px;width:6.284cqw;padding:1.517cqw .65cqw;border:2px solid rgba(255,255,255,.28);border-right:none;border-radius:1.3cqw 0 0 1.3cqw;background:#78808c6b;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:peekPulse 1.8s ease-in-out infinite}.peek-enemy:hover{background:#8c96a599;animation-play-state:paused}.peek-enemy .peek-arrow{font-size:clamp(13px,1.95cqw,36px);line-height:1}.peek-enemy .peek-label{font-size:clamp(9px,1.192cqw,22px);font-weight:800;line-height:1.25;white-space:pre}.peek-ally{position:absolute;left:0;top:50%;transform:translateY(-50%);z-index:20;display:flex;flex-direction:column;align-items:center;gap:2px;width:6.284cqw;padding:1.517cqw .65cqw;border:2px solid rgba(255,255,255,.28);border-left:none;border-radius:0 1.3cqw 1.3cqw 0;background:#78808c6b;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:peekPulse 1.8s ease-in-out infinite}.peek-ally:hover{background:#8c96a599;animation-play-state:paused}.peek-ally .peek-arrow{font-size:clamp(13px,1.95cqw,36px);line-height:1}.peek-ally .peek-label{font-size:clamp(9px,1.192cqw,22px);font-weight:800;line-height:1.25;white-space:pre}.icon-tip{position:absolute;z-index:40;transform:translate(-50%,-100%);margin-top:-.867cqw;pointer-events:none;display:flex;flex-direction:column;gap:2px;padding:.65cqw 1.083cqw;border-radius:.867cqw;background:#0c0e14f0;color:#eef2f7;border:1px solid rgba(255,255,255,.18);box-shadow:0 6px 18px #00000080;white-space:nowrap}.icon-tip .tip-title{font-size:clamp(9px,1.408cqw,26px);font-weight:800;color:#ffd489}.icon-tip .tip-body{font-size:clamp(9px,1.3cqw,24px);line-height:1.4}.icon-tip .tip-left{font-size:clamp(9px,1.192cqw,22px);color:#9fd7ff}@keyframes peekPulse{0%,to{opacity:.45}50%{opacity:1}}.peek-enemy.tut-focus{border-color:#ff4d4d;box-shadow:0 0 0 3px #ff4d4d59,0 0 16px #ff4d4d8c;animation:peekFocus .9s ease-in-out infinite}@keyframes peekFocus{0%,to{opacity:.75;box-shadow:0 0 0 3px #ff4d4d4d,0 0 12px #ff4d4d73}50%{opacity:1;box-shadow:0 0 0 5px #ff4d4d80,0 0 22px #ff4d4dcc}}.battle-pause{position:absolute;left:1.3cqw;top:1.083cqw;z-index:30;border:none;border-radius:1.083cqw;padding:.867cqw 1.733cqw;min-width:5.2cqw;font-weight:800;font-size:clamp(14px,2.167cqw,40px);line-height:1;cursor:pointer;background:#10121ad1;color:#fff;box-shadow:0 2px 8px #0006}.battle-pause:hover{background:#10121af2}.battle-pause.on{background:#ff8a3d}.pause-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:22;background:#00000059;pointer-events:none;display:flex;justify-content:center;align-items:flex-start;animation:fadeIn .15s ease}.pause-menu{pointer-events:auto;margin-top:1.083cqw;display:grid;gap:1.3cqw;justify-items:center;padding:1.733cqw 2.6cqw;border-radius:1.517cqw;background:#12141ce0;color:#eef2f7;border:1px solid rgba(255,255,255,.14);box-shadow:0 12px 32px #0000008c}.pause-label{font-size:clamp(11px,1.625cqw,30px);font-weight:800;letter-spacing:4px;color:#ffd489}.pause-actions{display:flex;gap:1.083cqw;flex-wrap:wrap;justify-content:center}.pause-actions .btn{padding:1.083cqw 2.384cqw;font-size:clamp(11px,1.625cqw,30px)}.battle-cam{position:absolute;top:1.083cqw;right:1.3cqw;z-index:10;display:flex;gap:4px}.battle-cam button{border:none;border-radius:.867cqw;padding:.65cqw 1.3cqw;font-weight:800;font-size:clamp(9px,1.408cqw,26px);cursor:pointer;background:#10121abf;color:#fff}.battle-cam button.on{background:#ff8a3d}.battle-speed{position:absolute;top:4.984cqw;right:1.3cqw;display:flex;gap:4px;z-index:10}.battle-speed .spd{border:none;border-radius:.867cqw;padding:.65cqw 1.083cqw;font-weight:800;font-size:clamp(9px,1.408cqw,26px);cursor:pointer;background:#10121abf;color:#fff}.battle-speed .spd.on{background:#ff8a3d}.status-panel{position:absolute;top:.867cqw;z-index:20;width:clamp(220px,30%,300px);max-height:calc(100% - 104px);overflow-y:auto;padding:1.3cqw 1.517cqw 1.517cqw;border-radius:1.3cqw;background:#12141ced;color:#eef2f7;border:1px solid rgba(255,255,255,.12);box-shadow:0 10px 28px #00000073}.status-panel.ally{left:.867cqw;border-top:3px solid #3b7bd6}.status-panel.enemy{right:.867cqw;border-top:3px solid #d64545}.st-close{position:absolute;top:5px;right:.867cqw;z-index:1;background:none;border:none;color:#cbd3de;font-size:clamp(14px,2.167cqw,40px);line-height:1;cursor:pointer}.st-close:hover{color:#fff}.st-head{display:flex;align-items:center;gap:1.083cqw;margin-bottom:1.083cqw;padding-right:1.95cqw}.st-emoji{width:4.55cqw;height:4.55cqw;flex:none;border-radius:1.083cqw;display:grid;place-items:center;font-size:clamp(18px,2.817cqw,52px);border:2px solid rgba(255,255,255,.5)}.st-name{font-weight:800;font-size:clamp(11px,1.733cqw,32px)}.st-side{font-size:clamp(9px,1.3cqw,24px);color:#aab4c0}.st-row{display:grid;grid-template-columns:52px 1fr 32px;align-items:center;gap:.867cqw;margin:5px 0}.st-label{font-size:clamp(9px,1.3cqw,24px);font-weight:700;color:#c7cfda}.st-bar{display:flex;gap:2px}.st-bar i{flex:1;height:1.083cqw;border-radius:2px;background:#ffffff21}.st-bar i.on{background:#5ad066}.st-val{font-size:clamp(9px,1.3cqw,24px);text-align:right;color:#dfe6ee;font-variant-numeric:tabular-nums}.st-sec{margin-top:1.083cqw;padding-top:.867cqw;border-top:1px solid rgba(255,255,255,.1)}.st-sec-h{font-weight:800;font-size:clamp(9px,1.408cqw,26px);color:#ffd489;margin-bottom:5px}.st-tags{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:5px}.st-tags span{font-size:clamp(9px,1.192cqw,22px);font-weight:700;padding:2px .867cqw;border-radius:999px;background:#ffffff1a}.st-desc{font-size:clamp(9px,1.354cqw,25px);line-height:1.55;margin:0;color:#d7dee7}.battle-result{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#06080e8c;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.result-card{display:grid;gap:3.2cqw;place-items:center;padding:3.684cqw 6.067cqw;animation:popIn .32s cubic-bezier(.2,1.2,.4,1)}@keyframes popIn{0%{transform:scale(.7);opacity:0}to{transform:scale(1);opacity:1}}.result-actions{display:flex;gap:2.2cqw;flex-wrap:wrap;justify-content:center}.result-actions .btn,.result-actions .btn.ghost{background:#00000080;color:#fff;box-shadow:none;border:none;border-radius:.6cqw;padding:1.1cqw 3cqw;font-size:clamp(12px,2.1cqw,38px);font-weight:700;letter-spacing:.15cqw;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);transition:background .12s,transform .08s}.result-actions .btn:hover{background:#000000b8}.result-actions .btn:active{background:#000000d1;transform:translateY(2px)}.result-title{font-size:clamp(36px,6.5cqw,104px);font-weight:900;letter-spacing:.8cqw;padding:1.1cqw 3.2cqw;border-top:.33cqw solid;border-bottom:.33cqw solid;animation:result-title-in .62s cubic-bezier(.2,1.2,.4,1) both}.result-card.win .result-title{color:#fff5d6;border-color:#ffd682d9;text-shadow:0 0 1.3cqw rgba(255,170,40,.9),0 .4cqw 0 #7a2b12,0 0 3cqw rgba(0,0,0,.6);background:linear-gradient(90deg,#0000,#3e1a06bf 18%,#3e1a06bf 82%,#0000)}.result-card.lose .result-title{color:#e7eef6;border-color:#96afcdb3;text-shadow:0 0 1.3cqw rgba(90,130,180,.8),0 .4cqw 0 #1d2733,0 0 3cqw rgba(0,0,0,.6);background:linear-gradient(90deg,#0000,#0e141ed1 18%,#0e141ed1 82%,#0000)}@keyframes result-title-in{0%{opacity:0;transform:scale(1.5)}60%{opacity:1;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.dev-link{position:absolute;left:12px;bottom:10px;font-size:12px;color:#ffffffbf;text-decoration:none;border:1px solid rgba(255,255,255,.3);padding:3px 10px;border-radius:999px}.dev-link:hover{background:#ffffff1f}.dev-app{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;background:#f4f6f9;color:var(--ink);-webkit-user-select:text;user-select:text}.dev-header{display:flex;align-items:center;gap:16px;padding:10px 16px;background:#20242c;color:#fff;box-shadow:0 2px 10px #00000040}.dev-header h1{font-size:16px;margin:0;font-weight:800}.dev-tabs{display:flex;gap:6px}.dev-tabs button{border:none;background:#ffffff1a;color:#fff;padding:6px 14px;border-radius:8px;font-weight:700;cursor:pointer}.dev-tabs button.on{background:#ff8a3d}.dev-tabs button:disabled{opacity:.4;cursor:not-allowed}.dev-back{margin-left:auto;color:#ffd489;text-decoration:none;font-weight:700}.dev-main{flex:1;overflow:hidden}.ed-dialogue{height:100%;display:grid;grid-template-columns:minmax(420px,1fr) minmax(360px,46%)}.ed-form{padding:14px 16px;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.ed-preview{padding:16px;background:#e7ebf1;border-left:1px solid #d3d9e2;display:flex;flex-direction:column;gap:12px;overflow:auto}.ed-preview-stage{position:relative;width:100%;aspect-ratio:16 / 9;container-type:inline-size;border-radius:12px;overflow:hidden;background:#000;box-shadow:0 8px 24px #00000040}.ed-preview-ctl{display:flex;align-items:center;gap:10px}.ed-preview-ctl input[type=range]{flex:1}.ed-preview-idx{font-size:13px;font-weight:700;white-space:nowrap}.ed-toolbar{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.ed-sep{width:1px;height:22px;background:#cdd4de;margin:0 4px}.ed-select,.ed-input,.ed-textarea{font:inherit;padding:6px 8px;border:1px solid #c3cad6;border-radius:8px;background:#fff;color:var(--ink)}.ed-input.grow,.ed-select{min-width:0}.ed-input.grow{flex:1}.ed-select.warn{border-color:#e05050;background:#fff2f2}.ed-field small.warn{color:#b4610f;font-weight:700}.ed-select.tiny{padding-left:4px;padding-right:4px}.ed-btn{font:inherit;font-weight:700;cursor:pointer;border:1px solid #c3cad6;background:#fff;color:var(--ink);padding:6px 12px;border-radius:8px}.ed-btn:hover{background:#eef1f6}.ed-btn.primary{background:#ff8a3d;border-color:#ff8a3d;color:#fff}.ed-btn.danger{color:#d0342c;border-color:#e6b3af}.ed-btn.tiny{padding:3px 7px;font-size:12px}.ed-btn:disabled{opacity:.45;cursor:not-allowed}.ed-field{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:700}.ed-field.two{flex-direction:row;gap:16px}.ed-field.two label{flex:1;display:flex;flex-direction:column;gap:4px}.ed-bg-row{display:flex;align-items:center;gap:8px}.ed-swatch{width:30px;height:30px;border-radius:6px;border:1px solid #c3cad6;flex:none}.ed-lines{display:flex;flex-direction:column;gap:6px}.ed-lines-head{display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:800}.ed-line{display:grid;grid-template-columns:24px 232px 1fr auto;gap:8px;align-items:start;padding:6px;border:1px solid #dbe0e9;border-radius:10px;background:#fff;cursor:pointer}.ed-line.active{border-color:#ff8a3d;box-shadow:0 0 0 2px #ff8a3d40}.ed-line-no{font-weight:800;color:#6b7482;text-align:center;padding-top:6px}.ed-textarea{resize:vertical;width:100%}.ed-line-ops{display:flex;gap:3px}.ed-line.step{grid-template-columns:24px 120px 1fr auto;align-items:center}.ed-speakers{display:flex;flex-direction:column;gap:4px;min-width:0}.ed-speaker{display:flex;gap:4px;align-items:center;min-width:0}.ed-speaker .ed-select:first-child{flex:1;min-width:0}.ed-check{display:flex;align-items:center;gap:4px;font-size:12px;color:#6b7482;font-weight:700}.ed-volume{display:flex;align-items:center;gap:6px}.ed-volume input[type=range]{width:92px}.ed-volume-val{font-size:12px;font-weight:700;color:#6b7382;width:24px;text-align:right}.ed-seg{display:flex;flex-direction:column;gap:8px;padding:8px;border:1px solid #dbe0e9;border-radius:10px;background:#fff;cursor:pointer}.ed-seg.active{border-color:#ff8a3d;box-shadow:0 0 0 2px #ff8a3d40}.ed-seg-head{display:flex;flex-wrap:wrap;gap:8px 10px;align-items:flex-end}.ed-seg-video,.ed-seg-type,.ed-seg-vol{display:flex;flex-direction:column;gap:3px;font-size:12px;font-weight:700}.ed-seg-video{flex:1 1 200px}.ed-seg-vol input[type=range]{width:110px}.ed-seg-head .ed-line-ops{margin-left:auto}.ed-video-row{display:flex;align-items:center;gap:6px}.ed-video-row .ed-input{width:90px}.ed-video-path{font-size:11px;color:#6b7482;font-weight:600;white-space:nowrap}.ed-seg-telops{display:flex;flex-direction:column;gap:6px}.ed-seg-telop{display:flex;flex-direction:column;gap:2px;font-size:12px;font-weight:700}.ed-seg .ed-line-no{padding-top:22px}.ed-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding-top:4px}.ed-status{font-size:13px;font-weight:700}.ed-status.ok{color:#1a8a4a}.ed-status.ng{color:#d0342c}.ed-empty{color:#77808f;padding:16px}.ed-battle{height:100%;display:flex;flex-direction:column}.ed-battle .ed-preview{order:0;flex:none;border-left:none;border-bottom:1px solid #d3d9e2;padding:10px 14px}.ed-battle .ed-form{order:1;flex:1;overflow-y:auto}.ed-battle .ed-preview-stage{cursor:crosshair;aspect-ratio:8 / 3;height:42vh;width:auto;max-width:100%;margin:0 auto}.ed-battle .battle-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.ed-hint{font-size:12px;color:#5a6472;margin:0}.ed-enemy{display:grid;grid-template-columns:28px 150px 1fr auto auto;gap:8px;align-items:center;padding:5px 6px;border:1px solid #dbe0e9;border-radius:10px;background:#fff}.ed-enemy .ed-line-no{font-size:20px}.ed-enemy input[type=range]{width:100%}.ed-x{font-size:12px;font-weight:700;color:#55606f;white-space:nowrap}.ed-test{display:flex;flex-direction:column;gap:8px;padding-top:6px;border-top:1px dashed #cdd4de}.ed-ally-pick{display:flex;flex-wrap:wrap;gap:4px}.ed-chip{width:40px;height:40px;font-size:22px;line-height:1;border:2px solid #c3cad6;border-radius:10px;background:#fff;cursor:pointer}.ed-chip.on{border-color:#ff8a3d;background:#ff8a3d2e}.tut-arrow{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:15;overflow:visible;filter:drop-shadow(0 2px 3px rgba(0,0,0,.5))}.tut-arrow line{animation:tutDash .6s linear infinite}@keyframes tutDash{to{stroke-dashoffset:-12}}.zukan-scene{display:flex;flex-direction:column;gap:1.3cqw;padding:1.517cqw 1.733cqw 1.733cqw;background:radial-gradient(circle at 50% 18%,#24304f,#0b1226 82%);color:#eef2f7}.zk-head{display:flex;align-items:center;gap:1.517cqw;flex:none}.zk-back{padding:.867cqw 1.733cqw;font-size:clamp(10px,1.517cqw,28px);box-shadow:none}.zk-title{font-size:clamp(15px,2.384cqw,44px);font-weight:900;letter-spacing:2px}.zk-count{margin-left:auto;font-size:clamp(9px,1.408cqw,26px);color:#aab4c0}.zk-sec{font-size:clamp(9px,1.408cqw,26px);font-weight:800;color:#ffcf7a;margin:.65cqw 2px .867cqw;letter-spacing:2px}.zk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(11.5cqw,1fr));gap:.867cqw;margin-bottom:1.517cqw}.zk-cell{display:flex;flex-direction:column;align-items:center;gap:4px;padding:.867cqw 4px;border-radius:1.083cqw;cursor:pointer;color:#eef2f7;background:#ffffff0f;border:2px solid transparent}.zk-cell:hover{background:#ffffff1f}.zk-cell.sel{border-color:#ff8a3d;background:#ff8a3d2e}.zk-cell.locked{opacity:.5;cursor:not-allowed}.zk-emoji{width:100%;aspect-ratio:1;border-radius:.975cqw;display:grid;place-items:center;font-size:clamp(17px,4cqw,72px);border:2px solid rgba(255,255,255,.4);overflow:hidden}.zk-emoji{position:relative}.zk-art{width:100%;height:100%;object-fit:contain;object-position:center bottom;display:block}.zk-art.fit{position:absolute;height:auto;object-fit:fill;max-width:none}.zk-name{font-size:clamp(9px,1.192cqw,22px);font-weight:700;text-align:center}.zk-unknown{text-align:center;color:#8892a0;padding:4.334cqw 1.083cqw;font-size:clamp(20px,3.034cqw,56px);font-weight:900}.zk-unknown small{font-size:clamp(9px,1.3cqw,24px);font-weight:600}.status-panel.embedded{position:static;width:100%;max-height:none;box-shadow:none}@media(max-width:680px){.zk-body{flex-direction:column}.zk-detail{flex:none;min-width:0}}.battle-start-banner{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:40}.battle-start-banner span{font-weight:900;font-size:clamp(24px,6.5cqw,84px);letter-spacing:.8cqw;color:#fff5d6;text-shadow:0 0 1.3cqw rgba(255,170,40,.9),0 .4cqw 0 #7a2b12,0 0 3cqw rgba(0,0,0,.6);padding:1.1cqw 3.2cqw;border-top:.33cqw solid rgba(255,214,130,.85);border-bottom:.33cqw solid rgba(255,214,130,.85);background:linear-gradient(90deg,#0000,#140804b8 18%,#140804b8 82%,#0000);animation:battle-start-in 1.6s ease-out forwards}@keyframes battle-start-in{0%{opacity:0;transform:scale(1.5)}14%{opacity:1;transform:scale(1)}74%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.08)}}.ed-sound{height:100%;overflow:hidden}.ed-sound .ed-form{height:100%}.ed-se-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:6px;align-items:start}.ed-se-grid.narrow{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.ed-se-row{display:grid;grid-template-columns:minmax(96px,132px) 1fr;gap:4px 10px;align-items:center;background:#fff;border:1px solid #dbe0e9;border-radius:10px;padding:7px 9px;color:var(--ink)}.ed-se-row.char{align-items:start}.ed-se-name{font-size:13px;font-weight:800;display:flex;flex-direction:column;gap:1px}.ed-se-sub{font-size:11px;color:#6b7482;font-weight:600}.ed-se-picks{display:flex;flex-direction:column;gap:5px;min-width:0}.ed-se-pick{display:grid;grid-template-columns:92px 1fr;gap:8px;align-items:center;min-width:0}.ed-se-tag{font-size:11px;font-weight:800;color:#4a5260;display:flex;flex-direction:column;gap:1px}.ed-se-tag em{font-style:normal;font-weight:600;font-size:10px;color:#6b7482}.ed-se-pick-row{display:flex;align-items:center;gap:5px;min-width:0}.ed-se-pick-row .ed-select{flex:1;min-width:0}.ed-seg-vol.wide,.ed-seg-vol.wide input[type=range]{width:100%}.ed-tune2{height:100%;display:grid;grid-template-columns:210px 1fr;overflow:hidden}.ed-tune-list{overflow-y:auto;padding:8px;border-right:1px solid #d3d9e2;background:#eef1f6;display:flex;flex-direction:column;gap:2px}.ed-tune-lh{font-size:11px;font-weight:900;color:#6b7482;margin:8px 0 3px}.ed-tune-li{width:100%;font:inherit;cursor:pointer;text-align:left;display:flex;align-items:center;gap:7px;padding:4px 8px;background:#fff;border:1px solid #dbe0e9;border-radius:8px;color:var(--ink)}.ed-tune-li:hover{background:#f4f6f9}.ed-tune-li.on{background:#ff8a3d;border-color:#ff8a3d;color:#fff}.ed-tune-iemoji{font-size:19px;line-height:1}.ed-tune-iname{font-size:12px;font-weight:800;flex:1}.ed-tune-icost{font-size:10px;font-weight:800;color:#c25a12}.ed-tune-li.on .ed-tune-icost,.ed-tune-li.on .ed-tune-ibadge{color:#fff}.ed-tune-ibadge{font-size:10px;font-weight:800;color:#c25a12}.ed-tune-right{display:flex;flex-direction:column;gap:8px;padding:10px 12px;overflow-y:auto}.ed-tune-view{container-type:inline-size;width:100%;max-width:920px}.ed-tune-view .status-panel{position:static;width:100%;max-height:none;overflow:visible}.ed-num{font:inherit;font-weight:700;text-align:right;width:58px;padding:1px 4px;margin:0 2px;background:#ffffff14;color:#eef2f7;border:1px solid rgba(255,255,255,.22);border-radius:4px}.ed-num:focus{outline:none;border-color:#ffd489;background:#ffffff29}.ed-num.st-val{width:62px}.ed-tune-extra{margin-top:6px;display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:1px 16px}.ed-tune-extra .ed-tune-f{display:flex;align-items:center;gap:6px;padding:1px 3px;border-radius:4px;font-size:clamp(9px,1.25cqw,23px);font-weight:700;color:#aab4c0}.ed-tune-extra .ed-tune-fl{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ed-tune-view .st-desc.dim{color:#8a93a3}.ed-tune-view .ed-textarea{width:100%;background:#ffffff14;color:#eef2f7;border-color:#ffffff38}.ed-num.unsaved{border-color:#ff8a3d;color:#ffd489;background:#ff8a3d33}.ed-tune-extra .ed-tune-f.unsaved{background:#ff8a3d24;color:#ffd489}.ed-tune-li.unsaved{border-color:#ff8a3d;box-shadow:inset 3px 0 #ff8a3d}.ed-tune-ibadge.unsaved{color:#ff8a3d}.ed-tune-li.on .ed-tune-ibadge.unsaved{color:#fff}.ed-unsaved{color:#d0342c}.ed-btn.primary.attn{box-shadow:0 0 0 3px #ff8a3d4d}.st-demo-btn{display:flex;align-items:baseline;gap:.65cqw;width:100%;font:inherit;font-weight:800;font-size:clamp(9px,1.408cqw,26px);color:#ffd489;background:none;border:none;padding:0;margin-bottom:5px;cursor:pointer;text-align:left}.st-demo-btn:hover{color:#fff0c2}.st-demo-hint{margin-left:auto;font-size:clamp(8px,1.1cqw,20px);font-weight:700;color:#9fb0c4}.st-demo-btn.on .st-demo-hint{color:#ffd489}.demo-view{position:relative;overflow:hidden;width:100%;aspect-ratio:520 / 300;margin-top:.65cqw;border-radius:.867cqw;background:#0b1020;border:1px solid rgba(255,255,255,.16)}.demo-canvas{position:absolute;left:0;bottom:0;width:100%;height:auto;display:block}.zk-stage{position:relative;flex:2 1 0;min-height:0;overflow:hidden;border-radius:1.083cqw;background:#0b1020;border:1px solid rgba(255,255,255,.12)}.zk-stage .status-panel{top:1.083cqw;left:1.083cqw;max-height:calc(100% - 2.166cqw)}.zk-list{flex:1 1 0;min-height:0;overflow-y:auto;padding-right:4px}.zk-unknown{display:grid;place-items:center;height:100%;color:#9fb0c4;text-align:center}.demo-view{position:absolute;top:0;right:0;bottom:0;left:0;border:none;border-radius:0;margin:0;aspect-ratio:auto;background:transparent}.demo-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.title-account{position:absolute;top:1.3cqw;right:1.517cqw;z-index:5;display:flex;align-items:center;gap:.867cqw}.title-account-note{font-size:clamp(9px,1.192cqw,20px);color:#ffffff8c;white-space:nowrap}.title-account-name{font-size:clamp(10px,1.3cqw,22px);color:#ffffffd9;max-width:26cqw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.title-account .btn{padding:.65cqw 1.517cqw;font-size:clamp(9px,1.3cqw,22px)}.chapter-cutin{display:grid;place-items:center;cursor:pointer;color:#f0e2c0;overflow:hidden}.cut-inner{display:grid;justify-items:center;gap:1.2cqw;width:78%}.cut-rule{width:100%;height:2px;justify-self:stretch;background:linear-gradient(90deg,transparent,#c8a659 18%,#f2dfa8 50%,#c8a659 82%,transparent);transform:scaleX(0);animation:cutRule .55s cubic-bezier(.2,.8,.2,1) forwards}.cut-rule.bottom{animation-delay:.1s}@keyframes cutRule{to{transform:scaleX(1)}}.cut-label{font-size:clamp(13px,2.6cqw,34px);font-weight:800;letter-spacing:.5em;text-indent:.5em;color:#cbb178;opacity:0;animation:cutLabel .7s ease .35s forwards}@keyframes cutLabel{0%{opacity:0;transform:translateY(-.8cqw)}to{opacity:1;transform:none}}.cut-title{font-size:clamp(20px,7.2cqw,96px);font-weight:900;white-space:nowrap;letter-spacing:.16em;text-indent:.16em;background:linear-gradient(180deg,#fff6dc,#e8c874 55%,#c99a3f);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 .4cqw 1.4cqw rgba(0,0,0,.75));opacity:0;animation:cutTitle .9s cubic-bezier(.2,.8,.2,1) .55s forwards}@keyframes cutTitle{0%{opacity:0;letter-spacing:.5em;transform:scale(1.06)}to{opacity:1;letter-spacing:.16em;transform:none}}.cut-skip{position:absolute;right:3%;bottom:5%;font-size:clamp(9px,1.3cqw,22px);color:#cbb178;opacity:.75;animation:blink 1s infinite}.ed-stage-picks{display:flex;flex-direction:column;gap:4px}.ed-stage-pick{display:flex;align-items:center;gap:8px;font-size:13px;padding:5px 8px;border:1px solid #dbe0e9;border-radius:8px;background:#fff;cursor:pointer}.ed-stage-pick.on{border-color:#ff8a3d;background:#fff6ef}.ed-stage-name{font-weight:700}.ed-stage-id{color:#939bab;font-size:12px}.ed-tag{margin-left:auto;font-size:11px;font-weight:800;padding:2px 7px;border-radius:999px;background:#ff8a3d;color:#fff}.ed-tag.other{background:#aab2c0;margin-left:0}.ed-note{font-size:12px;color:#8a6d3b;background:#fff8e6;border:1px solid #f0e0b8;border-radius:8px;padding:7px 10px}.chapter-select{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3cqw;padding:4cqw;background:radial-gradient(circle at 50% 30%,#1d2233,#090b12 75%);color:#f0e2c0}.csel-head{text-align:center}.csel-title{font-size:clamp(18px,4.4cqw,56px);font-weight:900;letter-spacing:.12em;text-indent:.12em;background:linear-gradient(180deg,#fff6dc,#e8c874 55%,#c99a3f);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 .3cqw 1cqw rgba(0,0,0,.7))}.csel-sub{margin-top:.6cqw;font-size:clamp(10px,1.6cqw,20px);color:#9aa3b8;letter-spacing:.1em}.csel-cards{display:flex;gap:2.2cqw;flex-wrap:wrap;justify-content:center}.csel-card{position:relative;flex:0 1 22cqw;min-width:150px;display:flex;flex-direction:column;align-items:center;gap:.5cqw;padding:2.4cqw 1.6cqw;border-radius:1.2cqw;border:2px solid rgba(200,166,89,.55);color:#f0e2c0;cursor:pointer;font-family:inherit;box-shadow:0 .8cqw 2.4cqw #00000073;transition:transform .18s ease,border-color .18s ease,filter .18s ease}.csel-card:not(:disabled):hover{transform:translateY(-.6cqw);border-color:#f2dfa8}.csel-card.done,.csel-card.empty{cursor:default;filter:brightness(.28) saturate(.4)}.csel-card:disabled{cursor:default}.csel-label{font-size:clamp(10px,1.7cqw,22px);font-weight:800;letter-spacing:.4em;text-indent:.4em;color:#cbb178}.csel-name{font-size:clamp(15px,3cqw,38px);font-weight:900;letter-spacing:.08em;text-indent:.08em}.csel-meta{font-size:clamp(9px,1.4cqw,18px);color:#9c9484}.csel-stamp{position:absolute;top:.8cqw;right:1.2cqw;font-size:clamp(14px,2.6cqw,32px);color:#f2dfa8}.csel-foot{font-size:clamp(10px,1.5cqw,19px);color:#8d94a6;letter-spacing:.08em}.csel-back{position:absolute;left:2%;bottom:4%}
