
:root {
  --bg1: #1a1a2e;
  --bg2: #16213e;
  --bg3: #0f3460;
  --glass: rgba(255,255,255,0.08);
  --glass-border: rgba(255,255,255,0.15);
  --text: #ffffff;
  --sub: rgba(255,255,255,.62);
  --sub2: rgba(255,255,255,.78);
  --btn: #f4f4f6;
  --btn-text: #1f2430;
  --input: rgba(255,255,255,.10);
}
* { box-sizing: border-box; }
html, body { margin:0; width:100%; height:100%; font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue",sans-serif; background: linear-gradient(135deg, var(--bg1), var(--bg2), var(--bg3)); color:var(--text); overflow:hidden; }
body { user-select:none; }
#shell-screen {
  position:fixed; inset:0; display:flex; align-items:center; justify-content:center; padding:24px;
}
#password-box {
  width:min(92vw, 340px); border-radius:22px; padding:38px 42px; display:flex; flex-direction:column; align-items:center; gap:12px;
  background:var(--glass); backdrop-filter: blur(20px); border:1px solid var(--glass-border); box-shadow:0 20px 60px rgba(0,0,0,.45);
}
#password-icon { font-size:40px; line-height:1; margin-bottom:2px; }
#password-title { font-size:22px; font-weight:700; letter-spacing:.02em; }
#password-subtitle { font-size:13px; color:var(--sub); }
#usage-note { font-size:12px; line-height:1.75; color:var(--sub2); text-align:center; margin:6px 0 2px; }
#password-input {
  width:100%; height:44px; border-radius:12px; border:1.5px solid rgba(255,255,255,.22); background:var(--input); color:#fff; text-align:center; outline:none; font-size:15px;
}
#password-input::placeholder { color: rgba(255,255,255,.33); }
#password-input:focus { border-color: rgba(255,255,255,.48); background: rgba(255,255,255,.14); }
#password-error { min-height:18px; font-size:12px; color:#ff8f8f; }
#password-btn {
  width:100%; height:44px; border:none; border-radius:12px; background:var(--btn); color:var(--btn-text); font-size:15px; font-weight:700; cursor:pointer;
}
#password-btn:hover { filter: brightness(.98); }
#app-frame {
  position:fixed; inset:0; width:100%; height:100%; border:none; display:none; background:#fff;
}
