/* Stamp once, then keep the certificate visible until an intentional dismissal. */
.admission-reveal[hidden]{display:none!important}
.admission-reveal{position:fixed;inset:0;z-index:40;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:18px;overflow:hidden;background:rgba(3,10,18,.80);backdrop-filter:blur(7px);color:#20364b;isolation:isolate}
.admission-sheet{position:relative;flex:0 0 auto;width:min(400px,calc((100dvh - 112px)*.8),calc(100vw - 36px));aspect-ratio:4/5;background:#f5f1e7;border:1px solid #788e9c;box-shadow:0 18px 70px #0008;container-type:inline-size}
.admission-paper{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;pointer-events:none}
.admission-content{position:absolute;inset:14% 11% 7%;display:flex;flex-direction:column;text-align:center;font-family:var(--font-body,"Noto Sans KR",sans-serif)}
.admission-content .admission-academy{margin:0 0 2.5%;font-size:3cqw;line-height:1.4;letter-spacing:.24em;font-weight:700;color:#4f6679}
.admission-content h3{margin:0;font-family:var(--font-title,serif);font-weight:700;font-size:7.5cqw;line-height:1.4;letter-spacing:.13em;color:#1c3046}
.admission-rule{width:14%;height:1px;background:#4b718a;margin:5% auto}
.admission-content .admission-prologue{margin:0 0 5%;color:#52616e;font-size:2.8cqw;line-height:1.9;word-break:keep-all}
.admission-content dl{margin:0;text-align:left;border-top:1px solid #36516944}
.admission-content dl>div{display:grid;grid-template-columns:25% 1fr;align-items:center;gap:6%;padding:5% 0;border-bottom:1px solid #36516933}
.admission-content dt{font-size:3cqw;color:#536677;letter-spacing:.06em;white-space:nowrap}
.admission-content dd{margin:0;font-size:4.3cqw;font-weight:800;line-height:1.4;overflow-wrap:anywhere;color:#1b344d}
.admission-signature{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;flex:1;min-height:0;gap:5%;text-align:left;padding-right:28%;margin-top:5%}
.admission-signature>span:first-child{font-size:2.8cqw;color:#61707b}
.admission-signature strong{font-size:3.1cqw;font-weight:700;line-height:1.7;word-break:keep-all}
.admission-seal{position:absolute;right:0;bottom:0;width:25%;aspect-ratio:1;transform:rotate(-8deg)}
.admission-seal img{width:100%;height:100%;object-fit:contain;display:block;mix-blend-mode:multiply}
.admission-seal-fallback{display:none;color:#ac2928;border:3px solid currentColor;padding:5%;line-height:1;font-family:serif;font-size:9cqw;letter-spacing:.06em;text-align:center;font-weight:800}
.admission-seal.is-fallback img{display:none}.admission-seal.is-fallback .admission-seal-fallback{display:block}
.admission-below{display:flex;align-items:center;justify-content:space-between;gap:20px;width:min(400px,calc(100vw - 36px));color:#cbdce9}
.admission-welcome{font-size:12px;letter-spacing:.04em}
.admission-hint-touch{display:none}
.admission-reveal[data-stamped="true"]{cursor:pointer}
@media(pointer:coarse){.admission-hint-mouse{display:none}.admission-hint-touch{display:inline}}
.admission-skip{flex:0 0 auto;min-height:44px;padding:8px 13px;border:1px solid #90adc577;background:#142638;color:#fff;border-radius:4px;font:inherit;font-size:13px;cursor:pointer}
.admission-skip:hover{background:#243f56}.admission-skip:focus-visible{outline:2px solid #dcecff;outline-offset:4px}
.is-playing .admission-sheet{animation:admission-enter .5s cubic-bezier(.16,1,.3,1) both,admission-impact .22s .92s}
.is-playing .admission-content dl{animation:admission-ink .4s .25s both}
.is-playing .admission-seal{animation:admission-stamp .38s .72s cubic-bezier(.3,.2,.15,1) both}
.is-playing .admission-welcome{animation:admission-ink .4s 1.08s both}
@keyframes admission-enter{from{opacity:0;transform:translateY(36px) scale(.94) rotate(-2deg)}to{opacity:1;transform:none}}
@keyframes admission-ink{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@keyframes admission-stamp{0%{opacity:0;transform:scale(2.8) rotate(-20deg)}55%{opacity:1;transform:scale(.9) rotate(-8deg)}80%{transform:scale(1.04) rotate(-8deg)}100%{opacity:1;transform:scale(1) rotate(-8deg)}}
@keyframes admission-impact{0%,100%{transform:none}35%{transform:translateY(3px) rotate(.4deg)}65%{transform:translateY(-1px) rotate(-.2deg)}}
.admission-reveal.is-reduced,.admission-reveal.is-reduced *{animation:none!important}
@media(prefers-reduced-motion:reduce){.admission-reveal,.admission-reveal *{animation:none!important}}
@media(max-width:380px){.admission-below{justify-content:center;gap:9px}.admission-welcome{font-size:10px}.admission-skip{font-size:12px;padding-inline:9px}}
@media(max-height:520px){.admission-reveal{padding:8px;gap:6px}.admission-sheet{width:min(350px,calc((100dvh - 76px)*.8))}.admission-below{justify-content:center}.admission-welcome{display:none}}
