.vn-count{margin:0 0 10px;color:var(--muted);font-size:var(--fs11)}.vn-list{display:grid;gap:8px}.vn-act{display:flex;align-items:center;gap:12px;width:100%;min-height:76px;padding:8px;text-align:left;color:#f0e6cf;background:#1c3050;border:1px solid #bda574;border-radius:8px;cursor:pointer;transition:transform .12s,background .12s}.vn-act:hover{background:#25406a}.vn-act:active{transform:scale(.985)}.vn-act.locked{color:#8d99ac;background:#18263d;border-color:#47556d;cursor:default}.vn-thumb{flex:none;width:96px;height:60px;object-fit:cover;border-radius:4px;background:#25324a;display:flex;align-items:center;justify-content:center}.vn-act-text{display:grid;gap:1px;min-width:0}.vn-act-text small{color:var(--gold);font-size:var(--fs10)}.vn-act-text b{font-size:var(--fs13);font-weight:600}.vn-act-text em{font-style:normal;font-size:var(--fs10);color:#aab6c6}.vn-act-text em.new,.vn-act-text em.resume{color:#f0c96f}.vn-act-text em.done{color:#8fd6b7}body.story-page{min-height:100dvh;margin:0;padding:16px;background:#0f1620}body.story-page #story-root{max-width:560px;margin:0 auto}.story-play{display:block;margin:14px 0 0;padding:13px;text-align:center;color:#14233c;background:var(--gold);border-radius:8px;font-weight:600;text-decoration:none}dialog.vn{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:#080d17;color:#f0e6cf;outline:0;overflow:hidden}dialog.vn::backdrop{background:#080d17}.vn-stage{position:relative;width:min(100vw,177.78dvh);height:min(100dvh,56.25vw);margin:calc((100dvh - min(100dvh,56.25vw))/2) auto 0;overflow:hidden;cursor:pointer;user-select:none;-webkit-user-select:none}.vn-bg,.vn-bg img{position:absolute;inset:0;width:100%;height:100%}.vn-bg img{object-fit:cover;animation:vn-fade .8s ease both,vn-drift 24s ease-out both}@keyframes vn-fade{0%{opacity:0}}@keyframes vn-drift{to{transform:scale(1.07)}}.vn-sprite{position:absolute;bottom:-14%;height:96%;width:auto;opacity:0;pointer-events:none;transition:opacity .3s,filter .25s,transform .25s;filter:brightness(.5) saturate(.75);transform:translateY(8px)}.vn-sprite.left{left:7%}.vn-sprite.right{right:7%}.vn-sprite.shown{opacity:1}.vn-sprite.speaking{filter:none;transform:none}.vn-top{position:absolute;z-index:3;top:8px;left:8px;right:8px;display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:var(--fs10);pointer-events:none}.vn-at,.vn-tools{background:#14233cd9;border-radius:6px}.vn-at{padding:6px 10px}.vn-tools{display:flex;pointer-events:auto}.vn-tools button{width:38px;height:32px;padding:0;color:#e9d9ae;background:none;border:0;font-size:var(--fs12);cursor:pointer}.vn-tools button.off{color:#7f8ba0}.vn-tools button.on{color:#14233c;background:var(--gold);border-radius:6px}.vn-box{position:absolute;z-index:2;left:14%;right:14%;bottom:3%;min-height:24%;padding:10px 18px 14px;background:#14233cf2;border:1px solid #bda574;border-radius:8px;font-size:clamp(14px,1.9vw,19px);line-height:1.6;animation:vn-fade .25s both}.vn-box.narration .vn-text{font-style:italic;color:#d9dfea}.vn-name{display:block;min-height:0;color:var(--gold);font-weight:600}.vn-text{margin:2px 0 0;white-space:pre-wrap}.vn-more{position:absolute;right:12px;bottom:6px;font-style:normal;color:var(--gold);opacity:0}.vn-box.ready .vn-more{opacity:1;animation:vn-bob 1s ease-in-out infinite}@keyframes vn-bob{50%{transform:translateY(3px)}}.vn-end{position:absolute;z-index:4;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:20px;text-align:center;background:#080d17c4;cursor:default;animation:vn-fade .5s both}.vn-end[hidden],.vn-log[hidden],.vn-box[hidden]{display:none}.vn-end b{color:var(--gold);font-size:24px}.vn-end p{margin:0}.vn-end div{display:flex;gap:10px;margin-top:10px}.vn-end button{min-height:42px;padding:0 18px;color:#f0e6cf;background:#1c3050;border:1px solid #bda574;border-radius:8px;cursor:pointer}.vn-end button.primary{color:#14233c;background:var(--gold)}.vn-log{position:absolute;z-index:5;inset:0;padding:44px max(18px,14%) 18px;overflow-y:auto;background:#0b1424f5;cursor:default}.vn-log p{margin:0 0 12px;font-size:var(--fs13);line-height:1.6}.vn-log b{display:block;color:var(--gold)}.vn-log button{position:absolute;top:8px;right:12px;width:38px;height:34px;color:#e9d9ae;background:none;border:0;font-size:var(--fs14);cursor:pointer}@media(orientation:portrait),(max-width:560px){.vn-stage{width:100vw;height:100dvh;margin:0}.vn-bg,.vn-bg img{height:80%}.vn-bg{background:#0d1626}.vn-bg:after{content:"";position:absolute;left:0;right:0;bottom:0;height:18%;background:linear-gradient(transparent,#080d17)}.vn-sprite{bottom:22%;height:54%}.vn-sprite.left{left:-3%}.vn-sprite.right{left:-3%;right:auto}.vn-sprite:not(.speaking){opacity:0}.vn-box{left:8px;right:8px;bottom:calc(10px + env(safe-area-inset-bottom));min-height:23%;font-size:var(--fs14)}}@media(prefers-reduced-motion:reduce){.vn-bg img,.vn-box.ready .vn-more{animation:none}}
