PageSourceSearch

https://genixai.ai/main-43BFPGT6.js

js genixai.ai collected 2026-09-24 14:29:18 UTC 210,871 bytes, 11 lines download raw bytes

1import{a as $o,b as Go,c as Wo,d as Pn,e as Yo,f as qo,h as Xo}from"./chunk-BAINM4JM.js";import{a as jo,b as Ko}from"./chunk-5S6Q5ZAK.js";import{a as zo}from"./chunk-N35QKFHU.js";import{a as vn,b as yn,c as kn}from"./chunk-LZ3XFABJ.js";import{a as Qo}from"./chunk-VRT5SLSK.js";import{a as Ho,b as Mn}from"./chunk-CFS7BE7L.js";import{a as Jo}from"./chunk-VTIF6GGI.js";import"./chunk-T353BVRF.js";import{a as On,c as wn}from"./chunk-6QKQ2SCA.js";import{a as bn}from"./chunk-G2PYH575.js";import"./chunk-JCLIVLFI.js";import{a as ai,b as Uo}from"./chunk-GTDYQOUN.js";import{a as Oe}from"./chunk-7H45KBGC.js";import{a as hn,b as ni,c as Ao,d as fn,e as Cn,f as Ft,g as ri,h as Fo,i as Ae}from"./chunk-KGVH7VIN.js";import{a as Ie,b as Pt}from"./chunk-DSIDUYXM.js";import{a as vo,b as wo,c as ko,e as Eo,f as tt,g as _n,h as To,i as ve,j as nt,k as So,l as Io}from"./chunk-UDKRQ2FU.js";import{a as Ro,b as No,e as Bo,k as Vo}from"./chunk-YKEVVCK3.js";import{a as ye}from"./chunk-C6JOS4CG.js";import{a as q}from"./chunk-DA6X5B4D.js";import{a as xn,c as ii,d as oi,e as Ot,f as Me,h as Do,j as Lo}
1from"./chunk-YPIHMCBJ.js";import{b as bo,f as un,g as je}from"./chunk-5DGPUUKX.js";import{$a as go,Ab as ln,C as to,Cc as Mo,Db as C,Dc as Be,E as Qe,Eb as Ne,Ec as yo,F as ke,Fb as p,Fc as Oo,G as nn,Gc as Po,I as Mt,Ka as po,M as no,Ma as mo,Mb as cn,N as dt,Na as pt,Nb as dn,O as io,Oa as r,P as oo,Pb as mt,Q as ze,Qb as L,R as ro,Rb as ei,Sb as fo,T as ce,Tb as d,Ub as h,Va as $,Vb as B,W as ao,Wb as pn,X as Jn,Xb as ti,Y as O,Z as so,Za as ue,a as ae,b as be,ba as x,bc as Co,ca as b,da as Ze,dc as m,ea as lo,ec as g,f as fe,fa as Qn,fb as et,ga as on,gb as uo,ha as yt,ib as Zn,ja as rn,jb as ie,jc as gt,ka as an,kb as v,kc as z,la as co,m as vt,mb as M,n as tn,na as P,nb as _o,nc as xo,oa as ge,ob as ho,oc as Vt,pb as G,pc as mn,q as Qi,qb as W,rb as S,rc as gn,s as Re,sa as sn,sb as s,tb as l,ub as j,v as Zi,vb as U,w as eo,wb as N,x as Se,zb as I}from"./chunk-FEHQSQD2.js";var si="Service workers are disabled or not supported by this browser",wt=class{serviceWorker;worker;registration;events;constructor(o,e){if(this.serviceWorker=o,!o)this.worker=this.events=this.registration=new vt(n=>n.error(new ze(5601,!1)));else{let n=null,i=new tn;this.worker=new vt(H=>(n!==null&&H.next(n),i.subscribe(J=>H.next(J))));let c=()=>{let{controller:H}=o;H!==null&&(n=H,i.next(n))};o.addEventListener("controllerchange",c),c(),this.registration=this.worker.pipe(dt(()=>o.getRegistration().then(H=>{if(!H)throw new ze(5601,!1);return H})));let _=new tn;this.events=_.asObservable();let E=H=>{let{data:J}=H;J?.type&&_.next(J)};o.addEventListener("message",E),e?.get(Zn,null,{optional:!0})?.onDestroy(()=>{o.removeEventListener("controllerchange",c),o.removeEventListener("message",E)})}}postMessage(o,e){return new Promise(n=>{this.worker.pipe(Mt(1)).subscribe(i=>{i.postMessage(ae({action:o},e)),n()})})}postMessageWithOperation(o,e,n){let i=this.waitForOperationCompleted(n),c=this.postMessage(o,e);return Promise.all([c,i]).then(([,_])=>_)}generateNonce(){return Math.round(Math.random()*1e7)}eventsOfType(o){let e;return typeof o=="string"?e=n=>n.type===o:e=n=>o.includes(n.type),this.events.pipe(ke(e))}nextEventOfType(o){return this.eventsOfType(o).pipe(Mt(1))}waitForOperationCompleted(o){return new Promise((e,n)=>{this.eventsOfType("OPERATION_COMPLETED").pipe(ke(i=>i.nonce===o),Mt(1),Se(i=>{if(i.result!==void 0)return i.result;throw new Error(i.error)})).subscribe({next:e,error:n})})}get isEnabled(){return!!this.serviceWorker}},Ra=(()=>{class t{sw;messages;notificationClicks;notificationCloses;pushSubscriptionChanges;subscription;get isEnabled(){return this.sw.isEnabled}pushManager=null;subscriptionChanges=new tn;constructor(e){if(this.sw=e,!e.isEnabled){this.messages=Qe,this.notificationClicks=Qe,this.notificationCloses=Qe,this.pushSubscriptionChanges=Qe,this.subscription=Qe;return}this.messages=this.sw.eventsOfType("PUSH").pipe(Se(i=>i.data)),this.notificationClicks=this.sw.eventsOfType("NOTIFICATION_CLICK").pipe(Se(i=>i.data)),this.notificationCloses=this.sw.eventsOfType("NOTIFICATION_CLOSE").pipe(Se(i=>i.data)),this.pushSubscriptionChanges=this.sw.eventsOfType("PUSH_SUBSCRIPTION_CHANGE").pipe(Se(i=>i.data)),this.pushManager=this.sw.registration.pipe(Se(i=>i.pushManager));let n=this.pushManager.pipe(dt(i=>i.getSubscription()));this.subscription=new vt(i=>{let c=n.subscribe(i),_=this.subscriptionChanges.subscribe(i);return()=>{c.unsubscribe(),_.unsubscribe()}})}requestSubscription(e){if(!this.sw.isEnabled||this.pushManager===null)return Promise.reject(new Error(si));let n={userVisibleOnly:!0},i=this.decodeBase64(e.serverPublicKey.replace(/_/g,"/").replace(/-/g,"+")),c=new Uint8Array(new ArrayBuffer(i.length));for(let _=0;_<i.length;_++)c[_]=i.charCodeAt(_);return n.applicationServerKey=c,new Promise((_,E)=>{this.pushManager.pipe(dt(k=>k.subscribe(n)),Mt(1)).subscribe({next:k=>{this.subscriptionChanges.next(k),_(k)},error:E})})}unsubscribe(){if(!this.sw.isEnabled)return Promise.reject(new Error(si));let e=n=>{if(n===null)throw new ze(5602,!1);return n.unsubscribe().then(i=>{if(!i)throw new ze(5603,!1);this.subscriptionChanges.next(null)})};return new Promise((n,i)=>{this.subscription.pipe(Mt(1),dt(e)).subscribe({next:n,error:i})})}decodeBase64(e){return atob(e)}static \u0275fac=function(n){return new(n||t)(Jn(wt))};static \u0275prov=ce({token:t,factory:t.\u0275fac})}return t})(),li=(()=>{class t{sw;versionUpdates;unrecoverable;get isEnabled(){return this.sw.isEnabled}ongoingCheckForUpdate=null;constructor(e){if(this.sw=e,!e.isEnabled){this.versionUpdates=Qe,this.unrecoverable=Qe;return}this.versionUpdates=this.sw.eventsOfType(["VERSION_DETECTED","VERSION_INSTALLATION_FAILED","VERSION_READY","NO_NEW_VERSION_DETECTED"]),this.unrecoverable=this.sw.eventsOfType("UNRECOVERABLE_STATE")}checkForUpdate(){if(!this.sw.isEnabled)return Promise.reject(new Error(si));if(this.ongoingCheckForUpdate)return this.ongoingCheckForUpdate;let e=this.sw.generateNonce();return this.ongoingCheckForUpdate=this.sw.postMessageWithOperation("CHECK_FOR_UPDATES",{nonce:e},e).finally(()=>{this.ongoingCheckForUpdate=null}),this.ongoingCheckForUpdate}activateUpdate(){if(!this.sw.isEnabled)return Promise.reject(new ze(5601,!1));let e=this.sw.generateNonce();return this.sw.postMessageWithOperation("ACTIVATE_UPDATE",{nonce:e},e)}static \u0275fac=function(n){return new(n||t)(Jn(wt))};static \u0275prov=ce({token:t,factory:t.\u0275fac})}return t})(),er=new ao("");function Na(){let t=O(Ut);
1if(!("serviceWorker"in navigator&&t.enabled!==!1))return;let o=O(er),e=O(an),n=O(Zn);e.runOutsideAngular(()=>{let i=navigator.serviceWorker,c=()=>i.controller?.postMessage({action:"INITIALIZE"});i.addEventListener("controllerchange",c),n.onDestroy(()=>{i.removeEventListener("controllerchange",c)})}),e.runOutsideAngular(()=>{let i,{registrationStrategy:c}=t;if(typeof c=="function")i=new Promise(_=>c().subscribe(()=>_()));else{let[_,...E]=(c||"registerWhenStable:30000").split(":");switch(_){case"registerImmediately":i=Promise.resolve();break;case"registerWithDelay":i=Zo(+E[0]||0);break;case"registerWhenStable":i=Promise.race([n.whenStable(),Zo(+E[0])]);break;default:throw new ze(5600,!1)}}i.then(()=>{n.destroyed||navigator.serviceWorker.register(o,{scope:t.scope,updateViaCache:t.updateViaCache,type:t.type}).catch(_=>console.error(ro(5604,!1)))})})}function Zo(t){return new Promise(o=>setTimeout(o,t))}function Ba(){let t=O(Ut),o=O(Qn),e=!0;return new wt(e&&t.enabled!==!1?navigator.serviceWorker:void 0,o)}var Ut=class{enabled;updateViaCache;type;scope;registrationStrategy};function tr(t,o={}){return so([Ra,li,{provide:er,useValue:t},{provide:Ut,useValue:o},{provide:wt,useFactory:Ba},uo(Na)])}function ci(t){t||(t=O(yt));let o=new vt(e=>{if(t.destroyed){e.next();return}return t.onDestroy(e.next.bind(e))});return e=>e.pipe(io(o))}function nr(t,o){let n=!o?.manualCleanup?o?.injector?.get(yt)??O(yt):null,i=Va(o?.equal),c;o?.requireSync?c=P({kind:0},{equal:i}):c=P({kind:1,value:o?.initialValue},{equal:i});let _,E=t.subscribe({next:k=>c.set({kind:1,value:k}),error:k=>{c.set({kind:2,error:k}),_?.()},complete:()=>{_?.()}});if(o?.requireSync&&c().kind===0)throw new ze(601,!1);return _=n?.onDestroy(E.unsubscribe.bind(E)),z(()=>{let k=c();switch(k.kind){case 1:return k.value;case 2:throw k.error;case 0:throw new ze(601,!1)}},{equal:o?.equal})}function Va(t=Object.is){return(o,e)=>o.kind===1&&e.kind===1&&t(o.value,e.value)}var ir="https://challenges.cloudflare.com/turnstile/v0/api.js?render=explicit",or=(()=>{class t{constructor(){this.loadPromise=null}get available(){return!!window.turnstile}load(){return window.turnstile?Promise.resolve(window.turnstile):this.loadPromise?this.loadPromise:(this.loadPromise=new Promise((e,n)=>{let i=()=>{window.turnstile?e(window.turnstile):n(new Error("Turnstile script loaded but window.turnstile is missing"))},c=document.querySelector(`script[src="${ir}"]`);if(c){if(window.turnstile){i();return}c.addEventListener("load",i,{once:!0}),c.addEventListener("error",()=>n(new Error("Turnstile script failed to load")),{once:!0});return}let _=document.createElement("script");_.src=ir,_.async=!0,_.defer=!0,_.addEventListener("load",i,{once:!0}),_.addEventListener("error",()=>{this.loadPromise=null,n(new Error("Turnstile script failed to load"))},{once:!0}),document.head.appendChild(_)}),this.loadPromise)}render(e,n){return window.turnstile?window.turnstile.render(e,n):null}reset(e){window.turnstile?.reset(e)}remove(e){window.turnstile?.remove(e)}static{this.\u0275fac=function(n){return new(n||t)}}static{this.\u0275prov=ce({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();var za=["turnstileHost"];function ja(t,o){if(t&1){let e=I();s(0,"h1",5),d(1),m(2,"t"),l(),s(3,"div",6)(4,"button",7),C("click",function(){x(e);let i=p();return b(i.loginWithGoogle())}),Ze(),s(5,"svg",8),j(6,"path",9)(7,"path",10)(8,"path",11)(9,"path",12),l(),lo(),s(10,"span"),d(11),m(12,"t"),l()()(),s(13,"div",13)(14,"span"),d(15),m(16,"t"),l()(),s(17,"button",14),C("click",function(){x(e);let i=p();return b(i.showLogin())}),s(18,"span",15),d(19,"mail"),l(),s(20,"span"),d(21),m(22,"t"),l()(),s(23,"p",16),d(24),m(25,"t"),s(26,"a",17),C("click",function(){x(e);let i=p();return b(i.showRegister())}),d(27),m(28,"t"),l()(),s(29,"p",18),d(30),m(31,"t"),s(32,"a",19),C("click",function(){x(e);let i=p();return b(i.close())}),d(33),m(34,"t"),l(),d(35," & "),s(36,"a",20),C("click",function(){x(e);let i=p();return b(i.close())}),d(37),m(38,"t"),l()()}t&2&&(r(),h(g(2,9,"auth.welcome")),r(10),h(g(12,11,"auth.continue_google")),r(4),h(g(16,13,"common.or")),r(6),h(g(22,15,"auth.sign_in_email")),r(3),B(" ",g(25,17,"auth.no_account")," "),r(3),h(g(28,19,"auth.register")),r(3),B(" ",g(31,21,"auth.agree_to")," "),r(3),h(g(34,23,"auth.terms")),r(4),h(g(38,25,"auth.privacy")))}function Ha(t,o){if(t&1&&(s(0,"span",25),d(1),m(2,"t"),l()),t&2){let e=p(2);r(),h(g(2,1,e.loginIdError()))}}function $a(t,o){if(t&1&&(s(0,"span",25),d(1),m(2,"t"),l()),t&2){let e=p(2);r(),h(g(2,1,e.passwordError()))}}function Ga(t,o){t&1&&j(0,"span",32)}function Wa(t,o){t&1&&(d(0),m(1,"t")),t&2&&B(" ",g(1,1,"auth.sign_in_btn")," ")}function Ya(t,o){if(t&1){let e=I();s(0,"button",21),C("click",function(){x(e);let i=p();return b(i.back())}),s(1,"span",4),d(2,"arrow_back"),l(),d(3),m(4,"t"),l(),s(5,"h1",5),d(6),m(7,"t"),l(),s(8,"div",22)(9,"label",23),d(10),m(11,"t"),l(),s(12,"input",24),m(13,"t"),C("ngModelChange",function(i){x(e);let c=p();return b(c.loginId.set(i))}),l(),v(14,Ha,3,3,"span",25),l(),s(15,"div",22)(16,"label",26),d(17),m(18,"t"),l(),s(19,"div",27)(20,"input",28),m(21,"t"),C("ngModelChange",function(i){x(e);let c=p();return b(c.password.set(i))})("keyup.enter",function(){x(e);let i=p();return b(i.submitLogin())}),l(),s(22,"button",29),m(23,"t"),C("click",function(){x(e);let i=p();return b(i.showPassword.set(!i.showPassword()))}),s(24,"span",4),d(25),l()()(),v(26,$a,3,3,"span",25),l(),s(27,"p",30)(28,"a",17),C("click",function(){x(e);let i=p();return b(i.showForgot())}),d(29),m(30,"t"),l()(),s(31,"button",31),C("click",function(){x(e);let i=p();return b(i.submitLogin())}),v(32,Ga,1,0,"span",32)(33,Wa,2,3),l(),s(34,"p",16),d(35),m(36,"t"),s(37,"a",17),C("click",function(){x(e);let i=p();return b(i.showRegister())}),d(38),m(39,"t"),l()(),s(40,"p",18),d(41),m(42,"t"),s(43,"a",19),C("click",function(){x(e);let i=p();return b(i.close())}
1),d(44),m(45,"t"),l(),d(46," & "),s(47,"a",20),C("click",function(){x(e);let i=p();return b(i.close())}),d(48),m(49,"t"),l()()}if(t&2){let e=p();r(3),B(" ",g(4,25,"common.back")," "),r(3),h(g(7,27,"auth.sign_in")),r(4),h(g(11,29,"auth.email_or_username")),r(2),L("invalid",e.tLoginId()&&e.loginIdError()),S("placeholder",g(13,31,"auth.email_or_username_placeholder"))("ngModel",e.loginId()),r(2),M(e.tLoginId()&&e.loginIdError()?14:-1),r(3),h(g(18,33,"auth.password")),r(3),L("invalid",e.tPassword()&&e.passwordError()),S("type",e.showPassword()?"text":"password")("placeholder",g(21,35,"auth.password_placeholder"))("ngModel",e.password()),r(2),ie("aria-label",g(23,37,e.showPassword()?"auth.hide_password":"auth.show_password")),r(3),h(e.showPassword()?"visibility_off":"visibility"),r(),M(e.tPassword()&&e.passwordError()?26:-1),r(3),h(g(30,39,"auth.forgot_password")),r(2),S("disabled",e.loading()),r(),M(e.loading()?32:33),r(3),B(" ",g(36,41,"auth.no_account")," "),r(3),h(g(39,43,"auth.register")),r(3),B(" ",g(42,45,"auth.agree_to")," "),r(3),h(g(45,47,"auth.terms")),r(4),h(g(49,49,"auth.privacy"))}}function qa(t,o){if(t&1&&(s(0,"span",25),d(1),m(2,"t"),l()),t&2){let e=p(2);r(),h(g(2,1,e.regNameError()))}}function Ka(t,o){if(t&1&&(s(0,"span",25),d(1),m(2,"t"),l()),t&2){let e=p(2);r(),h(g(2,1,e.regUsernameError()))}}function Xa(t,o){if(t&1&&(s(0,"span",25),d(1),m(2,"t"),l()),t&2){let e=p(2);r(),h(g(2,1,e.regEmailError()))}}function Ja(t,o){if(t&1&&(s(0,"span",25),d(1),m(2,"t"),l()),t&2){let e=p(2);r(),h(g(2,1,e.regPasswordError()))}}function Qa(t,o){t&1&&(s(0,"div",41),j(1,"div",null,0),l())}function Za(t,o){t&1&&j(0,"span",32)}function es(t,o){t&1&&(d(0),m(1,"t")),t&2&&B(" ",g(1,1,"auth.create_account_btn")," ")}function ts(t,o){if(t&1){let e=I();s(0,"button",21),C("click",function(){x(e);let i=p();return b(i.back())}),s(1,"span",4),d(2,"arrow_back"),l(),d(3),m(4,"t"),l(),s(5,"h1",5),d(6),m(7,"t"),l(),s(8,"div",22)(9,"label",33),d(10),m(11,"t"),l(),s(12,"input",34),m(13,"t"),C("ngModelChange",function(i){x(e);let c=p();return b(c.regName.set(i))}),l(),v(14,qa,3,3,"span",25),l(),s(15,"div",22)(16,"label",35),d(17),m(18,"t"),l(),s(19,"input",36),m(20,"t"),C("ngModelChange",function(i){x(e);let c=p();return b(c.regUsername.set(i))}),l(),v(21,Ka,3,3,"span",25),l(),s(22,"div",22)(23,"label",37),d(24),m(25,"t"),l(),s(26,"input",38),m(27,"t"),C("ngModelChange",function(i){x(e);let c=p();return b(c.regEmail.set(i))}),l(),v(28,Xa,3,3,"span",25),l(),s(29,"div",22)(30,"label",39),d(31),m(32,"t"),l(),s(33,"div",27)(34,"input",40),m(35,"t"),C("ngModelChange",function(i){x(e);let c=p();return b(c.regPassword.set(i))}),l(),s(36,"button",29),m(37,"t"),C("click",function(){x(e);let i=p();return b(i.showRegPassword.set(!i.showRegPassword()))}),s(38,"span",4),d(39),l()()(),v(40,Ja,3,3,"span",25),l(),v(41,Qa,3,0,"div",41),s(42,"button",31),C("click",function(){x(e);let i=p();return b(i.submitRegister())}),v(43,Za,1,0,"span",32)(44,es,2,3),l(),s(45,"p",16),d(46),m(47,"t"),s(48,"a",17),C("click",function(){x(e);let i=p();return b(i.showLogin())}),d(49),m(50,"t"),l()(),s(51,"p",18),d(52),m(53,"t"),s(54,"a",19),C("click",function(){x(e);let i=p();return b(i.close())}),d(55),m(56,"t"),l(),d(57," & "),s(58,"a",20),C("click",function(){x(e);let i=p();return b(i.close())}),d(59),m(60,"t"),l()()}if(t&2){let e=p();r(3),B(" ",g(4,37,"common.back")," "),r(3),h(g(7,39,"auth.create_account")),r(4),h(g(11,41,"auth.full_name")),r(2),L("invalid",e.tRegName()&&e.regNameError()),S("placeholder",g(13,43,"auth.full_name_placeholder"))("ngModel",e.regName()),r(2),M(e.tRegName()&&e.regNameError()?14:-1),r(3),h(g(18,45,"auth.username")),r(2),L("invalid",e.tRegUsername()&&e.regUsernameError()),S("placeholder",g(20,47,"auth.username_placeholder"))("ngModel",e.regUsername()),r(2),M(e.tRegUsername()&&e.regUsernameError()?21:-1),r(3),h(g(25,49,"auth.email")),r(2),L("invalid",e.tRegEmail()&&e.regEmailError()),S("placeholder",g(27,51,"auth.email_placeholder"))("ngModel",e.regEmail()),r(2),M(e.tRegEmail()&&e.regEmailError()?28:-1),r(3),h(g(32,53,"auth.password")),r(3),L("invalid",e.tRegPassword()&&e.regPasswordError()),S("type",e.showRegPassword()?"text":"password")("placeholder",g(35,55,"auth.password_hint"))("ngModel",e.regPassword()),r(2),ie("aria-label",g(37,57,e.showRegPassword()?"auth.hide_password":"auth.show_password")),r(3),h(e.showRegPassword()?"visibility_off":"visibility"),r(),M(e.tRegPassword()&&e.regPasswordError()?40:-1),r(),M(e.captchaEnabled()?41:-1),r(),S("disabled",e.loading()||e.captchaEnabled()&&!e.turnstileToken()),r(),M(e.loading()?43:44),r(3),B(" ",g(47,59,"auth.has_account")," "),r(3),h(g(50,61,"auth.sign_in")),r(3),B(" ",g(53,63,"auth.agree_to")," "),r(3),h(g(56,65,"auth.terms")),r(4),h(g(60,67,"auth.privacy"))}}function ns(t,o){if(t&1&&(s(0,"span",25),d(1),m(2,"t"),l()),t&2){let e=p(2);r(),h(g(2,1,e.resetEmailError()))}}function is(t,o){if(t&1&&(s(0,"p",45),d(1),m(2,"t"),l()),t&2){let e=p(2);r(),h(g(2,1,e.resetRequestError()))}}function os(t,o){t&1&&j(0,"span",32)}function rs(t,o){t&1&&(d(0),m(1,"t")),t&2&&B(" ",g(1,1,"auth.send_code")," ")}function as(t,o){if(t&1){let e=I();s(0,"button",21),C("click",function(){x(e);let i=p();return b(i.showLogin())}),s(1,"span",4),d(2,"arrow_back"),l(),d(3),m(4,"t"),l(),s(5,"h1",5),d(6),m(7,"t"),l(),s(8,"p",42),d(9),m(10,"t"),l(),s(11,"div",22)(12,"label",43),d(13),m(14,"t"),l(),s(15,"input",44),m(16,"t"),C("ngModelChange",function(i){x(e);let c=p();return c.resetEmail.set(i),b(c.resetRequestError.set(null))})("keyup.enter",function(){x(e);let i=p();return b(i.submitForgot())}),l(),v(17,ns,3,3,"span",25),l(),v(18,is,3,3,"p",45),s(19,"button",31),C("click",function(){x(e);let i=p();return b(i.submitForgot())}),v(20,os,1,0,"span",32)(21,rs,2,3),l(),s(22,"p",16),d(23),m(24,"t"),s(25,"a",17),C("click",function(){x(e);let i=p();return b(i.showLogin())}),d(26),m(27,"t"),l()()}if(t&2){let e=p();r(3),B(" ",g(4,14,"common.back")," "),r(3),h(g(7,16,"auth.forgot_title")),r(3),h(g(10,18,"auth.forgot_desc")),r(4),h(g(14,20,"auth.email")),r(2),L("invalid",e.tResetEmail()&&e.resetEmailError()),S("placeholder",g(16,22,"auth.email_placeholder"))("ngModel",e.resetEmail()),r(2),M(e.tResetEmail()&&e.resetEmailError()?17:-1),r(),M(e.resetRequestError()?18:-1),r(),S("disabled",e.loading()),r(),M(e.loading()?20:21),r(3),B(" ",g(24,24,"auth.remember_password")," "),r(3),h(g(27,26,"auth.sign_in"))}}function ss(t,o){if(t&1&&(s(0,"span",25),d(1),m(2,"t"),l()),t&2){let e=p(2);r(),h(g(2,1,e.resetCodeError()))}}function ls(t,o){if(t&1&&(s(0,"span",25),d(1),m(2,"t"),l()),t&2){let e=p(2);r(),h(g(2,1,e.resetNewPasswordError()))}}function cs(t,o){t&1&&j(0,"span",32)}function ds(t,o){t&1&&(d(0),m(1,"t")),t&2&&B(" ",g(1,1,"auth.reset_btn")," ")}function ps(t,o){if(t&1){let e=I();s(0,"button",21),C("click",function(){x(e);let i=p();return b(i.showForgot())}),s(1,"span",4),d(2,"arrow_back"),l(),d(3),m(4,"t"),l(),s(5,"h1",5),d(6),m(7,"t"),l(),s(8,"p",42),d(9),m(10,"t"),l(),s(11,"div",22)(12,"label",46),d(13),m(14,"t"),l(),s(15,"input",47),m(16,"t"),C("ngModelChange",function(i){x(e);let c=p();return b(c.resetCode.set(i))}),l(),v(17,ss,3,3,"span",25),l(),s(18,"div",22)(19,"label",48),d(20),m(21,"t"),l(),s(22,"div",27)(23,"input",49),m(24,"t"),C("ngModelChange",function(i){x(e);let c=p();return b(c.resetNewPassword.set(i))})("keyup.enter",function(){x(e);let i=p();return b(i.submitReset())}),l(),s(25,"button",29),m(26,"t"),C("click",function(){x(e);let i=p();return b(i.showResetNewPassword.set(!i.showResetNewPassword()))}),s(27,"span",4),d(28),l()()(),v(29,ls,3,3,"span",25),l(),s(30,"button",31),C("click",function(){x(e);let i=p();return b(i.submitReset())}),v(31,cs,1,0,"span",32)(32,ds,2,3),l(),s(33,"p",16)(34,"a",17),C("click",function(){x(e);let i=p();return b(i.submitForgot())}),d(35),m(36,"t"),l()()}if(t&2){let e=p();r(3),B(" ",g(4,21,"common.back")," "),r(3),h(g(7,23,"auth.reset_title")),r(3),h(g(10,25,"auth.reset_desc")),r(4),h(g(14,27,"auth.reset_code")),r(2),L("invalid",e.tResetCode()&&e.resetCodeError()),S("placeholder",g(16,29,"auth.reset_code_placeholder"))("ngModel",e.resetCode()),r(2),M(e.tResetCode()&&e.resetCodeError()?17:-1),r(3),h(g(21,31,"auth.new_password")),r(3),L("invalid",e.tResetNewPassword()&&e.resetNewPasswordError()),S("type",e.showResetNewPassword()?"text":"password")("placeholder",g(24,33,"auth.password_hint"))("ngModel",e.resetNewPassword()),r(2),ie("aria-label",g(26,35,e.showResetNewPassword()?"auth.hide_password":"auth.show_password")),r(3),h(e.showResetNewPassword()?"visibility_off":"visibility"),r(),M(e.tResetNewPassword()&&e.resetNewPasswordError()?29:-1),r(),S("disabled",e.loading()),r(),M(e.loading()?3
11:32),r(4),h(g(36,37,"auth.resend_code"))}}var sr=(()=>{class t{emailError(e){let n=e.trim();return n?new RegExp(this.cfg.content.emailRegex).test(n)?null:"validation.email_invalid":"validation.required"}constructor(e,n,i,c){this.auth=e,this.toast=n,this.ts=i,this.cfg=c,this.closed=new rn,this.view=P("main"),this.loginId=P(""),this.password=P(""),this.regName=P(""),this.regUsername=P(""),this.regEmail=P(""),this.regPassword=P(""),this.resetEmail=P(""),this.resetCode=P(""),this.resetNewPassword=P(""),this.resetRequestError=P(null),this.loading=P(!1),this.turnstile=O(or),this.turnstileToken=P(null),this.captchaEnabled=z(()=>{let _=this.cfg.security;return _.turnstileEnabled&&!!_.turnstileSiteKey}),this.turnstileHost=mn("turnstileHost"),this.widgetId=null,this.mounting=!1,this.showPassword=P(!1),this.showRegPassword=P(!1),this.showResetNewPassword=P(!1),this.tLoginId=P(!1),this.tPassword=P(!1),this.tRegName=P(!1),this.tRegUsername=P(!1),this.tRegEmail=P(!1),this.tRegPassword=P(!1),this.tResetEmail=P(!1),this.tResetCode=P(!1),this.tResetNewPassword=P(!1),this.loginIdError=z(()=>this.loginId().trim()?null:"validation.required"),this.passwordError=z(()=>this.password()?null:"validation.required"),this.regNameError=z(()=>this.regName().trim()?null:"validation.required"),this.regUsernameError=z(()=>
1this.regUsername().trim()?null:"validation.required"),this.regEmailError=z(()=>this.emailError(this.regEmail())),this.regPasswordError=z(()=>this.regPassword()?null:"validation.required"),this.resetEmailError=z(()=>this.emailError(this.resetEmail())),this.resetCodeError=z(()=>this.resetCode().trim()?null:"validation.required"),this.resetNewPasswordError=z(()=>this.resetNewPassword()?null:"validation.required"),ge(()=>{let _=this.turnstileHost()?.nativeElement;this.captchaEnabled()&&_&&!this.widgetId&&!this.mounting?this.mountTurnstile(_):!_&&this.widgetId&&(this.widgetId=null,this.turnstileToken.set(null))})}mountTurnstile(e){return fe(this,null,function*(){this.mounting=!0;try{if(yield this.turnstile.load(),this.turnstileHost()?.nativeElement!==e)return;let n=this.turnstile.render(e,{sitekey:this.cfg.security.turnstileSiteKey,theme:this.widgetTheme(),callback:i=>this.turnstileToken.set(i),"expired-callback":()=>this.turnstileToken.set(null),"error-callback":()=>this.turnstileToken.set(null)});this.widgetId=n}catch(n){}finally{this.mounting=!1}})}widgetTheme(){return document.documentElement.classList.contains("light")?"light":"dark"}resetTurnstile(){this.turnstileToken.set(null),this.widgetId&&this.turnstile.reset(this.widgetId)}close(){this.closed.emit()}onOverlayClick(e){e.target===e.currentTarget&&this.close()}showLogin(){this.view.set("login")}showRegister(){this.view.set("register")}back(){this.view.set("main")}showForgot(){let e=this.loginId().trim();e.includes("@")&&this.resetEmail.set(e),this.resetRequestError.set(null),this.view.set("forgot")}loginWithGoogle(){this.auth.loginWithGoogle()}loginWithApple(){this.auth.loginWithApple()}submitLogin(){return fe(this,null,function*(){if(this.tLoginId.set(!0),this.tPassword.set(!0),!(!this.loginId()||!this.password())){this.loading.set(!0);try{yield this.auth.loginWithEmail(this.loginId(),this.password()),this.close()}catch(e){this.toast.error(this.ts.t(this.loginErrorKey(e)))}finally{this.loading.set(!1)}}})}loginErrorKey(e){if(e instanceof Be){let n=e.error?.code;if(n&&this.ts.t(n)!==n)return n}return"error.invalid_credentials"}submitRegister(){return fe(this,null,function*(){if(this.tRegName.set(!0),this.tRegUsername.set(!0),this.tRegEmail.set(!0),this.tRegPassword.set(!0),!(!this.regName()||!this.regUsername()||!this.regEmail()||!this.regPassword())){if(!new RegExp(this.cfg.content.emailRegex).test(this.regEmail())){this.toast.error(this.ts.t("error.invalid_email"));return}if(this.regPassword().length<this.cfg.limits.minPasswordLength){this.toast.error(this.ts.t("error.password_too_short"));return}if(this.captchaEnabled()&&!this.turnstileToken()){this.toast.error(this.ts.t("error.auth.captcha_failed"));return}this.loading.set(!0);try{yield this.auth.register(this.regName(),this.regUsername(),this.regEmail(),this.regPassword(),this.turnstileToken()??void 0),this.close()}catch(e){this.toast.error(this.ts.t(this.registerErrorKey(e))),this.captchaEnabled()&&this.resetTurnstile()}finally{this.loading.set(!1)}}})}registerErrorKey(e){if(!(e instanceof Be))return"error.registration_failed";let n=e.error,i=n?.code;if(i&&i!=="error.409"&&this.ts.t(i)!==i)return i;if(e.status===409){let c=(n?.message??"").toLowerCase();return c.includes("email")?"error.email_taken":c.includes("username")?"error.username_taken":"error.account_exists"}return"error.registration_failed"}submitForgot(){return fe(this,null,function*(){this.tResetEmail.set(!0),this.resetRequestError.set(null);let e=this.resetEmail().trim();if(!new RegExp(this.cfg.content.emailRegex).test(e)){this.toast.error(this.ts.t("error.invalid_email"));return}this.loading.set(!0);try{yield this.auth.requestPasswordReset(e),this.toast.success(this.ts.t("auth.reset_sent")),this.resetEmail.set(e),this.view.set("reset")}catch(n){let i=n?.error?.code;i&&this.ts.t(i)!==i?this.resetRequestError.set(i):this.toast.error(this.ts.t("error.reset_request_failed"))}finally{this.loading.set(!1)}})}submitReset(){return fe(this,null,function*(){this.tResetCode.set(!0),this.tResetNewPassword.set(!0);let e=this.resetEmail().trim(),n=this.resetCode().trim(),i=this.resetNewPassword();if(n){if(i.length<this.cfg.limits.minPasswordLength){this.toast.error(this.ts.t("error.password_too_short"));return}this.loading.set(!0);try{yield this.auth.resetPassword(e,n,i),this.toast.success(this.ts.t("auth.reset_success")),this.loginId.set(e),this.resetCode.set(""),this.resetNewPassword.set(""),this.view.set("login")}catch(c){this.toast.error(this.ts.t("error.reset_failed"))}finally{this.loading.set(!1)}}})}static{this.\u0275fac=function(n){return new(n||t)($(Ae),$(Oe),$(q),$(Ie))}}static{this.\u0275cmp=ue({type:t,selectors:[["app-login-modal"]],viewQuery:function(n,i){n&1&&cn(i.turnstileHost,za,5),n&2&&dn()},outputs:{closed:"closed"},decls:11,vars:8,consts:[["turnstileHost",""],[1,"overlay",3,"click"],["role","dialog","aria-modal","true","aria-labelledby","login-modal-title","appModalDialog","",1,"modal",3,"dialogClose"],[1,"close-btn",3,"click"],[1,"material-symbols-rounded"],["id","login-modal-title",1,"title"],[1,"btn-group"],[1,"auth-btn",3,"click"],["viewBox","0 0 24 24","fill","none",1,"provider-icon"],["d","M22.56 12.25c0-.78-.07-1.53-.2-2.25H12v4.26h5.92c-.26 1.37-1.04 2.53-2.21 3.31v2.77h3.57c2.08-1.92 3.28-4.74 3.28-8.09z","fill","#4285F4"],["d","M12 23c2.97 0 5.46-.98 7.28-2.66l-3.57-2.77c-.98.66-2.23 1.06-3.71 1.06-2.86 0-5.29-1.93-6.16-4.53H2.18v2.84C3.99 20.53 7.7 23 12 23z","fill","#34A853"],["d","M5.84 14.09c-.22-.66-.35-1.36-.35-2.09s.13-1.43.35-2.09V7.07H2.18C1.43 8.55 1 10.22 1 12s.43 3.45 1.18 4.93l3.66-2.84z","fill","#FBBC0
15"],["d","M12 5.38c1.62 0 3.06.56 4.21 1.64l3.15-3.15C17.45 2.09 14.97 1 12 1 7.7 1 3.99 3.47 2.18 7.07l3.66 2.84c.87-2.6 3.3-4.53 6.16-4.53z","fill","#EA4335"],[1,"divider"],[1,"auth-btn","email-btn",3,"click"],[1,"material-symbols-rounded","provider-icon"],[1,"register-link"],[3,"click"],[1,"terms"],["routerLink","/terms",3,"click"],["routerLink","/privacy",3,"click"],[1,"back-btn",3,"click"],[1,"form-group"],["for","login-id",1,"form-label"],["id","login-id","type","text",1,"form-input",3,"ngModelChange","placeholder","ngModel"],[1,"field-error"],["for","login-password",1,"form-label"],[1,"password-wrap"],["id","login-password",1,"form-input",3,"ngModelChange","keyup.enter","type","placeholder","ngModel"],["type","button",1,"pw-toggle",3,"click"],[1,"forgot-link"],[1,"submit-btn",3,"click","disabled"],[1,"spinner"],["for","reg-name",1,"form-label"],["id","reg-name","type","text",1,"form-input",3,"ngModelChange","placeholder","ngModel"],["for","reg-username",1,"form-label"],["id","reg-username","type","text",1,"form-input",3,"ngModelChange","placeholder","ngModel"],["for","reg-email",1,"form-label"],["id","reg-email","type","email",1,"form-input",3,"ngModelChange","placeholder","ngModel"],["for","reg-password",1,"form-label"],["id","reg-password",1,"form-input",3,"ngModelChange","type","placeholder","ngModel"],[1,"turnstile-wrap"],[1,"modal-desc"],["for","reset-email",1,"form-label"],["id","reset-email","type","email",1,"form-input",3,"ngModelChange","keyup.enter","placeholder","ngModel"],[1,"reset-notice"],["for","reset-code",1,"form-label"],["id","reset-code","type","text","autocomplete","one-time-code",1,"form-input",3,"ngModelChange","placeholder","ngModel"],["for","reset-new-password",1,"form-label"],["id","reset-new-password",1,"form-input",3,"ngModelChange","keyup.enter","type","placeholder","ngModel"]],template:function(n,i){n&1&&(s(0,"div",1),C("click",function(_){return i.onOverlayClick(_)}),s(1,"div",2),C("dialogClose",function(){return i.close()}),s(2,"button",3),m(3,"t"),C("click",function(){return i.close()}),s(4,"span",4),d(5,"close"),l()(),v(6,ja,39,27),v(7,Ya,50,51),v(8,ts,61,69),v(9,as,28,28),v(10,ps,37,39),l()()),n&2&&(r(2),ie("aria-label",g(3,6,"common.close")),r(4),M(i.view()==="main"?6:-1),r(),M(i.view()==="login"?7:-1),r(),M(i.view()==="register"?8:-1),r(),M(i.view()==="forgot"?9:-1),r(),M(i.view()==="reset"?10:-1))},dependencies:[je,Vo,Ro,No,Bo,nt,bn,ye],styles:['.modal[_ngcontent-%COMP%]{background:#fff;border-radius:20px;padding:44px 40px 36px;width:420px;max-width:calc(100vw - 32px);position:relative;box-shadow:0 24px 60px #00000024;animation:slideUp .18s ease}.close-btn[_ngcontent-%COMP%]{position:absolute;top:16px;right:16px;width:34px;height:34px;display:flex;align-items:center;justify-content:center;padding:0;border:none;border-radius:50%;cursor:pointer;transition:background .18s,color .18s,transform .2s}.close-btn[_ngcontent-%COMP%]:hover{transform:rotate(90deg)}.close-btn[_ngcontent-%COMP%]   .material-symbols-rounded[_ngcontent-%COMP%]{font-size:20px}html.light[_nghost-%COMP%]   .close-btn[_ngcontent-%COMP%], html.light   [_nghost-%COMP%]   .close-btn[_ngcontent-%COMP%]{background:#f1f3f9;color:#6b7280}html.light[_nghost-%COMP%]   .close-btn[_ngcontent-%COMP%]:hover, html.light   [_nghost-%COMP%]   .close-btn[_ngcontent-%COMP%]:hover{background:#e4e8f2;color:var(--d-navy)}.title[_ngcontent-%COMP%]{font-size:1.45rem;font-weight:800;color:var(--d-navy);text-align:center;margin:0 0 28px;font-style:italic}.btn-group[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:12px;margin-bottom:12px}.auth-btn[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:13px 20px;background:#fff;border:1.5px solid #e0e2ea;border-radius:12px;font-size:.9rem;font-weight:500;color:var(--d-navy);cursor:pointer;transition:background .18s,border-color .18s,box-shadow .18s;font-family:inherit}.auth-btn[_ngcontent-%COMP%]:disabled{opacity:.65;cursor:not-allowed}.spinner[_ngcontent-%COMP%]{width:18px;height:18px;border:2px solid #e0e2ea;border-top-color:var(--d-primary);border-radius:50%;animation:spin .8s linear infinite;flex-shrink:0}.auth-btn[_ngcontent-%COMP%]:hover{background:#f8f9ff;border-color:var(--d-primary-soft);box-shadow:0 2px 12px color-mix(in oklch,var(--d-primary) 8%,transparent)}.email-btn[_ngcontent-%COMP%]{margin-bottom:0}.provider-icon[_ngcontent-%COMP%]{width:20px;height:20px;flex-shrink:0}.auth-btn[_ngcontent-%COMP%]   svg[viewBox="0 0 24 24"][_ngcontent-%COMP%]:not(.provider-icon){stroke:#6b7280;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.divider[_ngcontent-%COMP%]{display:flex;align-items:center;gap:12px;margin:16px 0;color:#9ca3af;font-size:.82rem}.divider[_ngcontent-%COMP%]:before, .divider[_ngcontent-%COMP%]:after{content:"";flex:1;height:1px;background:#e8eaf0}.terms[_ngcontent-%COMP%]{margin-top:24px;font-size:.72rem;color:#9ca3af;text-align:center;line-height:1.6}.terms[_ngcontent-%COMP%]   a[_ngcontent-%COMP%]{color:var(--d-primary);text-decoration:none}.terms[_ngcontent-%COMP%]   a[_ngcontent-%COMP%]:hover{text-decoration:underline}.back-btn[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px;background:none;border:none;color:var(--d-primary);font-size:.82rem;font-weight:600;cursor:pointer;padding:0;margin-bottom:20px;font-family:inherit}.back-btn[_ngcontent-%COMP%]   svg[_ngcontent-%COMP%]{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.form-group[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.form-label[_ngcontent-%COMP%]{font-size:.78rem;font-weight:600;color:#374151}.form-input[_ngcontent-%COMP%]{padding:11px 14px;border:1.5px solid #e0e2ea;border-radius:10px;font-size:.88rem;color:var(--d-navy);background:#fafafa;font-family:inherit;transition:border-color .18s,background .18s;outline:none}.form-input[_ngcontent-%COMP%]::placeholder{color:#c0c5d0}.form-input[_ngcontent-%COMP%]:focus{border-color:var(--d-primary);background:#fff}.password-wrap[_ngcontent-%COMP%]{position:relative;display:flex}.password-wrap[_ngcontent-%COMP%]   .form-input[_ngcontent-%COMP%]{width:100%;padding-right:44px;box-sizing:border-box}.pw-toggle[_ngcontent-%COMP%]{position:absolute;top:0;right:0;height:100%;width:42px;display:flex;align-items:center;justify-content:center;padding:0;border:none;background:none;cursor:pointer;color:#9ca3af;transition:color .18s}.pw-toggle[_ngcontent-%COMP%]:hover{color:var(--d-primary)}.pw-toggle[_ngcontent-%COMP%]   .material-symbols-rounded[_ngcontent-%COMP%]{font-size:20px}.turnstile-wrap[_ngcontent-%COMP%]{display:flex;justify-content:center;margin:4px 0 16px;min-height:65px;max-width:100%;overflow:hidden}.submit-btn[_ngcontent-%COMP%]{width:100%;padding:13px;background:linear-gradient(135deg,var(--d-primary),var(--d-accent));border:none;border-radius:999px;font-size:.9rem;font-weight:700;color:#fff;cursor:pointer;margin-top:4px;transition:opacity .2s,transform .15s;font-family:inherit}.submit-btn[_ngcontent-%COMP%]:hover{opacity:.88;transform:translateY(-1px)}.submit-btn[_ngcontent-%COMP%]:disabled{opacity:.65;
1cursor:not-allowed;transform:none}.register-link[_ngcontent-%COMP%]{margin-top:16px;font-size:.78rem;color:#6b7280;text-align:center}.register-link[_ngcontent-%COMP%]   a[_ngcontent-%COMP%]{color:var(--d-primary);font-weight:600;cursor:pointer;text-decoration:none}.register-link[_ngcontent-%COMP%]   a[_ngcontent-%COMP%]:hover{text-decoration:underline}.forgot-link[_ngcontent-%COMP%]{margin:-6px 0 14px;text-align:right;font-size:.78rem}.forgot-link[_ngcontent-%COMP%]   a[_ngcontent-%COMP%]{color:var(--d-primary);font-weight:600;cursor:pointer;text-decoration:none}.forgot-link[_ngcontent-%COMP%]   a[_ngcontent-%COMP%]:hover{text-decoration:underline}.modal-desc[_ngcontent-%COMP%]{margin:-4px 0 18px;font-size:.85rem;line-height:1.45;color:#6b7280;text-align:center}.reset-notice[_ngcontent-%COMP%]{margin:0 0 14px;padding:10px 12px;font-size:.85rem;line-height:1.45;color:#b45309;background:#f59e0b1a;border:1px solid rgba(245,158,11,.35);border-radius:8px;text-align:center}html:not(.light)[_nghost-%COMP%]   .modal[_ngcontent-%COMP%], html:not(.light)   [_nghost-%COMP%]   .modal[_ngcontent-%COMP%]{background:#0d1424;border:1px solid #1e2a44;box-shadow:0 24px 60px #00000080}html:not(.light)[_nghost-%COMP%]   .title[_ngcontent-%COMP%], html:not(.light)   [_nghost-%COMP%]   .title[_ngcontent-%COMP%]{color:#f9fafb}html:not(.light)[_nghost-%COMP%]   .close-btn[_ngcontent-%COMP%], html:not(.light)   [_nghost-%COMP%]   .close-btn[_ngcontent-%COMP%]{background:var(--d-navy);color:#9ca3af}html:not(.light)[_nghost-%COMP%]   .close-btn[_ngcontent-%COMP%]:hover, html:not(.light)   [_nghost-%COMP%]   .close-btn[_ngcontent-%COMP%]:hover{background:#1e2a44;color:#e2e2f0}html:not(.light)[_nghost-%COMP%]   .auth-btn[_ngcontent-%COMP%], html:not(.light)   [_nghost-%COMP%]   .auth-btn[_ngcontent-%COMP%]{background:#0f1726;border-color:#22304d;color:#e2e2f0}html:not(.light)[_nghost-%COMP%]   .auth-btn[_ngcontent-%COMP%]:hover, html:not(.light)   [_nghost-%COMP%]   .auth-btn[_ngcontent-%COMP%]:hover{background:var(--d-navy);border-color:var(--d-primary);box-shadow:0 2px 12px color-mix(in oklch,var(--d-primary) 18%,transparent)}html:not(.light)[_nghost-%COMP%]   .auth-btn[_ngcontent-%COMP%]   svg[viewBox="0 0 24 24"][_ngcontent-%COMP%]:not(.provider-icon), html:not(.light)   [_nghost-%COMP%]   .auth-btn[_ngcontent-%COMP%]   svg[viewBox="0 0 24 24"][_ngcontent-%COMP%]:not(.provider-icon){stroke:#9ca3af}html:not(.light)[_nghost-%COMP%]   .divider[_ngcontent-%COMP%], html:not(.light)   [_nghost-%COMP%]   .divider[_ngcontent-%COMP%]{color:#6b7280}html:not(.light)[_nghost-%COMP%]   .divider[_ngcontent-%COMP%]:before, html:not(.light)   [_nghost-%COMP%]   .divider[_ngcontent-%COMP%]:before, html:not(.light)[_nghost-%COMP%]   .divider[_ngcontent-%COMP%]:after, html:not(.light)   [_nghost-%COMP%]   .divider[_ngcontent-%COMP%]:after{background:#1e2a44}html:not(.light)[_nghost-%COMP%]   .form-label[_ngcontent-%COMP%], html:not(.light)   [_nghost-%COMP%]   .form-label[_ngcontent-%COMP%]{color:#cbd5e1}html:not(.light)[_nghost-%COMP%]   .form-input[_ngcontent-%COMP%], html:not(.light)   [_nghost-%COMP%]   .form-input[_ngcontent-%COMP%]{background:#0f1726;border-color:#22304d;color:#f1f5f9}html:not(.light)[_nghost-%COMP%]   .form-input[_ngcontent-%COMP%]::placeholder, html:not(.light)   [_nghost-%COMP%]   .form-input[_ngcontent-%COMP%]::placeholder{color:#5b6678}html:not(.light)[_nghost-%COMP%]   .form-input[_ngcontent-%COMP%]:focus, html:not(.light)   [_nghost-%COMP%]   .form-input[_ngcontent-%COMP%]:focus{border-color:var(--d-primary);background:var(--d-navy)}html:not(.light)[_nghost-%COMP%]   .pw-toggle[_ngcontent-%COMP%], html:not(.light)   [_nghost-%COMP%]   .pw-toggle[_ngcontent-%COMP%]{color:#6b7280}html:not(.light)[_nghost-%COMP%]   .pw-toggle[_ngcontent-%COMP%]:hover, html:not(.light)   [_nghost-%COMP%]   .pw-toggle[_ngcontent-%COMP%]:hover{color:var(--d-primary-bright)}html:not(.light)[_nghost-%COMP%]   .spinner[_ngcontent-%COMP%], html:not(.light)   [_nghost-%COMP%]   .spinner[_ngcontent-%COMP%]{border-color:#22304d;border-top-color:var(--d-primary-bright)}html:not(.light)[_nghost-%COMP%]   .terms[_ngcontent-%COMP%], html:not(.light)   [_nghost-%COMP%]   .terms[_ngcontent-%COMP%]{color:#6b7280}
1html:not(.light)[_nghost-%COMP%]   .modal-desc[_ngcontent-%COMP%], html:not(.light)   [_nghost-%COMP%]   .modal-desc[_ngcontent-%COMP%]{color:#9ca3af}html:not(.light)[_nghost-%COMP%]   .register-link[_ngcontent-%COMP%], html:not(.light)   [_nghost-%COMP%]   .register-link[_ngcontent-%COMP%]{color:#9ca3af}html:not(.light)[_nghost-%COMP%]   .terms[_ngcontent-%COMP%]   a[_ngcontent-%COMP%], html:not(.light)   [_nghost-%COMP%]   .terms[_ngcontent-%COMP%]   a[_ngcontent-%COMP%], html:not(.light)[_nghost-%COMP%]   .register-link[_ngcontent-%COMP%]   a[_ngcontent-%COMP%], html:not(.light)   [_nghost-%COMP%]   .register-link[_ngcontent-%COMP%]   a[_ngcontent-%COMP%], html:not(.light)[_nghost-%COMP%]   .forgot-link[_ngcontent-%COMP%]   a[_ngcontent-%COMP%], html:not(.light)   [_nghost-%COMP%]   .forgot-link[_ngcontent-%COMP%]   a[_ngcontent-%COMP%], html:not(.light)[_nghost-%COMP%]   .back-btn[_ngcontent-%COMP%], html:not(.light)   [_nghost-%COMP%]   .back-btn[_ngcontent-%COMP%]{color:var(--d-primary-bright)}'],changeDetection:0})}}return t})();var ms=(t,o)=>o.id;function gs(t,o){t&1&&(U(0,"span",4),d(1,"error"),N())}function us(t,o){t&1&&(U(0,"span",4),d(1,"schedule"),N())}function _s(t,o){t&1&&(U(0,"span",4),d(1,"timer"),N())}function hs(t,o){t&1&&(U(0,"span",4),d(1,"check_circle"),N())}function fs(t,o){if(t&1){let e=I();U(0,"button",8),Ne("click",function(){x(e);let i=p().$implicit;return b(i.action.onClick())}),d(1),N()}if(t&2){let e=p().$implicit;r(),h(e.action.label)}}function Cs(t,o){if(t&1){let e=I();U(0,"div",2)(1,"span",3),v(2,gs,2,0,"span",4)(3,us,2,0,"span",4)(4,_s,2,0,"span",4)(5,hs,2,0,"span",4),N(),U(6,"span",5),d(7),N(),v(8,fs,2,1,"button",6),U(9,"button",7),Ne("click",function(){let i=x(e).$implicit,c=p();return b(c.toast.dismiss(i.id))}),U(10,"span",4),d(11,"close"),N()()()}if(t&2){let e,n=o.$implicit;fo(Co("toast toast-",n.type)),L("leaving",n.leaving),r(2),M((e=n.type)==="error"?2:e==="info"?3:e==="warning"?4:5),r(5),h(n.message),r(),M(n.action?8:-1)}}var lr=(()=>{class t{constructor(){this.toast=O(Oe),this.router=O(ve),this.currentUrl=nr(this.router.events.pipe(ke(e=>e instanceof tt),Se(e=>e.urlAfterRedirects),no(this.router.url),Se(e=>e.split("?")[0].split("#")[0])),{requireSync:!0}),this.onStudio=z(()=>{let e=this.currentUrl();return e==="/studio"||e.startsWith("/studio/")})}static{this.\u0275fac=function(n){return new(n||t)}}static{this.\u0275cmp=ue({type:t,selectors:[["app-toast"]],decls:3,vars:2,consts:[[1,"toast-container"],["role","alert",3,"class","leaving"],["role","alert"],[1,"toast-icon-wrap"],[1,"material-symbols-rounded"],[1,"toast-msg"],[1,"toast-action"],["aria-label","Dismiss",1,"toast-close",3,"click"],[1,"toast-action",3,"click"]],template:function(n,i){n&1&&(U(0,"div",0),G(1,Cs,12,8,"div",1,ms),N()),n&2&&(L("studio",i.onStudio()),r(),W(i.toast.toasts()))},styles:['.toast-container[_ngcontent-%COMP%]{position:fixed;bottom:24px;right:24px;display:flex;flex-direction:column;gap:12px;z-index:9999;pointer-events:none;max-width:min(92vw,420px)}@media(min-width:641px){.toast-container.studio[_ngcontent-%COMP%]{bottom:108px}}.toast[_ngcontent-%COMP%]{--toast-accent: var(--d-primary);position:relative;display:flex;align-items:center;gap:13px;padding:14px 16px 14px 18px;border-radius:16px;overflow:hidden;color:var(--d-fg);background:color-mix(in oklch,var(--d-popover) 80%,transparent);border:1px solid var(--d-border);box-shadow:0 14px 40px -10px #0000008c,inset 0 1px #ffffff0a;backdrop-filter:blur(16px) saturate(1.5);-webkit-backdrop-filter:blur(16px) saturate(1.5);pointer-events:all;animation:_ngcontent-%COMP%_toast-in .42s cubic-bezier(.22,1,.36,1)}.toast[_ngcontent-%COMP%]:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(to bottom,var(--toast-accent),color-mix(in oklch,var(--toast-accent) 35%,transparent))}.toast[_ngcontent-%COMP%]:after{content:"";position:absolute;inset:0;background:radial-gradient(130% 90% at 0% 0%,color-mix(in oklch,var(--toast-accent) 15%,transparent),transparent 58%);pointer-events:none}.toast[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{position:relative;z-index:1}.toast-icon-wrap[_ngcontent-%COMP%]{display:grid;place-items:center;width:34px;height:34px;flex-shrink:0;border-radius:11px;color:var(--toast-accent);background:color-mix(in oklch,var(--toast-accent) 18%,transparent);box-shadow:inset 0 0 0 1px color-mix(in oklch,var(--toast-accent) 32%,transparent),
10 0 18px -3px color-mix(in oklch,var(--toast-accent) 55%,transparent)}.toast-icon-wrap[_ngcontent-%COMP%]   .material-symbols-rounded[_ngcontent-%COMP%]{font-size:20px;display:block}.toast-msg[_ngcontent-%COMP%]{flex:1;font-size:13px;line-height:1.45;font-weight:500;letter-spacing:.005em}.toast-action[_ngcontent-%COMP%]{flex-shrink:0;padding:6px 13px;border:none;border-radius:9px;font-family:inherit;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;cursor:pointer;color:var(--d-primary-fg);background:var(--d-grad);transition:filter .15s,transform .15s}.toast-action[_ngcontent-%COMP%]:hover{filter:brightness(1.1);transform:translateY(-1px)}.toast-action[_ngcontent-%COMP%]:active{transform:translateY(0)}.toast-close[_ngcontent-%COMP%]{display:grid;place-items:center;width:26px;height:26px;flex-shrink:0;border:none;border-radius:8px;background:transparent;color:var(--d-muted-fg);cursor:pointer;transition:background .15s,color .15s}.toast-close[_ngcontent-%COMP%]:hover{background:color-mix(in oklch,var(--d-fg) 10%,transparent);color:var(--d-fg)}.toast-close[_ngcontent-%COMP%]   .material-symbols-rounded[_ngcontent-%COMP%]{font-size:17px;display:block}.toast-error[_ngcontent-%COMP%]{--toast-accent: oklch(.68 .2 22)}.toast-success[_ngcontent-%COMP%]{--toast-accent: oklch(.74 .17 152)}.toast-warning[_ngcontent-%COMP%]{--toast-accent: oklch(.78 .16 65)}.toast-info[_ngcontent-%COMP%]{--toast-accent: oklch(.72 .14 215)}html.light[_nghost-%COMP%]   .toast[_ngcontent-%COMP%], html.light   [_nghost-%COMP%]   .toast[_ngcontent-%COMP%]{box-shadow:0 12px 32px -12px #141e3c4d,inset 0 1px #fff9}@keyframes _ngcontent-%COMP%_toast-in{0%{opacity:0;transform:translate(42px) scale(.96)}to{opacity:1;transform:translate(0) scale(1)}}.toast.leaving[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_toast-out .18s ease forwards;pointer-events:none}@keyframes _ngcontent-%COMP%_toast-out{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(42px) scale(.96)}}@media(max-width:768px){.toast-container[_ngcontent-%COMP%]{bottom:16px;right:12px;left:12px;max-width:none;align-items:stretch}.toast[_ngcontent-%COMP%]{width:100%;animation:toast-in-mobile .4s cubic-bezier(.22,1,.36,1)}@keyframes toast-in-mobile{0%{opacity:0;transform:translateY(24px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.toast.leaving[_ngcontent-%COMP%]{animation:toast-out-mobile .18s ease forwards}@keyframes toast-out-mobile{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(24px) scale(.98)}}}@media(prefers-reduced-motion:reduce){.toast[_ngcontent-%COMP%]{animation:toast-fade .2s ease}.toast.leaving[_ngcontent-%COMP%]{animation:toast-fade .15s ease reverse forwards}@keyframes toast-fade{0%{opacity:0}to{opacity:1}}}'],changeDetection:0})}}return t})();var Ms=(t,o)=>o.packKey;function ys(t,o){t&1&&(s(0,"div",8),d(1),m(2,"t"),l()),t&2&&(r(),h(g(2,1,"common.loading")))}function Os(t,o){t&1&&(s(0,"div",8),d(1),m(2,"t"),l()),t&2&&(r(),h(g(2,1,"billing.topup_empty")))}function Ps(t,o){if(t&1){let e=I();s(0,"button",13),C("click",function(){let i=x(e).$implicit,c=p(2);return b(c.selected.set(i))}),s(1,"span",14)(2,"span",15)(3,"span",16),d(4,"bolt"),l(),d(5),m(6,"number"),m(7,"t"),l(),s(8,"span",17),d(9),l()(),s(10,"span",18),d(11),l()()}if(t&2){let e,n=o.$implicit,i=p(2);L("selected",((e=i.selected())==null?null:e.packKey)===n.packKey),r(5),pn(" ",g(6,6,n.credits)," ",g(7,8,"billing.topup_credits_suffix")," "),r(4),h(n.name),r(2),h(i.curr.format(n.price))}}function ws(t,o){if(t&1&&G(0,Ps,12,10,"button",12,Ms),t&2){let e=p();W(e.packs())}}function ks(t,o){t&1&&(d(0),m(1,"t")),t&2&&B(" ",g(1,1,"common.loading")," ")}function Es(t,o){if(t&1&&(d(0),m(1,"t"),s(2,"span",20)(3,"span",5),d(4,"bolt"),l(),d(5),m(6,"number"),l()),t&2){let e,n=p(2);B(" ",g(1,2,"billing.topup_buy")," "),r(5),B(" ",g(6,4,(e=n.selected())==null?null:e.credits)," ")}}function Ts(t,o){if(t&1){let e=I();s(0,"button",19),C("click",function(){x(e);let i=p();return b(i.buy())}),v(1,ks,2,3)(2,Es,7,6),l()}if(t&2){let e=p();S("disabled",!e.selected()||e.buying()),r(),M(e.buying()?1:2)}}function Ss(t,o){if(t&1){let e=I();s(0,"app-payment-method-modal",21),C("chosen",function(i){x(e);let c=p();return b(c.onProviderChosen(i))})("cancelled",function(){x(e);let i=p();return b(i.closePayModal())}),l()}if(t&2){let e=p();S("rubPrice",e.payModalRub())("busy",e.buying())("nested",!0)}}var dr=(()=>{class t{constructor(e,n,i,c,_){this.subscriptionService=e,this.toast=n,this.ts=i,this.curr=c,this.paymentReturn=_,this.userId=null,this.closed=new rn,this.packs=P([]),this.selected=P(null),this.loading=P(!1),this.buying=P(!1),this.payModalOpen=P(!1),this.onPageShow=E=>{E.persisted&&(this.buying.set(!1),this.payModalOpen.set(!1))}}ngOnInit(){this.loading.set(!0),this.subscriptionService.getTopupPacks().then(e=>{this.packs.set(e),e.length&&this.selected.set(e[Math.floor(e.length/2)])}).catch(()=>
1this.toast.error(this.ts.t("billing.topup_error"))).finally(()=>this.loading.set(!1)),window.addEventListener("pageshow",this.onPageShow)}ngOnDestroy(){window.removeEventListener("pageshow",this.onPageShow)}buy(){!this.userId||!this.selected()||this.buying()||this.payModalOpen.set(!0)}payModalRub(){return this.selected()?.priceRub??0}closePayModal(){this.buying()||this.payModalOpen.set(!1)}onProviderChosen(e){return fe(this,null,function*(){let n=this.selected();if(!(!this.userId||!n||this.buying())){this.buying.set(!0);try{let i=yield this.subscriptionService.createTopupCheckout(this.userId,n.packKey,e);e==="YOOKASSA"&&this.paymentReturn.stash({provider:"YOOKASSA",userId:this.userId,sessionId:i.sessionId,kind:"topup"}),window.location.href=i.checkoutUrl}catch(i){this.buying.set(!1),this.payModalOpen.set(!1),this.toast.error(this.ts.t("billing.topup_error"))}}})}close(){this.closed.emit()}onOverlayClick(e){e.target===e.currentTarget&&this.close()}static{this.\u0275fac=function(n){return new(n||t)($(vn),$(Oe),$(q),$(Mn),$(yn))}}static{this.\u0275cmp=ue({type:t,selectors:[["app-topup-modal"]],inputs:{userId:"userId"},outputs:{closed:"closed"},decls:22,vars:15,consts:[[1,"overlay",3,"click"],["role","dialog","aria-modal","true","aria-labelledby","topup-modal-title","appModalDialog","",1,"modal",3,"dialogClose"],[1,"modal-header"],["id","topup-modal-title",1,"modal-title"],[1,"close-btn",3,"click"],[1,"material-symbols-rounded"],[1,"modal-subtitle"],[1,"packs"],[1,"empty"],[1,"btn-create",3,"disabled"],[1,"modal-footer"],[3,"rubPrice","busy","nested"],[1,"pack",3,"selected"],[1,"pack",3,"click"],[1,"pack-info"],[1,"pack-credits"],[1,"material-symbols-rounded","pack-bolt"],[1,"pack-name"],[1,"pack-price"],[1,"btn-create",3,"click","disabled"],[1,"credits-tag"],[3,"chosen","cancelled","rubPrice","busy","nested"]],template:function(n,i){n&1&&(s(0,"div",0),C("click",function(_){return i.onOverlayClick(_)}),s(1,"div",1),C("dialogClose",function(){return i.close()}),s(2,"div",2)(3,"span",3),d(4),m(5,"t"),l(),s(6,"button",4),m(7,"t"),C("click",function(){return i.close()}),s(8,"span",5),d(9,"close"),l()()(),s(10,"p",6),d(11),m(12,"t"),l(),s(13,"div",7),v(14,ys,3,3,"div",8)(15,Os,3,3,"div",8)(16,ws,2,0),l(),v(17,Ts,3,2,"button",9),s(18,"p",10),d(19),m(20,"t"),l()()(),v(21,Ss,1,3,"app-payment-method-modal",11)),n&2&&(r(4),h(g(5,7,"billing.topup_title")),r(2),ie("aria-label",g(7,9,"common.close")),r(5),h(g(12,11,"billing.topup_subtitle")),r(3),M(i.loading()?14:i.packs().length===0?15:16),r(3),M(!i.loading()&&i.packs().length>0?17:-1),r(2),h(g(20,13,"billing.topup_footer")),r(2),M(i.payModalOpen()?21:-1))},dependencies:[je,bn,jo,un,ye],styles:[".modal[_ngcontent-%COMP%]{background:#fff;border-radius:16px;width:440px;max-width:calc(100vw - 32px);max-height:86vh;padding:22px 22px 18px;display:flex;flex-direction:column;gap:14px;box-shadow:0 20px 60px #0000002e;animation:slideUp .18s ease}.modal-header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between}.close-btn[_ngcontent-%COMP%]{border-radius:50%}.modal-title[_ngcontent-%COMP%]{font-size:1rem;font-weight:700;color:var(--d-navy)}.modal-subtitle[_ngcontent-%COMP%]{font-size:.8rem;line-height:1.4;color:#6b7280;margin:-8px 0 0}.packs[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:10px;overflow-y:auto}.empty[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;height:110px;font-size:.85rem;color:#9ca3af}.pack[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:1.5px solid #e8eaf0;border-radius:12px;background:#fafafa;cursor:pointer;font-family:inherit;text-align:left;transition:border-color .15s,background .15s}.pack[_ngcontent-%COMP%]:hover{border-color:var(--d-primary);background:#eff6ff}.pack.selected[_ngcontent-%COMP%]{border-color:var(--d-primary);background:#eff6ff;box-shadow:0 0 0 1px var(--d-primary) inset}.pack-info[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:3px}.pack-credits[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px;font-size:1.05rem;font-weight:800;color:var(--d-navy)}.pack-bolt[_ngcontent-%COMP%]{font-size:1.1rem;color:#f59e0b}
1.pack-name[_ngcontent-%COMP%]{font-size:.75rem;color:#9ca3af}.pack-price[_ngcontent-%COMP%]{font-size:.95rem;font-weight:700;color:var(--d-primary);white-space:nowrap}.modal-footer[_ngcontent-%COMP%]{text-align:center;font-size:.72rem;color:#9ca3af;margin:0}html.dark[_nghost-%COMP%]   .modal[_ngcontent-%COMP%], html.dark   [_nghost-%COMP%]   .modal[_ngcontent-%COMP%]{background:#0d1424}html.dark[_nghost-%COMP%]   .modal-title[_ngcontent-%COMP%], html.dark   [_nghost-%COMP%]   .modal-title[_ngcontent-%COMP%]{color:#e2e2f0}html.dark[_nghost-%COMP%]   .modal-subtitle[_ngcontent-%COMP%], html.dark   [_nghost-%COMP%]   .modal-subtitle[_ngcontent-%COMP%]{color:#9ca3af}html.dark[_nghost-%COMP%]   .pack[_ngcontent-%COMP%], html.dark   [_nghost-%COMP%]   .pack[_ngcontent-%COMP%]{background:#0f1726;border-color:#22304d}html.dark[_nghost-%COMP%]   .pack[_ngcontent-%COMP%]:hover, html.dark   [_nghost-%COMP%]   .pack[_ngcontent-%COMP%]:hover{border-color:var(--d-primary-bright);background:var(--d-navy-deep)}html.dark[_nghost-%COMP%]   .pack.selected[_ngcontent-%COMP%], html.dark   [_nghost-%COMP%]   .pack.selected[_ngcontent-%COMP%]{border-color:var(--d-primary-bright);background:var(--d-navy-deep);box-shadow:0 0 0 1px var(--d-primary-bright) inset}html.dark[_nghost-%COMP%]   .pack-credits[_ngcontent-%COMP%], html.dark   [_nghost-%COMP%]   .pack-credits[_ngcontent-%COMP%]{color:#e2e2f0}html.dark[_nghost-%COMP%]   .pack-name[_ngcontent-%COMP%], html.dark   [_nghost-%COMP%]   .pack-name[_ngcontent-%COMP%]{color:#6b7280}html.dark[_nghost-%COMP%]   .pack-price[_ngcontent-%COMP%], html.dark   [_nghost-%COMP%]   .pack-price[_ngcontent-%COMP%]{color:var(--d-primary-bright)}html.light[_nghost-%COMP%]   .close-btn[_ngcontent-%COMP%], html.light   [_nghost-%COMP%]   .close-btn[_ngcontent-%COMP%]{background:var(--d-muted);color:var(--d-muted-fg)}html.light[_nghost-%COMP%]   .close-btn[_ngcontent-%COMP%]:hover, html.light   [_nghost-%COMP%]   .close-btn[_ngcontent-%COMP%]:hover{background:color-mix(in oklch,var(--d-primary) 9%,transparent);color:var(--d-primary)}html.light[_nghost-%COMP%]   .modal[_ngcontent-%COMP%], html.light   [_nghost-%COMP%]   .modal[_ngcontent-%COMP%]{background:var(--d-card)}html.light[_nghost-%COMP%]   .modal-title[_ngcontent-%COMP%], html.light   [_nghost-%COMP%]   .modal-title[_ngcontent-%COMP%]{color:var(--d-fg)}html.light[_nghost-%COMP%]   .modal-subtitle[_ngcontent-%COMP%], html.light   [_nghost-%COMP%]   .modal-subtitle[_ngcontent-%COMP%]{color:var(--d-muted-fg)}html.light[_nghost-%COMP%]   .pack[_ngcontent-%COMP%], html.light   [_nghost-%COMP%]   .pack[_ngcontent-%COMP%]{background:var(--d-muted);border-color:var(--d-border)}html.light[_nghost-%COMP%]   .pack[_ngcontent-%COMP%]:hover, html.light   [_nghost-%COMP%]   .pack[_ngcontent-%COMP%]:hover{border-color:var(--d-primary);background:color-mix(in oklch,var(--d-primary) 8%,transparent)}html.light[_nghost-%COMP%]   .pack.selected[_ngcontent-%COMP%], html.light   [_nghost-%COMP%]   .pack.selected[_ngcontent-%COMP%]{border-color:var(--d-primary);background:color-mix(in oklch,var(--d-primary) 10%,transparent);box-shadow:0 0 0 1px var(--d-primary) inset}html.light[_nghost-%COMP%]   .pack-credits[_ngcontent-%COMP%], html.light   [_nghost-%COMP%]   .pack-credits[_ngcontent-%COMP%]{color:var(--d-fg)}html.light[_nghost-%COMP%]   .pack-name[_ngcontent-%COMP%], html.light   [_nghost-%COMP%]   .pack-name[_ngcontent-%COMP%]{color:var(--d-muted-fg)}html.light[_nghost-%COMP%]   .pack-price[_ngcontent-%COMP%], html.light   [_nghost-%COMP%]   .pack-price[_ngcontent-%COMP%]{color:var(--d-primary)}"],changeDetection:0})}}return t})();var Is=(t,o)=>o.id;function As(t,o){if(t&1&&(U(0,"p",8),d(1),m(2,"t"),U(3,"span",11)(4,"span",5),d(5,"bolt"),N(),d(6),m(7,"number"),N(),d(8),m(9,"t"),N()),t&2){let e=p(2);r(),B(" ",g(2,3,"survey.success_prefix")," "),r(5),h(g(7,5,e.granted())),r(2),B(" ",g(9,7,"survey.success_suffix")," ")}}function Ds(t,o){if(t&1){let e=I();U(0,"div",6)(1,"span",7),d(2,"check_circle"),N(),v(3,As,10,9,"p",8),U(4,"p",9),d(5),m(6,"t"),N(),U(7,"button",10),Ne("
1click",function(){x(e);let i=p();return b(i.close())}),d(8),m(9,"t"),N()()}if(t&2){let e=p();r(3),M(e.granted()>0?3:-1),r(2),h(g(6,3,"survey.success_body")),r(3),h(g(9,5,"survey.done"))}}function Ls(t,o){if(t&1&&(U(0,"p",12),d(1),N()),t&2){let e=p(2);r(),h(e.intro())}}function Rs(t,o){if(t&1&&(U(0,"p",13),d(1),m(2,"t"),U(3,"span",11)(4,"span",5),d(5,"bolt"),N(),d(6),m(7,"number"),N(),d(8),m(9,"t"),N()),t&2){let e=p(2);r(),B(" ",g(2,3,"survey.reward_prefix")," "),r(5),h(g(7,5,e.reward())),r(2),B(" ",g(9,7,"survey.reward_suffix")," ")}}function Ns(t,o){t&1&&(U(0,"span",20),d(1,"*"),N())}function Bs(t,o){if(t&1){let e=I();U(0,"button",24),Ne("click",function(){let i=x(e).$implicit,c=p(2).$implicit,_=p(2);return b(_.selectScale(c.id,i))}),d(1),N()}if(t&2){let e=o.$implicit,n=p(2).$implicit,i=p(2);L("selected",i.isScaleSelected(n.id,e)),ie("aria-pressed",i.isScaleSelected(n.id,e)),r(),h(e)}}function Vs(t,o){if(t&1&&(U(0,"div",21),G(1,Bs,2,4,"button",23,ho),N()),t&2){let e=p().$implicit;ie("aria-label",e.text),r(),W(e.range)}}function Fs(t,o){if(t&1){let e=I();U(0,"textarea",25),m(1,"t"),Ne("input",function(i){x(e);let c=p().$implicit,_=p(2);return b(_.onText(c.id,i))}),N()}if(t&2){let e=p().$implicit;ln("placeholder",g(1,2,"survey.answer_placeholder")),ie("aria-label",e.text)}}function Us(t,o){if(t&1&&(U(0,"div",15)(1,"div",19),d(2),v(3,Ns,2,0,"span",20),N(),v(4,Vs,3,1,"div",21)(5,Fs,2,4,"textarea",22),N()),t&2){let e=o.$implicit;r(2),B(" ",e.text," "),r(),M(e.required?3:-1),r(),M(e.type==="SCALE"?4:5)}}function zs(t,o){if(t&1&&(U(0,"p",16),d(1),m(2,"t"),N()),t&2){let e=p(2);r(),h(g(2,1,e.errorKey()))}}function js(t,o){if(t&1){let e=I();v(0,Ls,2,1,"p",12),v(1,Rs,10,9,"p",13),U(2,"div",14),G(3,Us,6,3,"div",15,Is),N(),v(5,zs,3,3,"p",16),U(6,"button",17),Ne("click",function(){x(e);let i=p();return b(i.submit())}),d(7),m(8,"t"),m(9,"t"),N(),U(10,"button",18),Ne("click",function(){x(e);let i=p();return b(i.dontAskAgain())}),d(11),m(12,"t"),N()}if(t&2){let e=p();M(e.intro()?0:-1),r(),M(e.reward()>0?1:-1),r(2),W(e.view()),r(2),M(e.errorKey()?5:-1),r(),ln("disabled",!e.canSubmit()||e.submitting()),r(),B(" ",e.submitting()?g(8,7,"common.loading"):g(9,9,"survey.submit")," "),r(3),ln("disabled",e.optingOut()),r(),B(" ",g(12,11,"survey.dont_ask")," ")}}var Hs=new Set(["error.survey.alreadyResponded","error.survey.notActive","error.survey.notFound"]),pr=(()=>{class t{constructor(){this.survey=Vt.required(),this.userId=Vt(null),this.closed=xo(),this.ts=O(q),this.surveys=O($o),this.creditBalance=O(On),this.scale=P({}),this.text=P({}),this.submitting=P(!1),this.optingOut=P(!1),this.success=P(!1),this.granted=P(0),this.errorKey=P(null),this.ordered=z(()=>Go(this.survey().questions)),this.view=z(()=>{let e=this.ts.lang();return this.ordered().map(n=>({id:n.id,type:n.type,required:n.required,text:Pn(e,n.textEn,n.textRu,n.textHy),range:n.type==="SCALE"?Wo(n):[]}))}),this.title=z(()=>{let e=this.survey();return Pn(this.ts.lang(),e.titleEn,e.titleRu,e.titleHy)}),this.intro=z(()=>{let e=this.survey();return Pn(this.ts.lang(),e.introEn??"",e.introRu??"",e.introHy??"")}),this.reward=z(()=>this.survey().rewardCredits),this.answerState=z(()=>({scale:this.scale(),text:this.text()})),this.canSubmit=z(()=>Yo(this.survey().questions,this.answerState()))}selectScale(e,n){this.scale.update(i=>be(ae({},i),{[e]:n}))}isScaleSelected(e,n){return this.scale()[e]===n}onText(e,n){let i=n.target.value;this.text.update(c=>be(ae({},c),{[e]:i}))}submit(){return fe(this,null,function*(){if(!this.canSubmit()||this.submitting())return;this.errorKey.set(null),this.submitting.set(!0);let e=qo(this.survey().questions,this.answerState());try{let n=yield this.surveys.submitAnswers(this.survey().id,e);if(this.granted.set(n.rewardCredits),n.creditBalance!=null)this.creditBalance.setBalance(n.creditBalance);else if(n.rewardCredits>0){let i=this.userId();i&&(yield this.creditBalance.refresh(i))}this.success.set(!0)}catch(n){let i=this.errorCode(n);if(i&&Hs.has(i)){this.close();return}this.errorKey.set(i??"error.unknown")}finally{this.submitting.set(!1)}})}dontAskAgain(){return fe(this,null,function*(){if(!this.optingOut()){this.optingOut.set(!0);try{yield this.surveys.optOut(this.survey().id)}catch(e){}finally{this.optingOut.set(!1),this.close()}}})}
1close(){this.closed.emit()}onOverlayClick(e){e.target===e.currentTarget&&this.close()}errorCode(e){if(e instanceof Be){let n=e.error?.code;return typeof n=="string"?n:null}return null}static{this.\u0275fac=function(n){return new(n||t)}}static{this.\u0275cmp=ue({type:t,selectors:[["app-survey-modal"]],inputs:{survey:[1,"survey"],userId:[1,"userId"]},outputs:{closed:"closed"},decls:12,vars:7,consts:[[1,"overlay",3,"click"],["role","dialog","aria-modal","true","aria-labelledby","survey-modal-title",1,"modal"],[1,"modal-header"],["id","survey-modal-title",1,"modal-title"],["type","button",1,"close-btn",3,"click"],[1,"material-symbols-rounded"],[1,"success"],[1,"material-symbols-rounded","success-icon"],[1,"success-reward"],[1,"success-body"],["type","button",1,"btn-create",3,"click"],[1,"reward-tag"],[1,"modal-subtitle"],[1,"reward-line"],[1,"questions"],[1,"question"],[1,"field-error"],["type","button",1,"btn-create",3,"click","disabled"],["type","button",1,"dont-ask",3,"click","disabled"],[1,"question-text"],["aria-hidden","true",1,"required"],["role","group",1,"scale"],["rows","3",1,"answer-input",3,"placeholder"],["type","button",1,"chip",3,"selected"],["type","button",1,"chip",3,"click"],["rows","3",1,"answer-input",3,"input","placeholder"]],template:function(n,i){n&1&&(U(0,"div",0),Ne("click",function(_){return i.onOverlayClick(_)}),U(1,"div",1)(2,"div",2)(3,"span",3),d(4),m(5,"t"),N(),U(6,"button",4),m(7,"t"),Ne("click",function(){return i.close()}),U(8,"span",5),d(9,"close"),N()()(),v(10,Ds,10,7,"div",6)(11,js,13,13),N()()),n&2&&(r(4),B(" ",i.success()?g(5,3,"survey.success_title"):i.title()," "),r(2),ie("aria-label",g(7,5,"survey.close")),r(4),M(i.success()?10:11))},dependencies:[je,un,ye],styles:[".modal[_ngcontent-%COMP%]{background:var(--d-card);border:1px solid var(--d-border);border-radius:16px;width:460px;max-width:calc(100vw - 32px);max-height:88vh;padding:22px 22px 18px;display:flex;flex-direction:column;gap:14px;box-shadow:0 20px 60px #00000047;animation:slideUp .18s ease;overflow-y:auto}.modal-header[_ngcontent-%COMP%]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.close-btn[_ngcontent-%COMP%]{border-radius:50%;flex-shrink:0}.modal-title[_ngcontent-%COMP%]{font-size:1.05rem;font-weight:700;color:var(--d-fg);line-height:1.35}.modal-subtitle[_ngcontent-%COMP%]{font-size:.82rem;line-height:1.5;color:var(--d-muted-fg);margin:-4px 0 0}.reward-line[_ngcontent-%COMP%]{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:.85rem;font-weight:600;color:var(--d-fg);margin:0;padding:10px 12px;border-radius:12px;background:color-mix(in oklch,var(--d-primary) 10%,transparent);border:1px solid color-mix(in oklch,var(--d-primary) 24%,transparent)}.reward-tag[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:3px;font-weight:800;color:var(--d-primary-bright)}.reward-tag[_ngcontent-%COMP%]   .material-symbols-rounded[_ngcontent-%COMP%]{font-size:1.05rem;color:#f59e0b}.questions[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:18px}.question[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:8px}.question-text[_ngcontent-%COMP%]{font-size:.86rem;font-weight:600;color:var(--d-fg);line-height:1.4}.required[_ngcontent-%COMP%]{color:#ef4444;margin-left:2px}.scale[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:8px}.chip[_ngcontent-%COMP%]{min-width:40px;height:40px;padding:0 10px;border:1.5px solid var(--d-border);border-radius:999px;background:var(--d-muted);color:var(--d-fg);font-family:inherit;font-size:.95rem;font-weight:700;cursor:pointer;transition:border-color .15s,background .15s,color .15s}.chip[_ngcontent-%COMP%]:hover{border-color:var(--d-primary);background:color-mix(in oklch,var(--d-primary) 10%,transparent)}.chip.selected[_ngcontent-%COMP%]{border-color:var(--d-primary);background:var(--d-grad);color:var(--d-primary-fg);box-shadow:0 0 0 1px var(--d-primary) inset}.chip[_ngcontent-%COMP%]:focus-visible{outline:2px solid var(--d-primary);outline-offset:2px}.answer-input[_ngcontent-%COMP%]{width:100%;box-sizing:border-box;resize:vertical;min-height:68px;padding:10px 12px;border:1.5px solid var(--d-border);border-radius:12px;background:var(--d-muted);color:var(--d-fg);font-family:inherit;font-size:.86rem;line-height:1.5;transition:border-color .15s}.answer-input[_ngcontent-%COMP%]::placeholder{color:var(--d-muted-fg)}.answer-input[_ngcontent-%COMP%]:focus{outline:none;border-color:var(--d-primary)}.dont-ask[_ngcontent-%COMP%]{align-self:center;background:none;border:none;padding:2px 6px;font-family:inherit;font-size:.78rem;color:var(--d-muted-fg);text-decoration:underline;cursor:pointer;transition:color .15s}.dont-ask[_ngcontent-%COMP%]:hover{color:var(--d-fg)}.dont-ask[_ngcontent-%COMP%]:disabled{opacity:.6;cursor:default}.success[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;padding:8px 0 4px;animation:fadeUp .18s ease}.success-icon[_ngcontent-%COMP%]{font-size:3rem;color:var(--d-primary-bright);animation:modalPop .22s ease}.success-reward[_ngcontent-%COMP%]{display:flex;align-items:center;flex-wrap:wrap;justify-content:center;gap:6px;font-size:1rem;font-weight:700;color:var(--d-fg);margin:0}.success-body[_ngcontent-%COMP%]{font-size:.84rem;color:var(--d-muted-fg);margin:0}.success[_ngcontent-%COMP%]   .btn-create[_ngcontent-%COMP%]{margin-top:4px;align-self:stretch}@media(max-width:480px){.modal[_ngcontent-%COMP%]{padding:18px 16px 14px}}"],changeDetection:0})}}return t})();var $s=(t,o)=>o.icon,di=(t,o)=>o.route;function Gs(t,o){t&1&&(Ze(),s(0,"svg",16),j(1,"path",18),l())}function Ws(t,o){t&1&&(Ze(),s(0,"svg",17),j(1,"rect",19)(2,"circle",20)(3,"circle",21),l())}function Ys(t,o){t&1&&(Ze(),s(0,"svg",16),j(1,"path",22),l())}function qs(t,o){t&1&&(Ze(),s(0,"svg",16),j(1,"path",23),l())}function Ks(t,o){t&1&&(Ze(),s(0,"svg",16),j(1,"path",24),l())}function Xs(t,o){if(t&1&&(s(0,"a",10),v(1,Gs,2,0,":svg:svg",16),v(2,Ws,4,0,":svg:svg",17),v(3,Ys,2,0,":svg:svg",16),v(4,qs,2,0,":svg:svg",16),v(5,Ks,2,0,":svg:svg",16),l()),t&2){let e=o.$implicit;S("href",e.href,po)("title",e.title),r(),M(e.icon==="x"?1:-1),r(),M(e.icon==="instagram"?2:-1),r(),M(e.icon==="youtube"?3:-1),r(),M(e.icon==="linkedin"?4:-1),r(),M(e.icon==="telegram"?5:-1)}}function Js(t,o){if(t&1&&(s(0,"li")(1,"a",25),d(2),m(3,"t"),l()()),t&2){let e=o.$implicit;r(),S("routerLink",e.route),r(),h(g(3,2,e.label))}}function Qs(t,o){if(t&1&&(s(0,"li")(1,"a",25),d(2),m(3,"t"),l()()),t&2){let e=o.$implicit;r(),S("routerLink",e.route),r(),h(g(3,2,e.label))}}function Zs(t,o){if(t&1&&(s(0,"li")(1,"a",25),d(2),m(3,"t"),l()()),t&2){let e=o.$implicit;r(),S("routerLink",e.route),r(),h(g(3,2,e.label))}}var mr=(()=>{class t{constructor(){this.year=new Date().getFullYear(),this.consent=O(Ot),this.products=[{label:"nav.ai_image",route:"/ai-image"}
1,{label:"nav.image_to_video",route:"/image-to-video"},{label:"nav.text_to_video",route:"/text-to-video"},{label:"nav.ai_music",route:"/ai-music"},{label:"nav.viral_clone",route:"/viral-clone"}],this.company=[{label:"nav.explore",route:"/explore"},{label:"page.pricing",route:"/pricing"},{label:"page.account",route:"/account"}],this.support=[{label:"page.contact",route:"/contact-us"},{label:"footer.privacy",route:"/privacy"},{label:"footer.terms",route:"/terms"}],this.socials=[{icon:"x",href:"https://x.com/genixai",title:"X (Twitter)"},{icon:"instagram",href:"https://instagram.com/genixai.ai",title:"Instagram"},{icon:"youtube",href:"https://youtube.com/@genixai",title:"YouTube"},{icon:"linkedin",href:"https://linkedin.com/company/genixai",title:"LinkedIn"},{icon:"telegram",href:"https://t.me/GenixAIaibot",title:"Telegram"}]}openCookieSettings(e){e.preventDefault(),this.consent.reopen()}static{this.\u0275fac=function(n){return new(n||t)}}static{this.\u0275cmp=ue({type:t,selectors:[["app-footer"]],decls:49,vars:22,consts:[[1,"footer"],[1,"footer-inner"],[1,"footer-brand"],[1,"brand-logo"],["src","assets/img/logo.svg","alt","Genix AI",1,"brand-logo-img"],[1,"brand-name"],[1,"d-text-grad"],[1,"brand-tagline"],["href","mailto:[email protected]",1,"brand-email"],[1,"socials"],["target","_blank","rel","noopener noreferrer",1,"social-link",3,"href","title"],[1,"footer-col"],[1,"col-title"],["href","#",1,"footer-link",3,"click"],[1,"footer-bottom"],[1,"footer-legal"],["viewBox","0 0 24 24","fill","currentColor"],["viewBox","0 0 24 24","fill","none","stroke","currentColor","stroke-width","1.75"],["d","M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-4.714-6.231-5.401 6.231H2.746l7.73-8.835L1.254 2.25H8.08l4.259 5.632 5.905-5.632Zm-1.161 17.52h1.833L7.084 4.126H5.117z"],["x","2","y","2","width","20","height","20","rx","5","ry","5"],["cx","12","cy","12","r","4.5"],["cx","17.5","cy","6.5","r","0.5","fill","currentColor","stroke","none"],["d","M23 7s-.3-1.9-1.1-2.7c-1.1-1.1-2.3-1.1-2.8-1.2C16.4 3 12 3 12 3s-4.4 0-7.1.1c-.6.1-1.8.1-2.9 1.2C1.3 5.1 1 7 1 7S.7 9.1.7 11.2v2c0 2 .3 4.1.3 4.1s.3 1.9 1.1 2.7c1.1 1.1 2.5 1 3.1 1.1C7.2 21 12 21 12 21s4.4 0 7.1-.2c.6-.1 1.8-.1 2.8-1.2.8-.8 1.1-2.7 1.1-2.7s.3-2.1.3-4.1v-2C23.3 9.1 23 7 23 7zm-13.5 8.5V8.5l7.5 3.5-7.5 3.5z"],["d","M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433a2.062 2.062 0 0 1-2.063-2.065 2.064 2.064 0 1 1 2.063 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z"],["d","M11.944 0A12 12 0 0 0 0 12a12 12 0 0 0 12 12 12 12 0 0 0 12-12A12 12 0 0 0 12 0a12 12 0 0 0-.056 0zm4.962 7.224c.1-.002.321.023.465.14a.506.506 0 0 1 .171.325c.016.093.036.306.02.472-.18 1.898-.962 6.502-1.36 8.627-.168.9-.499 1.201-.82 1.23-.696.065-1.225-.46-1.9-.902-1.056-.693-1.653-1.124-2.678-1.8-1.185-.78-.417-1.21.258-1.91.177-.184 3.247-2.977 3.307-3.23.007-.032.014-.15-.056-.212s-.174-.041-.249-.024c-.106.024-1.793 1.14-5.061 3.345-.48.33-.913.49-1.302.48-.428-.008-1.252-.241-1.865-.44-.752-.245-1.349-.374-1.297-.789.027-.216.325-.437.893-.663 3.498-1.524 5.83-2.529 6.998-3.014 3.332-1.386 4.025-1.627 4.476-1.635z"],[1,"footer-link",3,"routerLink"]],template:function(n,i){n&1&&(s(0,"footer",0)(1,"div",1)(2,"div",2)(3,"div",3),j(4,"img",4),s(5,"span",5),d(6,"Genix "),s(7,"strong",6),d(8,"AI"),l()()(),s(9,"p",7),d(10),m(11,"t"),l(),s(12,"a",8),d(13,"[email protected]"),l(),s(14,"div",9),G(15,Xs,6,7,"a",10,$s),l()(),s(17,"div",11)(18,"h4",12),d(19),m(20,"t"),l(),s(21,"ul"),G(22,Js,4,4,"li",null,di),l()(),s(24,"div",11)(25,"h4",12),d(26),m(27,"t"),l(),s(28,"ul"),G(29,Qs,4,4,"li",null,di),l()(),s(31,"div",11)(32,"h4",12),d(33),m(34,"t"),l(),s(35,"ul"),G(36,Zs,4,4,"li",null,di),s(38,"li")(39,"a",13),C("click",function(_){return i.openCookieSettings(_)}),d(40),m(41,"t"),l()()()()(),s(42,"div",14)(43,"span"),d(44),m(45,"t"),l(),s(46,"span",15),d(47),m(48,"t"),l()()()),n&2&&(r(10),h(g(11,8,"footer.tagline")),r(5),W(i.socials),r(4),h(g(20,10,"footer.products")),r(3),W(i.products),r(4),h(g(27,12,"footer.company")),r(3),W(i.company),r(4),h(g(34,14,"footer.support_title")),r(3),W(i.support),r(4),h(g(41,16,"footer.cookie_settings")),r(4),pn("\xA9 ",i.year," Genix AI. ",g(45,18,"footer.copyright")),r(3),h(g(48,20,"footer.legal")))},dependencies:[nt,ye],styles:["[_nghost-%COMP%]{display:block}.footer[_ngcontent-%COMP%]{background:transparent;color:#9ca3af;font-size:.84rem}.footer-inner[_ngcontent-%COMP%]{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;max-width:1200px;margin:0 auto;padding:48px 32px 32px}.footer-brand[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:12px}.brand-logo[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;text-decoration:none}.brand-logo-img[_ngcontent-%COMP%]{width:28px;height:28px}
1.brand-name[_ngcontent-%COMP%]{font-size:1.1rem;font-weight:600;color:var(--d-fg);letter-spacing:-.02em}.brand-tagline[_ngcontent-%COMP%]{margin:0;line-height:1.6;color:#6b7280}.brand-email[_ngcontent-%COMP%]{color:var(--d-primary-bright);text-decoration:none;font-weight:500;transition:color .15s}.brand-email[_ngcontent-%COMP%]:hover{color:var(--d-primary-soft)}.socials[_ngcontent-%COMP%]{display:flex;gap:12px;margin-top:4px}.social-link[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:#262640;color:#9ca3af;transition:background .15s,color .15s}.social-link[_ngcontent-%COMP%]:hover{background:var(--d-primary);color:#fff}.social-link[_ngcontent-%COMP%]   svg[_ngcontent-%COMP%]{width:16px;height:16px}.footer-col[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:10px}.col-title[_ngcontent-%COMP%]{font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#c3d0e6;margin:0 0 4px}ul[_ngcontent-%COMP%]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.footer-link[_ngcontent-%COMP%]{color:#6b7280;text-decoration:none;transition:color .15s}.footer-link[_ngcontent-%COMP%]:hover{color:var(--d-primary-bright)}.footer-bottom[_ngcontent-%COMP%]{border-top:1px solid #3b3b5c;padding:12px 32px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-align:center;color:#6b7280;font-size:.78rem}.footer-legal[_ngcontent-%COMP%]{font-size:.72rem;line-height:1.5;color:#6b7280}@media(max-width:900px){.footer-inner[_ngcontent-%COMP%]{grid-template-columns:1fr 1fr;gap:32px;padding:36px 24px 24px}.footer-brand[_ngcontent-%COMP%]{grid-column:1 / -1}}@media(max-width:540px){.footer-inner[_ngcontent-%COMP%]{grid-template-columns:1fr;padding:28px 20px 20px}}@media(max-width:640px){.footer-inner[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(3,1fr);gap:16px 12px;padding:20px 16px 16px}.footer-brand[_ngcontent-%COMP%]{grid-column:1 / -1;flex-direction:row;align-items:center;justify-content:space-between;gap:10px}.brand-tagline[_ngcontent-%COMP%], .brand-email[_ngcontent-%COMP%]{display:none}.socials[_ngcontent-%COMP%]{margin-top:0}.footer-col[_ngcontent-%COMP%]{display:flex}.col-title[_ngcontent-%COMP%]{font-size:.7rem}.footer-link[_ngcontent-%COMP%]{font-size:.75rem}}html.light[_nghost-%COMP%]   .footer[_ngcontent-%COMP%], html.light   [_nghost-%COMP%]   .footer[_ngcontent-%COMP%]{color:var(--d-muted-fg)}html.light[_nghost-%COMP%]   .brand-tagline[_ngcontent-%COMP%], html.light   [_nghost-%COMP%]   .brand-tagline[_ngcontent-%COMP%]{color:var(--d-muted-fg)}html.light[_nghost-%COMP%]   .brand-email[_ngcontent-%COMP%], html.light   [_nghost-%COMP%]   .brand-email[_ngcontent-%COMP%]{color:var(--d-primary)}html.light[_nghost-%COMP%]   .brand-email[_ngcontent-%COMP%]:hover, html.light   [_nghost-%COMP%]   .brand-email[_ngcontent-%COMP%]:hover{color:color-mix(in oklch,var(--d-primary) 78%,black)}html.light[_nghost-%COMP%]   .social-link[_ngcontent-%COMP%], html.light   [_nghost-%COMP%]   .social-link[_ngcontent-%COMP%]{background:var(--d-muted);color:var(--d-muted-fg)}html.light[_nghost-%COMP%]   .social-link[_ngcontent-%COMP%]:hover, html.light   [_nghost-%COMP%]   .social-link[_ngcontent-%COMP%]:hover{background:var(--d-primary);color:#fff}html.light[_nghost-%COMP%]   .col-title[_ngcontent-%COMP%], html.light   [_nghost-%COMP%]   .col-title[_ngcontent-%COMP%]{color:var(--d-fg)}html.light[_nghost-%COMP%]   .footer-link[_ngcontent-%COMP%], html.light   [_nghost-%COMP%]   .footer-link[_ngcontent-%COMP%]{color:var(--d-muted-fg)}html.light[_nghost-%COMP%]   .footer-link[_ngcontent-%COMP%]:hover, html.light   [_nghost-%COMP%]   .footer-link[_ngcontent-%COMP%]:hover{color:var(--d-primary)}html.light[_nghost-%COMP%]   .footer-bottom[_ngcontent-%COMP%], html.light   [_nghost-%COMP%]   .footer-bottom[_ngcontent-%COMP%]{border-top-color:var(--d-border);color:var(--d-muted-fg)}html.light[_nghost-%COMP%]   .footer-legal[_ngcontent-%COMP%], html.light   [_nghost-%COMP%]   .footer-legal[_ngcontent-%COMP%]{color:var(--d-muted-fg)}"],changeDetection:0})}}return t})();var el=new Mo().set(Ft,"1"),gr=(()=>{class t{constructor(){this.http=O(yo),this.env=O(Pt),this.cfg=O(Ie),this.storage=O(Lo),this.ts=O(q),this.all=P([]),this.dismissed=P(this.loadDismissed()),this.visible=z(()=>{let e=this.dismissed(),n=this.ts.lang();return this.all().filter(i=>!e.has(i.id)&&(i.language==null||i.language===n))}),this.pollHandle=null}get DISMISSED_KEY(){return this.cfg.storageKey("DISMISSED_BANNERS")}start(){this.refresh(),!this.pollHandle&&(this.pollHandle=setInterval(()=>this.refresh(),this.cfg.timings.bannerPollMs))}stop(){this.pollHandle&&(clearInterval(this.pollHandle),this.pollHandle=null)}dismiss(e){let n=new Set(this.dismissed());
1n.add(e),this.dismissed.set(n),this.storage.setJson(this.DISMISSED_KEY,[...n])}pruneDismissed(e){let n=new Set(e.map(E=>E.id)),i=this.dismissed(),c=!1,_=new Set;for(let E of i)n.has(E)?_.add(E):c=!0;c&&(this.dismissed.set(_),this.storage.setJson(this.DISMISSED_KEY,[..._]))}refresh(){return fe(this,null,function*(){try{let e=yield Zi(this.http.get(`${this.env.api.apiUrl}/banners`,{headers:el}));this.all.set(e??[]),this.pruneDismissed(e??[])}catch(e){}})}loadDismissed(){return new Set(this.storage.getJson(this.DISMISSED_KEY)??[])}static{this.\u0275fac=function(n){return new(n||t)}}static{this.\u0275prov=ce({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();function ur(t,o){(o==null||o>t.length)&&(o=t.length);for(var e=0,n=Array(o);e<o;e++)n[e]=t[e];return n}function tl(t){if(Array.isArray(t))return t}function nl(t,o){var e=t==null?null:typeof Symbol<"u"&&t[Symbol.iterator]||t["@@iterator"];if(e!=null){var n,i,c,_,E=[],k=!0,H=!1;try{if(c=(e=e.call(t)).next,o!==0)for(;!(k=(n=c.call(e)).done)&&(E.push(n.value),E.length!==o);k=!0);}catch(J){H=!0,i=J}finally{try{if(!k&&e.return!=null&&(_=e.return(),Object(_)!==_))return}finally{if(H)throw i}}return E}}function il(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
2In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function ol(t,o){return tl(t)||nl(t,o)||rl(t,o)||il()}function rl(t,o){if(t){if(typeof t=="string")return ur(t,o);var e={}.toString.call(t).slice(8,-1);return e==="Object"&&t.constructor&&(e=t.constructor.name),e==="Map"||e==="Set"?Array.from(t):e==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e)?ur(t,o):void 0}}var Tr=Object.entries,_r=Object.setPrototypeOf,al=Object.isFrozen,sl=Object.getPrototypeOf,ll=Object.getOwnPropertyDescriptor,de=Object.freeze,pe=Object.seal,Tt=Object.create,Sr=typeof Reflect<"u"&&Reflect,hi=Sr.apply,fi=Sr.construct;de||(de=function(o){return o});pe||(pe=function(o){return o});hi||(hi=function(o,e){for(var n=arguments.length,i=new Array(n>2?n-2:0),c=2;c<n;c++)i[c-2]=arguments[c];return o.apply(e,i)});fi||(fi=function(o){for(var e=arguments.length,n=new Array(e>1?e-1:0),i=1;i<e;i++)n[i-1]=arguments[i];return new o(...n)});var kt=re(Array.prototype.forEach),cl=re(Array.prototype.lastIndexOf),hr=re(Array.prototype.pop),Et=re(Array.prototype.push),dl=re(Array.prototype.splice),ot=Array.isArray,Ht=re(String.prototype.toLowerCase),pi=re(String.prototype.toString),fr=re(String.prototype.match),zt=re(String.prototype.replace),Cr=re(String.prototype.indexOf),pl=re(String.prototype.trim),ml=re(Number.prototype.toString),gl=re(Boolean.prototype.toString),xr=typeof BigInt>"u"?null:re(BigInt.prototype.toString),br=typeof Symbol>"u"?null:re(Symbol.prototype.toString),le=re(Object.prototype.hasOwnProperty),jt=re(Object.prototype.toString),se=re(RegExp.prototype.test),ut=ul(TypeError);function re(t){return function(o){o instanceof RegExp&&(o.lastIndex=0);for(var e=arguments.length,n=new Array(e>1?e-1:0),i=1;i<e;i++)n[i-1]=arguments[i];return hi(t,o,n)}}function ul(t){return function(){for(var o=arguments.length,e=new Array(o),n=0;n<o;n++)e[n]=arguments[n];return fi(t,e)}}function V(t,o){let e=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Ht;if(_r&&_r(t,null),!ot(o))return t;let n=o.length;for(;n--;){let i=o[n];if(typeof i=="string"){let c=e(i);c!==i&&(al(o)||(o[n]=c),i=c)}t[i]=!0}return t}function _l(t){for(let o=0;o<t.length;o++)le(t,o)||(t[o]=null);return t}function Ce(t){let o=Tt(null);for(let n of Tr(t)){var e=ol(n,2);let i=e[0],c=e[1];le(t,i)&&(ot(c)?o[i]=_l(c):c&&typeof c=="object"&&c.constructor===Object?o[i]=Ce(c):o[i]=c)}return o}function hl(t){switch(typeof t){case"string":return t;case"number":return ml(t);case"boolean":return gl(t);case"bigint":return xr?xr(t):"0";case"symbol":return br?br(t):"Symbol()";case"undefined":return jt(t);case"function":case"object":{if(t===null)return jt(t);let o=t,e=He(o,"toString");if(typeof e=="function"){let n=e(o);return typeof n=="string"?n:jt(n)}return jt(t)}default:return jt(t)}}function He(t,o){for(;t!==null;){let n=ll(t,o);if(n){if(n.get)return re(n.get);if(typeof n.value=="function")return re(n.value)}t=sl(t)}function e(){return null}return e}function fl(t){try{return se(t,""),!0}catch(o){return!1}}var vr=de(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),mi=de(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),gi=de(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),Cl=de(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),ui=de(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),xl=de(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),Mr=de(["#text"]),yr=de(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","command","commandfor","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","exportparts","face","for","headers","height","hidden","high","href","hreflang","id","inert","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","part","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","
2spellcheck","scope","selected","shape","size","sizes","slot","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns"]),_i=de(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dominant-baseline","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","mask-type","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-orientation","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),Or=de(["accent","accentunder","align","bevelled","close","columnalign","columnlines","columnspacing","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lquote","lspace","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),En=de(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),bl=pe(/{{[\w\W]*|^[\w\W]*}}/g),vl=pe(/<%[\w\W]*|^[\w\W]*%>/g),Ml=pe(/\${[\w\W]*/g),yl=pe(/^data-[\-\w.\u00B7-\uFFFF]+$/),Ol=pe(/^aria-[\-\w]+$/),Pr=pe(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),Pl=pe(/^(?:\w+script|data):/i),wl=pe(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),kl=pe(/^html$/i),El=pe(/^[a-z][.\w]*(-[.\w]+)+$/i),wr=pe(/<[/\w!]/g),kr=pe(/<[/\w]/g),Tl=pe(/<\/no(script|embed|frames)/i),Sl=pe(/\/>/i),Ee={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,processingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},Il=function(){return typeof window>"u"?null:window},Al=function(o,e){if(typeof o!="object"||typeof o.createPolicy!="function")return null;let n=null,i="data-tt-policy-suffix";e&&e.hasAttribute(i)&&(n=e.getAttribute(i));let c="dompurify"+(n?"#"+n:"");try{return o.createPolicy(c,{createHTML(_){return _},createScriptURL(_){return _}})}catch(_){return console.warn("TrustedTypes policy "+c+" could not be created."),null}},Er=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},it=function(o,e,n,i){return le(o,e)&&ot(o[e])?V(i.base?Ce(i.base):{},o[e],i.transform):n};function Ir(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Il(),o=y=>Ir(y);if(o.version="3.4.12",o.removed=[],!t||!t.document||t.document.nodeType!==Ee.document||!t.Element)return o.isSupported=!1,o;let e=t.document,n=e,i=n.currentScript;t.DocumentFragment;let c=t.HTMLTemplateElement,_=t.Node,E=t.Element,k=t.NodeFilter,H=t.NamedNodeMap;H===void 0&&(t.NamedNodeMap||t.MozNamedAttrMap),t.HTMLFormElement;let J=t.DOMParser,R=t.trustedTypes,oe=E.prototype,at=He(oe,"cloneNode"),Ge=He(oe,"remove"),We=He(oe,"nextSibling"),Pe=He(oe,"childNodes"),Te=He(oe,"parentNode"),Dt=He(oe,"shadowRoot"),Y=He(oe,"attributes"),F=_&&_.prototype?He(_.prototype,"nodeType"):null,we=_&&_.prototype?He(_.prototype,"nodeName"):null;if(typeof c=="function"){let y=e.createElement("template");y.content&&y.content.ownerDocument&&(e=y.content.ownerDocument)}let D,K="",st,Lt=!1,Ye=0,Pi=function(){if(Ye>0)throw ut('A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the "DOMPurify and Trusted Types" section of the README.')},_t=function(a){Pi(),Ye++;try{return D.createHTML(a)}finally{Ye--}},sa=function(a){Pi(),Ye++;try{return D.createScriptURL(a)}finally{Ye--}},la=function(){return Lt||(st=Al(R,i),Lt=!0),st},Wt=e,Dn=Wt.implementation,wi=Wt.createNodeIterator,ca=Wt.createDocumentFragment,da=Wt.getElementsByTagName,pa=n.importNode,Q=Er();o.isSupported=typeof Tr=="function"&&typeof Te=="function"&&Dn&&Dn.createHTMLDocument!==void 0;let ma=bl,ga=vl,ua=Ml,_a=yl,ha=Ol,fa=Pl,ki=wl,Ca=El,Ei=Pr,Z=null,Ti=V({},[...vr,...mi,...gi,...ui,...Mr]),ee=null,Si=V({},[...yr,..._i,...Or,...En]),te=Object.seal(Tt(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),Rt=null,Ii=null,qe=Object.seal(Tt(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}})),Ai=!0,Ln=!0,Di=!1,Li=!0,Ke=!1,Xe=!0,lt=!1,Rn=!1,Nn=null,Bn=null,Vn=!1,ht=!1,Yt=!1,qt=!1,Ri=!0,Ni=!1,Bi="user-content-",Fn=!0,Un=!1,ft={},Ve=null,zn=V({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","selectedcontent","style","svg","template","thead","title","video","xmp"]),Vi=null,Fi=V({},["audio","video","img","source","image","track"]),jn=null,Ui=V({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Kt="http://www.w3.org/1998/Math/MathML",Xt="http://www.w3.org/2000/svg",Fe="http://www.w3.org/1999/xhtml",Ct=Fe,Hn=!1,$n=null,xa=V({},[Kt,Xt,Fe],pi),zi=de(["mi","mo","mn","ms","mtext"]),Gn=V({},zi),ji=de(["annotation-xml"]),Wn=V({},ji),ba=V({},["title","style","font","a","script"]),Nt=null,va=["application/xhtml+xml","text/html"],Ma="text/html",X=null,xt=null,ya=e.createElement("form"),Hi=function(a){return a instanceof RegExp||a instanceof Function},Yn=function(){let a=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(xt&&xt===a)return;(!a||typeof a!="object")&&(a={}
vendor: 5,006 bytes, line 2
2),a=Ce(a),Nt=va.indexOf(a.PARSER_MEDIA_TYPE)===-1?Ma:a.PARSER_MEDIA_TYPE,X=Nt==="application/xhtml+xml"?pi:Ht,Z=it(a,"ALLOWED_TAGS",Ti,{transform:X}),ee=it(a,"ALLOWED_ATTR",Si,{transform:X}),$n=it(a,"ALLOWED_NAMESPACES",xa,{transform:pi}),jn=it(a,"ADD_URI_SAFE_ATTR",Ui,{transform:X,base:Ui}),Vi=it(a,"ADD_DATA_URI_TAGS",Fi,{transform:X,base:Fi}),Ve=it(a,"FORBID_CONTENTS",zn,{transform:X}),Rt=it(a,"FORBID_TAGS",Ce({}),{transform:X}),Ii=it(a,"FORBID_ATTR",Ce({}),{transform:X}),ft=le(a,"USE_PROFILES")?a.USE_PROFILES&&typeof a.USE_PROFILES=="object"?Ce(a.USE_PROFILES):a.USE_PROFILES:!1,Ai=a.ALLOW_ARIA_ATTR!==!1,Ln=a.ALLOW_DATA_ATTR!==!1,Di=a.ALLOW_UNKNOWN_PROTOCOLS||!1,Li=a.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Ke=a.SAFE_FOR_TEMPLATES||!1,Xe=a.SAFE_FOR_XML!==!1,lt=a.WHOLE_DOCUMENT||!1,ht=a.RETURN_DOM||!1,Yt=a.RETURN_DOM_FRAGMENT||!1,qt=a.RETURN_TRUSTED_TYPE||!1,Vn=a.FORCE_BODY||!1,Ri=a.SANITIZE_DOM!==!1,Ni=a.SANITIZE_NAMED_PROPS||!1,Fn=a.KEEP_CONTENT!==!1,Un=a.IN_PLACE||!1,Ei=fl(a.ALLOWED_URI_REGEXP)?a.ALLOWED_URI_REGEXP:Pr,Ct=typeof a.NAMESPACE=="string"?a.NAMESPACE:Fe,Gn=le(a,"MATHML_TEXT_INTEGRATION_POINTS")&&a.MATHML_TEXT_INTEGRATION_POINTS&&typeof a.MATHML_TEXT_INTEGRATION_POINTS=="object"?Ce(a.MATHML_TEXT_INTEGRATION_POINTS):V({},zi),Wn=le(a,"HTML_INTEGRATION_POINTS")&&a.HTML_INTEGRATION_POINTS&&typeof a.HTML_INTEGRATION_POINTS=="object"?Ce(a.HTML_INTEGRATION_POINTS):V({},ji);let u=le(a,"CUSTOM_ELEMENT_HANDLING")&&a.CUSTOM_ELEMENT_HANDLING&&typeof a.CUSTOM_ELEMENT_HANDLING=="object"?Ce(a.CUSTOM_ELEMENT_HANDLING):Tt(null);if(te=Tt(null),le(u,"tagNameCheck")&&Hi(u.tagNameCheck)&&(te.tagNameCheck=u.tagNameCheck),le(u,"attributeNameCheck")&&Hi(u.attributeNameCheck)&&(te.attributeNameCheck=u.attributeNameCheck),le(u,"allowCustomizedBuiltInElements")&&typeof u.allowCustomizedBuiltInElements=="boolean"&&(te.allowCustomizedBuiltInElements=u.allowCustomizedBuiltInElements),pe(te),Ke&&(Ln=!1),Yt&&(ht=!0),ft&&(Z=V({},Mr),ee=Tt(null),ft.html===!0&&(V(Z,vr),V(ee,yr)),ft.svg===!0&&(V(Z,mi),V(ee,_i),V(ee,En)),ft.svgFilters===!0&&(V(Z,gi),V(ee,_i),V(ee,En)),ft.mathMl===!0&&(V(Z,ui),V(ee,Or),V(ee,En))),qe.tagCheck=null,qe.attributeCheck=null,le(a,"ADD_TAGS")&&(typeof a.ADD_TAGS=="function"?qe.tagCheck=a.ADD_TAGS:ot(a.ADD_TAGS)&&(Z===Ti&&(Z=Ce(Z)),V(Z,a.ADD_TAGS,X))),le(a,"ADD_ATTR")&&(typeof a.ADD_ATTR=="function"?qe.attributeCheck=a.ADD_ATTR:ot(a.ADD_ATTR)&&(ee===Si&&(ee=Ce(ee)),V(ee,a.ADD_ATTR,X))),le(a,"ADD_URI_SAFE_ATTR")&&ot(a.ADD_URI_SAFE_ATTR)&&V(jn,a.ADD_URI_SAFE_ATTR,X),le(a,"FORBID_CONTENTS")&&ot(a.FORBID_CONTENTS)&&(Ve===zn&&(Ve=Ce(Ve)),V(Ve,a.FORBID_CONTENTS,X)),le(a,"ADD_FORBID_CONTENTS")&&ot(a.ADD_FORBID_CONTENTS)&&(Ve===zn&&(Ve=Ce(Ve)),V(Ve,a.ADD_FORBID_CONTENTS,X)),Fn&&(Z["#text"]=!0),lt&&V(Z,["html","head","body"]),Z.table&&(V(Z,["tbody"]),delete Rt.tbody),a.TRUSTED_TYPES_POLICY){if(typeof a.TRUSTED_TYPES_POLICY.createHTML!="function")throw ut('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof a.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw ut('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');let f=D;D=a.TRUSTED_TYPES_POLICY;try{K=_t("")}catch(w){throw D=f,w}}else a.TRUSTED_TYPES_POLICY===null?(D=void 0,K=""):(D===void 0&&(D=la()),D&&typeof K=="string"&&(K=_t("")));de&&de(a),xt=a},$i=V({},[...mi,...gi,...Cl]),Gi=V({},[...ui,...xl]),Oa=function(a,u,f){return u.namespaceURI===Fe?a==="svg":u.namespaceURI===Kt?a==="svg"&&(f==="annotation-xml"||Gn[f]):!!$i[a]},Pa=function(a,u,f){return u.namespaceURI===Fe?a==="math":u.namespaceURI===Xt?a==="math"&&Wn[f]:!!Gi[a]},wa=function(a,u,f){return u.namespaceURI===Xt&&!Wn[f]||u.namespaceURI===Kt&&!Gn[f]?!1:!Gi[a]&&(ba[a]||!$i[a])},ka=function(a){let u=Te(a);(!u||!u.tagName)&&(u={namespaceURI:Ct,tagName:"template"});let f=Ht(a.tagName),w=Ht(u.tagName);return $n[a.namespaceURI]?a.namespaceURI===Xt?Oa(f,u,w):a.namespaceURI===Kt?Pa(f,u,w):a.namespaceURI===Fe?wa(f,u,w):!!(Nt==="application/xhtml+xml"&&$n[a.namespaceURI]):!1},Je=function(a){Et(o.removed,{element:a});try{Te(a).removeChild(a)}catch(u){if(Ge(a),!Te(a))throw ut("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place")}},Jt=function(a){qn(a);let u=Pe(a);if(u){let w=[];kt(u,T=>{Et(w,T)}),kt(w,T=>{try{Ge(T)}catch(A){}})}let f=Y(a);if(f)for(let w=f.length-1;w>=0;--w){let T=f[w],A=T&&T.name;if(typeof A=="string")try{a.removeAttribute(A)}catch(ne){}}},ct=function(a,u){try{Et(o.removed,{attribute:u.getAttributeNode(a),from:u})}catch(f){Et(o.removed,{attribute:null,from:u})}if(u.removeAttribute(a),a==="is")if(ht||Yt)try{Je(u)}catch(f){}else try{u.setAttribute(a,"")}catch(f){}},Ea=function(a){let u=Y(a);if(u)for(let f=u.length-1;f>=0;--f){let w=u[f],T=w&&w.name;if(!(typeof T!="string"||ee[X(T)]))try{a.removeAttribute(T)}catch(A){}}},qn=function(a){let u=[a];for(;u.length>0;){let f=u.pop();(F?F(f):f.nodeType)===Ee.element&&Ea(f);let T=Pe(f);if(T)for(let A=T.length-1;A>=0;--A)u.push(T[A])}}
2,Ta=function(a){if(!Xe)return;let u=[a];for(;u.length>0;){let f=u.pop(),w=F?F(f):f.nodeType;if(w===Ee.processingInstruction||w===Ee.comment&&se(kr,f.data)){try{Ge(f)}catch(A){}continue}if(w===Ee.element){let A=f,ne=X(we?we(f):f.nodeName);try{A.hasAttribute&&A.hasAttribute("patchsrc")&&A.removeAttribute("patchsrc"),A.hasAttribute&&A.hasAttribute("for")&&ne!=="label"&&ne!=="output"&&A.removeAttribute("for")}catch(me){}}let T=Pe(f);if(T)for(let A=T.length-1;A>=0;--A)u.push(T[A])}},Wi=function(a){let u=null,f=null;if(Vn)a="<remove></remove>"+a;else{let A=fr(a,/^[\r\n\t ]+/);f=A&&A[0]}Nt==="application/xhtml+xml"&&Ct===Fe&&(a='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+a+"</body></html>");let w=D?_t(a):a;if(Ct===Fe)try{u=new J().parseFromString(w,Nt)}catch(A){}if(!u||!u.documentElement){u=Dn.createDocument(Ct,"template",null);try{u.documentElement.innerHTML=Hn?K:w}catch(A){}}let T=u.body||u.documentElement;return a&&f&&T.insertBefore(e.createTextNode(f),T.childNodes[0]||null),Ct===Fe?da.call(u,lt?"html":"body")[0]:lt?u.documentElement:T},Yi=function(a){return wi.call(a.ownerDocument||a,a,k.SHOW_ELEMENT|k.SHOW_COMMENT|k.SHOW_TEXT|k.SHOW_PROCESSING_INSTRUCTION|k.SHOW_CDATA_SECTION,null)},Qt=function(a){return a=zt(a,ma," "),a=zt(a,ga," "),a=zt(a,ua," "),a},Kn=function(a){var u;a.normalize();let f=wi.call(a.ownerDocument||a,a,k.SHOW_TEXT|k.SHOW_COMMENT|k.SHOW_CDATA_SECTION|k.SHOW_PROCESSING_INSTRUCTION,null),w=f.nextNode();for(;w;)w.data=Qt(w.data),w=f.nextNode();let T=(u=a.querySelectorAll)===null||u===void 0?void 0:u.call(a,"template");T&&kt(T,A=>{bt(A.content)&&Kn(A.content)})},Zt=function(a){let u=we?we(a):null;return typeof u!="string"||X(u)!=="form"?!1:typeof a.nodeName!="string"||typeof a.textContent!="string"||typeof a.removeChild!="function"||a.attributes!==Y(a)||typeof a.removeAttribute!="function"||typeof a.setAttribute!="function"||typeof a.namespaceURI!="string"||typeof a.insertBefore!="function"||typeof a.hasChildNodes!="function"||a.nodeType!==F(a)||a.childNodes!==Pe(a)},bt=function(a){if(!F||typeof a!="object"||a===null)return!1;try{return F(a)===Ee.documentFragment}catch(u){return!1}},Bt=function(a){if(!F||typeof a!="object"||a===null)return!1;try{return typeof F(a)=="number"}catch(u){return!1}};function Ue(y,a,u){y.length!==0&&kt(y,f=>{f.call(o,a,u,xt)})}let Sa=function(a,u){return!!(Xe&&a.hasChildNodes()&&!Bt(a.firstElementChild)&&se(wr,a.textContent)&&se(wr,a.innerHTML)||Xe&&a.namespaceURI===Fe&&u==="style"&&Bt(a.firstElementChild)||a.nodeType===Ee.processingInstruction||Xe&&a.nodeType===Ee.comment&&se(kr,a.data))},Ia=function(a,u){if(!Rt[u]&&Xi(u)&&(te.tagNameCheck instanceof RegExp&&se(te.tagNameCheck,u)||te.tagNameCheck instanceof Function&&te.tagNameCheck(u)))return!1;if(Fn&&!Ve[u]){let f=Te(a),w=Pe(a);if(w&&f){let T=w.length;for(let A=T-1;A>=0;--A){let ne=Un?w[A]:at(w[A],!0);f.insertBefore(ne,We(a))}}}return Je(a),!0},qi=function(a,u){if(Ue(Q.beforeSanitizeElements,a,null),a!==u&&Te(a)===null)return!0;if(Zt(a))return Je(a),!0;let f=X(we?we(a):a.nodeName);if(Ue(Q.uponSanitizeElement,a,{tagName:f,allowedTags:Z}),a!==u&&Te(a)===null)return!0;if(Sa(a,f))return Je(a),!0;if(Rt[f]||!(qe.tagCheck instanceof Function&&qe.tagCheck(f))&&!Z[f]){let T=Ia(a,f);return T===!1&&Ue(Q.afterSanitizeElements,a,null),T}if((F?F(a):a.nodeType)===Ee.element&&!ka(a)||(f==="noscript"||f==="noembed"||f==="noframes")&&se(Tl,a.innerHTML))return Je(a),!0;if(Ke&&a.nodeType===Ee.text){let T=Qt(a.textContent);a.textContent!==T&&(Et(o.removed,{element:a.cloneNode()}),a.textContent=T)}return Ue(Q.afterSanitizeElements,a,null),!1},Ki=function(a,u,f){if(Ii[u]||Xe&&u==="patchsrc"||Xe&&u==="for"&&a!=="label"&&a!=="output"||Ri&&(u==="id"||u==="name")&&(f in e||f in ya))return!1;let w=ee[u]||qe.attributeCheck instanceof Function&&qe.attributeCheck(u,a);if(!(Ln&&se(_a,u))){if(!(Ai&&se(ha,u))){if(w){if(!jn[u]){if(!se(Ei,zt(f,ki,""))){if(!((u==="src"||u==="xlink:href"||u==="href")&&a!=="script"&&Cr(f,"data:")===0&&Vi[a])){if(!(Di&&!se(fa,zt(f,ki,"")))){if(f)return!1}}}}}else if(!(Xi(a)&&(te.tagNameCheck instanceof RegExp&&se(te.tagNameCheck,a)||te.tagNameCheck instanceof Function&&te.tagNameCheck(a))&&(te.attributeNameCheck instanceof RegExp&&se(te.attributeNameCheck,u)||te.attributeNameCheck instanceof Function&&te.attributeNameCheck(u,a))||u==="is"&&te.allowCustomizedBuiltInElements&&(te.tagNameCheck instanceof RegExp&&se(te.tagNameCheck,f)||te.tagNameCheck instanceof Function&&te.tagNameCheck(f))))return!1}}return!0},Aa=V({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),Xi=function(a){return!Aa[Ht(a)]&&se(Ca,a)},Da=function(a,u,f,w){if(D&&typeof R=="object"&&typeof R.getAttributeType=="function"&&!f)switch(R.getAttributeType(a,u)){case"TrustedHTML":return _t(w);case"TrustedScriptURL":return sa(w)}return w},La=function(a,u,f,w){try{f?a.setAttributeNS(f,u,w):a.setAttribute(u,w
2),Zt(a)?Je(a):hr(o.removed)}catch(T){ct(u,a)}},Ji=function(a){Ue(Q.beforeSanitizeAttributes,a,null);let u=a.attributes;if(!u||Zt(a))return;let f={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:ee,forceKeepAttr:void 0},w=u.length,T=X(a.nodeName);for(;w--;){let A=u[w],ne=A.name,me=A.namespaceURI,De=A.value,xe=X(ne),Le=De,he=ne==="value"?Le:pl(Le);if(f.attrName=xe,f.attrValue=he,f.keepAttr=!0,f.forceKeepAttr=void 0,Ue(Q.uponSanitizeAttribute,a,f),he=f.attrValue,Ni&&(xe==="id"||xe==="name")&&Cr(he,Bi)!==0&&(ct(ne,a),he=Bi+he),Xe&&se(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,he)){ct(ne,a);continue}if(xe==="attributename"&&fr(he,"href")){ct(ne,a);continue}if(!f.forceKeepAttr){if(!f.keepAttr){ct(ne,a);continue}if(!Li&&se(Sl,he)){ct(ne,a);continue}if(Ke&&(he=Qt(he)),!Ki(T,xe,he)){ct(ne,a);continue}he=Da(T,xe,me,he),he!==Le&&La(a,ne,me,he)}}Ue(Q.afterSanitizeAttributes,a,null)},en=function(a){let u=null,f=Yi(a);for(Ue(Q.beforeSanitizeShadowDOM,a,null);u=f.nextNode();)if(Ue(Q.uponSanitizeShadowNode,u,null),qi(u,a),Ji(u),bt(u.content)&&en(u.content),(F?F(u):u.nodeType)===Ee.element){let T=Dt(u);bt(T)&&(Xn(T),en(T))}Ue(Q.afterSanitizeShadowDOM,a,null)},Xn=function(a){let u=[{node:a,shadow:null}];for(;u.length>0;){let f=u.pop();if(f.shadow){en(f.shadow);continue}let w=f.node,A=(F?F(w):w.nodeType)===Ee.element,ne=Pe(w);if(ne)for(let me=ne.length-1;me>=0;--me)u.push({node:ne[me],shadow:null});if(A){let me=we?we(w):null;if(typeof me=="string"&&X(me)==="template"){let De=w.content;bt(De)&&u.push({node:De,shadow:null})}}if(A){let me=Dt(w);bt(me)&&u.push({node:null,shadow:me},{node:me,shadow:null})}}};return o.sanitize=function(y){let a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},u=null,f=null,w=null,T=null;if(Hn=!y,Hn&&(y="<!-->"),typeof y!="string"&&!Bt(y)&&(y=hl(y),typeof y!="string"))throw ut("dirty is not a string, aborting");if(!o.isSupported)return y;Rn?(Z=Nn,ee=Bn):Yn(a),(Q.uponSanitizeElement.length>0||Q.uponSanitizeAttribute.length>0)&&(Z=Ce(Z)),Q.uponSanitizeAttribute.length>0&&(ee=Ce(ee)),o.removed=[];let A=Un&&typeof y!="string"&&Bt(y);if(A){Ta(y);let xe=we?we(y):y.nodeName;if(typeof xe=="string"){let Le=X(xe);if(!Z[Le]||Rt[Le])throw Jt(y),ut("root node is forbidden and cannot be sanitized in-place")}if(Zt(y))throw Jt(y),ut("root node is clobbered and cannot be sanitized in-place");try{Xn(y)}catch(Le){throw Jt(y),Le}}else if(Bt(y))u=Wi("<!---->"),f=u.ownerDocument.importNode(y,!0),f.nodeType===Ee.element&&f.nodeName==="BODY"||f.nodeName==="HTML"?u=f:u.appendChild(f),Xn(f);else{if(!ht&&!Ke&&!lt&&y.indexOf("<")===-1)return D&&qt?_t(y):y;if(u=Wi(y),!u)return ht?null:qt?K:""}u&&Vn&&Je(u.firstChild);let ne=A?y:u,me=Yi(ne);try{for(;w=me.nextNode();)qi(w,ne),Ji(w),bt(w.content)&&en(w.content)}catch(xe){throw A&&(Jt(y),kt(o.removed,Le=>{Le.element&&qn(Le.element)})),xe}if(A)return kt(o.removed,xe=>{xe.element&&qn(xe.element)}),Ke&&Kn(y),y;if(ht){if(Ke&&Kn(u),Yt)for(T=ca.call(u.ownerDocument);u.firstChild;)T.appendChild(u.firstChild);else T=u;return(ee.shadowroot||ee.shadowrootmode)&&(T=pa.call(n,T,!0)),T}let De=lt?u.outerHTML:u.innerHTML;return lt&&Z["!doctype"]&&u.ownerDocument&&u.ownerDocument.doctype&&u.ownerDocument.doctype.name&&se(kl,u.ownerDocument.doctype.name)&&(De="<!DOCTYPE "+u.ownerDocument.doctype.name+`>
3`+De),Ke&&(De=Qt(De)),D&&qt?_t(De):De},o.setConfig=function(){let y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Yn(y),Rn=!0,Nn=Z,Bn=ee},o.clearConfig=function(){xt=null,Rn=!1,Nn=null,Bn=null,D=st,K=""},o.isValidAttribute=function(y,a,u){xt||Yn({});let f=X(y),w=X(a);return Ki(f,w,u)},o.addHook=function(y,a){typeof a=="function"&&le(Q,y)&&Et(Q[y],a)},o.removeHook=function(y,a){if(le(Q,y)){if(a!==void 0){let u=cl(Q[y],a);return u===-1?void 0:dl(Q[y],u,1)[0]}return hr(Q[y])}},o.removeHooks=function(y){le(Q,y)&&(Q[y]=[])},o.removeAllHooks=function(){Q=Er()},o}var Ci=Ir();var Dl=["b","strong","i","em","u","br","span","a"],Ll=["style","href","target","rel"],Rl=new Set(["font-size","color","font-weight","font-style","text-decoration"]),Nl=/url\(|expression|javascript:|@import|[<>]/i,Ar=!1;function Bl(){Ar||(Ar=!0,Ci.addHook("afterSanitizeAttributes",t=>{if(!(t instanceof Element))return;t.tagName==="A"&&(t.setAttribute("target","_blank"),t.setAttribute("rel","noopener noreferrer nofollow"));let o=t.getAttribute("style");if(o!==null){let e=[];for(let n of o.split(";")){let i=n.indexOf(":");if(i===-1)continue;let c=n.slice(0,i).trim().toLowerCase(),_=n.slice(i+1).trim();c&&_&&Rl.has(c)&&!Nl.test(_)&&e.push(`${c}: ${_}`)}e.length?t.setAttribute("style",e.join("; ")):t.removeAttribute("style")}}))}function Dr(t){return Bl(),Ci.sanitize(t,{ALLOWED_TAGS:Dl,ALLOWED_ATTR:Ll,ALLOWED_URI_REGEXP:/^https?:\/\//i,ALLOW_DATA_ATTR:!1,ALLOW_ARIA_ATTR:!1,RETURN_TRUSTED_TYPE:!1})}var Lr=(()=>{class t{constructor(){this.el=O(sn),this.bannerHtml=Vt(null),ge(()=>{let e=this.bannerHtml();this.el.nativeElement.innerHTML=e?Dr(e):""})}static{this.\u0275fac=function(n){return new(n||t)}}static{this.\u0275dir=go({type:t,selectors:[["","bannerHtml",""]],inputs:{bannerHtml:[1,"bannerHtml"]}})}}return t})();var Vl=(t,o)=>o.id;function Fl(t,o){t&1&&j(0,"div",3),t&2&&S("bannerHtml",o)}function Ul(t,o){if(t&1&&(s(0,"p",4),d(1),l()),t&2){let e=p();r(),h(e.text)}}function zl(t,o){if(t&1){let e=I();s(0,"button",8),C("click",function(i){let c=x(e).$index,_=p(3);return b(_.go(c,i))}),l()}if(t&2){let e=o.$index,n=p(3);L("active",e===n.current()),ie("aria-label",n.dotAriaLabel(e,n.count()))("aria-current",e===n.current()?"true":null)}}function jl(t,o){if(t&1&&(s(0,"div",5),m(1,"t"),G(2,zl,1,4,"button",7,Vl),l()),t&2){let e=p(2);ie("aria-label",g(1,1,"banner.pagination")),r(2),W(e.banners())}}
3function Hl(t,o){if(t&1){let e=I();s(0,"button",9),m(1,"t"),C("click",function(i){x(e);let c=p(2);return b(c.close(i))}),s(2,"span",10),d(3,"\u2715"),l()()}t&2&&ie("aria-label",g(1,1,"banner.dismiss"))}function $l(t,o){if(t&1&&(s(0,"div",1),m(1,"t"),s(2,"div",2),v(3,Fl,1,1,"div",3)(4,Ul,2,1,"p",4),v(5,jl,4,3,"div",5),l(),v(6,Hl,4,3,"button",6),l()),t&2){let e,n=p();mt("background",n.background())("color",n.textColor())("--banner-fg",n.textColor()),ie("aria-label",g(1,10,"banner.announcements")),r(3),M((e=n.activeHtml())?3:4,e),r(2),M(n.count()>1?5:-1),r(),M(o.dismissible?6:-1)}}var Gl="linear-gradient(90deg, var(--d-primary), var(--d-accent))",Wl="#fff",Yl=/^#([0-9a-fA-F]{6}|[0-9a-fA-F]{3})$/,Rr=(()=>{class t{dotAriaLabel(e,n){return this.ts.lang(),this.ts.t("banner.label_n_of_total").replace("{n}",String(e+1)).replace("{total}",String(n))}safeHex(e){return e&&Yl.test(e)?e:null}clampAngle(e){return typeof e!="number"||!Number.isFinite(e)?90:Math.min(360,Math.max(0,Math.round(e)))}constructor(){this.bannerService=O(gr),this.el=O(sn),this.ts=O(q),this.current=P(0),this.banners=this.bannerService.visible,this.active=z(()=>this.banners()[this.current()]??null),this.count=z(()=>this.banners().length),this.activeHtml=z(()=>{let e=this.active()?.contentHtml;return e&&e.trim()?e:null}),this.background=z(()=>{let e=this.active(),n=this.safeHex(e?.backgroundColor),i=this.safeHex(e?.backgroundColor2);return n&&i?`linear-gradient(${this.clampAngle(e?.backgroundGradientAngle)}deg, ${n}, ${i})`:n||Gl}),this.textColor=z(()=>this.safeHex(this.active()?.textColor)??Wl),this.bannerService.start(),ge(()=>{let e=this.banners().length;gt(()=>{e===0?this.current.set(0):this.current()>=e&&this.current.set(Math.max(0,e-1))})})}ngAfterViewChecked(){let e=this.el.nativeElement.offsetHeight;document.documentElement.style.setProperty("--banner-h",e+"px")}go(e,n){n?.stopPropagation(),this.current.set(e)}close(e){e.stopPropagation();let n=this.active();n&&this.bannerService.dismiss(n.id)}static{this.\u0275fac=function(n){return new(n||t)}}static{this.\u0275cmp=ue({type:t,selectors:[["app-banner-bar"]],decls:1,vars:1,consts:[["role","region",1,"banner-bar",3,"background","color","--banner-fg"],["role","region",1,"banner-bar"],[1,"banner-content"],[1,"banner-text","banner-rich",3,"bannerHtml"],[1,"banner-text"],["role","tablist",1,"banner-dots"],[1,"banner-close"],["role","tab",1,"dot",3,"active"],["role","tab",1,"dot",3,"click"],[1,"banner-close",3,"click"],["aria-hidden","true"]],template:function(n,i){if(n&1&&v(0,$l,7,12,"div",0),n&2){let c;M((c=i.active())?0:-1,c)}},dependencies:[je,Lr,ye],styles:[".banner-bar[_ngcontent-%COMP%]{position:relative;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.55rem 1rem .55rem 1.25rem;background:linear-gradient(90deg,var(--d-primary),var(--d-accent));color:#fff;transition:background .2s ease,color .2s ease;--banner-fg: #fff;font-size:.875rem;line-height:1.35;z-index:200}.banner-content[_ngcontent-%COMP%]{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:.25rem}.banner-text[_ngcontent-%COMP%]{margin:0;text-align:center;font-weight:500;white-space:pre-wrap;word-break:break-word}.banner-rich[_ngcontent-%COMP%]{white-space:normal}.banner-rich[_ngcontent-%COMP%]     a{color:inherit;text-decoration:underline;text-underline-offset:2px;transition:opacity .15s ease}.banner-rich[_ngcontent-%COMP%]     a:hover{opacity:.85}.banner-rich[_ngcontent-%COMP%]     a:focus-visible{outline:2px solid color-mix(in srgb,var(--banner-fg, #fff) 60%,transparent);outline-offset:2px;border-radius:2px}.banner-dots[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.375rem;margin-top:.15rem}.dot[_ngcontent-%COMP%]{width:7px;height:7px;border:none;border-radius:50%;background:color-mix(in srgb,var(--banner-fg, #fff) 45%,transparent);cursor:pointer;padding:0;transition:background .15s,transform .15s}.dot[_ngcontent-%COMP%]:hover{background:color-mix(in srgb,var(--banner-fg, #fff) 75%,transparent)}.dot.active[_ngcontent-%COMP%]{background:var(--banner-fg, #fff);transform:scale(1.25)}.banner-close[_ngcontent-%COMP%]{flex-shrink:0;background:transparent;border:none;color:var(--banner-fg, #fff);font-size:1rem;line-height:1;padding:.25rem .4rem;border-radius:6px;cursor:pointer;transition:background .15s}.banner-close[_ngcontent-%COMP%]:hover{background:color-mix(in srgb,var(--banner-fg, #fff) 18%,transparent)}.banner-close[_ngcontent-%COMP%]:focus-visible{outline:2px solid color-mix(in srgb,var(--banner-fg, #fff) 60%,transparent);outline-offset:1px}@media(max-width:640px){.banner-bar[_ngcontent-%COMP%]{padding:.55rem .75rem;font-size:.8125rem}}"]})}}return t})();function ql(t,o){if(t&1){let e=I();s(0,"div",9)(1,"div",11)(2,"div",12)(3,"strong"),d(4),m(5,"t"),l(),s(6,"p"),d(7),m(8,"t"),l()(),s(9,"span",13),d(10),m(11,"t"),l()(),s(12,"div",11)(13,"div",12)(14,"strong"),d(15),m(16,"t"),l(),s(17,"p"),d(18),m(19,"t"),l()(),s(20,"label",14)(21,"input",15),C("change",function(i){x(e);let c=p(2);return b(c.functional.set(i.target.checked))}),l(),j(22,"span",16),l()(),s(23,"div",11)(24,"div",12)(25,"strong"),d(26),m(27,"t"),l(),s(28,"p"),d(29),m(30,"t"),l()(),s(31,"label",14)(32,"input",15),C("change",function(i){x(e);let c=p(2);return b(c.analytics.set(i.target.checked))}),l(),j(33,"span",16),l()()()}if(t&2){let e=p(2);r(4),h(g(5,9,"consent.cat_essential")),r(3),h(g(8,11,"consent.cat_essential_desc")),r(3),h(g(11,13,"consent.always_on")),r(5),h(g(16,15,"consent.cat_functional")),r(3),h(g(19,17,"consent.cat_functional_desc")),r(3),S("checked",e.functional()),r(5),h(g(27,19,"consent.cat_analytics")),r(3),h(g(30,21,"consent.cat_analytics_desc")),r(3),S("checked",e.analytics())}}function Kl(t,o){if(t&1){let e=I();s(0,"button",17),C("click",function(){x(e);let i=p(2);return b(i.toggleCustomize())}),d(1),m(2,"t"),l(),s(3,"button",17),C("click",function(){x(e);let i=p(2);return b(i.rejectOptional())}),d(4),m(5,"t"),l(),s(6,"button",18),C("click",function(){x(e);let i=p(2);return b(i.acceptAll())}),d(7),m(8,"t"),l()}t&2&&(r(),h(g(2,3,"consent.customize")),r(3),h(g(5,5,"consent.reject_optional")),r(3),h(g(8,7,"consent.accept_all")))}function Xl(t,o){if(t&1){let e=I();s(0,"button",17),C("click",function(){x(e);let i=p(2);return b(i.toggleCustomize())}),d(1),m(2,"t"),l(),s(3,"button",18),C("click",function(){x(e);let i=p(2);return b(i.saveCustom())}),d(4),m(5,"t"),l()}t&2&&(r(),h(g(2,2,"common.cancel")),r(3),h(g(5,4,"consent.save_selection")))}function Jl(t,o){if(t&1&&(s(0,"div",1),C("click",function(n){return n.stopPropagation()}),s(1,"div",2)(2,"div",3)(3,"div",4)(4,"span",5),d(5,"cookie"),l()(),s(6,"div",6)(7,"h3",7),d(8),m(9,"t"),l(),s(10,"p"),d(11),m(12,"t"),s(13,"a",8),d(14),m(15,"t"),l()()()(),v(16,ql,34,23,"div",9),s(17,"div",10),v(18,Kl,9,9)(19,Xl,6,6),l()()()),t&2){let e=p();L("expanded",e.expanded()),r(8),h(g(9,7,"consent.title")),r(3),B(" ",g(12,9,"consent.message")," "),r(3),h(g(15,11,"consent.learn_more")),r(2),M(e.expanded()?16:-1),r(2),M(e.expanded()?19:18)}}var Nr=(()=>{class t{constructor(){this.consent=O(Ot),this.expanded=P(!1),this.functional=P(!1),this.analytics=P(!1),this.visible=z(()=>this.consent.bannerOpen())}toggleCustomize(){this.expanded()||(this.functional.set(this.consent.functional()),this.analytics.set(this.consent.analytics())),this.expanded.update(e=>!e)}acceptAll(){this.consent.acceptAll(),this.expanded.set(!1)}rejectOptional(){this.consent.rejectOptional(),this.expanded.set(!1)}saveCustom(){this.consent.setCustom({functional:this.functional(),analytics:this.analytics()}),this.expanded.set(!1)}static{this.\u0275fac=function(n){return new(n||t)}}static{this.\u0275cmp=ue({type:t,selectors:[["app-cookie-consent"]],decls:1,vars:1,consts:[[1,"consent-backdrop",3,"expanded"],[1,"consent-backdrop",3,"click"],["role","dialog","aria-modal","false","aria-labelledby","consent-title",1,"consent-card"],[1,"consent-head"],[1,"consent-icon"],[1,"material-symbols-rounded"],[1,"consent-text"],["id","consent-title"],["routerLink","/privacy",1,"consent-link"],[1,"consent-categories"],[1,"consent-actions"],[1,"cat-row"],[1,"cat-meta"],[1,"cat-pill","cat-pill--locked"],[1,"cat-switch"],["type","checkbox",3,"change","checked"],[1,"cat-slider"],[1,"btn","btn-ghost",3,"click"],[1,"btn","btn-primary",3,"click"]],template:function(n,i){n&1&&v(0,Jl,20,13,"div",0),n&2&&M(i.visible()?0:-1)},dependencies:[nt,ye],styles:['.consent-backdrop[_ngcontent-%COMP%]{position:fixed;left:0;right:0;bottom:0;z-index:400;padding:16px;display:flex;justify-content:center;pointer-events:none;animation:slideUp .24s cubic-bezier(.2,.8,.2,1)}.consent-card[_ngcontent-%COMP%]{pointer-events:auto;width:100%;max-width:640px;background:#fff;border-radius:14px;box-shadow:0 14px 38px #0f172a38,0 2px 8px #0f172a0f;padding:18px 20px 16px;display:flex;flex-direction:column;gap:14px;border:1px solid color-mix(in oklch,var(--d-primary) 16%,transparent)}.consent-backdrop.expanded[_ngcontent-%COMP%]   .consent-card[_ngcontent-%COMP%]{max-width:720px}.consent-head[_ngcontent-%COMP%]{display:flex;align-items:flex-start;gap:14px}.consent-icon[_ngcontent-%COMP%]{width:40px;height:40px;border-radius:12px;background:color-mix(in oklch,var(--d-primary) 12%,transparent);color:var(--d-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.consent-icon[_ngcontent-%COMP%]   .material-symbols-rounded[_ngcontent-%COMP%]{font-size:22px}.consent-text[_ngcontent-%COMP%]{flex:1;min-width:0}.consent-text[_ngcontent-%COMP%]   h3[_ngcontent-%COMP%]{font-size:.98rem;font-weight:700;color:var(--d-navy);margin:0 0 4px}.consent-text[_ngcontent-%COMP%]   p[_ngcontent-%COMP%]{font-size:.83rem;color:#4b5563;line-height:1.6;margin:0}.consent-link[_ngcontent-%COMP%]{color:var(--d-primary);text-decoration:none;font-weight:500}.consent-link[_ngcontent-%COMP%]:hover{text-decoration:underline}.consent-categories[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:10px;padding-top:4px;border-top:1px solid #f3f4f6}.cat-row[_ngcontent-%COMP%]{display:flex;align-items:center;gap:14px;padding:12px 16px;background:#f9fafb;border-radius:16px}.cat-meta[_ngcontent-%COMP%]{flex:1;min-width:0}
3.cat-meta[_ngcontent-%COMP%]   strong[_ngcontent-%COMP%]{display:block;font-size:.82rem;color:var(--d-navy);font-weight:600;margin-bottom:2px}.cat-meta[_ngcontent-%COMP%]   p[_ngcontent-%COMP%]{font-size:.76rem;color:#6b7280;margin:0;line-height:1.5}.cat-pill[_ngcontent-%COMP%]{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:4px 10px;border-radius:999px;flex-shrink:0}.cat-pill--locked[_ngcontent-%COMP%]{background:#22c55e1f;color:#15803d}.cat-switch[_ngcontent-%COMP%]{position:relative;display:inline-block;width:38px;height:22px;flex-shrink:0}.cat-switch[_ngcontent-%COMP%]   input[_ngcontent-%COMP%]{opacity:0;width:0;height:0}.cat-slider[_ngcontent-%COMP%]{position:absolute;inset:0;background:#cbd5e1;border-radius:999px;transition:background .18s ease;cursor:pointer}.cat-slider[_ngcontent-%COMP%]:before{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;background:#fff;border-radius:50%;box-shadow:0 1px 3px #0000002e;transition:transform .18s ease}.cat-switch[_ngcontent-%COMP%]   input[_ngcontent-%COMP%]:checked + .cat-slider[_ngcontent-%COMP%]{background:var(--d-primary)}.cat-switch[_ngcontent-%COMP%]   input[_ngcontent-%COMP%]:checked + .cat-slider[_ngcontent-%COMP%]:before{transform:translate(16px)}.cat-switch[_ngcontent-%COMP%]   input[_ngcontent-%COMP%]:focus-visible + .cat-slider[_ngcontent-%COMP%]{box-shadow:0 0 0 3px color-mix(in oklch,var(--d-primary) 25%,transparent)}.consent-actions[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.btn[_ngcontent-%COMP%]{font-size:.83rem;font-weight:600;padding:9px 20px;border-radius:99px;cursor:pointer;border:1px solid transparent;transition:background .14s ease,border-color .14s ease,color .14s ease}.btn-primary[_ngcontent-%COMP%]{background:var(--d-primary);color:#fff}.btn-primary[_ngcontent-%COMP%]:hover{background:color-mix(in oklch,var(--d-primary) 85%,black)}.btn-ghost[_ngcontent-%COMP%]{background:transparent;color:#374151;border-color:#e5e7eb}.btn-ghost[_ngcontent-%COMP%]:hover{background:#f3f4f6}.dark[_nghost-%COMP%]   .consent-card[_ngcontent-%COMP%], .dark   [_nghost-%COMP%]   .consent-card[_ngcontent-%COMP%]{background:#1f2937;border-color:color-mix(in oklch,var(--d-primary) 32%,transparent);box-shadow:0 14px 38px #0000008c,0 2px 8px #0000004d}.dark[_nghost-%COMP%]   .consent-text[_ngcontent-%COMP%]   h3[_ngcontent-%COMP%], .dark   [_nghost-%COMP%]   .consent-text[_ngcontent-%COMP%]   h3[_ngcontent-%COMP%]{color:#f9fafb}.dark[_nghost-%COMP%]   .consent-text[_ngcontent-%COMP%]   p[_ngcontent-%COMP%], .dark   [_nghost-%COMP%]   .consent-text[_ngcontent-%COMP%]   p[_ngcontent-%COMP%]{color:#d1d5db}.dark[_nghost-%COMP%]   .consent-categories[_ngcontent-%COMP%], .dark   [_nghost-%COMP%]   .consent-categories[_ngcontent-%COMP%]{border-top-color:#ffffff14}.dark[_nghost-%COMP%]   .cat-row[_ngcontent-%COMP%], .dark   [_nghost-%COMP%]   .cat-row[_ngcontent-%COMP%]{background:#ffffff0a}.dark[_nghost-%COMP%]   .cat-meta[_ngcontent-%COMP%]   strong[_ngcontent-%COMP%], .dark   [_nghost-%COMP%]   .cat-meta[_ngcontent-%COMP%]   strong[_ngcontent-%COMP%]{color:#f9fafb}.dark[_nghost-%COMP%]   .cat-meta[_ngcontent-%COMP%]   p[_ngcontent-%COMP%], .dark   [_nghost-%COMP%]   .cat-meta[_ngcontent-%COMP%]   p[_ngcontent-%COMP%]{color:#9ca3af}.dark[_nghost-%COMP%]   .btn-ghost[_ngcontent-%COMP%], .dark   [_nghost-%COMP%]   .btn-ghost[_ngcontent-%COMP%]{color:#d1d5db;border-color:#ffffff1a}.dark[_nghost-%COMP%]   .btn-ghost[_ngcontent-%COMP%]:hover, .dark   [_nghost-%COMP%]   .btn-ghost[_ngcontent-%COMP%]:hover{background:#ffffff0f}.dark[_nghost-%COMP%]   .cat-slider[_ngcontent-%COMP%], .dark   [_nghost-%COMP%]   .cat-slider[_ngcontent-%COMP%]{background:#4b5563}@media(max-width:600px){.consent-backdrop[_ngcontent-%COMP%]{padding:10px}.consent-card[_ngcontent-%COMP%]{padding:14px 14px 12px;gap:12px}.consent-text[_ngcontent-%COMP%]   h3[_ngcontent-%COMP%]{font-size:.9rem}.consent-text[_ngcontent-%COMP%]   p[_ngcontent-%COMP%]{font-size:.78rem}.consent-actions[_ngcontent-%COMP%]   .btn[_ngcontent-%COMP%]{flex:1;min-width:0}}html.light[_nghost-%COMP%]   .consent-card[_ngcontent-%COMP%], html.light   [_nghost-%COMP%]   .consent-card[_ngcontent-%COMP%]{background:#fff;border-color:color-mix(in oklch,var(--d-primary) 16%,transparent);box-shadow:0 14px 38px #0f172a38,0 2px 8px #0f172a0f}html.light[_nghost-%COMP%]   .consent-text[_ngcontent-%COMP%]   h3[_ngcontent-%COMP%], html.light   [_nghost-%COMP%]   .consent-text[_ngcontent-%COMP%]   h3[_ngcontent-%COMP%]{color:var(--d-navy)}html.light[_nghost-%COMP%]   .consent-text[_ngcontent-%COMP%]   p[_ngcontent-%COMP%], html.light   [_nghost-%COMP%]   .consent-text[_ngcontent-%COMP%]   p[_ngcontent-%COMP%]{color:#4b5563}html.light[_nghost-%COMP%]   .consent-categories[_ngcontent-%COMP%], html.light   [_nghost-%COMP%]   .consent-categories[_ngcontent-%COMP%]{border-top-color:#f3f4f6}html.light[_nghost-%COMP%]   .cat-row[_ngcontent-%COMP%], html.light   [_nghost-%COMP%]   .cat-row[_ngcontent-%COMP%]{background:#f9fafb}html.light[_nghost-%COMP%]   .cat-meta[_ngcontent-%COMP%]   strong[_ngcontent-%COMP%], html.light   [_nghost-%COMP%]   .cat-meta[_ngcontent-%COMP%]   strong[_ngcontent-%COMP%]{color:var(--d-navy)}html.light[_nghost-%COMP%]   .cat-meta[_ngcontent-%COMP%]   p[_ngcontent-%COMP%], html.light   [_nghost-%COMP%]   .cat-meta[_ngcontent-%COMP%]   p[_ngcontent-%COMP%]{color:#6b7280}html.light[_nghost-%COMP%]   .btn-ghost[_ngcontent-%COMP%], html.light   [_nghost-%COMP%]   .btn-ghost[_ngcontent-%COMP%]{color:#374151;border-color:#e5e7eb}html.light[_nghost-%COMP%]   .btn-ghost[_ngcontent-%COMP%]:hover, html.light   [_nghost-%COMP%]   .btn-ghost[_ngcontent-%COMP%]:hover{background:#f3f4f6}html.light[_nghost-%COMP%]   .cat-slider[_ngcontent-%COMP%], html.light   [_nghost-%COMP%]   .cat-slider[_ngcontent-%COMP%]{background:#cbd5e1}'],changeDetection:0})}}return t})();
3var Ql=["currencyMenu"],$t=(t,o)=>o.label,Tn=(t,o)=>o.code,Br=(t,o)=>o.route;function Zl(t,o){if(t&1&&(s(0,"div",18)(1,"span",19),d(2),l()()),t&2){let e=p();mt("transform","translateY("+e.pullIndicatorOffset()+"px)"),L("ready",e.pullIndicatorReady()),r(2),h(e.pullIndicatorReady()?"refresh":"arrow_downward")}}function ec(t,o){if(t&1){let e=I();s(0,"div",20),C("click",function(){x(e);let i=p();return b(i.closeMobileSidebar())}),l()}if(t&2){let e=p();mt("opacity",e.swipeOffset()!==null?(250+e.swipeOffset())/250*.45:null),L("visible",e.mobileSidebarOpen()&&e.swipeOffset()===null)("swiping",e.swipeOffset()!==null)}}function tc(t,o){if(t&1&&(s(0,"li",28),m(1,"t"),s(2,"span",41)(3,"span",19),d(4),l()(),s(5,"span",42),d(6),m(7,"t"),l()()),t&2){let e=o.$implicit,n=p(2);S("routerLink",e.route)("title",n.sidebarCollapsed()?g(1,4,e.label):""),r(4),h(e.icon),r(2),h(g(7,6,e.label))}}function nc(t,o){if(t&1&&(s(0,"li",29),m(1,"t"),s(2,"span",41)(3,"span",19),d(4,"folder"),l()(),s(5,"span",42),d(6),m(7,"t"),l()()),t&2){let e=p(2);S("title",e.sidebarCollapsed()?g(1,2,"nav.my_assets"):""),r(6),h(g(7,4,"nav.my_assets"))}}function ic(t,o){if(t&1&&(s(0,"span",46),d(1),m(2,"t"),l()),t&2){let e=p().$implicit;L("badge--beta",e.badge==="nav.badge_beta"),r(),h(g(2,3,e.badge))}}function oc(t,o){if(t&1&&(s(0,"li",28),m(1,"t"),s(2,"span",41)(3,"span",19),d(4),l()(),s(5,"span",42),d(6),m(7,"t"),l(),v(8,ic,3,5,"span",45),l()),t&2){let e=o.$implicit,n=p(3);S("routerLink",e.route)("title",n.sidebarCollapsed()?g(1,5,e.label):""),r(4),h(e.icon),r(2),h(g(7,7,e.label)),r(2),M(e.badge?8:-1)}}function rc(t,o){if(t&1&&(s(0,"div",43)(1,"span",42),d(2),m(3,"t"),l()(),s(4,"ul",44),G(5,oc,9,9,"li",28,$t),l()),t&2){let e=o.$implicit;r(2),h(g(3,1,e.label)),r(3),W(e.items)}}function ac(t,o){t&1&&(s(0,"a",30),m(1,"t"),s(2,"span",47),d(3,"workspace_premium"),l(),s(4,"span",48),d(5),m(6,"t"),l(),s(7,"span",49),d(8),m(9,"t"),l(),s(10,"span",50),d(11),m(12,"t"),l()()),t&2&&(S("title",g(1,4,"nav.go_pro_title")),r(5),h(g(6,6,"nav.go_pro_title")),r(3),h(g(9,8,"nav.go_pro_sub")),r(3),h(g(12,10,"nav.go_pro_cta")))}function sc(t,o){t&1&&j(0,"span",35)}function lc(t,o){t&1&&(s(0,"span",19),d(1,"language"),l())}function cc(t,o){t&1&&j(0,"span",35)}function dc(t,o){t&1&&(s(0,"span",55),d(1,"check"),l())}function pc(t,o){if(t&1){let e=I();s(0,"div",53),C("click",function(i){let c=x(e).$implicit,_=p(3);return b(_.selectLang(c.code,i))}),s(1,"span",54),d(2),l(),v(3,cc,1,0,"span",35)(4,dc,2,0,"span",55),l()}if(t&2){let e=o.$implicit,n=p(3);L("selected",n.ts.lang()===e.code)("loading",n.ts.langLoading()===e.code),ie("aria-busy",n.ts.langLoading()===e.code?"true":null),r(2),h(e.label),r(),M(n.ts.langLoading()===e.code?3:n.ts.lang()===e.code?4:-1)}}function mc(t,o){if(t&1&&(s(0,"div",51),C("click",function(n){return n.stopPropagation()}),G(1,pc,5,7,"div",52,Tn),l()),t&2){let e=p(2);r(),W(e.languages)}}function gc(t,o){t&1&&(s(0,"span",55),d(1,"check"),l())}function uc(t,o){if(t&1){let e=I();s(0,"div",53),C("click",function(i){let c=x(e).$implicit,_=p(3);return b(_.selectCurrency(c.code,i))}),s(1,"span",54),d(2),m(3,"t"),l(),v(4,gc,2,0,"span",55),l()}if(t&2){let e=o.$implicit,n=p(3);L("selected",n.currency.currency()===e.code),r(2),ti("",e.symbol," ",e.code," \xB7 ",g(3,6,e.nameKey)),r(2),M(n.currency.currency()===e.code?4:-1)}}function _c(t,o){if(t&1&&(s(0,"div",56,0),C("click",function(n){return n.stopPropagation()}),G(2,uc,5,8,"div",57,Tn),l()),t&2){let e=p(2);ei(e.currencyMenuStyle()),r(2),W(e.currencies)}}function hc(t,o){if(t&1){let e=I();s(0,"aside",21)(1,"div",22)(2,"a",23),j(3,"img",24),s(4,"span",25),d(5,"Genix "),s(6,"span",26),d(7,"AI"),l()()()(),s(8,"nav",27)(9,"ul"),G(10,tc,8,8,"li",28,$t),v(12,nc,8,6,"li",29),l(),G(13,rc,7,3,null,null,$t),l(),v(15,ac,13,12,"a",30),s(16,"div",31)(17,"button",32),m(18,"t"),C("click",function(){x(e);let i=p();return b(i.toggleDarkMode())}),s(19,"span",19),d(20),l()(),s(21,"div",33),C("click",function(i){return i.stopPropagation()}),s(22,"button",34),m(23,"t"),C("click",function(i){x(e);let c=p();return b(c.toggleLang(i))}),v(24,sc,1,0,"span",35)(25,lc,2,0,"span",19),s(26,"span",36),d(27),l()(),v(28,mc,3,0,"div",37),l(),s(29,"div",38),C("click",function(i){return i.stopPropagation()}),s(30,"button",34),m(31,"t"),C("click",function(i){x(e);let c=p();return b(c.toggleCurrency(i,"up"))}),s(32,"span",19),d(33,"payments"),l(),s(34,"span",36),d(35),l()(),v(36,_c,4,2,"div",39),l(),s(37,"button",40),C("click",function(){x(e);let i=p();return b(i.toggleSidebar())}),s(38,"span",19),d(39),l()()()()}if(t&2){let e=p();mt("transform",e.swipeOffset()!==null?"translateX("+e.swipeOffset()+"px)":null)("transition",e.swipeOffset()!==null?"none":null),L("collapsed",e.sidebarCollapsed())("mobile-open",e.mobileSidebarOpen()&&e.swipeOffset()===null),r(10),W(e.topNavItems),r(2),M(e.auth.user()?12:-1),r(),W(e.toolNavGroups),r(2),M(e.userPlan()?-1:15),r(2),S("title",g(18,26,e.darkMode()?"nav.theme_light":"nav.theme_dark")),r(3),h(e.darkMode()?"dar
3k_mode":"light_mode"),r(2),L("open",e.langOpen()),S("title",g(23,28,"nav.select_language")),ie("aria-busy",e.ts.langLoading()?"true":null),r(2),M(e.ts.langLoading()?24:25),r(3),h(e.currentLang.code.toUpperCase()),r(),M(e.langOpen()?28:-1),r(2),L("open",e.currencyOpen()),S("title",g(31,30,"nav.select_currency")),r(5),h(e.currentCurrency.code),r(),M(e.currencyOpen()?36:-1),r(),S("title",e.sidebarCollapsed()?"Expand sidebar":"Collapse sidebar"),r(2),h(e.sidebarCollapsed()?"keyboard_double_arrow_right":"keyboard_double_arrow_left")}}function fc(t,o){if(t&1){let e=I();s(0,"button",58),C("click",function(){x(e);let i=p();return b(i.toggleMobileSidebar())}),s(1,"span",19),d(2,"menu"),l()()}}function Cc(t,o){if(t&1&&(s(0,"span",63),d(1),m(2,"t"),l()),t&2){let e=p(2);r(),h(g(2,1,e.pageTag()))}}function xc(t,o){if(t&1){let e=I();s(0,"div",59)(1,"button",60),C("click",function(){x(e);let i=p();return b(i.goBack())}),s(2,"span",19),d(3,"arrow_back"),l()(),s(4,"button",61),C("click",function(){x(e);let i=p();return b(i.goForward())}),s(5,"span",19),d(6,"arrow_forward"),l()()(),s(7,"h2",62),d(8),m(9,"t"),l(),v(10,Cc,3,3,"span",63)}if(t&2){let e=p();r(),S("disabled",!e.canGoBack()),r(3),S("disabled",!e.canGoForward()),r(4),h(g(9,4,e.pageTitle())),r(2),M(e.pageTag()?10:-1)}}function bc(t,o){if(t&1&&(s(0,"a",64),d(1),m(2,"t"),l()),t&2){let e=o.$implicit;S("routerLink",e.route),r(),h(g(2,2,e.label))}}function vc(t,o){if(t&1&&(s(0,"a",64),d(1),m(2,"t"),l()),t&2){let e=o.$implicit;S("routerLink",e.route),r(),h(g(2,2,e.label))}}function Mc(t,o){if(t&1&&G(0,vc,3,4,"a",64,Br),t&2){let e=o.$implicit;W(e.items)}}function yc(t,o){if(t&1&&(s(0,"nav",12),G(1,bc,3,4,"a",64,Br),G(3,Mc,2,0,null,null,$t),l()),t&2){let e=p();r(),W(e.topNavItems),r(2),W(e.toolNavGroups)}}function Oc(t,o){if(t&1&&(s(0,"span",66),d(1),l()),t&2){let e=p(2);r(),h(e.notifications.unreadCount()>99?"99+":e.notifications.unreadCount())}}function Pc(t,o){if(t&1){let e=I();s(0,"span",78),C("click",function(i){x(e);let c=p(2);return b(c.navigateToAssets(i))}),j(1,"span",79),s(2,"span",80),d(3),l()()}if(t&2){let e=p(2);r(3),h(e.jobTracker.activeJobIds().length)}}function wc(t,o){if(t&1&&(s(0,"span",82),d(1),l()),t&2){let e=o.$implicit;L("slot-spinning",e.spinning),r(),h(e.digit)}}function kc(t,o){if(t&1&&G(0,wc,2,3,"span",81,_o),t&2){let e=p(2);W(e.slotDigits())}}function Ec(t,o){if(t&1&&d(0),t&2){let e=p(2);B(" ",e.creditBalance.balance()," ")}}function Tc(t,o){if(t&1&&(s(0,"span",75),d(1),l()),t&2){let e=p(2);r(),h(e.planIcon)}}function Sc(t,o){if(t&1&&(s(0,"div",88)(1,"span",86),d(2),m(3,"t"),l(),s(4,"span",87),d(5),l()()),t&2){let e=p(3);r(2),h(g(3,2,"credits.reserved")),r(3),h(e.creditBalance.reservedCredits())}}function Ic(t,o){if(t&1){let e=I();s(0,"a",90),C("click",function(){x(e);let i=p(3);return i.topupUi.show(),b(i.userMenuOpen.set(!1))}),d(1),m(2,"t"),l()}t&2&&(r(),h(g(2,1,"billing.topup_button")))}function Ac(t,o){if(t&1){let e=I();s(0,"a",95),C("click",function(){x(e);let i=p(4);return b(i.userMenuOpen.set(!1))}),d(1),m(2,"t"),l()}if(t&2){let e=p().$implicit;S("routerLink",e.route),r(),h(g(2,2,e.label))}}function Dc(t,o){if(t&1){let e=I();s(0,"button",96),C("click",function(){x(e);let i=p(4);return i.auth.logout(),b(i.userMenuOpen.set(!1))}),d(1),m(2,"t"),l()}if(t&2){let e=p().$implicit;r(),h(g(2,1,e.label))}}function Lc(t,o){if(t&1&&v(0,Ac,3,4,"a",93)(1,Dc,3,3,"button",94),t&2){let e=o.$implicit;M(e.route?0:1)}}function Rc(t,o){if(t&1){let e=I();s(0,"div",83),C("click",function(i){return i.stopPropagation()}),s(1,"div",84)(2,"div",85)(3,"span",86),d(4),m(5,"t"),l(),s(6,"span",87),d(7),l()(),v(8,Sc,6,4,"div",88),s(9,"div",89)(10,"a",90),C("click",function(){x(e);let i=p(2);return i.creditsModalOpen.set(!0),b(i.userMenuOpen.set(!1))}),d(11),m(12,"t"),l(),v(13,Ic,3,3,"a",91),l()(),j(14,"div",92),G(15,Lc,2,1,null,null,$t),l()}if(t&2){let e=p(2);r(4),h(g(5,5,"account.remaining_credits")),r(3),h(e.creditBalance.balance()),r(),M(e.creditBalance.reservedCredits()>0?8:-1),r(3),h(g(12,7,"common.details")),r(2),M(e.userPlan()?13:-1),r(2),W(e.userMenuItems)}}function Nc(t,o){if(t&1){let e=I();
3s(0,"a",65)(1,"span",19),d(2,"notifications"),l(),v(3,Oc,2,1,"span",66),l(),s(4,"div",67),C("click",function(i){return i.stopPropagation()}),s(5,"button",68),C("click",function(i){x(e);let c=p();return b(c.toggleUserMenu(i))}),v(6,Pc,4,1,"span",69),s(7,"span",70)(8,"span",71),d(9,"bolt"),l(),s(10,"span",72),v(11,kc,2,0)(12,Ec,1,1),l(),s(13,"span",73),d(14,"|"),l(),s(15,"span",74),v(16,Tc,2,1,"span",75),d(17),l()(),s(18,"span",76),d(19),l()(),v(20,Rc,17,9,"div",77),l()}if(t&2){let e=p();r(3),M(e.notifications.unreadCount()>0?3:-1),r(3),M(e.jobTracker.activeJobIds().length>0?6:-1),r(5),M(e.slotDigits().length>0?11:12),r(4),L("pill-plan--sub",e.userPlan()),r(),M(e.planIcon?16:-1),r(),B("",e.planLabel," "),r(2),h(e.auth.user().name.charAt(0).toUpperCase()),r(),M(e.userMenuOpen()?20:-1)}}function Bc(t,o){t&1&&j(0,"span",35)}function Vc(t,o){t&1&&(s(0,"span",19),d(1,"language"),l())}function Fc(t,o){t&1&&j(0,"span",35)}function Uc(t,o){t&1&&(s(0,"span",55),d(1,"check"),l())}function zc(t,o){if(t&1){let e=I();s(0,"div",53),C("click",function(i){let c=x(e).$implicit,_=p(4);return b(_.selectLang(c.code,i))}),s(1,"span",54),d(2),l(),v(3,Fc,1,0,"span",35)(4,Uc,2,0,"span",55),l()}if(t&2){let e=o.$implicit,n=p(4);L("selected",n.ts.lang()===e.code)("loading",n.ts.langLoading()===e.code),ie("aria-busy",n.ts.langLoading()===e.code?"true":null),r(2),h(e.label),r(),M(n.ts.langLoading()===e.code?3:n.ts.lang()===e.code?4:-1)}}function jc(t,o){if(t&1&&(s(0,"div",51),C("click",function(n){return n.stopPropagation()}),G(1,zc,5,7,"div",52,Tn),l()),t&2){let e=p(3);r(),W(e.languages)}}function Hc(t,o){t&1&&(s(0,"span",55),d(1,"check"),l())}function $c(t,o){if(t&1){let e=I();s(0,"div",53),C("click",function(i){let c=x(e).$implicit,_=p(4);return b(_.selectCurrency(c.code,i))}),s(1,"span",54),d(2),m(3,"t"),l(),v(4,Hc,2,0,"span",55),l()}if(t&2){let e=o.$implicit,n=p(4);L("selected",n.currency.currency()===e.code),r(2),ti("",e.symbol," ",e.code," \xB7 ",g(3,6,e.nameKey)),r(2),M(n.currency.currency()===e.code?4:-1)}}function Gc(t,o){if(t&1&&(s(0,"div",56,0),C("click",function(n){return n.stopPropagation()}),G(2,$c,5,8,"div",57,Tn),l()),t&2){let e=p(3);ei(e.currencyMenuStyle()),r(2),W(e.currencies)}}function Wc(t,o){if(t&1){let e=I();s(0,"button",32),m(1,"t"),C("click",function(){x(e);let i=p(2);return b(i.toggleDarkMode())}),s(2,"span",19),d(3),l()(),s(4,"div",33),C("click",function(i){return i.stopPropagation()}),s(5,"button",34),m(6,"t"),C("click",function(i){x(e);let c=p(2);return b(c.toggleLang(i))}),v(7,Bc,1,0,"span",35)(8,Vc,2,0,"span",19),s(9,"span",36),d(10),l()(),v(11,jc,3,0,"div",37),l(),s(12,"div",38),C("click",function(i){return i.stopPropagation()}),s(13,"button",34),m(14,"t"),C("click",function(i){x(e);let c=p(2);return b(c.toggleCurrency(i,"down"))}),s(15,"span",19),d(16,"payments"),l(),s(17,"span",36),d(18),l()(),v(19,Gc,4,2,"div",39),l()}if(t&2){let e=p(2);S("title",g(1,14,e.darkMode()?"nav.theme_light":"nav.theme_dark")),r(3),h(e.darkMode()?"dark_mode":"light_mode"),r(2),L("open",e.langOpen()),S("title",g(6,16,"nav.select_language")),ie("aria-busy",e.ts.langLoading()?"true":null),r(2),M(e.ts.langLoading()?7:8),r(3),h(e.currentLang.code.toUpperCase()),r(),M(e.langOpen()?11:-1),r(2),L("open",e.currencyOpen()),S("title",g(14,18,"nav.select_currency")),r(5),h(e.currentCurrency.code),r(),M(e.currencyOpen()?19:-1)}}function Yc(t,o){if(t&1){let e=I();v(0,Wc,20,20),s(1,"button",97),C("click",function(){x(e);let i=p();return b(i.openLogin())}),d(2),m(3,"t"),l(),s(4,"button",98),C("click",function(){x(e);let i=p();return b(i.openLogin())}),d(5),m(6,"t"),l()}if(t&2){let e=p();M(e.hideChrome()?0:-1),r(2),h(g(3,3,"auth.login")),r(3),h(g(6,5,"auth.start_for_free"))}}function qc(t,o){if(t&1){let e=I();s(0,"app-login-modal",99),C("closed",function(){x(e);let i=p();return b(i.auth.loginModalOpen.set(!1))}),l()}}function Kc(t,o){if(t&1){let e=I();s(0,"app-credits-modal",100),C("closed",function(){x(e);let i=p();return b(i.creditsModalOpen.set(!1))}),l()}if(t&2){let e=p();S("credits",e.creditBalance.balance())("reservedCredits",e.creditBalance.reservedCredits())("userId",e.auth.user().id)}}function Xc(t,o){if(t&1){let e=I();s(0,"app-topup-modal",101),C("closed",function(){x(e);let i=p();return b(i.topupUi.hide())}),l()}if(t&2){let e=p();S("userId",e.auth.user().id)}}
3function Jc(t,o){if(t&1){let e=I();s(0,"app-survey-modal",102),C("closed",function(){x(e);let i=p();return b(i.surveyUi.hide())}),l()}if(t&2){let e=p();S("survey",e.surveyUi.activeSurvey())("userId",e.auth.user().id)}}var Vr=(()=>{class t{get darkMode(){return this.theme.darkMode}toggleGroup(e){let n=be(ae({},this.groupExpanded()),{[e]:!this.groupExpanded()[e]});this.groupExpanded.set(n);let i=encodeURIComponent(JSON.stringify(n));ii("nav_groups",i),this.prefs.set("nav_groups",i)}get SIDEBAR_WIDTH(){return this.cfg.ui.sidebarWidthPx}get PULL_MAX_OFFSET(){return this.cfg.ui.pullMaxOffsetPx}get PULL_DAMPING(){return this.cfg.ui.pullDamping}get PULL_TRIGGER_DY(){return this.cfg.ui.pullTriggerDyPx}get SWIPE_AXIS_THRESHOLD(){return this.cfg.ui.swipeAxisThresholdPx}animateCredits(e){this.slotTimers.forEach(c=>clearTimeout(c)),this.slotTimers=[];let n=String(e).split("").map(Number),i=n.map(c=>({digit:c,spinning:!1}));this.slotDigits.set(i),n.forEach((c,_)=>{let E=(n.length-1-_)*120,k=setTimeout(()=>{this.slotDigits.update(J=>J.map((R,oe)=>oe===_?be(ae({},R),{spinning:!0}):R))},E),H=setTimeout(()=>{this.slotDigits.update(J=>J.map((R,oe)=>oe===_?{digit:c,spinning:!1}:R))},E+600);this.slotTimers.push(k,H)})}constructor(e,n,i,c,_,E,k,H,J,R,oe,at,Ge,We,Pe,Te,Dt){this.ts=e,this.auth=n,this.creditBalance=i,this.jobTracker=c,this.subscriptionService=_,this.topupUi=E,this.surveyUi=k,this.notifications=H,this.router=J,this.activatedRoute=R,this.toast=oe,this.prefs=at,this.theme=Ge,this.currency=We,this.cfg=Pe,this.location=Te,this.paymentReturn=Dt,this.pageTitle=P(""),this.pageIcon=P("auto_awesome"),this.pageTag=P(""),this.hideChrome=P(!1),this.canGoBack=P(!1),this.canGoForward=P(!1),this.navStack=[],this.navIndex=-1,this.lastNavTrigger="imperative",this.langOpen=P(!1),this.langSwitchInFlight=!1,this.langInteractionSeq=0,this.langSwitchStartInteraction=0,this.currencyOpen=P(!1),this.currencyMenuStyle=P(null),this.currencyMenuRef=mn("currencyMenu"),this.teleportedMenu=null,this.currencyTrigger=null,this.sidebarCollapsed=P(typeof window<"u"&&window.innerWidth<1024),this.mobileSidebarOpen=P(!1),this.languages=[{code:"en",label:"English"},{code:"ru",label:"\u0420\u0443\u0441\u0441\u043A\u0438\u0439"},{code:"hy",label:"\u0540\u0561\u0575\u0565\u0580\u0565\u0576"}],this.currencies=[{code:"USD",symbol:"$",nameKey:"currency.usd"},{code:"RUB",symbol:"\u20BD",nameKey:"currency.rub"},{code:"AMD",symbol:"\u058F",nameKey:"currency.amd"}],this.topNavItems=[{label:"nav.explore",icon:"explore",route:"/explore",badge:""}],this.toolNavGroups=[{label:"nav.group_image",items:[{label:"nav.ai_image",icon:"image",route:"/ai-image",badge:"nav.badge_new"}]},{label:"nav.group_video",items:[{label:"nav.image_to_video",icon:"movie",route:"/image-to-video",badge:""},{label:"nav.video_to_video",icon:"movie_filter",route:"/video-to-video",badge:"nav.badge_new"},{label:"nav.text_to_video",icon:"play_arrow",route:"/text-to-video",badge:""},{label:"nav.viral_clone",icon:"content_copy",route:"/viral-clone",badge:""},{label:"nav.ai_lipsync",icon:"record_voice_over",route:"/ai-lipsync",badge:"nav.badge_new"},{label:"nav.studio",icon:"movie_edit",route:"/studio",badge:"nav.badge_new"}]},{label:"nav.group_audio",items:[{label:"nav.ai_music",icon:"music_note",route:"/ai-music",badge:""},{label:"nav.video_to_audio",icon:"music_video",route:"/video-to-audio",badge:"nav.badge_new"}]},{label:"nav.group_tools",items:[{label:"nav.tools",icon:"handyman",route:"/tools",badge:"nav.badge_new"}]},{label:"nav.group_marketplace",items:[{label:"nav.marketplace_wb_ozon",icon:"shopping_basket",route:"/marketplace/wb-ozon",badge:"nav.badge_beta"}]}],this.groupExpanded=P({"nav.group_image":!0,"nav.group_video":!0,"nav.group_audio":!0,"nav.group_tools":!0,"nav.group_marketplace":!0}),this.userMenuOpen=P(!1),this.creditsModalOpen=P(!1),this.userPlan=P(null),this.prevActiveJobCount=0,this.prevSurveyUserId=null,this.pullIndicatorVisible=P(!1),this.pullIndicatorOffset=P(-60),this.pullIndicatorReady=P(!1),this.pullStartY=0,this.pullMaxDy=0,this.pulling=!1,this.swipeStartX=0,this.swipeStartY=0,this.swipingFromEdge=!1,this.swipingToClose=!1,this.swipeOffset=P(null),this.destroyRef=O(yt),this.zone=O(an),this.slotDigits=P([]),this.slotTimers=[],this.analytics=O(Fo),this.userMenuItems=[{label:"nav.my_assets",route:"/my-assets"},{label:"nav.my_elements",route:"/my-elements"},{label:"page.pricing",route:"/pricing"},{label:"page.account",route:"/account"},{label:"page.preferences",route:"/preferences"},{label:"page.contact",route:"/contact-us"},{label:"page.notification",route:"/notification"},{label:"auth.logout",route:null}],this.ts.registerOnLangChange(D=>this.prefs.set("lang",D)),ge(()=>{let D=this.ts.langLoading();gt(()=>{if(D){this.langSwitchInFlight||(this.langSwitchInFlight=!0,this.langSwitchStartInteraction=this.langInteractionSeq);return}this.langSwitchInFlight&&(this.langSwitchInFlight=!1,this.langInteractionSeq===this.langSwitchStartInteraction&&this.langOpen.set(!1))})});let Y=this.prefs.get("theme")??oi("theme");this.theme.applyTheme(Y==="light"?"light":"dark");let F=this.prefs.get("nav_groups")??oi("nav_groups");
3if(F)try{this.groupExpanded.set(ae(ae({},this.groupExpanded()),JSON.parse(decodeURIComponent(F))))}catch(D){}ge(()=>{let D=this.auth.user();gt(()=>{D?(this.prefs.load().then(()=>{this.auth.user()?.id===D.id&&this.prefs.uploadLocal()}),this.loadCredits(D.id),this.loadUserPlan(D.id),D.id!==this.prevSurveyUserId&&(this.prevSurveyUserId=D.id,this.surveyUi.triggerForSession())):(this.creditBalance.clear(),this.userPlan.set(null),this.prevSurveyUserId=null,this.surveyUi.reset())})}),ge(()=>{let D=this.jobTracker.activeJobIds().length;gt(()=>{if(D<this.prevActiveJobCount){let K=this.auth.user();K&&this.creditBalance.refresh(K.id).then(()=>{this.auth.user()?.id===K.id&&this.animateCredits(this.creditBalance.balance())})}this.prevActiveJobCount=D})}),this.router.events.pipe(ke(D=>D instanceof Eo),ci(this.destroyRef)).subscribe(D=>{this.lastNavTrigger=D.navigationTrigger??"imperative"}),this.router.events.pipe(ke(D=>D instanceof tt),ci(this.destroyRef)).subscribe(D=>{let K=this.activatedRoute.firstChild;for(;K?.firstChild;)K=K.firstChild;let st=K?.snapshot.data??{};this.pageTitle.set(st.title??""),this.pageIcon.set(st.icon??"auto_awesome"),this.pageTag.set(st.tag??""),this.mobileSidebarOpen.set(!1);let Lt=this.router.url.split("?")[0].split("#")[0];this.hideChrome.set(Lt==="/"||Lt==="/explore"),this.updateNavHistory(D.urlAfterRedirects);let Ye=this.paymentReturn.peek();Ye?this.handleYookassaReturn(Ye):this.handleTopupReturn(D.urlAfterRedirects)}),ge(()=>{let D=this.currencyMenuRef();if(!D)return;let K=D.nativeElement;this.teleportedMenu=K,document.body.appendChild(K),this.clampMenuToViewport(K)}),this.destroyRef.onDestroy(()=>this.teleportedMenu?.remove());let we=D=>{if(!this.currencyOpen())return;let K=D.target;
3K instanceof HTMLElement&&this.currencyTrigger&&K.contains(this.currencyTrigger)||this.currencyOpen.set(!1)};window.addEventListener("scroll",we,{capture:!0,passive:!0}),this.destroyRef.onDestroy(()=>window.removeEventListener("scroll",we,!0))}onWindowResize(){this.currencyOpen.set(!1)}handleTopupReturn(e){if(this.router.parseUrl(e).queryParams.topup!=="success")return;let n=this.auth.user();if(n){this.analytics.track(ri.TOPUP_COMPLETED),this.toast.success(this.ts.t("billing.topup_success"));let i=()=>this.creditBalance.refresh(n.id).then(()=>{this.auth.user()?.id===n.id&&this.animateCredits(this.creditBalance.balance())});i(),setTimeout(i,2500),setTimeout(i,6e3)}this.router.navigate([],{queryParams:{topup:null},queryParamsHandling:"merge",replaceUrl:!0})}handleYookassaReturn(e){this.paymentReturn.markConfirmOwned(e.kind),this.paymentReturn.clear();let{userId:n,sessionId:i,kind:c}=e;this.subscriptionService.confirmCheckout(n,"YOOKASSA",i).then(_=>{switch(_.status){case"succeeded":c==="topup"?(this.analytics.track(ri.TOPUP_
3COMPLETED),this.toast.success(this.ts.t("billing.topup_success")),this.auth.user()?.id===n&&this.loadCredits(n)):(this.toast.success(this.ts.t("billing.confirm_success")),this.auth.user()?.id===n&&this.loadUserPlan(n));break;case"canceled":this.toast.error(this.ts.t("billing.confirm_canceled"));break;default:this.toast.info(this.ts.t("billing.confirm_pending"))}}).catch(()=>this.toast.info(this.ts.t("billing.confirm_pending"))).finally(()=>this.router.navigate([],{queryParams:{topup:null,subscription:null},queryParamsHandling:"merge",replaceUrl:!0}))}goBack(){this.location.back()}goForward(){this.location.forward()}updateNavHistory(e){if(this.lastNavTrigger==="popstate")if(this.navIndex>0&&this.navStack[this.navIndex-1]===e)this.navIndex--;else if(this.navIndex<this.navStack.length-1&&this.navStack[this.navIndex+1]===e)this.navIndex++;else{let n=this.navStack.lastIndexOf(e);n!==-1&&(this.navIndex=n)}else this.navStack[this.navIndex]!==e&&(this.navStack=this.navStack.slice(0,this.navIndex+1),this.navStack.push(e),this.navIndex=this.navStack.length-1);this.canGoBack.set(this.navIndex>0),this.canGoForward.set(this.navIndex<this.navStack.length-1)}toggleLang(e){e.stopPropagation(),this.langInteractionSeq++,this.currencyOpen.set(!1),this.langOpen.update(n=>!n)}selectLang(e,n){n.stopPropagation(),this.ts.langLoading()!==e&&this.ts.setLang(e)}toggleCurrency(e,n="down"){e.stopPropagation(),this.langOpen.set(!1);let i=!this.currencyOpen();i&&this.positionCurrencyMenu(e.currentTarget,n),this.currencyOpen.set(i)}positionCurrencyMenu(e,n){this.currencyTrigger=e;let i=e.getBoundingClientRect();this.currencyMenuStyle.set(n==="up"?{position:"fixed",left:`${i.left}px`,bottom:`${window.innerHeight-i.top+6}px`,top:"auto",right:"auto",animation:"fadeUp 0.15s ease"}:{position:"fixed",top:`${i.bottom+6}px`,right:`${window.innerWidth-i.right}px`,bottom:"auto",left:"auto",animation:"fadeDown 0.15s ease"})}clampMenuToViewport(e){let i=e.getBoundingClientRect(),c=null;i.right>window.innerWidth-12?c=Math.max(12,window.innerWidth-12-i.width):i.left<12&&(c=12),c!==null&&this.currencyMenuStyle.update(_=>_&&be(ae({},_),{left:`${c}px`,right:"auto"}))}selectCurrency(e,n){n.stopPropagation(),this.currency.setCurrency(e),this.currencyOpen.set(!1)}get currentCurrency(){return this.currencies.find(e=>e.code===this.currency.currency())??this.currencies[0]}openLogin(){this.auth.loginModalOpen.set(!0)}toggleUserMenu(e){e.stopPropagation(),this.userMenuOpen.update(n=>!n)}navigateToAssets(e){e.stopPropagation(),this.userMenuOpen.set(!1),this.router.navigate([Do.MY_ASSETS])}closeDropdowns(){this.langOpen.set(!1),this.currencyOpen.set(!1),this.userMenuOpen.set(!1),this.onUserActivity()}onKeydown(){this.onUserActivity()}onUserActivity(){this.auth.user()&&this.auth.recordActivity()}onEscape(){this.langOpen.set(!1),this.currencyOpen.set(!1),this.userMenuOpen.set(!1),this.creditsModalOpen.set(!1),this.topupUi.hide(),this.surveyUi.hide(),this.mobileSidebarOpen.set(!1)}onTouchStart(e){if(window.innerWidth>768)return;let n=e.touches[0].clientX,i=e.touches[0].clientY;this.swipeStartX=n,this.swipeStartY=i,n<=30&&!this.mobileSidebarOpen()?this.swipingFromEdge=!0:this.mobileSidebarOpen()&&(this.swipingToClose=!0),this.pulling=!1,this.pullMaxDy=0,this.pullIndicatorVisible.set(!1),this.pullIndicatorReady.set(!1),window.scrollY===0&&!this.hasScrolledAncestor(e.target)&&(this.pullStartY=i,this.pulling=!0)}hasScrolledAncestor(e){for(;e&&e!==document.documentElement;){if(e.scrollTop>0)return!0;e=e.parentElement}return!1}onTouchMove(e){let n=e.touches[0].clientX-this.swipeStartX,i=e.touches[0].clientY-this.swipeStartY;if(this.swipingFromEdge||this.swipingToClose)if(Math.abs(i)>Math.abs(n))this.swipingFromEdge=!1,this.swipingToClose=!1,this.swipeOffset.set(null);else{if(e.preventDefault(),this.swipingFromEdge){let c=Math.min(0,-this.SIDEBAR_WIDTH+n);this.swipeOffset.set(Math.max(-this.SIDEBAR_WIDTH,c))}else if(this.swipingToClose){let c=Math.min(0,n);this.swipeOffset.set(Math.max(-this.SIDEBAR_WIDTH,c))}return}if(this.pulling){let c=e.touches[0].clientY-this.pullStartY;if(c>this.pullMaxDy&&(this.pullMaxDy=c),Math.abs(n)>this.SWIPE_AXIS_THRESHOLD)this.pulling=!1,this.pullIndicatorVisible.set(!1),this.pullIndicatorReady.set(!1);else{let _=Math.min(c,this.PULL_MAX_OFFSET)*this.PULL_DAMPING-60;this.pullIndicatorVisible.set(c>10),this.pullIndicatorOffset.set(Math.max(-60,_)),this.pullIndicatorReady.set(c>=this.PULL_TRIGGER_DY)}}}onTouchEnd(){let e=this.swipeOffset();if(e!==null){let n=(this.SIDEBAR_WIDTH+e)/this.SIDEBAR_WIDTH;this.mobileSidebarOpen.set(n>=.4),this.swipeOffset.set(null)}this.pulling&&this.pullMaxDy>this.PULL_TRIGGER_DY?window.location.reload():(this.pullIndicatorVisible.set(!1),this.pullIndicatorReady.set(!1)),this.pulling=!1,this.pullMaxDy=0,this.swipingFromEdge=!1,this.swipingToClose=!1}toggleSidebar(){this.sidebarCollapsed.update(e=>!e)}toggleMobileSidebar(){this.mobileSidebarOpen.update(e=>!e)}closeMobileSidebar(){this.mobileSidebarOpen.set(!1)}toggleDarkMode(){let e=!this.darkMode(),n=()=>this.theme.applyTheme(e?"dark":"light"),i=document;i.startViewTransition&&!window.matchMedia("(prefers-reduced-motion: reduce)").matches?i.startViewTransition(()=>this.zone.run(n)):n();let c=e?"dark":"light";ii("theme",c),this.prefs.set("theme",c)}get currentLang(){return this.languages.find(e=>e.code===this.ts.lang())??this.languages[0]}loadCredits(e,n=0){this.creditBalance.refresh(e).then(i=>{if(i){if(this.auth.user()?.id!==e)return;this.animateCredits(this.creditBalance.balance());return}this.auth.user()?.id===e&&(n<2?setTimeout(()=>this.loadCredits(e,n+1),800*(n+1)):this.toast.error(this.ts.t("error.credits_load")))})}loadUserPlan(e,n=0){this.subscriptionService.getSubscription(e).then(i=>{if(this.auth.user()?.id!==e)return;let c=i?.status==="ACTIVE"||i?.status==="PAST_DUE";this.userPlan.set(c?i.plan:null)}
3).catch(()=>{n<2&&this.auth.user()?.id===e&&setTimeout(()=>this.loadUserPlan(e,n+1),800*(n+1))})}get planLabel(){let e=this.userPlan();if(!e)return this.ts.t("common.free_trial");let n=`plan.${e.toLowerCase()}.name`,i=this.ts.t(n);return i===n?e.charAt(0)+e.slice(1).toLowerCase():i}get planIcon(){return Ko(this.userPlan())}static{this.\u0275fac=function(n){return new(n||t)($(q),$(Ae),$(On),$(wn),$(vn),$(kn),$(Xo),$(Jo),$(ve),$(_n),$(Oe),$(Ho),$(Qo),$(Mn),$(Ie),$(bo),$(yn))}}static{this.\u0275cmp=ue({type:t,selectors:[["app-root"]],viewQuery:function(n,i){n&1&&cn(i.currencyMenuRef,Ql,5),n&2&&dn()},hostBindings:function(n,i){n&1&&C("resize",function(){return i.onWindowResize()},mo)("click",function(){return i.closeDropdowns()},pt)("keydown",function(){return i.onKeydown()},pt)("keydown.escape",function(){return i.onEscape()},pt)("touchstart",function(_){return i.onTouchStart(_)},pt)("touchmove",function(_){return i.onTouchMove(_)},pt)("touchend",function(){return i.onTouchEnd()},pt)},decls:29,vars:17,consts:[["currencyMenu",""],[1,"shell","dark"],[1,"pull-indicator",3,"ready","transform"],[1,"sidebar-backdrop",3,"visible","swiping","opacity"],[1,"sidebar",3,"collapsed","mobile-open","transform","transition"],[1,"main"],[1,"topbar"],[1,"topbar-left"],["aria-label","Menu",1,"btn-hamburger"],["routerLink","/my-assets",1,"topbar-logo"],["src","assets/img/logo.svg","alt","Genix AI",1,"topbar-logo-img"],[1,"topbar-logo-text"],[1,"topbar-nav"],[1,"topbar-right"],[1,"content-area"],[3,"credits","reservedCredits","userId"],[3,"userId"],[3,"survey","userId"],[1,"pull-indicator"],[1,"material-symbols-rounded"],[1,"sidebar-backdrop",3,"click"],[1,"sidebar"],[1,"logo"],["routerLink","/my-assets",1,"logo-link"],["src","assets/img/logo.svg","alt","Genix AI",1,"logo-mark-img"],[1,"logo-text"],[1,"logo-ai","d-text-grad"],[1,"nav-section"],["routerLinkActive","active",1,"nav-item",3,"routerLink","title"],["routerLinkActive","active","routerLink","/my-assets",1,"nav-item",3,"title"],["routerLink","/pricing",1,"go-pro-card",3,"title"],[1,"sidebar-bottom"],[1,"icon-btn","theme-toggle",3,"click","title"],[1,"lang-wrap",3,"click"],[1,"btn-lang",3,"click","title"],["aria-hidden","true",1,"lang-spinner"],[1,"lang-code"],[1,"lang-dropdown"],[1,"lang-wrap","currency-wrap",3,"click"],[1,"lang-dropdown","currency-menu",3,"style"],[1,"icon-btn","collapse-btn",3,"click","title"],[1,"nav-icon"],[1,"nav-text"],[1,"nav-group-header"],[1,"nav-group-items"],[1,"badge",3,"badge--beta"],[1,"badge"],[1,"go-pro-icon","material-symbols-rounded"],[1,"go-pro-title"],[1,"go-pro-sub"],[1,"go-pro-cta"],[1,"lang-dropdown",3,"click"],[1,"lang-item",3,"selected","loading"],[1,"lang-item",3,"click"],[1,"lang-label"],[1,"material-symbols-rounded","check"],[1,"lang-dropdown","currency-menu",3,"click"],[1,"lang-item",3,"selected"],["aria-label","Menu",1,"btn-hamburger",3,"click"],[1,"nav-arrows"],["aria-label","Back","title","Back",1,"nav-arrow",3,"click","disabled"],["aria-label","Forward","title","Forward",1,"nav-arrow",3,"click","disabled"],[1,"page-title"],[1,"page-tag"],["routerLinkActive","active",1,"topbar-nav-link",3,"routerLink"],["routerLink","/notification","title","Notifications",1,"btn-bell"],[1,"bell-badge"],[1,"user-menu-wrap",3,"click"],[1,"user-pill",3,"click"],["title","Generation in progress...",1,"pill-job-indicator"],[1,"pill-left"],[1,"material-symbols-rounded","pill-bolt"],[1,"pill-credits"],[1,"pill-divider"],[1,"pill-plan"],[1,"pill-plan-icon"],[1,"pill-avatar"],[1,"user-dropdown"],["title","Generation in progress...",1,"pill-job-indicator",3,"click"],[1,"job-spinner"],[1,"job-count"],[1,"slot-digit",3,"slot-spinning"],[1,"slot-digit"],[1,"user-dropdown",3,"click"],[1,"dd-credits-summary"],[1,"dd-credits-row"],[1,"dd-credits-label"],[1,"dd-credits-value"],[1,"dd-credits-row","dd-credits-reserved"],[1,"dd-credits-actions"],[1,"dd-credits-details",3,"click"],[1,"dd-credits-details"],[1,"dd-divider"],[1,"dd-item",3,"routerLink"],[1,"dd-item","logout"],[1,"dd-item",3,"click","routerLink"],[1,"dd-item","logout",3,"click"],[1,"btn-ghost",3,"click"],[1,"btn-primary",3,"click"],[3,"closed"],[3,"closed","credits","reservedCredits","userId"],[3,"closed","userId"],[3,"closed","survey","userId"]],template:function(n,i){n&1&&(j(0,"app-banner-bar"),s(1,"div",1),v(2,Zl,3,5,"div",2),v(3,ec,1,6,"div",3),v(4,hc,40,32,"aside",4),s(5,"div",5)(6,"header",6)(7,"div",7),v(8,fc,3,0,"button",8),s(9,"a",9),j(10,"img",10),s(11,"span",11),d(12,"Genix "),s(13,"strong"),d(14,"AI"),l()()(),v(15,xc,11,6),v(16,yc,5,0,"nav",12),l(),s(17,"div",13),v(18,Nc,21,9)(19,Yc,7,7),l()(),s(20,"div",14),j(21,"router-outlet"),l(),j(22,"app-footer"),l()(),v(23,qc,1,0,"app-login-modal"),v(24,Kc,1,3,"app-credits-modal",15),v(25,Xc,1,1,"app-topup-modal",16),v(26,Jc,1,2,"app-survey-modal",17),j(27,"app-toast")(28,"app-cookie-consent")),n&2&&(r(),mt("--sidebar-w",i.sidebarCollapsed()?"56px":"250px"),L("light",!i.darkMode()),r(),M(i.pullIndicatorVisible()?2:-1),r(),M(i.hideChrome()?-1:3),r(),M(i.hideChrome()?-1:4),r(4),M(i.hideChrome()?-1:8),r(),L("topbar-logo--landing",i.hideChrome()),r(6),M(i.hideChrome()?-1:15),r(),M(i.hideChrome()?16:-1),r(2),M(i.auth.user()?18:19),r(5),M(i.auth.loginModalOpen()?23:-1),r(),M(i.creditsModalOpen()&&i.auth.user()?24:-1),r(),M(i.topupUi.open()&&i.auth.user()?25:-1),r(),M(i.surveyUi.open()&&i.auth.user()&&i.surveyUi.activeSurvey()?26:-1))},dependencies:[je,To,nt,So,sr,lr,zo,dr,pr,mr,Rr,Nr,ye],styles:['[_nghost-%COMP%]{display:flex;flex-direction:column;height:100vh;overflow:hidden;font-family:Inter Variable,Segoe UI,Arial,sans-serif;color:var(--d-navy);--topbar-h: 64px}svg[_ngcontent-%COMP%]{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.shell[_ngcontent-%COMP%]{display:flex;flex:1;min-height:0;background:#f4f6fb;overflow:hidden}.sidebar[_ngcontent-%COMP%]{width:250px;min-width:250px;background:#fff;border-right:1px solid #e8eaf0;display:flex;flex-direction:column;padding:20px 0 0;overflow-y:auto;box-shadow:2px 0 12px #0000000a;transition:width .25s ease,min-width .25s ease;overflow-x:hidden}.sidebar.collapsed[_ngcontent-%COMP%]{width:56px;min-width:56px}.sidebar.collapsed[_ngcontent-%COMP%]   .logo-text[_ngcontent-%COMP%], .sidebar.collapsed[_ngcontent-%COMP%]   .nav-text[_ngcontent-%COMP%], .sidebar.collapsed[_ngcontent-%COMP%]   .badge[_ngcontent-%COMP%]{display:none}.sidebar.collapsed[_ngcontent-%COMP%]   .logo[_ngcontent-%COMP%]{justify-content:center;padding:0 0 20px}.sidebar.collapsed[_ngcontent-%COMP%]   .nav-item[_ngcontent-%COMP%]{justify-content:center;padding:9px 0}.sidebar.collapsed[_ngcontent-%COMP%]   .nav-icon[_ngcontent-%COMP%]{width:auto}.sidebar-bottom[_ngcontent-%COMP%]{margin:0;display:flex;align-items:center;justify-content:space-between;gap:6px;padding:12px 16px;border-top:1px solid #e8eaf0;align-self:stretch}.sidebar-bottom[_ngcontent-%COMP%]   .btn-lang[_ngcontent-%COMP%]{padding:7px 8px;gap:4px}.sidebar-bottom[_ngcontent-%COMP%]   .btn-lang[_ngcontent-%COMP%]   .material-symbols-rounded[_ngcontent-%COMP%]{font-size:17px}.sidebar.collapsed[_ngcontent-%COMP%]   .sidebar-bottom[_ngcontent-%COMP%]{justify-content:center;padding:12px 0}.sidebar.collapsed[_ngcontent-%COMP%]   .sidebar-bottom[_ngcontent-%COMP%]   .lang-wrap[_ngcontent-%COMP%], .sidebar.collapsed[_ngcontent-%COMP%]   .sidebar-bottom[_ngcontent-%COMP%]   .theme-toggle[_ngcontent-%COMP%]{display:none}.icon-btn[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:var(--d-sidebar-accent);border:none;border-radius:18px;color:#9ca3af;cursor:pointer;transition:color .15s,background .15s;flex-shrink:0}.icon-btn[_ngcontent-%COMP%]   .material-symbols-rounded[_ngcontent-%COMP%]{font-size:19px}.icon-btn[_ngcontent-%COMP%]:hover{color:var(--d-fg);background:color-mix(in oklch,var(--d-accent) 15%,transparent)}.sidebar-bottom[_ngcontent-%COMP%]   .lang-dropdown[_ngcontent-%COMP%]{bottom:calc(100% + 6px);top:auto;left:0;right:auto;animation:fadeUp .15s ease}.sidebar.collapsed[_ngcontent-%COMP%]   .collapse-btn[_ngcontent-%COMP%]{margin:0 auto}.logo[_ngcontent-%COMP%]{display:flex;align-items:center;padding:0 20px 20px;font-size:1.1rem;color:var(--d-navy)}.logo-link[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:8px;padding:2px;color:inherit;text-decoration:none;cursor:pointer}.logo-mark-img[_ngcontent-%COMP%]{width:36px;height:36px;flex-shrink:0;object-fit:contain}.logo-text[_ngcontent-%COMP%]{font-size:1.15rem;font-weight:600;color:var(--d-navy);letter-spacing:-.02em}.logo-ai[_ngcontent-%COMP%]{font-weight:700}.nav-group-header[_ngcontent-%COMP%]{display:flex;align-items:center;width:100%;padding:6px 20px;margin-top:14px;color:#9ca3af;font-size:.68rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.nav-group-items[_ngcontent-%COMP%]{overflow:hidden}.sidebar.collapsed[_ngcontent-%COMP%]   .nav-group-header[_ngcontent-%COMP%]{display:none}.nav-section[_ngcontent-%COMP%]{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden}.nav-section[_ngcontent-%COMP%]   ul[_ngcontent-%COMP%]{list-style:none;padding:0;margin:0}.nav-item[_ngcontent-%COMP%]{display:flex;align-items:center;gap:10px;padding:9px 20px;font-size:.82rem;color:#6b7280;cursor:pointer;position:relative;transition:background .15s,color .15s;text-decoration:none}.nav-item[_ngcontent-%COMP%]:hover{background:#f4f6fb;color:var(--d-navy)}.nav-item.active[_ngcontent-%COMP%]{background:#e7f0ff;color:var(--d-primary);font-weight:600}.nav-item.active[_ngcontent-%COMP%]:before{display:none}.nav-icon[_ngcontent-%COMP%]{display:flex;align-items:center;width:18px}.nav-text[_ngcontent-%COMP%]{flex:1;white-space:nowrap}.badge[_ngcontent-%COMP%]{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;border-radius:999px;background:color-mix(in oklch,var(--d-fg) 14%,transparent);color:var(--d-fg)}.badge--beta[_ngcontent-%COMP%]{background:color-mix(in oklch,var(--d-accent) 15%,transparent);color:var(--d-accent)}.main[_ngcontent-%COMP%]{flex:1;min-height:0;display:flex;flex-direction:column;overflow-y:auto}.topbar[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding:14px 28px;background:#fff;border-bottom:1px solid #e8eaf0;box-shadow:0 1px 6px #0000000a;flex-shrink:0;position:relative;z-index:50}.page-title[_ngcontent-%COMP%]{font-size:1.05rem;font-weight:700;color:var(--d-navy);margin:0}.topbar-right[_ngcontent-%COMP%]{display:flex;align-items:center;gap:10px}.topbar-nav[_ngcontent-%COMP%]{display:flex;align-items:center;gap:2px;margin-left:10px;min-width:0;overflow-x:auto;scrollbar-width:none}.topbar-nav[_ngcontent-%COMP%]::-webkit-scrollbar{display:none}.topbar-nav-link[_ngcontent-%COMP%]{padding:7px 12px;border-radius:999px;font-size:.85rem;font-weight:500;color:#374151;text-decoration:none;white-space:nowrap;transition:background .18s,color .18s}.topbar-nav-link[_ngcontent-%COMP%]:hover{background:color-mix(in oklch,var(--d-primary) 10%,transparent);color:color-mix(in oklch,var(--d-primary) 85%,black)}.topbar-nav-link.active[_ngcontent-%COMP%]{background:color-mix(in oklch,var(--d-primary) 12%,transparent);color:color-mix(in oklch,var(--d-primary) 85%,black);font-weight:600}
3.shell.dark[_ngcontent-%COMP%]   .topbar-nav-link[_ngcontent-%COMP%]{color:#cbd5e1}.shell.dark[_ngcontent-%COMP%]   .topbar-nav-link[_ngcontent-%COMP%]:hover, .shell.dark[_ngcontent-%COMP%]   .topbar-nav-link.active[_ngcontent-%COMP%]{background:#ffffff17;color:#fff}.shell.dark.light[_ngcontent-%COMP%]   .topbar-nav-link[_ngcontent-%COMP%]{color:#374151}.shell.dark.light[_ngcontent-%COMP%]   .topbar-nav-link[_ngcontent-%COMP%]:hover, .shell.dark.light[_ngcontent-%COMP%]   .topbar-nav-link.active[_ngcontent-%COMP%]{background:color-mix(in oklch,var(--d-primary) 12%,transparent);color:color-mix(in oklch,var(--d-primary) 85%,black)}.shell.dark.light[_ngcontent-%COMP%]   .topbar-right[_ngcontent-%COMP%]   .btn-lang[_ngcontent-%COMP%]{border-color:#d1d5db;color:#374151}.shell.dark.light[_ngcontent-%COMP%]   .topbar-right[_ngcontent-%COMP%]   .btn-lang[_ngcontent-%COMP%]:hover, .shell.dark.light[_ngcontent-%COMP%]   .topbar-right[_ngcontent-%COMP%]   .btn-lang.open[_ngcontent-%COMP%]{border-color:var(--d-primary);color:var(--d-primary)}@media(max-width:991px){.topbar-nav[_ngcontent-%COMP%]{display:none}}.btn-ghost[_ngcontent-%COMP%]{padding:7px 18px;background:transparent;border:1.5px solid #d1d5db;border-radius:999px;font-size:.82rem;font-weight:500;color:var(--d-navy);cursor:pointer;transition:border-color .2s,color .2s}.btn-ghost[_ngcontent-%COMP%]:hover{border-color:var(--d-primary);color:var(--d-primary)}.btn-primary[_ngcontent-%COMP%]{padding:7px 18px;background:linear-gradient(135deg,var(--d-primary),var(--d-accent));border:1.5px solid transparent;border-radius:999px;font-size:.82rem;font-weight:600;color:#fff;cursor:pointer;transition:opacity .2s}.btn-primary[_ngcontent-%COMP%]:hover{opacity:.88}.lang-wrap[_ngcontent-%COMP%]{position:relative}.btn-lang[_ngcontent-%COMP%]{display:flex;align-items:center;gap:5px;padding:7px 10px;background:transparent;border:1.5px solid #d1d5db;border-radius:8px;font-size:.78rem;font-weight:500;color:#374151;cursor:pointer;transition:border-color .2s,color .2s;font-family:inherit}.btn-lang[_ngcontent-%COMP%]   svg[_ngcontent-%COMP%]{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.btn-lang[_ngcontent-%COMP%]:hover, .btn-lang.open[_ngcontent-%COMP%]{border-color:var(--d-primary);color:var(--d-primary)}.lang-code[_ngcontent-%COMP%]{white-space:nowrap;font-size:.78rem}.lang-dropdown[_ngcontent-%COMP%]{position:absolute;top:calc(100% + 6px);right:0;background:#fff;border:1px solid #e8eaf0;border-radius:10px;box-shadow:0 8px 24px #0000001a;z-index:200;min-width:140px;overflow:hidden;animation:fadeDown .15s ease}.lang-item[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;padding:10px 14px;font-size:.82rem;color:#374151;cursor:pointer;transition:background .15s}.lang-item[_ngcontent-%COMP%]:hover{background:#f4f6fb}.lang-label[_ngcontent-%COMP%]{flex:1}.currency-menu[_ngcontent-%COMP%]{width:max-content;max-width:calc(100vw - 24px)}.currency-menu[_ngcontent-%COMP%]   .lang-label[_ngcontent-%COMP%]{white-space:nowrap}.lang-spinner[_ngcontent-%COMP%]{display:inline-block;width:20px;height:20px;border:2px solid color-mix(in oklch,currentColor 28%,transparent);border-top-color:currentColor;border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0}.sidebar-bottom[_ngcontent-%COMP%]   .btn-lang[_ngcontent-%COMP%]   .lang-spinner[_ngcontent-%COMP%]{width:17px;height:17px}.lang-item[_ngcontent-%COMP%]   .lang-spinner[_ngcontent-%COMP%]{width:14px;height:14px}.lang-item.loading[_ngcontent-%COMP%]{cursor:default;opacity:.85}.check[_ngcontent-%COMP%]{width:14px!important;height:14px!important;stroke:var(--d-primary);fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.btn-bell[_ngcontent-%COMP%]{position:relative;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;border:1px solid #d1d5db;color:#374151;background:transparent;text-decoration:none;flex-shrink:0;transition:border-color .2s,color .2s,background .2s}.btn-bell[_ngcontent-%COMP%]:hover{border-color:var(--d-primary);color:var(--d-primary)}.btn-bell[_ngcontent-%COMP%]   .material-symbols-rounded[_ngcontent-%COMP%]{font-size:20px}.bell-badge[_ngcontent-%COMP%]{position:absolute;top:-5px;right:-5px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:#ef4444;color:#fff;font-size:.62rem;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1;box-sizing:border-box}.shell.dark[_ngcontent-%COMP%]   .btn-bell[_ngcontent-%COMP%]{border-color:var(--d-border);background:color-mix(in oklch,var(--d-card) 50%,transparent);color:var(--d-muted-fg)}.shell.dark[_ngcontent-%COMP%]   .btn-bell[_ngcontent-%COMP%]:hover{border-color:transparent;color:var(--d-fg)}.user-menu-wrap[_ngcontent-%COMP%]{position:relative}.user-pill[_ngcontent-%COMP%]{display:flex;align-items:center;gap:0;padding:0;border:1px solid #d1d5db;background:#f4f6fb;border-radius:999px;cursor:pointer;font-family:inherit;
3transition:box-shadow .2s,border-color .2s;overflow:hidden}.user-pill[_ngcontent-%COMP%]:hover{box-shadow:0 2px 12px color-mix(in oklch,var(--d-primary) 18%,transparent)}.pill-bolt[_ngcontent-%COMP%]{color:var(--d-accent);font-size:16px}.pill-job-indicator[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px;height:28px;padding:0 4px;margin-left:2px}.job-count[_ngcontent-%COMP%]{font-size:.72rem;font-weight:700;color:var(--d-primary);line-height:1}.job-spinner[_ngcontent-%COMP%]{width:14px;height:14px;border:2px solid color-mix(in oklch,var(--d-primary) 25%,transparent);border-top-color:var(--d-primary);border-radius:50%;animation:spin .8s linear infinite;display:block}.pill-left[_ngcontent-%COMP%]{display:flex;align-items:center;gap:6px;padding:7px 12px;font-size:.8rem;color:#374151}.pill-credits[_ngcontent-%COMP%]{font-weight:700;color:var(--d-navy);display:inline-flex;align-items:center;overflow:hidden}.slot-digit[_ngcontent-%COMP%]{display:inline-block;line-height:1;transition:none}.slot-spinning[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_slot-spin .6s cubic-bezier(.25,.46,.45,.94) forwards}@keyframes _ngcontent-%COMP%_slot-spin{0%{transform:translateY(0);opacity:1;filter:blur(0)}20%{transform:translateY(-60%);opacity:.4;filter:blur(1px)}50%{transform:translateY(60%);opacity:.2;filter:blur(2px)}80%{transform:translateY(-20%);opacity:.7;filter:blur(1px)}to{transform:translateY(0);opacity:1;filter:blur(0)}}.pill-divider[_ngcontent-%COMP%]{color:#d1d5db;font-weight:300}.pill-plan[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:4px;font-weight:500;color:#6b7280}.pill-plan-icon[_ngcontent-%COMP%]{font-size:.9em;line-height:1}.pill-plan--sub[_ngcontent-%COMP%]{font-weight:700;color:var(--d-primary-fg);background:var(--d-grad);padding:3px 10px;border-radius:999px;font-size:.72rem}.pill-avatar[_ngcontent-%COMP%]{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--d-primary),var(--d-accent));color:#fff;font-size:.82rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin:2px 2px 2px 0}.user-dropdown[_ngcontent-%COMP%]{position:absolute;top:calc(100% + 8px);right:0;background:#fff;border:1px solid #e8eaf0;border-radius:14px;box-shadow:0 10px 32px #0000001c;z-index:200;min-width:180px;overflow:hidden;animation:fadeDown .15s ease;padding:6px 0}.dd-item[_ngcontent-%COMP%]{display:block;width:100%;padding:11px 20px;background:none;border:none;text-align:left;font-size:.88rem;font-weight:500;color:var(--d-navy);cursor:pointer;font-family:inherit;transition:background .15s,color .15s;text-decoration:none;box-sizing:border-box}.dd-item[_ngcontent-%COMP%]:hover{background:#f4f6fb;color:var(--d-primary)}.dd-item.logout[_ngcontent-%COMP%]{color:#ef4444;border-top:1px solid #e8eaf0;margin-top:4px}.dd-item.logout[_ngcontent-%COMP%]:hover{background:#fff5f5;color:#ef4444}.dd-credits-summary[_ngcontent-%COMP%]{padding:12px 20px 8px}.dd-credits-row[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;font-size:.7rem;color:#6b7280;margin-bottom:2px}.dd-credits-row[_ngcontent-%COMP%]   .dd-credits-value[_ngcontent-%COMP%]{font-weight:700;color:var(--d-navy)}.dd-credits-reserved[_ngcontent-%COMP%], .dd-credits-reserved[_ngcontent-%COMP%]   .dd-credits-value[_ngcontent-%COMP%]{color:#f59e0b}.dd-credits-details[_ngcontent-%COMP%]{display:inline-block;margin-top:6px;font-size:.75rem;color:var(--d-primary);cursor:pointer;text-decoration:none}.dd-credits-details[_ngcontent-%COMP%]:hover{text-decoration:underline}.dd-credits-actions[_ngcontent-%COMP%]{display:flex;gap:14px;align-items:center}.dd-divider[_ngcontent-%COMP%]{height:1px;background:#e8eaf0;margin:4px 0}.content-area[_ngcontent-%COMP%]{flex:0 0 auto;height:calc(100vh - var(--topbar-h) - var(--banner-h, 0px));overflow:hidden;display:flex}.shell.dark[_ngcontent-%COMP%]{background:#070b16;color:#e2e2f0}.shell.dark[_ngcontent-%COMP%]   .sidebar[_ngcontent-%COMP%]{background:#0d1424;border-right-color:#1e2a44;box-shadow:2px 0 12px #0000004d}.shell.dark[_ngcontent-%COMP%]   .logo[_ngcontent-%COMP%], .shell.dark[_ngcontent-%COMP%]   .logo-text[_ngcontent-%COMP%]{color:#e2e2f0}.shell.dark[_ngcontent-%COMP%]   .nav-group-header[_ngcontent-%COMP%]{color:#4b5563}.shell.dark[_ngcontent-%COMP%]   .nav-group-header[_ngcontent-%COMP%]:hover{color:#6b7280}.shell.dark[_ngcontent-%COMP%]   .nav-item[_ngcontent-%COMP%]{color:#9ca3af}.shell.dark[_ngcontent-%COMP%]   .nav-item[_ngcontent-%COMP%]:hover{background:var(--d-navy);color:#e2e2f0}.shell.dark[_ngcontent-%COMP%]   .nav-item.active[_ngcontent-%COMP%]{background:var(--d-navy-deep);color:var(--d-primary-bright)}.shell.dark[_ngcontent-%COMP%]   .sidebar-bottom[_ngcontent-%COMP%]{border-top-color:var(--d-border-soft)}.shell.dark[_ngcontent-%COMP%]   .icon-btn[_ngcontent-%COMP%]{background:var(--d-sidebar-accent);color:var(--d-muted-fg)}.shell.dark[_ngcontent-%COMP%]   .icon-btn[_ngcontent-%COMP%]:hover{color:var(--d-fg);background:color-mix(in oklch,var(--d-accent) 15%,transparent)}
3.shell.dark[_ngcontent-%COMP%]   .topbar[_ngcontent-%COMP%]{background:#0d1424;border-bottom-color:#1e2a44;box-shadow:0 1px 6px #0000004d}.shell.dark[_ngcontent-%COMP%]   .page-title[_ngcontent-%COMP%]{color:#e2e2f0}.shell.dark[_ngcontent-%COMP%]   .btn-ghost[_ngcontent-%COMP%]{border-color:#1e2a44;color:#f9fafb}.shell.dark.light[_ngcontent-%COMP%]   .btn-ghost[_ngcontent-%COMP%]{border-color:#d1d5db;color:var(--d-navy)}.shell.dark[_ngcontent-%COMP%]   .btn-ghost[_ngcontent-%COMP%]:hover{border-color:var(--d-primary-bright);color:var(--d-primary-bright)}.shell.dark[_ngcontent-%COMP%]   .btn-lang[_ngcontent-%COMP%]{border-color:#1e2a44;color:#9ca3af}.shell.dark[_ngcontent-%COMP%]   .btn-lang[_ngcontent-%COMP%]:hover, .shell.dark[_ngcontent-%COMP%]   .btn-lang.open[_ngcontent-%COMP%]{border-color:var(--d-primary-bright);color:var(--d-primary-bright)}.shell.dark[_ngcontent-%COMP%]   .lang-dropdown[_ngcontent-%COMP%]{background:var(--d-navy);border-color:#1e2a44;box-shadow:0 8px 24px #0006}.shell.dark[_ngcontent-%COMP%]   .lang-item[_ngcontent-%COMP%]{color:#c4c4d4}.shell.dark[_ngcontent-%COMP%]   .lang-item[_ngcontent-%COMP%]:hover{background:#16213a}.shell.dark[_ngcontent-%COMP%]   .lang-item.selected[_ngcontent-%COMP%]{background:var(--d-navy-deep);color:var(--d-primary-bright)}.shell.dark[_ngcontent-%COMP%]   .user-pill[_ngcontent-%COMP%]:hover{box-shadow:0 2px 12px color-mix(in oklch,var(--d-primary) 28%,transparent)}.shell.dark[_ngcontent-%COMP%]   .pill-left[_ngcontent-%COMP%]{color:#9ca3af}.shell.dark[_ngcontent-%COMP%]   .pill-credits[_ngcontent-%COMP%]{color:#e2e2f0}.shell.dark[_ngcontent-%COMP%]   .pill-plan[_ngcontent-%COMP%]{color:#6b7280}.shell.dark[_ngcontent-%COMP%]   .pill-divider[_ngcontent-%COMP%]{color:#1e2a44}.shell.dark[_ngcontent-%COMP%]   .user-dropdown[_ngcontent-%COMP%]{background:var(--d-navy);border-color:#1e2a44;box-shadow:0 10px 32px #0006}.shell.dark[_ngcontent-%COMP%]   .dd-item[_ngcontent-%COMP%]{color:#c4c4d4}.shell.dark[_ngcontent-%COMP%]   .dd-item[_ngcontent-%COMP%]:hover{background:#16213a;color:var(--d-primary-bright)}.shell.dark[_ngcontent-%COMP%]   .dd-item.logout[_ngcontent-%COMP%]{border-top-color:#1e2a44}.shell.dark[_ngcontent-%COMP%]   .dd-item.logout[_ngcontent-%COMP%]:hover{background:#2a1515}.shell.dark[_ngcontent-%COMP%]   .dd-credits-row[_ngcontent-%COMP%]{color:#9ca3af}.shell.dark[_ngcontent-%COMP%]   .dd-credits-row[_ngcontent-%COMP%]   .dd-credits-value[_ngcontent-%COMP%]{color:#e2e8f0}.shell.dark[_ngcontent-%COMP%]   .dd-divider[_ngcontent-%COMP%]{background:#1e2a44}.btn-hamburger[_ngcontent-%COMP%]{display:none;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:transparent;border:1.5px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;transition:border-color .2s,color .2s;flex-shrink:0}.btn-hamburger[_ngcontent-%COMP%]:hover{border-color:var(--d-primary);color:var(--d-primary)}.pull-indicator[_ngcontent-%COMP%]{position:fixed;top:0;left:calc(50% - 20px);width:40px;height:40px;border-radius:50%;background:#fff;box-shadow:0 2px 14px #0000002e;display:flex;align-items:center;justify-content:center;z-index:2000;color:var(--d-primary);transition:background .2s,color .2s;pointer-events:none}.pull-indicator[_ngcontent-%COMP%]   .material-symbols-rounded[_ngcontent-%COMP%]{font-size:22px;transition:color .2s}.pull-indicator.ready[_ngcontent-%COMP%]{background:var(--d-primary);color:#fff}.pull-indicator.ready[_ngcontent-%COMP%]   .material-symbols-rounded[_ngcontent-%COMP%]{animation:spin .8s linear infinite}.sidebar-backdrop[_ngcontent-%COMP%]{display:none;position:fixed;inset:0;z-index:499;background:#00000073;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:fadeIn .2s ease}.sidebar-backdrop.visible[_ngcontent-%COMP%]{display:block}.sidebar-backdrop.swiping[_ngcontent-%COMP%]{display:block;animation:none}.shell.dark[_ngcontent-%COMP%]   .btn-hamburger[_ngcontent-%COMP%]{border-color:#1e2a44;color:#9ca3af}.shell.dark[_ngcontent-%COMP%]   .btn-hamburger[_ngcontent-%COMP%]:hover{border-color:var(--d-primary-bright);color:var(--d-primary-bright)}.topbar-left[_ngcontent-%COMP%]{display:flex;align-items:center;gap:10px}.nav-arrows[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px;flex-shrink:0}.nav-arrow[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:1.5px solid #d1d5db;border-radius:50%;color:#374151;cursor:pointer;transition:border-color .2s,color .2s}.nav-arrow[_ngcontent-%COMP%]:hover{border-color:var(--d-primary);color:var(--d-primary)}.nav-arrow[_ngcontent-%COMP%]:disabled{opacity:.35;cursor:default;pointer-events:none}.nav-arrow[_ngcontent-%COMP%]   .material-symbols-rounded[_ngcontent-%COMP%]{font-size:18px}.shell.dark[_ngcontent-%COMP%]   .nav-arrow[_ngcontent-%COMP%]{background:color-mix(in oklch,var(--d-card) 50%,transparent);border-color:var(--d-border);color:var(--d-muted-fg)}.shell.dark[_ngcontent-%COMP%]   .nav-arrow[_ngcontent-%COMP%]:hover{border-color:transparent;color:var(--d-fg)}.page-tag[_ngcontent-%COMP%]{padding:3px 12px;border:1px solid var(--d-border);border-radius:99px;font-size:.72rem;font-weight:500;color:#6b7280;white-space:nowrap}.shell.dark[_ngcontent-%COMP%]   .page-tag[_ngcontent-%COMP%]{border-color:var(--d-border);background:color-mix(in oklch,var(--d-card) 50%,transparent);color:var(--d-muted-fg)}@media(max-width:768px){.nav-arrows[_ngcontent-%COMP%], .page-tag[_ngcontent-%COMP%]{display:none}}.topbar-logo[_ngcontent-%COMP%]{display:none;align-items:center;gap:6px;cursor:pointer;text-decoration:none}.topbar-logo-img[_ngcontent-%COMP%]{height:28px;width:auto;display:block;flex-shrink:0}.topbar-logo-text[_ngcontent-%COMP%]{font-size:1rem;font-weight:700;color:var(--d-navy);letter-spacing:-.02em;white-space:nowrap}
3.shell.dark[_ngcontent-%COMP%]   .topbar-logo-text[_ngcontent-%COMP%]{color:#e2e2f0}.topbar-logo--landing[_ngcontent-%COMP%]{display:flex}.shell.dark[_ngcontent-%COMP%]{background:radial-gradient(70rem 52rem at 12% -8%,color-mix(in oklch,var(--d-primary) 16%,transparent),transparent 58%),radial-gradient(62rem 52rem at 100% 52%,color-mix(in oklch,var(--d-accent) 11%,transparent),transparent 60%),radial-gradient(50rem 42rem at 45% 116%,color-mix(in oklch,oklch(.5 .2 320) 9%,transparent),transparent 60%),linear-gradient(160deg,#040b1a,#010309 72%)}.shell.dark.light[_ngcontent-%COMP%]{background:radial-gradient(70rem 52rem at 12% -8%,color-mix(in oklch,var(--d-primary) 13%,transparent),transparent 58%),radial-gradient(62rem 52rem at 100% 52%,color-mix(in oklch,var(--d-accent) 11%,transparent),transparent 60%),radial-gradient(50rem 42rem at 45% 116%,color-mix(in oklch,oklch(.7 .16 320) 8%,transparent),transparent 60%),linear-gradient(160deg,#f7fafe,#e8edf5 72%);color:var(--d-fg)}.shell.dark[_ngcontent-%COMP%]   .sidebar[_ngcontent-%COMP%]{background:transparent;border-right-color:var(--d-border-soft);box-shadow:none}.shell.dark[_ngcontent-%COMP%]   .topbar[_ngcontent-%COMP%]{background:transparent;border-bottom-color:var(--d-border);box-shadow:none}.shell.dark[_ngcontent-%COMP%]   .logo-text[_ngcontent-%COMP%]{color:var(--d-fg)}.shell.dark[_ngcontent-%COMP%]   .nav-group-header[_ngcontent-%COMP%]{color:var(--d-muted-fg)}.nav-item[_ngcontent-%COMP%]{margin:2px 12px;border-radius:22px;padding:9px 12px;transition:background .18s,color .18s,transform .12s cubic-bezier(.22,1,.36,1),box-shadow .18s}.nav-item[_ngcontent-%COMP%]:active{transform:scale(.98)}.shell.dark[_ngcontent-%COMP%]   .nav-item[_ngcontent-%COMP%]{color:var(--d-muted-fg)}.shell.dark[_ngcontent-%COMP%]   .nav-item[_ngcontent-%COMP%]:hover{background:var(--d-sidebar-accent);color:var(--d-fg)}.shell.dark[_ngcontent-%COMP%]   .nav-item.active[_ngcontent-%COMP%]{background:color-mix(in oklch,var(--d-primary) 15%,transparent);color:var(--d-fg);font-weight:600;box-shadow:inset 0 0 0 1px color-mix(in oklch,var(--d-primary) 45%,transparent)}.shell.dark[_ngcontent-%COMP%]   .nav-item.active[_ngcontent-%COMP%]   .material-symbols-rounded[_ngcontent-%COMP%]{color:var(--d-primary)}.go-pro-card[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:2px;margin:8px 12px 14px;padding:16px;border-radius:24px;text-decoration:none;background:color-mix(in oklch,var(--d-primary) 10%,transparent);border:1px solid color-mix(in oklch,var(--d-primary) 25%,transparent);position:relative;overflow:hidden;transition:transform .18s cubic-bezier(.22,1,.36,1),border-color .18s}.go-pro-card[_ngcontent-%COMP%]:after{content:"";position:absolute;top:-24px;right:-24px;width:80px;height:80px;border-radius:50%;background:color-mix(in oklch,var(--d-primary) 30%,transparent);filter:blur(28px);pointer-events:none}.go-pro-card[_ngcontent-%COMP%]:hover{border-color:color-mix(in oklch,var(--d-primary) 45%,transparent)}.go-pro-title[_ngcontent-%COMP%]{position:relative;font-size:.9rem;font-weight:600;color:var(--d-fg)}.go-pro-sub[_ngcontent-%COMP%]{position:relative;font-size:.72rem;line-height:1.35;color:var(--d-muted-fg)}.go-pro-cta[_ngcontent-%COMP%]{position:relative;display:block;text-align:center;margin-top:12px;padding:9px;border-radius:22px;background:color-mix(in oklch,var(--d-fg) 12%,transparent);color:var(--d-fg);font-size:.78rem;font-weight:600;transition:transform .15s,background .15s}.go-pro-card[_ngcontent-%COMP%]:hover   .go-pro-cta[_ngcontent-%COMP%]{background:color-mix(in oklch,var(--d-fg) 16%,transparent)}.go-pro-card[_ngcontent-%COMP%]:hover   .go-pro-cta[_ngcontent-%COMP%]{transform:scale(1.01)}.go-pro-icon[_ngcontent-%COMP%]{display:none}.sidebar.collapsed[_ngcontent-%COMP%]   .go-pro-card[_ngcontent-%COMP%]{flex-direction:row;align-items:center;justify-content:center;width:40px;height:40px;margin:8px auto 12px;padding:0;border-radius:14px}.sidebar.collapsed[_ngcontent-%COMP%]   .go-pro-card[_ngcontent-%COMP%]:after{display:none}.sidebar.collapsed[_ngcontent-%COMP%]   .go-pro-title[_ngcontent-%COMP%], .sidebar.collapsed[_ngcontent-%COMP%]   .go-pro-sub[_ngcontent-%COMP%], .sidebar.collapsed[_ngcontent-%COMP%]   .go-pro-cta[_ngcontent-%COMP%]{display:none}.sidebar.collapsed[_ngcontent-%COMP%]   .go-pro-icon[_ngcontent-%COMP%]{display:block;position:relative;font-size:22px;color:var(--d-primary)}.shell.dark[_ngcontent-%COMP%]   .user-pill[_ngcontent-%COMP%]{background:color-mix(in oklch,var(--d-card) 60%,transparent);border:1.5px solid var(--d-border)}.shell.dark[_ngcontent-%COMP%]   .user-pill[_ngcontent-%COMP%]:hover{border-color:color-mix(in oklch,var(--d-primary) 40%,transparent)}.shell.dark[_ngcontent-%COMP%]   .btn-bell[_ngcontent-%COMP%], .shell.dark[_ngcontent-%COMP%]   .btn-hamburger[_ngcontent-%COMP%]{background:color-mix(in oklch,var(--d-card) 50%,transparent);border-color:var(--d-border);color:var(--d-muted-fg)}.shell.dark[_ngcontent-%COMP%]   .btn-bell[_ngcontent-%COMP%]:hover, .shell.dark[_ngcontent-%COMP%]   .btn-hamburger[_ngcontent-%COMP%]:hover{border-color:transparent;color:var(--d-fg)}.shell.dark[_ngcontent-%COMP%]   .btn-lang[_ngcontent-%COMP%]{background:var(--d-sidebar-accent);border:none;color:var(--d-fg);border-radius:18px;padding:8px 12px}.shell.dark[_ngcontent-%COMP%]   .btn-lang[_ngcontent-%COMP%]:hover, .shell.dark[_ngcontent-%COMP%]   .btn-lang.open[_ngcontent-%COMP%]{color:var(--d-fg);background:color-mix(in oklch,var(--d-accent) 15%,transparent)}
3@media(prefers-reduced-motion:reduce){.nav-item[_ngcontent-%COMP%], .go-pro-card[_ngcontent-%COMP%], .go-pro-cta[_ngcontent-%COMP%]{transition:none}.nav-item[_ngcontent-%COMP%]:active, .go-pro-card[_ngcontent-%COMP%]:hover, .go-pro-card[_ngcontent-%COMP%]:hover   .go-pro-cta[_ngcontent-%COMP%]{transform:none}}@media(max-width:768px){.shell[_ngcontent-%COMP%]{flex-direction:column;height:100dvh;height:100vh;min-height:0;overflow-y:auto;overflow-x:hidden}.sidebar[_ngcontent-%COMP%]{position:fixed!important;top:0;left:0;bottom:0;z-index:500;width:250px!important;min-width:250px!important;transform:translate(-100%);transition:transform .25s ease,box-shadow .25s ease;box-shadow:none;overflow-y:auto}.shell.dark[_ngcontent-%COMP%]   .sidebar[_ngcontent-%COMP%]{background:var(--d-bg);border-right-color:var(--d-border)}.sidebar.mobile-open[_ngcontent-%COMP%]{transform:translate(0);box-shadow:4px 0 32px #00000038}.sidebar.collapsed[_ngcontent-%COMP%]{width:250px!important;min-width:250px!important}.sidebar.collapsed[_ngcontent-%COMP%]   .logo-text[_ngcontent-%COMP%], .sidebar.collapsed[_ngcontent-%COMP%]   .nav-text[_ngcontent-%COMP%], .sidebar.collapsed[_ngcontent-%COMP%]   .badge[_ngcontent-%COMP%]{display:revert}.sidebar.collapsed[_ngcontent-%COMP%]   .logo[_ngcontent-%COMP%]{justify-content:flex-start;padding:0 20px 20px}.sidebar.collapsed[_ngcontent-%COMP%]   .nav-item[_ngcontent-%COMP%]{justify-content:flex-start;padding:9px 20px}.sidebar.collapsed[_ngcontent-%COMP%]   .nav-icon[_ngcontent-%COMP%]{width:18px}.sidebar.collapsed[_ngcontent-%COMP%]   .sidebar-bottom[_ngcontent-%COMP%]{justify-content:space-between;padding:12px 16px}.sidebar.collapsed[_ngcontent-%COMP%]   .sidebar-bottom[_ngcontent-%COMP%]   .lang-wrap[_ngcontent-%COMP%], .sidebar.collapsed[_ngcontent-%COMP%]   .sidebar-bottom[_ngcontent-%COMP%]   .theme-toggle[_ngcontent-%COMP%]{display:flex}.sidebar.collapsed[_ngcontent-%COMP%]   .go-pro-card[_ngcontent-%COMP%]{flex-direction:column;width:auto;height:auto;margin:8px 12px 14px;padding:16px;border-radius:24px}.sidebar.collapsed[_ngcontent-%COMP%]   .go-pro-title[_ngcontent-%COMP%], .sidebar.collapsed[_ngcontent-%COMP%]   .go-pro-sub[_ngcontent-%COMP%], .sidebar.collapsed[_ngcontent-%COMP%]   .go-pro-cta[_ngcontent-%COMP%]{display:revert}.sidebar.collapsed[_ngcontent-%COMP%]   .go-pro-icon[_ngcontent-%COMP%], .collapse-btn[_ngcontent-%COMP%]{display:none}.btn-hamburger[_ngcontent-%COMP%]{display:flex}.main[_ngcontent-%COMP%]{width:100%;min-width:0;overflow:visible;flex:none;height:auto}.topbar[_ngcontent-%COMP%]{padding:10px 14px;position:sticky;top:0;z-index:100;transform:translateZ(0);will-change:transform}.shell.dark[_ngcontent-%COMP%]   .topbar[_ngcontent-%COMP%]{background:color-mix(in oklch,var(--d-bg) 78%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom-color:var(--d-border);box-shadow:none}.shell.dark.light[_ngcontent-%COMP%]   .topbar[_ngcontent-%COMP%]{background:color-mix(in oklch,var(--d-bg) 82%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.page-title[_ngcontent-%COMP%]{font-size:.9rem}.topbar-logo[_ngcontent-%COMP%]{display:flex}.page-title[_ngcontent-%COMP%], .pill-plan[_ngcontent-%COMP%], .pill-divider[_ngcontent-%COMP%]{display:none}.pill-left[_ngcontent-%COMP%]{padding:6px 8px}.btn-primary[_ngcontent-%COMP%]{display:none}.btn-ghost[_ngcontent-%COMP%]{display:flex;align-items:center}.content-area[_ngcontent-%COMP%]{height:auto;min-height:auto;flex-shrink:1;overflow:visible}}@media(max-width:480px){.topbar[_ngcontent-%COMP%]{padding:8px 12px}.topbar-logo-img[_ngcontent-%COMP%]{height:24px}.topbar-logo-text[_ngcontent-%COMP%]{font-size:.9rem}.btn-ghost[_ngcontent-%COMP%]{padding:6px 12px;font-size:.78rem}}.shell.dark.light[_ngcontent-%COMP%]   .pill-left[_ngcontent-%COMP%]{color:var(--d-muted-fg)}.shell.dark.light[_ngcontent-%COMP%]   .pill-credits[_ngcontent-%COMP%]{color:var(--d-fg)}.shell.dark.light[_ngcontent-%COMP%]   .pill-plan[_ngcontent-%COMP%]{color:color-mix(in oklch,var(--d-muted-fg) 78%,transparent)}.shell.dark.light[_ngcontent-%COMP%]   .pill-divider[_ngcontent-%COMP%]{color:var(--d-border)}.shell.dark[_ngcontent-%COMP%]   .pill-plan.pill-plan--sub[_ngcontent-%COMP%], .shell.dark.light[_ngcontent-%COMP%]   .pill-plan.pill-plan--sub[_ngcontent-%COMP%]{color:var(--d-primary-fg);background:var(--d-grad)}
3.shell.dark.light[_ngcontent-%COMP%]   .topbar-logo-text[_ngcontent-%COMP%], .shell.dark.light[_ngcontent-%COMP%]   .page-title[_ngcontent-%COMP%]{color:var(--d-fg)}.shell.dark.light[_ngcontent-%COMP%]   .user-dropdown[_ngcontent-%COMP%]{background:var(--d-popover);border-color:var(--d-border);box-shadow:0 10px 32px #0f172a24}.shell.dark.light[_ngcontent-%COMP%]   .dd-item[_ngcontent-%COMP%]{color:var(--d-fg)}.shell.dark.light[_ngcontent-%COMP%]   .dd-item[_ngcontent-%COMP%]:hover{background:color-mix(in oklch,var(--d-primary) 10%,transparent);color:var(--d-primary)}.shell.dark.light[_ngcontent-%COMP%]   .dd-item.logout[_ngcontent-%COMP%]{border-top-color:var(--d-border)}.shell.dark.light[_ngcontent-%COMP%]   .dd-item.logout[_ngcontent-%COMP%]:hover{background:color-mix(in oklch,oklch(.6 .2 25) 12%,transparent)}.shell.dark.light[_ngcontent-%COMP%]   .dd-credits-row[_ngcontent-%COMP%]{color:var(--d-muted-fg)}.shell.dark.light[_ngcontent-%COMP%]   .dd-credits-row[_ngcontent-%COMP%]   .dd-credits-value[_ngcontent-%COMP%]{color:var(--d-fg)}.shell.dark.light[_ngcontent-%COMP%]   .dd-divider[_ngcontent-%COMP%]{background:var(--d-border)}.shell.dark.light[_ngcontent-%COMP%]   .lang-dropdown[_ngcontent-%COMP%]{background:var(--d-popover);border-color:var(--d-border);box-shadow:0 8px 24px #0f172a24}.shell.dark.light[_ngcontent-%COMP%]   .lang-item[_ngcontent-%COMP%]{color:var(--d-fg)}.shell.dark.light[_ngcontent-%COMP%]   .lang-item[_ngcontent-%COMP%]:hover{background:color-mix(in oklch,var(--d-fg) 6%,transparent)}.shell.dark.light[_ngcontent-%COMP%]   .lang-item.selected[_ngcontent-%COMP%]{background:color-mix(in oklch,var(--d-primary) 12%,transparent);color:var(--d-primary)}'],changeDetection:0})}}return t})();var $e=()=>{let t=O(Ae),o=O(ve);if(!t.isLoggedIn())return o.navigate(["/explore"]),t.loginModalOpen.set(!0),!1;let e=t.user();return e&&!e.emailVerified&&e.provider==="LOCAL"?(o.navigate(["/verify-email"]),!1):!0};var Fr=[{path:"",redirectTo:"/explore",pathMatch:"full"},{path:"oauth2/callback",loadComponent:()=>import("./chunk-KTSQDVVR.js").then(t=>t.OAuth2CallbackComponent)},{path:"verify-email",loadComponent:()=>import("./chunk-6PDSHK4U.js").then(t=>t.VerifyEmailComponent),data:{icon:"mark_email_read",title:"verify.title"}},{path:"explore",loadComponent:()=>import("./chunk-ARMAWWGA.js").then(t=>t.ExploreComponent),data:{icon:"explore",title:"nav.explore",description:"seo.explore.description"}},{path:"image-to-video",loadComponent:()=>import("./chunk-QXEZBYXX.js").then(t=>t.ImageToVideoComponent),data:{icon:"animation",title:"nav.image_to_video",description:"seo.image_to_video.description"}},{path:"text-to-video",loadComponent:()=>import("./chunk-DTCMXQ7T.js").then(t=>t.TextToVideoComponent),data:{icon:"movie",title:"nav.text_to_video",description:"seo.text_to_video.description"}},{path:"ai-image",loadComponent:()=>import("./chunk-6LYTBWJQ.js").then(t=>t.AiImageComponent),data:{icon:"image",title:"page.ai_image",description:"seo.ai_image.description"}},{path:"ai-image-editor",loadComponent:()=>import("./chunk-WDP7GRXU.js").then(t=>t.AiImageEditorComponent),data:{icon:"auto_fix_high",title:"nav.ai_image_editor",description:"seo.ai_image_editor.description"}},{path:"video-editor",redirectTo:"/studio",pathMatch:"full"},{path:"studio",loadComponent:()=>import("./chunk-IWKPOYY7.js").then(t=>t.StudioComponent),canActivate:[$e],data:{icon:"movie_edit",title:"nav.studio",tag:"common.studio",description:"seo.studio.description"}},{path:"ai-music",loadComponent:()=>import("./chunk-CYLOTKDJ.js").then(t=>t.AiMusicComponent),data:{icon:"music_note",title:"nav.ai_music",description:"seo.ai_music.description"}},{path:"viral-clone",loadComponent:()=>import("./chunk-QJZUHBAF.js").then(t=>t.ViralCloneComponent),data:{icon:"auto_awesome_motion",title:"nav.viral_clone",description:"seo.viral_clone.description"}},{path:"ai-lipsync",loadComponent:()=>import("./chunk-NIXCKXBO.js").then(t=>t.AiLipsyncComponent),data:{icon:"record_voice_over",title:"nav.ai_lipsync",description:"seo.ai_lipsync.description"}},{path:"video-to-video",loadComponent:()=>import("./chunk-USS7SN5H.js").then(t=>t.VideoToVideoComponent),data:{icon:"movie_filter",title:"nav.video_to_video",de
3scription:"seo.video_to_video.description"}},{path:"video-to-audio",loadComponent:()=>import("./chunk-YUH3WDSL.js").then(t=>t.VideoToAudioComponent),data:{icon:"music_video",title:"nav.video_to_audio",description:"seo.video_to_audio.description"}},{path:"tools",loadComponent:()=>import("./chunk-GBPMBA2B.js").then(t=>t.ToolsComponent),data:{icon:"handyman",title:"nav.tools",description:"seo.tools.description"}},{path:"my-assets",loadComponent:()=>import("./chunk-CHX2ZCJX.js").then(t=>t.MyAssetsComponent),canActivate:[$e],data:{icon:"folder",title:"nav.my_assets"}},{path:"my-elements",loadComponent:()=>import("./chunk-LIXKI23T.js").then(t=>t.MyElementsComponent),canActivate:[$e],data:{icon:"style",title:"nav.my_elements"}},{path:"pricing",loadComponent:()=>import("./chunk-MHLG3CIZ.js").then(t=>t.PricingComponent),data:{icon:"sell",title:"page.pricing",description:"seo.pricing.description"}},{path:"account",loadComponent:()=>import("./chunk-LKM3FRKZ.js").then(t=>t.AccountComponent),canActivate:[$e],data:{icon:"account_circle",title:"page.account"}},{path:"preferences",loadComponent:()=>import("./chunk-RZBZTWOY.js").then(t=>t.PreferencesComponent),canActivate:[$e],data:{icon:"tune",title:"page.preferences"}},{path:"contact-us",loadComponent:()=>import("./chunk-NR3TNIOJ.js").then(t=>t.ContactUsComponent),data:{icon:"support_agent",title:"page.contact",description:"seo.contact.description"}},{path:"notification",loadComponent:()=>import("./chunk-3UOP4XGX.js").then(t=>t.NotificationComponent),canActivate:[$e],data:{icon:"notifications",title:"page.notification"}},{path:"publish",loadComponent:()=>import("./chunk-P5UNXI6J.js").then(t=>t.PublishComponent),canActivate:[$e],data:{icon:"share",title:"nav.publish"}},{path:"marketplace/amazon",loadComponent:()=>import("./chunk-5XEXRNPC.js").then(t=>t.MarketplacePageComponent),data:{icon:"storefront",title:"nav.marketplace_amazon",platform:"amazon",description:"seo.marketplace_amazon.description"}},{path:"marketplace/wb-ozon",loadComponent:()=>import("./chunk-5XEXRNPC.js").then(t=>t.MarketplacePageComponent),data:{icon:"shopping_basket",title:"nav.marketplace_wb_ozon",platform:"wildberries",description:"seo.marketplace_wildberries.description"}},{path:"marketplace/wildberries",redirectTo:"marketplace/wb-ozon",pathMatch:"full"},{path:"terms",loadComponent:()=>import("./chunk-WH5F5KPA.js").then(t=>t.TermsComponent),data:{icon:"gavel",title:"footer.terms",description:"seo.terms.description"}},{path:"privacy",loadComponent:()=>import("./chunk-OCNGISAS.js").then(t=>t.PrivacyComponent),data:{icon:"privacy_tip",title:"footer.privacy",description:"seo.privacy.description"}},{path:"survey/:id",loadComponent:()=>import("./chunk-CQXBSGCP.js").then(t=>t.SurveyDeeplinkComponent)},{path:"studio-spike",loadComponent:()=>import("./chunk-3YUVQBUT.js").then(t=>t.StudioSpikeComponent),canActivate:[$e]},{path:"**",loadComponent:()=>import("./chunk-QYCZNKC4.js").then(t=>t.NotFoundComponent),data:{icon:"error",title:"page.not_found",description:"seo.not_found.description"}}];var Ur=(t,o)=>{let e=O(Pt),n=O(q);return t.url.startsWith(e.api.apiUrl)?o(t.clone({headers:t.headers.set("Accept-Language",n.lang())})):o(t)};var Sn=null,Qc=["/auth/login","/auth/register","/auth/refresh","/auth/logout","/auth/me","/media/cookies"],zr=(t,o)=>{let e=O(Pt);if(!t.url.startsWith(e.api.apiUrl)||Qc.some(k=>t.url.endsWith(k)))return o(t);let n=O(Ae),i=O(ve),c=O(Oe),_=O(q),E=()=>{c.error(_.t("error.401")),n.logout(),i.navigate(["/explore"]),n.loginModalOpen.set(!0)};return o(t).pipe(nn(k=>!(k instanceof Be)||k.status!==401?Re(()=>k):n.isLoggedIn()?Zc(n,E).pipe(dt(H=>H?o(t):Re(()=>k))):Re(()=>k)))};function Zc(t,o){return to(()=>(Sn||(Sn=t.sharedRefresh().then(e=>(!e.ok&&e.sessionGone&&o(),e.ok)).finally(()=>{Sn=null})),Qi(Sn)))}var ed=[/\/generation\//,/\/jobs(\/|$|\?)/],jr=(t,o)=>{let e=O(ve),n=O(Oe),i=O(q),c=O(Ae),_=O(kn),E=t.headers.has(Ft),k=ed.some(R=>R.test(t.url)),H=E||k,J=E?t.clone({headers:t.headers.delete(Ft)}):t;return o(J).pipe(nn(R=>{if(Me.sentry?.dsn&&(R.status===0||R.status>=500)&&hn(R),R.status===402){let oe=c.user()?.plan;return oe&&oe!=="FREE"?(n.error(i.t("error.insufficient_credits_topup")),_.show()):(n.error(i.t("error.insufficient_credits_upgrade")),e.navigate(["/pricing"])),Re(()=>R)}return R.status===429?((R.error?.message??"").toLowerCase().includes("hour")?n.warning(i.t("error.rate_limit_hour")):n.warningWithCountdown(i.t("error.rate_limit_countdown"),60),Re(()=>R)):R.status===403&&R.error?.code==="EMAIL_NOT_VERIFIED"?Re(()=>R):(!H&&R.status!==401&&n.error(i.t(td(R,i))),Re(()=>R))}))};function td(t,o){let e=t.error?.code;return e&&o.t(e)!==e?e:nd(t.status)}
3function nd(t){return t===0?"error.network":t===400?"error.400":t===401?"error.401":t===403?"error.403":t===404?"error.404":t===409?"error.409":t===502||t===503||t===504?"error.gateway":t>=500?"error.500":"error.unknown"}var Hr=(t,o)=>{if(!gn())return o(t);let e=performance.now();return o(t).pipe(oo({next:n=>{if(n.type===4){let i=Math.round(performance.now()-e),c=n;console.debug(`[HTTP] ${t.method} ${t.urlWithParams} \u2192 ${c.status} (${i}ms)`)}},error:n=>{let i=Math.round(performance.now()-e);console.warn(`[HTTP] ${t.method} ${t.urlWithParams} \u2192 ERROR ${n?.status??"?"} (${i}ms)`)}}))};var $r=(t,o)=>{let e=O(Ie),n=t.headers.has(ai),i=n?e.timings.longHttpTimeoutMs:e.timings.defaultHttpTimeoutMs,c=n?t.clone({headers:t.headers.delete(ai)}):t;return o(c).pipe(eo({each:i,with:()=>Re(()=>new Be({status:0,statusText:"Request Timeout",url:t.url??void 0,error:new DOMException(`Request exceeded ${i}ms`,"TimeoutError")}))}))};function It(t){return t<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function bi(t){return t<=.0031308?t*12.92:1.055*Math.pow(t,1/2.4)-.055}function id(t,o,e){let n=.4122214708*t+.5363325363*o+.0514459929*e,i=.2119034982*t+.6806995451*o+.1073969566*e,c=.0883024619*t+.2817188376*o+.6299787005*e,_=Math.cbrt(n),E=Math.cbrt(i),k=Math.cbrt(c);return{L:.2104542553*_+.793617785*E-.0040720468*k,a:1.9779984951*_-2.428592205*E+.4505937099*k,b:.0259040371*_+.7827717662*E-.808675766*k}}function od(t,o,e){let n=t+.3963377774*o+.2158037573*e,i=t-.1055613458*o-.0638541728*e,c=t-.0894841775*o-1.291485548*e,_=n*n*n,E=i*i*i,k=c*c*c;return{r:4.0767416621*_-3.3077115913*E+.2309699292*k,g:-1.2684380046*_+2.6097574011*E-.3413193965*k,b:-.0041960863*_-.7034186147*E+1.707614701*k}}function rd(t){let{L:o,a:e,b:n}=id(t.r,t.g,t.b),i=Math.hypot(e,n),c=Math.atan2(n,e)*180/Math.PI;return c<0&&(c+=360),{L:o,C:i,h:c}}function Mi(t){let o=t.h*Math.PI/180;return od(t.L,Math.cos(o)*t.C,Math.sin(o)*t.C)}function Gr(t){return t.r>=-1e-4&&t.r<=1+1e-4&&t.g>=-1e-4&&t.g<=1+1e-4&&t.b>=-1e-4&&t.b<=1+1e-4}function At(t){if(Gr(Mi(t)))return t;let o=0,e=t.C;for(let n=0;n<24;n++){let i=(o+e)/2;Gr(Mi({L:t.L,C:i,h:t.h}))?o=i:e=i}return be(ae({},t),{C:o})}function Wr(t){let o=Mi(At(t));return{r:Math.min(1,Math.max(0,bi(o.r))),g:Math.min(1,Math.max(0,bi(o.g))),b:Math.min(1,Math.max(0,bi(o.b)))}}function ad(t){if(!t)return null;let o=/^#([0-9a-f]{3}|[0-9a-f]{6})$/i.exec(t.trim());if(!o)return null;let e=o[1];return e.length===3&&(e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]),{r:parseInt(e.slice(0,2),16)/255,g:parseInt(e.slice(2,4),16)/255,b:parseInt(e.slice(4,6),16)/255}}function Yr(t){let o=ad(t);return o?rd({r:It(o.r),g:It(o.g),b:It(o.b)}):null}function qr(t){let o=It(t.r),e=It(t.g),n=It(t.b);return .2126*o+.7152*e+.0722*n}function Kr(t,o){let e=qr(Wr(t)),n=qr(Wr(o)),[i,c]=e>=n?[e,n]:[n,e];return(i+.05)/(c+.05)}var sd=4.5,Xr=.004;function In(t,o,e,n=sd){if(Kr(t,o)>=n)return t;let i=.01*(e==="lighten"?1:-1),c=t.L;for(let _=0;_<100;_++){c=t.L+i*(_+1),(c<=0||c>=1)&&(c=Math.min(1,Math.max(0,c)));let E=At(be(ae({},t),{L:c}));if(Kr(E,o)>=n||c<=0||c>=1)return E}return At(be(ae({},t),{L:c}))}var An=[{name:"bg",dark:{L:.16,C:.018,h:264},light:{L:.975,C:.006,h:255},role:"primary"},{name:"fg",dark:{L:.97,C:.005,h:264},light:{L:.27,C:.03,h:262},role:"primary",text:"both"},{name:"card",dark:{L:.21,C:.02,h:264},light:null,role:"primary"},{name:"card-2",dark:{L:.245,C:.02,h:264},light:{L:.985,C:.004,h:255},role:"primary"},{name:"popover",dark:{L:.19,C:.02,h:264},light:null,role:"primary"},{name:"primary",dark:{L:.65,C:.22,h:302},light:{L:.58,C:.24,h:302},role:"primary",text:"both"},{name:"primary-fg",dark:{L:.99,C:.005,h:264},light:{L:.99,C:.005,h:255},role:"primary"},{name:"muted",dark:{L:.25,C:.02,h:264},light:{L:.955,C:.006,h:255},role:"primary"},{name:"muted-fg",dark:{L:.67,C:.018,h:264},light:{L:.5,C:.03,h:258},role:"primary",text:"both"},{name:"accent",dark:{L:.72,C:.18,h:325},light:{L:.62,C:.19,h:325},role:"accent",text:"both"},{name:"border",dark:null,light:{L:.45,C:.04,h:262,alpha:.14},role:"primary"},{name:"border-soft",dark:null,light:{L:.45,C:.04,h:262,alpha:.08},role:"primary"},{name:"sidebar",dark:{L:.18,C:.019,h:264},light:{L:.99,C:.004,h:255},role:"primary"},{name:"sidebar-accent",dark:{L:.26,C:.022,h:264},light:{L:.95,C:.008,h:255},role:"primary"},{name:"primary-bright",dark:{L:.714,C:.155,h:302},light:null,role:"primary",text:"dark"},{name:"primary-soft",dark:{L:.809,C:.09,h:302},light:null,role:"primary",text:"dark"},{name:"navy",dark:{L:.22,C:.042,h:300},light:null,role:"primary"},{name:"navy-deep",dark:{L:.225,C:.055,h:300},light:null,role:"primary"},{name:"text-grad-from",dark:{L:.97,C:.005,h:264},light:{L:.32,C:.05,h:302},role:"primary",text:"both"},{name:"text-grad-to",dark:{L:.78,C:.13,h:302},light:{L:.55,C:.18,h:302},role:"primary",text:"both"}],yi=An.find(t=>t.name==="primary"),Oi=An.find(t=>t.name==="accent"),ld=Oi.dark.h-yi.dark.h;function vi(t){return(t%360+360)%360}function rt(t,o){return ae({L:t.L,C:t.C,h:o},t.alpha!=null?{alpha:t.alpha}:{})}function Jr(t,o,e,n){let i=In(t,e,n).L-t.L,c=In(o,e,n).L-o.L,_=Math.abs(i)>=Math.abs(c)?i:c;return _===0?{primary:t,accent:o}:{primary:At(be(ae({},t),{L:t.L+_})),accent:At(be(ae({},o),{L:o.L+_}))}}function St(t){let o=At(t),e=+o.L.toFixed(4),n=+o.C.toFixed(4),i=+o.h.toFixed(2);return o.alpha!=null?`oklch(${e} ${n} ${i} / ${+(o.alpha*100).toFixed(2)}%)`:`oklch(${e} ${n} ${i})`}function Qr(t){if(!t)return null;let o=t.primaryColor?Yr(t.primaryColor):null;if(!o||o.C<Xr)return null;let e=vi(o.h),n=t.accentColor?Yr(t.accentColor):null,i=!!n&&n.C>=Xr,c=!i,_=vi(i?n.h:e+ld),E=Y=>Y==="accent"?_:e,k=An.find(Y=>Y.name==="bg"),H=rt(k.dark,e),J=rt(k.light,e),R=[],oe=[],at=Jr(rt(yi.dark,e),rt(Oi.dark,_),H,"lighten"),Ge=Jr(rt(yi.light,e),rt(Oi.light,_),J,"darken"),We={dark:at.primary,light:Ge.primary},Pe={dark:at.accent,light:Ge.accent},Te=(Y,F)=>Y==="primary"?F==="dark"?We.dark:We.light:Y==="accent"?F==="dark"?Pe.dark:Pe.light:null;for(let Y of An){if(Y.dark){let F=Te(Y.name,"dark");F||(F=rt(Y.dark,E(Y.role)),(Y.text==="dark"||Y.text==="both")&&(F=In(F,H,"lighten"))),R.push(`  --d-${Y.name}: ${St(F)};`)}if(Y.light){let F=Te(Y.name,"light");F||(F=rt(Y.light,E(Y.role)),Y.text==="both"&&(F=In(F,J,"darken"))),oe.push(`  --d-${Y.name}: ${St(F)};`)}}
3return R.push(`  --d-grad: linear-gradient(135deg, ${St(We.dark)}, ${St(Pe.dark)});`),oe.push(`  --d-grad: linear-gradient(135deg, ${St(We.light)}, ${St(Pe.light)});`),{css:`:root {
4${R.join(`
5`)}
6}
7html.light {
8${oe.join(`
9`)}
10}
11`,primaryHue:e,accentHue:_,accentAutoDerived:c}}var Zr="genixai-theme-override",ea=(()=>{class t{constructor(){this.cfg=O(Ie),ge(()=>{this.apply(this.cfg.theme)})}apply(e){if(typeof document>"u")return;let n=null;try{n=Qr(e)}catch(_){gn()&&console.warn("[BrandTheme] failed to derive theme, keeping defaults",_),n=null}let i=document.getElementById(Zr);if(!n){i?.remove();return}let c=i??document.createElement("style");i||(c.id=Zr,document.head.appendChild(c)),c.textContent=n.css}static{this.\u0275fac=function(n){return new(n||t)}}static{this.\u0275prov=ce({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();var Gt="Genix AI",na="https://genixai.ai",ta=`${na}/assets/img/logo.svg`,ia=(()=>{class t{constructor(){this.router=O(ve),this.route=O(_n),this.title=O(ko),this.meta=O(wo),this.ts=O(q),this.doc=O(on),this.current={}}init(){this.router.events.pipe(ke(e=>e instanceof tt),Se(()=>this.collectSeo())).subscribe(e=>{this.current=e,this.apply()}),this.ts.registerOnLangChange(()=>this.apply())}collectSeo(){let e=this.route.firstChild;for(;e?.firstChild;)e=e.firstChild;let n=e?.snapshot.data??{};return{title:n.title,description:n.description}}apply(){let e=this.current.title?this.ts.t(this.current.title):Gt,n=e===Gt?Gt:`${e} \xB7 ${Gt}`,i=this.current.description?this.ts.t(this.current.description):this.ts.t("seo.default.description"),c=na+this.router.url.split("?")[0];this.title.setTitle(n),this.upsertMeta("name","description",i),this.upsertMeta("property","og:title",n),this.upsertMeta("property","og:description",i),this.upsertMeta("property","og:type","website"),this.upsertMeta("property","og:url",c),this.upsertMeta("property","og:image",ta),this.upsertMeta("property","og:site_name",Gt),this.upsertMeta("name","twitter:card","summary_large_image"),this.upsertMeta("name","twitter:title",n),this.upsertMeta("name","twitter:description",i),this.upsertMeta("name","twitter:image",ta),this.upsertCanonical(c),this.doc.documentElement.lang=this.ts.lang()}upsertMeta(e,n,i){let c=`${e}="${n}"`,_=this.meta.getTag(c);_?_.setAttribute("content",i):this.meta.addTag({[e]:n,content:i})}upsertCanonical(e){let n=this.doc.querySelector('link[rel="canonical"]');n||(n=this.doc.createElement("link"),n.setAttribute("rel","canonical"),this.doc.head.appendChild(n)),n.setAttribute("href",e)}static{this.\u0275fac=function(n){return new(n||t)}}static{this.\u0275prov=ce({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();var oa=(()=>{class t{constructor(){this.sw=O(li),this.toast=O(Oe),this.ts=O(q),this.doc=O(on),this.router=O(ve),this.jobs=O(wn),this.updatePending=!1,this.toastShown=!1}init(){this.sw.isEnabled&&(this.sw.versionUpdates.pipe(ke(e=>e.type==="VERSION_READY")).subscribe(()=>{this.updatePending=!0,this.showToast(),this.activateIfSafe()}),this.router.events.pipe(ke(e=>e instanceof tt)).subscribe(()=>this.activateIfSafe()),this.sw.unrecoverable.subscribe(()=>this.doc.defaultView?.location.reload()))}showToast(){this.toastShown||(this.toastShown=!0,this.toast.action(this.ts.t("pwa.update_available"),this.ts.t("pwa.update_action"),()=>this.activate()))}activateIfSafe(){this.updatePending&&(this.jobs.activeJobIds().length>0||this.activate())}activate(){return fe(this,null,function*(){if(this.updatePending){this.updatePending=!1;try{yield this.sw.activateUpdate()}finally{this.doc.defaultView?.location.reload()}}})}static{this.\u0275fac=function(n){return new(n||t)}}static{this.\u0275prov=ce({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();var ra=(()=>{class t{handleError(e){let n=e?.rejection??e;!(n instanceof Be)&&Me.sentry?.dsn&&hn(n instanceof Error?n:new Error(String(n))),console.error(e)}static{this.\u0275fac=function(n){return new(n||t)}}static{this.\u0275prov=ce({token:t,factory:t.\u0275fac})}}return t})();var aa=(()=>{class t{constructor(){this.consent=O(Ot),this.integrationsActive=xn(),ge(()=>{this.consent.analyticsAllowed()&&(this.integrationsActive||Me.sentry?.dsn&&(ni(Cn()),ni(fn()),this.integrationsActive=!0))})}static{this.\u0275fac=function(n){return new(n||t)}}static{this.\u0275prov=ce({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();Me.sentry?.dsn&&Ao({dsn:Me.sentry.dsn,environment:Me.sentry.environment,release:Me.sentry.release,tracesSampleRate:
11Me.sentry.tracesSampleRate??.1,integrations:xn()?[Cn(),fn()]:[],replaysSessionSampleRate:0,replaysOnErrorSampleRate:1,tracePropagationTargets:[Me.api.apiUrl]});function cd(){let t=document.documentElement,o="Material Symbols Rounded",e=`24px "${o}"`,n=document.fonts;if(!n||typeof n.load!="function"||typeof n.forEach!="function"){t.classList.add("fonts-loaded");return}let i=()=>{let J=!1;return n.forEach(R=>{R.family.replace(/["']/g,"")===o&&(J=!0)}),J},c=()=>t.classList.contains("fonts-loaded")?!0:i()&&n.check(e)?(t.classList.add("fonts-loaded"),!0):!1,_=()=>{i()&&n.load(e).then(c,()=>{})};if(c())return;_(),n.ready.then(()=>{_(),c()},()=>{});let E=0,k=40,H=()=>{c()||E++>=k||(_(),setTimeout(H,250))};setTimeout(H,250)}typeof document<"u"&&cd();vo(Vr,{providers:[Io(Fr),{provide:co,useClass:ra},Oo(Po([Uo,Ur,jr,zr,Hr,$r])),{provide:et,useFactory:t=>()=>Promise.resolve(),deps:[Ie],multi:!0},{provide:et,useFactory:t=>()=>Promise.resolve(),deps:[ea],multi:!0},{provide:et,useFactory:t=>()=>t.init(),deps:[q],multi:!0},{provide:et,useFactory:t=>()=>t.tryRestoreSession().then(()=>{t.primeMediaCookies()}),deps:[Ae],multi:!0},{provide:et,useFactory:t=>()=>t.init(),deps:[ia],multi:!0},tr("ngsw-worker.js",{enabled:Me.production,registrationStrategy:"registerWhenStable:30000"}),{provide:et,useFactory:t=>()=>t.init(),deps:[oa],multi:!0},{provide:et,useFactory:t=>()=>Promise.resolve(),deps:[aa],multi:!0}]}).catch(t=>console.error(t));

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.