#stage{inset:248px 0 140px;outline-offset:-4px}#stage canvas{touch-action:pan-y}#hello[data-interactive=true] #stage{cursor:grab}#stage.is-dragging{cursor:grabbing!important}#hello[data-interactive=true] .hero-caption{opacity:0;visibility:hidden;pointer-events:none}
.hero-inspector{position:absolute;inset:0;pointer-events:none;z-index:2;visibility:hidden;opacity:0;transition:opacity .5s}#hello[data-interactive=true] .hero-inspector{visibility:visible;opacity:1}.hero-inspector .detail-leaders{z-index:0}.hero-inspector #detail-hotspots{z-index:1}.hero-inspector-menu,.hero-detail-card{pointer-events:auto;position:absolute;z-index:2}
.hero-inspector-menu{left:max(5%,calc((100% - 1320px)/2));top:300px;width:218px}.hero-inspector-menu>.eyebrow{font-size:8px;margin-bottom:15px}.hero-inspector-menu>h3{font-family:'Hiragino Mincho ProN','Yu Mincho',serif;font-weight:500;font-size:17px;letter-spacing:.05em;line-height:1.8;margin:0 0 24px}.hero-inspector-menu .detail-menu{gap:7px}.hero-inspector-menu .detail-menu>button{font-size:10px;min-height:42px;padding:11px 8px;gap:5px}.hero-inspector-menu .detail-menu>button>span:last-child{display:none}.hero-model-actions{display:flex;justify-content:space-between;align-items:center;margin-top:19px;gap:9px}.hero-model-actions>button{border:0;border-bottom:1px solid var(--line);padding:6px 0;background:transparent;color:var(--blue);font-size:10px;cursor:pointer}.hero-model-actions>span{font-size:8px;letter-spacing:.04em;color:var(--soft)}
.hero-detail-card{right:max(5%,calc((100% - 1320px)/2));top:288px;width:280px;max-height:calc(100% - 312px);display:flex;flex-direction:column}.detail-mofi{position:absolute;right:10px;top:-120px;width:104px;height:104px;object-fit:contain;pointer-events:none;filter:drop-shadow(0 6px 12px #0002)}.hero-detail-card::before{content:"";position:absolute;z-index:1;top:-10px;right:43px;width:20px;height:20px;transform:rotate(45deg);border-left:1px solid var(--line);border-top:1px solid var(--line);border-radius:3px 0 0;background:var(--surface);pointer-events:none}.detail-speech{position:relative;min-height:0;overflow-y:auto;scrollbar-width:thin;padding:26px 23px 23px;border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:0 15px 45px var(--callout-shadow)}.hero-detail-card[hidden]{display:none}.detail-card-close{position:absolute;z-index:2;right:10px;top:7px;border:0;background:transparent;color:var(--muted);font:22px Arial,sans-serif;cursor:pointer;padding:6px}.hero-detail-card .detail-description{border:0;padding:0;margin:0;min-height:0}.hero-detail-card .detail-description>.eyebrow{font-size:8px;margin:0 0 17px}.hero-detail-card .detail-description>h3{font-size:19px;line-height:1.7;margin-bottom:14px;text-wrap:balance}.hero-detail-card .detail-description>p:last-child{font-size:10px;line-height:2.1}.hero-detail-card .detail-reference{grid-template-columns:1fr;gap:12px;margin-top:20px;padding-top:17px}.detail-reference-image{display:block;overflow:hidden;border:1px solid var(--line);border-radius:6px;background:var(--surface-soft);cursor:zoom-in}.detail-reference-image:hover{border-color:var(--accent)}.detail-reference-image>svg{display:block;width:100%;height:auto;min-height:110px;max-height:180px;overflow:hidden}.hero-detail-card .detail-reference figcaption>p{font-size:9px;margin:6px 0 9px}.hero-detail-card .detail-reference figcaption>a{font-size:8px}.hero-detail-card .detail-reference figcaption>span{font-size:7px}.hero-inspector button:disabled{opacity:.4;cursor:wait}
.character-study>a{cursor:zoom-in}.character-study>a:hover{transform:none}.collection-item{cursor:zoom-in}
.image-modal{width:min(1300px,calc(100vw - 64px));height:min(88svh,1100px);max-width:none;max-height:none;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink);box-shadow:0 30px 100px #0005}.image-modal[open]{display:flex;flex-direction:column}.image-modal::backdrop{background:#061121c9;backdrop-filter:blur(8px)}.image-modal-header{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:23px;align-items:center;padding:18px 22px;border-bottom:1px solid var(--line);flex-shrink:0}.image-modal-heading{min-width:0}.image-modal-heading>span{font:8px Arial,sans-serif;letter-spacing:.18em;color:var(--soft)}.image-modal-heading>h2{font:12px/1.5 'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;font-weight:500;letter-spacing:.03em;margin:7px 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-modal-tools{display:flex;align-items:center;gap:8px}.image-modal-tools>button,.image-modal-close{display:grid;place-items:center;border:1px solid var(--line);background:var(--surface-soft);color:var(--ink);cursor:pointer;border-radius:5px;min-width:33px;height:33px;font:18px Arial,sans-serif}.image-modal-tools>button:hover,.image-modal-close:hover{border-color:var(--accent)}.image-modal-tools>button:disabled{opacity:.35;cursor:default}.image-modal-tools>output{min-width:48px;text-align:center;font:11px Arial,sans-serif;color:var(--muted)}#image-fit{font-family:inherit;font-size:10px;padding:0 12px;margin-left:7px}.image-modal-close{border:0;background:transparent;font-size:25px}.image-viewport{position:relative;flex:1;min-height:0;overflow:hidden;background:var(--surface-soft);cursor:grab;touch-action:none;user-select:none;outline-offset:-4px}.image-viewport.is-panning{cursor:grabbing}.image-content{position:absolute;left:0;top:0;overflow:hidden;transform-origin:0 0;will-change:transform;pointer-events:none;user-select:none}.image-content>img{position:absolute;left:0;top:0;max-width:none;width:auto;height:auto;pointer-events:none;user-select:none}#image-modal-hint{margin:0;padding:11px 20px;font-size:10px;line-height:1.8;text-align:center;color:var(--muted);border-top:1px solid var(--line);flex-shrink:0}
@media(max-width:1200px) and (min-width:761px){.hero-inspector-menu{left:4%;width:185px;top:305px}.hero-inspector-menu>h3{font-size:15px}.hero-inspector-menu .detail-menu>button{font-size:9px;padding:10px 6px;gap:4px}.hero-detail-card{right:4%;width:242px}.detail-speech{padding:24px 18px 20px}.detail-mofi{width:96px;height:96px;top:-112px}.hero-detail-card .detail-description>h3{font-size:17px}.hero-detail-card .detail-reference{gap:10px}}
@media(max-width:950px) and (min-width:761px){.hero-inspector-menu{left:20px;width:165px}.hero-detail-card{right:20px;width:215px}.hero-inspector-menu .detail-menu{grid-template-columns:1fr}.hero-inspector-menu .detail-menu>button{min-height:30px;padding:8px}.hero-model-actions{flex-direction:column;align-items:flex-start;gap:5px}}
@media(max-width:760px){#stage{inset:230px 0 140px}#hello[data-interactive=true]{height:auto;min-height:920px}#hello[data-interactive=true] #stage{top:230px;height:380px;bottom:auto}#hello[data-inspecting=true]{min-height:1600px}.hero-inspector-menu{top:630px;left:22px;right:22px;width:auto}.hero-inspector-menu>.eyebrow{font-size:8px;margin-bottom:13px}.hero-inspector-menu>h3{display:none}.hero-inspector-menu .detail-menu{display:flex;gap:7px;overflow-x:auto;padding:1px 1px 9px}.hero-inspector-menu .detail-menu>button{flex:0 0 auto;min-height:37px;padding:9px 11px;font-size:10px}.hero-model-actions{margin-top:7px}.hero-detail-card{left:22px;right:22px;top:890px;width:auto;max-height:none}.detail-speech{padding:22px}.detail-mofi{right:10px;top:-108px;width:88px;height:88px}.hero-detail-card::before{right:39px}.hero-detail-card .detail-description>h3{font-size:20px}.hero-detail-card .detail-description>p:last-child{font-size:11px}.hero-detail-card .detail-reference{display:grid}.image-modal{width:calc(100vw - 16px);height:calc(100svh - 24px);border-radius:10px}.image-modal-header{grid-template-columns:1fr auto;padding:15px;gap:13px}.image-modal-heading{grid-column:1;grid-row:1}.image-modal-heading>h2{font-size:10px}.image-modal-close{grid-column:2;grid-row:1}.image-modal-tools{grid-column:1/-1;grid-row:2;justify-content:center}.image-modal-tools>button{height:34px;min-width:37px}#image-modal-hint{font-size:8px;padding:10px 8px}.hero[data-interactive=true] .controls{bottom:52px}}

.footer-back{display:flex;align-items:center;gap:14px;max-width:100%;color:var(--ink)}.footer-mofi{width:72px;height:72px;flex-shrink:0;object-fit:contain;filter:drop-shadow(0 4px 8px #0001)}.footer-back>.footer-speech{position:relative;display:flex;align-items:center;gap:20px;min-width:0;margin-left:0;padding:16px 20px;border:1px solid var(--line);border-radius:999px;background:var(--surface);line-height:1.8;transition:background .2s,border-color .2s}.footer-speech::before{content:"";position:absolute;left:-8px;top:calc(50% - 7px);width:14px;height:14px;transform:rotate(45deg);border-left:1px solid;border-bottom:1px solid;border-color:inherit;background:inherit;pointer-events:none}.footer-back:hover .footer-speech{background:var(--surface-soft);border-color:var(--accent)}.footer-speech>span{font-size:14px;flex-shrink:0}
@media(max-width:760px){.footer-back{gap:12px;font-size:10px}.footer-mofi{width:60px;height:60px}.footer-back>.footer-speech{gap:12px;padding:14px 16px}}
