:root{--bg-normal: #ffffff;--text-normal: #1f2937;--border-normal: #e5e7eb;--bg-glitch: #000000;--text-glitch: #00ff00;--text-alert: #ff003c}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,sans-serif;background-color:var(--bg-normal);color:var(--text-normal);transition:background-color .1s;overflow-x:hidden}body.override-mode{background-color:var(--bg-glitch);color:var(--text-glitch);font-family:Share Tech Mono,monospace}.chat-container{display:flex;flex-direction:column;height:100vh;max-width:800px;margin:0 auto}.chat-header{padding:1rem;border-bottom:1px solid var(--border-normal);display:flex;align-items:center;font-weight:500;background:#fff;z-index:10}.chat-messages{flex:1;padding:2rem;display:flex;flex-direction:column;gap:1.5rem;overflow-y:auto}.message-bubble{padding:1rem;border-radius:8px;max-width:80%;line-height:1.5}.message-ai{background:#f3f4f6;align-self:flex-start}.chat-input{padding:1.5rem;border-top:1px solid var(--border-normal);background:#fff}.chat-input input{width:100%;padding:1rem;border:1px solid var(--border-normal);border-radius:8px;font-size:1rem;outline:none}.chat-input input:focus{border-color:#3b82f6}.override-container{min-height:100vh;padding:2rem;position:relative}.scanline{position:fixed;top:0;left:0;width:100vw;height:100vh;background:linear-gradient(#12101000 50%,#00000040 50%),linear-gradient(90deg,#ff00000f,#00ff0005,#0000ff0f);background-size:100% 2px,3px 100%;pointer-events:none;z-index:100}.noise{position:fixed;top:0;left:0;width:100vw;height:100vh;background-image:url('data:image/svg+xml;utf8,%3Csvg viewBox="0 0 200 200" xmlns="http://www.w3.org/2000/svg"%3E%3Cfilter id="noiseFilter"%3E%3CfeTurbulence type="fractalNoise" baseFrequency="0.65" numOctaves="3" stitchTiles="stitch"/%3E%3C/filter%3E%3Crect width="100%25" height="100%25" filter="url(%23noiseFilter)"/%3E%3C/svg%3E');opacity:.03;pointer-events:none;z-index:99}.glitch-text{position:relative;display:inline-block;color:var(--text-alert)}.glitch-text:before,.glitch-text:after{content:attr(data-text);position:absolute;top:0;left:0;width:100%;height:100%;opacity:.8}.glitch-text:before{left:2px;text-shadow:-1px 0 red;animation:glitch-anim-1 2s infinite linear alternate-reverse}.glitch-text:after{left:-2px;text-shadow:-1px 0 blue;animation:glitch-anim-2 3s infinite linear alternate-reverse}@keyframes glitch-anim-1{0%{clip-path:inset(20% 0 80% 0)}20%{clip-path:inset(60% 0 10% 0)}40%{clip-path:inset(40% 0 50% 0)}60%{clip-path:inset(80% 0 5% 0)}80%{clip-path:inset(10% 0 70% 0)}to{clip-path:inset(30% 0 20% 0)}}@keyframes glitch-anim-2{0%{clip-path:inset(10% 0 60% 0)}20%{clip-path:inset(30% 0 20% 0)}40%{clip-path:inset(70% 0 10% 0)}60%{clip-path:inset(20% 0 50% 0)}80%{clip-path:inset(50% 0 30% 0)}to{clip-path:inset(5% 0 80% 0)}}.blood-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:radial-gradient(circle,#f000 50%,#ff000026);pointer-events:none;z-index:98;animation:pulse-red 4s infinite ease-in-out}@keyframes pulse-red{0%,to{opacity:.5}50%{opacity:1}}.override-log{margin-bottom:2rem;max-width:800px;margin:0 auto 2rem}.cursor{display:inline-block;width:10px;height:1.2em;background-color:var(--text-glitch);vertical-align:bottom;animation:blink 1s step-end infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.btn-file{display:inline-block;border:1px solid var(--text-glitch);color:var(--text-glitch);padding:.5rem 1rem;margin:.5rem;cursor:pointer;background:transparent;font-family:inherit;font-size:1rem;transition:all .2s}.btn-file:hover{background:var(--text-glitch);color:var(--bg-glitch)}
