/* v63: leave the moon visible and make arrival feel like the same place. */
html .wallpaper-copy {
  left:34%; right:auto; top:clamp(32px,7vh,78px); width:max-content;
  max-width:calc(66vw - 32px); padding:0; aspect-ratio:auto;
  background:none; border:0; border-radius:0; backdrop-filter:none;
  align-items:flex-start; text-align:left; transform:none;
}
html[data-mode="night"] .wallpaper-copy { background:none; border:0; }
html .wallpaper-copy .wallpaper-kicker { font-size:8px; letter-spacing:.19em; }
html .wallpaper-copy .wallpaper-time {
  font-size:clamp(36px,3.5vw,52px); line-height:1.05; letter-spacing:-.035em;
  margin:9px 0 7px; font-weight:300; font-variant-numeric:tabular-nums;
}
html .wallpaper-copy .desktop-date { font-size:12px; line-height:1.6; letter-spacing:.035em; }
html .wallpaper-copy>p { display:none; }

.arrival-backdrop { position:fixed; inset:0; z-index:0; overflow:hidden; background:#14273d; pointer-events:none; }
.arrival-plate { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; transition:opacity 1100ms cubic-bezier(.4,0,.2,1); }
.arrival-day { opacity:1; }.arrival-night { opacity:0; }
html[data-mode="night"] .arrival-day { opacity:0; }
html[data-mode="night"] .arrival-night { opacity:1; }
.arrival-shade { position:absolute; inset:0; background:linear-gradient(90deg,#071d36b8 0%,#0d263c42 48%,#10243a08 78%),linear-gradient(0deg,#07192f70,transparent 45%); }
.arrival-signature { position:absolute; left:7.5vw; right:7.5vw; bottom:32px; display:flex; align-items:center; gap:14px; color:#e5eff5c9; font-size:9px; letter-spacing:.18em; }
.arrival-signature i { width:26px; height:1px; background:#f0f6fb50; }
html #desktop { z-index:1; }
html .boot-screen,html .login-screen { z-index:3; background:transparent; }
html .boot-screen {
  padding:64px 7.5vw 96px; align-items:flex-start; justify-content:center;
  color:#f2f7fb; gap:0; text-align:left;
}
html .boot-sky { display:none; }
html .boot-orbit { width:88px; margin:0 0 17px -7px; animation:arrival-content-in 620ms cubic-bezier(.22,1,.36,1) both; }
html .orbit-trace { animation:boot-trace 1500ms cubic-bezier(.3,.1,.2,1) both; }
html .boot-star { animation:boot-star-in 780ms cubic-bezier(.22,1,.36,1) both; }
html .boot-crescent { filter:none; }
html .boot-wordmark { margin:0; animation:arrival-content-in 620ms 70ms cubic-bezier(.22,1,.36,1) both; }
html .boot-eyebrow { color:#d3e3ee; font-size:9px; letter-spacing:.2em; }
html .boot-wordmark h1 { margin:20px 0 17px; font-size:clamp(38px,4.2vw,58px); font-weight:400; letter-spacing:.07em; color:#f5f8fc; line-height:1.15; }
html .boot-wordmark h1 span { font-family:inherit; font-size:.55em; letter-spacing:.03em; color:#c1d9e9; font-weight:300; }
html .boot-screen .boot-wordmark p { font-size:16px; color:#e1edf5; letter-spacing:.1em; line-height:1.7; }
.boot-welcome { margin-top:34px; width:250px; animation:arrival-content-in 580ms 140ms cubic-bezier(.22,1,.36,1) both; }
.boot-path { position:relative; display:block; width:100%; height:2px; border-radius:4px; background:#e9f4fb30; overflow:hidden; }
.boot-path i { display:block; width:100%; height:100%; background:linear-gradient(90deg,#a6c7dc,#e4f3fa); transform-origin:left; animation:arrival-path 1500ms cubic-bezier(.22,1,.36,1) both; }
html .boot-screen #boot-status { margin:14px 0 0; font-size:12px; color:#cbdde9; letter-spacing:.025em; line-height:1.6; }
html .boot-screen .boot-skip { margin:24px 0 0; min-height:44px; padding:11px 17px; border:1px solid #e0edf64f; border-radius:10px; background:#102f473b; color:#f0f6fc; font-size:12px; letter-spacing:.025em; animation:none; transition:background-color 150ms ease,border-color 150ms ease; display:flex; align-items:center; gap:24px; }
html .boot-screen .boot-skip:hover { background:#d9edf329; border-color:#f0f7fb9c; }
html .boot-screen .boot-skip:focus-visible { outline-color:#e8f3f8; }
html .boot-screen .boot-failure { position:fixed; bottom:18px; left:50%; width:min(600px,calc(100vw - 32px)); transform:translateX(-50%); margin:0; }

html .login-screen { display:grid; place-items:center start; padding:64px 7.5vw 90px; overflow-y:auto; }
html .login-panel { width:min(418px,100%); border-radius:22px; background:#f5f9fbed; border:1px solid #ffffffa3; box-shadow:0 22px 72px #04152e38; color:#28435b; animation:none; backdrop-filter:blur(14px); }
html .login-panel>.win-title { background:transparent; height:54px; border-bottom:1px solid #4c6b861f; border-radius:22px 22px 0 0; padding:0 24px; display:flex; justify-content:space-between; color:#36566e; font-size:12px; }
.login-caption { font-size:10px; color:#62798b; font-weight:400; }
html .login-body { padding:28px 27px 12px; grid-template-columns:58px minmax(0,1fr); column-gap:15px; }
html .login-avatar { width:56px; height:62px; border-radius:17px; background:#e4edf4; border:1px solid #6c87992b; box-shadow:0 4px 10px #284f6b0c; }
html .login-avatar img { object-fit:cover; object-position:50% 25%; }
.login-copy h1 { margin:0 0 8px; color:#29475e; font-size:25px; line-height:1.2; letter-spacing:.025em; font-weight:500; }
html .login-copy p { margin:0; color:#58758b; font-size:12px; line-height:1.6; overflow-wrap:anywhere; }
html .login-copy small { display:none; }
html .login-body form { margin-top:28px; }
html .login-body label { margin-bottom:11px; font-size:12px; color:#36556e; font-weight:500; line-height:1.6; }
html .pin-row { display:grid; grid-template-columns:minmax(0,1fr); gap:12px; }
html .pin-row input { height:49px; border:1px solid #5d7f972b; border-radius:10px; background:#ffffffdb; padding:7px 15px; color:#25465e; font-size:21px; box-shadow:inset 0 1px 3px #30577505; }
html .pin-row input::placeholder { font-size:12px; color:#71899b; letter-spacing:.04em; }
html .pin-row input:focus-visible { outline:2px solid #668ca9; outline-offset:2px; border-color:#668ca9; box-shadow:none; }
html .login-body .win-button.primary { min-height:47px; border-radius:10px; border-color:#426f8b; background:#426f8b; color:#fff; font-size:13px; display:flex; align-items:center; justify-content:center; gap:20px; font-weight:500; }
html .login-body .win-button.primary:hover { background:#365f7b; border-color:#365f7b; }
html #pin-help { margin-top:14px; font-size:11px; line-height:1.8; color:#607b90; }
html .login-body .error { color:#a54844; min-height:17px; font-size:12px; line-height:1.6; margin:9px 0 0; }
html .login-body .forgot-pin { background:#e8eff4; color:#4c6b80; border-color:#668ca333; min-height:40px; margin-top:8px; }
html .login-foot { padding:15px 26px; border-color:#456b8c1c; font-size:10px; color:#607d91; letter-spacing:.015em; display:flex; align-items:center; gap:9px; }
.login-status-dot { width:5px; height:5px; border-radius:50%; background:#739f95; flex:none; }
@keyframes arrival-content-in { from { opacity:0; transform:translateY(6px); } to { opacity:1; transform:translateY(0); } }
@keyframes arrival-path { from { transform:scaleX(0); } to { transform:scaleX(1); } }
html[data-motion="reduced"] #boot .orbit-trace { stroke-dashoffset:0; }

@media(max-width:650px) {
  html .wallpaper-copy { left:auto; right:20px; top:29px; width:158px; max-width:calc(100vw - 130px); padding:14px 16px; border:1px solid #ffffff70; border-radius:16px; background:#eef6fcd6; backdrop-filter:blur(10px); }
  html[data-mode="night"] .wallpaper-copy { background:#142841bf; border:1px solid #d2e6ff24; }
  html .wallpaper-copy .wallpaper-kicker { font-size:7px; letter-spacing:.09em; }
  html .wallpaper-copy .wallpaper-time { font-size:39px; margin-top:7px; }
  html .wallpaper-copy .desktop-date { font-size:10px; }
  html .boot-screen { padding:50px 30px 95px; }
  html .boot-orbit { width:74px; margin-bottom:15px; }
  html .boot-wordmark h1 { font-size:43px; }
  html .boot-screen .boot-wordmark p { font-size:14px; }
  .boot-welcome { width:225px; margin-top:28px; }
  html .login-screen { padding:32px 20px 70px; place-items:center; }
  html .login-panel { width:min(390px,100%); }
  html .login-panel>.win-title { padding-inline:21px; }
  html .login-body { padding:26px 23px 10px; }
  .arrival-signature { left:30px; right:30px; bottom:24px; font-size:8px; letter-spacing:.12em; }
}
@media(max-height:520px) {
  html .wallpaper-copy { top:23px; }
  html .wallpaper-copy .wallpaper-time { font-size:36px; margin-top:6px; }
  html .wallpaper-copy .wallpaper-kicker { display:none; }
  html .boot-screen { padding:25px 7.5vw 48px; }
  html .boot-orbit { width:44px; margin-bottom:8px; }
  html .boot-wordmark h1 { font-size:35px; margin:12px 0 9px; }
  html .boot-screen .boot-wordmark p { font-size:13px; }
  .boot-welcome { margin-top:18px; }
  html .boot-screen .boot-skip { margin-top:13px; }
  .arrival-signature { bottom:16px; font-size:8px; }
  html .login-screen { padding:24px 7.5vw 52px; place-items:start; }
}
@supports not (backdrop-filter:blur(1px)) { html .login-panel { background:#f3f7fa; } }
