@font-face{font-family:Elms Sans;src:url(/assets/font/ElmsSans-VariableFont_wght.woff2) format("woff2-variations"),url(/assets/font/ElmsSans-VariableFont_wght.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Elms Sans;src:url(/assets/font/ElmsSans-Italic-VariableFont_wght.woff2) format("woff2-variations"),url(/assets/font/ElmsSans-Italic-VariableFont_wght.woff2) format("woff2");font-weight:100 900;font-style:italic;font-display:swap}:root{color-scheme:dark;--bg-h: 0;--bg-s: 0%;--bg-l: .78%;--primary-h: 200;--primary-s: 100%;--primary-l: 55%;--error-h: 354;--error-s: 95%;--error-l: 60%;--bg-color: hsl(var(--bg-h), var(--bg-s), var(--bg-l));--bg-rgb: 2, 2, 2;--primary-color: hsl(var(--primary-h), var(--primary-s), var(--primary-l));--primary-rgb: 26, 178, 255;--color-error: hsl(var(--error-h), var(--error-s), var(--error-l));--color-error-rgb: 253, 53, 70;--text-primary: hsl(210, 25%, 98%);--text-secondary: hsl(215, 16%, 72%);--text-tertiary: hsl(215, 12%, 52%)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}::selection{background:hsla(var(--primary-h),var(--primary-s),var(--primary-l),.25);color:var(--text-primary)}html{width:100%;min-height:100vh;background-color:var(--bg-color);-webkit-text-size-adjust:100%;text-size-adjust:100%;overscroll-behavior:none}body{width:100%;min-height:100vh;font-family:Elms Sans,Inter,Segoe UI,Roboto,-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif;color:var(--text-primary);overflow-x:hidden;overflow-y:auto;overscroll-behavior:none}#root{width:100%;min-height:100vh;display:flex;flex-direction:column;background-color:transparent}.background-container{position:fixed;top:0;left:0;width:100vw;height:100vh;height:100dvh;z-index:0;pointer-events:none;background-color:var(--bg-color)}.background-image{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,rgba(var(--bg-rgb),0),rgba(var(--bg-rgb),.2) 60%,rgba(var(--bg-rgb),.92))}.app-container{display:flex;flex-direction:column;align-items:center;width:100%;flex:1;position:relative;z-index:1;padding:calc(60px + env(safe-area-inset-top,0px)) env(safe-area-inset-right,0px) 0 env(safe-area-inset-left,0px)}.content{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;width:100%}.text-container{display:inline-block}.char{display:inline-block;white-space:pre;backface-visibility:hidden;-webkit-backface-visibility:hidden;transform:translateZ(0)}.site-header{position:fixed;top:32px;left:40px;z-index:10;pointer-events:none}.header-logo{font-family:Elms Sans,sans-serif;font-size:1.375rem;font-weight:700;letter-spacing:2px;color:var(--text-primary);text-transform:uppercase;opacity:0;transform:translateY(-4px);transition:opacity 2.2s cubic-bezier(.16,1,.3,1),transform 2.2s cubic-bezier(.16,1,.3,1)}.main-title{font-family:Elms Sans,sans-serif;font-size:clamp(2.4rem,8vw,7rem);font-weight:900;color:var(--text-primary);margin:0;letter-spacing:4px;text-align:center;text-transform:uppercase;transition:opacity 2.2s cubic-bezier(.16,1,.3,1)}@media (min-width: 768px){.header-logo.is-visible{opacity:1;transform:translateY(0);pointer-events:auto}.main-title.is-faded{opacity:0;pointer-events:none}}@media (max-width: 767px){.site-header{display:none}.main-title.is-faded{opacity:1}}.dive-title{perspective:800px}.error-title{font-size:clamp(4rem,15vw,8rem);color:var(--color-error);text-shadow:0 0 20px hsla(var(--error-h),var(--error-s),var(--error-l),.4),0 0 40px hsla(var(--error-h),var(--error-s),var(--error-l),.2);letter-spacing:4px}.error-subtitle{font-size:clamp(.9rem,2.5vw,1.2rem);letter-spacing:4px;color:var(--text-secondary);margin-top:15px;text-align:center}.btn-container{margin-top:40px;display:flex;justify-content:center}.action-btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 36px;font-size:14px;color:var(--text-primary);background:hsla(var(--primary-h),var(--primary-s),var(--primary-l),.12);border:1px solid hsla(var(--primary-h),var(--primary-s),var(--primary-l),.4);border-radius:50px;text-decoration:none;font-weight:600;letter-spacing:2px;transition:color .3s cubic-bezier(.16,1,.3,1),background-color .3s cubic-bezier(.16,1,.3,1),border-color .3s cubic-bezier(.16,1,.3,1),transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s cubic-bezier(.16,1,.3,1);box-shadow:0 0 20px hsla(var(--primary-h),var(--primary-s),var(--primary-l),.15);-webkit-user-select:none;user-select:none;outline:none;will-change:transform,box-shadow}.action-btn:focus-visible{box-shadow:0 0 0 2px var(--bg-color),0 0 0 4px var(--primary-color)}@media (hover: hover) and (pointer: fine){.action-btn:hover{background:hsla(var(--primary-h),var(--primary-s),var(--primary-l),.25);border-color:hsl(var(--primary-h),var(--primary-s),calc(var(--primary-l) + 5%));transform:translateY(-2px);box-shadow:0 0 30px hsla(var(--primary-h),var(--primary-s),var(--primary-l),.4)}}.action-btn:active{transform:scale(.96) translateY(-1px);background:hsla(var(--primary-h),var(--primary-s),var(--primary-l),.2);box-shadow:0 0 15px hsla(var(--primary-h),var(--primary-s),var(--primary-l),.3)}.footer-container{display:flex;justify-content:center;align-items:center;margin-top:auto;padding:16px 0 calc(24px + env(safe-area-inset-bottom,0px)) 0;width:100%;z-index:10;white-space:nowrap;position:relative}.copyright{font-size:11px;color:var(--text-tertiary);letter-spacing:1px}.copyright a{color:inherit;text-decoration:none;transition:color .3s ease,opacity .2s ease;padding:8px;margin:-8px;display:inline-block;outline:none}.copyright a:focus-visible{color:var(--primary-color)}@media (hover: hover) and (pointer: fine){.copyright a:hover{color:var(--primary-color)}}.copyright a:active{opacity:.7}@media (max-height: 450px) and (orientation: landscape){html,body{height:auto;min-height:100vh;overflow-y:auto;overflow-x:hidden}.app-container{padding-top:calc(40px + env(safe-area-inset-top,0px))}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms;animation-iteration-count:1;transition-duration:.01ms}}
