/* 基本重置 */
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}
body{
  font-family:'IBM Plex Mono','VT323',monospace,sans-serif;
  background:#000;color:#d6d6d6;overflow:hidden;
}

/* 背景层：视频/噪声 */
.bg{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;
  background:radial-gradient(ellipse at center,rgba(30,30,40,0.6),rgba(0,0,0,0.9))}
.bg video{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  min-width:100%;min-height:100%;opacity:.45;mix-blend-mode:screen;
  filter:grayscale(40%) contrast(.8) brightness(.9)}
.noise{position:fixed;inset:0;z-index:2;pointer-events:none;opacity:.12;
  background-image:repeating-linear-gradient(transparent,rgba(255,255,255,.02) 1px);
  mix-blend-mode:overlay}

/* 终端容器 */
.terminal-wrap{position:relative;z-index:3;height:100%;display:flex;align-items:center;justify-content:center;padding:20px}
.terminal{width:min(880px,94%);background:rgba(2,6,12,.45);
  border:1px solid rgba(255,255,255,.04);padding:28px;border-radius:12px;
  backdrop-filter:blur(6px) saturate(120%);box-shadow:0 8px 30px rgba(0,0,0,.7)}
.title{font-size:14px;color:#9fb1ff;margin-bottom:14px;display:flex;align-items:center;gap:10px}
.title .dot{width:10px;height:10px;border-radius:50%;background:#25207e;box-shadow:0 0 8px rgba(49,37,104,.6)}
.prompt{background:rgba(0,0,0,.25);padding:18px;border-radius:6px;border:1px solid rgba(255,255,255,.02);
  display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.input-row{display:flex;gap:10px;align-items:center;width:100%}
.prefix{color:#627089;font-weight:700}

/* 输入框：与视频融合的玻璃感 */
input.cmd{flex:1;padding:10px 14px;border-radius:8px;border:1px solid rgba(255,255,255,.08);
  background:rgba(10,10,20,.15);backdrop-filter:blur(6px) brightness(1.2);
  color:#cfe8ff;font-size:16px;outline:none;caret-color:#2d2d7f;transition:all .25s ease;
  box-shadow:inset 0 -6px 16px rgba(0,0,0,.3),0 0 12px rgba(126,231,178,.05)}
input.cmd::placeholder{color:rgba(200,220,255,.35)}
input.cmd:focus{background:rgba(20,30,50,.25);
  box-shadow:0 0 12px rgba(34,26,92,.3),inset 0 -6px 18px rgba(0,0,0,.4);
  transform:scale(1.015);border-color:rgba(45,37,111,.47)}

/* 错误抖动 */
.shake{animation:shake .36s}
@keyframes shake{
  0%{transform:translateX(0)}20%{transform:translateX(-8px)}40%{transform:translateX(8px)}
  60%{transform:translateX(-5px)}80%{transform:translateX(5px)}100%{transform:translateX(0)}
}

/* 主页面：默认由 hidden 隐藏；显示态用 .show */
.main{position:fixed;inset:0;z-index:4;background:linear-gradient(180deg,rgba(31,48,134,.606),rgba(1,2,6,.98));
  display:flex;align-items:center;justify-content:center;flex-direction:column;
  opacity:0;pointer-events:none;transition:opacity .8s ease}
.main.show{opacity:1;pointer-events:auto}
.main h1{font-size:34px;letter-spacing:2px;margin-bottom:14px;color:#c8d7ff}
.main p{color:#9aa7c7;max-width:760px;text-align:center}

/* 响应式 */
@media (max-width:600px){.title{font-size:12px}.main h1{font-size:26px}}
