/* Phase 20.1 — Hush Field Instrument / Mobile Classified Device */
body[data-page-kind="adversarial-bench"]{
  --field-edge:rgba(139,233,253,.38);
  --field-bloom:rgba(189,147,249,.24);
  --field-core:rgba(7,10,22,.92);
  --field-ink:#020205;
  --field-bone:#f8f4ff;
  --field-dim:#98a4c4;
  --field-hot:#ff6bcb;
  --field-signal:#8be9fd;
  --field-violet:#bd93f9;
}

body[data-page-kind="adversarial-bench"]::before{
  content:'';
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:0;
  background:
    radial-gradient(ellipse at 50% -8%,rgba(139,233,253,.18),transparent 32rem),
    radial-gradient(ellipse at 14% 34%,rgba(255,107,203,.10),transparent 23rem),
    radial-gradient(ellipse at 91% 55%,rgba(189,147,249,.13),transparent 25rem),
    linear-gradient(90deg,rgba(139,233,253,.035),transparent 18% 82%,rgba(189,147,249,.035));
  opacity:.9;
}

.hush-alien-console{
  position:relative;
  z-index:1;
}

.hush-alien-console::before,
.hush-alien-console::after{
  content:'';
  position:fixed;
  top:0;
  bottom:0;
  width:1px;
  pointer-events:none;
  z-index:1;
  background:linear-gradient(180deg,transparent,rgba(139,233,253,.42),rgba(255,107,203,.16),transparent);
  box-shadow:0 0 22px rgba(139,233,253,.28);
}
.hush-alien-console::before{left:10px}
.hush-alien-console::after{right:10px}

.hush-signal-masthead .hush-title{
  text-shadow:0 0 24px rgba(139,233,253,.22),0 0 54px rgba(189,147,249,.2);
}

.hush-signal-masthead .hush-subtitle{
  max-width:60rem;
}

.hush-message-chamber,
.hush-mask-chamber,
.hush-output-chamber{
  box-shadow:0 24px 80px rgba(0,0,0,.36),inset 0 1px 0 rgba(255,255,255,.045);
}

.hush-message-chamber::after,
.hush-mask-chamber::after,
.hush-output-chamber::after,
.hush-transform-gate::after{
  content:'';
  position:absolute;
  inset:12px;
  pointer-events:none;
  border-radius:22px;
  background:
    linear-gradient(90deg,rgba(139,233,253,.28),transparent 18% 82%,rgba(255,107,203,.22)) top/100% 1px no-repeat,
    linear-gradient(90deg,rgba(189,147,249,.2),transparent 32% 68%,rgba(139,233,253,.18)) bottom/100% 1px no-repeat;
  opacity:.7;
}

.hush-route-card{
  position:relative;
  isolation:isolate;
  min-height:7rem;
}
.hush-route-card strong{
  display:block;
  margin-top:.28rem;
  padding-right:6.35rem;
  line-height:1.08;
}
.hush-route-card::before{
  content:'';
  position:absolute;
  inset:10px auto 10px 10px;
  width:3px;
  border-radius:999px;
  background:linear-gradient(180deg,var(--field-signal),var(--field-violet),var(--field-hot));
  box-shadow:0 0 18px rgba(139,233,253,.35);
  opacity:.55;
}
.hush-route-card::after{
  content:'route cartridge';
  position:absolute;
  top:.68rem;
  right:.72rem;
  color:rgba(248,244,255,.35);
  font:700 .58rem/1 ui-monospace,monospace;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.hush-route-card[aria-selected="true"]::before{opacity:1;box-shadow:0 0 26px rgba(139,233,253,.62)}

.hush-transform-gate{
  isolation:isolate;
}
.hush-transform-gate::before{
  content:'';
  position:absolute;
  inset:8px;
  border-radius:18px;
  pointer-events:none;
  background:radial-gradient(circle at 50% 50%,rgba(139,233,253,.18),transparent 36%),radial-gradient(circle at 50% 50%,rgba(189,147,249,.10),transparent 58%);
  opacity:.9;
  z-index:-1;
}

#generateMaskedOutputBtn{
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  border:0!important;
  color:#070713!important;
}

.hush-output-chamber textarea#protectedOutputInput{
  min-height:15rem;
  box-shadow:inset 0 0 0 1px rgba(139,233,253,.12),inset 0 0 36px rgba(139,233,253,.055),0 0 44px rgba(189,147,249,.055)!important;
}

.hush-output-chamber .hush-field-label::before{
  content:'decoded transmission · ';
  color:var(--field-signal);
}

.hush-heat-tile{
  clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,14px 100%,0 calc(100% - 14px));
}
.hush-heat-tile span::before{
  content:'↳ ';
  color:var(--field-signal);
}

