*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{min-height:100vh}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}table{border-collapse:collapse;border-spacing:0}:root{--green: #33ff00;--green-dim: #1a8c00;--green-bright: #66ff33;--green-glow: rgba(51, 255, 0, .4);--amber: #ffaa00;--bg: #0a0a0a;--bg-dark: #000000;--font-mono: "VT323", "Courier New", monospace;--text-glow: 0 0 5px var(--green-glow), 0 0 10px rgba(51, 255, 0, .2)}body{background:var(--bg-dark);color:var(--green);font-family:var(--font-mono);font-size:18px;line-height:1.5;overflow-x:hidden;height:100vh;display:flex;align-items:center;justify-content:center}#terminal{width:100%;max-width:960px;height:100vh;max-height:100vh;padding:1.5rem 2rem;display:flex;flex-direction:column;position:relative}::selection{background:var(--green);color:var(--bg-dark)}.feed-hidden{visibility:hidden;height:0;overflow:hidden;margin:0;padding:0;border:none}#header{display:flex;align-items:center;gap:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--green-dim);margin-bottom:1rem;flex-shrink:0}#logo-slot{flex-shrink:0}.site-logo{position:relative;display:inline-block}.site-logo__frame{width:4.5em;height:4.5em;border:3px double var(--green-bright);box-sizing:border-box}.site-logo__text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:var(--font-mono);font-size:1.1em;color:var(--green-bright);white-space:nowrap}#title-slot{flex:1;text-align:center;min-width:0}#site-name{font-size:1.6em;color:var(--green-bright);letter-spacing:.15em;line-height:1}#tagline{font-size:.9em;color:var(--green-dim);letter-spacing:.05em}#game-slot{flex-shrink:0}#feed{flex:1;overflow-x:hidden;overflow-y:auto;padding:.5rem 0}#footer{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding-top:.75rem;border-top:1px solid var(--green-dim);margin-top:auto;font-size:.85em;color:var(--green-dim)}.footer-info{white-space:nowrap}.footer-links{display:flex;gap:1.5rem}.footer-links a{color:var(--green);border-bottom:1px solid var(--green-dim);transition:border-color .2s,color .2s}.footer-links a:hover{color:var(--green-bright);border-color:var(--green-bright)}#skip-hint{position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);color:var(--green-dim);font-family:var(--font-mono);font-size:.8em;letter-spacing:.15em;animation:skip-fade 2s ease-in-out infinite;z-index:100}@keyframes skip-fade{0%,to{opacity:.3}50%{opacity:.7}}#crt-overlay{position:fixed;inset:0;pointer-events:none;z-index:9999;background:repeating-linear-gradient(to bottom,transparent 0px,transparent 2px,rgba(0,0,0,.12) 2px,rgba(0,0,0,.12) 4px)}#crt-overlay:after{content:"";position:absolute;inset:0;border-radius:18px;box-shadow:inset 0 0 40px 4px #ffffff14,inset 0 0 4px 2px #ffffff1f;border:1px solid rgba(255,255,255,.12)}#crt-overlay:before{content:"";position:absolute;left:0;right:0;height:4px;background:#33ff0014;box-shadow:0 0 15px 5px #33ff000d;animation:scanline 8s linear infinite}@keyframes scanline{0%{top:-4px}to{top:100%}}@keyframes crt-flicker{0%,to{opacity:1}92%{opacity:1}93%{opacity:.97}94%{opacity:1}96%{opacity:.985}97%{opacity:1}}@keyframes screen-flicker{0%,to{filter:brightness(1)}33.3%{filter:brightness(1)}33.4%{filter:brightness(1.8)}33.5%{filter:brightness(.6)}33.7%{filter:brightness(1)}66.6%{filter:brightness(1)}66.7%{filter:brightness(.5)}66.8%{filter:brightness(1.6)}66.9%{filter:brightness(1)}}#terminal{animation:crt-flicker 4s infinite,screen-flicker 12s infinite}#terminal *{text-shadow:var(--text-glow)}@media(prefers-reduced-motion:reduce){#terminal{animation:none!important}#terminal *{text-shadow:none}}.section-label{color:var(--green);font-size:1em;margin:1rem 0 .4rem;letter-spacing:.05em;padding-bottom:.3rem;border-bottom:1px solid var(--green-dim)}.project-name--scrambled{color:var(--green-dim);opacity:.6}.project-row{display:grid;grid-template-columns:1fr 1fr auto;gap:.5rem 1rem;align-items:center;padding:.3rem 0;border-bottom:1px solid rgba(51,255,0,.06);transition:background .1s}.project-row:hover{background:#33ff0008}.project-name{color:var(--green);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-desc{color:var(--green-dim);font-size:.9em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-desc--scrambled{color:var(--green-dim);opacity:.5;letter-spacing:.05em}.badge{display:inline-block;padding:.1rem .6rem;font-size:.8em;letter-spacing:.1em;border:1px solid;text-align:center;white-space:nowrap;text-decoration:none}.badge--active{color:var(--green);border-color:var(--green);cursor:pointer;transition:background .2s,box-shadow .2s}.badge--active:hover{background:#33ff0014;box-shadow:0 0 8px var(--green-glow)}.badge--locked,.badge--planned{color:var(--green-dim);border-color:var(--green-dim);cursor:default;opacity:.6}@keyframes glitch{0%{transform:translate(0)}20%{transform:translate(-2px,1px);filter:hue-rotate(90deg)}40%{transform:translate(2px,-1px);filter:hue-rotate(-90deg)}60%{transform:translate(-1px);filter:none}to{transform:translate(0);filter:none}}.project-row:hover{animation:glitch .15s ease-in-out}@media(prefers-reduced-motion:reduce){.project-row:hover,.project-desc--scrambled{animation:none}}#game-button{position:relative;display:inline-block;background:transparent;border:none;color:var(--green-bright);padding:0;margin:0;cursor:pointer;transition:color .15s}.game-button__frame{width:4.5em;height:4.5em;border:3px double var(--green-bright);box-sizing:border-box}.game-button__text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:var(--font-mono);font-size:1em;line-height:1.4;text-align:center;white-space:nowrap;animation:text-pulse 2s ease-in-out infinite}@keyframes text-pulse{0%,to{opacity:1}50%{opacity:.4}}@media(prefers-reduced-motion:reduce){.game-button__text{animation:none}}#game-button:hover{color:var(--green);text-shadow:var(--text-glow)}#game-button:active{color:var(--green-dim)}#game-button:disabled{cursor:default;opacity:.5;color:var(--green-dim)}@media(max-width:768px){body{font-size:16px}#terminal{padding:1rem 1.25rem}.project-row{grid-template-columns:1fr auto}.project-desc{display:none}}@media(max-width:520px){body{font-size:15px}#terminal{padding:.75rem}#site-name{font-size:1.25em}#header{gap:.5rem}.project-row{grid-template-columns:1fr auto;gap:.25rem .5rem}.project-desc{display:none}.project-name{font-size:.9em}#footer{flex-direction:column;align-items:flex-start;gap:.5rem}.footer-links{gap:1rem}}
