.homepage{background-color:var(--clr-background);min-height:100vh}.about-section{padding:1.5rem 0}.about-section h1{font-size:1.3rem;color:var(--clr-accent);text-shadow:0 0 1rem var(--clr-accent)}.about-section p{font-size:1.3rem;color:var(--clr-light);text-shadow:0 0 1rem #b5e5ec;margin:0}@media(min-width:939px){.about-section h1{font-size:2rem}.about-section p{font-size:1.5rem}}.tech-stack-container{display:flex;flex-wrap:wrap;padding-bottom:2rem;max-width:70ch}#tech-stack-container{scroll-margin-top:50vh}.tech-stack-box{flex:1 1 33.333%;display:flex;flex-direction:column;align-items:center;margin-bottom:1rem}.tech-stack-box p{display:flex;align-items:center;justify-content:center;text-align:center;margin:0;width:15ch;height:2rem;margin-bottom:.2rem}.tech-stack-box img{height:3rem;object-fit:contain}@media(min-width:939px){.tech-stack-container{max-width:70%}.tech-stack-box{flex:1 1 25%}}.recent-projects{width:100%}.recent-projects h2{margin:0;margin-bottom:1rem;font-size:2rem;color:var(--clr-light)}@media(min-width:939px){.recent-projects h2{font-size:3rem}}.project-list-container{display:flex;justify-content:center;flex-wrap:wrap}.project-list-box{width:55ch;height:15rem;font-size:1rem;margin:10px}.project-list-box img{border:1px solid var(--clr-light);border-radius:5%;width:100%;height:100%;box-shadow:0 0 .3rem #c8c8c8;object-fit:contain}.project-list-box canvas{border:1px solid var(--clr-light);border-radius:5%;width:100%;height:100%;box-shadow:0 0 .3rem #c8c8c8;object-fit:contain;overflow:hidden}.project-list-box h1{font-size:1.5rem;transform:translate(1rem,.5rem);position:absolute;color:var(--clr-light);width:30ch}.project-list-box p{font-size:1rem;transform:translate(1.5rem,2.5rem);position:absolute;color:var(--clr-light);width:40ch}.homepage-footer{height:5rem}@font-face{font-family:VT323;src:url(/VT323.ttf) format("truetype");font-weight:400;font-style:normal}:root{--clr-dark: #1A314F;--clr-light: #90E5F2;--clr-accent: #E8842E;--clr-highlight: #285a4f;--clr-muted: #0c1724;--clr-error: #FF6B6B;--clr-background: radial-gradient(#182F4C, #0b111a 120%);--txt-shadow: 0 0 .5rem #C8C8C8}body{background:var(--clr-background);height:100dvh;margin:0;color:var(--clr-light);font:1rem VT323,monospace;fill:var(--clr-light);background-attachment:fixed;background:none}body:before{content:"";position:fixed;inset:-12vh 0;z-index:-1;pointer-events:none;background:var(--clr-background);background-repeat:no-repeat;background-position:center;background-size:cover}.scan-lines:after{content:"";position:fixed;top:0;left:0;height:100vh;width:100vw;background:repeating-linear-gradient(0deg,rgba(0,0,0,.15),rgba(0,0,0,.15) 1px,transparent 1px,transparent 2px);pointer-events:none;background-attachment:fixed}.text-glow{text-shadow:var(--txt-shadow)}.container{display:flex;flex-direction:column;align-items:center;width:90%;margin-left:auto;margin-right:auto;max-width:70ch}@media(min-width:939px){.container{max-width:1000px}}.highlight{background-color:var(--clr-highlight)}.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}button{cursor:pointer}.menu{padding-top:8rem;height:100vh;position:fixed;display:flex;flex-direction:column;align-items:center;top:0;left:0;right:0;background:var(--clr-background);transform:translateY(-100%);transition:transform .8s ease;z-index:100;background-color:var(--clr-background);border-bottom:1px solid var(--clr-light)}.menu-option{display:flex;justify-content:center;width:100%;align-items:center}.menu a{-webkit-user-select:none;user-select:none;outline:none;-webkit-tap-highlight-color:transparent;margin:.7rem 0;align-items:center;font-size:2.5em;color:var(--clr-light);text-decoration:none}.menu.open{transform:translateY(0)}.header{top:0;left:0;position:fixed;padding:1rem 0;display:block;z-index:101;width:100%;background-color:var(--clr-muted);opacity:.9;border-bottom:1px solid var(--clr-dark)}.header-place-holder{height:6.5rem}.header-profile{display:flex;align-items:center;font-size:1.3em}.header-profile img{width:4rem;border-radius:8%;border:1px #F2EDCF solid;border-color:var(--clr-light);margin-right:.5rem;box-shadow:var(--txt-shadow)}.blinking-cursor{width:.6ch;height:.8em;background-color:var(--clr-light);margin-left:.2ch;animation:blink 1s infinite;box-shadow:var(--txt-shadow)}.hamburger-menu{width:4rem;height:4rem;display:flex;align-items:center;justify-content:center;border:1px solid var(--clr-light);border-radius:50%;color:var(--clr-light);box-shadow:0 0 .3rem #c8c8c8}.desktop-menu{display:none;white-space:nowrap}.desktop-menu a{font-size:1.5rem;padding:.3rem 1rem;text-decoration:none;color:inherit}@media(min-width:939px){.desktop-menu{display:flex}.hamburger-menu,.menu{display:none}}.hamburger-menu svg{width:2.5rem;height:2.5rem;filter:drop-shadow(var(--txt-shadow))}.header-inner{display:flex;flex-direction:row;justify-content:space-between;align-items:center}@media(prefers-reduced-motion:reduce){.menu{transition:none}}@keyframes blink{0%,50%{opacity:1}50.01%,to{opacity:0}}.shaders{height:100vh}.shaders-container{display:flex;flex-direction:column;padding-bottom:1rem;justify-content:space-between}.code-mirror-container{display:flex;flex-direction:column;text-shadow:none;width:100%;font-size:.7rem;padding-top:5px}.glcanvas-container{width:100%}.code-mirror-container button{width:100%;height:3rem;margin:5px 0;border-radius:5px;border:none;background-color:var(--clr-highlight);color:var(--clr-light);text-shadow:var(--txt-shadow);font-size:1.5rem}.shader-error{color:var(--clr-error)}@media(min-width:939px){.shaders-container{flex-direction:row}.code-mirror-container{width:60%;padding-left:5px}.glcanvas-container{width:40%}}.nutrition-page a{color:var(--clr-light)}.nutrition-error{color:var(--clr-error)}.status-errors-page{background:var(--clr-background);min-height:100vh}.status-errors-page .container{max-width:95%}@media(min-width:939px){.status-errors-page .container{max-width:1100px}}.status-page-title{font-size:2rem;color:var(--clr-accent);text-shadow:0 0 .6rem var(--clr-accent);text-align:center;margin:1.5rem 0 2rem;letter-spacing:.1ch}@media(min-width:939px){.status-page-title{font-size:3rem}}.status-category{margin-bottom:2.5rem;width:100%}.status-category-header{font-size:1.4rem;padding:.3rem .6rem;margin-bottom:0;letter-spacing:.05ch}@media(min-width:939px){.status-category-header{font-size:1.8rem}}.status-category-header.cat-1xx{color:var(--clr-light);background:#90e5f212;border-left:3px solid var(--clr-light)}.status-category-header.cat-2xx{color:#4ade80;background:#4ade8012;border-left:3px solid #4ade80}.status-category-header.cat-3xx{color:var(--clr-accent);background:#e8842e12;border-left:3px solid var(--clr-accent)}.status-category-header.cat-4xx{color:var(--clr-error);background:#ff6b6b12;border-left:3px solid var(--clr-error)}.status-category-header.cat-5xx{color:#f24;background:#ff224412;border-left:3px solid #ff2244}.status-table{width:100%;border-collapse:collapse;font-size:1rem}@media(min-width:939px){.status-table{font-size:1.35rem}}.status-table th,.status-table td{padding:.35rem .6rem;text-align:left;border:1px solid}.status-table thead th{letter-spacing:.05ch}.status-table .col-code{width:5ch;text-align:center;white-space:nowrap;font-size:1.2rem}.status-table .col-name{width:22ch;white-space:nowrap;color:#e8f8fc}.status-table .col-desc{color:#c8dde2}.status-table tbody{background:#0e1e2e;color:#e8f8fc}.status-table tbody td{color:inherit}.status-table.cat-1xx th,.status-table.cat-1xx td{border-color:#90e5f240}.status-table.cat-1xx thead th{color:var(--clr-light);background:#90e5f214}.status-table.cat-1xx .col-code{color:var(--clr-light)}.status-table.cat-2xx th,.status-table.cat-2xx td{border-color:#4ade8040}.status-table.cat-2xx thead th{color:#4ade80;background:#4ade8014}.status-table.cat-2xx .col-code{color:#4ade80}.status-table.cat-3xx th,.status-table.cat-3xx td{border-color:#e8842e40}.status-table.cat-3xx thead th{color:var(--clr-accent);background:#e8842e14}.status-table.cat-3xx .col-code{color:var(--clr-accent)}.status-table.cat-4xx th,.status-table.cat-4xx td{border-color:#ff6b6b40}.status-table.cat-4xx thead th{color:var(--clr-error);background:#ff6b6b14}.status-table.cat-4xx .col-code{color:var(--clr-error)}.status-table.cat-5xx th,.status-table.cat-5xx td{border-color:#ff224440}.status-table.cat-5xx thead th{color:#f24;background:#ff224414}.status-table.cat-5xx .col-code{color:#f24}.status-table tbody tr:hover{background:#162538}@media(max-width:938px){.status-table .col-code{width:10%}.status-table .col-name{width:28%;white-space:normal}.status-table .col-desc{width:62%}}
