/* Shared by the startup screen and its design preview. */
.szyd-boot { position:fixed; inset:0; z-index:3000; display:grid; place-items:center; padding:24px; box-sizing:border-box; overflow:hidden; background:radial-gradient(ellipse at 28% 25%,#e0edff 0,transparent 50%),radial-gradient(ellipse at 78% 78%,#e5f4ff 0,transparent 48%),#f5f8fd; color:#244367; font-family:"Microsoft YaHei","PingFang SC",sans-serif; }
.szyd-boot-panel { text-align:center; width:min(100%,420px); }
.szyd-boot-mark { position:relative; display:grid; place-items:center; width:108px; height:108px; margin:0 auto 28px; border:1px solid #dce9fa; border-radius:50%; background:#ffffff80; box-shadow:0 16px 48px #427bc312,inset 0 0 0 10px #ffffff70; }
.szyd-boot-mark::before { content:""; position:absolute; inset:-1px; border:2px solid transparent; border-top-color:#4388f5; border-right-color:#a9d4ff; border-radius:50%; animation:szyd-orbit 2s linear infinite; }
.szyd-boot-mark img { width:44px; height:44px; object-fit:contain; }
.szyd-boot h1 { margin:0 0 14px; font-size:24px; line-height:1.5; font-weight:600; letter-spacing:1px; }
.szyd-boot-status { margin:0; font-size:14px; line-height:24px; color:#7187a3; }
.szyd-boot-track { width:160px; height:4px; margin:24px auto 0; background:#dfeafa; border-radius:8px; overflow:hidden; }
.szyd-boot-track::after { content:""; display:block; width:40%; height:100%; border-radius:8px; background:linear-gradient(90deg,#a6d4ff,#3984f5); animation:szyd-travel 1.8s ease-in-out infinite; }
.szyd-boot-footer { position:absolute; bottom:28px; left:24px; right:24px; text-align:center; font-size:12px; letter-spacing:2px; color:#8297b0; }
.szyd-boot button { margin-top:20px; padding:9px 24px; border:1px solid #bcd3f5; border-radius:9px; background:white; color:#2866cb; font:inherit; cursor:pointer; }
.szyd-boot button:focus-visible { outline:2px solid #4388f5; outline-offset:3px; }
.szyd-boot.is-error .szyd-boot-mark::before,.szyd-boot.is-error .szyd-boot-track { display:none; }
@keyframes szyd-orbit { to { transform:rotate(360deg); } }
@keyframes szyd-travel { 0% { transform:translateX(-100%); } 100% { transform:translateX(350%); } }
@media(max-width:480px) { .szyd-boot h1 {font-size:21px;} }
@media(prefers-reduced-motion:reduce) { .szyd-boot-mark::before,.szyd-boot-track::after {animation:none;} }
