.fn2-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--overlay-bg);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;opacity:0;visibility:hidden;transition:opacity .4s cubic-bezier(.4, 0, .2, 1),visibility .4s cubic-bezier(.4, 0, .2, 1);padding:2rem}.fn2-modal-overlay.active{opacity:1;visibility:visible}.fn2-modal{background:var(--page-bg-alt);border:1px solid var(--border-light);border-radius:12px;width:100%;max-width:720px;height:min(700px,90vh);display:flex;flex-direction:column;overflow:hidden;transform:scale(.95);transition:transform .2s ease;box-shadow:0 24px 80px rgba(0,0,0,.5)}.fn2-modal-overlay.active .fn2-modal{transform:scale(1)}.fn2-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid var(--surface-hover);flex-shrink:0}.fn2-modal-header h3{display:flex;align-items:center;gap:10px;font-size:1rem;font-weight:500;color:var(--text-bright);margin:0}.fn2-modal-header h3 i{color:var(--text-muted);font-size:.9rem}.fn2-modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:0 0;border:none;border-radius:var(--radius-md);color:var(--text-muted);font-size:1.3rem;cursor:pointer;line-height:1;transition:var(--transition-snappy)}.fn2-modal-close:hover{background:var(--surface-active);color:var(--text-bright)}.fn2-modal-body{flex:1;overflow-y:auto;padding:24px 28px;min-height:0;scrollbar-width:none;-ms-overflow-style:none}.fn2-modal-body::-webkit-scrollbar{display:none}.fn2-modal-footer{padding:16px 24px;border-top:1px solid var(--surface-hover);display:flex;justify-content:space-between;align-items:center;gap:12px;flex-shrink:0}.fn2-modal-status{flex:1;font-size:.8rem;color:var(--text-muted);transition:color .2s ease}.fn2-modal-status.info{color:rgba(130,177,255,.9)}.fn2-modal-status.error{color:rgba(248,113,113,.9)}.fn2-modal-status.success{color:rgba(74,222,128,.9)}.fn2-modal-buttons{display:flex;gap:12px}.fn2-modal-btn-cancel{height:40px;padding:0 20px;background:0 0;border:1px solid var(--border-light);border-radius:var(--radius-lg);color:var(--text-secondary);font-size:.9rem;font-weight:500;font-family:inherit;cursor:pointer;transition:var(--transition-snappy)}.fn2-modal-btn-cancel:hover{background:var(--surface-hover);border-color:var(--border-medium);color:var(--text-near-white)}.fn2-modal-btn-primary{height:40px;padding:0 24px;background:var(--surface-active);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);color:var(--text-near-white);font-size:.9rem;font-weight:500;font-family:inherit;cursor:pointer;transition:var(--transition-snappy);display:flex;align-items:center;justify-content:center;gap:8px;position:relative;min-width:120px;white-space:nowrap}.fn2-modal-btn-primary:hover:not(:disabled){background:var(--border-subtle);border-color:var(--border-xfaint)}.fn2-modal-btn-primary:active:not(:disabled){transform:scale(.98)}.fn2-modal-btn-primary:disabled{opacity:.4;cursor:not-allowed}.fn2-modal-btn-primary.loading{pointer-events:none}.fn2-modal-btn-primary.loading .fn2-modal-btn-text{opacity:0}.fn2-modal-spinner{position:absolute;width:14px;height:14px;border:2px solid var(--border-medium);border-top-color:var(--text-label);border-radius:50%;animation:fn2-modal-spin .7s linear infinite;display:none}.fn2-modal-btn-primary.loading .fn2-modal-spinner{display:block}@keyframes fn2-modal-spin{to{transform:rotate(360deg)}}.fn2-modal .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width:480px){.fn2-modal .form-row{grid-template-columns:1fr}}.fn2-modal .form-group{margin-bottom:1rem}.fn2-modal .form-group label{display:flex;align-items:center;gap:.4rem;font-size:.75rem;font-weight:500;color:var(--text-tertiary);margin-bottom:.4rem;text-transform:uppercase;letter-spacing:.03em}.fn2-modal .form-group label .field-icon{width:14px;height:14px;opacity:.6}.fn2-modal .form-group label .optional{font-weight:400;color:var(--text-muted);text-transform:none;letter-spacing:normal}.fn2-modal .form-group input,.fn2-modal .form-group select,.fn2-modal .form-group textarea{width:100%;background:var(--page-bg);border:1px solid var(--border-subtle);border-radius:10px;padding:12px 14px;font-size:.9rem;color:var(--text-primary);font-family:inherit;transition:border-color .2s ease,background .2s ease;box-sizing:border-box;box-shadow:0 2px 6px rgba(0,0,0,.3),inset 0 1px 0 var(--surface-02)}.fn2-modal .form-group input::placeholder,.fn2-modal .form-group textarea::placeholder{color:var(--text-muted)}.fn2-modal .form-group input:focus,.fn2-modal .form-group select:focus,.fn2-modal .form-group textarea:focus{outline:0;border-color:rgba(130,177,255,.5);background:var(--gray-950);box-shadow:0 2px 6px rgba(0,0,0,.3),0 0 0 2px rgba(130,177,255,.15)}.fn2-modal .form-group textarea{resize:vertical;min-height:80px}.fn2-modal .form-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:.5rem;padding-top:1rem;border-top:1px solid var(--border-subtle)}.fn2-modal .form-footer .fn2-modal-intro{margin:0;flex:1}.fn2-modal .form-footer .fn2-modal-btn-primary{width:auto;flex-shrink:0}@media (max-width:480px){.fn2-modal .form-footer{flex-direction:column;align-items:stretch}.fn2-modal .form-footer .fn2-modal-intro{text-align:center;order:2;margin-top:.75rem}.fn2-modal .form-footer .fn2-modal-btn-primary{width:100%;order:1}}.fn2-modal-intro{font-size:.75rem;color:var(--text-muted);margin:0 0 1.5rem 0;line-height:1.5}.fn2-modal-success{text-align:center;padding:2.5rem 1.5rem}.fn2-modal-success svg{width:40px;height:40px;color:rgba(34,197,94,.8);margin-bottom:1.25rem}.fn2-modal-success h4{font-size:1.1rem;font-weight:500;color:var(--text-primary);margin:0 0 .4rem 0}.fn2-modal-success p{font-size:.85rem;color:var(--text-tertiary);margin:0}.fn2-modal .captcha-container{display:flex;justify-content:center;margin:1rem 0;min-height:78px}.fn2-modal-error{font-size:.8rem;color:var(--accent-red);text-align:center;margin:0 0 .5rem 0;min-height:1.2em}.fn2-modal-intro-section{margin-bottom:1rem}.fn2-modal-intro-section .fn2-modal-intro{margin:0;text-align:center}.fn2-modal-tabbed{max-width:820px;height:700px}.fn2-modal-tabs{display:flex;border-bottom:1px solid var(--surface-hover);flex-shrink:0;padding:0 16px;background:var(--surface-01)}.fn2-modal-tab{display:flex;align-items:center;gap:8px;padding:14px 18px;background:0 0;border:none;border-bottom:2px solid transparent;color:var(--text-muted);font-size:.85rem;font-weight:500;font-family:inherit;cursor:pointer;transition:var(--transition-snappy);margin-bottom:-1px}.fn2-modal-tab:hover{color:var(--text-high)}.fn2-modal-tab.active{color:var(--text-near-white);border-bottom-color:var(--text-icon)}.fn2-modal-tab i{font-size:.8rem;opacity:.7}.fn2-modal-tab.active i{opacity:1}.fn2-tab-panel{display:none;height:100%}.fn2-tab-panel.active{display:flex;flex-direction:column}.fn2-modal-overlay.fn2-modal-fullscreen .fn2-modal{max-width:calc(100vw - 2.5rem);width:calc(100vw - 2.5rem);height:calc(100vh - 2.5rem);display:flex;flex-direction:column}.fn2-modal-overlay.fn2-modal-fullscreen .fn2-modal-body{max-height:none;flex:1;display:flex;flex-direction:column;padding:.75rem 1rem;overflow:hidden}.fn2-modal-overlay.fn2-modal-fullscreen .fn2-modal-chart-content{flex:1;min-height:0}.fn2-modal-overlay.fn2-modal-fullscreen .fn2-modal-chart-content .fn2-chat-chart{height:100%!important;margin:0!important}.fn2-modal-footer-info{padding:12px 24px;border-top:1px solid var(--surface-hover);display:flex;gap:16px;font-size:.8rem;color:var(--text-muted);flex-shrink:0}.fn2-toggle-switch{position:relative;display:inline-block;width:36px;height:20px;flex-shrink:0}.fn2-toggle-switch input{opacity:0;width:0;height:0;position:absolute}.fn2-toggle-switch .fn2-toggle-track{position:absolute;cursor:pointer;inset:0;background:rgba(255,255,255,.08);border-radius:20px;transition:background .2s ease}.fn2-toggle-switch .fn2-toggle-track::after{content:"";position:absolute;height:14px;width:14px;left:3px;bottom:3px;border-radius:50%;background:rgba(255,255,255,.4);transition:transform .2s ease,background .2s ease}.fn2-toggle-switch input:checked+.fn2-toggle-track{background:rgba(130,177,255,.25)}.fn2-toggle-switch input:checked+.fn2-toggle-track::after{transform:translateX(16px);background:rgba(130,177,255,.85)}@media (min-width:1400px){.fn2-modal-tabbed{max-width:900px;height:720px}}@media (min-width:1200px) and (max-width:1399px){.fn2-modal-tabbed{max-width:860px;height:700px}}@media (max-width:900px){.fn2-modal-tabbed{max-width:calc(100% - 3rem);height:85vh}}@media (max-width:768px){.fn2-modal-tabbed{max-width:calc(100% - 2rem)}.fn2-modal-tabs{padding:0 12px;overflow-x:auto}.fn2-modal-tab{padding:12px 14px;font-size:.8rem;white-space:nowrap}.fn2-modal-tab span{display:none}.fn2-modal-tab i{font-size:1rem}}@media (max-width:480px){.fn2-modal-overlay{padding:0}.fn2-modal{max-width:100vw;max-height:100dvh;height:100dvh;border-radius:0}.fn2-modal-tabbed{max-width:100%;height:92vh;max-height:92vh;border-radius:16px 16px 0 0}.fn2-modal-tabs{justify-content:space-around;padding:0}.fn2-modal-tab{flex:1;justify-content:center;padding:12px 8px}.fn2-modal-footer{flex-wrap:wrap;padding-bottom:calc(14px + env(safe-area-inset-bottom))}.fn2-modal-status{order:2;width:100%;text-align:center;margin-top:10px}.fn2-modal-buttons{width:100%;order:1}.fn2-modal-btn-cancel,.fn2-modal-buttons .fn2-modal-btn-primary{height:48px;flex:1}}