/* Same studio as the left editor: the form is a writable config buffer. */
#pane-form{
  position:relative;overflow:hidden;
  background:linear-gradient(180deg,rgba(16,18,32,.92),rgba(8,10,18,.96));
  border:1px solid rgba(255,255,255,.07);
  border-radius:16px;
  box-shadow:0 24px 60px -28px #000, inset 0 1px 0 rgba(255,255,255,.04);
}
#pane-form .pane-head{
  background:rgba(255,255,255,.02);
  color:var(--mute);
  border-bottom:1px solid rgba(255,255,255,.06);
  font-family:var(--mono);
}
.form-scroll{
  position:relative;
  background:transparent;
}

#pm-root{
  --pm-line:rgba(255,255,255,.1);
  --pm-accent:#5ce1c5;
  --pm-ink:#071018;
  --text:#c9d1ef;
  --dim:#5b6484;
  --sans:"Outfit", ui-sans-serif, sans-serif;
  --mono:"IBM Plex Mono", ui-monospace, Menlo, monospace;
  color:#c9d1ef;
  font-family:var(--mono);
  padding:6px 8px 28px;
}

#pm-root .pm-head{
  display:flex;margin:0 0 18px;padding:4px 0 14px;
  border-bottom:1px solid rgba(92,225,197,.2);
}
#pm-root .pm-port,
#pm-root .pm-foot{display:none}

#pm-root .pm-mark{
  width:64px;height:64px;border-radius:14px;overflow:hidden;padding:0;
  background:#000;border:1px solid rgba(0,251,255,.35);
  box-shadow:0 0 24px rgba(0,251,255,.45), 0 0 28px rgba(209,0,255,.25);
}
#pm-root .pm-mark img{
  width:100%;height:100%;object-fit:cover;display:block;
}
#pm-root .pm-brand strong{
  font:800 28px/1 Outfit,sans-serif;letter-spacing:-.045em;color:#fff;
  text-shadow:0 0 18px rgba(92,225,197,.55), 0 0 28px rgba(255,77,157,.3);
}
#pm-root .pm-brand p{
  color:#7af8dc;font:700 13px/1.4 Outfit,sans-serif;
  text-shadow:0 0 12px rgba(92,225,197,.45);
}
#pm-root .pm-box{
  background:transparent;
  border:0;
  border-radius:0;
  padding:12px 8px 18px;
  margin:0;
  box-shadow:none;
  border-bottom:1px solid rgba(255,255,255,.06);
}
#pm-root h3{
  margin:0 0 8px;
  font:700 14px/1.6 var(--mono);
  letter-spacing:0;
  text-transform:none;
  color:#e8ecff;
  font-style:italic;
  text-shadow:0 0 8px rgba(255,126,182,.7), 0 0 22px rgba(255,126,182,.35);
}
#pm-root h3::before{content:"# ";color:#ff7eb6;font-style:normal;font-weight:800;text-shadow:0 0 10px #ff7eb6, 0 0 24px #ff7eb6}
#pm-root .pm-lede{
  color:#c9d1ef;margin:0 0 16px;font:700 italic 12.5px/1.55 var(--mono);
  text-shadow:0 0 10px rgba(201,209,239,.35);
}

#pm-root .pm-box:has(#pm-hist){display:none!important}

#pm-root .pm-field{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:6px;
  margin-bottom:14px;
  min-width:0;
  font:700 13px/1.4 var(--mono);
  letter-spacing:0;
  text-transform:none;
  color:#7eb8ff;
}
#pm-root .pm-field span{
  display:block;
  text-align:left;
  color:#d4c4ff;
  white-space:normal;
  overflow-wrap:anywhere;
  font-weight:800;
  padding-right:0;
  text-shadow:0 0 8px rgba(181,156,255,.85), 0 0 18px rgba(181,156,255,.4);
}
#pm-root .pm-field span::after{content:" =";color:#89ddff;text-shadow:0 0 10px #89ddff}
#pm-root .pm-field input{
  display:block;
  width:100%;
  min-width:0;
  max-width:100%;
  background:rgba(0,0,0,.28);
  border:1px solid rgba(255,213,122,.35);
  border-radius:8px;
  color:#ffe9a8;
  padding:10px 12px;
  font:700 13px/1.4 var(--mono);
  box-shadow:0 0 14px rgba(255,213,122,.18);
  text-shadow:0 0 8px rgba(255,213,122,.55);
}
#pm-root .pm-split{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:12px;
}
#pm-root .pm-field input::placeholder{color:#5b6484}
#pm-root .pm-field input:focus{
  outline:none;
  border-color:rgba(92,225,197,.45);
  box-shadow:0 0 0 3px rgba(92,225,197,.12);
}