.hush-drawer-console{
  overflow:hidden;
}
.hush-drawer-console summary{
  min-height:3.4rem;
  border-radius:20px;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.hush-drawer-console[open]{
  animation:hush-aperture-open .34s ease-out;
}
@keyframes hush-aperture-open{
  from{filter:brightness(.75);transform:translateY(4px)}
  to{filter:brightness(1);transform:translateY(0)}
}

@media(max-width:760px){
  body[data-page-kind="adversarial-bench"]{
    background:
      radial-gradient(circle at 50% -16%,rgba(139,233,253,.20),transparent 19rem),
      radial-gradient(circle at 115% 28%,rgba(255,107,203,.12),transparent 17rem),
      radial-gradient(circle at -12% 58%,rgba(189,147,249,.16),transparent 18rem),
      linear-gradient(180deg,#020204,#050611 52%,#020204);
  }
  body[data-page-kind="adversarial-bench"] .shell,
  body[data-page-kind="adversarial-bench"] .shell-station,
  .hush-alien-console{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:.72rem .72rem 1.1rem!important;
    min-height:100svh;
    border-radius:0!important;
  }
  .hush-alien-console::before{left:4px}
  .hush-alien-console::after{right:4px}
  .hush-signal-masthead{
    min-height:auto!important;
    margin:.2rem 0 .7rem!important;
    padding:1rem .92rem!important;
    border-radius:26px!important;
  }
  .hush-signal-masthead .hush-mark{font-size:.66rem!important;letter-spacing:.18em!important}
  .hush-signal-masthead .hush-title{font-size:clamp(2.15rem,15vw,4.4rem)!important;line-height:.86!important;margin:.22rem 0!important}
  .hush-signal-masthead .hush-subtitle{font-size:.82rem!important;line-height:1.35!important;margin:.4rem 0 0!important}
  .hush-local-flight-banner{display:flex!important;gap:.3rem!important;margin:.45rem 0!important}
  .hush-local-flight-banner span{padding:.32rem .44rem!important;font-size:.58rem!important;letter-spacing:.1em!important}
  .hush-status-ring{display:none!important}

  .hush-operator-path{
    position:sticky;
    top:.35rem;
    z-index:30;
    grid-template-columns:repeat(5,1fr)!important;
    gap:.22rem!important;
    margin:.5rem 0 .72rem!important;
    padding:.32rem!important;
    border:1px solid rgba(139,233,253,.16);
    border-radius:999px;
    background:rgba(3,5,12,.84);
    -webkit-backdrop-filter:blur(16px);
    backdrop-filter:blur(16px);
    box-shadow:0 12px 34px rgba(0,0,0,.34),0 0 26px rgba(139,233,253,.075);
  }
  .hush-path-step{
    min-height:2.35rem!important;
    padding:.34rem .16rem!important;
    border-radius:999px!important;
    border-color:rgba(139,233,253,.10)!important;
    background:rgba(255,255,255,.025)!important;
    text-align:center;
  }
  .hush-path-step strong{font-size:0!important;letter-spacing:0!important}
  .hush-path-step strong::first-letter{font-size:.72rem!important}
  .hush-path-step span{display:none!important}
  .hush-path-step::after{inset:auto 28% .25rem!important;height:3px!important}

  .hush-stage{
    display:flex!important;
    flex-direction:column!important;
    gap:.72rem!important;
  }
  .hush-compose-card,
  .hush-compose-grid{
    display:contents!important;
  }
  .hush-compose-card > .hush-card-head{display:none!important}
  .hush-message-chamber .hush-field-shell{order:1}
  .hush-mask-chamber{order:2}
  .hush-transform-gate{order:3}
  .hush-output-chamber{order:4}

  .hush-glass-card,
  .hush-message-chamber .hush-field-shell,
  .hush-mask-chamber,
  .hush-output-chamber,
  .hush-transform-gate,
  .hush-vault-stack details{
    border-radius:28px!important;
    background:linear-gradient(145deg,rgba(5,7,17,.94),rgba(12,8,25,.78))!important;
    border:1px solid rgba(139,233,253,.18)!important;
    box-shadow:0 18px 60px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.045)!important;
  }
  .hush-message-chamber .hush-field-shell,
  .hush-output-chamber .hush-field-shell{padding:1rem!important}
  .hush-field-label{font-size:.75rem!important;letter-spacing:.12em!important;text-transform:uppercase!important}
  .hush-field-caption{font-size:.76rem!important;line-height:1.3!important}
  textarea#messageDraftInput,
  textarea#protectedOutputInput{
    min-height:11.25rem!important;
    font-size:1rem!important;
    line-height:1.45!important;
    border-radius:20px!important;
  }
  textarea#protectedOutputInput{min-height:12.5rem!important}

  .hush-mask-chamber{padding:.95rem!important}
  .hush-mask-chamber .hush-card-head{margin-bottom:.55rem!important}
  .hush-mask-chamber h3{font-size:1.15rem!important}
  .hush-route-grid{
    display:flex!important;
    gap:.65rem!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x mandatory;
    max-height:none!important;
    margin:.6rem -.4rem 0!important;
    padding:.2rem .4rem .85rem!important;
  }
  .hush-route-card{
    min-width:82%!important;
    max-width:82%!important;
    min-height:8.2rem!important;
    scroll-snap-align:center;
    padding:1rem .9rem .88rem 1.05rem!important;
    border-radius:24px!important;
  }
  .hush-route-card strong{font-size:1.08rem!important;margin-top:.42rem!important;padding-right:6.7rem!important}
  .hush-route-card small{font-size:.78rem!important}

  .hush-transform-gate{
    position:sticky!important;
    bottom:.62rem;
    z-index:24;
    margin:.15rem 0!important;
    padding:.56rem!important;
    -webkit-backdrop-filter:blur(18px);
    backdrop-filter:blur(18px);
  }
  .hush-action-row{display:grid!important;grid-template-columns:1fr 1fr!important;gap:.36rem!important}
  #generateMaskedOutputBtn{grid-column:1/-1;min-height:3.28rem!important;font-size:.92rem!important}
  #copyHushOutputBtn{
    grid-column:1/-1;
    min-height:2.34rem!important;
    opacity:.94!important;
    filter:saturate(.92) brightness(.94)!important;
    box-shadow:0 0 18px rgba(139,233,253,.12),inset 0 1px 0 rgba(255,255,255,.20)!important;
  }
  #analyzeOutputBtn,
  #acceptOutputBtn,
  #openHushReviewBtn,
  #resetBenchBtn{
    grid-column:auto!important;
    min-height:2.28rem!important;
    font-size:.78rem!important;
    letter-spacing:.13em!important;
  }
  .hush-gate-strip{grid-template-columns:repeat(2,1fr)!important;gap:.34rem!important;margin-top:.36rem!important}
  .hush-gate-strip span{font-size:.68rem!important;text-align:center!important}

  .hush-output-status-band{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:.42rem!important;
  }
  .hush-output-status-band .hush-status-chip{padding:.5rem!important;border-radius:16px!important}

  .hush-pressure-ribbon,
  .hush-heat-grid{
    display:flex!important;
    gap:.52rem!important;
    overflow-x:auto!important;
    scroll-snap-type:x mandatory;
    margin:.8rem -.4rem!important;
    padding:.15rem .4rem .82rem!important;
  }
  .hush-heat-tile{
    min-width:46%!important;
    min-height:5.7rem!important;
    scroll-snap-align:start;
    border-radius:22px!important;
    padding:.78rem!important;
  }
  .hush-heat-tile strong{font-size:.7rem!important}
  .hush-heat-tile span{font-size:.74rem!important}

  .hush-vault-stack{margin-top:.7rem!important}
  .hush-vault-stack details{margin:.62rem 0!important}
  .hush-drawer-console summary{min-height:3.1rem!important;padding:.78rem .9rem!important}
  .hush-drawer-body{padding:.72rem!important}
  .hush-lab-grid,
  .hush-vault-grid{display:block!important}
  .hush-lab-panel{margin:.7rem 0!important}

  .hush-footer{font-size:.72rem!important;line-height:1.35!important;padding:1rem .4rem 0!important}
}

@media(max-width:430px){
  .hush-route-card{min-width:88%!important;max-width:88%!important}
  .hush-route-card strong{margin-top:.5rem!important;padding-right:6.85rem!important}
  .hush-heat-tile{min-width:68%!important}
  .hush-transform-gate{padding:.52rem!important}
  .hush-action-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.34rem!important}
  #generateMaskedOutputBtn{grid-column:1/-1!important;min-height:3.2rem!important}
  #copyHushOutputBtn{grid-column:1/-1!important;min-height:2.22rem!important}
  #analyzeOutputBtn,#acceptOutputBtn,#openHushReviewBtn,#resetBenchBtn{grid-column:auto!important;min-height:2.18rem!important}
  textarea#messageDraftInput,textarea#protectedOutputInput{min-height:10rem!important}
}

@media (prefers-reduced-motion: reduce){
  .hush-drawer-console[open]{animation:none!important}
  *,*::before,*::after{animation:none!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}