:root{--night: #10182b;--night-deep: #080c1f;--void: #05070f;--indigo: #202b49;--mountain: #394967;--hill: #526b51;--pink: #f0a6b5;--pink-deep: #a8587a;--peach: #ffd6bd;--amber: #f3b96f;--moon: #e7e8d9;--paper: #f3eee2;--ink-soft: #9ca9bf;--ink-dim: #6f7c96;--font-mono: "IBM Plex Mono", ui-monospace, Menlo, monospace;--font-sans: "IBM Plex Sans", system-ui, sans-serif;--font-ja: "Zen Kaku Gothic New", sans-serif;--ease-cut: cubic-bezier(.16, .84, .24, 1);--ease-out: cubic-bezier(.2, .8, .2, 1);--t-anticipation: .2s;--t-strike: .2s;--t-slash: .14s;--t-open: .62s;--t-enter: .9s;--t-fieldSwap: .24s}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--night-deep);color:var(--paper);font-family:var(--font-mono);-webkit-font-smoothing:antialiased;overflow:hidden}button,input{font:inherit;color:inherit}.app{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden}.pixel{image-rendering:pixelated;image-rendering:crisp-edges}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}:focus-visible{outline:1px dashed var(--pink);outline-offset:4px}.scene{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;animation:scene-in .7s var(--ease-out) both}@keyframes scene-in{0%{opacity:0}}.stage{position:absolute}.landscape{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.samurai{position:absolute;padding:0;border:0;background:none;cursor:pointer;-webkit-tap-highlight-color:transparent}.samurai canvas{display:block;width:100%;height:100%;transition:filter .3s var(--ease-out)}.samurai:hover canvas,.samurai:focus-visible canvas{filter:drop-shadow(0 0 1px rgba(255,214,224,.85)) drop-shadow(0 0 6px rgba(240,166,181,.35))}.samurai:focus-visible{outline:1px dashed var(--pink);outline-offset:-8px}.samurai[aria-disabled=true]{cursor:default}.samurai[aria-disabled=true] canvas{filter:none}.samurai-hint{position:absolute;left:50%;bottom:calc(100% - 6px);transform:translate(-50%,4px);font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:var(--peach);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .3s var(--ease-out),transform .3s var(--ease-out)}.samurai:hover .samurai-hint,.samurai:focus-visible .samurai-hint{opacity:.85;transform:translate(-50%)}.samurai[aria-disabled=true] .samurai-hint{opacity:0}.scene-hint,.corner-note{position:absolute;margin:0;font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:#b9c4d6;pointer-events:none;transition:opacity .4s var(--ease-out)}.scene-hint{left:50%;bottom:5%;transform:translate(-50%);white-space:nowrap;opacity:.7}.hint-dot{display:inline-block;width:4px;height:4px;margin-right:10px;background:var(--pink);vertical-align:middle}.corner-note{left:30px;bottom:24px;letter-spacing:.12em;color:var(--ink-soft);opacity:.7}.corner-note span{font-family:var(--font-ja);letter-spacing:.08em}.corner-note i{font-style:normal;margin:0 6px;color:var(--pink)}[data-visible=false].scene-hint,[data-visible=false].corner-note{opacity:0}@media (max-width: 640px){.scene-hint{font-size:8px;letter-spacing:.12em;bottom:3.5%}.corner-note{display:none}}.void{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;background:radial-gradient(60% 22% at 50% 50%,#121a33 0%,transparent 70%),var(--void);opacity:0}.void[data-visible=true]{opacity:1}.void-center{position:absolute;transform:translate(-50%,-50%);width:min(420px,calc(100vw - 32px))}.paper{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none}.paper-top{filter:drop-shadow(0 10px 14px rgba(0,0,0,.55))}.paper-bottom{filter:drop-shadow(0 -10px 14px rgba(0,0,0,.55))}.paper-sheet{position:absolute;top:0;right:0;bottom:0;left:0;will-change:transform;transition:transform var(--t-open) var(--ease-cut),opacity var(--t-open) var(--ease-out)}.paper-sheet[data-closable]{pointer-events:auto;cursor:pointer}.paper-image{position:absolute;background-size:100% 100%;background-repeat:no-repeat}.paper-edge{position:absolute;top:0;right:0;bottom:0;left:0;overflow:visible}.paper-edge line{stroke:var(--paper);stroke-width:3;opacity:0;transition:opacity .2s linear}.cut[data-step=open]:not([data-stage=close]) .paper-edge line{opacity:.55}[data-stage=enter] .paper-sheet{transition:transform var(--t-enter) cubic-bezier(.7,0,.3,1)}.slash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:4;pointer-events:none;overflow:visible}.slash line{stroke:#fff6e8;stroke-width:2;filter:drop-shadow(0 0 3px rgba(255,214,224,.7));transition:stroke-dashoffset var(--t-slash) cubic-bezier(.5,0,.9,.6),opacity .26s linear}.cut[data-step=armed] .slash line{transition:none}.cut[data-step=open] .slash line{opacity:0}.cut[data-reduced=true][data-step=open]:not([data-stage=close]) .paper-sheet,.cut[data-reduced=true][data-stage=enter] .paper-sheet{opacity:0;transform:none}.auth{position:relative;padding:28px 24px 22px;animation:auth-in .42s var(--ease-out) both}@keyframes auth-in{0%{opacity:0;transform:translateY(6px)}}.auth-step{position:absolute;top:0;left:24px;font-size:9px;letter-spacing:.18em;color:#8794ac}.auth-row{display:flex;align-items:center;gap:12px}.auth-input{flex:1;min-width:0;height:40px;padding:0 2px;border:0;border-bottom:1px solid #7f8ba0;border-radius:0;background:transparent;color:var(--paper);font-size:14px;letter-spacing:.14em;outline:none;transition:border-color .25s var(--ease-out);animation:field-in var(--t-fieldSwap) var(--ease-out) both}@keyframes field-in{0%{opacity:0;transform:translate(10px)}}.auth-input::placeholder{color:#c5ccda80;text-transform:uppercase;font-size:11px;letter-spacing:.22em}.auth-input:focus{border-bottom-color:var(--pink)}.auth-input:focus-visible{outline:none}.auth-input[aria-invalid=true]{border-bottom-color:#e07a7a}.auth-input[readonly]{opacity:.6}.auth-go{border:0;background:none;padding:4px 8px;font-size:22px;color:var(--peach);cursor:pointer;transition:transform .2s var(--ease-out)}.auth-go:hover:not(:disabled){transform:translate(2px,-2px)}.auth-go:disabled{opacity:.5;cursor:default}.auth-message{margin:12px 0 0;min-height:1.6em;font-size:10px;letter-spacing:.1em;color:#7e8ba2}.auth-message[data-error=true]{color:#f2b3a8}.auth-back{border:0;background:none;padding:0;color:var(--pink);letter-spacing:inherit;cursor:pointer}.auth-back:hover{text-decoration:underline}.wiki{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2;display:grid;grid-template-columns:260px 1fr;background:radial-gradient(90% 50% at 70% 0%,rgba(58,47,95,.35),transparent 70%),var(--night);color:#dfe3ee;font-family:var(--font-sans);overflow:hidden}.wiki[data-entering=true]{animation:wiki-in var(--t-enter) var(--ease-out) both}@keyframes wiki-in{0%{opacity:0;transform:scale(.985)}}.wiki-side{display:flex;flex-direction:column;gap:22px;min-height:0;padding:28px 22px 20px;border-right:1px solid #1f2843;background:#080c1f8c;overflow-y:auto}.wiki-brand{display:flex;align-items:center;gap:10px;color:var(--paper);text-decoration:none;font-family:var(--font-mono);font-size:11px;letter-spacing:.24em;text-transform:uppercase}.blossom{width:24px;height:21px}.wiki-search input{width:100%;height:34px;padding:0 2px;border:0;border-bottom:1px solid #34405f;background:transparent;font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;outline:none}.wiki-search input::placeholder{color:var(--ink-dim);text-transform:uppercase;letter-spacing:.2em;font-size:10px}.wiki-search input:focus{border-bottom-color:var(--pink)}.wiki-nav{flex:1;display:flex;flex-direction:column;gap:20px}.wiki-nav h2{margin:0 0 8px;font-family:var(--font-mono);font-size:9px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--pink)}.wiki-nav ul{list-style:none;margin:0;padding:0;display:grid;gap:2px}.wiki-nav a{display:block;padding:6px 10px;margin:0 -10px;border-left:2px solid transparent;color:#b8c0d4;text-decoration:none;font-size:14px;line-height:1.35;transition:color .15s,background .15s}.wiki-nav a:hover{color:var(--paper);background:#f0a6b50f}.wiki-nav a[aria-current=page]{color:var(--paper);border-left-color:var(--pink);background:#f0a6b514}.wiki-nav small{display:block;margin-top:3px;color:var(--ink-dim);font-size:12px;line-height:1.4}.wiki-user{display:flex;justify-content:space-between;align-items:center;padding-top:14px;border-top:1px solid #1f2843;font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;color:var(--ink-soft)}.wiki-user button{border:0;background:none;padding:4px 0;color:var(--peach);letter-spacing:.16em;text-transform:uppercase;font-size:10px;cursor:pointer}.wiki-user button:hover{text-decoration:underline}.wiki-main{min-height:0;overflow-y:auto}.wiki-bar{position:sticky;top:0;display:flex;align-items:center;gap:16px;padding:22px clamp(20px,6vw,72px) 12px;background:linear-gradient(var(--night) 70%,transparent);font-family:var(--font-mono);font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-dim)}.wiki-menu-toggle{display:none;border:1px solid #34405f;background:none;padding:6px 10px;font-size:9px;letter-spacing:.2em;text-transform:uppercase;cursor:pointer}.wiki-article{max-width:68ch;padding:8px clamp(20px,6vw,72px) 96px;font-size:17px;line-height:1.7}.wiki-article h1{margin:12px 0 6px;font-family:var(--font-sans);font-weight:500;font-size:clamp(30px,4vw,42px);line-height:1.15;color:var(--paper);outline:none}.wiki-article h2{margin:36px 0 8px;font-size:21px;font-weight:600;color:var(--paper)}.wiki-article h3,.wiki-article h4{margin:28px 0 6px;font-size:17px;font-weight:600}.wiki-article p{margin:0 0 16px}.wiki-article ul{margin:0 0 16px;padding-left:1.1em}.wiki-article li{margin:4px 0}.wiki-article li::marker{color:var(--pink)}.wiki-article strong{color:var(--paper);font-weight:600}.wiki-article em{color:var(--peach)}.wiki-article a{color:var(--pink)}.wiki-article code{padding:1px 6px;border-radius:2px;background:#1a2240;font-family:var(--font-mono);font-size:.85em}.wiki-article blockquote{margin:24px 0;padding:2px 0 2px 16px;border-left:2px solid var(--pink-deep);color:var(--ink-soft);font-size:15px}.wiki-meta{margin:0 0 28px!important;font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-dim)}.wiki-error{color:#f2b3a8}@media (max-width: 820px){.wiki{grid-template-columns:1fr}.wiki-side{position:fixed;inset:0 auto 0 0;z-index:5;width:min(300px,86vw);background:#0b1022;transform:translate(-100%);transition:transform .28s var(--ease-out);visibility:hidden}.wiki-side[data-open=true]{transform:none;visibility:visible;box-shadow:0 0 40px #0009}.wiki-menu-toggle{display:inline-block}.wiki-article{font-size:16px}}@media (prefers-reduced-motion: reduce){.wiki-side{transition:none}.scene,.auth,.auth-input{animation-duration:1ms}}
