@font-face{font-family:MS PGothic Local;src:url(Miku.22960d0a.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}:root{--text-color:#fff;--text-accent-color:darksalmon;--link-color:darkorange;--bg-1:#f27121;--bg-2:#e94057;--bg-3:#8a2387;--bg-1-social:#f3a183;--bg-2-social:#ec6f66;--username-color:cadetblue;--terminal-bg:#380428e6;--terminal-header-bg:#bbb;--scroll-thumb:#b4b4b480;--dock-h:64px;--dock-gap:10px;--aa-font-stack:"MS PGothic","MS Gothic","MeiryoKe_PGothic","IPAMonaGothic","Mona","Osaka-Mono","Hiragino Kaku Gothic ProN","Yu Gothic UI","Yu Gothic","Noto Sans CJK JP","Noto Sans JP",monospace}html,body{overscroll-behavior:none}body{overflow:hidden}body.dark-mode{--text-accent-color:#ffca85;--link-color:burlywood;--bg-1:#211f20;--bg-2:#292d34;--bg-3:#213030;--bg-1-social:#414141;--bg-2-social:#485461;--username-color:#858585;--terminal-bg:#000000e6;--terminal-header-bg:#585252;--scroll-thumb:#ffffff4d}body.dark-mode.firework{--terminal-bg:#00000026}body{box-sizing:border-box;background:var(--bg-3);background:-webkit-linear-gradient(to right,var(--bg-1),var(--bg-2),var(--bg-3));background:linear-gradient(to right,var(--bg-1),var(--bg-2),var(--bg-3));flex-direction:column;justify-content:space-around;align-items:center;height:100vh;margin:0;display:flex}ul{margin:0}.terminal{resize:both;will-change:transform;flex-direction:column;width:min(900px,90vw);height:min(650px,90vh);transition:transform .35s cubic-bezier(.22,.61,.36,1),opacity .25s;display:flex;position:absolute;overflow:hidden}.terminal::-webkit-resizer{background:0 0}.terminal .terminal__header{box-sizing:border-box;background-color:var(--terminal-header-bg);cursor:move;border-top-left-radius:5px;border-top-right-radius:5px;flex:0 0 25px;justify-content:flex-start;align-items:center;width:100%;height:25px;padding:0 8px;display:flex}.terminal .terminal__header .fake-button{cursor:pointer;border:1px solid #000;border-radius:50%;width:10px;height:10px;margin-right:5px;display:inline-block}.terminal .terminal__header .fake-button.fake-close{background-color:#ff3b47;border-color:#9d252b}.terminal .terminal__header .fake-button.fake-minimize{background-color:#ffc100;border-color:#9d802c}.terminal .terminal__header .fake-button.fake-zoom{background-color:#00d742;border-color:#049931}.terminal .terminal__body{background:var(--terminal-bg);color:var(--text-color);-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y;border-bottom-right-radius:5px;border-bottom-left-radius:5px;flex:auto;min-height:0;padding:8px;font-family:Ubuntu Mono,monospace;overflow:auto;box-shadow:0 12px 28px #0003,0 2px 4px #0000001a,inset 0 0 0 1px #ffffff0d}.terminal .terminal__body::-webkit-scrollbar{width:5px;height:5px}.terminal .terminal__body::-webkit-scrollbar-track{background:0 0}.terminal .terminal__body::-webkit-scrollbar-thumb{background-color:var(--scroll-thumb);border-radius:4px}.terminal .terminal__body::-webkit-scrollbar-thumb:hover{background-color:#ffffff80}.terminal .terminal__body{scrollbar-width:thin;scrollbar-color:var(--scroll-thumb)transparent}.terminal .terminal__body code{color:var(--text-accent-color);cursor:pointer;font-size:14px}.terminal .terminal__body .terminal__banner{color:var(--text-color);flex-direction:column;justify-content:center;display:flex}.terminal .terminal__body .terminal__banner .terminal__author{text-align:right}.terminal .terminal__body .terminal__line{margin-bottom:8px}.terminal .terminal__body .terminal__line:before{content:"guest ~ % ";color:var(--username-color)}.terminal .terminal__body .terminal__line input[type=text]{color:var(--text-color);background:0 0;border:none;outline:none;width:calc(100% - 150px);font-family:Ubuntu Mono,monospace;font-size:15px}.terminal .terminal__body .terminal__response{margin:8px 0 16px}.terminal .terminal__body .terminal__response table{border:1px dashed;width:100%;padding:4px}.terminal .terminal__body .terminal__response table th,.terminal .terminal__body .terminal__response table td{text-align:center}.terminal .terminal__body .terminal__response table a{color:#ff8c00;text-decoration:none}.terminal .terminal__body .terminal__response table thead th{color:#5f9ea0;border-bottom:1px solid #fff;padding-bottom:4px;font-weight:400}.terminal .terminal__body .terminal__response table tbody td{padding:4px}.terminal .terminal__body .terminal__response table tbody tr:not(:last-child) td{border-bottom:1px solid #fff}#banner-github{position:absolute;top:0;right:0}@media (width<=880px){.terminal .terminal__body .terminal__banner pre{font-size:10px}}@media (width<=640px){body{flex-direction:column;justify-content:flex-start;align-items:stretch;overflow:hidden}canvas{z-index:-1;position:fixed;inset:0}.terminal{top:max(8px,env(safe-area-inset-top));bottom:calc(var(--dock-h) + var(--dock-gap) + env(safe-area-inset-bottom) + 8px);box-sizing:border-box;resize:none;z-index:999;border-radius:10px;flex-direction:column;width:auto;height:auto;margin:0;display:flex;position:fixed;left:8px;right:8px;overflow:hidden}.terminal .terminal__body{-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y;overscroll-behavior:contain;flex:auto;min-height:0;overflow:auto}.terminal .terminal__body .terminal__banner pre{font-size:5px}.terminal .terminal__body .terminal__header{cursor:default;touch-action:none}#banner-github img{width:100px;height:100px}#version{font-size:13px;top:38px;right:38px}}.terminal.fullscreen{z-index:9999!important;border-radius:0!important;width:100vw!important;height:100vh!important;margin:0!important;position:fixed!important;inset:0!important;transform:none!important}body.fs-lock{overflow:hidden}.terminal.fullscreen{padding-top:env(safe-area-inset-top);padding-right:env(safe-area-inset-right);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left)}body.is-resizing{user-select:none}.terminal.fullscreen .resizer{display:none}.terminal{position:absolute}.terminal .resizer{z-index:5;background:0 0;position:absolute}.terminal .resizer.top,.terminal .resizer.bottom{height:2px;left:0;right:0}.terminal .resizer.top{cursor:ns-resize;top:0}.terminal .resizer.bottom{cursor:ns-resize;bottom:0}.terminal .resizer.left,.terminal .resizer.right{width:6px;top:0;bottom:0}.terminal .resizer.left{cursor:ew-resize;left:0}.terminal .resizer.right{cursor:ew-resize;right:0}.terminal .resizer.top-left,.terminal .resizer.top-right,.terminal .resizer.bottom-left,.terminal .resizer.bottom-right{width:12px;height:12px}.terminal .resizer.top-left{cursor:nwse-resize;top:0;left:0}.terminal .resizer.top-right{cursor:nesw-resize;top:0;right:0}.terminal .resizer.bottom-left{cursor:nesw-resize;bottom:0;left:0}.terminal .resizer.bottom-right{cursor:nwse-resize;bottom:0;right:0}@media (width<=640px){.terminal .resizer{display:none}}.map-embed{width:100%;max-width:500px;height:300px}.dock{left:50%;bottom:max(8px,env(safe-area-inset-bottom));z-index:2000;backdrop-filter:blur(8px);background:#0003;border-radius:16px;align-items:center;gap:12px;padding:8px 12px;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 6px 24px #0003}.dock .socials{gap:16px;margin-left:auto;margin-right:auto;display:flex;position:static;bottom:auto;right:auto}.dock .socials a{background:var(--bg-2-social);background:-webkit-linear-gradient(to left,var(--bg-1-social),var(--bg-2-social));background:linear-gradient(to left,var(--bg-1-social),var(--bg-2-social));border-radius:50%;justify-content:center;align-items:center;width:3.2em;height:3.2em;text-decoration:none;display:flex;box-shadow:0 2px 8px #63636333}.dock .socials a:hover{background:var(--bg-2-social);background:-webkit-linear-gradient(to right,var(--bg-1-social),var(--bg-2-social));background:linear-gradient(to right,var(--bg-1-social),var(--bg-2-social));box-shadow:0 2px 8px #63636333}.dock .socials a i{color:#fff;font-size:1.6em;line-height:1}body.dark-mode .dock{background:#ffffff14}.dock-item{cursor:pointer;aspect-ratio:1;background:linear-gradient(#ffffff26,#0000001a);border:0;border-radius:12px;outline:0;flex:none;justify-content:center;align-items:center;width:48px;height:48px;text-decoration:none;transition:transform .15s,box-shadow .15s,background .15s;display:inline-flex}.dock-item i{color:#fff;font-size:22px;line-height:1}.dock-item:hover{transform:translateY(-2px)scale(1.05);box-shadow:0 8px 22px #00000040}.dock-app.dock-app--active{outline:2px solid #ffffff59;box-shadow:0 8px 22px #00000059}.ascii-art{letter-spacing:0;white-space:pre;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:MS PGothic Local,MS PGothic,monospace;font-size:12px;line-height:1}