.corruption-meter{
  position:fixed;
  bottom:16px;
  right:16px;
  z-index:9997;
  font-family:'Courier New', Courier, monospace;
  font-size:11px;
  letter-spacing:0.06em;
  color:var(--rouille);
  background:rgba(10,9,8,0.75);
  border:1px solid rgba(184,92,46,0.4);
  border-radius:2px;
  padding:6px 10px;
  cursor:pointer;
  backdrop-filter:blur(2px);
  transition:border-color 0.2s ease, color 0.2s ease;
  user-select:none;
}
.corruption-meter:hover{border-color:var(--rouille); color:var(--jaune-ind);}
.corruption-meter .label{opacity:0.7; margin-right:4px;}

@media (max-width:600px){
  .corruption-meter{bottom:8px; right:8px; font-size:10px;}
}

/* écran plein écran "System Override" */
.override-screen{
  position:fixed;
  inset:0;
  z-index:10001;
  background:#000;
  display:none;
  align-items:center;
  justify-content:center;
  padding:32px 24px;
  overflow:hidden;
}
.override-screen.open{display:flex;}

/* code de "récupération" qui défile en fond, sur toute la largeur */
.override-code-bg{
  position:absolute;
  inset:0;
  z-index:1;
  display:flex;
  justify-content:space-between;
  padding:0 2%;
  opacity:0.22;
  pointer-events:none;
}
.override-code-col{
  font-family:'Courier New', Courier, monospace;
  font-size:12px;
  line-height:1.5;
  color:var(--rouille);
  white-space:pre;
  animation:overrideScroll linear infinite;
}
@keyframes overrideScroll{
  0%{transform:translateY(0);}
  100%{transform:translateY(-50%);}
}

.override-screen::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:repeating-linear-gradient(180deg, rgba(184,92,46,0.1) 0px, transparent 1px, transparent 3px);
}
/* bruit/parasites intense, dédié à cet écran */
.override-screen::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:3;
  pointer-events:none;
  opacity:0.12;
  mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  animation:overrideStatic 0.15s steps(2) infinite;
}
@keyframes overrideStatic{
  0%{transform:translate(0,0);}
  100%{transform:translate(-4%,3%);}
}

.override-inner{
  position:relative;
  z-index:4;
  max-width:640px;
  text-align:center;
  background:rgba(0,0,0,0.55);
  padding:32px 24px;
  border:1px solid rgba(184,92,46,0.4);
}

.override-title{
  font-family:var(--font-display);
  font-weight:700;
  font-size:clamp(32px, 6vw, 56px);
  color:var(--rouille);
  text-transform:uppercase;
  letter-spacing:0.04em;
  text-shadow:0 0 20px rgba(184,92,46,0.5);
  animation:overrideJitter 0.3s steps(3) infinite, overrideBlink 1.1s steps(1) infinite;
}
@keyframes overrideJitter{
  0%{transform:translate(0,0);}
  33%{transform:translate(-1px,1px);}
  66%{transform:translate(1px,-1px);}
  100%{transform:translate(0,0);}
}
@keyframes overrideBlink{
  0%, 55%{opacity:1;}
  56%, 100%{opacity:0.35;}
}

.override-subtitle{
  font-family:'Courier New', Courier, monospace;
  font-size:13px;
  letter-spacing:0.15em;
  text-transform:uppercase;
  color:var(--jaune-ind);
  margin-top:16px;
}

.override-text{
  font-family:'Courier New', Courier, monospace;
  font-size:14px;
  line-height:1.7;
  color:var(--acier-clair);
  white-space:pre-wrap;
  margin-top:28px;
}

.override-image{
  margin-top:28px;
  max-width:100%;
  border:1px solid var(--rouille);
}

.override-cta{
  display:inline-block;
  margin-top:32px;
  font-family:var(--font-display);
  font-size:12px;
  letter-spacing:0.14em;
  text-transform:uppercase;
  padding:14px 32px;
  background:var(--rouille);
  color:#000;
  text-decoration:none;
  border-radius:2px;
}

.override-close{
  margin-top:32px;
  display:block;
  margin-left:auto;
  margin-right:auto;
  background:transparent;
  border:1px solid var(--acier-clair);
  color:var(--acier-clair);
  font-family:'Courier New', Courier, monospace;
  font-size:12px;
  padding:10px 24px;
  cursor:pointer;
  border-radius:2px;
}
.override-close:hover{border-color:var(--blanc-casse); color:var(--blanc-casse);}

.override-countdown{
  margin-top:20px;
  font-family:'Courier New', Courier, monospace;
  font-size:11px;
  letter-spacing:0.1em;
  color:var(--acier-clair);
  opacity:0.7;
}

@media (prefers-reduced-motion: reduce){
  .override-title{animation:none;}
  .override-code-col{animation:none;}
  .override-screen::after{animation:none; opacity:0.04;}
}
