:root { color-scheme: dark; --bg:#050807; --panel:#0b1110; --line:#1b342d; --text:#d8e8e2; --muted:#7e9d92; --green:#43f5a1; --amber:#f4c96b; }
* { box-sizing:border-box; }
body { margin:0; min-height:100vh; background:radial-gradient(circle at 50% 20%,#102019 0,#050807 52%); color:var(--text); font:16px/1.6 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; }
.shell { width:min(900px,calc(100% - 32px)); margin:5vh auto; border:1px solid var(--line); background:rgba(5,8,7,.88); box-shadow:0 24px 80px #000; }
header { display:flex; gap:10px; align-items:center; padding:12px 16px; border-bottom:1px solid var(--line); color:var(--muted); font-size:12px; letter-spacing:.08em; }
.status-dot { width:8px; height:8px; border-radius:50%; background:var(--green); box-shadow:0 0 12px var(--green); }
.classification { margin-left:auto; color:var(--amber); }
.panel { padding:clamp(28px,6vw,68px); }
.eyebrow { color:var(--amber); letter-spacing:.16em; font-size:12px; }
.success { color:var(--green); }
h1,h2 { margin:.25em 0 .5em; font-family:Inter,system-ui,sans-serif; line-height:1.05; letter-spacing:-.04em; }
h1 { font-size:clamp(42px,8vw,82px); max-width:12ch; }
h2 { font-size:clamp(38px,7vw,68px); }
.lead { color:#b8cec6; font-size:clamp(18px,2.4vw,23px); max-width:68ch; }
dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; margin:36px 0; background:var(--line); border:1px solid var(--line); }
dl div { padding:14px; background:var(--panel); }
dt { color:var(--muted); font-size:12px; text-transform:uppercase; }
dd { margin:2px 0 0; color:var(--green); }
button,a { font:inherit; }
button,.primary { border:1px solid var(--green); background:var(--green); color:#03120c; padding:12px 18px; cursor:pointer; text-decoration:none; font-weight:700; }
.hint,.closing { color:var(--muted); font-size:13px; margin-top:22px; }
.terminal { border-top:1px solid var(--line); background:#030504; }
#output { min-height:210px; white-space:pre-wrap; color:#a9c3b9; }
#answer-form { display:flex; align-items:center; gap:10px; margin-top:24px; }
label { color:var(--green); }
input { flex:1; min-width:0; border:0; border-bottom:1px solid var(--green); background:transparent; color:var(--text); padding:10px; font:inherit; outline:none; }
select,textarea { width:100%; border:1px solid var(--line); background:#050807; color:var(--text); padding:10px; font:inherit; outline:none; }
#answer-form button { padding:8px 12px; }
#feedback { color:var(--amber); }
.experience { display:flex; flex-wrap:wrap; gap:8px; margin:28px 0; }
.experience span { border:1px solid var(--line); padding:7px 10px; color:#a9c3b9; }
nav { display:flex; flex-wrap:wrap; gap:10px; margin-top:34px; }
nav a { border:1px solid var(--line); color:var(--text); padding:12px 16px; text-decoration:none; }
nav a:hover { border-color:var(--green); }
nav .primary { color:#03120c; border-color:var(--green); }
[hidden] { display:none !important; }
.privacy { width:min(900px,calc(100% - 32px)); margin:0 auto 30px; color:#607a71; font-size:11px; text-align:center; }
.packet { width:min(100%,760px); display:block; margin:28px auto; border:1px solid var(--line); }
.skip { color:var(--muted); font-size:12px; text-decoration:underline; cursor:pointer; background:none; border:0; padding:0; }
.recruiter-skip { display:block; margin-top:16px; }
.contact-card { margin-top:48px; padding-top:32px; border-top:1px solid var(--line); }
.contact-card h3 { font:700 28px/1.2 Inter,system-ui,sans-serif; margin:.3em 0; }
.contact-card form { display:grid; gap:18px; margin-top:24px; }
.field-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.contact-card label { display:grid; gap:6px; color:var(--muted); font-size:12px; }
.contact-card label input { width:100%; color:var(--text); }
.contact-card .consent { display:flex; grid-template-columns:20px 1fr; align-items:start; color:#a9c3b9; line-height:1.45; }
.contact-card .consent input { margin-top:4px; }
#contact-feedback { color:var(--green); }
@media (max-width:620px) { dl { grid-template-columns:1fr; } #answer-form { align-items:stretch; flex-direction:column; } #answer-form button { width:100%; } }
@media (max-width:620px) { .field-grid { grid-template-columns:1fr; } }
@media (prefers-reduced-motion:reduce) { * { scroll-behavior:auto !important; } }

.busy {
  margin: 0 0 16px;
  padding: 10px 14px;
  border: 1px solid var(--accent, #2f6bed);
  border-radius: 8px;
  background: rgba(47, 107, 237, 0.08);
  font-size: 0.9rem;
}
.busy a { font-weight: 600; }
