:root{
  --phos:#ffb000;
  --green:#33ff66;
  --bg:#0a0a0a;
}
*{box-sizing:border-box;}
html,body{margin:0;background:var(--bg);font-family:'JetBrains Mono','Courier New',monospace;color:#ccc;}
body{background:
  radial-gradient(circle at 50% 0%, #16160e 0%, #0a0a0a 60%);}

#screen{
  image-rendering:pixelated;
  image-rendering:crisp-edges;
  display:block;
  width:100%;
  height:auto;
}
.crt-frame{
  position:relative;
  border:14px solid #17170f;
  border-radius:18px;
  background:#000;
  box-shadow:0 0 60px rgba(255,176,0,0.12), inset 0 0 30px rgba(0,0,0,0.9);
}
.scanlines{
  pointer-events:none;position:absolute;inset:0;border-radius:6px;
  background:repeating-linear-gradient(0deg, rgba(0,0,0,0.20) 0 1px, transparent 1px 3px);
}
.crt-glow{
  pointer-events:none;position:absolute;inset:0;border-radius:6px;
  background:radial-gradient(ellipse at 50% 50%, transparent 55%, rgba(0,0,0,0.45) 100%);
}
.retro-key{
  background:#1c1c14;border:2px solid #3a3a28;border-bottom-width:4px;
  color:var(--phos);text-shadow:0 0 5px rgba(255,176,0,0.5);
  transition:all .06s ease;border-radius:6px;font-weight:700;letter-spacing:.03em;
  cursor:pointer;user-select:none;
}
.retro-key:hover{border-color:var(--phos);background:#26261a;}
.retro-key:active{transform:translateY(2px);border-bottom-width:2px;}
.retro-key.on{border-color:var(--green);color:var(--green);text-shadow:0 0 6px rgba(51,255,102,.6);}
.amber{color:var(--phos);text-shadow:0 0 6px rgba(255,176,0,0.4);}
.green{color:var(--green);text-shadow:0 0 6px rgba(51,255,102,0.4);}
.dim{color:#6a6a4a;}
::selection{background:var(--phos);color:#000;}
.panel{background:rgba(10,10,6,0.85);border:1px solid #2a2a1c;border-radius:10px;}
.title-glitch{
  font-weight:800;letter-spacing:-.02em;
  background:linear-gradient(90deg,var(--phos),var(--green));
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
input[type=file]::file-selector-button{
  background:#1c1c14;border:2px solid #3a3a28;color:var(--phos);
  padding:6px 14px;border-radius:6px;cursor:pointer;font-family:inherit;margin-right:10px;
}
input[type=file]::file-selector-button:hover{border-color:var(--phos);}
.reg{color:var(--green);}
a{color:var(--phos);}
.blink{animation:bl 1s steps(2,start) infinite;}
@keyframes bl{to{opacity:.2}}
.fade-in{animation:fi .5s ease both;}
@keyframes fi{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}