.pre-entry-card{position:relative;overflow:hidden;border:1px solid #dbe8e8;background:linear-gradient(145deg,#fff 0%,#f6fbfa 100%);box-shadow:0 24px 60px rgba(10,63,72,.12);padding:clamp(24px,5vw,52px)}
.pre-entry-card:before{content:"";position:absolute;inset:-140px auto auto -120px;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(23,153,141,.15),transparent 68%);pointer-events:none}
.pre-entry-head{max-width:700px;margin:0 auto 28px;text-align:center;position:relative}
.entry-kicker{display:inline-flex;padding:7px 14px;border-radius:999px;background:#e6f6f3;color:#087268;font-weight:800;font-size:.88rem;margin-bottom:12px}
.pre-entry-head h2{font-size:clamp(1.7rem,4vw,2.6rem);line-height:1.25;margin:0 0 12px;color:#123b45}
.pre-entry-head p{margin:0 auto;color:#537079;max-width:620px;line-height:1.9}
.code-panel{max-width:650px;margin:0 auto 26px;padding:22px;border-radius:24px;background:#073e4d;color:#fff;text-align:center;box-shadow:0 16px 38px rgba(5,55,69,.22)}
.code-label{margin:0 0 10px;color:#ccece7;font-weight:700}
.code-save-row{display:flex;align-items:stretch;gap:10px;direction:ltr;justify-content:center}
.code-save-row .study-code{flex:1;display:grid;place-items:center;min-height:84px;margin:0;border:1px solid rgba(255,255,255,.23);border-radius:18px;background:rgba(255,255,255,.1);color:#fff;font-size:clamp(2rem,8vw,3.2rem);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.17em;padding-left:.17em}
.save-code-icon{width:84px;min-width:84px;margin:0!important;border-radius:18px!important;background:#f4c35b!important;color:#163943!important;box-shadow:none!important;font-size:2rem!important;display:grid!important;place-items:center!important;cursor:pointer}
.save-code-icon:hover{transform:translateY(-2px);filter:brightness(1.04)}
.code-helper{margin:13px 0 0;color:#d9efec;font-size:.93rem}
.code-save-status{min-height:1.6em;margin:7px 0 0;font-weight:700;font-size:.9rem}
.pre-entry-card .wizard-start{display:block;width:min(100%,650px);margin:0 auto;padding:17px 24px;font-size:1.08rem;font-weight:900;border-radius:16px}
.pre-entry-card .notice{max-width:650px;margin:14px auto 0;text-align:center;border-radius:14px}
@media(max-width:600px){.pre-entry-card{padding:22px 16px}.code-panel{padding:16px}.save-code-icon{width:64px;min-width:64px}.code-save-row .study-code{min-height:72px;letter-spacing:.1em;padding-left:.1em}}
