:root{--primary:#8A159B;--primary-dark:#5E0D73;--magenta:#D61CA8;--graphite:#2A2433;--gray:#6E6678;--mist:#E8E3EC;--white:#fff;--danger:#A61B3B;--success:#08734A;--warning:#7A5300;--shadow:0 28px 80px rgba(42,36,51,.16)}
*{box-sizing:border-box}html{font-size:16px}body{margin:0;color:var(--graphite);background:#f7f4f8;font-family:"Peyda","Vazirmatn",Tahoma,Arial,sans-serif;line-height:1.75}button,input,textarea{font:inherit}button{cursor:pointer}.auth-shell{min-height:100svh;display:grid;place-items:center;padding:24px;position:relative;overflow:hidden;background:radial-gradient(circle at 12% 8%,rgba(214,28,168,.13),transparent 28%),radial-gradient(circle at 92% 92%,rgba(94,13,115,.14),transparent 30%),#f8f5f9}.auth-brand span{position:absolute;border:1px solid rgba(138,21,155,.13);border-radius:50%;pointer-events:none}.auth-brand span:first-child{width:520px;height:520px;left:-260px;top:-180px}.auth-brand span:last-child{width:420px;height:420px;right:-220px;bottom:-180px}.auth-card{width:min(100%,620px);background:rgba(255,255,255,.98);border:1px solid rgba(138,21,155,.11);border-radius:24px;padding:32px;box-shadow:var(--shadow);position:relative;z-index:1}.auth-header{display:flex;align-items:center;gap:18px;margin-bottom:24px}.auth-header.compact{margin-bottom:10px}.auth-header img{width:160px;height:160px;object-fit:contain;flex:none}.eyebrow{color:var(--primary);font-size:.84rem;font-weight:700}.auth-header h1{font-size:1.65rem;line-height:1.4;margin:2px 0 0}.partner-notice{background:#f8f1fa;border:1px solid rgba(138,21,155,.16);border-right:4px solid var(--primary);border-radius:16px;padding:18px;margin-bottom:24px}.partner-notice strong{display:block;color:var(--primary-dark);margin-bottom:4px}.partner-notice p{margin:0;color:#514958;font-size:.92rem}.auth-step{border-top:1px solid var(--mist);padding-top:22px;margin-top:22px}.step-heading{display:flex;gap:12px;align-items:flex-start;margin-bottom:16px}.step-heading>span{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:var(--primary-dark);color:var(--white);font-weight:700;flex:none}.step-heading h2{font-size:1.1rem;line-height:1.5;margin:2px 0}.step-heading p{font-size:.82rem;color:var(--gray);margin:2px 0}.auth-form{display:grid;gap:9px}.auth-form label{font-size:.86rem;font-weight:700}.auth-form input,.auth-form textarea{width:100%;min-height:48px;border:1px solid #cec6d2;border-radius:10px;padding:10px 13px;background:#fff;color:var(--graphite);outline:none}.auth-form textarea{resize:vertical}.auth-form input:focus,.auth-form textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(138,21,155,.12)}.auth-form input::placeholder,.auth-form textarea::placeholder{color:#978e9d}.registration-form{grid-template-columns:1fr 1fr;gap:12px}.registration-form>div{display:grid;gap:6px}.registration-form .full{grid-column:1/-1}.primary,.secondary{min-height:48px;margin-top:5px;border-radius:12px;padding:11px 18px;font-weight:700}.primary{border:0;background:var(--primary);color:#fff;box-shadow:0 10px 24px rgba(138,21,155,.2)}.primary:hover{background:var(--primary-dark)}.secondary{border:1px solid rgba(138,21,155,.25);background:#fff;color:var(--primary)}.primary:focus-visible,.secondary:focus-visible,.back-link:focus-visible,.link-button:focus-visible{outline:3px solid rgba(214,28,168,.28);outline-offset:3px}.otp{direction:ltr;text-align:center;letter-spacing:.25rem;font-size:1.2rem;font-weight:700}.message{display:flex;flex-direction:column;border-radius:12px;padding:13px 15px;margin:14px 0;font-size:.88rem;gap:2px}.message.error{background:#fff0f3;color:var(--danger);border:1px solid #f0c2cc}.message.pending{background:#fff8e8;color:var(--warning);border:1px solid #ecd59c}.message.info{background:#f4eef8;color:var(--primary-dark);border:1px solid #dbc9e3}.message.success{background:#eaf9f3;color:var(--success);border:1px solid #bfe8d8}.inline-action{margin-top:8px}.inline-action .secondary{width:100%}.resend-form{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:12px}.link-button{border:0;background:transparent;color:var(--primary);font-weight:700;padding:8px 10px}.link-button:disabled{color:#a79eaa;cursor:not-allowed}.resend-hint{color:var(--gray)}.back-link{display:block;text-align:center;color:var(--primary);font-weight:700;margin-top:20px;min-height:44px;padding:8px}.auth-footer{display:flex;justify-content:center;gap:18px;flex-wrap:wrap;color:var(--gray);font-size:.72rem;margin-top:24px}.auth-footer span:before{content:'✓';color:var(--primary);margin-left:5px}.review-card{max-width:680px}.review-state{text-align:center;border-top:1px solid var(--mist);padding-top:28px}.review-state h2{margin:12px 0 8px;font-size:1.3rem}.review-state p{margin:0 auto;max-width:560px;color:#514958}.hourglass{width:88px;height:88px;margin:0 auto;display:grid;place-items:center;border-radius:50%;background:#f6eef8}.hourglass svg{width:52px;height:52px;fill:none;stroke:var(--primary);stroke-width:4;stroke-linecap:round;animation:hourglass-turn 2.4s ease-in-out infinite}.review-progress{height:8px;border-radius:999px;background:#eee8f0;overflow:hidden;margin:24px auto 10px;max-width:420px}.review-progress i{display:block;height:100%;width:36%;background:var(--primary);border-radius:inherit;animation:review-progress 2.2s ease-in-out infinite}.review-state>small{display:block;color:var(--gray);margin-top:10px}.status-mark{width:66px;height:66px;margin:0 auto;border-radius:50%;display:grid;place-items:center;background:#fff0f3;color:var(--danger);font-size:2rem;font-weight:800}.ticket-box{margin:22px auto 0;text-align:right;max-width:520px;border:1px solid var(--mist);border-radius:14px;padding:14px 16px;background:#fff}.ticket-box summary{cursor:pointer;color:var(--primary);font-weight:700}.ticket-box[open] summary{margin-bottom:14px}@keyframes hourglass-turn{0%,42%{transform:rotate(0)}58%,100%{transform:rotate(180deg)}}@keyframes review-progress{0%{transform:translateX(180%)}50%{transform:translateX(-25%)}100%{transform:translateX(-180%)}}
@media(max-width:600px){.auth-shell{display:block;padding:0;background:#fff}.auth-brand{display:none}.auth-card{width:100%;min-height:100svh;border:0;border-radius:0;padding:24px 18px;box-shadow:none}.auth-header{justify-content:center;text-align:center;flex-direction:column;gap:4px;margin-bottom:18px}.auth-header img{width:160px;height:160px}.auth-header h1{font-size:1.4rem}.partner-notice{padding:15px}.registration-form{grid-template-columns:1fr}.registration-form .full{grid-column:auto}.auth-footer{padding-bottom:max(12px,env(safe-area-inset-bottom))}.review-state{padding-top:24px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.hourglass svg,.review-progress i{animation:none!important}}
