/* دور ۷ (C8) — ثبت‌نام چندمرحله‌ای */
body[data-page="join"]{--pg-accent:255,216,154;--pg-accent2:124,184,245;}
.jn-page{display:flex;justify-content:center;align-items:flex-start;min-height:calc(100vh - 80px);}
.jn-card{width:min(520px,100%);border-radius:28px;padding:28px;background:rgba(8,14,26,.45) !important;margin-top:10px;}
.jn-top h1{margin:6px 0 14px;font-size:1.6rem;font-weight:900;}
.jn-steps{list-style:none;margin:0 0 8px;padding:0;display:flex;justify-content:space-between;gap:4px;font-size:.66rem;color:var(--pg-sub);counter-reset:s;}
.jn-steps li{flex:1;text-align:center;position:relative;padding-top:26px;}
.jn-steps li::before{counter-increment:s;content:counter(s);position:absolute;top:0;left:50%;transform:translateX(-50%);width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.08);font:700 .7rem 'Sora',sans-serif;color:#cfd9e4;transition:all .3s;}
.jn-steps li.on{color:#fff;}
.jn-steps li.on::before{background:linear-gradient(135deg,#ffd89a,#7cb8f5);color:#0a1220;}
.jn-steps li.done::before{content:"✓";background:#26c281;color:#fff;}
.jn-bar{height:4px;border-radius:4px;background:rgba(255,255,255,.08);overflow:hidden;margin-bottom:22px;}
.jn-bar i{display:block;height:100%;background:linear-gradient(90deg,#ffd89a,#7cb8f5);transform-origin:right;transform:scaleX(.16);transition:transform .45s cubic-bezier(.22,.9,.32,1);}
.jn-step{display:none;flex-direction:column;gap:14px;}
.jn-step.on{display:flex;animation:jnin .4s cubic-bezier(.22,.9,.32,1);}
@keyframes jnin{from{opacity:0;transform:translateX(-14px)}to{opacity:1;transform:none}}
.jn-err{margin:0;min-height:1.2em;color:#ff9d8f;font-size:.85rem;}
.jn-hint{margin:0;color:#c9d2df;line-height:1.9;font-size:.9rem;}
.jn-hint a,.jn-alt a{color:#9fe0ff;}
.jn-alt{text-align:center;color:var(--pg-sub);font-size:.85rem;margin:0;}
.jn-otp{display:flex;gap:8px;justify-content:center;}
.jn-otp input{width:48px;height:58px;text-align:center;font:700 1.4rem 'Sora',sans-serif;border-radius:14px;border:1px solid rgba(196,214,232,.25);background:rgba(0,0,0,.3);color:#fff;}
.jn-otp input:focus{outline:none;border-color:#ffd89a;box-shadow:0 0 0 3px rgba(255,216,154,.2);}
.jn-otp.shake{animation:jnshake .45s;}
@keyframes jnshake{20%,60%{transform:translateX(-6px)}40%,80%{transform:translateX(6px)}}
.jn-dev{margin:0;text-align:center;font-size:.78rem;color:#ffd89a;background:rgba(255,216,154,.08);padding:8px;border-radius:10px;}
.jn-row{display:flex;gap:10px;justify-content:space-between;}
.jn-row > *{flex:1;}
.jn-pass{position:relative;}
.jn-pass input{width:100%;}
.jn-pass button{position:absolute;left:10px;top:50%;transform:translateY(-50%);border:0;background:none;color:#cfd9e4;cursor:pointer;}
.jn-meter{display:flex;align-items:center;gap:10px;font-size:.8rem;}
.jn-meter-bar{flex:1;height:8px;border-radius:8px;background:rgba(255,255,255,.08);overflow:hidden;}
.jn-meter-bar i{display:block;height:100%;width:100%;transform-origin:right;transform:scaleX(0);transition:transform .3s,background .3s;background:#ff5b5b;}
.jn-rules{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:6px;font-size:.78rem;color:var(--pg-sub);}
.jn-rules li::before{content:"○ ";}
.jn-rules li.ok{color:#7ef0b8;}
.jn-rules li.ok::before{content:"✓ ";}
.jn-interests{display:flex;flex-wrap:wrap;gap:8px;}
.jn-interests label{cursor:pointer;}
.jn-interests input{position:absolute;opacity:0;}
.jn-interests span{display:inline-block;padding:9px 14px;border-radius:999px;border:1px solid rgba(196,214,232,.2);font-size:.86rem;transition:all .2s;}
.jn-interests input:checked + span{background:linear-gradient(90deg,rgba(255,216,154,.3),rgba(124,184,245,.3));border-color:#ffd89a;color:#fff;}
.jn-interests input:focus-visible + span{outline:2px solid #fff;}
.jn-switch{display:flex;gap:12px;align-items:flex-start;cursor:pointer;padding:14px;border-radius:16px;background:rgba(255,255,255,.04);}
.jn-switch input{position:absolute;opacity:0;}
.jn-switch > span{flex-shrink:0;width:46px;height:26px;border-radius:26px;background:rgba(255,255,255,.15);position:relative;transition:background .25s;}
.jn-switch > span::after{content:"";position:absolute;top:3px;right:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .25s;}
.jn-switch input:checked + span{background:#26c281;}
.jn-switch input:checked + span::after{transform:translateX(-20px);}
.jn-switch small{display:block;color:var(--pg-sub);font-size:.78rem;margin-top:3px;line-height:1.7;}
.jn-terms{font-size:.86rem;display:flex;gap:8px;align-items:center;}
.jn-terms a{color:#9fe0ff;}
.jn-done{text-align:center;align-items:center;}
.jn-check{width:76px;height:76px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;background:#26c281;color:#fff;box-shadow:0 0 0 10px rgba(38,194,129,.15);animation:jnpop .6s cubic-bezier(.34,1.56,.64,1);}
@keyframes jnpop{from{transform:scale(.3);opacity:0}}
@media (max-width:480px){.jn-card{padding:20px 16px;}.jn-otp input{width:42px;height:52px;}.jn-steps{font-size:.58rem;}}
@media (prefers-reduced-motion:reduce){.jn-step.on,.jn-check,.jn-otp.shake{animation:none;}}
