.modal-overlay{z-index:200;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:radial-gradient(at 50% 30%,#00d4aa0f 0%,#0000 55%),#0d1a18e0;justify-content:center;align-items:center;padding:20px;animation:.35s modalFadeIn;display:flex;position:fixed;inset:0}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.96)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal{background:linear-gradient(168deg,#132622 0%,#0d1a18 42%,#0a1412 100%);border:1px solid #00d4aa24;border-radius:28px;width:100%;max-height:90vh;padding:32px 36px 36px;animation:.4s cubic-bezier(.22,1,.36,1) modalSlideIn;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff12,0 0 0 1px #0003,0 32px 90px #000000a6,0 0 80px #00d4aa0d}.modal-body{z-index:2;position:relative;overflow:hidden}.modal-ambient{z-index:0;border-radius:inherit;pointer-events:none;background:radial-gradient(80% 50% at 50% -10%,#00d4aa1f 0%,#0000 60%),radial-gradient(60% 40% at 100% 100%,#00b4960f 0%,#0000 50%);position:absolute;inset:0}.modal-shine{z-index:1;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,#ffffff0a 0%,#0000 40% 60%,#00d4aa05 100%);animation:6s ease-in-out infinite modalShine;position:absolute;inset:0}@keyframes modalShine{0%,to{opacity:.6}50%{opacity:1}}.modal--default{max-width:520px}.modal--payment{text-align:center;max-width:480px}.modal--receipt{max-width:520px}.modal::-webkit-scrollbar{width:4px}.modal::-webkit-scrollbar-track{background:0 0}.modal::-webkit-scrollbar-thumb{background:#00d4aa4d;border-radius:4px}.modal-close{z-index:3;color:#8aaaa2;cursor:pointer;background:#ffffff0a;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:background .3s,color .3s,transform .3s;display:flex;position:absolute;top:16px;right:16px}.modal-close:hover{color:#fff;background:#ffffff14;transform:rotate(90deg)}.modal-header{margin-bottom:24px;padding-right:32px}.modal-header h2{letter-spacing:-.3px;color:#fff;margin:0 0 4px;font-size:24px;font-weight:700}.modal-header p{color:#8aaaa2;margin:0;font-size:14px}.login-form-group{margin-bottom:24px}.login-form-group label{letter-spacing:.2px;color:#b0ccc6;margin-bottom:6px;font-size:13px;font-weight:600;display:block}.login-form-input{color:#fff;background:#ffffff0a;border:1px solid #ffffff0f;border-radius:12px;outline:none;width:100%;padding:12px 16px;font-size:15px;transition:border-color .45s cubic-bezier(.22,1,.36,1),background .45s cubic-bezier(.22,1,.36,1),box-shadow .45s cubic-bezier(.22,1,.36,1),color .35s}.login-form-input:focus{background:#ffffff0f;border-color:#00d4aa4d;box-shadow:0 0 0 3px #00d4aa0d}.login-form-input::placeholder{color:#4a6a62}.login-input-wrap{border-radius:12px;transition:box-shadow .5s cubic-bezier(.22,1,.36,1);position:relative}.login-input-wrap--generating{animation:2.4s ease-in-out infinite inputGenPulse}.login-input-wrap--generating .token-gen-matrix{animation:.6s cubic-bezier(.22,1,.36,1) forwards matrixWrapFadeIn}@keyframes matrixWrapFadeIn{0%{opacity:0}to{opacity:.35}}@keyframes inputGenPulse{0%,to{box-shadow:0 0 #00d4aa00}50%{box-shadow:0 0 0 1px #00d4aa2e,0 0 28px #00d4aa1a}}.login-form-input--generating{color:#00d4aa;letter-spacing:.5px;background:#00d4aa0a;border-color:#00d4aa33;font-family:ui-monospace,Cascadia Code,Source Code Pro,Menlo,monospace;font-weight:600;box-shadow:inset 0 0 20px #00d4aa0a}.token-gen-progress{z-index:3;opacity:0;background:#00d4aa14;border-radius:0 0 12px 12px;height:2px;animation:.4s cubic-bezier(.22,1,.36,1) forwards progressTrackIn;position:absolute;bottom:0;left:0;right:0;overflow:hidden}@keyframes progressTrackIn{0%{opacity:0}to{opacity:1}}.token-gen-progress-bar{width:100%;height:100%;transform:scaleX(var(--gen-progress,0));transform-origin:0;will-change:transform;background:linear-gradient(90deg,#00b894,#00d4aa,#00e5b0,#00d4aa) 0 0/200% 100%;transition:transform .5s cubic-bezier(.22,1,.36,1);animation:2s ease-in-out infinite progressShimmer;box-shadow:0 0 10px #00d4aa73}@keyframes progressShimmer{0%,to{background-position:0%}50%{background-position:100%}}.token-gen-matrix{z-index:1;opacity:.35;pointer-events:none;border-radius:12px;position:absolute;inset:0;overflow:hidden}.token-gen-matrix-col{color:#00d4aa80;white-space:nowrap;flex-direction:column;gap:3px;font-family:Courier New,ui-monospace,monospace;font-size:9px;font-weight:500;line-height:1.1;animation:ease-in-out infinite tokenMatrixFall;display:flex;position:absolute;top:-100%}.token-gen-matrix-col span{opacity:0;animation:.65s cubic-bezier(.22,1,.36,1) forwards tokenMatrixFade;display:block}@keyframes tokenMatrixFall{0%{opacity:0;transform:translateY(0)}12%{opacity:.7}88%{opacity:.7}to{opacity:0;transform:translateY(calc(100% + 80px))}}@keyframes tokenMatrixFade{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.login-form-hint{color:#4a6a62;margin-top:6px;font-size:12px;transition:color .4s cubic-bezier(.22,1,.36,1),opacity .4s cubic-bezier(.22,1,.36,1)}.login-form-hint--generating{color:#00d4aaa6}.login-form-actions{gap:12px;display:flex}.login-btn-generate{color:#00d4aa;cursor:pointer;background:#00d4aa14;border:1px solid #00d4aa1f;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:8px;padding:12px 20px;font-size:15px;font-weight:700;transition:background .3s,border-color .3s,transform .3s;display:flex}.login-btn-generate:hover:not(:disabled){background:#00d4aa26;border-color:#00d4aa40;transform:translateY(-1px)}.login-btn-generate:disabled{opacity:.7;cursor:not-allowed}.login-btn-generate--active{background:#00d4aa24;border-color:#00d4aa4d;transition:background .4s cubic-bezier(.22,1,.36,1),border-color .4s cubic-bezier(.22,1,.36,1),box-shadow .4s cubic-bezier(.22,1,.36,1);box-shadow:0 0 20px #00d4aa1a}.login-btn-spinner{animation:1s cubic-bezier(.45,.05,.55,.95) infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.login-btn-submit{color:#0d1a18;cursor:pointer;background:#00d4aa;border:none;border-radius:12px;flex:1;padding:12px 20px;font-size:15px;font-weight:700;transition:background .3s,transform .3s,box-shadow .3s}.login-btn-submit:hover:not(:disabled){background:#00b894;transform:translateY(-1px);box-shadow:0 4px 20px #00d4aa40}.login-btn-submit:disabled{opacity:.3;cursor:not-allowed;transform:none}.token-area-wrapper{grid-template-rows:0fr;transition:grid-template-rows .7s cubic-bezier(.22,1,.36,1);display:grid}.token-area-wrapper--open{grid-template-rows:1fr}.token-area-wrapper-inner{min-height:0;overflow:hidden}.token-area{background:#00d4aa0a;border:1px solid #00d4aa14;border-radius:16px;margin-top:20px;padding:16px 18px 18px;position:relative;overflow:hidden}.token-area--revealed{animation:.75s cubic-bezier(.22,1,.36,1) forwards tokenAreaReveal}.token-area--revealed .token-area-item{animation:.6s cubic-bezier(.22,1,.36,1) backwards tokenItemIn}.token-area--revealed .token-header{animation-delay:.1s}.token-area--revealed .token-row{animation-delay:.2s}.token-area--revealed .token-actions{animation-delay:.3s}.token-area--revealed .email-form{animation-delay:.4s}.token-area-glow{pointer-events:none;background:radial-gradient(at 50% 0,#00d4aa26 0%,#0000 65%);animation:2.4s cubic-bezier(.22,1,.36,1) forwards tokenGlowPulse;position:absolute;inset:-20%}@keyframes tokenAreaReveal{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}@keyframes tokenItemIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes tokenGlowPulse{0%{opacity:0;transform:scale(.85)}35%{opacity:1}to{opacity:.35;transform:scale(1.08)}}.token-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.token-label{color:#b0ccc6;align-items:center;gap:6px;font-size:13px;font-weight:600;display:flex}.token-label-icon{color:#00d4aa;animation:2s ease-in-out infinite tokenIconSparkle}@keyframes tokenIconSparkle{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.15)}}.token-status{color:#00d4aa;background:#00d4aa1a;border-radius:40px;padding:2px 12px;font-size:11px;font-weight:600;animation:.5s cubic-bezier(.22,1,.36,1) .2s backwards tokenStatusPop}@keyframes tokenStatusPop{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.token-row{align-items:center;gap:8px;display:flex}.token-input{color:#00d4aa;letter-spacing:.5px;-webkit-user-select:all;user-select:all;background:#ffffff08;border:1px solid #ffffff0d;border-radius:10px;outline:none;flex:1;padding:10px 14px;font-family:ui-monospace,Cascadia Code,Source Code Pro,Menlo,monospace;font-size:14px;font-weight:600}.token-input::selection{background:#00d4aa33}.token-copy{color:#8aaaa2;cursor:pointer;background:#ffffff0a;border:1px solid #ffffff0f;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:39px;height:39px;padding:8px 12px;transition:background .3s,color .3s,border-color .3s;display:flex}.token-copy:hover{color:#00d4aa;background:#00d4aa14;border-color:#00d4aa26}.token-copy--copied{color:#00d4aa;background:#00d4aa1a}.token-actions{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.token-action-btn{color:#8aaaa2;cursor:pointer;background:#ffffff08;border:1px solid #ffffff0d;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;min-width:120px;padding:9px 16px;font-size:13px;font-weight:500;transition:background .3s,color .3s,border-color .3s;display:flex}.token-action-btn:hover{color:#b0ccc6;background:#00d4aa0f;border-color:#00d4aa14}.email-form{border-top:1px solid #ffffff0a;margin-top:12px;padding-top:12px;animation:.3s modalSlideIn}.email-row{gap:8px;display:flex}.email-input{color:#fff;background:#ffffff08;border:1px solid #ffffff0d;border-radius:10px;outline:none;flex:1;padding:10px 14px;font-size:14px;transition:border-color .3s,background .3s}.email-input:focus{background:#ffffff0d;border-color:#00d4aa33}.email-input::placeholder{color:#4a6a62}.email-send-btn{color:#0d1a18;white-space:nowrap;cursor:pointer;background:#00d4aa;border:none;border-radius:10px;padding:10px 20px;font-size:14px;font-weight:700;transition:background .3s,transform .3s}.email-send-btn:hover{background:#00b894;transform:translateY(-1px)}.email-status{text-align:center;color:#8aaaa2;margin-top:8px;font-size:13px}.email-status--success{color:#00d4aa}.email-status--error{color:#e76777}@media (max-width:600px){.modal{border-radius:20px;padding:24px 20px 28px}.modal-header h2{font-size:20px}.login-form-actions{flex-direction:column}.login-btn-generate,.login-btn-submit{width:100%}.token-actions{flex-direction:column}.token-action-btn{width:100%}.email-row{flex-direction:column}.email-send-btn{width:100%}.modal-close{width:36px;height:36px;top:12px;right:12px}}