#pm-root .pm-ports{
  display:flex;
  gap:6px;
  margin:0 0 14px 0;
  padding:4px;
  border-radius:10px;
  background:rgba(0,0,0,.28);
  border:1px solid rgba(255,255,255,.06);
}
#pm-root .pm-chip{
  flex:1;min-width:0;height:36px;padding:0;
  border-radius:8px;border:0;background:transparent;
  color:#c9d1ef;font:800 13px/1 var(--mono);
  cursor:pointer;box-shadow:none;transform:none;
  text-shadow:0 0 8px rgba(201,209,239,.4);
}
#pm-root .pm-chip.on{
  background:rgba(92,225,197,.18);
  color:#7af8dc;
  font-weight:800;
  box-shadow:0 0 16px rgba(92,225,197,.45), inset 0 0 0 1px rgba(92,225,197,.7);
  text-shadow:0 0 10px #5ce1c5, 0 0 22px #5ce1c5;
  transform:none;
}

#pm-root .pm-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.15fr) minmax(0,1fr);
  gap:10px;
  margin-top:12px;
}
#pm-root .pm-btn{
  width:100%;
  border:0;border-radius:8px;
  background:linear-gradient(180deg,#6eebc9,#3ec9ad);
  color:#06241c;
  font:800 12px/1.2 var(--sans);
  letter-spacing:.04em;
  text-transform:none;
  padding:12px 8px;
  min-height:44px;
  white-space:normal;
  box-shadow:0 0 18px rgba(92,225,197,.55), 0 8px 22px rgba(92,225,197,.28);
  text-shadow:0 0 8px rgba(255,255,255,.35);
}
#pm-root .pm-btn.ghost{
  background:rgba(255,255,255,.06);
  color:#fff;
  border:1px solid rgba(92,225,197,.35);
  box-shadow:0 0 14px rgba(92,225,197,.22);
  text-shadow:0 0 10px rgba(92,225,197,.55);
}
#pm-root .pm-btn.ghost:hover{border-color:#5ce1c5;color:#7af8dc;box-shadow:0 0 22px rgba(92,225,197,.45)}
#pm-root .pm-error{color:#ff8b9a;font:700 12.5px/1.4 var(--mono);margin:10px 0 0;text-shadow:0 0 10px rgba(255,139,154,.6)}

#pm-root .pm-result{
  display:flex !important;
  flex-direction:column;
  align-items:stretch;
  background:rgba(0,0,0,.45);
  border:1px solid rgba(0,251,255,.35);
  border-radius:12px;
  padding:14px;
  gap:12px;
}
#pm-root .pm-result code{
  display:block;
  width:100%;
  flex:none !important;
  color:#ffe9a8;
  font:700 14px/1.55 var(--mono);
  word-break:normal;
  overflow-wrap:break-word;
  white-space:pre-wrap;
  text-shadow:0 0 10px rgba(255,213,122,.55);
}
#pm-root .pm-result .pm-btn{
  width:100%;
  flex:none;
  align-self:stretch;
}
#pm-root .pm-ok.on .pm-result{
  animation:resultLive 1.6s ease-out;
}
@keyframes resultLive{
  0%{box-shadow:0 0 0 0 rgba(0,251,255,.7);border-color:#00fbff}
  40%{box-shadow:0 0 36px 6px rgba(0,251,255,.4), 0 0 48px rgba(209,0,255,.25)}
  100%{box-shadow:0 0 18px rgba(0,251,255,.22)}
}
#pm-check-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:12px}
#pm-check-bar .pm-check-link{
  color:#06241c;background:linear-gradient(180deg,#6eebc9,#3ec9ad);text-decoration:none;
  font:800 12px/1 Outfit,sans-serif;padding:10px 14px;border-radius:8px;
  box-shadow:0 0 18px rgba(92,225,197,.5);
  text-shadow:0 0 6px rgba(255,255,255,.3);
}
#pm-check-msg{font:700 12.5px/1.4 "IBM Plex Mono",monospace;color:#c9d1ef;text-shadow:0 0 8px rgba(201,209,239,.4)}
#pm-check-msg.ok{color:#7af8dc;text-shadow:0 0 12px #5ce1c5}
#pm-check-msg.bad{color:#ff8b9a;text-shadow:0 0 12px #ff8b9a}

#pm-root .pm-putty{
  border-radius:10px;overflow:hidden;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:none;
}
#pm-root .pm-putty-bar{
  background:rgba(255,255,255,.03);
  color:#7af8dc;
  font:800 11px/1 var(--mono);
  letter-spacing:.08em;
  text-transform:uppercase;
  padding:8px 12px;
  text-shadow:0 0 10px #5ce1c5, 0 0 20px rgba(92,225,197,.5);
}
#pm-root .pm-term{
  min-height:140px;max-height:220px;
  background:#07080f;color:#7af8dc;
  padding:12px 14px;font:700 12.5px/1.55 var(--mono);
  text-shadow:0 0 8px rgba(92,225,197,.65);
}
#pm-root .pm-hit b{font:800 12.5px/1.3 var(--mono);color:#fff;text-transform:none;text-shadow:0 0 10px rgba(255,255,255,.35)}
#pm-root .pm-empty{color:#c9d1ef;font:700 12.5px/1.5 var(--mono);margin:0;text-shadow:0 0 8px rgba(201,209,239,.35)}

#pm-root .pm-hist{gap:8px}
#pm-root .pm-hit{
  padding:10px 12px;border-radius:10px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(0,0,0,.22);
  box-shadow:none;
}

