body:has(.sc-dialog[open]){overflow:hidden}
.sc-dialog{box-sizing:border-box;padding:0;width:min(920px,calc(100vw - 64px));height:min(820px,88dvh);max-width:none;max-height:none;border:1px solid #ffffff14;border-radius:32px;background:#16171a;color:#f5f5f7;box-shadow:0 40px 140px #0008;font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",sans-serif;overflow:hidden}
.sc-dialog::backdrop{background:#060709a8;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.sc-card{box-sizing:border-box;height:100%;padding:32px 40px;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:24px;position:relative;overflow:hidden;background:linear-gradient(155deg,#ffffff03,transparent 55%)}
.sc-card header{display:flex;align-items:center;justify-content:space-between;gap:20px}.sc-brand{display:block;width:172px;height:auto;max-height:32px;object-fit:contain}.sc-dialog .sc-close{display:grid;place-items:center;flex:none;width:40px;height:40px;min-height:40px;margin:0;padding:0;border:0;border-radius:50%;background:#ffffff0a;color:#b1b1b8;font:300 28px/1 -apple-system,BlinkMacSystemFont,sans-serif;cursor:pointer;transition:background .2s,color .2s}.sc-close:hover{background:#ffffff15;color:#fff}
.sc-progress{width:100%;max-width:640px;margin:0 auto}.sc-progress-copy{display:flex;align-items:center;justify-content:space-between;gap:16px;color:#a1a1aa;font-size:14px;font-weight:400}.sc-progress-copy strong{font-size:15px;font-weight:600;color:#f5f5f7;font-variant-numeric:tabular-nums}.sc-progress-copy strong span{color:#8e8e98;font-weight:400}.sc-track{height:4px;background:#ffffff0b;border-radius:8px;margin-top:14px;overflow:hidden}.sc-track>span{display:block;height:100%;background:#ef3348;border-radius:8px;transition:width .85s cubic-bezier(.22,1,.36,1)}
.sc-stage{position:relative;display:grid;place-items:center;min-height:0;overflow:hidden}.sc-recipient{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;min-width:0;text-align:center;will-change:transform,opacity}.sc-outgoing{position:absolute;inset:0;pointer-events:none}.sc-hero{position:relative;margin:0 0 32px}.sc-logo{display:grid;place-items:center;box-sizing:border-box;width:clamp(170px,32dvh,300px);height:clamp(170px,32dvh,300px);border:1px solid #fff1;border-radius:26%;background:#fafafa;color:#e52636;font-size:64px;font-weight:650;letter-spacing:-.06em;box-shadow:0 24px 60px #0003;overflow:hidden}.sc-logo img{display:block;width:78%;height:78%;object-fit:contain}.sc-stamp{position:absolute;right:-9px;bottom:-9px;display:grid;place-items:center;width:46px;height:46px;box-sizing:content-box;border:6px solid #16171a;border-radius:50%;background:#303136;color:#fff}.sc-stamp svg{display:block;width:25px;height:25px;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.is-confirmed .sc-stamp,.is-success .sc-stamp{background:#30b887}.is-confirmed .sc-stamp{animation:sc-confirm .7s cubic-bezier(.16,1,.3,1) both}.is-confirmed .sc-stamp path{stroke-dasharray:30;stroke-dashoffset:30;animation:sc-check .42s .2s ease-out forwards}
.sc-stage h2{max-width:100%;margin:0;padding:0 16px;color:#f5f5f7;font-size:clamp(23px,2.6vw,32px);font-weight:600;letter-spacing:-.035em;line-height:1.2;text-wrap:balance;overflow-wrap:anywhere}.sc-school{max-width:90%;margin:12px 0 0;color:#9898a2;font-size:14px;font-weight:400;line-height:1.45;text-wrap:balance;overflow-wrap:anywhere}.sc-test-note{margin:10px 0 0;color:#777781;font-size:12px;line-height:1.4}
.sc-card footer{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px}.sc-next{display:flex;align-items:center;gap:9px;min-width:0}.sc-logo.sc-logo-small{width:36px;height:36px;border-radius:10px;font-size:12px;letter-spacing:-.03em;box-shadow:none;opacity:.65}.sc-dialog .sc-continue{flex:none;width:auto;min-height:44px;margin:0;padding:10px 18px;border:0;border-radius:999px;background:#ffffff0a;color:#dedee3;font:500 13px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer;transition:background .2s}.sc-continue:hover{background:#ffffff14}.sc-announcement{position:absolute;width:1px;height:1px;margin:0;overflow:hidden;clip-path:inset(50%)}.sc-dialog button:focus-visible{outline:2px solid #b8b8c1;outline-offset:4px}
@keyframes sc-confirm{0%{opacity:0;transform:scale(.55)}70%{opacity:1;transform:scale(1.07)}100%{opacity:1;transform:scale(1)}}@keyframes sc-check{to{stroke-dashoffset:0}}
@media(max-width:767px),(pointer:coarse) and (max-height:500px){.sc-dialog{position:fixed;inset:0;width:100vw;height:100dvh;margin:0;border:0;border-radius:0}.sc-card{padding:calc(20px + env(safe-area-inset-top)) 24px calc(16px + env(safe-area-inset-bottom));gap:22px}.sc-brand{width:145px;max-height:24px}.sc-progress-copy{font-size:13px}.sc-progress-copy strong{font-size:13px}.sc-hero{margin-bottom:28px}.sc-logo{width:clamp(140px,32dvh,260px);height:clamp(140px,32dvh,260px)}.sc-stage h2{font-size:26px;padding:0}.sc-school{font-size:13px;max-width:100%}.sc-logo.sc-logo-small{width:32px;height:32px;font-size:11px}.sc-next{gap:7px}.sc-next .sc-logo-small:nth-child(n+5){display:none}}
@media(max-height:650px){.sc-card{gap:14px;padding-top:18px;padding-bottom:18px}.sc-logo{width:clamp(96px,27dvh,180px);height:clamp(96px,27dvh,180px)}.sc-logo.sc-logo-small{width:28px;height:28px}.sc-hero{margin-bottom:18px}.sc-stage h2{font-size:22px}.sc-school{margin-top:8px;font-size:12px}.sc-stamp{width:34px;height:34px;border-width:4px}.sc-stamp svg{width:20px;height:20px}}
@media(prefers-reduced-motion:reduce){.sc-dialog *{animation:none!important;transition:none!important}.sc-recipient{will-change:auto}.is-confirmed .sc-stamp path{stroke-dashoffset:0}}
