*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:#060D19;color:#F8FBFF;font-family:system-ui,'Malgun Gothic',sans-serif}main{min-height:100dvh;display:grid;place-items:center;padding:20px}.card{width:min(100%,700px);padding:40px;border-radius:28px;background:linear-gradient(145deg,#0D203E,#0C1930);border:1px solid #223A58;box-shadow:0 24px 70px #0005;text-align:center}.brand{display:flex;align-items:center;justify-content:center;gap:20px}.brand img{width:108px;height:108px;object-fit:contain}.brand strong{display:block;font-size:28px}.brand span{display:block;font-size:12px;letter-spacing:2px;color:#C6D4E4;margin-top:9px}.spinner{width:58px;height:58px;border:4px solid #304961;border-top-color:#46A3FF;border-radius:50%;margin:28px auto 24px;animation:spin 1s linear infinite}h1{font-size:32px;line-height:1.4;margin:0 0 16px;word-break:keep-all}.subtitle{color:#C6D4E4;font-size:17px;line-height:1.7;word-break:keep-all;margin:0}.progress{height:9px;overflow:hidden;background:#304961;border-radius:9px;margin:30px 0 20px}.progress span{display:block;width:35%;height:100%;border-radius:9px;background:#46A3FF;animation:slide 1.8s ease-in-out infinite}#status,#detail{font-size:15px;color:#C6D4E4;line-height:1.7;word-break:keep-all}#actions{display:flex;justify-content:center;gap:12px;margin:20px 0}button,a{font:inherit;padding:12px 20px;border:1px solid #46A3FF;border-radius:12px;text-decoration:none;color:#F8FBFF;background:#193551;cursor:pointer}button{background:#226caf}.notice{background:#193551;border-radius:16px;padding:18px;margin-top:28px;line-height:1.6;font-size:16px;word-break:keep-all}.notice span{color:#6CE4B5;font-size:21px;margin-right:10px}.stopped .spinner,.stopped .progress span{animation:none}@keyframes spin{to{transform:rotate(360deg)}}@keyframes slide{from{transform:translateX(-110%)}to{transform:translateX(390%)}}@media(max-width:600px){main{padding:16px}.card{padding:26px 22px;border-radius:24px}.brand{gap:12px}.brand img{width:78px;height:78px}.brand strong{font-size:23px}.brand span{font-size:10px;letter-spacing:1px}h1{font-size:25px}.subtitle{font-size:16px}.spinner{margin-top:28px}.notice{font-size:14px;padding:16px}}@media(prefers-reduced-motion:reduce){.spinner,.progress span{animation:none}}