@media(max-width:640px){
  #pm-root .pm-split,#pm-root .pm-ports{grid-template-columns:1fr}
  #pm-root .pm-row{grid-template-columns:1fr}
}

#hh-win{
  display:none;position:absolute;inset:0;z-index:20;place-items:center;
  background:radial-gradient(circle at 50% 42%, rgba(0,251,255,.16), rgba(8,9,16,.94) 58%);
  pointer-events:none;
}
#hh-win.is-on{display:grid}
.hh-win-shock{
  position:absolute;width:40px;height:40px;border-radius:50%;
  border:3px solid #00fbff;opacity:0;
}
#hh-win.is-on .hh-win-shock{animation:hhShock .9s ease-out}
.hh-win-ring{
  position:absolute;width:160px;height:70px;border-radius:50%;
  border:2px solid rgba(225,75,255,.85);
  box-shadow:0 0 24px #d100ff, inset 0 0 18px rgba(0,251,255,.35);
  transform:rotateX(68deg) scale(.2);opacity:0;
}
#hh-win.is-on .hh-win-ring{animation:hhRing 1.8s .15s cubic-bezier(.2,1.4,.3,1) both}
.hh-win-gate{position:absolute;display:flex;gap:54px;height:120px;align-items:center}
.hh-win-gate span{
  width:18px;height:0;border-radius:4px;
  box-shadow:0 0 18px currentColor;
}
.hh-win-gate span:first-child{background:#00fbff;color:#00fbff}
.hh-win-gate span:last-child{background:#e14bff;color:#e14bff}
#hh-win.is-on .hh-win-gate span{animation:hhPillar .55s .1s cubic-bezier(.2,1.3,.3,1) both}
.hh-win-core{
  position:absolute;width:22px;height:22px;border-radius:50%;
  background:radial-gradient(circle,#fff,#00fbff 40%,#d100ff);
  box-shadow:0 0 28px #00fbff;opacity:0;
}
#hh-win.is-on .hh-win-core{animation:hhCore 2.2s .35s ease-out both}
.hh-win-shards{position:absolute;inset:0}
.hh-win-shards i{
  position:absolute;left:50%;top:46%;width:6px;height:6px;border-radius:50%;
  transform:translate(-50%,-50%) rotate(var(--a)) translateY(0);
  opacity:0;
}
.hh-win-shards i.c{background:#00fbff;box-shadow:0 0 10px #00fbff}
.hh-win-shards i.p{background:#e14bff;box-shadow:0 0 10px #d100ff}
#hh-win.is-on .hh-win-shards i{animation:hhShard .9s var(--d,0s) ease-out both}
.hh-win-title{
  position:relative;z-index:2;margin:88px 0 0;font:800 32px/.9 Outfit,sans-serif;
  letter-spacing:.08em;opacity:0;
}
.hh-win-title b{font-style:normal;color:#00fbff;text-shadow:0 0 16px #00fbff}
.hh-win-title i{font-style:normal;color:#e14bff;text-shadow:0 0 16px #d100ff}
#hh-win.is-on .hh-win-title{animation:hhTitle .7s .55s both}
.hh-win-sub{
  position:relative;z-index:2;margin:10px 0 0;font:800 12px/1 Outfit,sans-serif;
  letter-spacing:.42em;color:#7af8dc;opacity:0;
}
#hh-win.is-on .hh-win-sub{animation:hhTitle .6s .85s both}
.hh-win-line{
  position:relative;z-index:2;margin:14px 16px 0;max-width:92%;
  font:700 13px/1.5 "IBM Plex Mono",monospace;color:#ffe9a8;text-align:center;
  word-break:normal;overflow-wrap:break-word;white-space:pre-wrap;opacity:0;
}
#hh-win.is-on .hh-win-line{animation:hhTitle .5s 1.1s both}
#pm-root .pm-ok.on{
  animation:hhCard 1.2s ease-out;
  box-shadow:0 0 0 1px rgba(0,251,255,.35), 0 0 28px rgba(0,251,255,.25);
}
@keyframes hhShock{0%{transform:scale(.2);opacity:1}100%{transform:scale(8);opacity:0}}
@keyframes hhRing{0%{opacity:0;transform:rotateX(68deg) scale(.15) rotate(0)}70%{opacity:1}100%{opacity:.9;transform:rotateX(68deg) scale(1) rotate(180deg)}}
@keyframes hhPillar{0%{height:0;opacity:0}100%{height:120px;opacity:1}}
@keyframes hhCore{0%{transform:scale(0);opacity:0}40%{transform:scale(1.4);opacity:1}100%{transform:scale(1);opacity:.9}}
@keyframes hhShard{0%{opacity:1;transform:translate(-50%,-50%) rotate(var(--a)) translateY(0)}100%{opacity:0;transform:translate(-50%,-50%) rotate(var(--a)) translateY(-120px)}}
@keyframes hhTitle{0%{opacity:0;transform:translateY(12px) scale(.92);filter:blur(8px)}100%{opacity:1;transform:none;filter:none}}
@keyframes hhCard{0%{filter:brightness(2)}100%{filter:none}}
