#boot{position:fixed;inset:0;z-index:999;background:#000;
  color:#b9f7c4;font-size:clamp(11px,1.5vw,13.5px);line-height:1.55;
  padding:clamp(14px,4vw,48px);overflow:hidden;white-space:pre-wrap;
  transition:opacity .5s ease;}
#boot.fade-out{opacity:0;pointer-events:none;}
#bootLines{max-width:880px;margin:0 auto;}
.b-ok{color:#6bd47f;}.b-info{color:#7fb6e8;}.b-warn{color:#ffce6b;}.b-ts{color:#4a5568;}
.b-err{color:#ff5f56;}
#bootScanlines{position:absolute;inset:0;pointer-events:none;opacity:.04;}

#bootLoginBox{position:absolute;inset:0;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:12px;background:#000;
  animation:fadeUp .4s ease;}
@keyframes fadeUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.login-logo{width:96px;height:96px;border-radius:24px;
  background:linear-gradient(135deg,#5ee6d0,#d2a8ff);
  display:flex;align-items:center;justify-content:center;
  font-weight:800;font-size:32px;color:#0a0e14;margin-bottom:8px;}
.login-name{font-size:24px;font-weight:700;color:#f0f3f7;}
.login-role{font-size:13px;color:#5d6878;margin-bottom:10px;}
.login-field-wrap{display:flex;gap:0;border:1px solid #232b36;border-radius:9px;overflow:hidden;}
#loginPass,#lockPass{background:#10161f;border:none;padding:12px 16px;color:#f0f3f7;
  font-family:"JetBrains Mono",monospace;font-size:14px;outline:none;width:220px;}
#loginBtn,#lockBtn{background:#5ee6d0;color:#0a0e14;padding:12px 18px;font-weight:800;font-size:16px;
  cursor:pointer;transition:opacity .15s;}
#loginBtn:hover,#lockBtn:hover{opacity:.85;}
.login-hint{font-size:11px;margin-top:4px;}

#skipBoot{position:fixed;bottom:16px;right:16px;z-index:1000;
  background:transparent;border:1px solid #2c3a2f;color:#8fd3a0;
  font-family:"JetBrains Mono",monospace;font-size:11.5px;padding:5px 12px;
  border-radius:5px;cursor:pointer;transition:all .15s;}
#skipBoot:hover{background:#102015;border-color:#4a8a5e;}

/* widgets */
.progress-spinner{display:inline-block;width:14px;height:14px;border:2px solid var(--border2);
  border-top-color:var(--cyan);border-radius:50%;animation:spin .7s linear infinite;vertical-align:middle;}
@keyframes spin{to{transform:rotate(360deg)}}

/* lock screen */
#lockScreen{position:fixed;inset:0;z-index:998;background:#000;
  display:flex;align-items:center;justify-content:center;
  animation:fadeIn .5s ease;}
#lockScreen.hidden{display:none;}
#lockContent{display:flex;flex-direction:column;align-items:center;gap:12px;}
.lock-clock{font-size:72px;font-weight:800;color:#f0f3f7;letter-spacing:-2px;
  font-variant-numeric:tabular-nums;text-shadow:0 0 40px rgba(94,230,208,.15);}
.lock-date{font-size:16px;color:#5d6878;margin-bottom:20px;}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}

/* shutdown screen */
#shutdownScreen{position:fixed;inset:0;z-index:9999;background:#000;
  display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px;
  animation:fadeIn .8s ease;}
#shutdownScreen.hidden{display:none;}
.shutdown-content{display:flex;flex-direction:column;align-items:center;gap:16px;}
.shutdown-text{color:#5d6878;font-size:14px;}
.shutdown-final{color:#3a4250;font-size:13px;text-align:center;line-height:1.7;}

/* bios splash */
#biosSplash{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  background:#000;z-index:2;}
#biosSplash.hidden{display:none;}
.bios-logo{font-size:48px;font-weight:800;background:linear-gradient(135deg,#5ee6d0,#d2a8ff);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  animation:biosGlow 1.5s ease;}
@keyframes biosGlow{0%{opacity:0;transform:scale(.8)}50%{opacity:1;transform:scale(1.05)}100%{opacity:1;transform:scale(1)}}
