*{margin:0;padding:0;box-sizing:border-box;font-family:SF Pro,Helvetica Neue,sans-serif;outline:none}html{width:100%;height:100%;overflow:hidden;-webkit-text-size-adjust:none;text-size-adjust:none}body{width:100%;height:100%;overflow:hidden;background-color:#000;overscroll-behavior:none;-webkit-user-select:none;user-select:none;touch-action:none;-ms-content-zooming:none}canvas{display:block;width:100%;height:100%;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;touch-action:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.ui-button{width:44px;height:44px;background:#0003;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:50%;border:0;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background 1.5s ease-in-out,transform .2s ease;opacity:0;animation:fadeIn .5s ease .6s forwards}.ui-button svg{width:24px;height:24px;color:#fff;transition:color 1s ease-in-out}body.night-mode .ui-button{background:#ffffff1f}#audio-container{position:fixed;top:20px;left:20px;display:flex;align-items:center;gap:0;z-index:1001}#audio-toggle{flex-shrink:0;position:relative;z-index:2}#now-playing{height:36px;background:#1414144d;backdrop-filter:blur(1px);-webkit-backdrop-filter:blur(1px);border:0;border-radius:0 18px 18px 0;display:flex;align-items:center;justify-content:center;margin-left:-18px;padding-left:24px;padding-right:16px;overflow:hidden;opacity:0;transform:scaleX(0);transform-origin:left center;transition:transform .4s ease,opacity .4s ease,background 1s ease-in-out;will-change:transform,opacity}body.night-mode #now-playing{background:#ffffff26}#now-playing.visible{transform:scaleX(1);opacity:1}#now-playing span{font-size:14px;line-height:1;font-weight:400;color:#ffffffd9;white-space:nowrap}#night-mode-container{position:fixed;top:20px;right:20px;z-index:1001}#loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000;display:flex;align-items:center;justify-content:center;z-index:100;transition:opacity 1s ease}#loading-overlay.fade-out{opacity:0;pointer-events:none}#content-overlay{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;z-index:1000;pointer-events:none}#content-overlay.visible{pointer-events:auto}#content-overlay.hidden{visibility:hidden}#content-overlay.visible #content-paper{transform:scale(1);opacity:1}#content-paper{position:relative;width:min(90vw,480px);padding:40px;background:#28282826;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:32px;border:1px solid rgba(255,255,255,.4);transform:scale(.9);opacity:0;transition:transform .4s ease,opacity .4s ease}#content-overlay[data-content=music] #content-paper{width:min(90vw,600px)}#content-close{position:absolute;top:10px;right:12px;width:32px;height:32px;background:transparent;border:none;border-radius:50%;font-size:24px;color:#ffffffb3;cursor:pointer;transition:color .2s ease;line-height:1}#content-close:hover,.overlay-content{color:#fff}#about-content{user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text}#about-content a{font-weight:400;color:#fff;text-decoration:dotted underline}#about-content a:hover{font-weight:400;color:#b8f839;text-decoration:none}body.night-mode #about-content a:hover{color:#a8d5ff}#about-content h1{font-size:28px;font-weight:500;margin-bottom:18px;color:#fff}#about-content p{font-size:20px;font-weight:300;line-height:1.4;margin-bottom:18px;color:#ffffffe6}#resume-link{display:inline-block;margin-top:12px;padding:12px 24px;background:#fff3;color:#fff;text-decoration:none!important;font-size:16px;font-weight:400;border-radius:32px;border:1px solid rgba(255,255,255,.3);transition:background .2s ease}#resume-link:hover{background:#ffffff4d}#music-content iframe{border-radius:12px}@media (max-width: 768px){#content-paper{width:min(92vw,420px);padding:32px 24px}#content-overlay[data-content=music] #content-paper{width:min(92vw,520px)}#about-content h1{font-size:24px}#about-content p{font-size:18px}}@media (max-width: 480px){#content-paper{width:92vw;padding:24px 20px}#content-overlay[data-content=music] #content-paper{padding:20px 16px}#content-overlay[data-content=music] #content-close{display:none}#about-content h1{font-size:26px}#about-content p{font-size:19px}#about-content strong{font-weight:500}#resume-link{display:block;text-align:center;padding:14px 20px}}@media (hover: hover){.ui-button{will-change:transform;backface-visibility:hidden;-webkit-backface-visibility:hidden;transform:translateZ(0)}.ui-button:hover{transform:scale(1.1) translateZ(0)}}
