:root{
  --bg:#070a12; --card:#0b1220; --border:#1b2947;
  --text:#dfe7ff; --muted:#8ea2d7; --accent:#00ffb3;
}
*{box-sizing:border-box}
body{
  margin:0; font-family:system-ui,Segoe UI,Arial;
  background: radial-gradient(900px 500px at 10% 10%, #1a1f3a 0%, transparent 60%),
              radial-gradient(900px 500px at 90% 20%, #0b3a2f 0%, transparent 60%),
              var(--bg);
  color:var(--text);
}
.wrap{min-height:100vh; display:flex; align-items:center; justify-content:center; padding:24px}
.card{
  width:min(980px, 95vw);
  background: linear-gradient(180deg, rgba(255,255,255,0.04), rgba(255,255,255,0.02));
  border:1px solid var(--border);
  border-radius:16px;
  padding:26px;
  box-shadow: 0 20px 80px rgba(0,0,0,0.55);
}
.card.small{width:min(900px,95vw)}
.title{font-weight:900; letter-spacing:2px; color:var(--accent); font-size:26px; text-align:center}
.sub{margin-top:6px; text-align:center; color:var(--muted); font-size:14px}
.alert{margin:14px auto; max-width:760px; padding:10px 12px; border:1px solid #5b2b2b; background:#1a0f0f; border-radius:10px}
.form{margin-top:18px}
textarea{
  width:100%; height:360px; resize:vertical;
  background:#050a12;
  border:1px solid var(--border);
  border-radius:14px;
  padding:14px;
  color:var(--text);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size:13px;
  outline:none;
}
.row{margin-top:14px}
.label{color:var(--muted); font-size:12px; margin-bottom:8px}
input[type=file]{
  width:100%;
  background:#050a12;
  border:1px solid var(--border);
  border-radius:12px;
  padding:10px;
  color:var(--text);
}
.btn{
  margin-top:16px;
  width:100%;
  padding:12px 14px;
  border:0;
  border-radius:12px;
  background: linear-gradient(90deg, #0b6 0%, #3a2bff 120%);
  color:#fff;
  font-weight:900;
  cursor:pointer;
}
.hint{margin-top:14px; text-align:center; color:var(--muted); font-size:12px}
.pre{
  margin-top:14px;
  background:#050a12;
  border:1px solid var(--border);
  border-radius:14px;
  padding:14px;
  overflow:auto;
  max-height:520px;
}
.topbar{display:flex; justify-content:space-between; align-items:center}
.brand{font-weight:900;color:var(--accent)}
.idbox{border:1px solid var(--border); padding:8px 10px; border-radius:12px; color:var(--muted)}
.actions{margin-top:14px; display:flex; gap:10px}
.btnmini{
  padding:10px 12px;
  border-radius:12px;
  border:1px solid var(--border);
  background:rgba(0,0,0,.18);
  color:var(--text);
  cursor:pointer;
  text-decoration:none;
}
.ok{
  margin-top:14px;
  padding:12px;
  border:1px solid #1f6b55;
  background:#0b1f1a;
  border-radius:12px;
}
.filebox{margin-top:12px;color:var(--muted)}
.foot{margin-top:14px; color:var(--muted); font-size:12px}
a{color:var(--accent)}
code{color:#b7c6ff}