:root{--bg: #050505;--panel: #0b0d0b;--panel-border: #1a241a;--green: #4a8c5e;--green-bright: #6fd68f;--green-dim: #2a4a33;--green-faint: #1a2a20;--red: #b04040;--text: #5a8a6a;--text-dim: #3a5a44;--text-faint: #2a3a30;--mono: "JetBrains Mono", "Fira Code", "SF Mono", "Courier New", monospace}*{margin:0;padding:0;box-sizing:border-box}html,body{background:var(--bg);color:var(--text);font-family:var(--mono);font-size:16px;line-height:1.5;min-height:100vh;-webkit-font-smoothing:antialiased}body{overflow-x:hidden}#root{min-height:100vh}.scanlines:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0,transparent 2px,rgba(74,140,94,.03) 2px,rgba(74,140,94,.03) 4px);z-index:9999}.vignette:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(ellipse at center,transparent 40%,rgba(0,0,0,.6) 100%);z-index:9998}@keyframes flicker{0%,to{opacity:1}92%{opacity:1}93%{opacity:.82}94%{opacity:1}97%{opacity:.88}98%{opacity:1}}.flicker{animation:flicker 6s infinite}@keyframes glitch-shift{0%,to{transform:translate(0)}20%{transform:translate(-1px)}40%{transform:translate(1px,-1px)}60%{transform:translate(-1px,1px)}80%{transform:translate(1px)}}.glitch{position:relative;display:inline-block}.glitch:before,.glitch:after{content:attr(data-text);position:absolute;top:0;right:0;bottom:0;left:0;opacity:.7}.glitch:before{color:#2a6a8a;animation:glitch-shift 3.5s infinite;clip-path:inset(0 0 55% 0)}.glitch:after{color:#8a4a2a;animation:glitch-shift 2.7s infinite reverse;clip-path:inset(55% 0 0 0)}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:0}}.cursor{display:inline-block;width:.6em;background:var(--green-bright);margin-left:.1em;animation:blink 1s step-end infinite}@keyframes type-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:type-in .6s ease-out both}.fade-in-delay-1{animation-delay:.2s}.fade-in-delay-2{animation-delay:.5s}.fade-in-delay-3{animation-delay:.8s}.fade-in-delay-4{animation-delay:1.1s}.page{min-height:100vh;display:flex;flex-direction:column;padding:2rem 1.5rem}.home{align-items:center;justify-content:center;text-align:center}.container{max-width:760px;width:100%}.status-bar{width:100%;max-width:760px;display:flex;justify-content:space-between;font-size:.7rem;color:var(--text-faint);letter-spacing:.15em;text-transform:uppercase;margin-bottom:3rem}.status-bar .dot{color:var(--green)}.title{font-size:clamp(3rem,12vw,7rem);font-weight:700;letter-spacing:.15em;color:var(--green-bright);text-shadow:0 0 20px rgba(111,214,143,.3);line-height:1;margin-bottom:1.5rem}.tagline{font-size:clamp(.8rem,2.5vw,1rem);letter-spacing:.3em;color:var(--text-dim);text-transform:uppercase;margin-bottom:2rem}.intro{font-size:.95rem;color:var(--text);max-width:480px;margin:0 auto 3rem;line-height:1.7}.enter-btn{background:transparent;border:1px solid var(--green-dim);color:var(--green-bright);font-family:var(--mono);font-size:.85rem;letter-spacing:.25em;padding:1rem 2.5rem;cursor:pointer;text-transform:uppercase;transition:all .3s ease;position:relative}.enter-btn:hover{background:var(--green-faint);border-color:var(--green);box-shadow:0 0 20px #4a8c5e33;letter-spacing:.3em}.enter-btn:active{transform:scale(.98)}.footer{margin-top:auto;padding-top:3rem;font-size:.65rem;color:var(--text-faint);letter-spacing:.2em;text-transform:uppercase;text-align:center}.archive{padding:2rem 1.5rem}.archive-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2.5rem;border-bottom:1px solid var(--panel-border);padding-bottom:1rem}.archive-header h2{font-size:1rem;letter-spacing:.2em;color:var(--green-bright);text-transform:uppercase;font-weight:500}.back-btn{background:transparent;border:none;color:var(--text-dim);font-family:var(--mono);font-size:.75rem;letter-spacing:.15em;cursor:pointer;text-transform:uppercase;transition:color .2s}.back-btn:hover{color:var(--green-bright)}.panel{background:var(--panel);border:1px solid var(--panel-border);padding:1.5rem;margin-bottom:1.5rem;position:relative}.panel-label{font-size:.7rem;letter-spacing:.25em;color:var(--text-faint);text-transform:uppercase;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.panel-label:before{content:">";color:var(--green)}.transmission-title{font-size:1.3rem;color:var(--green-bright);letter-spacing:.15em;margin-bottom:1rem;font-weight:500}.ciphertext{font-size:.85rem;color:var(--green);line-height:1.8;word-break:break-all;padding:1rem;background:#060806;border-left:2px solid var(--green-dim)}.ciphertext .hex-line{display:block}.ciphertext .comment{color:var(--text-faint)}.grid-wrap{overflow-x:auto}.cipher-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin:.5rem 0;min-width:280px}.grid-cell{aspect-ratio:1;display:flex;align-items:center;justify-content:center;background:#060806;border:1px solid var(--panel-border);color:var(--text);font-size:1.1rem;font-weight:600;transition:all .2s ease;cursor:default}.grid-cell:hover{border-color:var(--green);color:var(--green-bright);box-shadow:inset 0 0 10px #4a8c5e1a}.grid-cell.highlight{border-color:var(--green);color:var(--green-bright);background:var(--green-faint)}.clue{color:var(--green);font-style:italic;font-size:.9rem;padding:.75rem;background:#060806;border-left:2px solid var(--green-dim)}.submit-form{display:flex;gap:.75rem;flex-wrap:wrap}.text-input{flex:1;min-width:180px;background:#060806;border:1px solid var(--panel-border);color:var(--green-bright);font-family:var(--mono);font-size:.95rem;padding:.75rem 1rem;letter-spacing:.15em;text-transform:uppercase;outline:none;transition:border-color .2s}.text-input::placeholder{color:var(--text-faint);text-transform:none;letter-spacing:.05em}.text-input:focus{border-color:var(--green);box-shadow:0 0 10px #4a8c5e26}.submit-btn{background:transparent;border:1px solid var(--green-dim);color:var(--green-bright);font-family:var(--mono);font-size:.8rem;letter-spacing:.2em;padding:.75rem 1.75rem;cursor:pointer;text-transform:uppercase;transition:all .25s ease}.submit-btn:hover{background:var(--green-faint);border-color:var(--green)}.submit-btn:active{transform:scale(.97)}.result{margin-top:1rem;padding:.75rem 1rem;font-size:.85rem;letter-spacing:.2em;text-transform:uppercase;text-align:center;animation:type-in .3s ease-out both}.result.verified{color:var(--green-bright);background:var(--green-faint);border:1px solid var(--green)}.result.denied{color:var(--red);background:#b0404014;border:1px solid rgba(176,64,64,.4)}.result.error{color:#c0a040;background:#c0a04014;border:1px solid rgba(192,160,64,.4)}.submit-btn:disabled{opacity:.5;cursor:not-allowed}.text-input:disabled{opacity:.6}.transmission-meta{display:flex;flex-wrap:wrap;gap:0 1.5rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--green-faint)}.meta-line{font-size:.75rem;display:flex;gap:.4rem;white-space:nowrap}.meta-label{color:var(--text-faint);letter-spacing:.1em}.meta-value{color:var(--green-bright);letter-spacing:.1em}.return-home-btn{display:block;width:100%;background:transparent;border:1px solid var(--panel-border);color:var(--text-dim);font-family:var(--mono);font-size:.75rem;letter-spacing:.25em;padding:.85rem;cursor:pointer;text-transform:uppercase;transition:all .25s ease;margin-top:1.5rem}.return-home-btn:hover{border-color:var(--green-dim);color:var(--green-bright);background:var(--green-faint)}.return-home-btn:active{transform:scale(.98)}@media (max-width: 600px){.page{padding:1.5rem 1rem}.panel{padding:1.25rem}.archive-header{flex-direction:column;gap:.75rem;align-items:flex-start}.submit-form{flex-direction:column}.submit-btn{width:100%}.transmission-meta{flex-direction:column;gap:.4rem}}
