:root{--bg-color:#121212;--text-color:#eaeaea;--accent-color:#e61919;--font-macro:"Inter", sans-serif;--font-micro:"JetBrains Mono", monospace;--border-width:1px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{background-color:var(--bg-color);color:var(--text-color);font-family:var(--font-micro);letter-spacing:.05em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px;line-height:1.4}::selection{background-color:var(--accent-color);color:var(--text-color)}.telemetry-grid{gap:var(--border-width);background-color:var(--text-color);border:var(--border-width) solid var(--text-color);max-width:1400px;margin:2rem auto;display:grid}.compartment{background-color:var(--bg-color);padding:1.5rem;position:relative}.macro-text{font-family:var(--font-macro);text-transform:uppercase;letter-spacing:-.04em;font-size:clamp(3rem,6vw,8rem);font-weight:900;line-height:.9}.micro-text{font-family:var(--font-micro);text-transform:uppercase;letter-spacing:.1em;font-size:.8rem}body:after{content:" ";z-index:9999;pointer-events:none;background:linear-gradient(#12101000 50%,#00000040 50%) 0 0/100% 4px;display:block;position:fixed;inset:0}.accent{color:var(--accent-color)}.btn{color:var(--text-color);border:1px solid var(--text-color);font-family:var(--font-micro);text-transform:uppercase;cursor:pointer;background:0 0;padding:.5rem 1rem;text-decoration:none;transition:all .1s;display:inline-block}.btn:hover{background:var(--text-color);color:var(--bg-color)}.btn.primary{border-color:var(--accent-color);color:var(--accent-color)}.btn.primary:hover{background:var(--accent-color);color:var(--bg-color)}.decorator{opacity:.5;-webkit-user-select:none;user-select:none}ul.skills-list{background-color:var(--text-color);border:1px solid var(--text-color);grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1px;margin-top:1rem;list-style:none;display:grid}ul.skills-list li{background-color:var(--bg-color);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:1.5rem 1rem;transition:all .1s;display:flex}ul.skills-list li:hover{background-color:var(--text-color);color:var(--bg-color)}ul.skills-list li.processing-cell{background-color:var(--bg-color)}ul.skills-list li.processing-cell:hover{background-color:var(--bg-color);color:var(--text-color)}ul.skills-list li svg{fill:currentColor;font-size:2.5rem}hr.industrial-hr{border:none;border-top:4px solid var(--accent-color);margin:2rem 0}.image-container{border:1px solid var(--text-color);background-color:var(--bg-color);margin-bottom:2rem;position:relative;overflow:hidden}.dithered-image{filter:grayscale()contrast()brightness(1.8);mix-blend-mode:hard-light;width:100%;display:block}.dithered-image-webpage{filter:grayscale(0)contrast()brightness();mix-blend-mode:hard-light;width:100%;display:block}.image-container:after{content:"";pointer-events:none;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#12121280 2px 4px);width:100%;height:100%;position:absolute;top:0;left:0}@keyframes glitch-anim{0%{clip-path:inset(10% 0 85%);transform:translate(-2px,2px)}20%{clip-path:inset(80% 0 5%);transform:translate(2px,-2px)}40%{clip-path:inset(30% 0 45%);transform:translate(-2px,-2px)}60%{clip-path:inset(50% 0 30%);transform:translate(2px,2px)}80%{clip-path:inset(5% 0 80%);transform:translate(-2px,2px)}to{clip-path:inset(20% 0 60%);transform:translate(0)}}.glitch{display:inline-block;position:relative}.glitch:before,.glitch:after{content:attr(data-text);background:var(--bg-color);opacity:.8;width:100%;height:100%;position:absolute;top:0;left:0}.glitch:before{text-shadow:-2px 0 var(--accent-color);clip-path:inset(0);animation:3s linear infinite alternate-reverse glitch-anim;left:2px}.glitch:after{text-shadow:2px 0 #4af626;clip-path:inset(0);animation:2.5s linear infinite alternate-reverse glitch-anim;left:-2px}table.mission-log{border-collapse:collapse;width:100%;margin-top:1rem}table.mission-log th,table.mission-log td{border:1px solid var(--text-color);text-align:left;padding:.75rem}table.mission-log th{background-color:var(--text-color);color:var(--bg-color);text-transform:uppercase}table.mission-log tr:hover td{background-color:var(--text-color);color:var(--bg-color)}table.mission-log tr:hover td .accent{color:var(--bg-color);font-weight:700}.telemetry-chart{border-bottom:1px solid var(--text-color);align-items:flex-end;gap:4px;height:60px;margin-top:1rem;padding-bottom:4px;display:flex}.telemetry-bar{background-color:var(--accent-color);flex:1;transition:height .5s ease-out}.terminal-container{border:1px solid var(--text-color);flex-direction:column;height:200px;margin-top:2rem;padding:1rem;display:flex;overflow-y:auto}.terminal-input{color:#4af626;font-family:var(--font-micro);text-transform:uppercase;background:0 0;border:none;outline:none;width:100%;margin-top:.5rem;font-size:.8rem}.modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:10000;background:#121212e6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg-color);border:1px solid var(--text-color);width:90%;max-width:600px;max-height:90vh;padding:2rem;position:relative;overflow-y:auto}.modal-close{border:1px solid var(--text-color);color:var(--text-color);cursor:pointer;width:30px;height:30px;font-family:var(--font-micro);z-index:2;background:0 0;font-size:1rem;position:absolute;top:1rem;right:1rem}.modal-close:hover{background:var(--accent-color);color:var(--bg-color);border-color:var(--accent-color)}.project-tags{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.project-tag{background:var(--text-color);color:var(--bg-color);padding:.2rem .5rem;font-size:.7rem}.pagination-controls{justify-content:space-between;align-items:center;margin-top:1rem;display:flex}@media (width<=992px){.telemetry-grid{grid-template-columns:1fr;margin:1rem}.macro-text{font-size:clamp(2.5rem,10vw,4rem)}ul.skills-list{grid-template-columns:repeat(auto-fill,minmax(110px,1fr))}.compartment{padding:1rem}table.mission-log th,table.mission-log td{padding:.5rem;font-size:.75rem}}@media (width>=993px){.telemetry-grid{grid-template-columns:1fr 350px}}
