var Ay=Object.defineProperty,Ry=Object.defineProperties;var Fy=Object.getOwnPropertyDescriptors;var eh=Object.getOwnPropertySymbols;var Ny=Object.prototype.hasOwnProperty,Ly=Object.prototype.propertyIsEnumerable;var th=(n,t,e)=>t in n?Ay(n,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):n[t]=e,x=(n,t)=>{for(var e in t||={})Ny.call(t,e)&&th(n,e,t[e]);if(eh)for(var e of eh(t))Ly.call(t,e)&&th(n,e,t[e]);return n},F=(n,t)=>Ry(n,Fy(t));var ke=(n,t,e)=>new Promise((o,i)=>{var r=c=>{try{s(e.next(c))}catch(u){i(u)}},a=c=>{try{s(e.throw(c))}catch(u){i(u)}},s=c=>c.done?o(c.value):Promise.resolve(c.value).then(r,a);s((e=e.apply(n,t)).next())});var It=null,nc=!1,ci=1,Vy=null,lt=Symbol("SIGNAL");function Y(n){let t=It;return It=n,t}function oc(){return It}var To={version:0,lastCleanEpoch:0,dirty:!1,producers:void 0,producersTail:void 0,consumers:void 0,consumersTail:void 0,recomputing:!1,consumerAllowSignalWrites:!1,consumerIsAlwaysLive:!1,kind:"unknown",producerMustRecompute:()=>!1,producerRecomputeValue:()=>{},consumerMarkedDirty:()=>{},consumerOnSignalRead:()=>{}};function ui(n){if(nc)throw new Error("");if(It===null)return;It.consumerOnSignalRead(n);let t=It.producersTail;if(t!==void 0&&t.producer===n)return;let e,o=It.recomputing;if(o&&(e=t!==void 0?t.nextProducer:It.producers,e!==void 0&&e.producer===n)){It.producersTail=e,e.lastReadVersion=n.version,e.knownValidAtEpoch=ci;return}let i=n.consumersTail;if(i!==void 0&&i.consumer===It&&(!o||i.knownValidAtEpoch===ci))return;let r=lr(It),a={producer:n,consumer:It,nextProducer:e,prevConsumer:void 0,knownValidAtEpoch:ci,lastReadVersion:n.version,nextConsumer:void 0};It.producersTail=a,t!==void 0?t.nextProducer=a:It.producers=a,r&&rh(n,a)}function nh(){ci++}function gi(n){if(!(lr(n)&&!n.dirty)&&!(!n.dirty&&n.lastCleanEpoch===ci)){if(!n.producerMustRecompute(n)&&!fa(n)){cr(n);return}n.producerRecomputeValue(n),cr(n)}}function Yu(n){if(n.consumers===void 0)return;let t=nc;nc=!0;try{for(let e=n.consumers;e!==void 0;e=e.nextConsumer){let o=e.consumer;o.dirty||By(o)}}finally{nc=t}}function Ku(){return It?.consumerAllowSignalWrites!==!1}function By(n){n.dirty=!0,Yu(n),n.consumerMarkedDirty?.(n)}function cr(n){n.dirty=!1,n.lastCleanEpoch=ci}function Ao(n){return n&&oh(n),Y(n)}function oh(n){if(n.producersTail?.knownValidAtEpoch===ci){let t=n.producers;for(;t!==void 0;)t.knownValidAtEpoch=null,t=t.nextProducer}n.producersTail=void 0,n.recomputing=!0}function pi(n,t){Y(t),n&&ih(n)}function ih(n){n.recomputing=!1;let t=n.producersTail,e=t!==void 0?t.nextProducer:n.producers;if(e!==void 0){if(lr(n))do e=Zu(e);while(e!==void 0);t!==void 0?t.nextProducer=void 0:n.producers=void 0}}function fa(n){for(let t=n.producers;t!==void 0;t=t.nextProducer){let e=t.producer,o=t.lastReadVersion;if(o!==e.version||(gi(e),o!==e.version))return!0}return!1}function fi(n){if(lr(n)){let t=n.producers;for(;t!==void 0;)t=Zu(t)}n.producers=void 0,n.producersTail=void 0,n.consumers=void 0,n.consumersTail=void 0}function rh(n,t){let e=n.consumersTail,o=lr(n);if(e!==void 0?(t.nextConsumer=e.nextConsumer,e.nextConsumer=t):(t.nextConsumer=void 0,n.consumers=t),t.prevConsumer=e,n.consumersTail=t,!o)for(let i=n.producers;i!==void 0;i=i.nextProducer)rh(i.producer,i)}function Zu(n){let t=n.producer,e=n.nextProducer,o=n.nextConsumer,i=n.prevConsumer;if(n.nextConsumer=void 0,n.prevConsumer=void 0,o!==void 0?o.prevConsumer=i:t.consumersTail=i,i!==void 0)i.nextConsumer=o;else if(t.consumers=o,!lr(t)){let r=t.producers;for(;r!==void 0;)r=Zu(r)}return e}function lr(n){return n.consumerIsAlwaysLive||n.consumers!==void 0}function ma(n){Vy?.(n)}function _a(n,t){return Object.is(n,t)}function ic(n,t){let e=Object.create(jy);e.computation=n,t!==void 0&&(e.equal=t);let o=()=>{if(gi(e),ui(e),e.value===zn)throw e.error;return e.value};return o[lt]=e,ma(e),o}var li=Symbol("UNSET"),di=Symbol("COMPUTING"),zn=Symbol("ERRORED"),jy=F(x({},To),{value:li,dirty:!0,error:null,equal:_a,kind:"computed",producerMustRecompute(n){return n.value===li||n.value===di},producerRecomputeValue(n){if(n.value===di)throw new Error("");let t=n.value;n.value=di;let e=Ao(n),o,i=!1;try{o=n.computation(),Y(null),i=t!==li&&t!==zn&&o!==zn&&n.equal(t,o)}catch(r){o=zn,n.error=r}finally{pi(n,e)}if(i){n.value=t;return}n.value=o,n.version++}});function zy(){throw new Error}var ah=zy;function sh(n){ah(n)}function Xu(n){ah=n}var $y=null;function Qu(n,t){let e=Object.create(ac);e.value=n,t!==void 0&&(e.equal=t);let o=()=>ch(e);return o[lt]=e,ma(e),[o,a=>mi(e,a),a=>rc(e,a)]}function ch(n){return ui(n),n.value}function mi(n,t){Ku()||sh(n),n.equal(n.value,t)||(n.value=t,Hy(n))}function rc(n,t){Ku()||sh(n),mi(n,t(n.value))}var ac=F(x({},To),{equal:_a,value:void 0,kind:"signal"});function Hy(n){n.version++,nh(),Yu(n),$y?.(n)}var Ju=F(x({},To),{consumerIsAlwaysLive:!0,consumerAllowSignalWrites:!0,dirty:!0,kind:"effect"});function eg(n){if(n.dirty=!1,n.version>0&&!fa(n))return;n.version++;let t=Ao(n);try{n.cleanup(),n.fn()}finally{pi(n,t)}}var tg;function sc(){return tg}function $n(n){let t=tg;return tg=n,t}var lh=Symbol("NotFound");function dr(n){return n===lh||n?.name==="\u0275NotFound"}function ng(n,t,e){let o=Object.create(Uy);o.source=n,o.computation=t,e!=null&&(o.equal=e);let r=()=>{if(gi(o),ui(o),o.value===zn)throw o.error;return o.value};return r[lt]=o,ma(o),r}function og(n,t){gi(n),mi(n,t),cr(n)}function dh(n,t){if(gi(n),n.value===zn)throw n.error;rc(n,t),cr(n)}var Uy=F(x({},To),{value:li,dirty:!0,error:null,equal:_a,kind:"linkedSignal",producerMustRecompute(n){return n.value===li||n.value===di},producerRecomputeValue(n){if(n.value===di)throw new Error("");let t=n.value;n.value=di;let e=Ao(n),o,i=!1;try{let r=n.source(),a=t!==li&&t!==zn,s=a?{source:n.sourceValue,value:t}:void 0;o=n.computation(r,s),n.sourceValue=r,Y(null),i=a&&o!==zn&&n.equal(t,o)}catch(r){o=zn,n.error=r}finally{pi(n,e)}if(i){n.value=t;return}n.value=o,n.version++}});function uh(n){let t=Y(null);try{return n()}finally{Y(t)}}function de(n){return typeof n=="function"}function ur(n){let e=n(o=>{Error.call(o),o.stack=new Error().stack});return e.prototype=Object.create(Error.prototype),e.prototype.constructor=e,e}var cc=ur(n=>function(e){n(this),this.message=e?`${e.length} errors occurred during unsubscription: ${e.map((o,i)=>`${i+1}) ${o.toString()}`).join(` `)}`:"",this.name="UnsubscriptionError",this.errors=e});function _i(n,t){if(n){let e=n.indexOf(t);0<=e&&n.splice(e,1)}}var Oe=class n{constructor(t){this.initialTeardown=t,this.closed=!1,this._parentage=null,this._finalizers=null}unsubscribe(){let t;if(!this.closed){this.closed=!0;let{_parentage:e}=this;if(e)if(this._parentage=null,Array.isArray(e))for(let r of e)r.remove(this);else e.remove(this);let{initialTeardown:o}=this;if(de(o))try{o()}catch(r){t=r instanceof cc?r.errors:[r]}let{_finalizers:i}=this;if(i){this._finalizers=null;for(let r of i)try{gh(r)}catch(a){t=t??[],a instanceof cc?t=[...t,...a.errors]:t.push(a)}}if(t)throw new cc(t)}}add(t){var e;if(t&&t!==this)if(this.closed)gh(t);else{if(t instanceof n){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=(e=this._finalizers)!==null&&e!==void 0?e:[]).push(t)}}_hasParent(t){let{_parentage:e}=this;return e===t||Array.isArray(e)&&e.includes(t)}_addParent(t){let{_parentage:e}=this;this._parentage=Array.isArray(e)?(e.push(t),e):e?[e,t]:t}_removeParent(t){let{_parentage:e}=this;e===t?this._parentage=null:Array.isArray(e)&&_i(e,t)}remove(t){let{_finalizers:e}=this;e&&_i(e,t),t instanceof n&&t._removeParent(this)}};Oe.EMPTY=(()=>{let n=new Oe;return n.closed=!0,n})();var ig=Oe.EMPTY;function lc(n){return n instanceof Oe||n&&"closed"in n&&de(n.remove)&&de(n.add)&&de(n.unsubscribe)}function gh(n){de(n)?n():n.unsubscribe()}var vn={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1};var gr={setTimeout(n,t,...e){let{delegate:o}=gr;return o?.setTimeout?o.setTimeout(n,t,...e):setTimeout(n,t,...e)},clearTimeout(n){let{delegate:t}=gr;return(t?.clearTimeout||clearTimeout)(n)},delegate:void 0};function dc(n){gr.setTimeout(()=>{let{onUnhandledError:t}=vn;if(t)t(n);else throw n})}function ha(){}var ph=rg("C",void 0,void 0);function fh(n){return rg("E",void 0,n)}function mh(n){return rg("N",n,void 0)}function rg(n,t,e){return{kind:n,value:t,error:e}}var hi=null;function pr(n){if(vn.useDeprecatedSynchronousErrorHandling){let t=!hi;if(t&&(hi={errorThrown:!1,error:null}),n(),t){let{errorThrown:e,error:o}=hi;if(hi=null,e)throw o}}else n()}function _h(n){vn.useDeprecatedSynchronousErrorHandling&&hi&&(hi.errorThrown=!0,hi.error=n)}var Ci=class extends Oe{constructor(t){super(),this.isStopped=!1,t?(this.destination=t,lc(t)&&t.add(this)):this.destination=qy}static create(t,e,o){return new lo(t,e,o)}next(t){this.isStopped?sg(mh(t),this):this._next(t)}error(t){this.isStopped?sg(fh(t),this):(this.isStopped=!0,this._error(t))}complete(){this.isStopped?sg(ph,this):(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe(),this.destination=null)}_next(t){this.destination.next(t)}_error(t){try{this.destination.error(t)}finally{this.unsubscribe()}}_complete(){try{this.destination.complete()}finally{this.unsubscribe()}}},Wy=Function.prototype.bind;function ag(n,t){return Wy.call(n,t)}var cg=class{constructor(t){this.partialObserver=t}next(t){let{partialObserver:e}=this;if(e.next)try{e.next(t)}catch(o){uc(o)}}error(t){let{partialObserver:e}=this;if(e.error)try{e.error(t)}catch(o){uc(o)}else uc(t)}complete(){let{partialObserver:t}=this;if(t.complete)try{t.complete()}catch(e){uc(e)}}},lo=class extends Ci{constructor(t,e,o){super();let i;if(de(t)||!t)i={next:t??void 0,error:e??void 0,complete:o??void 0};else{let r;this&&vn.useDeprecatedNextContext?(r=Object.create(t),r.unsubscribe=()=>this.unsubscribe(),i={next:t.next&&ag(t.next,r),error:t.error&&ag(t.error,r),complete:t.complete&&ag(t.complete,r)}):i=t}this.destination=new cg(i)}};function uc(n){vn.useDeprecatedSynchronousErrorHandling?_h(n):dc(n)}function Gy(n){throw n}function sg(n,t){let{onStoppedNotification:e}=vn;e&&gr.setTimeout(()=>e(n,t))}var qy={closed:!0,next:ha,error:Gy,complete:ha};var fr=typeof Symbol=="function"&&Symbol.observable||"@@observable";function yn(n){return n}function gc(...n){return lg(n)}function lg(n){return n.length===0?yn:n.length===1?n[0]:function(e){return n.reduce((o,i)=>i(o),e)}}var te=class n{constructor(t){t&&(this._subscribe=t)}lift(t){let e=new n;return e.source=this,e.operator=t,e}subscribe(t,e,o){let i=Ky(t)?t:new lo(t,e,o);return pr(()=>{let{operator:r,source:a}=this;i.add(r?r.call(i,a):a?this._subscribe(i):this._trySubscribe(i))}),i}_trySubscribe(t){try{return this._subscribe(t)}catch(e){t.error(e)}}forEach(t,e){return e=hh(e),new e((o,i)=>{let r=new lo({next:a=>{try{t(a)}catch(s){i(s),r.unsubscribe()}},error:i,complete:o});this.subscribe(r)})}_subscribe(t){var e;return(e=this.source)===null||e===void 0?void 0:e.subscribe(t)}[fr](){return this}pipe(...t){return lg(t)(this)}toPromise(t){return t=hh(t),new t((e,o)=>{let i;this.subscribe(r=>i=r,r=>o(r),()=>e(i))})}};te.create=n=>new te(n);function hh(n){var t;return(t=n??vn.Promise)!==null&&t!==void 0?t:Promise}function Yy(n){return n&&de(n.next)&&de(n.error)&&de(n.complete)}function Ky(n){return n&&n instanceof Ci||Yy(n)&&lc(n)}function Zy(n){return de(n?.lift)}function me(n){return t=>{if(Zy(t))return t.lift(function(e){try{return n(e,this)}catch(o){this.error(o)}});throw new TypeError("Unable to lift unknown Observable type")}}function _e(n,t,e,o,i){return new dg(n,t,e,o,i)}var dg=class extends Ci{constructor(t,e,o,i,r,a){super(t),this.onFinalize=r,this.shouldUnsubscribe=a,this._next=e?function(s){try{e(s)}catch(c){t.error(c)}}:super._next,this._error=i?function(s){try{i(s)}catch(c){t.error(c)}finally{this.unsubscribe()}}:super._error,this._complete=o?function(){try{o()}catch(s){t.error(s)}finally{this.unsubscribe()}}:super._complete}unsubscribe(){var t;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){let{closed:e}=this;super.unsubscribe(),!e&&((t=this.onFinalize)===null||t===void 0||t.call(this))}}};var Ch=ur(n=>function(){n(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"});var fe=class extends te{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(t){let e=new pc(this,this);return e.operator=t,e}_throwIfClosed(){if(this.closed)throw new Ch}next(t){pr(()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(let e of this.currentObservers)e.next(t)}})}error(t){pr(()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=t;let{observers:e}=this;for(;e.length;)e.shift().error(t)}})}complete(){pr(()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;let{observers:t}=this;for(;t.length;)t.shift().complete()}})}unsubscribe(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null}get observed(){var t;return((t=this.observers)===null||t===void 0?void 0:t.length)>0}_trySubscribe(t){return this._throwIfClosed(),super._trySubscribe(t)}_subscribe(t){return this._throwIfClosed(),this._checkFinalizedStatuses(t),this._innerSubscribe(t)}_innerSubscribe(t){let{hasError:e,isStopped:o,observers:i}=this;return e||o?ig:(this.currentObservers=null,i.push(t),new Oe(()=>{this.currentObservers=null,_i(i,t)}))}_checkFinalizedStatuses(t){let{hasError:e,thrownError:o,isStopped:i}=this;e?t.error(o):i&&t.complete()}asObservable(){let t=new te;return t.source=this,t}};fe.create=(n,t)=>new pc(n,t);var pc=class extends fe{constructor(t,e){super(),this.destination=t,this.source=e}next(t){var e,o;(o=(e=this.destination)===null||e===void 0?void 0:e.next)===null||o===void 0||o.call(e,t)}error(t){var e,o;(o=(e=this.destination)===null||e===void 0?void 0:e.error)===null||o===void 0||o.call(e,t)}complete(){var t,e;(e=(t=this.destination)===null||t===void 0?void 0:t.complete)===null||e===void 0||e.call(t)}_subscribe(t){var e,o;return(o=(e=this.source)===null||e===void 0?void 0:e.subscribe(t))!==null&&o!==void 0?o:ig}};var ht=class extends fe{constructor(t){super(),this._value=t}get value(){return this.getValue()}_subscribe(t){let e=super._subscribe(t);return!e.closed&&t.next(this._value),e}getValue(){let{hasError:t,thrownError:e,_value:o}=this;if(t)throw e;return this._throwIfClosed(),o}next(t){super.next(this._value=t)}};var Ca={now(){return(Ca.delegate||Date).now()},delegate:void 0};var fc=class extends fe{constructor(t=1/0,e=1/0,o=Ca){super(),this._bufferSize=t,this._windowTime=e,this._timestampProvider=o,this._buffer=[],this._infiniteTimeWindow=!0,this._infiniteTimeWindow=e===1/0,this._bufferSize=Math.max(1,t),this._windowTime=Math.max(1,e)}next(t){let{isStopped:e,_buffer:o,_infiniteTimeWindow:i,_timestampProvider:r,_windowTime:a}=this;e||(o.push(t),!i&&o.push(r.now()+a)),this._trimBuffer(),super.next(t)}_subscribe(t){this._throwIfClosed(),this._trimBuffer();let e=this._innerSubscribe(t),{_infiniteTimeWindow:o,_buffer:i}=this,r=i.slice();for(let a=0;a{class n{constructor(e,o=n.now){this.schedulerActionCtor=e,this.now=o}schedule(e,o=0,i){return new this.schedulerActionCtor(this,e).schedule(i,o)}}return n.now=Ca.now,n})();var hc=class extends ug{constructor(t,e=ug.now){super(t,e),this.actions=[],this._active=!1}flush(t){let{actions:e}=this;if(this._active){e.push(t);return}let o;this._active=!0;do if(o=t.execute(t.state,t.delay))break;while(t=e.shift());if(this._active=!1,o){for(;t=e.shift();)t.unsubscribe();throw o}}};var gg=new hc(_c),Mh=gg;var Ct=new te(n=>n.complete());function Cc(n){return n&&de(n.schedule)}function bh(n){return n[n.length-1]}function Mc(n){return de(bh(n))?n.pop():void 0}function Ro(n){return Cc(bh(n))?n.pop():void 0}function Oh(n,t,e,o){function i(r){return r instanceof e?r:new e(function(a){a(r)})}return new(e||(e=Promise))(function(r,a){function s(f){try{u(o.next(f))}catch(_){a(_)}}function c(f){try{u(o.throw(f))}catch(_){a(_)}}function u(f){f.done?r(f.value):i(f.value).then(s,c)}u((o=o.apply(n,t||[])).next())})}function Ph(n){var t=typeof Symbol=="function"&&Symbol.iterator,e=t&&n[t],o=0;if(e)return e.call(n);if(n&&typeof n.length=="number")return{next:function(){return n&&o>=n.length&&(n=void 0),{value:n&&n[o++],done:!n}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function Mi(n){return this instanceof Mi?(this.v=n,this):new Mi(n)}function vh(n,t,e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var o=e.apply(n,t||[]),i,r=[];return i=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),s("next"),s("throw"),s("return",a),i[Symbol.asyncIterator]=function(){return this},i;function a(C){return function(O){return Promise.resolve(O).then(C,_)}}function s(C,O){o[C]&&(i[C]=function(P){return new Promise(function(T,R){r.push([C,P,T,R])>1||c(C,P)})},O&&(i[C]=O(i[C])))}function c(C,O){try{u(o[C](O))}catch(P){h(r[0][3],P)}}function u(C){C.value instanceof Mi?Promise.resolve(C.value.v).then(f,_):h(r[0][2],C)}function f(C){c("next",C)}function _(C){c("throw",C)}function h(C,O){C(O),r.shift(),r.length&&c(r[0][0],r[0][1])}}function yh(n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=n[Symbol.asyncIterator],e;return t?t.call(n):(n=typeof Ph=="function"?Ph(n):n[Symbol.iterator](),e={},o("next"),o("throw"),o("return"),e[Symbol.asyncIterator]=function(){return this},e);function o(r){e[r]=n[r]&&function(a){return new Promise(function(s,c){a=n[r](a),i(s,c,a.done,a.value)})}}function i(r,a,s,c){Promise.resolve(c).then(function(u){r({value:u,done:s})},a)}}var bc=(n=>n&&typeof n.length=="number"&&typeof n!="function");function Pc(n){return de(n?.then)}function Oc(n){return de(n[fr])}function vc(n){return Symbol.asyncIterator&&de(n?.[Symbol.asyncIterator])}function yc(n){return new TypeError(`You provided ${n!==null&&typeof n=="object"?"an invalid object":`'${n}'`} where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`)}function Xy(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var xc=Xy();function wc(n){return de(n?.[xc])}function Sc(n){return vh(this,arguments,function*(){let e=n.getReader();try{for(;;){let{value:o,done:i}=yield Mi(e.read());if(i)return yield Mi(void 0);yield yield Mi(o)}}finally{e.releaseLock()}})}function kc(n){return de(n?.getReader)}function He(n){if(n instanceof te)return n;if(n!=null){if(Oc(n))return Qy(n);if(bc(n))return Jy(n);if(Pc(n))return ex(n);if(vc(n))return xh(n);if(wc(n))return tx(n);if(kc(n))return nx(n)}throw yc(n)}function Qy(n){return new te(t=>{let e=n[fr]();if(de(e.subscribe))return e.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function Jy(n){return new te(t=>{for(let e=0;e{n.then(e=>{t.closed||(t.next(e),t.complete())},e=>t.error(e)).then(null,dc)})}function tx(n){return new te(t=>{for(let e of n)if(t.next(e),t.closed)return;t.complete()})}function xh(n){return new te(t=>{ox(n,t).catch(e=>t.error(e))})}function nx(n){return xh(Sc(n))}function ox(n,t){var e,o,i,r;return Oh(this,void 0,void 0,function*(){try{for(e=yh(n);o=yield e.next(),!o.done;){let a=o.value;if(t.next(a),t.closed)return}}catch(a){i={error:a}}finally{try{o&&!o.done&&(r=e.return)&&(yield r.call(e))}finally{if(i)throw i.error}}t.complete()})}function Bt(n,t,e,o=0,i=!1){let r=t.schedule(function(){e(),i?n.add(this.schedule(null,o)):this.unsubscribe()},o);if(n.add(r),!i)return r}function Ec(n,t=0){return me((e,o)=>{e.subscribe(_e(o,i=>Bt(o,n,()=>o.next(i),t),()=>Bt(o,n,()=>o.complete(),t),i=>Bt(o,n,()=>o.error(i),t)))})}function Dc(n,t=0){return me((e,o)=>{o.add(n.schedule(()=>e.subscribe(o),t))})}function wh(n,t){return He(n).pipe(Dc(t),Ec(t))}function Sh(n,t){return He(n).pipe(Dc(t),Ec(t))}function kh(n,t){return new te(e=>{let o=0;return t.schedule(function(){o===n.length?e.complete():(e.next(n[o++]),e.closed||this.schedule())})})}function Eh(n,t){return new te(e=>{let o;return Bt(e,t,()=>{o=n[xc](),Bt(e,t,()=>{let i,r;try{({value:i,done:r}=o.next())}catch(a){e.error(a);return}r?e.complete():e.next(i)},0,!0)}),()=>de(o?.return)&&o.return()})}function Ic(n,t){if(!n)throw new Error("Iterable cannot be null");return new te(e=>{Bt(e,t,()=>{let o=n[Symbol.asyncIterator]();Bt(e,t,()=>{o.next().then(i=>{i.done?e.complete():e.next(i.value)})},0,!0)})})}function Dh(n,t){return Ic(Sc(n),t)}function Ih(n,t){if(n!=null){if(Oc(n))return wh(n,t);if(bc(n))return kh(n,t);if(Pc(n))return Sh(n,t);if(vc(n))return Ic(n,t);if(wc(n))return Eh(n,t);if(kc(n))return Dh(n,t)}throw yc(n)}function We(n,t){return t?Ih(n,t):He(n)}function se(...n){let t=Ro(n);return We(n,t)}function pg(n,t){let e=de(n)?n:()=>n,o=i=>i.error(e());return new te(t?i=>t.schedule(o,0,i):o)}function ba(n){return!!n&&(n instanceof te||de(n.lift)&&de(n.subscribe))}var bi=ur(n=>function(){n(this),this.name="EmptyError",this.message="no elements in sequence"});function Th(n){return n instanceof Date&&!isNaN(n)}function Ee(n,t){return me((e,o)=>{let i=0;e.subscribe(_e(o,r=>{o.next(n.call(t,r,i++))}))})}var{isArray:ix}=Array;function rx(n,t){return ix(t)?n(...t):n(t)}function Tc(n){return Ee(t=>rx(n,t))}var{isArray:ax}=Array,{getPrototypeOf:sx,prototype:cx,keys:lx}=Object;function Ac(n){if(n.length===1){let t=n[0];if(ax(t))return{args:t,keys:null};if(dx(t)){let e=lx(t);return{args:e.map(o=>t[o]),keys:e}}}return{args:n,keys:null}}function dx(n){return n&&typeof n=="object"&&sx(n)===cx}function Rc(n,t){return n.reduce((e,o,i)=>(e[o]=t[i],e),{})}function fg(...n){let t=Ro(n),e=Mc(n),{args:o,keys:i}=Ac(n);if(o.length===0)return We([],t);let r=new te(ux(o,t,i?a=>Rc(i,a):yn));return e?r.pipe(Tc(e)):r}function ux(n,t,e=yn){return o=>{Ah(t,()=>{let{length:i}=n,r=new Array(i),a=i,s=i;for(let c=0;c{let u=We(n[c],t),f=!1;u.subscribe(_e(o,_=>{r[c]=_,f||(f=!0,s--),s||o.next(e(r.slice()))},()=>{--a||o.complete()}))},o)},o)}}function Ah(n,t,e){n?Bt(e,n,t):t()}function Rh(n,t,e,o,i,r,a,s){let c=[],u=0,f=0,_=!1,h=()=>{_&&!c.length&&!u&&t.complete()},C=P=>u{r&&t.next(P),u++;let T=!1;He(e(P,f++)).subscribe(_e(t,R=>{i?.(R),r?C(R):t.next(R)},()=>{T=!0},void 0,()=>{if(T)try{for(u--;c.length&&uO(R)):O(R)}h()}catch(R){t.error(R)}}))};return n.subscribe(_e(t,C,()=>{_=!0,h()})),()=>{s?.()}}function Ot(n,t,e=1/0){return de(t)?Ot((o,i)=>Ee((r,a)=>t(o,r,i,a))(He(n(o,i))),e):(typeof t=="number"&&(e=t),me((o,i)=>Rh(o,i,n,e)))}function mr(n=1/0){return Ot(yn,n)}function Fh(){return mr(1)}function _r(...n){return Fh()(We(n,Ro(n)))}function Pa(n){return new te(t=>{He(n()).subscribe(t)})}function mg(...n){let t=Mc(n),{args:e,keys:o}=Ac(n),i=new te(r=>{let{length:a}=e;if(!a){r.complete();return}let s=new Array(a),c=a,u=a;for(let f=0;f{_||(_=!0,u--),s[f]=h},()=>c--,void 0,()=>{(!c||!_)&&(u||r.next(o?Rc(o,s):s),r.complete())}))}});return t?i.pipe(Tc(t)):i}function Nh(n=0,t,e=Mh){let o=-1;return t!=null&&(Cc(t)?e=t:o=t),new te(i=>{let r=Th(n)?+n-e.now():n;r<0&&(r=0);let a=0;return e.schedule(function(){i.closed||(i.next(a++),0<=o?this.schedule(void 0,o):i.complete())},r)})}function vt(n,t){return me((e,o)=>{let i=0;e.subscribe(_e(o,r=>n.call(t,r,i++)&&o.next(r)))})}function Lh(n){return me((t,e)=>{let o=!1,i=null,r=null,a=!1,s=()=>{if(r?.unsubscribe(),r=null,o){o=!1;let u=i;i=null,e.next(u)}a&&e.complete()},c=()=>{r=null,a&&e.complete()};t.subscribe(_e(e,u=>{o=!0,i=u,r||He(n(u)).subscribe(r=_e(e,s,c))},()=>{a=!0,(!o||!r||r.closed)&&e.complete()}))})}function Fc(n,t=gg){return Lh(()=>Nh(n,t))}function hr(n){return me((t,e)=>{let o=null,i=!1,r;o=t.subscribe(_e(e,void 0,void 0,a=>{r=He(n(a,hr(n)(t))),o?(o.unsubscribe(),o=null,r.subscribe(e)):i=!0})),i&&(o.unsubscribe(),o=null,r.subscribe(e))})}function Pi(n,t){return de(t)?Ot(n,t,1):Ot(n,1)}function Vh(n){return me((t,e)=>{let o=!1;t.subscribe(_e(e,i=>{o=!0,e.next(i)},()=>{o||e.next(n),e.complete()}))})}function uo(n){return n<=0?()=>Ct:me((t,e)=>{let o=0;t.subscribe(_e(e,i=>{++o<=n&&(e.next(i),n<=o&&e.complete())}))})}function Bh(n=gx){return me((t,e)=>{let o=!1;t.subscribe(_e(e,i=>{o=!0,e.next(i)},()=>o?e.complete():e.error(n())))})}function gx(){return new bi}function Tt(n){return me((t,e)=>{try{t.subscribe(e)}finally{e.add(n)}})}function go(n,t){let e=arguments.length>=2;return o=>o.pipe(n?vt((i,r)=>n(i,r,o)):yn,uo(1),e?Vh(t):Bh(()=>new bi))}function Nc(n){return n<=0?()=>Ct:me((t,e)=>{let o=[];t.subscribe(_e(e,i=>{o.push(i),n{for(let i of o)e.next(i);e.complete()},void 0,()=>{o=null}))})}function jh(n={}){let{connector:t=()=>new fe,resetOnError:e=!0,resetOnComplete:o=!0,resetOnRefCountZero:i=!0}=n;return r=>{let a,s,c,u=0,f=!1,_=!1,h=()=>{s?.unsubscribe(),s=void 0},C=()=>{h(),a=c=void 0,f=_=!1},O=()=>{let P=a;C(),P?.unsubscribe()};return me((P,T)=>{u++,!_&&!f&&h();let R=c=c??t();T.add(()=>{u--,u===0&&!_&&!f&&(s=_g(O,i))}),R.subscribe(T),!a&&u>0&&(a=new lo({next:D=>R.next(D),error:D=>{_=!0,h(),s=_g(C,e,D),R.error(D)},complete:()=>{f=!0,h(),s=_g(C,o),R.complete()}}),He(P).subscribe(a))})(r)}}function _g(n,t,...e){if(t===!0){n();return}if(t===!1)return;let o=new lo({next:()=>{o.unsubscribe(),n()}});return He(t(...e)).subscribe(o)}function Lc(n,t,e){let o,i=!1;return n&&typeof n=="object"?{bufferSize:o=1/0,windowTime:t=1/0,refCount:i=!1,scheduler:e}=n:o=n??1/0,jh({connector:()=>new fc(o,t,e),resetOnError:!0,resetOnComplete:!1,resetOnRefCountZero:i})}function Vc(...n){let t=Ro(n);return me((e,o)=>{(t?_r(n,e,t):_r(n,e)).subscribe(o)})}function At(n,t){return me((e,o)=>{let i=null,r=0,a=!1,s=()=>a&&!i&&o.complete();e.subscribe(_e(o,c=>{i?.unsubscribe();let u=0,f=r++;He(n(c,f)).subscribe(i=_e(o,_=>o.next(t?t(c,_,f,u++):_),()=>{i=null,s()}))},()=>{a=!0,s()}))})}function Cr(n){return me((t,e)=>{He(n).subscribe(_e(e,()=>e.complete(),ha)),!e.closed&&t.subscribe(e)})}function hg(n,t=!1){return me((e,o)=>{let i=0;e.subscribe(_e(o,r=>{let a=n(r,i++);(a||t)&&o.next(r),!a&&o.complete()}))})}function Fe(n,t,e){let o=de(n)||t||e?{next:n,error:t,complete:e}:n;return o?me((i,r)=>{var a;(a=o.subscribe)===null||a===void 0||a.call(o);let s=!0;i.subscribe(_e(r,c=>{var u;(u=o.next)===null||u===void 0||u.call(o,c),r.next(c)},()=>{var c;s=!1,(c=o.complete)===null||c===void 0||c.call(o),r.complete()},c=>{var u;s=!1,(u=o.error)===null||u===void 0||u.call(o,c),r.error(c)},()=>{var c,u;s&&((c=o.unsubscribe)===null||c===void 0||c.call(o)),(u=o.finalize)===null||u===void 0||u.call(o)}))}):yn}var Wc="https://angular.dev/best-practices/security#preventing-cross-site-scripting-xss",j=class extends Error{code;constructor(t,e){super(xn(t,e)),this.code=t}};function px(n){return`NG0${Math.abs(n)}`}function xn(n,t){return`${px(n)}${t?": "+t:""}`}function we(n){for(let t in n)if(n[t]===we)return t;throw Error("")}function Gh(n,t){for(let e in t)Object.hasOwn(t,e)&&!Object.hasOwn(n,e)&&(n[e]=t[e])}function ka(n){if(typeof n=="string")return n;if(Array.isArray(n))return`[${n.map(ka).join(", ")}]`;if(n==null)return""+n;let t=n.overriddenName||n.name;if(t)return`${t}`;let e=n.toString();if(e==null)return""+e;let o=e.indexOf(` `);return o>=0?e.slice(0,o):e}function Gc(n,t){return n?t?`${n} ${t}`:n:t||""}var fx=we({__forward_ref__:we});function yt(n){return n.__forward_ref__=yt,n}function Mt(n){return Ig(n)?n():n}function Ig(n){return typeof n=="function"&&Object.hasOwn(n,fx)&&n.__forward_ref__===yt}function ee(n){return{token:n.token,providedIn:n.providedIn||null,factory:n.factory,value:void 0}}function at(n){return{providers:n.providers||[],imports:n.imports||[]}}function Ea(n){return mx(n,qc)}function Tg(n){return Ea(n)!==null}function mx(n,t){return Object.hasOwn(n,t)&&n[t]||null}function _x(n){let t=n?.[qc]??null;return t||null}function Mg(n){return n&&Object.hasOwn(n,jc)?n[jc]:null}var qc=we({\u0275prov:we}),jc=we({\u0275inj:we}),$=class{_desc;ngMetadataName="InjectionToken";\u0275prov;constructor(t,e){this._desc=t,this.\u0275prov=void 0,typeof e=="number"?this.__NG_ELEMENT_ID__=e:e!==void 0&&(this.\u0275prov=ee({token:this,providedIn:e.providedIn||"root",factory:e.factory}))}get multi(){return this}toString(){return`InjectionToken ${this._desc}`}};function Ag(n){return n&&!!n.\u0275providers}var Da=we({\u0275cmp:we}),Ia=we({\u0275dir:we}),Rg=we({\u0275pipe:we}),Fg=we({\u0275mod:we}),ya=we({\u0275fac:we}),wi=we({__NG_ELEMENT_ID__:we}),zh=we({__NG_ENV_ID__:we});function qh(n){return Yc(n,"@NgModule"),n[Fg]||null}function Lo(n){return Yc(n,"@Component"),n[Da]||null}function Ng(n){return Yc(n,"@Directive"),n[Ia]||null}function Yh(n){return Yc(n,"@Pipe"),n[Rg]||null}function Yc(n,t){if(n==null)throw new j(-919,!1)}function wn(n){return typeof n=="string"?n:n==null?"":String(n)}var Kh=we({ngErrorCode:we}),hx=we({ngErrorMessage:we}),Cx=we({ngTokenPath:we});function Lg(n,t){return Zh("",-200,t)}function Kc(n,t){throw new j(-201,!1)}function Zh(n,t,e){let o=new j(t,n);return o[Kh]=t,o[hx]=n,e&&(o[Cx]=e),o}function Mx(n){return n[Kh]}var bg;function Xh(){return bg}function Rt(n){let t=bg;return bg=n,t}function Vg(n,t,e){let o=Ea(n);if(o&&o.providedIn=="root")return o.value===void 0?o.value=o.factory():o.value;if(e&8)return null;if(t!==void 0)return t;Kc(n,"")}var Sn=globalThis;var bx={},Oi=bx,Px="__NG_DI_FLAG__",Pg=class{injector;constructor(t){this.injector=t}retrieve(t,e){let o=vi(e)||0;try{return this.injector.get(t,o&8?null:Oi,o)}catch(i){if(dr(i))return i;throw i}}};function Ox(n,t=0){let e=sc();if(e===void 0)throw new j(-203,!1);if(e===null)return Vg(n,void 0,t);{let o=vx(t),i=e.retrieve(n,o);if(dr(i)){if(o.optional)return null;throw i}return i}}function Q(n,t=0){return(Xh()||Ox)(Mt(n),t)}function v(n,t){return Q(n,vi(t))}function vi(n){return typeof n>"u"||typeof n=="number"?n:0|(n.optional&&8)|(n.host&&1)|(n.self&&2)|(n.skipSelf&&4)}function vx(n){return{optional:!!(n&8),host:!!(n&1),self:!!(n&2),skipSelf:!!(n&4)}}function Og(n){let t=[];for(let e=0;eArray.isArray(e)?Zc(e,t):t(e))}function Bg(n,t,e){t>=n.length?n.push(e):n.splice(t,0,e)}function Ta(n,t){return t>=n.length-1?n.pop():n.splice(t,1)[0]}function eC(n,t,e,o){let i=n.length;if(i==t)n.push(e,o);else if(i===1)n.push(o,n[0]),n[0]=e;else{for(i--,n.push(n[i-1],n[i]);i>t;){let r=i-2;n[i]=n[r],i--}n[t]=e,n[t+1]=o}}function Xc(n,t,e){let o=Or(n,t);return o>=0?n[o|1]=e:(o=~o,eC(n,o,t,e)),o}function Qc(n,t){let e=Or(n,t);if(e>=0)return n[e|1]}function Or(n,t){return xx(n,t,1)}function xx(n,t,e){let o=0,i=n.length>>e;for(;i!==o;){let r=o+(i-o>>1),a=n[r<t?i=r:o=r+1}return~(i<{e.push(a)};return Zc(t,a=>{let s=a;zc(s,r,[],o)&&(i||=[],i.push(s))}),i!==void 0&&nC(i,r),e}function nC(n,t){for(let e=0;e{t(r,o)})}}function zc(n,t,e,o){if(n=Mt(n),!n)return!1;let i=null,r=Mg(n),a=!r&&Lo(n);if(!r&&!a){let c=n.ngModule;if(r=Mg(c),r)i=c;else return!1}else{if(a&&!a.standalone)return!1;i=n}let s=o.has(i);if(a){if(s)return!1;if(o.add(i),a.dependencies){let c=typeof a.dependencies=="function"?a.dependencies():a.dependencies;for(let u of c)zc(u,t,e,o)}}else if(r){if(r.imports!=null&&!s){o.add(i);let u;Zc(r.imports,f=>{zc(f,t,e,o)&&(u||=[],u.push(f))}),u!==void 0&&nC(u,t)}if(!s){let u=No(i)||(()=>new i);t({provide:i,useFactory:u,deps:Ft},i),t({provide:jg,useValue:i,multi:!0},i),t({provide:Si,useValue:()=>Q(i),multi:!0},i)}let c=r.providers;if(c!=null&&!s){let u=n;$g(c,f=>{t(f,u)})}}else return!1;return i!==n&&n.providers!==void 0}function $g(n,t){for(let e of n)Ag(e)&&(e=e.\u0275providers),Array.isArray(e)?$g(e,t):t(e)}var wx=we({provide:String,useValue:we});function oC(n){return n!==null&&typeof n=="object"&&wx in n}function Sx(n){return!!(n&&n.useExisting)}function kx(n){return!!(n&&n.useFactory)}function yi(n){return typeof n=="function"}function iC(n){return!!n.useClass}var Ra=new $(""),Bc={},$h={},Cg;function vr(){return Cg===void 0&&(Cg=new br),Cg}var De=class{},xi=class extends De{parent;source;scopes;records=new Map;_ngOnDestroyHooks=new Set;_onDestroyHooks=[];get destroyed(){return this._destroyed}_destroyed=!1;injectorDefTypes;constructor(t,e,o,i){super(),this.parent=e,this.source=o,this.scopes=i,yg(t,a=>this.processProvider(a)),this.records.set(Aa,Mr(void 0,this)),i.has("environment")&&this.records.set(De,Mr(void 0,this));let r=this.records.get(Ra);r!=null&&typeof r.value=="string"&&this.scopes.add(r.value),this.injectorDefTypes=new Set(this.get(jg,Ft,{self:!0}))}retrieve(t,e){let o=vi(e)||0;try{return this.get(t,Oi,o)}catch(i){if(dr(i))return i;throw i}}destroy(){Oa(this),this._destroyed=!0;let t=Y(null);try{for(let o of this._ngOnDestroyHooks)o.ngOnDestroy();let e=this._onDestroyHooks;this._onDestroyHooks=[];for(let o of e)o()}finally{this.records.clear(),this._ngOnDestroyHooks.clear(),this.injectorDefTypes.clear(),Y(t)}}onDestroy(t){return Oa(this),this._onDestroyHooks.push(t),()=>this.removeOnDestroy(t)}runInContext(t){Oa(this);let e=$n(this),o=Rt(void 0),i;try{return t()}finally{$n(e),Rt(o)}}get(t,e=Oi,o){if(Oa(this),Object.hasOwn(t,zh))return t[zh](this);let i=vi(o),r,a=$n(this),s=Rt(void 0);try{if(!(i&4)){let u=this.records.get(t);if(u===void 0){let f=Ax(t)&&Ea(t);f&&this.injectableDefInScope(f)?u=Mr(vg(t),Bc):u=null,this.records.set(t,u)}if(u!=null)return this.hydrate(t,u,i)}let c=i&2?vr():this.parent;return e=i&8&&e===Oi?null:e,c.get(t,e)}catch(c){let u=Mx(c);throw u===-200||u===-201?new j(u,null):c}finally{Rt(s),$n(a)}}resolveInjectorInitializers(){let t=Y(null),e=$n(this),o=Rt(void 0),i;try{let r=this.get(Si,Ft,{self:!0});for(let a of r)a()}finally{$n(e),Rt(o),Y(t)}}toString(){return"R3Injector[...]"}processProvider(t){t=Mt(t);let e=yi(t)?t:Mt(t&&t.provide),o=Dx(t);if(!yi(t)&&t.multi===!0){let i=this.records.get(e);i||(i=Mr(void 0,Bc,!0),i.factory=()=>Og(i.multi),this.records.set(e,i)),e=t,i.multi.push(t)}this.records.set(e,o)}hydrate(t,e,o){let i=Y(null);try{if(e.value===$h)throw Lg("");return e.value===Bc&&(e.value=$h,e.value=e.factory(void 0,o)),typeof e.value=="object"&&e.value&&Tx(e.value)&&this._ngOnDestroyHooks.add(e.value),e.value}finally{Y(i)}}injectableDefInScope(t){if(!t.providedIn)return!1;let e=Mt(t.providedIn);return typeof e=="string"?e==="any"||this.scopes.has(e):this.injectorDefTypes.has(e)}removeOnDestroy(t){let e=this._onDestroyHooks.indexOf(t);e!==-1&&this._onDestroyHooks.splice(e,1)}};function vg(n){let t=Ea(n),e=t!==null?t.factory:No(n);if(e!==null)return e;if(n instanceof $)throw new j(-204,!1);if(n instanceof Function)return Ex(n);throw new j(-204,!1)}function Ex(n){if(n.length>0)throw new j(-204,!1);let e=_x(n);return e!==null?()=>e.factory(n):()=>new n}function Dx(n){if(oC(n))return Mr(void 0,n.useValue);{let t=Hg(n);return Mr(t,Bc)}}function Hg(n,t,e){let o;if(yi(n)){let i=Mt(n);return No(i)||vg(i)}else if(oC(n))o=()=>Mt(n.useValue);else if(kx(n))o=()=>n.useFactory(...Og(n.deps||[]));else if(Sx(n))o=(i,r)=>Q(Mt(n.useExisting),r!==void 0&&r&8?8:void 0);else{let i=Mt(n&&(n.useClass||n.provide));if(Ix(n))o=()=>new i(...Og(n.deps));else return No(i)||vg(i)}return o}function Oa(n){if(n.destroyed)throw new j(-205,!1)}function Mr(n,t,e=!1){return{factory:n,value:t,multi:e?[]:void 0}}function Ix(n){return!!n.deps}function Tx(n){return n!==null&&typeof n=="object"&&typeof n.ngOnDestroy=="function"}function Ax(n){return typeof n=="function"||typeof n=="object"&&n.ngMetadataName==="InjectionToken"}function yg(n,t){for(let e of n)Array.isArray(e)?yg(e,t):e&&Ag(e)?yg(e.\u0275providers,t):t(e)}function st(n,t){let e;n instanceof xi?(Oa(n),e=n):e=new Pg(n);let o,i=$n(e),r=Rt(void 0);try{return t()}finally{$n(i),Rt(r)}}function rC(){return Xh()!==void 0||sc()!=null}var kn=0,K=1,ne=2,rt=3,gn=4,jt=5,yr=6,xr=7,Ye=8,Un=9,En=10,Le=11,wr=12,Ug=13,jo=14,zt=15,zo=16,ki=17,Wn=18,Gn=19,Wg=20,po=21,Jc=22,fo=23,Jt=24,Ei=25,qn=26,Ke=27,aC=1,Gg=6,Di=7,Fa=8,Ii=9,Ge=10;function _o(n){return Array.isArray(n)&&typeof n[aC]=="object"}function pn(n){return Array.isArray(n)&&n[aC]===!0}function qg(n){return(n.flags&4)!==0}function ho(n){return n.componentOffset>-1}function Na(n){return(n.flags&1)===1}function Yn(n){return!!n.template}function Sr(n){return(n[ne]&512)!==0}function Ti(n){return(n[ne]&256)===256}var it=(function(n){return n[n.NONE=0]="NONE",n[n.HTML=1]="HTML",n[n.STYLE=2]="STYLE",n[n.SCRIPT=3]="SCRIPT",n[n.URL=4]="URL",n[n.RESOURCE_URL=5]="RESOURCE_URL",n[n.ATTRIBUTE_NO_BINDING=6]="ATTRIBUTE_NO_BINDING",n})(it||{}),va,Pr="svg",el="math",sC="",Hh="*",xg=()=>Object.create(null);function Rx(){return va||(va=xg(),Fo(it.HTML,void 0,[["iframe",["srcdoc"]],["*",["innerHTML","outerHTML"]]]),Fo(it.STYLE,void 0,[["*",["style"]]]),Fo(it.URL,void 0,[["*",["formAction"]],["area",["href"]],["a",["href","xlink:href"]],["form",["action"]],["img",["src"]],["video",["src"]]]),Fo(it.URL,el,[["*",["href","xlink:href"]]]),Fo(it.RESOURCE_URL,void 0,[["base",["href"]],["embed",["src"]],["frame",["src"]],["iframe",["src"]],["link",["href"]],["object",["codebase","data"]]]),Fo(it.URL,Pr,[["a",["href","xlink:href"]]]),Fo(it.ATTRIBUTE_NO_BINDING,Pr,[["animate",["attributeName","values","to","from"]],["set",["to","attributeName"]],["animateMotion",["attributeName"]],["animateTransform",["attributeName"]]]),Fo(it.ATTRIBUTE_NO_BINDING,void 0,[["unknown",["attributeName","values","to","from","sandbox","allow","allowFullscreen","referrerPolicy","csp","fetchPriority","credentialless"]],["iframe",["sandbox","allow","allowFullscreen","referrerPolicy","csp","fetchPriority","credentialless"]]]),va)}function Fo(n,t,e){let o=t??sC;for(let[i,r]of e){let a=i.toLowerCase();for(let s of r){let c=s.toLowerCase(),u=va[c]??=xg(),f=u[o]??=xg();f[a]=n}}}function cC(n,t,e){let i=Rx()[t.toLowerCase()];if(!i)return it.NONE;let r=n.toLowerCase(),a;if(e){let s=i[e];s&&(a=s[r]??s[Hh])}if(a===void 0){let s=i[sC];s&&(a=s[r]??s[Hh])}return a??it.NONE}function bt(n){for(;Array.isArray(n);)n=n[kn];return n}function Yg(n,t){return bt(t[n])}function en(n,t){return bt(t[n.index])}function tl(n,t){return n.data[t]}function nl(n,t){return n[t]}function Kg(n,t,e,o){e>=n.data.length&&(n.data[e]=null,n.blueprint[e]=null),t[e]=o}function fn(n,t){let e=t[n];return _o(e)?e:e[kn]}function lC(n){return(n[ne]&4)===4}function ol(n){return(n[ne]&128)===128}function dC(n){return pn(n[rt])}function mn(n,t){return t==null?null:n[t]}function Zg(n){n[ki]=0}function Xg(n){n[ne]&1024||(n[ne]|=1024,ol(n)&&Ai(n))}function uC(n,t){for(;n>0;)t=t[jo],n--;return t}function La(n){return!!(n[ne]&9216||n[Jt]?.dirty)}function il(n){n[En].changeDetectionScheduler?.notify(8),n[ne]&64&&(n[ne]|=1024),La(n)&&Ai(n)}function Ai(n){n[En].changeDetectionScheduler?.notify(0);let t=mo(n);for(;t!==null&&!(t[ne]&8192||(t[ne]|=8192,!ol(t)));)t=mo(t)}function rl(n,t){if(Ti(n))throw new j(911,!1);n[po]===null&&(n[po]=[]),n[po].push(t)}function gC(n,t){if(n[po]===null)return;let e=n[po].indexOf(t);e!==-1&&n[po].splice(e,1)}function mo(n){let t=n[rt];return pn(t)?t[rt]:t}function Qg(n){return n[xr]??=[]}function Jg(n){return n.cleanup??=[]}function pC(n,t,e,o){let i=Qg(t);i.push(e),n.firstCreatePass&&Jg(n).push(o,i.length-1)}var ge={lFrame:wC(null),bindingsEnabled:!0,skipHydrationRootTNode:null};var wg=!1;function fC(){return ge.lFrame.elementDepthCount}function mC(){ge.lFrame.elementDepthCount++}function ep(){ge.lFrame.elementDepthCount--}function tp(){return ge.bindingsEnabled}function _C(){return ge.skipHydrationRootTNode!==null}function np(n){return ge.skipHydrationRootTNode===n}function op(){ge.skipHydrationRootTNode=null}function Z(){return ge.lFrame.lView}function Ue(){return ge.lFrame.tView}function S(n){return ge.lFrame.contextLView=n,n[Ye]}function k(n){return ge.lFrame.contextLView=null,n}function ct(){let n=ip();for(;n!==null&&n.type===64;)n=n.parent;return n}function ip(){return ge.lFrame.currentTNode}function hC(){let n=ge.lFrame,t=n.currentTNode;return n.isParent?t:t.parent}function kr(n,t){let e=ge.lFrame;e.currentTNode=n,e.isParent=t}function rp(){return ge.lFrame.isParent}function CC(){ge.lFrame.isParent=!1}function MC(){return ge.lFrame.contextLView}function ap(){return wg}function xa(n){let t=wg;return wg=n,t}function Er(){let n=ge.lFrame,t=n.bindingRootIndex;return t===-1&&(t=n.bindingRootIndex=n.tView.bindingStartIndex),t}function sp(){return ge.lFrame.bindingIndex}function bC(n){return ge.lFrame.bindingIndex=n}function Co(){return ge.lFrame.bindingIndex++}function Va(n){let t=ge.lFrame,e=t.bindingIndex;return t.bindingIndex=t.bindingIndex+n,e}function PC(){return ge.lFrame.inI18n}function OC(n,t){let e=ge.lFrame;e.bindingIndex=e.bindingRootIndex=n,al(t)}function vC(){return ge.lFrame.currentDirectiveIndex}function al(n){ge.lFrame.currentDirectiveIndex=n}function yC(n){let t=ge.lFrame.currentDirectiveIndex;return t===-1?null:n[t]}function cp(){return ge.lFrame.currentQueryIndex}function sl(n){ge.lFrame.currentQueryIndex=n}function Fx(n){let t=n[K];return t.type===2?t.declTNode:t.type===1?n[jt]:null}function lp(n,t,e){if(e&4){let i=t,r=n;for(;i=i.parent,i===null&&!(e&1);)if(i=Fx(r),i===null||(r=r[jo],i.type&10))break;if(i===null)return!1;t=i,n=r}let o=ge.lFrame=xC();return o.currentTNode=t,o.lView=n,!0}function cl(n){let t=xC(),e=n[K];ge.lFrame=t,t.currentTNode=e.firstChild,t.lView=n,t.tView=e,t.contextLView=n,t.bindingIndex=e.bindingStartIndex,t.inI18n=!1}function xC(){let n=ge.lFrame,t=n===null?null:n.child;return t===null?wC(n):t}function wC(n){let t={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:n,child:null,inI18n:!1};return n!==null&&(n.child=t),t}function SC(){let n=ge.lFrame;return ge.lFrame=n.parent,n.currentTNode=null,n.lView=null,n}var dp=SC;function ll(){let n=SC();n.isParent=!0,n.tView=null,n.selectedIndex=-1,n.contextLView=null,n.elementDepthCount=0,n.currentDirectiveIndex=-1,n.currentNamespace=null,n.bindingRootIndex=-1,n.bindingIndex=-1,n.currentQueryIndex=0}function kC(n){return(ge.lFrame.contextLView=uC(n,ge.lFrame.contextLView))[Ye]}function _n(){return ge.lFrame.selectedIndex}function $o(n){ge.lFrame.selectedIndex=n}function Ri(){let n=ge.lFrame;return tl(n.tView,n.selectedIndex)}function Fi(){ge.lFrame.currentNamespace=Pr}function dl(){Nx()}function Nx(){ge.lFrame.currentNamespace=null}function up(){return ge.lFrame.currentNamespace}var EC=!0;function ul(){return EC}function gl(n){EC=n}function Sg(n,t=null,e=null,o){let i=gp(n,t,e,o);return i.resolveInjectorInitializers(),i}function gp(n,t=null,e=null,o,i=new Set){let r=[e||Ft,tC(n)],a;return new xi(r,t||vr(),a||null,i)}var Ne=class n{static THROW_IF_NOT_FOUND=Oi;static NULL=new br;static create(t,e){if(Array.isArray(t))return Sg({name:""},e,t,"");{let o=t.name??"";return Sg({name:o},t.parent,t.providers,o)}}static \u0275prov=ee({token:n,providedIn:"any",factory:()=>Q(Aa)});static __NG_ELEMENT_ID__=-1},Me=new $(""),Te=class{static __NG_ELEMENT_ID__=Lx;static __NG_ENV_ID__=t=>t},$c=class extends Te{_lView;constructor(t){super(),this._lView=t}get destroyed(){return Ti(this._lView)}onDestroy(t){let e=this._lView;return rl(e,t),()=>gC(e,t)}};function Lx(){return new $c(Z())}var pp=!1,DC=new $(""),Kn=(()=>{class n{taskId=0;pendingTasks=new Set;destroyed=!1;pendingTask=new ht(!1);debugTaskTracker=v(DC,{optional:!0});get hasPendingTasks(){return this.destroyed?!1:this.pendingTask.value}get hasPendingTasksObservable(){return this.destroyed?new te(e=>{e.next(!1),e.complete()}):this.pendingTask}add(){!this.hasPendingTasks&&!this.destroyed&&this.pendingTask.next(!0);let e=this.taskId++;return this.pendingTasks.add(e),this.debugTaskTracker?.add(e),e}has(e){return this.pendingTasks.has(e)}remove(e){this.pendingTasks.delete(e),this.debugTaskTracker?.remove(e),this.pendingTasks.size===0&&this.hasPendingTasks&&this.pendingTask.next(!1)}ngOnDestroy(){this.pendingTasks.clear(),this.hasPendingTasks&&this.pendingTask.next(!1),this.destroyed=!0,this.pendingTask.unsubscribe()}static \u0275prov=ee({token:n,providedIn:"root",factory:()=>new n})}return n})(),kg=class extends fe{__isAsync;destroyRef=void 0;pendingTasks=void 0;constructor(t=!1){super(),this.__isAsync=t,rC()&&(this.destroyRef=v(Te,{optional:!0})??void 0,this.pendingTasks=v(Kn,{optional:!0})??void 0)}emit(t){let e=Y(null);try{super.next(t)}finally{Y(e)}}subscribe(t,e,o){let i=t,r=e||(()=>null),a=o;if(t&&typeof t=="object"){let c=t;i=c.next?.bind(c),r=c.error?.bind(c),a=c.complete?.bind(c)}this.__isAsync&&(r=this.wrapInTimeout(r),i&&(i=this.wrapInTimeout(i)),a&&(a=this.wrapInTimeout(a)));let s=super.subscribe({next:i,error:r,complete:a});return t instanceof Oe&&t.add(s),s}wrapInTimeout(t){return e=>{let o=this.pendingTasks?.add();setTimeout(()=>{try{t(e)}finally{o!==void 0&&this.pendingTasks?.remove(o)}})}}},ve=kg;function Hc(...n){}function fp(n){let t,e;function o(){n=Hc;try{e!==void 0&&typeof cancelAnimationFrame=="function"&&cancelAnimationFrame(e),t!==void 0&&clearTimeout(t)}catch(i){}}return t=setTimeout(()=>{n(),o()}),typeof requestAnimationFrame=="function"&&(e=requestAnimationFrame(()=>{n(),o()})),()=>o()}function IC(n){return queueMicrotask(()=>n()),()=>{n=Hc}}var mp="isAngularZone",wa=mp+"_ID",Vx=0,ce=class n{hasPendingMacrotasks=!1;hasPendingMicrotasks=!1;isStable=!0;onUnstable=new ve(!1);onMicrotaskEmpty=new ve(!1);onStable=new ve(!1);onError=new ve(!1);constructor(t){let{enableLongStackTrace:e=!1,shouldCoalesceEventChangeDetection:o=!1,shouldCoalesceRunChangeDetection:i=!1,scheduleInRootZone:r=pp}=t;if(typeof Zone>"u")throw new j(908,!1);Zone.assertZonePatched();let a=this;a._nesting=0,a._outer=a._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(a._inner=a._inner.fork(new Zone.TaskTrackingZoneSpec)),e&&Zone.longStackTraceZoneSpec&&(a._inner=a._inner.fork(Zone.longStackTraceZoneSpec)),a.shouldCoalesceEventChangeDetection=!i&&o,a.shouldCoalesceRunChangeDetection=i,a.callbackScheduled=!1,a.scheduleInRootZone=r,zx(a)}static isInAngularZone(){return typeof Zone<"u"&&Zone.current.get(mp)===!0}static assertInAngularZone(){if(!n.isInAngularZone())throw new j(909,!1)}static assertNotInAngularZone(){if(n.isInAngularZone())throw new j(909,!1)}run(t,e,o){return this._inner.run(t,e,o)}runTask(t,e,o,i){let r=this._inner,a=r.scheduleEventTask("NgZoneEvent: "+i,t,Bx,Hc,Hc);try{return r.runTask(a,e,o)}finally{r.cancelTask(a)}}runGuarded(t,e,o){return this._inner.runGuarded(t,e,o)}runOutsideAngular(t){return this._outer.run(t)}},Bx={};function _p(n){if(n._nesting==0&&!n.hasPendingMicrotasks&&!n.isStable)try{n._nesting++,n.onMicrotaskEmpty.emit(null)}finally{if(n._nesting--,!n.hasPendingMicrotasks)try{n.runOutsideAngular(()=>n.onStable.emit(null))}finally{n.isStable=!0}}}function jx(n){if(n.isCheckStableRunning||n.callbackScheduled)return;n.callbackScheduled=!0;function t(){fp(()=>{n.callbackScheduled=!1,Eg(n),n.isCheckStableRunning=!0,_p(n),n.isCheckStableRunning=!1})}n.scheduleInRootZone?Zone.root.run(()=>{t()}):n._outer.run(()=>{t()}),Eg(n)}function zx(n){let t=()=>{jx(n)},e=Vx++;n._inner=n._inner.fork({name:"angular",properties:{[mp]:!0,[wa]:e,[wa+e]:!0},onInvokeTask:(o,i,r,a,s,c)=>{if($x(c))return o.invokeTask(r,a,s,c);try{return Uh(n),o.invokeTask(r,a,s,c)}finally{(n.shouldCoalesceEventChangeDetection&&a.type==="eventTask"||n.shouldCoalesceRunChangeDetection)&&t(),Wh(n)}},onInvoke:(o,i,r,a,s,c,u)=>{try{return Uh(n),o.invoke(r,a,s,c,u)}finally{n.shouldCoalesceRunChangeDetection&&!n.callbackScheduled&&!Hx(c)&&t(),Wh(n)}},onHasTask:(o,i,r,a)=>{o.hasTask(r,a),i===r&&(a.change=="microTask"?(n._hasPendingMicrotasks=a.microTask,Eg(n),_p(n)):a.change=="macroTask"&&(n.hasPendingMacrotasks=a.macroTask))},onHandleError:(o,i,r,a)=>(o.handleError(r,a),n.runOutsideAngular(()=>n.onError.emit(a)),!1)})}function Eg(n){n._hasPendingMicrotasks||(n.shouldCoalesceEventChangeDetection||n.shouldCoalesceRunChangeDetection)&&n.callbackScheduled===!0?n.hasPendingMicrotasks=!0:n.hasPendingMicrotasks=!1}function Uh(n){n._nesting++,n.isStable&&(n.isStable=!1,n.onUnstable.emit(null))}function Wh(n){n._nesting--,_p(n)}var Sa=class{hasPendingMicrotasks=!1;hasPendingMacrotasks=!1;isStable=!0;onUnstable=new ve;onMicrotaskEmpty=new ve;onStable=new ve;onError=new ve;run(t,e,o){return t.apply(e,o)}runGuarded(t,e,o){return t.apply(e,o)}runOutsideAngular(t){return t()}runTask(t,e,o,i){return t.apply(e,o)}};function $x(n){return TC(n,"__ignore_ng_zone__")}function Hx(n){return TC(n,"__scheduler_tick__")}function TC(n,t){return!Array.isArray(n)||n.length!==1?!1:n[0]?.data?.[t]===!0}var un=class{_console=console;handleError(t){this._console.error("ERROR",t)}},tn=new $("",{factory:()=>{let n=v(ce),t=v(De),e;return o=>{n.runOutsideAngular(()=>{t.destroyed&&!e?setTimeout(()=>{throw o}):(e??=t.get(un),e.handleError(o))})}}}),AC={provide:Si,useValue:()=>{let n=v(un,{optional:!0})},multi:!0};function w(n,t){let[e,o,i]=Qu(n,t?.equal),r=e,a=r[lt];return r.set=o,r.update=i,r.asReadonly=pl.bind(r),r}function pl(){let n=this[lt];if(n.readonlyFn===void 0){let t=()=>this();t[lt]=n,n.readonlyFn=t}return n.readonlyFn}var Ni=new $("",{factory:()=>Ux}),Ux="ng";var fl=new $(""),Li=new $("",{providedIn:"platform",factory:()=>"unknown"}),hp=new $(""),Ba=new $("",{factory:()=>v(Me).body?.querySelector("[ngCspNonce]")?.getAttribute("ngCspNonce")||null});var ja=(()=>{class n{view;node;constructor(e,o){this.view=e,this.node=o}static __NG_ELEMENT_ID__=Wx}return n})();function Wx(){return new ja(Z(),ct())}var Hn=class{},Dr=new $("",{factory:()=>!0});var ml=new $(""),_l=(()=>{class n{static \u0275prov=ee({token:n,providedIn:"root",factory:()=>new Dg})}return n})(),Dg=class{dirtyEffectCount=0;queues=new Map;add(t){this.enqueue(t),this.schedule(t)}schedule(t){t.dirty&&this.dirtyEffectCount++}remove(t){let e=t.zone,o=this.queues.get(e);o.has(t)&&(o.delete(t),t.dirty&&this.dirtyEffectCount--)}enqueue(t){let e=t.zone;this.queues.has(e)||this.queues.set(e,new Set);let o=this.queues.get(e);o.has(t)||o.add(t)}flush(){for(;this.dirtyEffectCount>0;){let t=!1;for(let[e,o]of this.queues)e===null?t||=this.flushQueue(o):t||=e.run(()=>this.flushQueue(o));t||(this.dirtyEffectCount=0)}}flushQueue(t){let e=!1;for(let o of t)o.dirty&&(this.dirtyEffectCount--,e=!0,o.run());return e}},Uc=class{[lt];constructor(t){this[lt]=t}destroy(){this[lt].destroy()}};function Ze(n,t){let e=t?.injector??v(Ne),o=t?.manualCleanup!==!0?e.get(Te):null,i,r=e.get(ja,null,{optional:!0}),a=e.get(Hn);return r!==null?(i=Yx(r.view,a,n),o instanceof $c&&o._lView===r.view&&(o=null)):i=Kx(n,e.get(_l),a),i.injector=e,o!==null&&(i.onDestroyFns=[o.onDestroy(()=>i.destroy())]),new Uc(i)}var RC=F(x({},Ju),{cleanupFns:void 0,zone:null,onDestroyFns:null,run(){let n=xa(!1);try{eg(this)}finally{xa(n)}},cleanup(){if(!this.cleanupFns?.length)return;let n=Y(null);try{for(;this.cleanupFns.length;)this.cleanupFns.pop()()}finally{this.cleanupFns=[],Y(n)}}}),Gx=F(x({},RC),{consumerMarkedDirty(){this.scheduler.schedule(this),this.notifier.notify(12)},destroy(){if(fi(this),this.onDestroyFns!==null)for(let n of this.onDestroyFns)n();this.cleanup(),this.scheduler.remove(this)}}),qx=F(x({},RC),{consumerMarkedDirty(){this.view[ne]|=8192,Ai(this.view),this.notifier.notify(13)},destroy(){if(fi(this),this.onDestroyFns!==null)for(let n of this.onDestroyFns)n();this.cleanup(),this.view[fo]?.delete(this)}});function Yx(n,t,e){let o=Object.create(qx);return o.view=n,o.zone=typeof Zone<"u"?Zone.current:null,o.notifier=t,o.fn=FC(o,e),n[fo]??=new Set,n[fo].add(o),o.consumerMarkedDirty(o),o}function Kx(n,t,e){let o=Object.create(Gx);return o.fn=FC(o,n),o.scheduler=t,o.notifier=e,o.zone=typeof Zone<"u"?Zone.current:null,o.scheduler.add(o),o.notifier.notify(12),o}function FC(n,t){return()=>{t(e=>(n.cleanupFns??=[]).push(e))}}function za(n){return typeof n=="function"&&n[lt]!==void 0}function hl(n){return za(n)&&typeof n.set=="function"}var $a=(()=>{class n{internalPendingTasks=v(Kn);scheduler=v(Hn);errorHandler=v(tn);add(){let e=this.internalPendingTasks.add();return()=>{this.internalPendingTasks.has(e)&&(this.scheduler.notify(11),this.internalPendingTasks.remove(e))}}run(e){let o=this.add();try{e().catch(this.errorHandler).finally(o)}catch(i){this.errorHandler(i),o()}}static \u0275prov=ee({token:n,providedIn:"root",factory:()=>new n})}return n})();function es(n){return{toString:n}.toString()}var be=(function(n){return n[n.TemplateCreateStart=0]="TemplateCreateStart",n[n.TemplateCreateEnd=1]="TemplateCreateEnd",n[n.TemplateUpdateStart=2]="TemplateUpdateStart",n[n.TemplateUpdateEnd=3]="TemplateUpdateEnd",n[n.LifecycleHookStart=4]="LifecycleHookStart",n[n.LifecycleHookEnd=5]="LifecycleHookEnd",n[n.OutputStart=6]="OutputStart",n[n.OutputEnd=7]="OutputEnd",n[n.BootstrapApplicationStart=8]="BootstrapApplicationStart",n[n.BootstrapApplicationEnd=9]="BootstrapApplicationEnd",n[n.BootstrapComponentStart=10]="BootstrapComponentStart",n[n.BootstrapComponentEnd=11]="BootstrapComponentEnd",n[n.ChangeDetectionStart=12]="ChangeDetectionStart",n[n.ChangeDetectionEnd=13]="ChangeDetectionEnd",n[n.ChangeDetectionSyncStart=14]="ChangeDetectionSyncStart",n[n.ChangeDetectionSyncEnd=15]="ChangeDetectionSyncEnd",n[n.AfterRenderHooksStart=16]="AfterRenderHooksStart",n[n.AfterRenderHooksEnd=17]="AfterRenderHooksEnd",n[n.ComponentStart=18]="ComponentStart",n[n.ComponentEnd=19]="ComponentEnd",n[n.DeferBlockStateStart=20]="DeferBlockStateStart",n[n.DeferBlockStateEnd=21]="DeferBlockStateEnd",n[n.DynamicComponentStart=22]="DynamicComponentStart",n[n.DynamicComponentEnd=23]="DynamicComponentEnd",n[n.HostBindingsUpdateStart=24]="HostBindingsUpdateStart",n[n.HostBindingsUpdateEnd=25]="HostBindingsUpdateEnd",n})(be||{}),wl=class{previousValue;currentValue;firstChange;constructor(t,e,o){this.previousValue=t,this.currentValue=e,this.firstChange=o}isFirstChange(){return this.firstChange}};function O0(n,t,e,o){t!==null?t.applyValueToInputSignal(t,o):n[e]=o}var v0=null,nn=(()=>{v0=NC;let n=()=>NC;return n.ngInherit=!0,n})();function i1(){return v0}function NC(n){return n.type.prototype.ngOnChanges&&(n.setInput=a1),r1}function r1(){let n=y0(this),t=n?.current;if(t){let e=n.previous;if(e===Vo)n.previous=t;else for(let o in t)e[o]=t[o];n.current=null,this.ngOnChanges(t)}}function a1(n,t,e,o,i){let r=this.declaredInputs[o],a=y0(n)||s1(n,{previous:Vo,current:null}),s=a.current||(a.current={}),c=a.previous,u=c[r];s[r]=new wl(u&&u.currentValue,e,c===Vo),O0(n,t,i,e)}var kp="__ngSimpleChanges__";function y0(n){return Object.hasOwn(n,kp)&&n[kp]||null}function s1(n,t){return n[kp]=t}var LC=[];var Se=function(n,t=null,e){for(let o=0;o=o)break}else t[c]<0&&(n[ki]+=65536),(s>14>16&&(n[ne]&3)===t&&(n[ne]+=16384,VC(s,r)):VC(s,r)}var Tr=-1,ji=class{factory;name;injectImpl;resolving=!1;canSeeViewProviders;multi;componentProviders;index;providerFactory;constructor(t,e,o,i){this.factory=t,this.name=i,this.canSeeViewProviders=e,this.injectImpl=o}};function d1(n){return(n.flags&8)!==0}function u1(n){return(n.flags&16)!==0}function g1(n,t,e){let o=0;for(;ot){a=r-1;break}}}for(;r>16}function kl(n,t){let e=f1(n),o=t;for(;e>0;)o=o[jo],e--;return o}var Ep=!0;function El(n){let t=Ep;return Ep=n,t}var m1=256,E0=m1-1,D0=5,_1=0,Zn={};function h1(n,t,e){let o;typeof e=="string"?o=e.charCodeAt(0)||0:Object.hasOwn(e,wi)&&(o=e[wi]),o==null&&(o=e[wi]=_1++);let i=o&E0,r=1<>D0)]|=r}function Dl(n,t){let e=I0(n,t);if(e!==-1)return e;let o=t[K];o.firstCreatePass&&(n.injectorIndex=t.length,Mp(o.data,n),Mp(t,null),Mp(o.blueprint,null));let i=af(n,t),r=n.injectorIndex;if(k0(i)){let a=Sl(i),s=kl(i,t),c=s[K].data;for(let u=0;u<8;u++)t[r+u]=s[a+u]|c[a+u]}return t[r+8]=i,r}function Mp(n,t){n.push(0,0,0,0,0,0,0,0,t)}function I0(n,t){return n.injectorIndex===-1||n.parent&&n.parent.injectorIndex===n.injectorIndex||t[n.injectorIndex+8]===null?-1:n.injectorIndex}function af(n,t){if(n.parent&&n.parent.injectorIndex!==-1)return n.parent.injectorIndex;let e=0,o=null,i=t;for(;i!==null;){if(o=N0(i),o===null)return Tr;if(e++,i=i[jo],o.injectorIndex!==-1)return o.injectorIndex|e<<16}return Tr}function Dp(n,t,e){h1(n,t,e)}function C1(n,t){if(t==="class")return n.classes;if(t==="style")return n.styles;let e=n.attrs;if(e){let o=e.length,i=0;for(;i>20,_=o?s:s+f,h=i?s+f:u;for(let C=_;C=c&&O.type===e)return C}if(i){let C=a[c];if(C&&Yn(C)&&C.type===e)return c}return null}function Ya(n,t,e,o,i){let r=n[e],a=t.data;if(r instanceof ji){let s=r;if(s.resolving)throw Lg("");let c=El(s.canSeeViewProviders);s.resolving=!0;let u=a[e].type||a[e],f,_=s.injectImpl?Rt(s.injectImpl):null,h=lp(n,o,0);try{r=n[e]=s.factory(void 0,i,a,n,o),t.firstCreatePass&&e>=o.directiveStart&&c1(e,a[e],t)}finally{_!==null&&Rt(_),El(c),s.resolving=!1,dp()}}return r}function b1(n){if(typeof n=="string")return n.charCodeAt(0)||0;let t=Object.hasOwn(n,wi)?n[wi]:void 0;return typeof t=="number"?t>=0?t&E0:P1:t}function jC(n,t,e){let o=1<>D0)]&o)}function zC(n,t){return!(n&2)&&!(n&1&&t)}var Ho=class{_tNode;_lView;constructor(t,e){this._tNode=t,this._lView=e}get(t,e,o){return R0(this._tNode,this._lView,t,vi(o),e)}};function P1(){return new Ho(ct(),Z())}function on(n){return es(()=>{let t=n.prototype.constructor,e=t[ya]||Ip(t),o=Object.prototype,i=Object.getPrototypeOf(n.prototype).constructor;for(;i&&i!==o;){let r=i[ya]||Ip(i);if(r&&r!==e)return r;i=Object.getPrototypeOf(i)}return r=>new r})}function Ip(n){return Ig(n)?()=>{let t=Ip(Mt(n));return t&&t()}:No(n)}function O1(n,t,e,o,i){let r=n,a=t;for(;r!==null&&a!==null&&a[ne]&2048&&!Sr(a);){let s=F0(r,a,e,o|2,Zn);if(s!==Zn)return s;let c=r.parent;if(!c){let u=a[Wg];if(u){let f=u.get(e,Zn,o&-5);if(f!==Zn)return f}c=N0(a),a=a[jo]}r=c}return i}function N0(n){let t=n[K],e=t.type;return e===2?t.declTNode:e===1?n[jt]:null}function ts(n){return C1(ct(),n)}function oe(n){return{token:n.token,providedIn:n.autoProvided===!1?null:"root",factory:n.factory,value:void 0}}function v1(){return Lr(ct(),Z())}function Lr(n,t){return new Be(en(n,t))}var Be=(()=>{class n{nativeElement;constructor(e){this.nativeElement=e}static __NG_ELEMENT_ID__=v1}return n})();function y1(n){return n instanceof Be?n.nativeElement:n}function x1(){return this._results[Symbol.iterator]()}var Il=class{_emitDistinctChangesOnly;dirty=!0;_onDirty=void 0;_results=[];_changesDetected=!1;_changes=void 0;length=0;first=void 0;last=void 0;get changes(){return this._changes??=new fe}constructor(t=!1){this._emitDistinctChangesOnly=t}get(t){return this._results[t]}map(t){return this._results.map(t)}filter(t){return this._results.filter(t)}find(t){return this._results.find(t)}reduce(t,e){return this._results.reduce(t,e)}forEach(t){this._results.forEach(t)}some(t){return this._results.some(t)}toArray(){return this._results.slice()}toString(){return this._results.toString()}reset(t,e){this.dirty=!1;let o=Jh(t);(this._changesDetected=!Qh(this._results,o,e))&&(this._results=o,this.length=o.length,this.last=o[this.length-1],this.first=o[0])}notifyOnChanges(){this._changes!==void 0&&(this._changesDetected||!this._emitDistinctChangesOnly)&&this._changes.next(this)}onDirty(t){this._onDirty=t}setDirty(){this.dirty=!0,this._onDirty?.()}destroy(){this._changes!==void 0&&(this._changes.complete(),this._changes.unsubscribe())}[Symbol.iterator]=x1};function L0(n){return(n.flags&128)===128}var sf=(function(n){return n[n.OnPush=0]="OnPush",n[n.Eager=1]="Eager",n[n.Default=1]="Default",n})(sf||{}),V0=new Map,w1=0;function S1(){return w1++}function k1(n){V0.set(n[Gn],n)}function Tp(n){V0.delete(n[Gn])}var $C="__ngContext__";function Rr(n,t){_o(t)?(n[$C]=t[Gn],k1(t)):n[$C]=t}function B0(n){return z0(n[wr])}function j0(n){return z0(n[gn])}function z0(n){for(;n!==null&&!pn(n);)n=n[gn];return n}var Ap;function cf(n){Ap=n}function lf(){if(Ap!==void 0)return Ap;if(typeof document<"u")return document;throw new j(210,!1)}var $0="r";var H0="di";var U0=!1,W0=new $("",{factory:()=>U0});var HC=new WeakMap;function E1(n,t){if(n==null||typeof n!="object")return;let e=HC.get(n);e||(e=new WeakSet,HC.set(n,e)),e.add(t)}var D1=(n,t,e,o)=>{};function I1(n,t,e,o){D1(n,t,e,o)}function df(n){return(n.flags&32)===32}var T1=()=>null;function G0(n,t,e=!1){return T1(n,t,e)}function q0(n,t){let e=n.contentQueries;if(e!==null){let o=Y(null);try{for(let i=0;in,createScript:n=>n,createScriptURL:n=>n})}catch(n){}return Cl}function Gl(n){return R1()?.createHTML(n)||n}var Ml;function K0(){if(Ml===void 0&&(Ml=null,Sn.trustedTypes))try{Ml=Sn.trustedTypes.createPolicy("angular#unsafe-bypass",{createHTML:n=>n,createScript:n=>n,createScriptURL:n=>n})}catch(n){}return Ml}function UC(n){return K0()?.createHTML(n)||n}function WC(n){return K0()?.createScriptURL(n)||n}var Tl=class{changingThisBreaksApplicationSecurity;constructor(t){this.changingThisBreaksApplicationSecurity=t}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity} (see ${Wc})`}};function Uo(n){return n instanceof Tl?n.changingThisBreaksApplicationSecurity:n}function ql(n,t){let e=Z0(n);if(e!=null&&e!==t){if(e==="ResourceURL"&&t==="URL")return!0;throw new Error(`Required a safe ${t}, got a ${e} (see ${Wc})`)}return e===t}function Z0(n){return n instanceof Tl&&n.getTypeName()||null}function F1(n){let t=new Np(n);return N1()?new Fp(t):t}var Fp=class{inertDocumentHelper;constructor(t){this.inertDocumentHelper=t}getInertBodyElement(t){t=""+t;try{let e=new window.DOMParser().parseFromString(Gl(t),"text/html").body;return e===null?this.inertDocumentHelper.getInertBodyElement(t):(e.firstChild?.remove(),e)}catch(e){return null}}},Np=class{defaultDoc;inertDocument;constructor(t){this.defaultDoc=t,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert")}getInertBodyElement(t){let e=this.inertDocument.createElement("template");return e.innerHTML=Gl(t),e}};function N1(){try{return!!new window.DOMParser().parseFromString(Gl(""),"text/html")}catch(n){return!1}}var L1=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:\/?#]*(?:[\/?#]|$))/i;function uf(n){return n=String(n),n.match(L1)?n:"unsafe:"+n}function bo(n){let t=Object.create(null);for(let e of n.split(","))t[e]=!0;return t}function ns(...n){let t=Object.create(null);for(let e of n)for(let o in e)Object.hasOwn(e,o)&&(t[o]=!0);return t}var X0=bo("area,br,col,hr,img,wbr"),Q0=bo("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),J0=bo("rp,rt"),V1=ns(J0,Q0),B1=ns(Q0,bo("address,article,aside,blockquote,caption,center,del,details,dialog,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,main,map,menu,nav,ol,pre,section,summary,table,ul")),j1=ns(J0,bo("a,abbr,acronym,audio,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,picture,q,ruby,rp,rt,s,samp,small,source,span,strike,strong,sub,sup,time,track,tt,u,var,video")),GC=ns(X0,B1,j1,V1),eM=bo("background,cite,href,itemtype,longdesc,poster,src,xlink:href"),z1=bo("abbr,accesskey,align,alt,autoplay,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,controls,coords,datetime,default,dir,download,face,headers,height,hidden,hreflang,hspace,ismap,itemscope,itemprop,kind,label,lang,language,loop,media,muted,nohref,nowrap,open,preload,rel,rev,role,rows,rowspan,rules,scope,scrolling,shape,size,sizes,span,srclang,srcset,start,summary,tabindex,target,title,translate,type,usemap,valign,value,vspace,width"),$1=bo("aria-activedescendant,aria-atomic,aria-autocomplete,aria-busy,aria-checked,aria-colcount,aria-colindex,aria-colspan,aria-controls,aria-current,aria-describedby,aria-details,aria-disabled,aria-dropeffect,aria-errormessage,aria-expanded,aria-flowto,aria-grabbed,aria-haspopup,aria-hidden,aria-invalid,aria-keyshortcuts,aria-label,aria-labelledby,aria-level,aria-live,aria-modal,aria-multiline,aria-multiselectable,aria-orientation,aria-owns,aria-placeholder,aria-posinset,aria-pressed,aria-readonly,aria-relevant,aria-required,aria-roledescription,aria-rowcount,aria-rowindex,aria-rowspan,aria-selected,aria-setsize,aria-sort,aria-valuemax,aria-valuemin,aria-valuenow,aria-valuetext"),H1=ns(eM,z1,$1),U1=bo("script,style,template"),Lp=class{sanitizedSomething=!1;buf=[];sanitizeChildren(t){let e=t.firstChild,o=!0,i=[];for(;e;){if(e.nodeType===Node.ELEMENT_NODE?o=this.startElement(e):e.nodeType===Node.TEXT_NODE?this.chars(e.nodeValue):this.sanitizedSomething=!0,o&&e.firstChild){i.push(e),e=q1(e);continue}for(;e;){e.nodeType===Node.ELEMENT_NODE&&this.endElement(e);let r=G1(e);if(r){e=r;break}e=i.pop()}}return this.buf.join("")}startElement(t){let e=qC(t).toLowerCase();if(!Object.hasOwn(GC,e))return this.sanitizedSomething=!0,!Object.hasOwn(U1,e);this.buf.push("<"),this.buf.push(e);let o=t.attributes;for(let i=0;i"),!0}endElement(t){let e=qC(t).toLowerCase();Object.hasOwn(GC,e)&&!Object.hasOwn(X0,e)&&(this.buf.push(""))}chars(t){this.buf.push(YC(t))}};function W1(n,t){return(n.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_CONTAINED_BY)!==Node.DOCUMENT_POSITION_CONTAINED_BY}function G1(n){let t=n.nextSibling;if(t&&n!==t.previousSibling)throw tM(t);return t}function q1(n){let t=n.firstChild;if(t&&W1(n,t))throw tM(t);return t}function qC(n){let t=n.nodeName;return typeof t=="string"?t:"FORM"}function tM(n){return new Error(`Failed to sanitize html because the element is clobbered: ${n.outerHTML}`)}var Y1=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,K1=/([^\#-~ |!])/g;function YC(n){return n.replace(/&/g,"&").replace(Y1,function(t){let e=t.charCodeAt(0),o=t.charCodeAt(1);return"&#"+((e-55296)*1024+(o-56320)+65536)+";"}).replace(K1,function(t){return"&#"+t.charCodeAt(0)+";"}).replace(//g,">")}var bl;function nM(n,t){let e=null;try{bl=bl||F1(n);let o=t?String(t):"";e=bl.getInertBodyElement(o);let i=5,r=o;do{if(i===0)throw new Error("Failed to sanitize html because the input is unstable");i--,o=r,r=e.innerHTML,e=bl.getInertBodyElement(o)}while(o!==r);let s=new Lp().sanitizeChildren(KC(e)||e);return Gl(s)}finally{if(e){let o=KC(e)||e;for(;o.firstChild;)o.firstChild.remove()}}}function KC(n){return"content"in n&&Z1(n)?n.content:null}function Z1(n){return n.nodeType===Node.ELEMENT_NODE&&n.nodeName==="TEMPLATE"}function X1(n,t){return n.createText(t)}function Q1(n,t,e){n.setValue(t,e)}function oM(n,t,e){return n.createElement(t,e)}function Vi(n,t,e,o,i){n.insertBefore(t,e,o,i)}function iM(n,t,e){n.appendChild(t,e)}function ZC(n,t,e,o,i){o!==null?Vi(n,t,e,o,i):iM(n,t,e)}function rM(n,t,e,o){n.removeChild(null,t,e,o)}function J1(n,t,e){n.setAttribute(t,"style",e)}function ew(n,t,e){e===""?n.removeAttribute(t,"class"):n.setAttribute(t,"class",e)}function aM(n,t,e){let{mergedAttrs:o,classes:i,styles:r}=e;o!==null&&g1(n,t,o),i!==null&&ew(n,t,i),r!==null&&J1(n,t,r)}function tw(n,t=!0){if(n[0]!=":")return[null,n];let e=n.indexOf(":",1);if(e===-1){if(t)throw new Error(`Unsupported format "${n}" expecting ":namespace:name"`);return[null,n]}return[n.slice(1,e),n.slice(e+1)]}function Hi(n,t,e){if(t!==void 0&&e!==void 0&&cM(t,e)!==it.HTML)return n;let o=pf();return o?UC(o.sanitize(it.HTML,n)||""):ql(n,"HTML")?UC(Uo(n)):nM(lf(),wn(n))}function Ut(n){let t=pf();return t?t.sanitize(it.URL,n)||"":ql(n,"URL")?Uo(n):uf(wn(n))}function sM(n){let t=pf();if(t)return WC(t.sanitize(it.RESOURCE_URL,n)||"");if(ql(n,"ResourceURL"))return WC(Uo(n));throw new j(904,!1)}function nw(n,t){switch(cM(n,t)){case it.RESOURCE_URL:return sM;case it.URL:return Ut;default:return null}}function gf(n,t,e){return nw(t,e)?.(n)??n}function pf(){let n=Z();return n&&n[En].sanitizer}function cM(n,t){let[e,o]=ow(n);return cC(o,t,e)}function ow(n){n=n.toLowerCase();let t=tw(n,!1);if(t[0])return t;let o=_n()===-1?null:Ri(),i=o?.namespace;if(n==="#host"&&o?.type===2){let r=en(o,Z());if(r.tagName&&(n=r.tagName.toLowerCase()),i==null){let a=r.namespaceURI;i=a&&A1[a]}}return[i,n]}function Yl(n){return n.ownerDocument.defaultView}function Kl(n){return n.ownerDocument}function iw(n){return n instanceof Function?n():n}function rw(n,t,e){let o=n.length;for(;;){let i=n.indexOf(t,e);if(i===-1)return i;if(i===0||n.charCodeAt(i-1)<=32){let r=t.length;if(i+r===o||n.charCodeAt(i+r)<=32)return i}e=i+1}}var lM="ng-template";function aw(n,t,e,o){let i=0;if(o){for(;i-1){let r;for(;++ir?_="":_=i[f+1].toLowerCase(),o&2&&u!==_){if(Dn(o))return!1;a=!0}}}}return Dn(o)||a}function Dn(n){return(n&1)===0}function lw(n,t,e,o){if(t===null)return-1;let i=0;if(o||!e){let r=!1;for(;i-1)for(e++;e0?'="'+s+'"':"")+"]"}else o&8?i+="."+a:o&4&&(i+=" "+a);else i!==""&&!Dn(a)&&(t+=XC(r,i),i=""),o=a,r=r||!Dn(o);e++}return i!==""&&(t+=XC(r,i)),t}function fw(n){return n.map(pw).join(",")}function mw(n){let t=[],e=[],o=1,i=2;for(;o=0;s--){let{el:c,declarationView:u}=o[s],f=c.parentNode;c===t?(o.splice(s,1),Ua.add(c),c.dispatchEvent(new CustomEvent("animationend",{detail:{cancel:!0}}))):r&&c===r?(o.splice(s,1),c.dispatchEvent(new CustomEvent("animationend",{detail:{cancel:!0}})),c.parentNode?.removeChild(c)):f&&i&&f!==i&&(a===null||u===null||a===u)&&(o.splice(s,1),c.dispatchEvent(new CustomEvent("animationend",{detail:{cancel:!0}})),c.parentNode?.removeChild(c))}}function Cw(n,t,e){let o=dM(e),i=Vp.get(n);i?i.some(r=>r.el===t)||i.push({el:t,declarationView:o}):Vp.set(n,[{el:t,declarationView:o}])}var Zl=(function(n){return n[n.CHANGE_DETECTION=0]="CHANGE_DETECTION",n[n.AFTER_NEXT_RENDER=1]="AFTER_NEXT_RENDER",n})(Zl||{}),Jn=new $(""),QC=new Set;function An(n){QC.has(n)||(QC.add(n),performance?.mark?.("mark_feature_usage",{detail:{feature:n}}))}var _f=(()=>{class n{impl=null;execute(){this.impl?.execute()}static \u0275prov=ee({token:n,providedIn:"root",factory:()=>new n})}return n})(),uM=[0,1,2,3],gM=(()=>{class n{ngZone=v(ce);scheduler=v(Hn);errorHandler=v(un,{optional:!0});sequences=new Set;deferredRegistrations=new Set;executing=!1;constructor(){v(Jn,{optional:!0})}execute(){let e=this.sequences.size>0;e&&Se(be.AfterRenderHooksStart),this.executing=!0;for(let o of uM)for(let i of this.sequences)if(!(i.erroredOrDestroyed||!i.hooks[o]))try{i.pipelinedValue=this.ngZone.runOutsideAngular(()=>this.maybeTrace(()=>{let r=i.hooks[o];return r(i.pipelinedValue)},i.snapshot))}catch(r){i.erroredOrDestroyed=!0,this.errorHandler?.handleError(r)}this.executing=!1;for(let o of this.sequences)o.afterRun(),o.once&&(this.sequences.delete(o),o.destroy());for(let o of this.deferredRegistrations)this.sequences.add(o);this.deferredRegistrations.size>0&&this.scheduler.notify(7),this.deferredRegistrations.clear(),e&&Se(be.AfterRenderHooksEnd)}register(e){let{view:o}=e;o!==void 0?((o[Ei]??=[]).push(e),Ai(o),o[ne]|=8192):this.executing?this.deferredRegistrations.add(e):this.addSequence(e)}addSequence(e){this.sequences.add(e),this.scheduler.notify(7)}unregister(e){this.executing&&this.sequences.has(e)?(e.erroredOrDestroyed=!0,e.pipelinedValue=void 0,e.once=!0):(this.sequences.delete(e),this.deferredRegistrations.delete(e))}maybeTrace(e,o){return o?o.run(Zl.AFTER_NEXT_RENDER,e):e()}static \u0275prov=ee({token:n,providedIn:"root",factory:()=>new n})}return n})(),Al=class{impl;hooks;view;once;snapshot;erroredOrDestroyed=!1;pipelinedValue=void 0;unregisterOnDestroy;constructor(t,e,o,i,r,a=null){this.impl=t,this.hooks=e,this.view=o,this.once=i,this.snapshot=a,this.unregisterOnDestroy=r?.onDestroy(()=>this.destroy())}afterRun(){this.erroredOrDestroyed=!1,this.pipelinedValue=void 0,this.snapshot?.dispose(),this.snapshot=null}destroy(){this.impl.unregister(this),this.unregisterOnDestroy?.();let t=this.view?.[Ei];t&&(this.view[Ei]=t.filter(e=>e!==this))}};function Po(n,t){let e=t?.injector??v(Ne);return An("NgAfterNextRender"),bw(n,e,t,!0)}function Mw(n){return n instanceof Function?[void 0,void 0,n,void 0]:[n.earlyRead,n.write,n.mixedReadWrite,n.read]}function bw(n,t,e,o){let i=t.get(_f);i.impl??=t.get(gM);let r=t.get(Jn,null,{optional:!0}),a=e?.manualCleanup!==!0?t.get(Te):null,s=t.get(ja,null,{optional:!0}),c=new Al(i.impl,Mw(n),s?.view,o,a,r?.snapshot(null));return i.impl.register(c),c}var hf=new $("",{factory:()=>{let n=v(De),t=new Set;return n.onDestroy(()=>t.clear()),{queue:t,isScheduled:!1,scheduler:null,injector:n}}});function pM(n,t,e){let o=n.get(hf);if(Array.isArray(t))for(let i of t)o.queue.add(i),e?.detachedLeaveAnimationFns?.push(i);else o.queue.add(t),e?.detachedLeaveAnimationFns?.push(t);o.scheduler&&o.scheduler(n)}function Pw(n,t){let e=n.get(hf);if(Array.isArray(t))for(let o of t)e.queue.delete(o);else e.queue.delete(t)}function Ow(n,t){let e=n.get(hf);if(t.detachedLeaveAnimationFns){for(let o of t.detachedLeaveAnimationFns)e.queue.delete(o);t.detachedLeaveAnimationFns=void 0}}function vw(n,t){for(let[e,o]of t)pM(n,o.animateFns)}function JC(n,t,e,o){let i=n?.[qn]?.enter;t!==null&&i&&i.has(e.index)&&vw(o,i)}function e0(n,t,e,o){try{e.get(Aa)}catch(a){return o(!1)}let i=n?.[qn];i?.enter?.has(t.index)&&Pw(e,i.enter.get(t.index).animateFns);let r=yw(n,t,i);if(r.size===0){let a=!1;if(n){let s=[];Xl(n,t,s),a=s.length>0}if(!a)return o(!1)}n&&Wo.add(n[Gn]),pM(e,()=>xw(n,t,i||void 0,r,o),i||void 0)}function yw(n,t,e){let o=new Map,i=e?.leave;if(i&&i.has(t.index)&&o.set(t.index,i.get(t.index)),n&&i)for(let[r,a]of i){if(o.has(r))continue;let c=n[K].data[r].parent;for(;c;){if(c===t){o.set(r,a);break}c=c.parent}}return o}function xw(n,t,e,o,i){let r=[];if(e&&e.leave)for(let[a]of o){if(!e.leave.has(a))continue;let s=e.leave.get(a);for(let c of s.animateFns){let{promise:u}=c();r.push(u)}e.detachedLeaveAnimationFns=void 0}if(n&&Xl(n,t,r),r.length>0){let a=e||n?.[qn];if(a){let s=a.running;s&&r.push(s),a.running=Promise.allSettled(r),Sw(n,a.running,i)}else Promise.allSettled(r).then(()=>{n&&Wo.delete(n[Gn]),i(!0)})}else n&&Wo.delete(n[Gn]),i(!1)}function Xl(n,t,e){if(t.type&12){let i=n[t.index];if(pn(i))for(let r=Ge;r{n[qn]?.running===t&&(n[qn].running=void 0,Wo.delete(n[Gn])),e(!0)})}function Ir(n,t,e,o,i,r,a,s){if(i!=null){let c,u=!1;pn(i)?c=i:_o(i)&&(u=!0,i=i[kn]);let f=bt(i);n===0&&o!==null?(JC(s,o,r,e),a==null?iM(t,o,f):Vi(t,o,f,a||null,!0)):n===1&&o!==null?(JC(s,o,r,e),Vi(t,o,f,a||null,!0),hw(r,f,s)):n===2?(s?.[qn]?.leave?.has(r.index)&&Cw(r,f,s),Ua.delete(f),e0(s,r,e,_=>{if(Ua.has(f)){Ua.delete(f);return}rM(t,f,u,_)})):n===3&&(Ua.delete(f),e0(s,r,e,()=>{t.destroyNode(f)})),c!=null&&jw(t,n,e,c,r,o,a)}}function kw(n,t){fM(n,t),t[kn]=null,t[jt]=null}function Ew(n,t,e,o,i,r){o[kn]=i,o[jt]=t,Jl(n,o,e,1,i,r)}function fM(n,t){t[En].changeDetectionScheduler?.notify(9),Jl(n,t,t[Le],2,null,null)}function Dw(n){let t=n[wr];if(!t)return bp(n[K],n);for(;t;){let e=null;if(_o(t))e=t[wr];else{let o=t[Ge];o&&(e=o)}if(!e){for(;t&&!t[gn]&&t!==n;)_o(t)&&bp(t[K],t),t=t[rt];t===null&&(t=n),_o(t)&&bp(t[K],t),e=t&&t[gn]}t=e}}function Cf(n,t){let e=n[Ii],o=e.indexOf(t);e.splice(o,1)}function Ql(n,t){if(Ti(t))return;let e=t[Le];e.destroyNode&&Jl(n,t,e,3,null,null),Dw(t)}function bp(n,t){if(Ti(t))return;let e=Y(null);try{t[ne]&=-129,t[ne]|=256,t[Jt]&&fi(t[Jt]),Tw(n,t),Iw(n,t),t[K].type===1&&t[Le].destroy();let o=t[zo];if(o!==null&&pn(t[rt])){o!==t[rt]&&Cf(o,t);let i=t[Wn];i!==null&&i.detachView(n)}Tp(t)}finally{Y(e)}}function Iw(n,t){let e=n.cleanup,o=t[xr];if(e!==null)for(let a=0;a=0?o[s]():o[-s].unsubscribe(),a+=2}else{let s=o[e[a+1]];e[a].call(s)}o!==null&&(t[xr]=null);let i=t[po];if(i!==null){t[po]=null;for(let a=0;aKe&&CM(n,t,Ke,!1);let s=a?be.TemplateUpdateStart:be.TemplateCreateStart;Se(s,i,e),e(o,i)}finally{$o(r);let s=a?be.TemplateUpdateEnd:be.TemplateCreateEnd;Se(s,i,e)}}function yf(n,t,e){Zw(n,t,e),(e.flags&64)===64&&Xw(n,t,e)}function td(n,t,e=en){let o=t.localNames;if(o!==null){let i=t.index+1;for(let r=0;rnull;function Yw(n){return n==="class"?"className":n==="for"?"htmlFor":n==="formaction"?"formAction":n==="innerHtml"?"innerHTML":n==="readonly"?"readOnly":n==="tabindex"?"tabIndex":n}function bM(n,t,e,o,i,r){let a=t[K];if(xf(n,a,t,e,o)){ho(n)&&Kw(t,n.index);return}n.type&3&&(e=Yw(e)),PM(n,t,e,o,i,r)}function PM(n,t,e,o,i,r){if(n.type&3){let a=en(n,t);o=r!=null?r(o,n.value||"",e):o,i.setProperty(a,e,o)}else n.type&12}function Kw(n,t){let e=fn(t,n);e[ne]&16||(e[ne]|=64)}function Zw(n,t,e){let o=e.directiveStart,i=e.directiveEnd;ho(e)&&Uw(t,e,n.data[o+e.componentOffset]),n.firstCreatePass||Dl(e,t);let r=e.initialInputs;for(let a=o;a=s&&C<=c){let O=t.data[C],P=_[h+1];zi(O,e[C],P,r),u=!0}else if(C>c)break}}return a!==null&&Object.hasOwn(o.inputs,i)&&(zi(o,e[a],i,r),u=!0),u}function iS(n,t){let e=fn(t,n),o=e[K];rS(o,e);let i=e[kn];i!==null&&e[yr]===null&&(e[yr]=G0(i,e[Un])),Se(be.ComponentStart);try{wf(o,e,e[Ye])}finally{Se(be.ComponentEnd,e[Ye])}}function rS(n,t){for(let e=t.length;e{Ai(n.lView)},consumerOnSignalRead(){this.lView[Jt]=this}});function uS(n){let t=n[Jt]??Object.create(gS);return t.lView=n,t}var gS=F(x({},To),{consumerIsAlwaysLive:!0,kind:"template",consumerMarkedDirty:n=>{let t=mo(n.lView);for(;t&&!kM(t[K]);)t=mo(t);t&&Xg(t)},consumerOnSignalRead(){this.lView[Jt]=this}});function kM(n){return n.type!==2}function EM(n){if(n[fo]===null)return;let t=!0;for(;t;){let e=!1;for(let o of n[fo])if(o.dirty&&(e=!0,o.zone===null||Zone.current===o.zone?o.run():o.zone.run(()=>o.run()),n[fo]===null))return;t=e&&!!(n[ne]&8192)}}var pS=100;function DM(n,t=0){let o=n[En].rendererFactory,i=!1;i||o.begin?.();try{fS(n,t)}finally{i||o.end?.()}}function fS(n,t){let e=ap();try{xa(!0),jp(n,t);let o=0;for(;La(n);){if(o===pS)throw new j(103,!1);o++,jp(n,1)}}finally{xa(e)}}function mS(n,t,e,o){if(Ti(t))return;let i=t[ne],r=!1,a=!1;cl(t);let s=!0,c=null,u=null;r||(kM(n)?(u=sS(t),c=Ao(u)):oc()===null?(s=!1,u=uS(t),c=Ao(u)):t[Jt]&&(fi(t[Jt]),t[Jt]=null));try{Zg(t),bC(n.bindingStartIndex),e!==null&&MM(n,t,e,2,o);let f=(i&3)===3;if(!r)if(f){let C=n.preOrderCheckHooks;C!==null&&Ol(t,C,null)}else{let C=n.preOrderHooks;C!==null&&vl(t,C,0,null),Cp(t,0)}if(a||_S(t),EM(t),IM(t,0),n.contentQueries!==null&&q0(n,t),!r)if(f){let C=n.contentCheckHooks;C!==null&&Ol(t,C)}else{let C=n.contentHooks;C!==null&&vl(t,C,1),Cp(t,1)}CS(n,t);let _=n.components;_!==null&&AM(t,_,0);let h=n.viewQuery;if(h!==null&&Rp(2,h,o),!r)if(f){let C=n.viewCheckHooks;C!==null&&Ol(t,C)}else{let C=n.viewHooks;C!==null&&vl(t,C,2),Cp(t,2)}if(n.firstUpdatePass===!0&&(n.firstUpdatePass=!1),t[Jc]){for(let C of t[Jc])C();t[Jc]=null}r||(wM(t),t[ne]&=-73)}catch(f){throw r||Ai(t),f}finally{u!==null&&(pi(u,c),s&&lS(u)),ll()}}function IM(n,t){for(let e=B0(n);e!==null;e=j0(e))for(let o=Ge;o0&&(n[e-1][gn]=o[gn]);let r=Ta(n,Ge+t);kw(o[K],o);let a=r[Wn];a!==null&&a.detachView(r[K]),o[rt]=null,o[gn]=null,o[ne]&=-129}return o}function MS(n,t,e,o){let i=Ge+o,r=e.length;o>0&&(e[i-1][gn]=t),o-1&&(Xa(t,o),Ta(e,o))}this._attachedToViewContainer=!1}Ql(this._lView[K],this._lView)}onDestroy(t){rl(this._lView,t)}markForCheck(){Sf(this._cdRefInjectingView||this._lView,4)}detach(){this._lView[ne]&=-129}reattach(){il(this._lView),this._lView[ne]|=128}detectChanges(){this._lView[ne]|=1024,DM(this._lView)}checkNoChanges(){}attachToViewContainerRef(){if(this._appRef)throw new j(902,!1);this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null;let t=Sr(this._lView),e=this._lView[zo];e!==null&&!t&&Cf(e,this._lView),fM(this._lView[K],this._lView)}attachToAppRef(t){if(this._attachedToViewContainer)throw new j(902,!1);this._appRef=t;let e=Sr(this._lView),o=this._lView[zo];o!==null&&!e&&LM(o,this._lView),il(this._lView)}};var Qn=(()=>{class n{_declarationLView;_declarationTContainer;elementRef;static __NG_ELEMENT_ID__=bS;constructor(e,o,i){this._declarationLView=e,this._declarationTContainer=o,this.elementRef=i}get ssrId(){return this._declarationTContainer.tView?.ssrId||null}createEmbeddedView(e,o){return this.createEmbeddedViewImpl(e,o)}createEmbeddedViewImpl(e,o,i){let r=nd(this._declarationLView,this._declarationTContainer,e,{embeddedViewInjector:o,dehydratedView:i});return new Go(r)}}return n})();function bS(){return kf(ct(),Z())}function kf(n,t){return n.type&4?new Qn(t,n,Lr(n,t)):null}function os(n,t,e,o,i){let r=n.data[t];if(r===null)r=PS(n,t,e,o,i),PC()&&(r.flags|=32);else if(r.type&64){r.type=e,r.value=o,r.attrs=i;let a=hC();r.injectorIndex=a===null?-1:a.injectorIndex}return kr(r,!0),r}function PS(n,t,e,o,i){let r=ip(),a=rp(),s=a?r:r&&r.parent,c=n.data[t]=vS(n,s,e,t,o,i);return OS(n,c,r,a),c}function OS(n,t,e,o){n.firstChild===null&&(n.firstChild=t),e!==null&&(o?e.child==null&&t.parent!==null&&(e.child=t):e.next===null&&(e.next=t,t.prev=e))}function vS(n,t,e,o,i,r){let a=t?t.injectorIndex:-1,s=0;return _C()&&(s|=128),{type:e,index:o,insertBeforeIndex:null,injectorIndex:a,directiveStart:-1,directiveEnd:-1,directiveStylingLast:-1,componentOffset:-1,controlDirectiveIndex:-1,customControlIndex:-1,propertyBindings:null,flags:s,providerIndexes:0,value:i,namespace:up(),attrs:r,mergedAttrs:null,localNames:null,initialInputs:null,inputs:null,hostDirectiveInputs:null,outputs:null,hostDirectiveOutputs:null,directiveToIndex:null,tView:null,next:null,prev:null,projectionNext:null,child:null,parent:t,projection:null,styles:null,stylesWithoutHost:null,residualStyles:void 0,classes:null,classesWithoutHost:null,residualClasses:void 0,classBindings:0,styleBindings:0}}function yS(n){let t=n[Gg]??[],o=n[rt][Le],i=[];for(let r of t)r.data[H0]!==void 0?i.push(r):xS(r,o);n[Gg]=i}function xS(n,t){let e=0,o=n.firstChild;if(o){let i=n.data[$0];for(;enull,SS=()=>null;function zp(n,t){return wS(n,t)}function VM(n,t,e){return SS(n,t,e)}var BM=class{},$t=class{},dt=class{destroyNode=null;static __NG_ELEMENT_ID__=()=>kS()};function kS(){let n=Z(),t=ct(),e=fn(t.index,n);return(_o(e)?e:n)[Le]}var jM=(()=>{class n{static \u0275prov=ee({token:n,providedIn:"root",factory:()=>null})}return n})();function zM(n){return n.debugInfo?.className||n.type.name||null}var xl={},Rl=class{injector;parentInjector;constructor(t,e){this.injector=t,this.parentInjector=e}get(t,e,o){let i=this.injector.get(t,xl,o);return i!==xl||e===xl?i:this.parentInjector.get(t,e,o)}};function Ef(n,t,e){return n[t]=e}function ES(n,t){return n[t]}function Ht(n,t,e){if(e===ut)return!1;let o=n[t];return Object.is(o,e)?!1:(n[t]=e,!0)}function Df(n,t,e,o){let i=Ht(n,t,e);return Ht(n,t+1,o)||i}function DS(n,t,e,o,i){let r=Df(n,t,e,o);return Ht(n,t+2,i)||r}function Bi(n,t,e){return function o(i){let r=o.__ngNativeEl__;r!==void 0&&E1(i,r);let a=ho(n)?fn(n.index,t):t;Sf(a,5);let s=t[Ye],c=n0(t,s,e,i),u=o.__ngNextListenerFn__;for(;u;)c=n0(t,s,u,i)&&c,u=u.__ngNextListenerFn__;return c}}function n0(n,t,e,o){let i=Y(null);try{return Se(be.OutputStart,t,e),e(o)!==!1}catch(r){return nS(n,r),!1}finally{Se(be.OutputEnd,t,e),Y(i)}}function If(n,t,e,o,i,r,a,s){let c=Na(n),u=!1,f=null;if(!o&&c&&(f=TS(t,e,r,n.index)),f!==null){let _=f.__ngLastListenerFn__||f;_.__ngNextListenerFn__=a,f.__ngLastListenerFn__=a,u=!0}else{let _=en(n,e),h=o?o(_):_;I1(e,h,r,s),o||(s.__ngNativeEl__=_);let C=i.listen(h,r,s);if(!IS(r)){let O=o?P=>o(bt(P[n.index])):n.index;$M(O,t,e,r,s,C,!1)}}return u}function IS(n){return n.startsWith("animation")||n.startsWith("transition")}function TS(n,t,e,o){let i=n.cleanup;if(i!=null)for(let r=0;rc?s[c]:null}typeof a=="string"&&(r+=2)}return null}function $M(n,t,e,o,i,r,a){let s=t.firstCreatePass?Jg(t):null,c=Qg(e),u=c.length;c.push(i,r),s&&s.push(o,n,u,(u+1)*(a?-1:1))}function o0(n,t,e,o,i){let r=null,a=null,s=null,c=!1,u=n.directiveToIndex.get(e.type);if(typeof u=="number"?r=u:[r,a,s]=u,a!==null&&s!==null&&n.hostDirectiveOutputs&&Object.hasOwn(n.hostDirectiveOutputs,o)){let f=n.hostDirectiveOutputs[o];for(let _=0;_=a&&h<=s)c=!0,Fl(n,t,h,f[_+1],o,i);else if(h>s)break}}return Object.hasOwn(e.outputs,o)&&(c=!0,Fl(n,t,r,o,o,i)),c}function Fl(n,t,e,o,i,r){let a=t[e],s=t[K],u=s.data[e].outputs[o],_=a[u].subscribe(r);$M(n.index,s,t,i,r,_,!0)}function Qe(){AS()}function AS(){let n=Z(),t=Ue(),e=ct();if(t.firstCreatePass&&FS(t,e),e.controlDirectiveIndex===-1)return;An("NgSignalForms");let o=n[e.controlDirectiveIndex];t.data[e.controlDirectiveIndex].controlDef.create(o,new Nl(n,t,e))}function Je(){RS()}function RS(){let n=Z(),t=Ue(),e=Ri();if(e.controlDirectiveIndex===-1)return;let o=t.data[e.controlDirectiveIndex].controlDef,i=n[e.controlDirectiveIndex];o.update(i,new Nl(n,t,e))}var Nl=class{lView;tView;tNode;hasPassThrough;constructor(t,e,o){this.lView=t,this.tView=e,this.tNode=o,this.hasPassThrough=!!(o.flags&4096)}get customControl(){return this.tNode.customControlIndex!==-1?this.lView[this.tNode.customControlIndex]:void 0}get nativeElement(){return en(this.tNode,this.lView)}get descriptor(){return`<${this.tNode.value}>`}listenToCustomControlOutput(t,e){let o=this.tView.data[this.tNode.customControlIndex];o0(this.tNode,this.lView,o,t,Bi(this.tNode,this.lView,e))}listenToCustomControlModel(t){let e=this.tNode.flags&1024?"valueChange":"checkedChange",o=this.tView.data[this.tNode.customControlIndex];o0(this.tNode,this.lView,o,e,Bi(this.tNode,this.lView,t))}listenToDom(t,e){If(this.tNode,this.tView,this.lView,void 0,this.lView[Le],t,e,Bi(this.tNode,this.lView,e))}setInputOnDirectives(t,e){let o=this.tNode.inputs?.[t],i=this.tNode.hostDirectiveInputs?.[t];if(!o&&!i)return!1;let r=!1;if(o)for(let a of o){if(a===this.tNode.controlDirectiveIndex)continue;let s=this.tView.data[a],c=this.lView[a];zi(s,c,t,e),r=!0}if(i)for(let a=0;a0;){let i=o.shift();if(typeof i!="function"){for(let a in i.inputs)e[i.inputs[a]]=!0;let r=i0(i.directive);r!==null&&o.push(...r);continue}for(let r of i()){if(typeof r=="function")continue;if(r.inputs)for(let s=0;s1){t.flags|=4096;return}NS(n,t)}function NS(n,t){for(let e=t.directiveStart;e{let r=t.hostDirectiveInputs[o],a=t.hostDirectiveOutputs[o+"Change"];if(!r||!a)return!1;for(let s=0;s=C&&c<=O)return t.flags|=i,t.customControlIndex=h,!0}}}return!1};if(e("value",1024)||e("checked",2048))return}}function r0(n,t){return LS(n,t)&&VS(n,t+"Change")}function LS(n,t){return t in n.inputs}function VS(n,t){return t in n.outputs}var $p=Symbol("BINDING");var Ui=new $("");function Ll(n,t,e){let o=e?n.styles:null,i=e?n.classes:null,r=0;if(t!==null)for(let a=0;a0&&(e.directiveToIndex=new Map);for(let h=0;h0;){let e=n[--t];if(typeof e=="number"&&e<0)return e}return 0}function GS(n,t,e){if(e){if(t.exportAs)for(let o=0;o{let[e,o,i]=n[t],r={propName:e,templateName:t,isSignal:(o&ed.SignalBased)!==0};return i&&(r.transform=i),r})}function XS(n){return Object.keys(n).map(t=>({propName:n[t],templateName:t}))}function QS(n,t,e){let o=t instanceof De?t:t?.injector;return o&&n.getStandaloneInjector!==null&&(o=n.getStandaloneInjector(o)||o),o?new Rl(e,o):e}function JS(n){let t=n.get($t,null);if(t===null)throw new j(407,!1);let e=n.get(jM,null),o=n.get(Hn,null),i=n.get(Jn,null,{optional:!0});return{rendererFactory:t,sanitizer:e,changeDetectionScheduler:o,ngReflect:!1,tracingService:i}}function ek(n,t,e){let o=YM(n);return oM(t,o,o==="svg"?Pr:o==="math"?el:e)}function tk(n){if((n&&"localName"in n&&typeof n.localName=="string"?n.localName:n?.tagName)?.toLowerCase()==="script")throw new j(905,!1)}function YM(n){return(n.selectors[0][0]||"div").toLowerCase()}var Fr=class{componentDef;ngModule;selector;componentType;ngContentSelectors;isBoundToModule;cachedInputs=null;cachedOutputs=null;get inputs(){return this.cachedInputs??=ZS(this.componentDef.inputs),this.cachedInputs}get outputs(){return this.cachedOutputs??=XS(this.componentDef.outputs),this.cachedOutputs}constructor(t,e){this.componentDef=t,this.ngModule=e,this.componentType=t.type,this.selector=fw(t.selectors),this.ngContentSelectors=t.ngContentSelectors??[],this.isBoundToModule=!!e}create(t,e,o,i,r,a,s){Se(be.DynamicComponentStart);let c=Y(null);try{let u=this.componentDef,f=QS(u,i||this.ngModule,t),_=JS(f),h=_.tracingService;return h&&h.componentCreate?h.componentCreate(zM(u),()=>this.createComponentRef(_,f,e,o,r,a,s)):this.createComponentRef(_,f,e,o,r,a,s)}finally{Y(c)}}createComponentRef(t,e,o,i,r,a,s){let c=this.componentDef,u=nk(i,c,a,r),f=t.rendererFactory.createRenderer(null,c),_=i?Ww(f,i,c.encapsulation,e):ek(c,f,s??null);tk(_);let h=e.get(Ui,null),C=ok(_,()=>e.get(Me,null)??lf());h&&h.addHost(C);let O=a?.some(l0)||r?.some(R=>typeof R!="function"&&R.bindings.some(l0)),P=Of(null,u,null,512|_M(c),null,null,t,f,e,null,G0(_,e,!0));h&&qM&&C instanceof ShadowRoot&&rl(P,()=>{h.removeHost(C)}),P[Ke]=_,cl(P);let T=null;try{let R=WM(Ke,P,2,"#host",()=>u.directiveRegistry,!0,0);aM(f,_,R),Rr(_,P),yf(u,P,R),Y0(u,R,P),GM(u,R),o!==void 0&&rk(R,this.ngContentSelectors,o),T=fn(R.index,P),P[Ye]=T[Ye],wf(u,P,null)}catch(R){throw T!==null&&Tp(T),Tp(P),R}finally{Se(be.DynamicComponentEnd),ll()}return new Vl(this.componentType,P,!!O)}};function nk(n,t,e,o){let i=n?["ng-version","22.1.4"]:mw(t.selectors[0]),r=null,a=null,s=0;if(e)for(let f of e)s+=f[$p].requiredVars,f.create&&(f.targetIdx=0,(r??=[]).push(f)),f.update&&(f.targetIdx=0,(a??=[]).push(f));if(o)for(let f=0;f{if(e&1&&n)for(let o of n)o.create();if(e&2&&t)for(let o of t)o.update()}}function l0(n){let t=n[$p].kind;return t==="input"||t==="twoWay"}var Vl=class extends BM{_rootLView;_hasInputBindings;instance;hostView;changeDetectorRef;componentType;location;previousInputValues=null;_tNode;constructor(t,e,o){super(),this._rootLView=e,this._hasInputBindings=o,this._tNode=tl(e[K],Ke),this.location=Lr(this._tNode,e),this.instance=fn(this._tNode.index,e)[Ye],this.hostView=this.changeDetectorRef=new Go(e,void 0),this.componentType=t}setInput(t,e){this._hasInputBindings;let o=this._tNode;if(this.previousInputValues??=new Map,this.previousInputValues.has(t)&&Object.is(this.previousInputValues.get(t),e))return;let i=this._rootLView,r=xf(o,i[K],i,t,e);this.previousInputValues.set(t,e);let a=fn(o.index,i);Sf(a,1)}get injector(){return new Ho(this._tNode,this._rootLView)}destroy(){this.hostView.destroy()}onDestroy(t){this.hostView.onDestroy(t)}};function rk(n,t,e){let o=n.projection=[];for(let i=0;i{class n{static __NG_ELEMENT_ID__=ak}return n})();function ak(){let n=ct();return KM(n,Z())}var Hp=class n extends Rn{_lContainer;_hostTNode;_hostLView;constructor(t,e,o){super(),this._lContainer=t,this._hostTNode=e,this._hostLView=o}get element(){return Lr(this._hostTNode,this._hostLView)}get injector(){return new Ho(this._hostTNode,this._hostLView)}get parentInjector(){let t=af(this._hostTNode,this._hostLView);if(k0(t)){let e=kl(t,this._hostLView),o=Sl(t),i=e[K].data[o+8];return new Ho(i,e)}else return new Ho(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(t){let e=d0(this._lContainer);return e!==null&&e[t]||null}get length(){return this._lContainer.length-Ge}createEmbeddedView(t,e,o){let i,r;typeof o=="number"?i=o:o!=null&&(i=o.index,r=o.injector);let a=zp(this._lContainer,t.ssrId),s=t.createEmbeddedViewImpl(e||{},r,a);return this.insertImpl(s,i,Ka(this._hostTNode,a)),s}createComponent(t,e,o,i,r,a,s){let c,u=e||{};c=u.index,o=u.injector,i=u.projectableNodes,r=u.environmentInjector||u.ngModuleRef,a=u.directives,s=u.bindings;let f=new Fr(Lo(t)),_=o||this.parentInjector;if(!r&&f.ngModule==null){let R=this.parentInjector.get(De,null);R&&(r=R)}let h=Lo(f.componentType??{}),C=zp(this._lContainer,h?.id??null),O=C?.firstChild??null,P=f.create(_,i,O,r,a,s,this._getHostElementNamespace());return this.insertImpl(P.hostView,c,Ka(this._hostTNode,C)),P}_getHostElementNamespace(){if(this._hostTNode.type&2){let t=this._hostTNode.parent??this._hostLView[jt];return t!==null&&t.type&2&&typeof t.value=="string"&&t.value.toLowerCase()==="foreignobject"?null:t?.namespace??null}return this._hostTNode.namespace}insert(t,e){return this.insertImpl(t,e,!0)}insertImpl(t,e,o){let i=t._lView;if(dC(i)){let s=this.indexOf(t);if(s!==-1)this.detach(s);else{let c=i[rt],u=new n(c,c[jt],c[rt]);u.detach(u.indexOf(t))}}let r=this._adjustIndex(e),a=this._lContainer;return od(a,i,r,o),t.attachToViewContainerRef(),Bg(Pp(a),r,t),t}move(t,e){return this.insert(t,e)}indexOf(t){let e=d0(this._lContainer);return e!==null?e.indexOf(t):-1}remove(t){let e=this._adjustIndex(t,-1),o=Xa(this._lContainer,e);o&&(Ta(Pp(this._lContainer),e),Ql(o[K],o))}detach(t){let e=this._adjustIndex(t,-1),o=Xa(this._lContainer,e);return o&&Ta(Pp(this._lContainer),e)!=null?new Go(o):null}_adjustIndex(t,e=0){return t??this.length+e}};function d0(n){return n[Fa]}function Pp(n){return n[Fa]||(n[Fa]=[])}function KM(n,t){let e,o=t[n.index];return pn(o)?e=o:(e=RM(o,t,null,n),t[n.index]=e,vf(t,e)),ck(e,t,n,o),new Hp(e,n,t)}function sk(n,t){let e=n[Le],o=e.createComment(""),i=en(t,n),r=e.parentNode(i);return Vi(e,r,o,e.nextSibling(i),!1),o}var ck=uk,lk=()=>!1;function dk(n,t,e){return lk(n,t,e)}function uk(n,t,e,o){if(n[Di])return;let i;e.type&8?i=bt(o):i=sk(t,e),n[Di]=i}var Up=class n{queryList;matches=null;constructor(t){this.queryList=t}clone(){return new n(this.queryList)}setDirty(){this.queryList.setDirty()}},Wp=class n{queries;constructor(t=[]){this.queries=t}createEmbeddedView(t){let e=t.queries;if(e!==null){let o=t.contentQueries!==null?t.contentQueries[0]:e.length,i=[];for(let r=0;r0)o.push(a[s/2]);else{let u=r[s+1],f=t[-c];for(let _=Ge;_t.trim())}function QM(n,t,e){n.queries===null&&(n.queries=new Gp),n.queries.track(new qp(t,e))}function bk(n,t){let e=n.contentQueries||(n.contentQueries=[]),o=e.length?e[e.length-1]:-1;t!==o&&e.push(n.queries.length-1,t)}function Tf(n,t){return n.queries.getByIndex(t)}function Pk(n,t){let e=n[K],o=Tf(e,t);return o.crossesNgTemplate?Yp(e,n,t,[]):ZM(e,n,o,t)}function qo(n){return!!n&&typeof n.then=="function"}function Af(n){return!!n&&typeof n.subscribe=="function"}var Mo=class{},id=class{};var jl=class extends Mo{ngModuleType;_parent;_bootstrapComponents=[];_r3Injector;instance;destroyCbs=[];constructor(t,e,o,i=!0){super(),this.ngModuleType=t,this._parent=e;let r=qh(t);this._bootstrapComponents=iw(r.bootstrap),this._r3Injector=gp(t,e,[{provide:Mo,useValue:this},...o],ka(t),new Set(["environment"])),i&&this.resolveInjectorInitializers()}resolveInjectorInitializers(){this._r3Injector.resolveInjectorInitializers(),this.instance=this._r3Injector.get(this.ngModuleType)}get injector(){return this._r3Injector}destroy(){let t=this._r3Injector;!t.destroyed&&t.destroy(),this.destroyCbs.forEach(e=>e()),this.destroyCbs=null}onDestroy(t){this.destroyCbs.push(t)}},zl=class extends id{moduleType;constructor(t){super(),this.moduleType=t}create(t){return new jl(this.moduleType,t,[])}};var Qa=class extends Mo{injector;instance=null;constructor(t){super();let e=new xi([...t.providers,{provide:Mo,useValue:this}],t.parent||vr(),t.debugName,new Set(["environment"]));this.injector=e,t.runEnvironmentInitializers&&e.resolveInjectorInitializers()}destroy(){this.injector.destroy()}onDestroy(t){this.injector.onDestroy(t)}};function is(n,t,e=null){return new Qa({providers:n,parent:t,debugName:e,runEnvironmentInitializers:!0}).injector}var Ok=(()=>{class n{_injector;cachedInjectors=new Map;constructor(e){this._injector=e}getOrCreateStandaloneInjector(e){if(!e.standalone)return null;if(!this.cachedInjectors.has(e)){let o=zg(!1,e.type),i=o.length>0?is([o],this._injector,""):null;this.cachedInjectors.set(e,i)}return this.cachedInjectors.get(e)}ngOnDestroy(){try{for(let e of this.cachedInjectors.values())e!==null&&e.destroy()}finally{this.cachedInjectors.clear()}}static \u0275prov=ee({token:n,providedIn:"environment",factory:()=>new n(Q(De))})}return n})();function Ae(n){return es(()=>{let t=JM(n),e=F(x({},t),{decls:n.decls,vars:n.vars,template:n.template,consts:n.consts||null,ngContentSelectors:n.ngContentSelectors,onPush:n.changeDetection!==sf.Eager,directiveDefs:null,pipeDefs:null,dependencies:t.standalone&&n.dependencies||null,getStandaloneInjector:t.standalone?i=>i.get(Ok).getOrCreateStandaloneInjector(e):null,getExternalStyles:null,signals:n.signals??!1,data:n.data||{},encapsulation:n.encapsulation||Tn.Emulated,styles:n.styles||Ft,_:null,schemas:n.schemas||null,tView:null,id:""});t.standalone&&An("NgStandalone"),eb(e);let o=n.dependencies;return e.directiveDefs=u0(o,vk),e.pipeDefs=u0(o,Yh),e.id=wk(e),e})}function vk(n){return Lo(n)||Ng(n)}function gt(n){return es(()=>({type:n.type,bootstrap:n.bootstrap||Ft,declarations:n.declarations||Ft,imports:n.imports||Ft,exports:n.exports||Ft,transitiveCompileScopes:null,schemas:n.schemas||null,id:n.id||null}))}function yk(n,t){if(n==null)return Vo;let e={};for(let o in n)if(Object.hasOwn(n,o)){let i=n[o],r,a,s,c;Array.isArray(i)?(s=i[0],r=i[1],a=i[2]??r,c=i[3]||null):(r=i,a=i,s=ed.None,c=null),e[r]=[o,s,c],t[r]=a}return e}function xk(n){if(n==null)return Vo;let t={};for(let e in n)Object.hasOwn(n,e)&&(t[n[e]]=e);return t}function Pe(n){return es(()=>{let t=JM(n);return eb(t),t})}function rs(n){return{type:n.type,name:n.name,factory:null,pure:n.pure!==!1,standalone:n.standalone??!0,onDestroy:n.type.prototype.ngOnDestroy||null}}function JM(n){let t={};return{type:n.type,providersResolver:null,viewProvidersResolver:null,factory:null,hostBindings:n.hostBindings||null,hostVars:n.hostVars||0,hostAttrs:n.hostAttrs||null,contentQueries:n.contentQueries||null,declaredInputs:t,inputConfig:n.inputs||Vo,exportAs:n.exportAs||null,standalone:n.standalone??!0,signals:n.signals===!0,selectors:n.selectors||Ft,viewQuery:n.viewQuery||null,features:n.features||null,setInput:null,resolveHostDirectives:null,hostDirectives:null,controlDef:null,signalFormsInputPresence:null,inputs:yk(n.inputs,t),outputs:xk(n.outputs),debugInfo:null}}function eb(n){n.features?.forEach(t=>t(n))}function u0(n,t){return n?()=>{let e=typeof n=="function"?n():n,o=[];for(let i of e){let r=t(i);r!==null&&o.push(r)}return o}:null}function wk(n){let t=0,e=typeof n.consts=="function"?"":n.consts,o=[n.selectors,n.ngContentSelectors,n.hostVars,n.hostAttrs,e,n.vars,n.decls,n.encapsulation,n.standalone,n.signals,n.exportAs,JSON.stringify(n.inputs),JSON.stringify(n.outputs),Object.getOwnPropertyNames(n.type.prototype),!!n.contentQueries,!!n.viewQuery];for(let r of o.join("|"))t=Math.imul(31,t)+r.charCodeAt(0)<<0;return t+=2147483648,"c"+t}var tb=new $("");var Rf=(()=>{class n{resolve;reject;initialized=!1;done=!1;donePromise=new Promise((e,o)=>{this.resolve=e,this.reject=o});appInits=v(tb,{optional:!0})??[];injector=v(Ne);constructor(){}runInitializers(){if(this.initialized)return;let e=[];for(let i of this.appInits){let r=st(this.injector,i);if(qo(r))e.push(r);else if(Af(r)){let a=new Promise((s,c)=>{r.subscribe({complete:s,error:c})});e.push(a)}}let o=()=>{this.done=!0,this.resolve()};Promise.all(e).then(()=>{o()}).catch(i=>{this.reject(i)}),e.length===0&&o(),this.initialized=!0}static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:n.\u0275fac})}return n})();function Ff(n){return t=>{t.controlDef={create:(e,o)=>{e?.\u0275ngControlCreate(o)},update:(e,o)=>{e?.\u0275ngControlUpdate?.(o)},passThroughInput:n}}}function Sk(n){return Object.getPrototypeOf(n.prototype).constructor}function pt(n){let t=Sk(n.type),e=!0,o=[n];for(;t&&t!==Function.prototype&&t!==Object.prototype;){let i,r=Object.hasOwn(t,Da)?t[Da]:void 0,a=Object.hasOwn(t,Ia)?t[Ia]:void 0;if(Yn(n))i=r??a;else{if(r)throw new j(903,!1);i=a}if(i){if(e){o.push(i);let c=n;c.inputs=Op(n.inputs),c.declaredInputs=Op(n.declaredInputs),c.outputs=Op(n.outputs);let u=i.hostBindings;u&&Tk(n,u);let f=i.viewQuery,_=i.contentQueries;if(f&&Dk(n,f),_&&Ik(n,_),kk(n,i),Gh(n.outputs,i.outputs),Yn(i)&&i.data.animation){let h=n.data;h.animation=(h.animation||[]).concat(i.data.animation)}}let s=i.features;if(s)for(let c=0;c=0;o--){let i=n[o];i.hostVars=t+=i.hostVars,i.hostAttrs=Ar(i.hostAttrs,e=Ar(e,i.hostAttrs))}}function Op(n){return n===Vo?{}:n===Ft?[]:n}function Dk(n,t){let e=n.viewQuery;e?n.viewQuery=(o,i)=>{t(o,i),e(o,i)}:n.viewQuery=t}function Ik(n,t){let e=n.contentQueries;e?n.contentQueries=(o,i,r)=>{t(o,i,r),e(o,i,r)}:n.contentQueries=t}function Tk(n,t){let e=n.hostBindings;e?n.hostBindings=(o,i)=>{t(o,i),e(o,i)}:n.hostBindings=t}function nb(n,t,e,o,i,r,a,s){if(e.firstCreatePass){n.mergedAttrs=Ar(n.mergedAttrs,n.attrs);let f=n.tView=Pf(2,n,i,r,a,e.directiveRegistry,e.pipeRegistry,null,e.schemas,e.consts,null);e.queries!==null&&(e.queries.template(e,n),f.queries=e.queries.embeddedTView(n))}s&&(n.flags|=s),kr(n,!1);let c=Rk(e,t,n,o);ul()&&Mf(e,t,c,n),Rr(c,t);let u=RM(c,t,c,n);t[o+Ke]=u,vf(t,u),dk(u,n,t)}function Ak(n,t,e,o,i,r,a,s,c,u,f){let _=e+Ke,h;return t.firstCreatePass?(h=os(t,_,4,a||null,s||null),tp()&&HM(t,n,h,mn(t.consts,u),OM),x0(t,h)):h=t.data[_],nb(h,n,t,e,o,i,r,c),Na(h)&&yf(t,n,h),u!=null&&td(n,h,f),h}function $l(n,t,e,o,i,r,a,s,c,u,f){let _=e+Ke,h;if(t.firstCreatePass){if(h=os(t,_,4,a||null,s||null),u!=null){let C=mn(t.consts,u);h.localNames=[];for(let O=0;O{class n{log(e){console.log(e)}warn(e){console.warn(e)}static \u0275fac=function(o){return new(o||n)};static \u0275prov=ee({token:n,factory:n.\u0275fac,providedIn:"platform"})}return n})();var Lf=new $("");var rd=new $("");function ob(){Xu(()=>{let n="";throw new j(600,n)})}var Nk=10;var Wt=(()=>{class n{_runningTick=!1;_destroyed=!1;_destroyListeners=[];_views=[];internalErrorHandler=v(tn);afterRenderManager=v(_f);zonelessEnabled=v(Dr);rootEffectScheduler=v(_l);dirtyFlags=0;tracingSnapshot=null;allTestViews=new Set;autoDetectTestViews=new Set;includeAllTestViews=!1;afterTick=new fe;get allViews(){return[...(this.includeAllTestViews?this.allTestViews:this.autoDetectTestViews).keys(),...this._views]}get destroyed(){return this._destroyed}componentTypes=[];components=[];internalPendingTask=v(Kn);get isStable(){return this.internalPendingTask.hasPendingTasksObservable.pipe(Ee(e=>!e))}constructor(){v(Jn,{optional:!0})}whenStable(){let e;return new Promise(o=>{e=this.isStable.subscribe({next:i=>{i&&o()}})}).finally(()=>{e.unsubscribe()})}_injector=v(De);_rendererFactory=null;get injector(){return this._injector}bootstrap(e,o){return this.bootstrapImpl(e,o)}bootstrapImpl(e,o,i=Ne.NULL){return this._injector.get(ce).run(()=>{if(Se(be.BootstrapComponentStart),!this._injector.get(Rf).done){let R="";throw new j(405,R)}let s=Lo(e),c=this._injector.get(Mo),u=new Fr(s,c);this.componentTypes.push(e);let{hostElement:f,directives:_,bindings:h}=Lk(o),C=f||u.selector,O=u.create(i,[],C,c.injector,_,h),P=O.location.nativeElement,T=O.injector.get(Lf,null);return T?.registerApplication(P),O.onDestroy(()=>{this.detachView(O.hostView),Ga(this.components,O),T?.unregisterApplication(P)}),this._loadComponent(O),Se(be.BootstrapComponentEnd,O),O})}tick(){this.zonelessEnabled||(this.dirtyFlags|=1),this._tick()}_tick(){Se(be.ChangeDetectionStart),this.tracingSnapshot!==null?this.tracingSnapshot.run(Zl.CHANGE_DETECTION,this.tickImpl):this.tickImpl()}tickImpl=()=>{if(this._runningTick)throw Se(be.ChangeDetectionEnd),new j(101,!1);let e=Y(null);try{this._runningTick=!0,this.synchronize()}finally{this._runningTick=!1,this.tracingSnapshot?.dispose(),this.tracingSnapshot=null,Y(e),this.afterTick.next(),Se(be.ChangeDetectionEnd)}};synchronize(){this._rendererFactory===null&&!this._injector.destroyed&&(this._rendererFactory=this._injector.get($t,null,{optional:!0}));let e=0;for(;this.dirtyFlags!==0&&e++La(e))){this.dirtyFlags|=2;return}else this.dirtyFlags&=-8}attachView(e){let o=e;this._views.push(o),o.attachToAppRef(this)}detachView(e){let o=e;Ga(this._views,o),o.detachFromAppRef()}_loadComponent(e){this.attachView(e.hostView);try{this.tick()}catch(i){this.internalErrorHandler(i)}this.components.push(e),this._injector.get(rd,[]).forEach(i=>i(e))}ngOnDestroy(){if(!this._destroyed)try{this._destroyListeners.forEach(e=>e()),this._views.slice().forEach(e=>e.destroy())}finally{this._destroyed=!0,this._views=[],this._destroyListeners=[]}}onDestroy(e){return this._destroyListeners.push(e),()=>Ga(this._destroyListeners,e)}destroy(){if(this._destroyed)throw new j(406,!1);let e=this._injector;e.destroy&&!e.destroyed&&e.destroy()}get viewCount(){return this._views.length}static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:n.\u0275fac})}return n})();function Lk(n){return n===void 0||typeof n=="string"||n instanceof Element?{hostElement:n}:n}function Ga(n,t){let e=n.indexOf(t);e>-1&&n.splice(e,1)}function ft(n,t,e,o){let i=Z(),r=Co();if(Ht(i,r,t)){let a=Ue(),s=Ri();Jw(s,i,n,t,e,o)}return ft}function je(){return Z()[zt][Ye]}var Kp=class{destroy(t){}updateValue(t,e){}swap(t,e){let o=Math.min(t,e),i=Math.max(t,e),r=this.detach(i);if(i-o>1){let a=this.detach(o);this.attach(o,r),this.attach(i,a)}else this.attach(o,r)}move(t,e){this.attach(e,this.detach(t))}};function vp(n,t,e,o,i){return n===e&&Object.is(t,o)?1:Object.is(i(n,t),i(e,o))?-1:0}function Vk(n,t,e,o){let i,r,a=0,s=n.length-1,c=void 0;if(Array.isArray(t)){Y(o);let u=t.length-1;for(Y(null);a<=s&&a<=u;){let f=n.at(a),_=t[a],h=vp(a,f,a,_,e);if(h!==0){h<0&&n.updateValue(a,_),a++;continue}let C=n.at(s),O=t[u],P=vp(s,C,u,O,e);if(P!==0){P<0&&n.updateValue(s,O),s--,u--;continue}let T=e(a,f),R=e(s,C),D=e(a,_);if(Object.is(D,R)){let H=e(u,O);Object.is(H,T)?(n.swap(a,s),n.updateValue(s,O),u--,s--):n.move(s,a),n.updateValue(a,_),a++;continue}if(i??=new Hl,r??=p0(n,a,s,e),Zp(n,i,a,D))n.updateValue(a,_),a++,s++;else if(r.has(D))i.set(T,n.detach(a)),s--;else{let H=n.create(a,t[a]);n.attach(a,H),a++,s++}}for(;a<=u;)g0(n,i,e,a,t[a]),a++}else if(t!=null){Y(o);let u=t[Symbol.iterator]();Y(null);let f=u.next();for(;!f.done&&a<=s;){let _=n.at(a),h=f.value,C=vp(a,_,a,h,e);if(C!==0)C<0&&n.updateValue(a,h),a++,f=u.next();else{i??=new Hl,r??=p0(n,a,s,e);let O=e(a,h);if(Zp(n,i,a,O))n.updateValue(a,h),a++,s++,f=u.next();else if(!r.has(O))n.attach(a,n.create(a,h)),a++,s++,f=u.next();else{let P=e(a,_);i.set(P,n.detach(a)),s--}}}for(;!f.done;)g0(n,i,e,n.length,f.value),f=u.next()}for(;a<=s;)n.destroy(n.detach(s--));i?.forEach(u=>{n.destroy(u)})}function Zp(n,t,e,o){return t!==void 0&&t.has(o)?(n.attach(e,t.get(o)),t.delete(o),!0):!1}function g0(n,t,e,o,i){if(Zp(n,t,o,e(o,i)))n.updateValue(o,i);else{let r=n.create(o,i);n.attach(o,r)}}function p0(n,t,e,o){let i=new Set;for(let r=t;r<=e;r++)i.add(o(r,n.at(r)));return i}var Hl=class{kvMap=new Map;_vMap=void 0;has(t){return this.kvMap.has(t)}delete(t){if(!this.has(t))return!1;let e=this.kvMap.get(t);return this._vMap!==void 0&&this._vMap.has(e)?(this.kvMap.set(t,this._vMap.get(e)),this._vMap.delete(e)):this.kvMap.delete(t),!0}get(t){return this.kvMap.get(t)}set(t,e){if(this.kvMap.has(t)){let o=this.kvMap.get(t);this._vMap===void 0&&(this._vMap=new Map);let i=this._vMap;for(;i.has(o);)o=i.get(o);i.set(o,e)}else this.kvMap.set(t,e)}forEach(t){for(let[e,o]of this.kvMap)if(t(o,e),this._vMap!==void 0){let i=this._vMap;for(;i.has(o);)o=i.get(o),t(o,e)}}};function M(n,t,e,o,i,r,a,s){An("NgControlFlow");let c=Z(),u=Ue(),f=mn(u.consts,r);return $l(c,u,n,t,e,o,i,f,256,a,s),Vf}function Vf(n,t,e,o,i,r,a,s){An("NgControlFlow");let c=Z(),u=Ue(),f=mn(u.consts,r);return $l(c,u,n,t,e,o,i,f,512,a,s),Vf}function b(n,t){An("NgControlFlow");let e=Z(),o=Co(),i=e[o]!==ut?e[o]:-1,r=i!==-1?Ul(e,Ke+i):void 0,a=0;if(Ht(e,o,n)){let s=Y(null);try{if(r!==void 0&&NM(r,a),n!==-1){let c=Ke+n,u=Ul(e,c),f=ef(e[K],c),_=VM(u,f,e),h=nd(e,f,t,{dehydratedView:_});od(u,h,a,Ka(f,_))}}finally{Y(s)}}else if(r!==void 0){let s=FM(r,a);s!==void 0&&(s[Ye]=t)}}var Xp=class{lContainer;$implicit;$index;constructor(t,e,o){this.lContainer=t,this.$implicit=e,this.$index=o}get $count(){return this.lContainer.length-Ge}};function Yo(n){return n}function ze(n,t){return t}var Qp=class{hasEmptyBlock;trackByFn;liveCollection;constructor(t,e,o){this.hasEmptyBlock=t,this.trackByFn=e,this.liveCollection=o}};function W(n,t,e,o,i,r,a,s,c,u,f,_,h){An("NgControlFlow");let C=Z(),O=Ue(),P=c!==void 0,T=Z(),R=s?a.bind(T[zt][Ye]):a,D=new Qp(P,R);T[Ke+n]=D,$l(C,O,n+1,t,e,o,i,mn(O.consts,r),256),P&&$l(C,O,n+2,c,u,f,_,mn(O.consts,h),512)}var Jp=class extends Kp{lContainer;hostLView;templateTNode;operationsCounter=void 0;needsIndexUpdate=!1;constructor(t,e,o){super(),this.lContainer=t,this.hostLView=e,this.templateTNode=o}get length(){return this.lContainer.length-Ge}at(t){return this.getLView(t)[Ye].$implicit}attach(t,e){let o=e[yr];this.needsIndexUpdate||=t!==this.length,od(this.lContainer,e,t,Ka(this.templateTNode,o)),Bk(this.lContainer,t)}detach(t){return this.needsIndexUpdate||=t!==this.length-1,jk(this.lContainer,t),zk(this.lContainer,t)}create(t,e){let o=zp(this.lContainer,this.templateTNode.tView.ssrId);return nd(this.hostLView,this.templateTNode,new Xp(this.lContainer,e,t),{dehydratedView:o})}destroy(t){Ql(t[K],t)}updateValue(t,e){this.getLView(t)[Ye].$implicit=e}reset(){this.needsIndexUpdate=!1}updateIndexes(){if(this.needsIndexUpdate)for(let t=0;t0){let r=o[Un];Ow(r,i),Wo.delete(o[Gn]),i.detachedLeaveAnimationFns=void 0}}function jk(n,t){if(n.length<=Ge)return;let e=Ge+t,o=n[e],i=o?o[qn]:void 0;i&&i.leave&&i.leave.size>0&&(i.detachedLeaveAnimationFns=[])}function zk(n,t){return Xa(n,t)}function $k(n,t){return FM(n,t)}function ef(n,t){return tl(n,t)}function N(n,t,e){let o=Z(),i=Co();if(Ht(o,i,t)){let r=Ue(),a=Ri();bM(a,o,n,t,o[Le],e)}return N}function tf(n,t,e,o,i){xf(t,n,e,i?"class":"style",o)}function l(n,t,e,o){let i=Z(),r=i[K],a=n+Ke,s=r.firstCreatePass?WM(a,i,2,t,OM,tp(),e,o):r.data[a];if(ho(s)){let c=i[En].tracingService;if(c&&c.componentCreate){let u=r.data[s.directiveStart+s.componentOffset];return c.componentCreate(zM(u),()=>(f0(n,t,i,s,o),l))}}return f0(n,t,i,s,o),l}function f0(n,t,e,o,i){if(vM(o,e,n,t,ib),Na(o)){let r=e[K];yf(r,e,o),Y0(r,o,e)}i!=null&&td(e,o)}function d(){let n=Ue(),t=ct(),e=yM(t);return n.firstCreatePass&&GM(n,e),np(e)&&op(),ep(),e.classesWithoutHost!=null&&d1(e)&&tf(n,e,Z(),e.classesWithoutHost,!0),e.stylesWithoutHost!=null&&u1(e)&&tf(n,e,Z(),e.stylesWithoutHost,!1),d}function z(n,t,e,o){return l(n,t,e,o),d(),z}function V(n,t,e,o){let i=Z(),r=i[K],a=n+Ke,s=r.firstCreatePass?YS(a,r,2,t,e,o):r.data[a];return vM(s,i,n,t,ib),o!=null&&td(i,s),V}function U(){let n=ct(),t=yM(n);return np(t)&&op(),ep(),U}function Ko(n,t,e,o){return V(n,t,e,o),U(),Ko}var ib=(n,t,e,o,i)=>(gl(!0),oM(t[Le],o,up()));function B(){return Z()}function qe(n,t,e){let o=Z(),i=Co();if(Ht(o,i,t)){let r=Ue(),a=Ri();PM(a,o,n,t,o[Le],e)}return qe}var Ha=void 0;function Hk(n){let t=Math.floor(Math.abs(n)),e=n.toString().replace(/^[^.]*\.?/,"").length;return t===1&&e===0?1:5}var Uk=["en",[["a","p"],["AM","PM"]],[["AM","PM"]],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],Ha,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],Ha,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm\u202Fa","h:mm:ss\u202Fa","h:mm:ss\u202Fa z","h:mm:ss\u202Fa zzzz"],["{1}, {0}",Ha,Ha,Ha],[".",",",";","%","+","-","E","\xD7","\u2030","\u221E","NaN",":"],["#,##0.###","#,##0%","\xA4#,##0.00","#E0"],"USD","$","US Dollar",{},"ltr",Hk],qa=Object.create(null);function Bf(n,t,e){typeof t!="string"&&(e=t,t=n[Xe.LocaleId]),t=t.toLowerCase().replace(/_/g,"-"),qa[t]=n,e&&(qa[t][Xe.ExtraData]=e)}function rn(n){let t=Wk(n),e=m0(t);if(e)return e;let o=t.split("-")[0];if(e=m0(o),e)return e;if(o==="en")return Uk;throw new j(701,!1)}function m0(n){if(!(n in qa)){let t=Sn.ng&&Sn.ng.common&&Sn.ng.common.locales&&Sn.ng.common.locales[n];return t!==void 0&&(qa[n]=t),t}return qa[n]}var Xe={LocaleId:0,DayPeriodsFormat:1,DayPeriodsStandalone:2,DaysFormat:3,DaysStandalone:4,MonthsFormat:5,MonthsStandalone:6,Eras:7,FirstDayOfWeek:8,WeekendRange:9,DateFormat:10,TimeFormat:11,DateTimeFormat:12,NumberSymbols:13,NumberFormats:14,CurrencyCode:15,CurrencySymbol:16,CurrencyName:17,Currencies:18,Directionality:19,PluralCase:20,ExtraData:21};function Wk(n){return n.toLowerCase().replace(/_/g,"-")}var as="en-US";var Gk=as;function rb(n){typeof n=="string"&&(Gk=n.toLowerCase().replace(/_/g,"-"))}function I(n,t,e){let o=Z(),i=Ue(),r=ct();return ab(i,o,o[Le],r,n,t,e),I}function pe(n,t,e){let o=Z(),i=Ue(),r=ct();return(r.type&3||e)&&If(r,i,o,e,o[Le],n,t,Bi(r,o,t)),pe}function ab(n,t,e,o,i,r,a){let s=!0,c=null;if((o.type&3||a)&&(c??=Bi(o,t,r),If(o,n,t,a,e,i,r,c)&&(s=!1)),s){let u=o.outputs?.[i],f=o.hostDirectiveOutputs?.[i];if(f&&f.length)for(let _=0;_>17&32767}function qk(n){return(n&2)==2}function Yk(n,t){return n&131071|t<<17}function nf(n){return n|2}function Nr(n){return(n&131068)>>2}function yp(n,t){return n&-131069|t<<2}function Kk(n){return(n&1)===1}function of(n){return n|1}function Zk(n,t,e,o,i,r){let a=r?t.classBindings:t.styleBindings,s=$i(a),c=Nr(a);n[o]=e;let u=!1,f;if(Array.isArray(e)){let _=e;f=_[1],(f===null||Or(_,f)>0)&&(u=!0)}else f=e;if(i)if(c!==0){let h=$i(n[s+1]);n[o+1]=Pl(h,s),h!==0&&(n[h+1]=yp(n[h+1],o)),n[s+1]=Yk(n[s+1],o)}else n[o+1]=Pl(s,0),s!==0&&(n[s+1]=yp(n[s+1],o)),s=o;else n[o+1]=Pl(c,0),s===0?s=o:n[c+1]=yp(n[c+1],o),c=o;u&&(n[o+1]=nf(n[o+1])),_0(n,f,o,!0),_0(n,f,o,!1),Xk(t,f,n,o,r),a=Pl(s,c),r?t.classBindings=a:t.styleBindings=a}function Xk(n,t,e,o,i){let r=i?n.residualClasses:n.residualStyles;r!=null&&typeof t=="string"&&Or(r,t)>=0&&(e[o+1]=of(e[o+1]))}function _0(n,t,e,o){let i=n[e+1],r=t===null,a=o?$i(i):Nr(i),s=!1;for(;a!==0&&(s===!1||r);){let c=n[a],u=n[a+1];Qk(c,t)&&(s=!0,n[a+1]=o?of(u):nf(u)),a=o?$i(u):Nr(u)}s&&(n[e+1]=o?nf(i):of(i))}function Qk(n,t){return n===null||t==null||(Array.isArray(n)?n[1]:n)===t?!0:Array.isArray(n)&&typeof t=="string"?Or(n,t)>=0:!1}var In={textEnd:0,key:0,keyEnd:0,value:0,valueEnd:0};function Jk(n){return n.substring(In.key,In.keyEnd)}function e2(n){return t2(n),sb(n,cb(n,0,In.textEnd))}function sb(n,t){let e=In.textEnd;return e===t?-1:(t=In.keyEnd=n2(n,In.key=t,e),cb(n,t,e))}function t2(n){In.key=0,In.keyEnd=0,In.value=0,In.valueEnd=0,In.textEnd=n.length}function cb(n,t,e){for(;t32;)t++;return t}function Ie(n,t,e){return lb(n,t,e,!1),Ie}function E(n,t){return lb(n,t,null,!0),E}function sd(n){i2(d2,o2,n,!0)}function o2(n,t){for(let e=e2(t);e>=0;e=sb(t,e))Xc(n,Jk(t),!0)}function lb(n,t,e,o){let i=Z(),r=Ue(),a=Va(2);if(r.firstUpdatePass&&ub(r,n,a,o),t!==ut&&Ht(i,a,t)){let s=r.data[_n()];gb(r,s,i,i[Le],n,i[a+1]=g2(t,e),o,a)}}function i2(n,t,e,o){let i=Ue(),r=Va(2);i.firstUpdatePass&&ub(i,null,r,o);let a=Z();if(e!==ut&&Ht(a,r,e)){let s=i.data[_n()];if(pb(s,o)&&!db(i,r)){let c=o?s.classesWithoutHost:s.stylesWithoutHost;c!==null&&(e=Gc(c,e||"")),tf(i,s,a,e,o)}else u2(i,s,a,a[Le],a[r+1],a[r+1]=l2(n,t,e),o,r)}}function db(n,t){return t>=n.expandoStartIndex}function ub(n,t,e,o){let i=n.data;if(i[e+1]===null){let r=i[_n()],a=db(n,e);pb(r,o)&&t===null&&!a&&(t=!1),t=r2(i,r,t,o),Zk(i,r,t,e,a,o)}}function r2(n,t,e,o){let i=yC(n),r=o?t.residualClasses:t.residualStyles;if(i===null)(o?t.classBindings:t.styleBindings)===0&&(e=xp(null,n,t,e,o),e=Ja(e,t.attrs,o),r=null);else{let a=t.directiveStylingLast;if(a===-1||n[a]!==i)if(e=xp(i,n,t,e,o),r===null){let c=a2(n,t,o);c!==void 0&&Array.isArray(c)&&(c=xp(null,n,t,c[1],o),c=Ja(c,t.attrs,o),s2(n,t,o,c))}else r=c2(n,t,o)}return r!==void 0&&(o?t.residualClasses=r:t.residualStyles=r),e}function a2(n,t,e){let o=e?t.classBindings:t.styleBindings;if(Nr(o)!==0)return n[$i(o)]}function s2(n,t,e,o){let i=e?t.classBindings:t.styleBindings;n[$i(i)]=o}function c2(n,t,e){let o,i=t.directiveEnd;for(let r=1+t.directiveStylingLast;r0;){let c=n[i],u=Array.isArray(c),f=u?c[1]:c,_=f===null,h=e[i+1];h===ut&&(h=_?Ft:void 0);let C=_?Qc(h,o):f===o?h:void 0;if(u&&!Wl(C)&&(C=Qc(c,o)),Wl(C)&&(s=C,a))return s;let O=n[i+1];i=a?$i(O):Nr(O)}if(t!==null){let c=r?t.residualClasses:t.residualStyles;c!=null&&(s=Qc(c,o))}return s}function Wl(n){return n!==void 0}function g2(n,t){return n==null||n===""||(typeof t=="string"?n=Uo(n)+t:typeof n=="object"&&(n=ka(Uo(n)))),n}function pb(n,t){return(n.flags&(t?8:16))!==0}function g(n,t=""){let e=Z(),o=Ue(),i=n+Ke,r=o.firstCreatePass?os(o,i,1,t,null):o.data[i],a=p2(o,e,r,t);e[i]=a,ul()&&Mf(o,e,a,r),kr(r,!1)}var p2=(n,t,e,o)=>(gl(!0),X1(t[Le],o));function f2(n,t,e,o=""){return Ht(n,Co(),e)?t+wn(e)+o:ut}function m2(n,t,e,o,i,r=""){let a=sp(),s=Df(n,a,e,i);return Va(2),s?t+wn(e)+o+wn(i)+r:ut}function _2(n,t,e,o,i,r,a,s=""){let c=sp(),u=DS(n,c,e,i,a);return Va(3),u?t+wn(e)+o+wn(i)+r+wn(a)+s:ut}function y(n){return L("",n),y}function L(n,t,e){let o=Z(),i=f2(o,n,t,e);return i!==ut&&jf(o,_n(),i),L}function tt(n,t,e,o,i){let r=Z(),a=m2(r,n,t,e,o,i);return a!==ut&&jf(r,_n(),a),tt}function Br(n,t,e,o,i,r,a){let s=Z(),c=_2(s,n,t,e,o,i,r,a);return c!==ut&&jf(s,_n(),c),Br}function jf(n,t,e){let o=Yg(t,n);Q1(n[Le],o,e)}function xt(n,t,e){hl(t)&&(t=t());let o=Z(),i=Co();if(Ht(o,i,t)){let r=Ue(),a=Ri();bM(a,o,n,t,o[Le],e)}return xt}function Nt(n,t){let e=hl(n);return e&&n.set(t),e}function wt(n,t){let e=Z(),o=Ue(),i=ct();return ab(o,e,e[Le],i,n,t),wt}function Gi(n){return Ht(Z(),Co(),n)?wn(n):ut}function C0(n,t,e){let o=Ue();o.firstCreatePass&&fb(t,o.data,o.blueprint,Yn(n),e)}function fb(n,t,e,o,i){if(n=Mt(n),Array.isArray(n))for(let r=0;r>20;if(yi(n)||!n.multi){let C=new ji(u,i,re,null),O=Sp(c,t,i?f:f+h,_);O===-1?(Dp(Dl(s,a),r,c),wp(r,n,t.length),t.push(c),s.directiveStart++,s.directiveEnd++,i&&(s.providerIndexes+=1048576),e.push(C),a.push(C)):(e[O]=C,a[O]=C)}else{let C=Sp(c,t,f+h,_),O=Sp(c,t,f,f+h),P=C>=0&&e[C],T=O>=0&&e[O];if(i&&!T||!i&&!P){Dp(Dl(s,a),r,c);let R=M2(i?C2:h2,e.length,i,o,u,n);!i&&T&&(e[O].providerFactory=R),wp(r,n,t.length,0),t.push(c),s.directiveStart++,s.directiveEnd++,i&&(s.providerIndexes+=1048576),e.push(R),a.push(R)}else{let R=mb(e[i?O:C],u,!i&&o);wp(r,n,C>-1?C:O,R)}!i&&o&&T&&e[O].componentProviders++}}}function wp(n,t,e,o){let i=yi(t),r=iC(t);if(i||r){let c=(r?Mt(t.useClass):t).prototype.ngOnDestroy;if(c){let u=n.destroyHooks||(n.destroyHooks=[]);if(!i&&t.multi){let f=u.indexOf(e);f===-1?u.push(e,[o,c]):u[f+1].push(o,c)}else u.push(e,c)}}}function mb(n,t,e){return e&&n.componentProviders++,n.multi.push(t)-1}function Sp(n,t,e,o){for(let i=e;i{e.providersResolver=(o,i)=>C0(o,i?i(n):n,!1),t&&(e.viewProvidersResolver=(o,i)=>C0(o,i?i(t):t,!0))}}function zf(n,t){let e=Er()+n,o=Z();return o[e]===ut?Ef(o,e,t()):ES(o,e)}function $f(n,t,e){return hb(Z(),Er(),n,t,e)}function Hf(n,t,e,o){return Cb(Z(),Er(),n,t,e,o)}function _b(n,t){let e=n[t];return e===ut?void 0:e}function hb(n,t,e,o,i,r){let a=t+e;return Ht(n,a,i)?Ef(n,a+1,r?o.call(r,i):o(i)):_b(n,a+1)}function Cb(n,t,e,o,i,r,a){let s=t+e;return Df(n,s,i,r)?Ef(n,s+2,a?o.call(a,i,r):o(i,r)):_b(n,s+2)}function mt(n,t){let e=Ue(),o,i=n+Ke;e.firstCreatePass?(o=b2(t,e.pipeRegistry),e.data[i]=o,o.onDestroy&&(e.destroyHooks??=[]).push(i,o.onDestroy)):o=e.data[i];let r=o.factory||(o.factory=No(o.type,!0)),a,s=Rt(re);try{let c=El(!1),u=r();return El(c),Kg(e,Z(),i,u),u}finally{Rt(s)}}function b2(n,t){if(t)for(let e=t.length-1;e>=0;e--){let o=t[e];if(n===o.name)return o}}function qi(n,t,e){let o=n+Ke,i=Z(),r=nl(i,o);return Mb(i,o)?hb(i,Er(),t,r.transform,e,r):r.transform(e)}function qt(n,t,e,o){let i=n+Ke,r=Z(),a=nl(r,i);return Mb(r,i)?Cb(r,Er(),t,a.transform,e,o,a):a.transform(e,o)}function Mb(n,t){return n[K].data[t].pure}var bb=(()=>{class n{applicationErrorHandler=v(tn);appRef=v(Wt);taskService=v(Kn);ngZone=v(ce);zonelessEnabled=v(Dr);tracing=v(Jn,{optional:!0});zoneIsDefined=typeof Zone<"u"&&!!Zone.root.run;schedulerTickApplyArgs=[{data:{__scheduler_tick__:!0}}];subscriptions=new Oe;angularZoneId=this.zoneIsDefined?this.ngZone._inner?.get(wa):null;scheduleInRootZone=!this.zonelessEnabled&&this.zoneIsDefined&&(v(ml,{optional:!0})??!1);cancelScheduledCallback=null;useMicrotaskScheduler=!1;runningTick=!1;pendingRenderTaskId=null;constructor(){this.subscriptions.add(this.appRef.afterTick.subscribe(()=>{let e=this.taskService.add();if(!this.runningTick&&(this.cleanup(),!this.zonelessEnabled||this.appRef.includeAllTestViews)){this.taskService.remove(e);return}this.switchToMicrotaskScheduler(),this.taskService.remove(e)})),this.subscriptions.add(this.ngZone.onUnstable.subscribe(()=>{this.runningTick||this.cleanup()}))}switchToMicrotaskScheduler(){this.ngZone.runOutsideAngular(()=>{let e=this.taskService.add();this.useMicrotaskScheduler=!0,queueMicrotask(()=>{this.useMicrotaskScheduler=!1,this.taskService.remove(e)})})}notify(e){if(!this.zonelessEnabled&&e===5)return;switch(e){case 0:case 2:{this.appRef.dirtyFlags|=2;break}case 3:case 4:case 5:case 1:{this.appRef.dirtyFlags|=4;break}case 6:{this.appRef.dirtyFlags|=2;break}case 12:{this.appRef.dirtyFlags|=16;break}case 13:{this.appRef.dirtyFlags|=2;break}case 11:break;default:this.appRef.dirtyFlags|=8}if(this.appRef.tracingSnapshot=this.tracing?.snapshot(this.appRef.tracingSnapshot)??null,!this.shouldScheduleTick())return;let o=this.useMicrotaskScheduler?IC:fp;this.pendingRenderTaskId=this.taskService.add(),this.scheduleInRootZone?this.cancelScheduledCallback=Zone.root.run(()=>o(()=>this.tick())):this.cancelScheduledCallback=this.ngZone.runOutsideAngular(()=>o(()=>this.tick()))}shouldScheduleTick(){return!(this.appRef.destroyed||this.pendingRenderTaskId!==null||this.runningTick||this.appRef._runningTick||!this.zonelessEnabled&&this.zoneIsDefined&&Zone.current.get(wa+this.angularZoneId))}tick(){if(this.runningTick||this.appRef.destroyed)return;if(this.appRef.dirtyFlags===0){this.cleanup();return}!this.zonelessEnabled&&this.appRef.dirtyFlags&7&&(this.appRef.dirtyFlags|=1);let e=this.taskService.add();try{this.ngZone.run(()=>{this.runningTick=!0,this.appRef._tick()},void 0,this.schedulerTickApplyArgs)}catch(o){this.applicationErrorHandler(o)}finally{this.taskService.remove(e),this.cleanup()}}ngOnDestroy(){this.subscriptions.unsubscribe(),this.cleanup()}cleanup(){if(this.runningTick=!1,this.cancelScheduledCallback?.(),this.cancelScheduledCallback=null,this.pendingRenderTaskId!==null){let e=this.pendingRenderTaskId;this.pendingRenderTaskId=null,this.taskService.remove(e)}}static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:n.\u0275fac})}return n})();function Pb(){return[{provide:Hn,useExisting:bb},{provide:ce,useClass:Sa},{provide:Dr,useValue:!0}]}var Uf=(()=>{class n{compileModuleSync(e){return new zl(e)}compileModuleAsync(e){return Promise.resolve(this.compileModuleSync(e))}clearCache(){}clearCacheFor(e){}getModuleId(e){}static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:n.\u0275fac})}return n})();function P2(){return typeof $localize<"u"&&$localize.locale||as}var Yi=new $("",{factory:()=>v(Yi,{optional:!0,skipSelf:!0})||P2()});var cd=class{destroyed=!1;listeners=null;errorHandler=v(un,{optional:!0});isEmitting=!1;hasNullListeners=!1;destroyRef=v(Te);constructor(){this.destroyRef.onDestroy(()=>{this.destroyed=!0,this.listeners=null})}subscribe(t){if(this.destroyed)throw new j(953,!1);return(this.listeners??=[]).push(t),{unsubscribe:()=>{let e=this.listeners?this.listeners.indexOf(t):-1;e>-1&&(this.isEmitting?(this.hasNullListeners=!0,this.listeners[e]=null):this.listeners.splice(e,1))}}}emit(t){if(this.destroyed){console.warn(xn(953,!1));return}if(this.listeners===null)return;this.isEmitting=!0;let e=Y(null);try{for(let o of this.listeners)try{o!==null&&o(t)}catch(i){this.errorHandler?.handleError(i)}}finally{this.hasNullListeners&&(this.hasNullListeners=!1,this.listeners&&O2(this.listeners)),Y(e),this.isEmitting=!1}}};function O2(n){let t=n.length-1;for(;t>-1;)n[t]===null&&n.splice(t,1),t--}function A(n,t){return ic(n,t?.equal)}function ie(n){return uh(n)}var Ob=class n extends Error{_brand;constructor(t){super(t)}static IDLE=new n("IDLE");static LOADING=new n("LOADING")},v2=n=>n;function Wf(n,t){if(typeof n=="function"){let e=ng(n,v2,t?.equal);return vb(e,t?.debugName,t?.set)}else{let e=ng(n.source,n.computation,n.equal);return vb(e,n.debugName,n.set)}}function vb(n,t,e){let o=n[lt],i=n;if(e!==void 0){let r=a=>og(o,a);i.set=a=>e(a,r),i.update=a=>e(a(ie(n)),r)}else i.set=r=>og(o,r),i.update=r=>dh(o,r);return i.asReadonly=pl.bind(n),i}var kb=Symbol("InputSignalNode#UNSET"),j2=F(x({},ac),{transformFn:void 0,applyValueToInputSignal(n,t){mi(n,t)}});function Eb(n,t){let e=Object.create(j2);e.value=n,e.transformFn=t?.transform;function o(){if(ui(e),e.value===kb){let i=null;throw new j(-950,i)}return e.value}return o[lt]=e,o}var dd=class{attributeName;constructor(t){this.attributeName=t}__NG_ELEMENT_ID__=()=>ts(this.attributeName);toString(){return`HostAttributeToken ${this.attributeName}`}};function qf(n){return z2(n)?n.default:n}function z2(n){return n&&typeof n=="object"&&"default"in n}function ud(n){return new cd}function yb(n,t){return Eb(n,t)}function $2(n){return Eb(kb,n)}var gd=(yb.required=$2,yb);var H2=1e4;var Kq=H2-1e3;var Ln=(()=>{class n{static __NG_ELEMENT_ID__=U2}return n})();function U2(n){return W2(ct(),Z(),(n&16)===16)}function W2(n,t,e){if(ho(n)&&!e){let o=fn(n.index,t);return new Go(o,o)}else if(n.type&175){let o=t[zt];return new Go(o,t)}return null}var G2=(()=>{class n{zone=v(ce);changeDetectionScheduler=v(Hn);applicationRef=v(Wt);applicationErrorHandler=v(tn);_onMicrotaskEmptySubscription;initialize(){this._onMicrotaskEmptySubscription||(this._onMicrotaskEmptySubscription=this.zone.onMicrotaskEmpty.subscribe({next:()=>{this.changeDetectionScheduler.runningTick||this.zone.run(()=>{try{this.applicationRef.dirtyFlags|=1,this.applicationRef._tick()}catch(e){this.applicationErrorHandler(e)}})}}))}ngOnDestroy(){this._onMicrotaskEmptySubscription?.unsubscribe()}static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:n.\u0275fac})}return n})(),q2=new $("",{factory:()=>!1});function Y2({ngZoneFactory:n,scheduleInRootZone:t}){return n??=()=>new ce(F(x({},Ib()),{scheduleInRootZone:t})),[{provide:Dr,useValue:!1},{provide:ce,useFactory:n},{provide:Si,multi:!0,useFactory:()=>{let e=v(G2,{optional:!0});return()=>e.initialize()}},{provide:Si,multi:!0,useFactory:()=>{let e=v(K2);return()=>{e.initialize()}}},{provide:ml,useValue:t??pp}]}function Db(n){let t=n?.scheduleInRootZone,e=Y2({ngZoneFactory:()=>{let o=Ib(n);return o.scheduleInRootZone=t,o.shouldCoalesceEventChangeDetection&&An("NgZone_CoalesceEvent"),new ce(o)},scheduleInRootZone:t});return Bo([{provide:q2,useValue:!0},e])}function Ib(n){return{enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:n?.eventCoalescing??!1,shouldCoalesceRunChangeDetection:n?.runCoalescing??!1}}var K2=(()=>{class n{subscription=new Oe;initialized=!1;zone=v(ce);pendingTasks=v(Kn);initialize(){if(this.initialized)return;this.initialized=!0;let e=null;!this.zone.isStable&&!this.zone.hasPendingMacrotasks&&!this.zone.hasPendingMicrotasks&&(e=this.pendingTasks.add()),this.zone.runOutsideAngular(()=>{this.subscription.add(this.zone.onStable.subscribe(()=>{ce.assertNotInAngularZone(),queueMicrotask(()=>{e!==null&&!this.zone.hasPendingMacrotasks&&!this.zone.hasPendingMicrotasks&&(this.pendingTasks.remove(e),e=null)})}))}),this.subscription.add(this.zone.onUnstable.subscribe(()=>{ce.assertInAngularZone(),e??=this.pendingTasks.add()}))}ngOnDestroy(){this.subscription.unsubscribe()}static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:n.\u0275fac})}return n})();var Gf=new $(""),Z2=new $("");function ss(n){return!n.moduleRef}function X2(n){let t=ss(n)?n.r3Injector:n.moduleRef.injector,e=t.get(ce);return e.run(()=>{ss(n)?n.r3Injector.resolveInjectorInitializers():n.moduleRef.resolveInjectorInitializers();let o=t.get(tn),i;if(e.runOutsideAngular(()=>{i=e.onError.subscribe({next:o})}),ss(n)){let r=()=>t.destroy(),a=n.platformInjector.get(Gf);a.add(r),t.onDestroy(()=>{i.unsubscribe(),a.delete(r)})}else{let r=()=>n.moduleRef.destroy(),a=n.platformInjector.get(Gf);a.add(r),n.moduleRef.onDestroy(()=>{Ga(n.allPlatformModules,n.moduleRef),i.unsubscribe(),a.delete(r)})}return J2(o,e,()=>{let r=t.get(Kn),a=r.add(),s=t.get(Rf);return s.runInitializers(),s.donePromise.then(()=>{let c=t.get(Yi,as);if(rb(c||as),!t.get(Z2,!0))return ss(n)?t.get(Wt):(n.allPlatformModules.push(n.moduleRef),n.moduleRef);if(ss(n)){let f=t.get(Wt);return n.rootComponent!==void 0&&f.bootstrap(n.rootComponent),f}else return Q2?.(n.moduleRef,n.allPlatformModules),n.moduleRef}).finally(()=>{r.remove(a)})})})}var Q2;function J2(n,t,e){try{let o=e();return qo(o)?o.catch(i=>{throw t.runOutsideAngular(()=>n(i)),i}):o}catch(o){throw t.runOutsideAngular(()=>n(o)),o}}var ld=null;function eE(n=[],t){return Ne.create({name:t,providers:[{provide:Ra,useValue:"platform"},{provide:Gf,useValue:new Set([()=>ld=null])},...n]})}function tE(n=[]){if(ld)return ld;let t=eE(n);return ld=t,ob(),nE(t),t}function nE(n){let t=n.get(fl,null);st(n,()=>{t?.forEach(e=>e())})}function Tb(n){let{rootComponent:t,appProviders:e,platformProviders:o,platformRef:i}=n;Se(be.BootstrapApplicationStart);try{let r=i?.injector??tE(o),a=[Pb(),AC,...e||[]],s=new Qa({providers:a,parent:r,debugName:"",runEnvironmentInitializers:!1});return X2({r3Injector:s.injector,platformInjector:r,rootComponent:t})}catch(r){return Promise.reject(r)}finally{Se(be.BootstrapApplicationEnd)}}function Pt(n){return typeof n=="boolean"?n:n!=null&&n!=="false"}function pd(n,t){let e=Lo(n),o=t.elementInjector||vr();return new Fr(e).create(o,t.projectableNodes,t.hostElement,t.environmentInjector,t.directives,t.bindings)}var Ab=null;function hn(){return Ab}function Yf(n){Ab??=n}var cs=class{},jr=(()=>{class n{historyGo(e){throw new Error("")}static \u0275fac=function(o){return new(o||n)};static \u0275prov=ee({token:n,factory:()=>v(Rb),providedIn:"platform"})}return n})();var Rb=(()=>{class n extends jr{_location;_history;_doc=v(Me);constructor(){super(),this._location=window.location,this._history=window.history}getBaseHrefFromDOM(){return hn().getBaseHref(this._doc)}onPopState(e){let o=hn().getGlobalEventTarget(this._doc,"window");return o.addEventListener("popstate",e,!1),()=>o.removeEventListener("popstate",e)}onHashChange(e){let o=hn().getGlobalEventTarget(this._doc,"window");return o.addEventListener("hashchange",e,!1),()=>o.removeEventListener("hashchange",e)}get href(){return this._location.href}get protocol(){return this._location.protocol}get hostname(){return this._location.hostname}get port(){return this._location.port}get pathname(){return this._location.pathname}get search(){return this._location.search}get hash(){return this._location.hash}set pathname(e){this._location.pathname=e}pushState(e,o,i){this._history.pushState(e,o,i)}replaceState(e,o,i){this._history.replaceState(e,o,i)}forward(){this._history.forward()}back(){this._history.back()}historyGo(e=0){this._history.go(e)}getState(){return this._history.state}static \u0275fac=function(o){return new(o||n)};static \u0275prov=ee({token:n,factory:()=>new n,providedIn:"platform"})}return n})();function Lb(n,t){return n?t?n.endsWith("/")?t.startsWith("/")?n+t.slice(1):n+t:t.startsWith("/")?n+t:`${n}/${t}`:n:t}function Fb(n){let t=n.search(/#|\?|$/);return n[t-1]==="/"?n.slice(0,t-1)+n.slice(t):n}function Zo(n){return n&&n[0]!=="?"?`?${n}`:n}var zr=(()=>{class n{historyGo(e){throw new Error("")}static \u0275fac=function(o){return new(o||n)};static \u0275prov=ee({token:n,factory:()=>v(iE),providedIn:"root"})}return n})(),oE=new $(""),iE=(()=>{class n extends zr{_platformLocation;_baseHref;_removeListenerFns=[];constructor(e,o){super(),this._platformLocation=e,this._baseHref=o??this._platformLocation.getBaseHrefFromDOM()??v(Me).location?.origin??""}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(e){this._removeListenerFns.push(this._platformLocation.onPopState(e),this._platformLocation.onHashChange(e))}getBaseHref(){return this._baseHref}prepareExternalUrl(e){return Lb(this._baseHref,e)}path(e=!1){let o=this._platformLocation.pathname+Zo(this._platformLocation.search),i=this._platformLocation.hash;return i&&e?`${o}${i}`:o}pushState(e,o,i,r){let a=this.prepareExternalUrl(i+Zo(r));this._platformLocation.pushState(e,o,a)}replaceState(e,o,i,r){let a=this.prepareExternalUrl(i+Zo(r));this._platformLocation.replaceState(e,o,a)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(e=0){this._platformLocation.historyGo?.(e)}static \u0275fac=function(o){return new(o||n)(Q(jr),Q(oE,8))};static \u0275prov=ee({token:n,factory:n.\u0275fac,providedIn:"root"})}return n})();var Xo=(()=>{class n{_subject=new fe;_basePath;_locationStrategy;_urlChangeListeners=[];_urlChangeSubscription=null;constructor(e){this._locationStrategy=e;let o=this._locationStrategy.getBaseHref();this._basePath=sE(Fb(Nb(o))),this._locationStrategy.onPopState(i=>{this._subject.next({url:this.path(!0),pop:!0,state:i.state,type:i.type})})}ngOnDestroy(){this._urlChangeSubscription?.unsubscribe(),this._urlChangeListeners=[]}path(e=!1){return this.normalize(this._locationStrategy.path(e))}getState(){return this._locationStrategy.getState()}isCurrentPathEqualTo(e,o=""){return this.path()==this.normalize(e+Zo(o))}normalize(e){return n.stripTrailingSlash(aE(this._basePath,Nb(e)))}prepareExternalUrl(e){return e&&e[0]!=="/"&&(e="/"+e),this._locationStrategy.prepareExternalUrl(e)}go(e,o="",i=null){this._locationStrategy.pushState(i,"",e,o),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+Zo(o)),i)}replaceState(e,o="",i=null){this._locationStrategy.replaceState(i,"",e,o),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+Zo(o)),i)}forward(){this._locationStrategy.forward()}back(){this._locationStrategy.back()}historyGo(e=0){this._locationStrategy.historyGo?.(e)}onUrlChange(e){return this._urlChangeListeners.push(e),this._urlChangeSubscription??=this.subscribe(o=>{this._notifyUrlChangeListeners(o.url,o.state)}),()=>{let o=this._urlChangeListeners.indexOf(e);this._urlChangeListeners.splice(o,1),this._urlChangeListeners.length===0&&(this._urlChangeSubscription?.unsubscribe(),this._urlChangeSubscription=null)}}_notifyUrlChangeListeners(e="",o){this._urlChangeListeners.forEach(i=>i(e,o))}subscribe(e,o,i){return this._subject.subscribe({next:e,error:o??void 0,complete:i??void 0})}static normalizeQueryParams=Zo;static joinWithSlash=Lb;static stripTrailingSlash=Fb;static \u0275fac=function(o){return new(o||n)(Q(zr))};static \u0275prov=ee({token:n,factory:()=>rE(),providedIn:"root"})}return n})();function rE(){return new Xo(Q(zr))}function aE(n,t){if(!n||!t.startsWith(n))return t;let e=t.substring(n.length);return e===""||["/",";","?","#"].includes(e[0])?e:t}function Nb(n){return n.replace(/\/index\.html$/,"")}function sE(n){if(new RegExp("^(https?:)?//").test(n)){let[,e]=n.split(/\/\/[^\/]+/);return e}return n}var St=(function(n){return n[n.Format=0]="Format",n[n.Standalone=1]="Standalone",n})(St||{}),Re=(function(n){return n[n.Narrow=0]="Narrow",n[n.Abbreviated=1]="Abbreviated",n[n.Wide=2]="Wide",n[n.Short=3]="Short",n})(Re||{}),Yt=(function(n){return n[n.Short=0]="Short",n[n.Medium=1]="Medium",n[n.Long=2]="Long",n[n.Full=3]="Full",n})(Yt||{}),vo={Decimal:0,Group:1,List:2,PercentSign:3,PlusSign:4,MinusSign:5,Exponential:6,SuperscriptingExponent:7,PerMille:8,Infinity:9,NaN:10,TimeSeparator:11,CurrencyDecimal:12,CurrencyGroup:13};function jb(n){return rn(n)[Xe.LocaleId]}function zb(n,t,e){let o=rn(n),i=[o[Xe.DayPeriodsFormat],o[Xe.DayPeriodsStandalone]],r=Cn(i,t);return Cn(r,e)}function $b(n,t,e){let o=rn(n),i=[o[Xe.DaysFormat],o[Xe.DaysStandalone]],r=Cn(i,t);return Cn(r,e)}function Hb(n,t,e){let o=rn(n),i=[o[Xe.MonthsFormat],o[Xe.MonthsStandalone]],r=Cn(i,t);return Cn(r,e)}function Ub(n,t){let o=rn(n)[Xe.Eras];return Cn(o,t)}function ls(n,t){let e=rn(n);return Cn(e[Xe.DateFormat],t)}function ds(n,t){let e=rn(n);return Cn(e[Xe.TimeFormat],t)}function us(n,t){let o=rn(n)[Xe.DateTimeFormat];return Cn(o,t)}function gs(n,t){let e=rn(n),o=e[Xe.NumberSymbols][t];if(typeof o>"u"){if(t===vo.CurrencyDecimal)return e[Xe.NumberSymbols][vo.Decimal];if(t===vo.CurrencyGroup)return e[Xe.NumberSymbols][vo.Group]}return o}function Wb(n){if(!n[Xe.ExtraData])throw new j(2303,!1)}function Gb(n){let t=rn(n);return Wb(t),(t[Xe.ExtraData][2]||[]).map(o=>typeof o=="string"?Kf(o):[Kf(o[0]),Kf(o[1])])}function qb(n,t,e){let o=rn(n);Wb(o);let i=[o[Xe.ExtraData][0],o[Xe.ExtraData][1]],r=Cn(i,t)||[];return Cn(r,e)||[]}function Cn(n,t){for(let e=t;e>-1;e--)if(typeof n[e]<"u")return n[e];throw new j(2304,!1)}function Kf(n){let[t,e]=n.split(":");return{hours:+t,minutes:+e}}var lE=/^(\d{4,})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/,fd=Object.create(null),dE=/((?:[^BEGHLMOSWYZabcdhmswyz']+)|(?:'(?:[^']|'')*')|(?:G{1,5}|y{1,4}|Y{1,4}|M{1,5}|L{1,5}|w{1,2}|W{1}|d{1,2}|E{1,6}|c{1,6}|a{1,5}|b{1,5}|B{1,5}|h{1,2}|H{1,2}|m{1,2}|s{1,2}|S{1,3}|z{1,4}|Z{1,5}|O{1,4}))([\s\S]*)/,uE=256;function Yb(n,t,e,o){let i=PE(n);gE(t),t=Oo(e,t)||t;let a=[],s;for(;t;)if(s=dE.exec(t),s){a=a.concat(s.slice(1));let f=a.pop();if(!f)break;t=f}else{a.push(t);break}let c=i.getTimezoneOffset();o&&(c=Zb(o,c),i=bE(i,o));let u="";return a.forEach(f=>{let _=CE(f);u+=_?_(i,e,c):f==="''"?"'":f.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),u}function gE(n){if(n.length>uE)throw new j(2300,!1)}function Md(n,t,e){let o=new Date(0);return o.setFullYear(n,t,e),o.setHours(0,0,0),o}function Oo(n,t){let e=jb(n);if(fd[e]??=Object.create(null),fd[e][t])return fd[e][t];let o="";switch(t){case"shortDate":o=ls(n,Yt.Short);break;case"mediumDate":o=ls(n,Yt.Medium);break;case"longDate":o=ls(n,Yt.Long);break;case"fullDate":o=ls(n,Yt.Full);break;case"shortTime":o=ds(n,Yt.Short);break;case"mediumTime":o=ds(n,Yt.Medium);break;case"longTime":o=ds(n,Yt.Long);break;case"fullTime":o=ds(n,Yt.Full);break;case"short":let i=Oo(n,"shortTime"),r=Oo(n,"shortDate");o=md(us(n,Yt.Short),[i,r]);break;case"medium":let a=Oo(n,"mediumTime"),s=Oo(n,"mediumDate");o=md(us(n,Yt.Medium),[a,s]);break;case"long":let c=Oo(n,"longTime"),u=Oo(n,"longDate");o=md(us(n,Yt.Long),[c,u]);break;case"full":let f=Oo(n,"fullTime"),_=Oo(n,"fullDate");o=md(us(n,Yt.Full),[f,_]);break}return o&&(fd[e][t]=o),o}function md(n,t){return t&&(n=n.replace(/\{([^}]+)}/g,function(e,o){return Object.hasOwn(t,o)?t[o]:e})),n}function Vn(n,t,e="-",o,i){let r="";(n<0||i&&n<=0)&&(i?n=-n+1:(n=-n,r=e));let a=String(n);for(;a.length0||s>-e)&&(s+=e),n===3)s===0&&e===-12&&(s=12);else if(n===6)return pE(s,t);let c=gs(a,vo.MinusSign);return Vn(s,t,c,o,i)}}function fE(n,t){switch(n){case 0:return t.getFullYear();case 1:return t.getMonth();case 2:return t.getDate();case 3:return t.getHours();case 4:return t.getMinutes();case 5:return t.getSeconds();case 6:return t.getMilliseconds();case 7:return t.getDay();default:throw new j(2301,!1)}}function $e(n,t,e=St.Format,o=!1){return function(i,r){return mE(i,r,n,t,e,o)}}function mE(n,t,e,o,i,r){switch(e){case 2:return Hb(t,i,o)[n.getMonth()];case 1:return $b(t,i,o)[n.getDay()];case 0:let a=n.getHours(),s=n.getMinutes();if(r){let u=Gb(t),f=qb(t,i,o),_=u.findIndex(h=>{if(Array.isArray(h)){let[C,O]=h,P=a>=C.hours&&s>=C.minutes,T=a0?Math.floor(i/60):Math.ceil(i/60);switch(n){case 0:return(i>=0?"+":"")+Vn(a,2,r)+Vn(Math.abs(i%60),2,r);case 1:return"GMT"+(i>=0?"+":"")+Vn(a,1,r);case 2:return"GMT"+(i>=0?"+":"")+Vn(a,2,r)+":"+Vn(Math.abs(i%60),2,r);case 3:return o===0?"Z":(i>=0?"+":"")+Vn(a,2,r)+":"+Vn(Math.abs(i%60),2,r);default:throw new j(2310,!1)}}}var _E=0,Cd=4;function hE(n){let t=Md(n,_E,1).getDay();return Md(n,0,1+(t<=Cd?Cd:Cd+7)-t)}function Kb(n){let t=n.getDay(),e=t===0?-3:Cd-t;return Md(n.getFullYear(),n.getMonth(),n.getDate()+e)}function Zf(n,t=!1){return function(e,o){let i;if(t){let r=new Date(e.getFullYear(),e.getMonth(),1).getDay()-1,a=e.getDate();i=1+Math.floor((a+r)/7)}else{let r=Kb(e),a=hE(r.getFullYear()),s=r.getTime()-a.getTime();i=1+Math.round(s/6048e5)}return Vn(i,n,gs(o,vo.MinusSign))}}function hd(n,t=!1){return function(e,o){let r=Kb(e).getFullYear();return Vn(r,n,gs(o,vo.MinusSign),t)}}var Xf=Object.create(null);function CE(n){if(Xf[n])return Xf[n];let t;switch(n){case"G":case"GG":case"GGG":t=$e(3,Re.Abbreviated);break;case"GGGG":t=$e(3,Re.Wide);break;case"GGGGG":t=$e(3,Re.Narrow);break;case"y":t=nt(0,1,0,!1,!0);break;case"yy":t=nt(0,2,0,!0,!0);break;case"yyy":t=nt(0,3,0,!1,!0);break;case"yyyy":t=nt(0,4,0,!1,!0);break;case"Y":t=hd(1);break;case"YY":t=hd(2,!0);break;case"YYY":t=hd(3);break;case"YYYY":t=hd(4);break;case"M":case"L":t=nt(1,1,1);break;case"MM":case"LL":t=nt(1,2,1);break;case"MMM":t=$e(2,Re.Abbreviated);break;case"MMMM":t=$e(2,Re.Wide);break;case"MMMMM":t=$e(2,Re.Narrow);break;case"LLL":t=$e(2,Re.Abbreviated,St.Standalone);break;case"LLLL":t=$e(2,Re.Wide,St.Standalone);break;case"LLLLL":t=$e(2,Re.Narrow,St.Standalone);break;case"w":t=Zf(1);break;case"ww":t=Zf(2);break;case"W":t=Zf(1,!0);break;case"d":t=nt(2,1);break;case"dd":t=nt(2,2);break;case"c":case"cc":t=nt(7,1);break;case"ccc":t=$e(1,Re.Abbreviated,St.Standalone);break;case"cccc":t=$e(1,Re.Wide,St.Standalone);break;case"ccccc":t=$e(1,Re.Narrow,St.Standalone);break;case"cccccc":t=$e(1,Re.Short,St.Standalone);break;case"E":case"EE":case"EEE":t=$e(1,Re.Abbreviated);break;case"EEEE":t=$e(1,Re.Wide);break;case"EEEEE":t=$e(1,Re.Narrow);break;case"EEEEEE":t=$e(1,Re.Short);break;case"a":case"aa":case"aaa":t=$e(0,Re.Abbreviated);break;case"aaaa":t=$e(0,Re.Wide);break;case"aaaaa":t=$e(0,Re.Narrow);break;case"b":case"bb":case"bbb":t=$e(0,Re.Abbreviated,St.Standalone,!0);break;case"bbbb":t=$e(0,Re.Wide,St.Standalone,!0);break;case"bbbbb":t=$e(0,Re.Narrow,St.Standalone,!0);break;case"B":case"BB":case"BBB":t=$e(0,Re.Abbreviated,St.Format,!0);break;case"BBBB":t=$e(0,Re.Wide,St.Format,!0);break;case"BBBBB":t=$e(0,Re.Narrow,St.Format,!0);break;case"h":t=nt(3,1,-12);break;case"hh":t=nt(3,2,-12);break;case"H":t=nt(3,1);break;case"HH":t=nt(3,2);break;case"m":t=nt(4,1);break;case"mm":t=nt(4,2);break;case"s":t=nt(5,1);break;case"ss":t=nt(5,2);break;case"S":t=nt(6,1);break;case"SS":t=nt(6,2);break;case"SSS":t=nt(6,3);break;case"Z":case"ZZ":case"ZZZ":t=_d(0);break;case"ZZZZZ":t=_d(3);break;case"O":case"OO":case"OOO":case"z":case"zz":case"zzz":t=_d(1);break;case"OOOO":case"ZZZZ":case"zzzz":t=_d(2);break;default:return null}return Xf[n]=t,t}function Zb(n,t){n=n.replace(/:/g,"");let e=Date.parse("Jan 01, 1970 00:00:00 "+n)/6e4;return isNaN(e)?t:e}function ME(n,t){return n=new Date(n.getTime()),n.setMinutes(n.getMinutes()+t),n}function bE(n,t,e){let i=n.getTimezoneOffset(),r=Zb(t,i);return ME(n,-1*(r-i))}function PE(n){if(Vb(n))return n;if(typeof n=="number"&&!isNaN(n))return new Date(n);if(typeof n=="string"){if(n=n.trim(),/^(\d{4}(-\d{1,2}(-\d{1,2})?)?)$/.test(n)){let[i,r=1,a=1]=n.split("-").map(s=>+s);return Md(i,r-1,a)}let e=parseFloat(n);if(!isNaN(n-e))return new Date(e);let o;if(o=n.match(lE))return OE(o)}let t=new Date(n);if(!Vb(t))throw new j(2311,!1);return t}function OE(n){let t=new Date(0),e=0,o=0,i=n[8]?t.setUTCFullYear:t.setFullYear,r=n[8]?t.setUTCHours:t.setHours;n[9]&&(e=Number(n[9]+n[10]),o=Number(n[9]+n[11])),i.call(t,Number(n[1]),Number(n[2])-1,Number(n[3]));let a=Number(n[4]||0)-e,s=Number(n[5]||0)-o,c=Number(n[6]||0),u=Math.floor(parseFloat("0."+(n[7]||0))*1e3);return r.call(t,a,s,c,u),t}function Vb(n){return n instanceof Date&&!isNaN(n.valueOf())}var Qf=/\s+/,Bb=[],Ki=(()=>{class n{_ngEl;_renderer;initialClasses=Bb;rawClass;stateMap=new Map;constructor(e,o){this._ngEl=e,this._renderer=o}set klass(e){this.initialClasses=e!=null?e.trim().split(Qf):Bb}set ngClass(e){this.rawClass=typeof e=="string"?e.trim().split(Qf):e}ngDoCheck(){for(let o of this.initialClasses)this._updateState(o,!0);let e=this.rawClass;if(Array.isArray(e)||e instanceof Set)for(let o of e)this._updateState(o,!0);else if(e!=null)for(let o of Object.keys(e))this._updateState(o,!!e[o]);this._applyStateDiff()}_updateState(e,o){let i=this.stateMap.get(e);i!==void 0?(i.enabled!==o&&(i.changed=!0,i.enabled=o),i.touched=!0):this.stateMap.set(e,{enabled:o,changed:!0,touched:!0})}_applyStateDiff(){for(let e of this.stateMap){let o=e[0],i=e[1];i.changed?(this._toggleClass(o,i.enabled),i.changed=!1):i.touched||(i.enabled&&this._toggleClass(o,!1),this.stateMap.delete(o)),i.touched=!1}}_toggleClass(e,o){e=e.trim(),e.length>0&&e.split(Qf).forEach(i=>{o?this._renderer.addClass(this._ngEl.nativeElement,i):this._renderer.removeClass(this._ngEl.nativeElement,i)})}static \u0275fac=function(o){return new(o||n)(re(Be),re(dt))};static \u0275dir=Pe({type:n,selectors:[["","ngClass",""]],inputs:{klass:[0,"class","klass"],ngClass:"ngClass"}})}return n})();function vE(n,t){return new j(2100,!1)}var yE="mediumDate",Xb=new $(""),Qb=new $(""),Zi=(()=>{class n{locale;defaultTimezone;defaultOptions;constructor(e,o,i){this.locale=e,this.defaultTimezone=o,this.defaultOptions=i}transform(e,o,i,r){if(e==null||e===""||e!==e)return null;try{let a=o??this.defaultOptions?.dateFormat??yE,s=i??this.defaultOptions?.timezone??this.defaultTimezone??void 0;return Yb(e,a,r||this.locale,s)}catch(a){throw vE(n,a.message)}}static \u0275fac=function(o){return new(o||n)(re(Yi,16),re(Xb,24),re(Qb,24))};static \u0275pipe=rs({name:"date",type:n,pure:!0})}return n})();var Qo=(()=>{class n{static \u0275fac=function(o){return new(o||n)};static \u0275mod=gt({type:n});static \u0275inj=at({})}return n})();function ps(n,t){t=encodeURIComponent(t);for(let e of n.split(";")){let o=e.indexOf("="),[i,r]=o==-1?[e,""]:[e.slice(0,o),e.slice(o+1)];if(i.trim()!==t)continue;let a=r;try{a=decodeURIComponent(r)}catch(s){}return a.length>1&&a[0]==='"'&&a[a.length-1]==='"'&&(a=a.slice(1,-1)),a}return null}var xE=(()=>{class n{build(){return new XMLHttpRequest}static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:n.\u0275fac})}return n})(),Jf=(()=>{class n{static \u0275fac=function(o){return new(o||n)};static \u0275prov=ee({token:n,factory:function(o){let i=null;return o?i=new(o||n):i=Q(xE),i},providedIn:"root"})}return n})();function Jb(n,t,e){return Bf(n,t,e)}var em="browser";function eP(n){return n===em}var fs=class{_doc;constructor(t){this._doc=t}manager},Pd=(()=>{class n extends fs{constructor(e){super(e)}supports(e){return!0}addEventListener(e,o,i,r){return e.addEventListener(o,i,r),()=>this.removeEventListener(e,o,i,r)}removeEventListener(e,o,i,r){return e.removeEventListener(o,i,r)}static \u0275fac=function(o){return new(o||n)(Q(Me))};static \u0275prov=ee({token:n,factory:n.\u0275fac})}return n})(),yd=new $(""),im=(()=>{class n{_zone;_plugins;_eventNameToPlugin=new Map;constructor(e,o){this._zone=o,e.forEach(a=>{a.manager=this});let i=e.filter(a=>!(a instanceof Pd));this._plugins=i.slice().reverse();let r=e.find(a=>a instanceof Pd);r&&this._plugins.push(r)}addEventListener(e,o,i,r){return this._findPluginFor(o).addEventListener(e,o,i,r)}getZone(){return this._zone}_findPluginFor(e){let o=this._eventNameToPlugin.get(e);if(o)return o;if(o=this._plugins.find(r=>r.supports(e)),!o)throw new j(-5101,!1);return this._eventNameToPlugin.set(e,o),o}static \u0275fac=function(o){return new(o||n)(Q(yd),Q(ce))};static \u0275prov=ee({token:n,factory:n.\u0275fac})}return n})(),tm="ng-app-id";function tP(n){for(let t of n)t.remove()}function nP(n,t){let e=t.createElement("style");return e.textContent=n,e}function SE(n,t,e,o){let i=n.head?.querySelectorAll(`style[${tm}="${t}"],link[${tm}="${t}"]`);if(!i||i.length===0)return!1;for(let r of i)r.removeAttribute(tm),r instanceof HTMLLinkElement?o.set(r.href.slice(r.href.lastIndexOf("/")+1),{usage:0,elements:[r]}):r.textContent&&e.set(r.textContent,{usage:0,elements:[r]});return!0}function om(n,t){let e=t.createElement("link");return e.setAttribute("rel","stylesheet"),e.setAttribute("href",n),e}var rm=(()=>{class n{doc;appId;nonce;inline=new Map;external=new Map;hosts=new Set;constructor(e,o,i,r={}){this.doc=e,this.appId=o,this.nonce=i,SE(e,o,this.inline,this.external)&&this.hosts.add(e.head)}addStyles(e,o){for(let i of e)this.addUsage(i,this.inline,nP);o?.forEach(i=>this.addUsage(i,this.external,om))}removeStyles(e,o){for(let i of e)this.removeUsage(i,this.inline);o?.forEach(i=>this.removeUsage(i,this.external))}addUsage(e,o,i){let r=o.get(e);r?r.usage++:o.set(e,{usage:1,elements:[...this.hosts].map(a=>this.addElement(a,i(e,this.doc)))})}removeUsage(e,o){let i=o.get(e);i&&(i.usage--,i.usage<=0&&(tP(i.elements),o.delete(e)))}ngOnDestroy(){for(let[,{elements:e}]of[...this.inline,...this.external])tP(e);this.hosts.clear()}addHost(e){if(!this.hosts.has(e)){this.hosts.add(e);for(let[o,{elements:i}]of this.inline)i.push(this.addElement(e,nP(o,this.doc)));for(let[o,{elements:i}]of this.external)i.push(this.addElement(e,om(o,this.doc)))}}removeHost(e){this.hosts.delete(e);for(let o of[...this.inline.values(),...this.external.values()]){let i=[];for(let r of o.elements)r.parentNode===e?r.remove():i.push(r);o.elements=i}}addElement(e,o){return this.nonce&&o.setAttribute("nonce",this.nonce),e.appendChild(o)}static \u0275fac=function(o){return new(o||n)(Q(Me),Q(Ni),Q(Ba,8),Q(Li))};static \u0275prov=ee({token:n,factory:n.\u0275fac})}return n})(),nm={svg:"http://www.w3.org/2000/svg",xhtml:"http://www.w3.org/1999/xhtml",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/",math:"http://www.w3.org/1998/Math/MathML"},am=/%COMP%/g;var iP="%COMP%",kE=`_nghost-${iP}`,EE=`_ngcontent-${iP}`,DE=!0,IE=new $("",{factory:()=>DE}),TE=new $("");function AE(n){return EE.replace(am,n)}function RE(n){return kE.replace(am,n)}function rP(n,t){return t.map(e=>e.replace(am,n))}var sm=(()=>{class n{eventManager;sharedStylesHost;appId;removeStylesOnCompDestroy;doc;ngZone;nonce;tracingService;rendererByCompId=new Map;defaultRenderer;cssVarNamespace;constructor(e,o,i,r,a,s,c=null,u=null,f=null){this.eventManager=e,this.sharedStylesHost=o,this.appId=i,this.removeStylesOnCompDestroy=r,this.doc=a,this.ngZone=s,this.nonce=c,this.tracingService=u,this.cssVarNamespace=f??"",this.defaultRenderer=new ms(e,a,s,this.tracingService,this.cssVarNamespace)}createRenderer(e,o){if(!e||!o)return this.defaultRenderer;let i=this.getOrCreateRenderer(e,o);return i instanceof vd?i.applyToHost(e):i instanceof _s&&i.applyStyles(),i}getOrCreateRenderer(e,o){let i=this.rendererByCompId,r=i.get(o.id);if(!r){let a=this.doc,s=this.ngZone,c=this.eventManager,u=this.sharedStylesHost,f=this.removeStylesOnCompDestroy,_=this.tracingService;switch(o.encapsulation){case Tn.Emulated:r=new vd(c,u,o,this.appId,f,a,s,_,this.cssVarNamespace);break;case Tn.ShadowDom:return new Od(c,e,o,a,s,this.nonce,_,this.cssVarNamespace,u);case Tn.ExperimentalIsolatedShadowDom:return new Od(c,e,o,a,s,this.nonce,_,this.cssVarNamespace);default:r=new _s(c,u,o,f,a,s,_,this.cssVarNamespace);break}i.set(o.id,r)}return r}ngOnDestroy(){this.rendererByCompId.clear()}componentReplaced(e){this.rendererByCompId.delete(e)}static \u0275fac=function(o){return new(o||n)(Q(im),Q(Ui),Q(Ni),Q(IE),Q(Me),Q(ce),Q(Ba),Q(Jn,8),Q(TE,8))};static \u0275prov=ee({token:n,factory:n.\u0275fac})}return n})(),ms=class{eventManager;doc;ngZone;tracingService;cssVarNamespace;data=Object.create(null);throwOnSyntheticProps=!0;constructor(t,e,o,i,r=""){this.eventManager=t,this.doc=e,this.ngZone=o,this.tracingService=i,this.cssVarNamespace=r}destroy(){}destroyNode=null;createElement(t,e){return e?this.doc.createElementNS(nm[e]||e,t):this.doc.createElement(t)}createComment(t){return this.doc.createComment(t)}createText(t){return this.doc.createTextNode(t)}appendChild(t,e){(oP(t)?t.content:t).appendChild(e)}insertBefore(t,e,o){if(t){let i=oP(t)?t.content:t;if(o!=null&&o.parentNode!==i)throw new j(-5106,!1);i.insertBefore(e,o)}}removeChild(t,e){e.remove()}selectRootElement(t,e){let o=typeof t=="string"?this.doc.querySelector(t):t;if(!o)throw new j(-5104,!1);return e||(o.textContent=""),o}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,e,o,i){if(i){e=i+":"+e;let r=nm[i];r?t.setAttributeNS(r,e,o):t.setAttribute(e,o)}else t.setAttribute(e,o)}removeAttribute(t,e,o){if(o){let i=nm[o];i?t.removeAttributeNS(i,e):t.removeAttribute(`${o}:${e}`)}else t.removeAttribute(e)}addClass(t,e){t.classList.add(e)}removeClass(t,e){t.classList.remove(e)}setStyle(t,e,o,i){let r=e.startsWith("--");r&&(e=e.replace("%NS%",this.cssVarNamespace)),r||i&(Xn.DashCase|Xn.Important)?t.style.setProperty(e,o,i&Xn.Important?"important":""):t.style[e]=o}removeStyle(t,e,o){let i=e.startsWith("--");i&&(e=e.replace("%NS%",this.cssVarNamespace)),i||o&Xn.DashCase?t.style.removeProperty(e):t.style[e]=""}setProperty(t,e,o){t!=null&&(t[e]=o)}setValue(t,e){t.nodeValue=e}listen(t,e,o,i){if(typeof t=="string"&&(t=hn().getGlobalEventTarget(this.doc,t),!t))throw new j(-5102,!1);let r=this.decoratePreventDefault(o);return this.tracingService?.wrapEventListener&&(r=this.tracingService.wrapEventListener(t,e,r)),this.eventManager.addEventListener(t,e,r,i)}decoratePreventDefault(t){return e=>{if(e==="__ngUnwrap__")return t;t(e)===!1&&e.preventDefault()}}};function oP(n){return n.tagName==="TEMPLATE"&&n.content!==void 0}var Od=class extends ms{hostEl;sharedStylesHost;shadowRoot;constructor(t,e,o,i,r,a,s,c,u){super(t,i,r,s,c),this.hostEl=e,this.sharedStylesHost=u,this.shadowRoot=e.attachShadow({mode:"open"}),this.sharedStylesHost&&this.sharedStylesHost.addHost(this.shadowRoot);let f=o.styles;f=rP(o.id,f).map(h=>h.replace(/%NS%/g,c));for(let h of f){let C=document.createElement("style");a&&C.setAttribute("nonce",a),C.textContent=h,this.shadowRoot.appendChild(C)}let _=o.getExternalStyles?.();if(_)for(let h of _){let C=om(h,i);a&&C.setAttribute("nonce",a),this.shadowRoot.appendChild(C)}}nodeOrShadowRoot(t){return t===this.hostEl?this.shadowRoot:t}appendChild(t,e){return super.appendChild(this.nodeOrShadowRoot(t),e)}insertBefore(t,e,o){return super.insertBefore(this.nodeOrShadowRoot(t),e,o)}removeChild(t,e){return super.removeChild(null,e)}parentNode(t){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(t)))}destroy(){this.sharedStylesHost&&this.sharedStylesHost.removeHost(this.shadowRoot)}},_s=class extends ms{sharedStylesHost;removeStylesOnCompDestroy;styles;styleUrls;constructor(t,e,o,i,r,a,s,c,u){super(t,r,a,s,c),this.sharedStylesHost=e,this.removeStylesOnCompDestroy=i;let f=o.styles,_=u?rP(u,f):f;this.styles=_.map(h=>h.replace(/%NS%/g,c)),this.styleUrls=o.getExternalStyles?.(u)}applyStyles(){this.sharedStylesHost.addStyles(this.styles,this.styleUrls)}destroy(){this.removeStylesOnCompDestroy&&Wo.size===0&&this.sharedStylesHost.removeStyles(this.styles,this.styleUrls)}},vd=class extends _s{contentAttr;hostAttr;constructor(t,e,o,i,r,a,s,c,u){let f=i+"-"+o.id;super(t,e,o,r,a,s,c,u,f),this.contentAttr=AE(f),this.hostAttr=RE(f)}applyToHost(t){this.applyStyles(),this.setAttribute(t,this.hostAttr,"")}createElement(t,e){let o=super.createElement(t,e);return super.setAttribute(o,this.contentAttr,""),o}};var xd=class n extends cs{supportsDOMEvents=!0;static makeCurrent(){Yf(new n)}onAndCancel(t,e,o,i){return t.addEventListener(e,o,i),()=>{t.removeEventListener(e,o,i)}}dispatchEvent(t,e){t.dispatchEvent(e)}remove(t){t.remove()}createElement(t,e){return e=e||this.getDefaultDocument(),e.createElement(t)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(t){return t.nodeType===Node.ELEMENT_NODE}isShadowRoot(t){return t instanceof DocumentFragment}getGlobalEventTarget(t,e){return e==="window"?window:e==="document"?t:e==="body"?t.body:null}getBaseHref(t){let e=FE();return e==null?null:NE(e)}resetBaseElement(){hs=null}getUserAgent(){return window.navigator.userAgent}getCookie(t){return ps(document.cookie,t)}},hs=null;function FE(){return hs=hs||document.head.querySelector("base"),hs?hs.getAttribute("href"):null}function NE(n){return new URL(n,document.baseURI).pathname}var aP=["alt","control","meta","shift"],LE={"\b":"Backspace"," ":"Tab","\x7F":"Delete","\x1B":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},VE={alt:n=>n.altKey,control:n=>n.ctrlKey,meta:n=>n.metaKey,shift:n=>n.shiftKey},sP=(()=>{class n extends fs{constructor(e){super(e)}supports(e){return n.parseEventName(e)!=null}addEventListener(e,o,i,r){let a=n.parseEventName(o),s=n.eventCallback(a.fullKey,i,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>hn().onAndCancel(e,a.domEventName,s,r))}static parseEventName(e){let o=e.toLowerCase().split("."),i=o.shift();if(o.length===0||!(i==="keydown"||i==="keyup"))return null;let r=n._normalizeKey(o.pop()),a="",s=o.indexOf("code");if(s>-1&&(o.splice(s,1),a="code."),aP.forEach(u=>{let f=o.indexOf(u);f>-1&&(o.splice(f,1),a+=u+".")}),a+=r,o.length!=0||r.length===0)return null;let c={};return c.domEventName=i,c.fullKey=a,c}static matchEventFullKeyCode(e,o){let i=LE[e.key]||e.key,r="";return o.indexOf("code.")>-1&&(i=e.code,r="code."),i==null||!i?!1:(i=i.toLowerCase(),i===" "?i="space":i==="."&&(i="dot"),aP.forEach(a=>{if(a!==i){let s=VE[a];s(e)&&(r+=a+".")}}),r+=i,r===o)}static eventCallback(e,o,i){return r=>{n.matchEventFullKeyCode(r,e)&&i.runGuarded(()=>o(r))}}static _normalizeKey(e){return e==="esc"?"escape":e}static \u0275fac=function(o){return new(o||n)(Q(Me))};static \u0275prov=ee({token:n,factory:n.\u0275fac})}return n})();function cm(n,t,e){return ke(this,null,function*(){let o=x({rootComponent:n},BE(t,e));return Tb(o)})}function BE(n,t){return{platformRef:t?.platformRef,appProviders:[...UE,...n?.providers??[]],platformProviders:HE}}function jE(){xd.makeCurrent()}function zE(){return new un}function $E(){return cf(document),document}var HE=[{provide:Li,useValue:em},{provide:fl,useValue:jE,multi:!0},{provide:Me,useFactory:$E}];var UE=[{provide:Ra,useValue:"root"},{provide:un,useFactory:zE},{provide:yd,useClass:Pd,multi:!0},{provide:yd,useClass:sP,multi:!0},sm,{provide:Ui,useClass:rm},{provide:rm,useExisting:Ui},im,{provide:$t,useExisting:sm},[]];var io=class n{headers;normalizedNames=new Map;lazyInit;lazyUpdate=null;constructor(t){t?typeof t=="string"?this.lazyInit=()=>{this.headers=new Map,t.split(` `).forEach(e=>{let o=e.indexOf(":");if(o>0){let i=e.slice(0,o),r=e.slice(o+1).trim();this.addHeaderEntry(i,r)}})}:typeof Headers<"u"&&t instanceof Headers?(this.headers=new Map,t.forEach((e,o)=>{this.addHeaderEntry(o,e)})):this.lazyInit=()=>{this.headers=new Map,Object.entries(t).forEach(([e,o])=>{this.setHeaderEntries(e,o)})}:this.headers=new Map}has(t){return this.init(),this.headers.has(t.toLowerCase())}get(t){this.init();let e=this.headers.get(t.toLowerCase());return e&&e.length>0?e[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(t){return this.init(),this.headers.get(t.toLowerCase())||null}append(t,e){return this.clone({name:t,value:e,op:"a"})}set(t,e){return this.clone({name:t,value:e,op:"s"})}delete(t,e){return this.clone({name:t,value:e,op:"d"})}maybeSetNormalizedName(t,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,t)}init(){this.lazyInit&&(this.lazyInit instanceof n?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(t=>this.applyUpdate(t)),this.lazyUpdate=null))}copyFrom(t){t.init();for(let[e,o]of t.headers.entries())this.headers.set(e,o),this.normalizedNames.set(e,t.normalizedNames.get(e))}clone(t){let e=new n;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof n?this.lazyInit:this,e.lazyUpdate=(this.lazyUpdate||[]).concat([t]),e}applyUpdate(t){let e=t.name.toLowerCase();switch(t.op){case"a":case"s":let o=t.value;if(typeof o=="string"&&(o=[o]),o.length===0)return;this.maybeSetNormalizedName(t.name,e);let i=t.op==="a"?(this.headers.get(e)||[]).slice():[];i.push(...o),this.headers.set(e,i);break;case"d":let r=t.value;if(r===void 0)this.headers.delete(e),this.normalizedNames.delete(e);else{let a=Array.isArray(r)?r:[r],s=this.headers.get(e);if(!s)return;s=s.filter(c=>a.indexOf(c)===-1),s.length===0?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,s)}break}}addHeaderEntry(t,e){let o=t.toLowerCase();this.maybeSetNormalizedName(t,o),this.headers.has(o)?this.headers.get(o).push(e):this.headers.set(o,[e])}setHeaderEntries(t,e){let o=(Array.isArray(e)?e:[e]).map(r=>r.toString()),i=t.toLowerCase();this.headers.set(i,o),this.maybeSetNormalizedName(t,i)}forEach(t){this.init(),Array.from(this.normalizedNames.keys()).forEach(e=>t(this.normalizedNames.get(e),this.headers.get(e)))}};var Sd=class{map=new Map;set(t,e){return this.map.set(t,e),this}get(t){return this.map.has(t)||this.map.set(t,t.defaultValue()),this.map.get(t)}delete(t){return this.map.delete(t),this}has(t){return this.map.has(t)}keys(){return this.map.keys()}},kd=class{encodeKey(t){return cP(t)}encodeValue(t){return cP(t)}decodeKey(t){return decodeURIComponent(t)}decodeValue(t){return decodeURIComponent(t)}};function WE(n,t){let e=new Map;return n.length>0&&n.replace(/^\?/,"").split("&").forEach(i=>{let r=i.indexOf("="),[a,s]=r==-1?[t.decodeKey(i),""]:[t.decodeKey(i.slice(0,r)),t.decodeValue(i.slice(r+1))],c=e.get(a)||[];c.push(s),e.set(a,c)}),e}var GE=/%(\d[a-f0-9])/gi,qE={40:"@","3A":":",24:"$","2C":",","3B":";","3D":"=","3F":"?","2F":"/"};function cP(n){return encodeURIComponent(n).replace(GE,(t,e)=>qE[e]??t)}function wd(n){return`${n}`}var yo=class n{map;encoder;updates=null;cloneFrom=null;constructor(t={}){if(this.encoder=t.encoder||new kd,t.fromString){if(t.fromObject)throw new j(2805,!1);this.map=WE(t.fromString,this.encoder)}else t.fromObject?(this.map=new Map,Object.keys(t.fromObject).forEach(e=>{let o=t.fromObject[e],i=Array.isArray(o)?o.map(wd):[wd(o)];this.map.set(e,i)})):this.map=null}has(t){return this.init(),this.map.has(t)}get(t){this.init();let e=this.map.get(t);return e?e[0]:null}getAll(t){return this.init(),this.map.get(t)||null}keys(){return this.init(),Array.from(this.map.keys())}append(t,e){return this.clone({param:t,value:e,op:"a"})}appendAll(t){let e=[];return Object.keys(t).forEach(o=>{let i=t[o];Array.isArray(i)?i.forEach(r=>{e.push({param:o,value:r,op:"a"})}):e.push({param:o,value:i,op:"a"})}),this.clone(e)}set(t,e){return this.clone({param:t,value:e,op:"s"})}delete(t,e){return this.clone({param:t,value:e,op:"d"})}toString(){return this.init(),this.keys().map(t=>{let e=this.encoder.encodeKey(t);return this.map.get(t).map(o=>e+"="+this.encoder.encodeValue(o)).join("&")}).filter(t=>t!=="").join("&")}clone(t){let e=new n({encoder:this.encoder});return e.cloneFrom=this.cloneFrom||this,e.updates=(this.updates||[]).concat(t),e}init(){if(this.map===null&&(this.map=new Map),this.cloneFrom!==null){this.cloneFrom.init();for(let[t,e]of this.cloneFrom.map.entries())this.map.set(t,e);this.updates.forEach(t=>{switch(t.op){case"a":case"s":let e=t.op==="a"?(this.map.get(t.param)||[]).slice():[];e.push(wd(t.value)),this.map.set(t.param,e);break;case"d":if(t.value!==void 0){let o=(this.map.get(t.param)||[]).slice(),i=o.indexOf(wd(t.value));i!==-1&&o.splice(i,1),o.length>0?this.map.set(t.param,o):this.map.delete(t.param)}else{this.map.delete(t.param);break}}}),this.cloneFrom=this.updates=null}}};function YE(n){switch(n){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}function lP(n){return typeof ArrayBuffer<"u"&&n instanceof ArrayBuffer}function dP(n){return typeof Blob<"u"&&n instanceof Blob}function uP(n){return typeof FormData<"u"&&n instanceof FormData}function KE(n){return typeof URLSearchParams<"u"&&n instanceof URLSearchParams}var Cs="Content-Type",Ed="Accept",fP="text/plain",mP="application/json",_P=`${mP}, ${fP}, */*`,$r=class n{url;body=null;headers;context;reportProgress=!1;reportUploadProgress=!1;reportDownloadProgress=!1;withCredentials=!1;credentials;keepalive=!1;cache;priority;mode;redirect;referrer;integrity;referrerPolicy;responseType="json";method;params;urlWithParams;transferCache;timeout;constructor(t,e,o,i){this.url=e,this.method=t.toUpperCase();let r;if(YE(this.method)||i?(this.body=o!==void 0?o:null,r=i):r=o,r){if(this.reportProgress=!!r.reportProgress,this.reportUploadProgress=!!r.reportUploadProgress,this.reportDownloadProgress=!!r.reportDownloadProgress,this.withCredentials=!!r.withCredentials,this.keepalive=!!r.keepalive,r.responseType&&(this.responseType=r.responseType),r.headers&&(this.headers=r.headers),r.context&&(this.context=r.context),r.params&&(this.params=r.params),r.priority&&(this.priority=r.priority),r.cache&&(this.cache=r.cache),r.credentials&&(this.credentials=r.credentials),typeof r.timeout=="number"){if(r.timeout<1||!Number.isInteger(r.timeout))throw new j(2822,"");this.timeout=r.timeout}r.mode&&(this.mode=r.mode),r.redirect&&(this.redirect=r.redirect),r.integrity&&(this.integrity=r.integrity),r.referrer!==void 0&&(this.referrer=r.referrer),r.referrerPolicy&&(this.referrerPolicy=r.referrerPolicy),this.transferCache=r.transferCache}if(this.headers??=new io,this.context??=new Sd,!this.params)this.params=new yo,this.urlWithParams=e;else{let a=this.params.toString();if(a.length===0)this.urlWithParams=e;else{let s=e,c="",u=e.indexOf("#");u!==-1&&(c=e.substring(u),s=e.substring(0,u));let f=s.indexOf("?"),_=f===-1?"?":fhe.set(Ve,t.setHeaders[Ve]),J)),t.setParams&&(X=Object.keys(t.setParams).reduce((he,Ve)=>he.set(Ve,t.setParams[Ve]),X)),new n(e,o,T,{params:X,headers:J,context:q,reportProgress:D,reportUploadProgress:H,reportDownloadProgress:ue,responseType:i,withCredentials:R,transferCache:O,keepalive:r,cache:s,priority:a,timeout:P,mode:c,redirect:u,credentials:f,referrer:_,integrity:h,referrerPolicy:C})}},oo=(function(n){return n[n.Sent=0]="Sent",n[n.UploadProgress=1]="UploadProgress",n[n.ResponseHeader=2]="ResponseHeader",n[n.DownloadProgress=3]="DownloadProgress",n[n.Response=4]="Response",n[n.User=5]="User",n})(oo||{}),Hr=class{headers;status;statusText;url;ok;type;redirected;responseType;constructor(t,e=200,o="OK"){this.headers=t.headers||new io,this.status=t.status!==void 0?t.status:e,this.statusText=t.statusText||o,this.url=t.url||null,this.redirected=t.redirected,this.responseType=t.responseType,this.ok=this.status>=200&&this.status<300}},Ms=class n extends Hr{constructor(t={}){super(t)}type=oo.ResponseHeader;clone(t={}){return new n({headers:t.headers||this.headers,status:t.status!==void 0?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}},Ur=class n extends Hr{body;constructor(t={}){super(t),this.body=t.body!==void 0?t.body:null}type=oo.Response;clone(t={}){return new n({body:t.body!==void 0?t.body:this.body,headers:t.headers||this.headers,status:t.status!==void 0?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0,redirected:t.redirected??this.redirected,responseType:t.responseType??this.responseType})}},no=class extends Hr{name="HttpErrorResponse";message;error;ok=!1;constructor(t){super(t,0,"Unknown Error"),this.status>=200&&this.status<300?this.message=`Http failure during parsing for ${t.url||"(unknown url)"}`:this.message=`Http failure response for ${t.url||"(unknown url)"}: ${t.status} ${t.statusText}`,this.error=t.error||null}},hP=200,ZE=204;var XE=/^\)\]\}',?\n/,iZ=1024*1024,CP=new $("",{factory:()=>null}),Dd=(()=>{class n{fetchImpl=v(dm,{optional:!0})?.fetch??((...e)=>globalThis.fetch(...e));ngZone=v(ce);destroyRef=v(Te);maxResponseSize=v(CP);handle(e){return new te(o=>{let i=new AbortController,r=!1,a={next:c=>{c.type===oo.Response&&(r=!0),o.next(c)},error:c=>{r=!0,o.error(c)},complete:()=>{r=!0,o.complete()}};this.doRequest(e,i.signal,a).then(um,c=>a.error(new no({error:c})));let s;return e.timeout&&(s=this.ngZone.runOutsideAngular(()=>setTimeout(()=>{i.signal.aborted||i.abort(new DOMException("signal timed out","TimeoutError"))},e.timeout))),()=>{s!==void 0&&clearTimeout(s),!r&&!i.signal.aborted&&i.abort()}})}doRequest(e,o,i){return ke(this,null,function*(){let r=this.createRequestInit(e),a;try{let T=this.ngZone.runOutsideAngular(()=>this.fetchImpl(e.urlWithParams,x({signal:o},r)));QE(T),i.next({type:oo.Sent}),a=yield T}catch(T){i.error(new no({error:T,status:T.status??0,statusText:T.statusText,url:e.urlWithParams,headers:T.headers}));return}let s=new io(a.headers),c=a.statusText,u=a.url||e.urlWithParams,f=a.status,_=null,h=e.reportProgress||e.reportDownloadProgress;if(h&&i.next(new Ms({headers:s,status:f,statusText:c,url:u})),a.body){let T=a.headers.get(Cs)??"",R=a.headers.get("content-length"),D=R!==null?Number(R):NaN;this.maxResponseSize!==null&&Number.isFinite(D)&&D>this.maxResponseSize&&(yield a.body.cancel(),gP(this.maxResponseSize));let H=[],ue=a.body.getReader(),J=0,X,q,he=typeof Zone<"u"&&Zone.current,Ve=!1;if(yield this.ngZone.runOutsideAngular(()=>ke(this,null,function*(){for(;;){if(this.destroyRef.destroyed){yield ue.cancel(),Ve=!0;break}let{done:Pn,value:On}=yield ue.read();if(Pn)break;if(H.push(On),J+=On.length,this.maxResponseSize!==null&&J>this.maxResponseSize&&(yield ue.cancel(),gP(this.maxResponseSize)),h){q=e.responseType==="text"?(q??"")+(X??=pP(T)).decode(On,{stream:!0}):void 0;let ln=()=>i.next({type:oo.DownloadProgress,total:Number.isFinite(D)?D:void 0,loaded:J,partialText:q});he?he.run(ln):ln()}}})),Ve){i.complete();return}let Dt=this.concatChunks(H,J);try{_=this.parseBody(e,Dt,T,f)}catch(Pn){i.error(new no({error:Pn,headers:new io(a.headers),status:a.status,statusText:a.statusText,url:a.url||e.urlWithParams}));return}}f===0&&(f=_?hP:0);let C=f>=200&&f<300,O=a.redirected,P=a.type;C?(i.next(new Ur({body:_,headers:s,status:f,statusText:c,url:u,redirected:O,responseType:P})),i.complete()):i.error(new no({error:_,headers:s,status:f,statusText:c,url:u,redirected:O,responseType:P}))})}parseBody(e,o,i,r){switch(e.responseType){case"json":let a=new TextDecoder().decode(o).replace(XE,"");if(a==="")return null;try{return JSON.parse(a)}catch(s){if(r<200||r>=300)return a;throw s}case"text":return pP(i).decode(o);case"blob":return new Blob([o],{type:i});case"arraybuffer":return o.buffer}}createRequestInit(e){if(e.reportUploadProgress)throw new j(2824,!1);let o={},i;if(i=e.credentials,e.withCredentials&&(i="include"),e.headers.forEach((r,a)=>o[r]=a.join(",")),e.headers.has(Ed)||(o[Ed]=_P),!e.headers.has(Cs)){let r=e.detectContentTypeHeader();r!==null&&(o[Cs]=r)}return{body:e.serializeBody(),method:e.method,headers:o,credentials:i,keepalive:e.keepalive,cache:e.cache,priority:e.priority,mode:e.mode,redirect:e.redirect,referrer:e.referrer,integrity:e.integrity,referrerPolicy:e.referrerPolicy}}concatChunks(e,o){let i=new Uint8Array(o),r=0;for(let a of e)i.set(a,r),r+=a.length;return i}static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:n.\u0275fac})}return n})(),dm=class{};function um(){}function QE(n){n.then(um,um)}function gP(n){throw new j(-2825,!1)}var JE=/charset=\s*["']?([^;"'\s]+)["']?/i;function pP(n){let t=n.match(JE);if(t!==null)try{return new TextDecoder(t[1])}catch(e){}return new TextDecoder}var eD=new $("",{factory:()=>!0}),tD="XSRF-TOKEN",nD=new $("",{factory:()=>tD}),oD="X-XSRF-TOKEN",iD=new $("",{factory:()=>oD}),rD=(()=>{class n{cookieName=v(nD);doc=v(Me);lastCookieString="";lastToken=null;parseCount=0;getToken(){let e=this.doc.cookie||"";return e!==this.lastCookieString&&(this.parseCount++,this.lastToken=ps(e,this.cookieName),this.lastCookieString=e),this.lastToken}static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:n.\u0275fac})}return n})(),MP=(()=>{class n{static \u0275fac=function(o){return new(o||n)};static \u0275prov=ee({token:n,factory:function(o){let i=null;return o?i=new(o||n):i=Q(rD),i},providedIn:"root"})}return n})();function bP(n,t){if(!v(eD)||n.method==="GET"||n.method==="HEAD")return t(n);try{let i=v(jr).href,{origin:r}=new URL(i),{origin:a}=new URL(n.url,r);if(r!==a)return t(n)}catch(i){return t(n)}let e=v(MP).getToken(),o=v(iD);return e!=null&&!n.headers.has(o)&&(n=n.clone({headers:n.headers.set(o,e)})),t(n)}function aD(n,t){return t(n)}function sD(n,t,e){return(o,i)=>st(e,()=>t(o,r=>n(r,i)))}var PP=new $("",{factory:()=>[bP]}),OP=new $(""),vP=new $("",{factory:()=>!0});var Td=(()=>{class n{static \u0275fac=function(o){return new(o||n)};static \u0275prov=ee({token:n,factory:function(o){let i=null;return o?i=new(o||n):i=Q(Dd),i},providedIn:"root"})}return n})();var Id=(()=>{class n{backend;injector;chain=null;pendingTasks=v($a);contributeToStability=v(vP);constructor(e,o){this.backend=e,this.injector=o}handle(e){if(this.chain===null){let i=this.injector.get(Ad,null,{skipSelf:!0}),r=i!==null&&this.backend===i,a=this.injector.get(OP,[],r?{self:!0}:void 0),s=Array.from(new Set([...this.injector.get(PP),...a]));this.chain=s.reduceRight((c,u)=>sD(c,u,this.injector),aD)}let o=this.chain;if(this.contributeToStability){let i=this.pendingTasks.add();return ie(()=>o(e,r=>this.backend.handle(r))).pipe(Tt(i))}else return ie(()=>o(e,i=>this.backend.handle(i)))}static \u0275fac=function(o){return new(o||n)(Q(Td),Q(De))};static \u0275prov=ee({token:n,factory:n.\u0275fac,providedIn:"root"})}return n})(),Ad=(()=>{class n{static \u0275fac=function(o){return new(o||n)};static \u0275prov=ee({token:n,factory:function(o){let i=null;return o?i=new(o||n):i=Q(Id),i},providedIn:"root"})}return n})();function lm(n,t){return x({body:t},n)}var Mn=(()=>{class n{handler;constructor(e){this.handler=e}request(e,o,i={}){let r;if(e instanceof $r)r=e;else{let c;i.headers instanceof io?c=i.headers:c=new io(i.headers);let u;i.params&&(i.params instanceof yo?u=i.params:u=new yo({fromObject:i.params})),r=new $r(e,o,i.body!==void 0?i.body:null,{headers:c,context:i.context,params:u,reportProgress:i.reportProgress,reportUploadProgress:i.reportUploadProgress,reportDownloadProgress:i.reportDownloadProgress,responseType:i.responseType||"json",withCredentials:i.withCredentials,transferCache:i.transferCache,keepalive:i.keepalive,priority:i.priority,cache:i.cache,mode:i.mode,redirect:i.redirect,credentials:i.credentials,referrer:i.referrer,referrerPolicy:i.referrerPolicy,integrity:i.integrity,timeout:i.timeout})}let a=se(r).pipe(Pi(c=>this.handler.handle(c)));if(e instanceof $r||i.observe==="events")return a;let s=a.pipe(vt(c=>c instanceof Ur));switch(i.observe||"body"){case"body":switch(r.responseType){case"arraybuffer":return s.pipe(Ee(c=>{if(c.body!==null&&!(c.body instanceof ArrayBuffer))throw new j(2806,!1);return c.body}));case"blob":return s.pipe(Ee(c=>{if(c.body!==null&&!(c.body instanceof Blob))throw new j(2807,!1);return c.body}));case"text":return s.pipe(Ee(c=>{if(c.body!==null&&typeof c.body!="string")throw new j(2808,!1);return c.body}));default:return s.pipe(Ee(c=>c.body))}case"response":return s;default:throw new j(2809,!1)}}delete(e,o={}){return this.request("DELETE",e,o)}get(e,o={}){return this.request("GET",e,o)}head(e,o={}){return this.request("HEAD",e,o)}jsonp(e,o){return this.request("JSONP",e,{params:new yo().append(o,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(e,o={}){return this.request("OPTIONS",e,o)}patch(e,o,i={}){return this.request("PATCH",e,lm(i,o))}post(e,o,i={}){return this.request("POST",e,lm(i,o))}put(e,o,i={}){return this.request("PUT",e,lm(i,o))}static \u0275fac=function(o){return new(o||n)(Q(Ad))};static \u0275prov=ee({token:n,factory:n.\u0275fac,providedIn:"root"})}return n})();var cD=/^\)\]\}',?\n/;var gm=(()=>{class n{xhrFactory;tracingService=v(Jn,{optional:!0});constructor(e){this.xhrFactory=e}maybePropagateTrace(e){return this.tracingService?.propagate?this.tracingService.propagate(e):e}handle(e){if(e.method==="JSONP")throw new j(-2800,!1);let o=this.xhrFactory;return se(null).pipe(At(()=>new te(r=>{let a=o.build();if(a.open(e.method,e.urlWithParams),e.withCredentials&&(a.withCredentials=!0),e.headers.forEach((D,H)=>a.setRequestHeader(D,H.join(","))),e.headers.has(Ed)||a.setRequestHeader(Ed,_P),!e.headers.has(Cs)){let D=e.detectContentTypeHeader();D!==null&&a.setRequestHeader(Cs,D)}if(e.timeout&&(a.timeout=e.timeout),e.responseType){let D=e.responseType.toLowerCase();a.responseType=D!=="json"?D:"text"}let s=e.serializeBody(),c=null,u=()=>{if(c!==null)return c;let D=a.statusText||"OK",H=new io(a.getAllResponseHeaders()),ue=a.responseURL||e.url;return c=new Ms({headers:H,status:a.status,statusText:D,url:ue}),c},f=this.maybePropagateTrace(()=>{let{headers:D,status:H,statusText:ue,url:J}=u(),X=null;H!==ZE&&(X=typeof a.response>"u"?a.responseText:a.response),H===0&&(H=X?hP:0);let q=H>=200&&H<300;if(e.responseType==="json"&&typeof X=="string"){let he=X;X=X.replace(cD,"");try{X=X!==""?JSON.parse(X):null}catch(Ve){X=he,q&&(q=!1,X={error:Ve,text:X})}}q?(r.next(new Ur({body:X,headers:D,status:H,statusText:ue,url:J||void 0})),r.complete()):r.error(new no({error:X,headers:D,status:H,statusText:ue,url:J||void 0}))}),_=this.maybePropagateTrace(D=>{let{url:H}=u(),ue=new no({error:D,status:a.status||0,statusText:a.statusText||"Unknown Error",url:H||void 0});r.error(ue)}),h=_;e.timeout&&(h=this.maybePropagateTrace(D=>{let{url:H}=u(),ue=new no({error:new DOMException("Request timed out","TimeoutError"),status:a.status||0,statusText:a.statusText||"Request timeout",url:H||void 0});r.error(ue)}));let C=!1,O=this.maybePropagateTrace(D=>{C||(r.next(u()),C=!0);let H={type:oo.DownloadProgress,loaded:D.loaded};D.lengthComputable&&(H.total=D.total),e.responseType==="text"&&a.responseText&&(H.partialText=a.responseText),r.next(H)}),P=this.maybePropagateTrace(D=>{let H={type:oo.UploadProgress,loaded:D.loaded};D.lengthComputable&&(H.total=D.total),r.next(H)});a.addEventListener("load",f),a.addEventListener("error",_),a.addEventListener("timeout",h),a.addEventListener("abort",_);let T=e.reportProgress||e.reportUploadProgress,R=e.reportProgress||e.reportDownloadProgress;return R&&a.addEventListener("progress",O),T&&s!==null&&a.upload&&a.upload.addEventListener("progress",P),a.send(s),r.next({type:oo.Sent}),()=>{a.removeEventListener("error",_),a.removeEventListener("abort",_),a.removeEventListener("load",f),a.removeEventListener("timeout",h),R&&a.removeEventListener("progress",O),T&&s!==null&&a.upload&&a.upload.removeEventListener("progress",P),a.readyState!==a.DONE&&a.abort()}})))}static \u0275fac=function(o){return new(o||n)(Q(Jf))};static \u0275prov=ee({token:n,factory:n.\u0275fac,providedIn:"root"})}return n})(),pm=(function(n){return n[n.Interceptors=0]="Interceptors",n[n.LegacyInterceptors=1]="LegacyInterceptors",n[n.CustomXsrfConfiguration=2]="CustomXsrfConfiguration",n[n.NoXsrfProtection=3]="NoXsrfProtection",n[n.JsonpSupport=4]="JsonpSupport",n[n.RequestsMadeViaParent=5]="RequestsMadeViaParent",n[n.Fetch=6]="Fetch",n[n.Xhr=7]="Xhr",n})(pm||{});function lD(n,t){return{\u0275kind:n,\u0275providers:t}}function fm(...n){let t=[Mn,Dd,Id,{provide:Ad,useExisting:Id},{provide:Td,useFactory:()=>v(Dd)},{provide:PP,useValue:bP,multi:!0}];for(let e of n)t.push(...e.\u0275providers);return Bo(t)}function mm(){return lD(pm.Xhr,[gm,{provide:Td,useExisting:gm}])}var yP=(()=>{class n{_doc;constructor(e){this._doc=e}getTitle(){return this._doc.title}setTitle(e){this._doc.title=e||""}static \u0275fac=function(o){return new(o||n)(Q(Me))};static \u0275prov=ee({token:n,factory:n.\u0275fac,providedIn:"root"})}return n})();function uD(n){let t=n;return 5}var xP=["zh",[["\u4E0A\u5348","\u4E0B\u5348"]],void 0,[["\u65E5","\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D"],["\u5468\u65E5","\u5468\u4E00","\u5468\u4E8C","\u5468\u4E09","\u5468\u56DB","\u5468\u4E94","\u5468\u516D"],["\u661F\u671F\u65E5","\u661F\u671F\u4E00","\u661F\u671F\u4E8C","\u661F\u671F\u4E09","\u661F\u671F\u56DB","\u661F\u671F\u4E94","\u661F\u671F\u516D"],["\u5468\u65E5","\u5468\u4E00","\u5468\u4E8C","\u5468\u4E09","\u5468\u56DB","\u5468\u4E94","\u5468\u516D"]],void 0,[["1","2","3","4","5","6","7","8","9","10","11","12"],["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"],["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"]],void 0,[["\u516C\u5143\u524D","\u516C\u5143"]],1,[6,0],["y/M/d","y\u5E74M\u6708d\u65E5",void 0,"y\u5E74M\u6708d\u65E5EEEE"],["HH:mm","HH:mm:ss","z HH:mm:ss","zzzz HH:mm:ss"],["{1} {0}",void 0,void 0,void 0],[".",",",";","%","+","-","E","\xD7","\u2030","\u221E","NaN",":"],["#,##0.###","#,##0%","\xA4#,##0.00","#E0"],"CNY","\xA5","\u4EBA\u6C11\u5E01",{AUD:["AU$","$"],BYN:[void 0,"\u0440."],CNY:["\xA5"],ILR:["ILS"],JPY:["JP\xA5","\xA5"],PHP:[void 0,"\u20B1"],RUR:[void 0,"\u0440."],TWD:["NT$"],USD:["US$","$"],XXX:[]},"ltr",uD];var le="primary",As=Symbol("RouteTitle"),bm=class{params;constructor(t){this.params=t||{}}has(t){return Object.hasOwn(this.params,t)}get(t){if(this.has(t)){let e=this.params[t];return Array.isArray(e)?e[0]:e}return null}getAll(t){if(this.has(t)){let e=this.params[t];return Array.isArray(e)?e:[e]}return[]}get keys(){return Object.keys(this.params)}};function Qi(n){return new bm(n)}function _m(n,t,e){for(let o=0;on.length||e.pathMatch==="full"&&(t.hasChildren()||o.lengthn.length||e.pathMatch==="full"&&t.hasChildren()&&e.path!=="**")return null;let s={};return!_m(r,n.slice(0,r.length),s)||!_m(a,n.slice(n.length-a.length),s)?null:{consumed:n,posParams:s}}function Bd(n){return new Promise((t,e)=>{n.pipe(go()).subscribe({next:o=>t(o),error:o=>e(o)})})}function pD(n,t){if(n.length!==t.length)return!1;for(let e=0;eo[r]===i)}else return n===t}function fD(n){return n.length>0?n[n.length-1]:null}function tr(n){return ba(n)?n:qo(n)?We(Promise.resolve(n)):se(n)}function RP(n){return ba(n)?Bd(n):Promise.resolve(n)}var mD={exact:NP,subset:LP},FP={exact:_D,subset:hD,ignored:()=>!0},Nm={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},Yr={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"};function Lm(n,t,e){let o=n instanceof Lt?n:t.parseUrl(n);return A(()=>Om(t.lastSuccessfulNavigation()?.finalUrl??new Lt,o,x(x({},Yr),e)))}function Om(n,t,e){return mD[e.paths](n.root,t.root,e.matrixParams)&&FP[e.queryParams](n.queryParams,t.queryParams)&&!(e.fragment==="exact"&&n.fragment!==t.fragment)}function _D(n,t){return ro(n,t)}function NP(n,t,e){if(!Xi(n.segments,t.segments)||!Nd(n.segments,t.segments,e)||n.numberOfChildren!==t.numberOfChildren)return!1;for(let o in t.children)if(!n.children[o]||!NP(n.children[o],t.children[o],e))return!1;return!0}function hD(n,t){return Object.keys(t).length<=Object.keys(n).length&&Object.keys(t).every(e=>AP(n[e],t[e]))}function LP(n,t,e){return VP(n,t,t.segments,e)}function VP(n,t,e,o){if(n.segments.length>e.length){let i=n.segments.slice(0,e.length);return!(!Xi(i,e)||t.hasChildren()||!Nd(i,e,o))}else if(n.segments.length===e.length){if(!Xi(n.segments,e)||!Nd(n.segments,e,o))return!1;for(let i in t.children)if(!n.children[i]||!LP(n.children[i],t.children[i],o))return!1;return!0}else{let i=e.slice(0,n.segments.length),r=e.slice(n.segments.length);return!Xi(n.segments,i)||!Nd(n.segments,i,o)||!n.children[le]?!1:VP(n.children[le],t,r,o)}}function Nd(n,t,e){return t.every((o,i)=>FP[e](n[i].parameters,o.parameters))}var Lt=class{root;queryParams;fragment;_queryParamMap;constructor(t=new ye([],{}),e={},o=null){this.root=t,this.queryParams=e,this.fragment=o}get queryParamMap(){return this._queryParamMap??=Qi(this.queryParams),this._queryParamMap}toString(){return bD.serialize(this)}},ye=class{segments;children;parent=null;constructor(t,e){this.segments=t,this.children=e,Object.values(e).forEach(o=>o.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return Ld(this)}},Jo=class{path;parameters;_parameterMap;constructor(t,e){this.path=t,this.parameters=e}get parameterMap(){return this._parameterMap??=Qi(this.parameters),this._parameterMap}toString(){return jP(this)}};function CD(n,t){return Xi(n,t)&&n.every((e,o)=>ro(e.parameters,t[o].parameters))}function Xi(n,t){return n.length!==t.length?!1:n.every((e,o)=>e.path===t[o].path)}function MD(n,t){let e=[];return Object.entries(n.children).forEach(([o,i])=>{o===le&&(e=e.concat(t(i,o)))}),Object.entries(n.children).forEach(([o,i])=>{o!==le&&(e=e.concat(t(i,o)))}),e}var ea=(()=>{class n{static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:()=>new ei})}return n})(),ei=class{parse(t){let e=new ym(t);return new Lt(e.parseRootSegment(),e.parseQueryParams(),e.parseFragment())}serialize(t){let e=`/${bs(t.root,!0)}`,o=vD(t.queryParams),i=typeof t.fragment=="string"?`#${PD(t.fragment)}`:"";return`${e}${o}${i}`}},bD=new ei;function Ld(n){return n.segments.map(t=>jP(t)).join("/")}function bs(n,t){if(!n.hasChildren())return Ld(n);if(t){let e=n.children[le]?bs(n.children[le],!1):"",o=[];return Object.entries(n.children).forEach(([i,r])=>{i!==le&&o.push(`${i}:${bs(r,!1)}`)}),o.length>0?`${e}(${o.join("//")})`:e}else{let e=MD(n,(o,i)=>i===le?[bs(n.children[le],!1)]:[`${i}:${bs(o,!1)}`]);return Object.keys(n.children).length===1&&n.children[le]!=null?`${Ld(n)}/${e[0]}`:`${Ld(n)}/(${e.join("//")})`}}function BP(n){return encodeURIComponent(n).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Rd(n){return BP(n).replace(/%3B/gi,";")}function PD(n){return encodeURI(n)}function vm(n){return BP(n).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function Vd(n){return decodeURIComponent(n)}function wP(n){return Vd(n.replace(/\+/g,"%20"))}function jP(n){return`${vm(n.path)}${OD(n.parameters)}`}function OD(n){return Object.entries(n).map(([t,e])=>`;${vm(t)}=${vm(e)}`).join("")}function vD(n){let t=Object.entries(n).map(([e,o])=>Array.isArray(o)?o.map(i=>`${Rd(e)}=${Rd(i)}`).join("&"):`${Rd(e)}=${Rd(o)}`).filter(e=>e);return t.length?`?${t.join("&")}`:""}var yD=/^[^\/()?;#]+/;function hm(n){let t=n.match(yD);return t?t[0]:""}var xD=/^[^\/()?;=#]+/;function wD(n){let t=n.match(xD);return t?t[0]:""}var SD=/^[^=?&#]+/;function kD(n){let t=n.match(SD);return t?t[0]:""}var ED=/^[^&#]+/;function DD(n){let t=n.match(ED);return t?t[0]:""}var ym=class{url;remaining;constructor(t){this.url=t,this.remaining=t}parseRootSegment(){for(;this.consumeOptional("/"););return this.remaining===""||this.peekStartsWith("?")||this.peekStartsWith("#")?new ye([],{}):new ye([],this.parseChildren())}parseQueryParams(){let t={};if(this.consumeOptional("?"))do this.parseQueryParam(t);while(this.consumeOptional("&"));return t}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(t=0){if(t>50)throw new j(4010,!1);if(this.remaining==="")return{};this.consumeOptional("/");let e=[];for(this.peekStartsWith("(")||e.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),e.push(this.parseSegment());let o={};this.peekStartsWith("/(")&&(this.capture("/"),o=this.parseParens(!0,t));let i={};return this.peekStartsWith("(")&&(i=this.parseParens(!1,t)),(e.length>0||Object.keys(o).length>0)&&(i[le]=new ye(e,o)),i}parseSegment(){let t=hm(this.remaining);if(t===""&&this.peekStartsWith(";"))throw new j(4009,!1);return this.capture(t),new Jo(Vd(t),this.parseMatrixParams())}parseMatrixParams(){let t={};for(;this.consumeOptional(";");)this.parseParam(t);return t}parseParam(t){let e=wD(this.remaining);if(!e)return;this.capture(e);let o="";if(this.consumeOptional("=")){let i=hm(this.remaining);i&&(o=i,this.capture(o))}t[Vd(e)]=Vd(o)}parseQueryParam(t){let e=kD(this.remaining);if(!e)return;this.capture(e);let o="";if(this.consumeOptional("=")){let a=DD(this.remaining);a&&(o=a,this.capture(o))}let i=wP(e),r=wP(o);if(Object.hasOwn(t,i)){let a=t[i];Array.isArray(a)||(a=[a],t[i]=a),a.push(r)}else t[i]=r}parseParens(t,e){let o=Object.create(null);for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){let i=hm(this.remaining),r=this.remaining[i.length];if(r!=="/"&&r!==")"&&r!==";")throw new j(4010,!1);let a;i.indexOf(":")>-1?(a=i.slice(0,i.indexOf(":")),this.capture(a),this.capture(":")):t&&(a=le);let s=this.parseChildren(e+1);o[a??le]=Object.keys(s).length===1&&s[le]?s[le]:new ye([],s),this.consumeOptional("//")}return o}peekStartsWith(t){return this.remaining.startsWith(t)}consumeOptional(t){return this.peekStartsWith(t)?(this.remaining=this.remaining.substring(t.length),!0):!1}capture(t){if(!this.consumeOptional(t))throw new j(4011,!1)}};function zP(n){return n.segments.length>0?new ye([],{[le]:n}):n}function $P(n){let t=Object.create(null);for(let[o,i]of Object.entries(n.children)){let r=$P(i);if(o===le&&r.segments.length===0&&r.hasChildren())for(let[a,s]of Object.entries(r.children))t[a]=s;else(r.segments.length>0||r.hasChildren())&&(t[o]=r)}let e=new ye(n.segments,t);return ID(e)}function ID(n){if(n.numberOfChildren===1&&n.children[le]){let t=n.children[le];return new ye(n.segments.concat(t.segments),t.children)}return n}function ti(n){return n instanceof Lt}function HP(n,t,e=null,o=null,i=new ei){let r=UP(n);return WP(r,t,e,o,i)}function UP(n){let t;function e(r){let a={};for(let c of r.children){let u=e(c);a[c.outlet]=u}let s=new ye(r.url,a);return r===n&&(t=s),s}let o=e(n.root),i=zP(o);return t??i}function WP(n,t,e,o,i){let r=n;for(;r.parent;)r=r.parent;if(t.length===0)return Cm(r,r,r,e,o,i);let a=TD(t);if(a.toRoot())return Cm(r,r,new ye([],{}),e,o,i);let s=AD(a,r,n),c=s.processChildren?Os(s.segmentGroup,s.index,a.commands):qP(s.segmentGroup,s.index,a.commands);return Cm(r,s.segmentGroup,c,e,o,i)}function jd(n){return typeof n=="object"&&n!=null&&!n.outlets&&!n.segmentPath}function xs(n){return typeof n=="object"&&n!=null&&n.outlets}function SP(n,t,e){n||="\u0275";let o=new Lt;return o.queryParams={[n]:t},e.parse(e.serialize(o)).queryParams[n]}function Cm(n,t,e,o,i,r){let a={};for(let[u,f]of Object.entries(o??{}))a[u]=Array.isArray(f)?f.map(_=>SP(u,_,r)):SP(u,f,r);let s;n===t?s=e:s=GP(n,t,e);let c=zP($P(s));return new Lt(c,a,i)}function GP(n,t,e){let o=Object.create(null);return Object.entries(n.children).forEach(([i,r])=>{r===t?o[i]=e:o[i]=GP(r,t,e)}),new ye(n.segments,o)}var zd=class{isAbsolute;numberOfDoubleDots;commands;constructor(t,e,o){if(this.isAbsolute=t,this.numberOfDoubleDots=e,this.commands=o,t&&o.length>0&&jd(o[0]))throw new j(4003,!1);let i=o.find(xs);if(i&&i!==fD(o))throw new j(4004,!1)}toRoot(){return this.isAbsolute&&this.commands.length===1&&this.commands[0]=="/"}};function TD(n){if(typeof n[0]=="string"&&n.length===1&&n[0]==="/")return new zd(!0,0,n);let t=0,e=!1,o=n.reduce((i,r,a)=>{if(typeof r=="object"&&r!=null){if(r.outlets){let s={};return Object.entries(r.outlets).forEach(([c,u])=>{s[c]=typeof u=="string"?u.split("/"):u}),[...i,{outlets:s}]}if(r.segmentPath)return[...i,r.segmentPath]}return typeof r!="string"?[...i,r]:a===0?(r.split("/").forEach((s,c)=>{c==0&&s==="."||(c==0&&s===""?e=!0:s===".."?t++:s!=""&&i.push(s))}),i):[...i,r]},[]);return new zd(e,t,o)}var Gr=class{segmentGroup;processChildren;index;constructor(t,e,o){this.segmentGroup=t,this.processChildren=e,this.index=o}};function AD(n,t,e){if(n.isAbsolute)return new Gr(t,!0,0);if(!e)return new Gr(t,!1,NaN);if(e.parent===null)return new Gr(e,!0,0);let o=jd(n.commands[0])?0:1,i=e.segments.length-1+o;return RD(e,i,n.numberOfDoubleDots)}function RD(n,t,e){let o=n,i=t,r=e;for(;r>i;){if(r-=i,o=o.parent,!o)throw new j(4005,!1);i=o.segments.length}return new Gr(o,!1,i-r)}function FD(n){return xs(n[0])?n[0].outlets:{[le]:n}}function qP(n,t,e){if(n??=new ye([],{}),n.segments.length===0&&n.hasChildren())return Os(n,t,e);let o=ND(n,t,e),i=e.slice(o.commandIndex);if(o.match&&o.pathIndexr!==le)&&n.children[le]&&n.numberOfChildren===1&&n.children[le].segments.length===0){let r=Os(n.children[le],t,e);return new ye(n.segments,r.children)}return Object.entries(o).forEach(([r,a])=>{typeof a=="string"&&(a=[a]),a!==null&&(i[r]=qP(n.children[r],t,a))}),Object.entries(n.children).forEach(([r,a])=>{o[r]===void 0&&(i[r]=a)}),new ye(n.segments,i)}}function ND(n,t,e){let o=0,i=t,r={match:!1,pathIndex:0,commandIndex:0};for(;i=e.length)return r;let a=n.segments[i],s=e[o];if(xs(s))break;let c=`${s}`,u=o0&&c===void 0)break;if(c&&u&&typeof u=="object"&&u.outlets===void 0){if(!EP(c,u,a))return r;o+=2}else{if(!EP(c,{},a))return r;o++}i++}return{match:!0,pathIndex:i,commandIndex:o}}function xm(n,t,e){let o=n.segments.slice(0,t),i=0;for(;i{typeof o=="string"&&(o=[o]),o!==null&&(t[e]=xm(new ye([],{}),0,o))}),t}function kP(n){let t={};return Object.entries(n).forEach(([e,o])=>t[e]=`${o}`),t}function EP(n,t,e){return n==e.path&&ro(t,e.parameters)}var vs="imperative",_t=(function(n){return n[n.NavigationStart=0]="NavigationStart",n[n.NavigationEnd=1]="NavigationEnd",n[n.NavigationCancel=2]="NavigationCancel",n[n.NavigationError=3]="NavigationError",n[n.RoutesRecognized=4]="RoutesRecognized",n[n.ResolveStart=5]="ResolveStart",n[n.ResolveEnd=6]="ResolveEnd",n[n.GuardsCheckStart=7]="GuardsCheckStart",n[n.GuardsCheckEnd=8]="GuardsCheckEnd",n[n.RouteConfigLoadStart=9]="RouteConfigLoadStart",n[n.RouteConfigLoadEnd=10]="RouteConfigLoadEnd",n[n.ChildActivationStart=11]="ChildActivationStart",n[n.ChildActivationEnd=12]="ChildActivationEnd",n[n.ActivationStart=13]="ActivationStart",n[n.ActivationEnd=14]="ActivationEnd",n[n.Scroll=15]="Scroll",n[n.NavigationSkipped=16]="NavigationSkipped",n})(_t||{}),sn=class{id;url;constructor(t,e){this.id=t,this.url=e}},Ji=class extends sn{type=_t.NavigationStart;navigationTrigger;restoredState;constructor(t,e,o="imperative",i=null){super(t,e),this.navigationTrigger=o,this.restoredState=i}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}},jn=class extends sn{urlAfterRedirects;type=_t.NavigationEnd;constructor(t,e,o){super(t,e),this.urlAfterRedirects=o}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}},kt=(function(n){return n[n.Redirect=0]="Redirect",n[n.SupersededByNewNavigation=1]="SupersededByNewNavigation",n[n.NoDataFromResolver=2]="NoDataFromResolver",n[n.GuardRejected=3]="GuardRejected",n[n.Aborted=4]="Aborted",n})(kt||{}),ws=(function(n){return n[n.IgnoredSameUrlNavigation=0]="IgnoredSameUrlNavigation",n[n.IgnoredByUrlHandlingStrategy=1]="IgnoredByUrlHandlingStrategy",n})(ws||{}),bn=class extends sn{reason;code;type=_t.NavigationCancel;constructor(t,e,o,i){super(t,e),this.reason=o,this.code=i}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}};function YP(n){return n instanceof bn&&(n.code===kt.Redirect||n.code===kt.SupersededByNewNavigation)}var wo=class extends sn{reason;code;type=_t.NavigationSkipped;constructor(t,e,o,i){super(t,e),this.reason=o,this.code=i}},er=class extends sn{error;target;type=_t.NavigationError;constructor(t,e,o,i){super(t,e),this.error=o,this.target=i}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}},Ss=class extends sn{urlAfterRedirects;state;type=_t.RoutesRecognized;constructor(t,e,o,i){super(t,e),this.urlAfterRedirects=o,this.state=i}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},$d=class extends sn{urlAfterRedirects;state;type=_t.GuardsCheckStart;constructor(t,e,o,i){super(t,e),this.urlAfterRedirects=o,this.state=i}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},Hd=class extends sn{urlAfterRedirects;state;shouldActivate;type=_t.GuardsCheckEnd;constructor(t,e,o,i,r){super(t,e),this.urlAfterRedirects=o,this.state=i,this.shouldActivate=r}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}},Ud=class extends sn{urlAfterRedirects;state;type=_t.ResolveStart;constructor(t,e,o,i){super(t,e),this.urlAfterRedirects=o,this.state=i}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},Wd=class extends sn{urlAfterRedirects;state;type=_t.ResolveEnd;constructor(t,e,o,i){super(t,e),this.urlAfterRedirects=o,this.state=i}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},Gd=class{route;type=_t.RouteConfigLoadStart;constructor(t){this.route=t}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}},qd=class{route;type=_t.RouteConfigLoadEnd;constructor(t){this.route=t}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}},Yd=class{snapshot;type=_t.ChildActivationStart;constructor(t){this.snapshot=t}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},Kd=class{snapshot;type=_t.ChildActivationEnd;constructor(t){this.snapshot=t}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},Zd=class{snapshot;type=_t.ActivationStart;constructor(t){this.snapshot=t}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},Xd=class{snapshot;type=_t.ActivationEnd;constructor(t){this.snapshot=t}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}};var Kr=class{},ks=class{},Zr=class{url;navigationBehaviorOptions;constructor(t,e){this.url=t,this.navigationBehaviorOptions=e}};function VD(n){return!(n instanceof Kr)&&!(n instanceof Zr)&&!(n instanceof ks)}var Qd=class{rootInjector;outlet=null;route=null;children;attachRef=null;get injector(){return this.route?.snapshot._environmentInjector??this.rootInjector}constructor(t){this.rootInjector=t,this.children=new ta(this.rootInjector)}},ta=(()=>{class n{rootInjector;contexts=new Map;constructor(e){this.rootInjector=e}onChildOutletCreated(e,o){let i=this.getOrCreateContext(e);i.outlet=o,this.contexts.set(e,i)}onChildOutletDestroyed(e){let o=this.getContext(e);o&&(o.outlet=null,o.attachRef=null)}onOutletDeactivated(){let e=this.contexts;return this.contexts=new Map,e}onOutletReAttached(e){this.contexts=e}getOrCreateContext(e){let o=this.getContext(e);return o||(o=new Qd(this.rootInjector),this.contexts.set(e,o)),o}getContext(e){return this.contexts.get(e)||null}static \u0275fac=function(o){return new(o||n)(Q(De))};static \u0275prov=ee({token:n,factory:n.\u0275fac,providedIn:"root"})}return n})(),Jd=class{_root;constructor(t){this._root=t}get root(){return this._root.value}parent(t){let e=this.pathFromRoot(t);return e.length>1?e[e.length-2]:null}children(t){let e=wm(t,this._root);return e?e.children.map(o=>o.value):[]}firstChild(t){let e=wm(t,this._root);return e&&e.children.length>0?e.children[0].value:null}siblings(t){let e=Sm(t,this._root);return e.length<2?[]:e[e.length-2].children.map(i=>i.value).filter(i=>i!==t)}pathFromRoot(t){return Sm(t,this._root).map(e=>e.value)}};function wm(n,t){if(n===t.value)return t;for(let e of t.children){let o=wm(n,e);if(o)return o}return null}function Sm(n,t){if(n===t.value)return[t];for(let e of t.children){let o=Sm(n,e);if(o.length)return o.unshift(t),o}return[]}var an=class{value;children;constructor(t,e){this.value=t,this.children=e}toString(){return`TreeNode(${this.value})`}};function Wr(n){let t={};return n&&n.children.forEach(e=>t[e.value.outlet]=e),t}var Es=class extends Jd{snapshot;constructor(t,e){super(t),this.snapshot=e,Bm(this,t)}toString(){return this.snapshot.toString()}};function KP(n,t){let e=BD(n,t),o=new ht([new Jo("",{})]),i=new ht({}),r=new ht({}),a=new ht({}),s=new ht(""),c=new So(o,i,a,s,r,le,n,e.root);return c.snapshot=e.root,new Es(new an(c,[]),e)}function BD(n,t){let e={},o={},i={},a=new Xr([],e,i,"",o,le,n,null,{},t);return new Ds("",new an(a,[]))}var So=class{urlSubject;paramsSubject;queryParamsSubject;fragmentSubject;dataSubject;outlet;component;snapshot;_futureSnapshot;_routerState;_paramMap;_queryParamMap;title;url;params;queryParams;fragment;data;resources;_localInjector;pending;paramsSignal;queryParamsSignal;paramMapSignal;queryParamMapSignal;fragmentSignal;dataSignal;constructor(t,e,o,i,r,a,s,c){this.urlSubject=t,this.paramsSubject=e,this.queryParamsSubject=o,this.fragmentSubject=i,this.dataSubject=r,this.outlet=a,this.component=s,this._futureSnapshot=c,this.title=this.dataSubject?.pipe(Ee(u=>u[As]))??se(void 0),this.url=t,this.params=e,this.queryParams=o,this.fragment=i,this.data=r}get routeConfig(){return this._futureSnapshot.routeConfig}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap??=this.params.pipe(Ee(t=>Qi(t))),this._paramMap}get queryParamMap(){return this._queryParamMap??=this.queryParams.pipe(Ee(t=>Qi(t))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}_setPending(t){this._futureSnapshot=t,this.pending?.set(!0)}},jD="always";function Vm(n,t,e){let o,{routeConfig:i}=n;return t!==null&&(e==="always"||i?.path===""||!t.component&&!t.routeConfig?.loadComponent)?o={params:x(x({},t.params),n.params),data:x(x({},t.data),n.data),resolve:x(x(x(x({},n.data),t.data),i?.data),n._resolvedData)}:o={params:x({},n.params),data:x({},n.data),resolve:x(x({},n.data),n._resolvedData??{})},i&&XP(i)&&(o.resolve[As]=i.title),o}var Xr=class{url;params;queryParams;fragment;data;outlet;component;routeConfig;_resolve;_resolvedData;_routerState;_paramMap;_queryParamMap;_environmentInjector;resources;get title(){return this.data?.[As]}constructor(t,e,o,i,r,a,s,c,u,f){this.url=t,this.params=e,this.queryParams=o,this.fragment=i,this.data=r,this.outlet=a,this.component=s,this.routeConfig=c,this._resolve=u,this._environmentInjector=f}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap??=Qi(this.params),this._paramMap}get queryParamMap(){return this._queryParamMap??=Qi(this.queryParams),this._queryParamMap}toString(){let t=this.url.map(o=>o.toString()).join("/"),e=this.routeConfig?this.routeConfig.path:"";return`Route(url:'${t}', path:'${e}')`}},Ds=class extends Jd{url;constructor(t,e){super(e),this.url=t,Bm(this,e)}toString(){return ZP(this._root)}};function Bm(n,t){t.value._routerState=n,t.children.forEach(e=>Bm(n,e))}function ZP(n){let t=n.children.length>0?` { ${n.children.map(ZP).join(", ")} } `:"";return`${n.value}${t}`}function Mm(n){if(n.snapshot){let t=n.snapshot,e=n._futureSnapshot;n.snapshot=e,ro(t.queryParams,e.queryParams)||n.queryParamsSubject.next(e.queryParams),t.fragment!==e.fragment&&n.fragmentSubject.next(e.fragment),ro(t.params,e.params)||n.paramsSubject.next(e.params),pD(t.url,e.url)||n.urlSubject.next(e.url),ro(t.data,e.data)||n.dataSubject.next(e.data)}else n.snapshot=n._futureSnapshot,n.dataSubject.next(n._futureSnapshot.data)}function km(n,t){let e=ro(n.params,t.params)&&CD(n.url,t.url),o=!n.parent!=!t.parent;return e&&!o&&(!n.parent||km(n.parent,t.parent))}function XP(n){return typeof n.title=="string"||n.title===null}var QP=new $(""),Rs=(()=>{class n{activated=null;get activatedComponentRef(){return this.activated}_activatedRoute=null;name=le;activateEvents=new ve;deactivateEvents=new ve;attachEvents=new ve;detachEvents=new ve;routerOutletData=gd();parentContexts=v(ta);location=v(Rn);changeDetector=v(Ln);inputBinder=v(ou,{optional:!0});supportsBindingToComponentInputs=!0;ngOnChanges(e){if(e.name){let{firstChange:o,previousValue:i}=e.name;if(o)return;this.isTrackedInParentContexts(i)&&(this.deactivate(),this.parentContexts.onChildOutletDestroyed(i)),this.initializeOutletWithName()}}ngOnDestroy(){this.isTrackedInParentContexts(this.name)&&this.parentContexts.onChildOutletDestroyed(this.name),this.inputBinder?.unsubscribeFromRouteData(this)}isTrackedInParentContexts(e){return this.parentContexts.getContext(e)?.outlet===this}ngOnInit(){this.initializeOutletWithName()}initializeOutletWithName(){if(this.parentContexts.onChildOutletCreated(this.name,this),this.activated)return;let e=this.parentContexts.getContext(this.name);e?.route&&(e.attachRef?this.attach(e.attachRef,e.route):this.activateWith(e.route,e.injector))}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new j(4012,!1);return this.activated.instance}get activatedRoute(){if(!this.activated)throw new j(4012,!1);return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new j(4012,!1);this.location.detach();let e=this.activated;return this.activated=null,this._activatedRoute=null,this.detachEvents.emit(e.instance),e}attach(e,o){this.activated=e,this._activatedRoute=o,this.location.insert(e.hostView),this.inputBinder?.bindActivatedRouteToOutletComponent(this,this.location.injector),this.attachEvents.emit(e.instance)}deactivate(){if(this.activated){let e=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(e)}}activateWith(e,o){if(this.isActivated)throw new j(4013,!1);this._activatedRoute=e;let i=this.location,a=e.snapshot.component,s=this.parentContexts.getOrCreateContext(this.name).children,c=new Em(e,s,i.injector,this.routerOutletData);this.activated=i.createComponent(a,{index:i.length,injector:c,environmentInjector:o}),this.changeDetector.markForCheck(),this.inputBinder?.bindActivatedRouteToOutletComponent(this,this.location.injector),this.activateEvents.emit(this.activated.instance)}static \u0275fac=function(o){return new(o||n)};static \u0275dir=Pe({type:n,selectors:[["router-outlet"]],inputs:{name:"name",routerOutletData:[1,"routerOutletData"]},outputs:{activateEvents:"activate",deactivateEvents:"deactivate",attachEvents:"attach",detachEvents:"detach"},exportAs:["outlet"],features:[nn]})}return n})(),Em=class{route;childContexts;parent;outletData;constructor(t,e,o,i){this.route=t,this.childContexts=e,this.parent=o,this.outletData=i}get(t,e){return t===So?this.route:t===ta?this.childContexts:t===QP?this.outletData:this.parent.get(t,e)}},ou=new $("");var jm=(()=>{class n{static \u0275fac=function(o){return new(o||n)};static \u0275cmp=Ae({type:n,selectors:[["ng-component"]],exportAs:["emptyRouterOutlet"],decls:1,vars:0,template:function(o,i){o&1&&z(0,"router-outlet")},dependencies:[Rs],encapsulation:2,changeDetection:1})}return n})();function zm(n){let t=n.children&&n.children.map(zm),e=t?F(x({},n),{children:t}):x({},n);return!e.component&&!e.loadComponent&&(t||e.loadChildren)&&e.outlet&&e.outlet!==le&&(e.component=jm),e}function zD(n,t,e){let o=new Set,i=Is(n,t._root,e?e._root:void 0,o);return{newlyCreatedRoutes:o,state:new Es(i,t)}}function Is(n,t,e,o){if(e&&n.shouldReuseRoute(t.value,e.value.snapshot)){let i=e.value;i._setPending(t.value);let r=$D(n,t,e,o);return new an(i,r)}else{if(n.shouldAttach(t.value)){let a=n.retrieve(t.value);if(a!==null){let s=a.route;return s.value._setPending(t.value),s.children=t.children.map(c=>Is(n,c,void 0,o)),s}}let i=HD(t.value);i._setPending(t.value),o.add(i);let r=t.children.map(a=>Is(n,a,void 0,o));return new an(i,r)}}function $D(n,t,e,o){return t.children.map(i=>{for(let r of e.children)if(n.shouldReuseRoute(i.value,r.value.snapshot))return Is(n,i,r,o);return Is(n,i,void 0,o)})}function HD(n){return new So(new ht(n.url),new ht(n.params),new ht(n.queryParams),new ht(n.fragment),new ht(n.data),n.outlet,n.component,n)}var Qr=class{redirectTo;navigationBehaviorOptions;constructor(t,e){this.redirectTo=t,this.navigationBehaviorOptions=e}},JP="ngNavigationCancelingError";function eu(n,t){let{redirectTo:e,navigationBehaviorOptions:o}=ti(t)?{redirectTo:t,navigationBehaviorOptions:void 0}:t,i=eO(!1,kt.Redirect);return i.url=e,i.navigationBehaviorOptions=o,i}function eO(n,t){let e=new Error(`NavigationCancelingError: ${n||""}`);return e[JP]=!0,e.cancellationCode=t,e}function UD(n){return tO(n)&&ti(n.url)}function tO(n){return!!n&&n[JP]}var Dm=class{routeReuseStrategy;futureState;currState;forwardEvent;inputBindingEnabled;constructor(t,e,o,i,r){this.routeReuseStrategy=t,this.futureState=e,this.currState=o,this.forwardEvent=i,this.inputBindingEnabled=r}activate(t){let e=this.futureState._root,o=this.currState?this.currState._root:null;this.deactivateChildRoutes(e,o,t),Mm(this.futureState.root),this.activateChildRoutes(e,o,t)}deactivateChildRoutes(t,e,o){let i=Wr(e);t.children.forEach(r=>{let a=r.value.outlet;this.deactivateRoutes(r,i[a],o),delete i[a]}),Object.values(i).forEach(r=>{this.deactivateRouteAndItsChildren(r,o)})}deactivateRoutes(t,e,o){let i=t.value,r=e?e.value:null;if(i===r)if(i.component){let a=o.getContext(i.outlet);a&&this.deactivateChildRoutes(t,e,a.children)}else this.deactivateChildRoutes(t,e,o);else r&&this.deactivateRouteAndItsChildren(e,o)}deactivateRouteAndItsChildren(t,e){t.value.component&&this.routeReuseStrategy.shouldDetach(t.value.snapshot)?this.detachAndStoreRouteSubtree(t,e):this.deactivateRouteAndOutlet(t,e)}detachAndStoreRouteSubtree(t,e){let o=e.getContext(t.value.outlet),i=o&&t.value.component?o.children:e,r=Wr(t);for(let a of Object.values(r))this.deactivateRouteAndItsChildren(a,i);if(o&&o.outlet){let a=o.outlet.detach(),s=o.children.onOutletDeactivated();this.routeReuseStrategy.store(t.value.snapshot,{componentRef:a,route:t,contexts:s})}}deactivateRouteAndOutlet(t,e){let o=e.getContext(t.value.outlet),i=o&&t.value.component?o.children:e,r=Wr(t);for(let a of Object.values(r))this.deactivateRouteAndItsChildren(a,i);o&&(o.outlet&&(o.outlet.deactivate(),o.children.onOutletDeactivated()),o.attachRef=null,o.route=null),t.value._localInjector?.destroy()}activateChildRoutes(t,e,o){let i=Wr(e);t.children.forEach(r=>{this.activateRoutes(r,i[r.value.outlet],o),this.forwardEvent(new Xd(r.value.snapshot))}),t.children.length&&this.forwardEvent(new Kd(t.value.snapshot))}activateRoutes(t,e,o){let i=t.value,r=e?e.value:null;if(Mm(i),i===r)if(i.component){let a=o.getOrCreateContext(i.outlet);this.activateChildRoutes(t,e,a.children)}else this.activateChildRoutes(t,e,o);else if(i.component){let a=o.getOrCreateContext(i.outlet);if(this.routeReuseStrategy.shouldAttach(i.snapshot)){let s=this.routeReuseStrategy.retrieve(i.snapshot);this.routeReuseStrategy.store(i.snapshot,null),a.children.onOutletReAttached(s.contexts),a.attachRef=s.componentRef,a.route=s.route.value,a.outlet&&a.outlet.attach(s.componentRef,s.route.value),Mm(s.route.value),this.activateChildRoutes(t,null,a.children)}else a.attachRef=null,a.route=i,a.outlet&&a.outlet.activateWith(i,a.injector),this.activateChildRoutes(t,null,a.children)}else this.activateChildRoutes(t,null,o)}},tu=class{path;route;constructor(t){this.path=t,this.route=this.path[this.path.length-1]}},qr=class{component;route;constructor(t,e){this.component=t,this.route=e}};function WD(n,t,e){let o=n._root,i=t?t._root:null;return Ps(o,i,e,[o.value])}function GD(n){let t=n.routeConfig?n.routeConfig.canActivateChild:null;return!t||t.length===0?null:{node:n,guards:t}}function na(n,t){let e=Symbol(),o=t.get(n,e);return o===e?typeof n=="function"&&!Tg(n)?n:t.get(n):o}function Ps(n,t,e,o,i={canDeactivateChecks:[],canActivateChecks:[]}){let r=Wr(t);return n.children.forEach(a=>{qD(a,r[a.value.outlet],e,o.concat([a.value]),i),delete r[a.value.outlet]}),Object.entries(r).forEach(([a,s])=>ys(s,e.getContext(a),e,i)),i}function qD(n,t,e,o,i={canDeactivateChecks:[],canActivateChecks:[]}){let r=n.value,a=t?t.value:null,s=e?e.getContext(n.value.outlet):null;if(a&&r.routeConfig===a.routeConfig){let c=YD(a,r,r.routeConfig.runGuardsAndResolvers);c?i.canActivateChecks.push(new tu(o)):(r.data=a.data,r._resolvedData=a._resolvedData),r.component?Ps(n,t,s?s.children:null,o,i):Ps(n,t,e,o,i),c&&s&&s.outlet&&s.outlet.isActivated&&i.canDeactivateChecks.push(new qr(s.outlet.component,a))}else a&&ys(t,s,e,i),i.canActivateChecks.push(new tu(o)),r.component?Ps(n,null,s?s.children:null,o,i):Ps(n,null,e,o,i);return i}function YD(n,t,e){if(typeof e=="function")return st(t._environmentInjector,()=>e(n,t));switch(e){case"pathParamsChange":return!Xi(n.url,t.url);case"pathParamsOrQueryParamsChange":return!Xi(n.url,t.url)||!ro(n.queryParams,t.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!km(n,t)||!ro(n.queryParams,t.queryParams);default:return!km(n,t)}}function ys(n,t,e,o){let i=Wr(n),r=n.value;Object.entries(i).forEach(([a,s])=>{r.component?t?ys(s,t.children.getContext(a),t.children,o):ys(s,null,null,o):ys(s,e?e.getContext(a):null,e,o)}),r.component?t&&t.outlet&&t.outlet.isActivated?o.canDeactivateChecks.push(new qr(t.outlet.component,r)):o.canDeactivateChecks.push(new qr(null,r)):o.canDeactivateChecks.push(new qr(null,r))}function Fs(n){return typeof n=="function"}function KD(n){return typeof n=="boolean"}function ZD(n){return n&&Fs(n.canLoad)}function XD(n){return n&&Fs(n.canActivate)}function QD(n){return n&&Fs(n.canActivateChild)}function JD(n){return n&&Fs(n.canDeactivate)}function eI(n){return n&&Fs(n.canMatch)}function nO(n){return n instanceof bi||n?.name==="EmptyError"}var Fd=Symbol("INITIAL_VALUE");function Jr(){return At(n=>fg(n.map(t=>t.pipe(uo(1),Vc(Fd)))).pipe(Ee(t=>{for(let e of t)if(e!==!0){if(e===Fd)return Fd;if(e===!1||tI(e))return e}return!0}),vt(t=>t!==Fd),uo(1)))}function tI(n){return ti(n)||n instanceof Qr}function oO(n){return n.aborted?se(void 0).pipe(uo(1)):new te(t=>{let e=()=>{t.next(),t.complete()};return n.addEventListener("abort",e),()=>n.removeEventListener("abort",e)})}function iO(n){return Cr(oO(n))}function nI(n){return Ot(t=>{let{targetSnapshot:e,currentSnapshot:o,guards:{canActivateChecks:i,canDeactivateChecks:r}}=t;return r.length===0&&i.length===0?se(F(x({},t),{guardsResult:!0})):oI(r,e,o).pipe(Ot(a=>a&&KD(a)?iI(e,i,n):se(a)),Ee(a=>F(x({},t),{guardsResult:a})))})}function oI(n,t,e){return We(n).pipe(Ot(o=>lI(o.component,o.route,e,t)),go(o=>o!==!0,!0))}function iI(n,t,e){return We(t).pipe(Pi(o=>_r(aI(o.route.parent,e),rI(o.route,e),cI(n,o.path),sI(n,o.route))),go(o=>o!==!0,!0))}function rI(n,t){return n!==null&&t&&t(new Zd(n)),se(!0)}function aI(n,t){return n!==null&&t&&t(new Yd(n)),se(!0)}function sI(n,t){let e=t.routeConfig?t.routeConfig.canActivate:null;if(!e||e.length===0)return se(!0);let o=e.map(i=>Pa(()=>{let r=t._environmentInjector,a=na(i,r),s=XD(a)?a.canActivate(t,n):st(r,()=>a(t,n));return tr(s).pipe(go())}));return se(o).pipe(Jr())}function cI(n,t){let e=t[t.length-1],i=t.slice(0,t.length-1).reverse().map(r=>GD(r)).filter(r=>r!==null).map(r=>Pa(()=>{let a=r.guards.map(s=>{let c=r.node._environmentInjector,u=na(s,c),f=QD(u)?u.canActivateChild(e,n):st(c,()=>u(e,n));return tr(f).pipe(go())});return se(a).pipe(Jr())}));return se(i).pipe(Jr())}function lI(n,t,e,o){let i=t&&t.routeConfig?t.routeConfig.canDeactivate:null;if(!i||i.length===0)return se(!0);let r=i.map(a=>{let s=t._environmentInjector,c=na(a,s),u=JD(c)?c.canDeactivate(n,t,e,o):st(s,()=>c(n,t,e,o));return tr(u).pipe(go())});return se(r).pipe(Jr())}function dI(n,t,e,o,i){let r=t.canLoad;if(r===void 0||r.length===0)return se(!0);let a=r.map(s=>{let c=na(s,n),u=ZD(c)?c.canLoad(t,e):st(n,()=>c(t,e)),f=tr(u);return i?f.pipe(iO(i)):f});return se(a).pipe(Jr(),rO(o))}function rO(n){return gc(Fe(t=>{if(typeof t!="boolean")throw eu(n,t)}),Ee(t=>t===!0))}function uI(n,t,e,o,i,r){let a=t.canMatch;if(!a||a.length===0)return se(!0);let s=a.map(c=>{let u=na(c,n),f=eI(u)?u.canMatch(t,e,i):st(n,()=>u(t,e,i));return tr(f).pipe(iO(r))});return se(s).pipe(Jr(),rO(o))}var xo=class n extends Error{segmentGroup;constructor(t){super(),this.segmentGroup=t||null,Object.setPrototypeOf(this,n.prototype)}},Ts=class n extends Error{urlTree;constructor(t){super(),this.urlTree=t,Object.setPrototypeOf(this,n.prototype)}};function gI(n){throw new j(4e3,!1)}function pI(n){throw eO(!1,kt.GuardRejected)}var Im=class{urlSerializer;urlTree;constructor(t,e){this.urlSerializer=t,this.urlTree=e}lineralizeSegments(t,e){return ke(this,null,function*(){let o=[],i=e.root;for(;;){if(o=o.concat(i.segments),i.numberOfChildren===0)return o;if(i.numberOfChildren>1||!i.children[le])throw gI(`${t.redirectTo}`);i=i.children[le]}})}applyRedirectCommands(t,e,o,i,r){return ke(this,null,function*(){let a=yield fI(e,i,r);if(a instanceof Lt)throw new Ts(a);let s=this.applyRedirectCreateUrlTree(a,this.urlSerializer.parse(a),t,o);if(a[0]==="/")throw new Ts(s);return s})}applyRedirectCreateUrlTree(t,e,o,i){let r=this.createSegmentGroup(t,e.root,o,i);return new Lt(r,this.createQueryParams(e.queryParams,this.urlTree.queryParams),e.fragment)}createQueryParams(t,e){let o={};return Object.entries(t).forEach(([i,r])=>{if(typeof r=="string"&&r[0]===":"){let s=r.substring(1);o[i]=e[s]}else o[i]=r}),o}createSegmentGroup(t,e,o,i){let r=this.createSegments(t,e.segments,o,i),a=Object.create(null);return Object.entries(e.children).forEach(([s,c])=>{a[s]=this.createSegmentGroup(t,c,o,i)}),new ye(r,a)}createSegments(t,e,o,i){return e.map(r=>r.path[0]===":"?this.findPosParam(t,r,i):this.findOrReturn(r,o))}findPosParam(t,e,o){let i=o[e.path.substring(1)];if(!i)throw new j(4001,!1);return i}findOrReturn(t,e){let o=0;for(let i of e){if(i.path===t.path)return e.splice(o),i;o++}return t}};function fI(n,t,e){if(typeof n=="string")return Promise.resolve(n);let o=n;return Bd(tr(st(e,()=>o(t))))}function mI(n,t){return n.providers&&!n._injector&&(n._injector=is(n.providers,t,`Route: ${n.path}`)),n._injector??t}function Bn(n){return n.outlet||le}function _I(n,t){let e=n.filter(o=>Bn(o)===t);return e.push(...n.filter(o=>Bn(o)!==t)),e}var Tm={matched:!1,consumedSegments:[],remainingSegments:[],parameters:{},positionalParamSegments:{}};function aO(n){return{routeConfig:n.routeConfig,url:n.url,params:n.params,queryParams:n.queryParams,fragment:n.fragment,data:n.data,outlet:n.outlet,title:n.title,paramMap:n.paramMap,queryParamMap:n.queryParamMap}}function hI(n,t,e,o,i,r,a){let s=sO(n,t,e);if(!s.matched)return se(s);let c=aO(r(s));return o=mI(t,o),uI(o,t,e,i,c,a).pipe(Ee(u=>u===!0?s:x({},Tm)))}function sO(n,t,e){if(t.path==="")return t.pathMatch==="full"&&(n.hasChildren()||e.length>0)?x({},Tm):{matched:!0,consumedSegments:[],remainingSegments:e,parameters:{},positionalParamSegments:{}};let i=(t.matcher||TP)(e,n,t);if(!i)return x({},Tm);let r={};Object.entries(i.posParams??{}).forEach(([s,c])=>{r[s]=c.path});let a=i.consumed.length>0?x(x({},r),i.consumed[i.consumed.length-1].parameters):r;return{matched:!0,consumedSegments:i.consumed,remainingSegments:e.slice(i.consumed.length),parameters:a,positionalParamSegments:i.posParams??{}}}function DP(n,t,e,o,i){return e.length>0&&bI(n,e,o,i)?{segmentGroup:new ye(t,MI(o,new ye(e,n.children))),slicedSegments:[]}:e.length===0&&PI(n,e,o)?{segmentGroup:new ye(n.segments,CI(n,e,o,n.children)),slicedSegments:e}:{segmentGroup:new ye(n.segments,n.children),slicedSegments:e}}function CI(n,t,e,o){let i={};for(let r of e)if(iu(n,t,r)&&!o[Bn(r)]){let a=new ye([],{});i[Bn(r)]=a}return x(x({},o),i)}function MI(n,t){let e={};e[le]=t;for(let o of n)if(o.path===""&&Bn(o)!==le){let i=new ye([],{});e[Bn(o)]=i}return e}function bI(n,t,e,o){return e.some(i=>!iu(n,t,i)||!(Bn(i)!==le)?!1:!(o!==void 0&&Bn(i)===o))}function PI(n,t,e){return e.some(o=>iu(n,t,o))}function iu(n,t,e){return(n.hasChildren()||t.length>0)&&e.pathMatch==="full"?!1:e.path===""}function OI(n,t,e){return t.length===0&&!n.children[e]}var Am=class{};function vI(n,t,e,o,i,r,a,s){return ke(this,null,function*(){return new Rm(n,t,e,o,i,a,r,s).recognize()})}var yI=31,Rm=class{injector;configLoader;rootComponentType;config;urlTree;paramsInheritanceStrategy;urlSerializer;abortSignal;applyRedirects;absoluteRedirectCount=0;allowRedirects=!0;constructor(t,e,o,i,r,a,s,c){this.injector=t,this.configLoader=e,this.rootComponentType=o,this.config=i,this.urlTree=r,this.paramsInheritanceStrategy=a,this.urlSerializer=s,this.abortSignal=c,this.applyRedirects=new Im(this.urlSerializer,this.urlTree)}noMatchError(t){return new j(4002,`'${t.segmentGroup}'`)}recognize(){return ke(this,null,function*(){let t=DP(this.urlTree.root,[],[],this.config).segmentGroup,{children:e,rootSnapshot:o}=yield this.match(t),i=new an(o,e),r=new Ds("",i),a=HP(o,[],this.urlTree.queryParams,this.urlTree.fragment);return a.queryParams=this.urlTree.queryParams,r.url=this.urlSerializer.serialize(a),{state:r,tree:a}})}match(t){return ke(this,null,function*(){let e=new Xr([],Object.freeze({}),Object.freeze(x({},this.urlTree.queryParams)),this.urlTree.fragment,Object.freeze({}),le,this.rootComponentType,null,{},this.injector);try{return{children:yield this.processSegmentGroup(this.injector,this.config,t,le,e),rootSnapshot:e}}catch(o){if(o instanceof Ts)return this.urlTree=o.urlTree,this.match(o.urlTree.root);throw o instanceof xo?this.noMatchError(o):o}})}processSegmentGroup(t,e,o,i,r){return ke(this,null,function*(){if(o.segments.length===0&&o.hasChildren())return this.processChildren(t,e,o,r);let a=yield this.processSegment(t,e,o,o.segments,i,!0,r);return a instanceof an?[a]:[]})}processChildren(t,e,o,i){return ke(this,null,function*(){let r=[];for(let c of Object.keys(o.children))c==="primary"?r.unshift(c):r.push(c);let a=[];for(let c of r){let u=o.children[c],f=_I(e,c),_=yield this.processSegmentGroup(t,f,u,c,i);a.push(..._)}let s=cO(a);return xI(s),s})}processSegment(t,e,o,i,r,a,s){return ke(this,null,function*(){for(let c of e)try{return yield this.processSegmentAgainstRoute(c._injector??t,e,c,o,i,r,a,s)}catch(u){if(u instanceof xo||nO(u))continue;throw u}if(OI(o,i,r))return new Am;throw new xo(o)})}processSegmentAgainstRoute(t,e,o,i,r,a,s,c){return ke(this,null,function*(){if(Bn(o)!==a&&(a===le||!iu(i,r,o)))throw new xo(i);if(o.redirectTo===void 0)return this.matchSegmentAgainstRoute(t,i,o,r,a,c);if(this.allowRedirects&&s)return this.expandSegmentAgainstRouteUsingRedirect(t,i,e,o,r,a,c);throw new xo(i)})}expandSegmentAgainstRouteUsingRedirect(t,e,o,i,r,a,s){return ke(this,null,function*(){let{matched:c,parameters:u,consumedSegments:f,positionalParamSegments:_,remainingSegments:h}=sO(e,i,r);if(!c)throw new xo(e);typeof i.redirectTo=="string"&&i.redirectTo[0]==="/"&&(this.absoluteRedirectCount++,this.absoluteRedirectCount>yI&&(this.allowRedirects=!1));let C=this.createSnapshot(t,i,r,u,s);if(this.abortSignal.aborted)throw new Error(this.abortSignal.reason);let O=yield this.applyRedirects.applyRedirectCommands(f,i.redirectTo,_,aO(C),t),P=yield this.applyRedirects.lineralizeSegments(i,O);return this.processSegment(t,o,e,P.concat(h),a,!1,s)})}createSnapshot(t,e,o,i,r){let a=new Xr(o,i,Object.freeze(x({},this.urlTree.queryParams)),this.urlTree.fragment,SI(e),Bn(e),e.component??e._loadedComponent??null,e,kI(e),t),s=Vm(a,r,this.paramsInheritanceStrategy);return a.params=Object.freeze(s.params),a.data=Object.freeze(s.data),a}matchSegmentAgainstRoute(t,e,o,i,r,a){return ke(this,null,function*(){if(this.abortSignal.aborted)throw new Error(this.abortSignal.reason);let s=H=>this.createSnapshot(t,o,H.consumedSegments,H.parameters,a),c=yield Bd(hI(e,o,i,t,this.urlSerializer,s,this.abortSignal));if(o.path==="**"&&(e.children={}),!c?.matched)throw new xo(e);t=o._injector??t;let{routes:u}=yield this.getChildConfig(t,o,i),f=o._loadedInjector??t,{parameters:_,consumedSegments:h,remainingSegments:C}=c,O=this.createSnapshot(t,o,h,_,a),{segmentGroup:P,slicedSegments:T}=DP(e,h,C,u,r);if(T.length===0&&P.hasChildren()){let H=yield this.processChildren(f,u,P,O);return new an(O,H)}if(u.length===0&&T.length===0)return new an(O,[]);let R=Bn(o)===r,D=yield this.processSegment(f,u,P,T,R?le:r,!0,O);return new an(O,D instanceof an?[D]:[])})}getChildConfig(t,e,o){return ke(this,null,function*(){if(e.children)return{routes:e.children,injector:t};if(e.loadChildren){if(e._loadedRoutes!==void 0){let r=e._loadedNgModuleFactory;return r&&!e._loadedInjector&&(e._loadedInjector=r.create(t).injector),{routes:e._loadedRoutes,injector:e._loadedInjector}}if(this.abortSignal.aborted)throw new Error(this.abortSignal.reason);if(yield Bd(dI(t,e,o,this.urlSerializer,this.abortSignal))){let r=yield this.configLoader.loadChildren(t,e);return e._loadedRoutes=r.routes,e._loadedInjector=r.injector,e._loadedNgModuleFactory=r.factory,r}throw pI(e)}return{routes:[],injector:t}})}};function xI(n){n.sort((t,e)=>t.value.outlet===le?-1:e.value.outlet===le?1:t.value.outlet.localeCompare(e.value.outlet))}function wI(n){let t=n.value.routeConfig;return t&&t.path===""}function cO(n){let t=[],e=new Set;for(let o of n){if(!wI(o)){t.push(o);continue}let i=t.find(r=>o.value.routeConfig===r.value.routeConfig);i!==void 0?(i.children.push(...o.children),e.add(i)):t.push(o)}for(let o of e){let i=cO(o.children);t.push(new an(o.value,i))}return t.filter(o=>!e.has(o))}function SI(n){return n.data||{}}function kI(n){return n.resolve||{}}function EI(n,t,e,o,i,r,a){return Ot(s=>ke(null,null,function*(){let{state:c,tree:u}=yield vI(n,t,e,o,s.extractedUrl,i,r,a);return F(x({},s),{targetSnapshot:c,urlAfterRedirects:u})}))}function DI(n){return Ot(t=>{let{targetSnapshot:e,guards:{canActivateChecks:o}}=t;if(!o.length)return se(t);let i=new Set(o.map(s=>s.route)),r=new Set;for(let s of i)if(!r.has(s))for(let c of lO(s))r.add(c);let a=0;return We(r).pipe(Pi(s=>i.has(s)?II(s,e,n):(s.data=Vm(s,s.parent,n).resolve,se(void 0))),Fe(()=>a++),Nc(1),Ot(s=>a===r.size?se(t):Ct))})}function lO(n){let t=n.children.map(e=>lO(e)).flat();return[n,...t]}function II(n,t,e){let o=n.routeConfig,i=n._resolve;return o?.title!==void 0&&!XP(o)&&(i[As]=o.title),Pa(()=>(n.data=Vm(n,n.parent,e).resolve,TI(i,n,t).pipe(Ee(r=>(n._resolvedData=r,n.data=x(x({},n.data),r),null)))))}function TI(n,t,e){let o=Pm(n);if(o.length===0)return se({});let i={};return We(o).pipe(Ot(r=>AI(n[r],t,e).pipe(go(),Fe(a=>{if(a instanceof Qr)throw eu(new ei,a);i[r]=a}))),Nc(1),Ee(()=>i),hr(r=>nO(r)?Ct:pg(r)))}function AI(n,t,e){let o=t._environmentInjector,i=na(n,o),r=i.resolve?i.resolve(t,e):st(o,()=>i(t,e));return tr(r)}var dO=new $("");function Fm(n){return At(t=>{let e=n(t);return e?We(e).pipe(Ee(()=>t)):se(t)})}var $m=(()=>{class n{buildTitle(e){let o,i=e.root;for(;i!==void 0;)o=this.getResolvedTitleForRoute(i)??o,i=i.children.find(r=>r.outlet===le);return o}getResolvedTitleForRoute(e){return e.data[As]}static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:()=>v(uO)})}return n})(),uO=(()=>{class n extends $m{title;constructor(e){super(),this.title=e}updateTitle(e){let o=this.buildTitle(e);o!==void 0&&this.title.setTitle(o)}static \u0275fac=function(o){return new(o||n)(Q(yP))};static \u0275prov=ee({token:n,factory:n.\u0275fac,providedIn:"root"})}return n})(),oa=new $("",{factory:()=>({})}),Ns=new $(""),gO=(()=>{class n{componentLoaders=new WeakMap;childrenLoaders=new WeakMap;onLoadStartListener;onLoadEndListener;compiler=v(Uf);loadComponent(e,o){return ke(this,null,function*(){if(this.componentLoaders.get(o))return this.componentLoaders.get(o);if(o._loadedComponent)return Promise.resolve(o._loadedComponent);this.onLoadStartListener&&this.onLoadStartListener(o);let i=ke(this,null,function*(){try{let r=yield RP(st(e,()=>o.loadComponent())),a=yield fO(qf(r));return this.onLoadEndListener&&this.onLoadEndListener(o),o._loadedComponent=a,a}finally{this.componentLoaders.delete(o)}});return this.componentLoaders.set(o,i),i})}loadChildren(e,o){if(this.childrenLoaders.get(o))return this.childrenLoaders.get(o);if(o._loadedRoutes)return Promise.resolve({routes:o._loadedRoutes,injector:o._loadedInjector});this.onLoadStartListener&&this.onLoadStartListener(o);let i=ke(this,null,function*(){try{let r=yield pO(o,this.compiler,e,this.onLoadEndListener);return o._loadedRoutes=r.routes,o._loadedInjector=r.injector,o._loadedNgModuleFactory=r.factory,r}finally{this.childrenLoaders.delete(o)}});return this.childrenLoaders.set(o,i),i}static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:n.\u0275fac})}return n})();function pO(n,t,e,o){return ke(this,null,function*(){let i=yield RP(st(e,()=>n.loadChildren())),r=yield fO(qf(i)),a;r instanceof id||Array.isArray(r)?a=r:a=yield t.compileModuleAsync(r),o&&o(n);let s,c,u=!1,f;return Array.isArray(a)?(c=a,u=!0):(s=a.create(e).injector,f=a,c=s.get(Ns,[],{optional:!0,self:!0}).flat()),{routes:c.map(zm),injector:s,factory:f}})}function fO(n){return ke(this,null,function*(){return n})}var ru=(()=>{class n{static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:()=>v(RI)})}return n})(),RI=(()=>{class n{shouldProcessUrl(e){return!0}extract(e){return e}merge(e,o){return e}static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:n.\u0275fac})}return n})(),mO=new $("");var FI=()=>{},_O=new $(""),hO=(()=>{class n{currentNavigation=w(null,{equal:()=>!1});currentTransition=null;lastSuccessfulNavigation=w(null);events=new fe;transitionAbortWithErrorSubject=new fe;configLoader=v(gO);environmentInjector=v(De);destroyRef=v(Te);urlSerializer=v(ea);rootContexts=v(ta);location=v(Xo);inputBindingEnabled=v(ou,{optional:!0})!==null;titleStrategy=v($m);options=v(oa,{optional:!0})||{};paramsInheritanceStrategy=this.options.paramsInheritanceStrategy||jD;urlHandlingStrategy=v(ru);createViewTransition=v(mO,{optional:!0});navigationErrorHandler=v(_O,{optional:!0});routerResourcesFeature=v(dO,{optional:!0});navigationId=0;get hasRequestedNavigation(){return this.navigationId!==0}transitions;afterPreactivation=()=>se(void 0);rootComponentType=null;destroyed=!1;constructor(){let e=i=>this.events.next(new Gd(i)),o=i=>this.events.next(new qd(i));this.configLoader.onLoadEndListener=o,this.configLoader.onLoadStartListener=e,this.destroyRef.onDestroy(()=>{this.destroyed=!0})}complete(){this.transitions?.complete()}handleNavigationRequest(e){let o=++this.navigationId;ie(()=>{this.transitions?.next(F(x({},e),{extractedUrl:this.urlHandlingStrategy.extract(e.rawUrl),targetSnapshot:null,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null,id:o,routesRecognizeHandler:{},beforeActivateHandler:{}}))})}setupNavigations(e){return this.transitions=new ht(null),this.transitions.pipe(vt(o=>o!==null),At(o=>{let i=!0,r=!1,a=new AbortController,s=()=>!r&&this.currentTransition?.id===o.id;return se(o).pipe(At(c=>{if(this.navigationId>o.id)return this.cancelNavigationTransition(o,"",kt.SupersededByNewNavigation),Ct;this.currentTransition=o;let u=this.lastSuccessfulNavigation();this.currentNavigation.set({id:c.id,initialUrl:c.rawUrl,extractedUrl:c.extractedUrl,targetBrowserUrl:typeof c.extras.browserUrl=="string"?this.urlSerializer.parse(c.extras.browserUrl):c.extras.browserUrl,trigger:c.source,extras:c.extras,previousNavigation:u?F(x({},u),{previousNavigation:null}):null,abort:()=>a.abort(),routesRecognizeHandler:c.routesRecognizeHandler,beforeActivateHandler:c.beforeActivateHandler});let f=!e.navigated||this.isUpdatingInternalState()||this.isUpdatedBrowserUrl(),_=c.extras.onSameUrlNavigation??e.onSameUrlNavigation;if(!f&&_!=="reload")return this.events.next(new wo(c.id,this.urlSerializer.serialize(c.rawUrl),"",ws.IgnoredSameUrlNavigation)),c.resolve(!1),Ct;if(this.urlHandlingStrategy.shouldProcessUrl(c.rawUrl))return se(c).pipe(At(h=>(this.events.next(new Ji(h.id,this.urlSerializer.serialize(h.extractedUrl),h.source,h.restoredState)),h.id!==this.navigationId?Ct:Promise.resolve(h))),EI(this.environmentInjector,this.configLoader,this.rootComponentType,e.config,this.urlSerializer,this.paramsInheritanceStrategy,a.signal),Fe(h=>{o.targetSnapshot=h.targetSnapshot,o.urlAfterRedirects=h.urlAfterRedirects,this.currentNavigation.update(C=>(C.finalUrl=h.urlAfterRedirects,C)),this.events.next(new ks)}),At(h=>We(o.routesRecognizeHandler.deferredHandle??se(void 0)).pipe(Ee(()=>h))),Fe(()=>{let h=new Ss(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects),c.targetSnapshot);this.events.next(h)}));if(f&&this.urlHandlingStrategy.shouldProcessUrl(c.currentRawUrl)){let{id:h,extractedUrl:C,source:O,restoredState:P,extras:T}=c,R=new Ji(h,this.urlSerializer.serialize(C),O,P);this.events.next(R);let D=KP(this.rootComponentType,this.environmentInjector).snapshot;return this.currentTransition=o=F(x({},c),{targetSnapshot:D,urlAfterRedirects:C,extras:F(x({},T),{skipLocationChange:!1,replaceUrl:!1})}),this.currentNavigation.update(H=>(H.finalUrl=C,H)),se(o)}else return this.events.next(new wo(c.id,this.urlSerializer.serialize(c.extractedUrl),"",ws.IgnoredByUrlHandlingStrategy)),c.resolve(!1),Ct}),Ee(c=>{let u=new $d(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects),c.targetSnapshot);return this.events.next(u),this.currentTransition=o=F(x({},c),{guards:WD(c.targetSnapshot,c.currentSnapshot,this.rootContexts)}),o}),nI(c=>this.events.next(c)),At(c=>{if(o.guardsResult=c.guardsResult,c.guardsResult&&typeof c.guardsResult!="boolean")throw eu(this.urlSerializer,c.guardsResult);let u=new Hd(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects),c.targetSnapshot,!!c.guardsResult);if(this.events.next(u),!s())return Ct;if(!c.guardsResult)return this.cancelNavigationTransition(c,"",kt.GuardRejected),Ct;if(c.guards.canActivateChecks.length===0)return se(c);let f=new Ud(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects),c.targetSnapshot);if(this.events.next(f),!s())return Ct;let _=!1;return se(c).pipe(DI(this.paramsInheritanceStrategy),Fe({next:()=>{_=!0;let h=new Wd(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects),c.targetSnapshot);this.events.next(h)},complete:()=>{_||this.cancelNavigationTransition(c,"",kt.NoDataFromResolver)}}))}),Fm(c=>{let u=_=>{let h=[];if(_.routeConfig?._loadedComponent)_.component=_.routeConfig?._loadedComponent;else if(_.routeConfig?.loadComponent){let C=_._environmentInjector;h.push(this.configLoader.loadComponent(C,_.routeConfig).then(O=>{_.component=O}))}for(let C of _.children)h.push(...u(C));return h},f=u(c.targetSnapshot.root);return f.length===0?se(c):We(Promise.all(f).then(()=>c))}),At(c=>{let{newlyCreatedRoutes:u,state:f}=zD(e.routeReuseStrategy,c.targetSnapshot,c.currentRouterState);return this.currentTransition=o=c=F(x({},c),{targetRouterState:f,newlyCreatedRoutes:u}),this.currentNavigation.update(_=>(_.targetRouterState=f,_)),se(c)}),this.routerResourcesFeature?.setupAndRunResources(a.signal)??(c=>c),Fm(()=>this.afterPreactivation()),At(()=>{let{currentSnapshot:c,targetSnapshot:u}=o,f=this.createViewTransition?.(this.environmentInjector,c.root,u.root);return f?We(f).pipe(Ee(()=>o)):se(o)}),uo(1),At(c=>{i=!1,this.events.next(new Kr);let u=o.beforeActivateHandler.deferredHandle;return u?We(u.then(()=>c)):se(c)}),Fe(c=>{new Dm(e.routeReuseStrategy,o.targetRouterState,o.currentRouterState,u=>this.events.next(u),this.inputBindingEnabled).activate(this.rootContexts),c.newlyCreatedRoutes?.clear(),s()&&(CO(c.targetRouterState),r=!0,this.currentNavigation.update(u=>(u.abort=FI,u)),this.lastSuccessfulNavigation.set(ie(this.currentNavigation)),this.events.next(new jn(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects))),this.titleStrategy?.updateTitle(c.targetRouterState.snapshot),c.resolve(!0))}),Cr(oO(a.signal).pipe(vt(()=>!r&&i),Fe(()=>{this.cancelNavigationTransition(o,a.signal.reason+"",kt.Aborted)}))),Fe({complete:()=>{r=!0}}),Cr(this.transitionAbortWithErrorSubject.pipe(Fe(c=>{throw c}))),Tt(()=>{a.abort(),r||this.cancelNavigationTransition(o,"",kt.SupersededByNewNavigation),this.currentTransition?.id===o.id&&(this.currentNavigation.set(null),this.currentTransition=null)}),hr(c=>{if(r=!0,IP(o),this.destroyed)return o.resolve(!1),Ct;if(tO(c))this.events.next(new bn(o.id,this.urlSerializer.serialize(o.extractedUrl),c.message,c.cancellationCode)),UD(c)?this.events.next(new Zr(c.url,c.navigationBehaviorOptions)):o.resolve(!1);else{let u=new er(o.id,this.urlSerializer.serialize(o.extractedUrl),c,o.targetSnapshot??void 0);try{let f=st(this.environmentInjector,()=>this.navigationErrorHandler?.(u));if(f instanceof Qr){let{message:_,cancellationCode:h}=eu(this.urlSerializer,f);this.events.next(new bn(o.id,this.urlSerializer.serialize(o.extractedUrl),_,h)),this.events.next(new Zr(f.redirectTo,f.navigationBehaviorOptions))}else throw this.events.next(u),c}catch(f){this.options.resolveNavigationPromiseOnError?o.resolve(!1):o.reject(f)}}return Ct}))}))}cancelNavigationTransition(e,o,i){IP(e);let r=new bn(e.id,this.urlSerializer.serialize(e.extractedUrl),o,i);this.events.next(r),e.resolve(!1)}isUpdatingInternalState(){return this.currentTransition?.extractedUrl.toString()!==this.currentTransition?.currentUrlTree.toString()}isUpdatedBrowserUrl(){let e=this.urlHandlingStrategy.extract(this.urlSerializer.parse(this.location.path(!0))),o=ie(this.currentNavigation),i=o?.targetBrowserUrl??o?.extractedUrl;return e.toString()!==i?.toString()&&!o?.extras.skipLocationChange}static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:n.\u0275fac})}return n})();function NI(n){return n!==vs}function IP(n){for(let t of n.newlyCreatedRoutes??[])t._localInjector?.destroy(),t._localInjector=void 0;CO(n.targetRouterState)}function CO(n){if(!n)return;let t=e=>{e.value.pending?.set(!1),e.children.forEach(t)};t(n._root)}var MO=new $("");var bO=(()=>{class n{static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:()=>v(LI)})}return n})(),nu=class{shouldDetach(t){return!1}store(t,e){}shouldAttach(t){return!1}retrieve(t){return null}shouldReuseRoute(t,e){return t.routeConfig===e.routeConfig}shouldDestroyInjector(t){return!0}},LI=(()=>{class n extends nu{static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:n.\u0275fac})}return n})(),au=(()=>{class n{urlSerializer=v(ea);options=v(oa,{optional:!0})||{};canceledNavigationResolution=this.options.canceledNavigationResolution||"replace";location=v(Xo);urlHandlingStrategy=v(ru);urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred";currentUrlTree=new Lt;getCurrentUrlTree(){return this.currentUrlTree}rawUrlTree=this.currentUrlTree;getRawUrlTree(){return this.rawUrlTree}createBrowserPath({finalUrl:e,initialUrl:o,targetBrowserUrl:i}){let r=e!==void 0?this.urlHandlingStrategy.merge(e,o):o,a=i??r;return a instanceof Lt?this.urlSerializer.serialize(a):a}routerUrlState(e){return e?.targetBrowserUrl===void 0||e?.finalUrl===void 0?{}:{\u0275routerUrl:this.urlSerializer.serialize(e.finalUrl)}}commitTransition({targetRouterState:e,finalUrl:o,initialUrl:i}){o&&e?(this.currentUrlTree=o,this.rawUrlTree=this.urlHandlingStrategy.merge(o,i),this.routerState=e):this.rawUrlTree=i}routerState=KP(null,v(De));getRouterState(){return this.routerState}_stateMemento=this.createStateMemento();get stateMemento(){return this._stateMemento}updateStateMemento(){this._stateMemento=this.createStateMemento()}createStateMemento(){return{rawUrlTree:this.rawUrlTree,currentUrlTree:this.currentUrlTree,routerState:this.routerState}}restoredState(){return this.location.getState()}static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:()=>v(VI)})}return n})(),VI=(()=>{class n extends au{currentPageId=0;lastSuccessfulId=-1;get browserPageId(){return this.canceledNavigationResolution!=="computed"?this.currentPageId:this.restoredState()?.\u0275routerPageId??this.currentPageId}registerNonRouterCurrentEntryChangeListener(e){return this.location.subscribe(o=>{o.type==="popstate"&&setTimeout(()=>{e(o.url,o.state,"popstate",{replaceUrl:!0})})})}handleRouterEvent(e,o){e instanceof Ji?this.updateStateMemento():e instanceof wo?this.commitTransition(o):e instanceof Ss?this.urlUpdateStrategy==="eager"&&(o.extras.skipLocationChange||this.setBrowserUrl(this.createBrowserPath(o),o)):e instanceof Kr?(this.commitTransition(o),this.urlUpdateStrategy==="deferred"&&!o.extras.skipLocationChange&&this.setBrowserUrl(this.createBrowserPath(o),o)):e instanceof bn&&!YP(e)?this.restoreHistory(o):e instanceof er?this.restoreHistory(o,!0):e instanceof jn&&(this.lastSuccessfulId=e.id,this.currentPageId=this.browserPageId)}setBrowserUrl(e,o){let{extras:i,id:r}=o,{replaceUrl:a,state:s}=i;if(this.location.isCurrentPathEqualTo(e)||a){let c=this.browserPageId,u=x(x({},s),this.generateNgRouterState(r,c,o));this.location.replaceState(e,"",u)}else{let c=x(x({},s),this.generateNgRouterState(r,this.browserPageId+1,o));this.location.go(e,"",c)}}restoreHistory(e,o=!1){if(this.canceledNavigationResolution==="computed"){let i=this.browserPageId,r=this.currentPageId-i;r!==0?this.location.historyGo(r):this.getCurrentUrlTree()===e.finalUrl&&r===0&&(this.resetInternalState(e),this.resetUrlToCurrentUrlTree())}else this.canceledNavigationResolution==="replace"&&(o&&this.resetInternalState(e),this.resetUrlToCurrentUrlTree())}resetInternalState({finalUrl:e}){this.routerState=this.stateMemento.routerState,this.currentUrlTree=this.stateMemento.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,e??this.rawUrlTree)}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.getRawUrlTree()),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}generateNgRouterState(e,o,i){return this.canceledNavigationResolution==="computed"?x({navigationId:e,\u0275routerPageId:o},this.routerUrlState(i)):x({navigationId:e},this.routerUrlState(i))}static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:n.\u0275fac})}return n})();function Hm(n,t){n.events.pipe(vt(e=>e instanceof jn||e instanceof bn||e instanceof er||e instanceof wo),Ee(e=>e instanceof jn||e instanceof wo?0:(e instanceof bn?e.code===kt.Redirect||e.code===kt.SupersededByNewNavigation:!1)?2:1),vt(e=>e!==2),uo(1)).subscribe(()=>{t()})}var ko=(()=>{class n{get currentUrlTree(){return this.stateManager.getCurrentUrlTree()}get rawUrlTree(){return this.stateManager.getRawUrlTree()}disposed=!1;nonRouterCurrentEntryChangeSubscription;console=v(Nf);stateManager=v(au);options=v(oa,{optional:!0})||{};pendingTasks=v(Kn);urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred";navigationTransitions=v(hO);urlSerializer=v(ea);location=v(Xo);urlHandlingStrategy=v(ru);injector=v(De);_events=new fe;get events(){return this._events}get routerState(){return this.stateManager.getRouterState()}navigated=!1;routeReuseStrategy=v(bO);injectorCleanup=v(MO,{optional:!0});onSameUrlNavigation=this.options.onSameUrlNavigation||"ignore";config=v(Ns,{optional:!0})?.flat()??[];componentInputBindingEnabled=!!v(ou,{optional:!0});currentNavigation=this.navigationTransitions.currentNavigation.asReadonly();constructor(){this.resetConfig(this.config),this.navigationTransitions.setupNavigations(this).subscribe({error:e=>{}}),this.subscribeToNavigationEvents()}eventsSubscription=new Oe;subscribeToNavigationEvents(){let e=this.navigationTransitions.events.subscribe(o=>{try{let i=this.navigationTransitions.currentTransition,r=ie(this.navigationTransitions.currentNavigation);if(i!==null&&r!==null){if(this.stateManager.handleRouterEvent(o,r),o instanceof bn&&o.code!==kt.Redirect&&o.code!==kt.SupersededByNewNavigation)this.navigated=!0;else if(o instanceof jn)this.navigated=!0,this.injectorCleanup?.(this.routeReuseStrategy,this.routerState,this.config);else if(o instanceof Zr){let a=o.navigationBehaviorOptions,s=this.urlHandlingStrategy.merge(o.url,i.currentRawUrl),c=x({scroll:i.extras.scroll,browserUrl:i.extras.browserUrl,info:i.extras.info,skipLocationChange:i.extras.skipLocationChange,replaceUrl:i.extras.replaceUrl||this.urlUpdateStrategy==="eager"||NI(i.source)},a);this.scheduleNavigation(s,vs,null,c,{resolve:i.resolve,reject:i.reject,promise:i.promise})}}VD(o)&&this._events.next(o)}catch(i){this.navigationTransitions.transitionAbortWithErrorSubject.next(i)}});this.eventsSubscription.add(e)}resetRootComponentType(e){this.routerState.root.component=e,this.navigationTransitions.rootComponentType=e}initialNavigation(){this.setUpLocationChangeListener(),this.navigationTransitions.hasRequestedNavigation||this.navigateToSyncWithBrowser(this.location.path(!0),vs,this.stateManager.restoredState(),{replaceUrl:!0})}setUpLocationChangeListener(){this.nonRouterCurrentEntryChangeSubscription??=this.stateManager.registerNonRouterCurrentEntryChangeListener((e,o,i,r)=>{this.navigateToSyncWithBrowser(e,i,o,r)})}navigateToSyncWithBrowser(e,o,i,r){let a=i?.navigationId?i:null,s=i?.\u0275routerUrl??e;if(i?.\u0275routerUrl&&(r=F(x({},r),{browserUrl:e})),i){let u=x({},i);delete u.navigationId,delete u.\u0275routerPageId,delete u.\u0275routerUrl,Object.keys(u).length!==0&&(r.state=u)}let c=this.parseUrl(s);this.scheduleNavigation(c,o,a,r).catch(u=>{this.disposed||this.injector.get(tn)(u)})}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return ie(this.navigationTransitions.currentNavigation)}get lastSuccessfulNavigation(){return this.navigationTransitions.lastSuccessfulNavigation}resetConfig(e){this.config=e.map(zm),this.navigated=!1}ngOnDestroy(){this.dispose()}dispose(){this._events.unsubscribe(),this.navigationTransitions.complete(),this.nonRouterCurrentEntryChangeSubscription?.unsubscribe(),this.nonRouterCurrentEntryChangeSubscription=void 0,this.disposed=!0,this.eventsSubscription.unsubscribe()}createUrlTree(e,o={}){let{relativeTo:i,queryParams:r,fragment:a,queryParamsHandling:s,preserveFragment:c}=o,u=c?this.currentUrlTree.fragment:a,f=null;switch(s??this.options.defaultQueryParamsHandling){case"merge":f=x(x({},this.currentUrlTree.queryParams),r);break;case"preserve":f=this.currentUrlTree.queryParams;break;default:f=r||null}f!==null&&(f=this.removeEmptyProps(f));let _;try{let h=i?i.snapshot:this.routerState.snapshot.root;_=UP(h)}catch(h){(typeof e[0]!="string"||e[0][0]!=="/")&&(e=[]),_=this.currentUrlTree.root}return WP(_,e,f,u??null,this.urlSerializer)}navigateByUrl(e,o={skipLocationChange:!1}){let i=ti(e)?e:this.parseUrl(e),r=this.urlHandlingStrategy.merge(i,this.rawUrlTree);return this.scheduleNavigation(r,vs,null,o)}navigate(e,o={skipLocationChange:!1}){return BI(e),this.navigateByUrl(this.createUrlTree(e,o),o)}serializeUrl(e){return this.urlSerializer.serialize(e)}parseUrl(e){try{return this.urlSerializer.parse(e)}catch(o){return this.console.warn(xn(4018,!1)),this.urlSerializer.parse("/")}}isActive(e,o){let i;if(o===!0?i=x({},Nm):o===!1?i=x({},Yr):i=x(x({},Yr),o),ti(e))return Om(this.currentUrlTree,e,i);let r=this.parseUrl(e);return Om(this.currentUrlTree,r,i)}removeEmptyProps(e){return Object.entries(e).reduce((o,[i,r])=>(r!=null&&(o[i]=r),o),{})}scheduleNavigation(e,o,i,r,a){if(this.disposed)return Promise.resolve(!1);let s,c,u;a?(s=a.resolve,c=a.reject,u=a.promise):u=new Promise((_,h)=>{s=_,c=h});let f=this.pendingTasks.add();return Hm(this,()=>{queueMicrotask(()=>this.pendingTasks.remove(f))}),this.navigationTransitions.handleNavigationRequest({source:o,restoredState:i,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,rawUrl:e,extras:r,resolve:s,reject:c,promise:u,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),u.catch(Promise.reject.bind(Promise))}static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:n.\u0275fac})}return n})();function BI(n){for(let t=0;t{class n{router=v(ko);stateManager=v(au);fragment=w("");queryParams=w({});path=w("");serializer=v(ea);constructor(){this.updateState(),this.router.events?.subscribe(e=>{e instanceof jn&&this.updateState()})}updateState(){let{fragment:e,root:o,queryParams:i}=this.stateManager.getCurrentUrlTree();this.fragment.set(e),this.queryParams.set(i),this.path.set(this.serializer.serialize(new Lt(o)))}static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:n.\u0275fac})}return n})(),ia=(()=>{class n{router;route;tabIndexAttribute;renderer;el;locationStrategy;hrefAttributeValue=v(new dd("href"),{optional:!0});reactiveHref=Wf(()=>this.isAnchorElement?this.computeHref(this._urlTree()):this.hrefAttributeValue);get href(){return ie(this.reactiveHref)}set href(e){this.reactiveHref.set(e)}set target(e){this._target.set(e)}get target(){return ie(this._target)}_target=w(void 0);set queryParams(e){this._queryParams.set(e)}get queryParams(){return ie(this._queryParams)}_queryParams=w(void 0,{equal:()=>!1});set fragment(e){this._fragment.set(e)}get fragment(){return ie(this._fragment)}_fragment=w(void 0);set queryParamsHandling(e){this._queryParamsHandling.set(e)}get queryParamsHandling(){return ie(this._queryParamsHandling)}_queryParamsHandling=w(void 0);set state(e){this._state.set(e)}get state(){return ie(this._state)}_state=w(void 0,{equal:()=>!1});set info(e){this._info.set(e)}get info(){return ie(this._info)}_info=w(void 0,{equal:()=>!1});set relativeTo(e){this._relativeTo.set(e)}get relativeTo(){return ie(this._relativeTo)}_relativeTo=w(void 0);set preserveFragment(e){this._preserveFragment.set(e)}get preserveFragment(){return ie(this._preserveFragment)}_preserveFragment=w(!1);set skipLocationChange(e){this._skipLocationChange.set(e)}get skipLocationChange(){return ie(this._skipLocationChange)}_skipLocationChange=w(!1);set replaceUrl(e){this._replaceUrl.set(e)}get replaceUrl(){return ie(this._replaceUrl)}_replaceUrl=w(!1);browserUrl=gd(void 0);isAnchorElement;onChanges=new fe;applicationErrorHandler=v(tn);options=v(oa,{optional:!0});reactiveRouterState=v(zI);constructor(e,o,i,r,a,s){this.router=e,this.route=o,this.tabIndexAttribute=i,this.renderer=r,this.el=a,this.locationStrategy=s;let c=a.nativeElement.tagName?.toLowerCase();this.isAnchorElement=c==="a"||c==="area"||!!(typeof customElements=="object"&&customElements.get(c)?.observedAttributes?.includes?.("href"))}setTabIndexIfNotOnNativeEl(e){this.tabIndexAttribute!=null||this.isAnchorElement||this.applyAttributeValue("tabindex",e)}ngOnChanges(e){this.onChanges.next(this)}routerLinkInput=w(null);set routerLink(e){e==null?(this.routerLinkInput.set(null),this.setTabIndexIfNotOnNativeEl(null)):(ti(e)?this.routerLinkInput.set(e):this.routerLinkInput.set(Array.isArray(e)?e:[e]),this.setTabIndexIfNotOnNativeEl("0"))}onClick(e,o,i,r,a){let s=this._urlTree();if(s===null||this.isAnchorElement&&(e!==0||o||i||r||a||typeof this.target=="string"&&this.target!="_self"))return!0;let c=this.browserUrl(),u=x({skipLocationChange:this.skipLocationChange,replaceUrl:this.replaceUrl,state:this.state,info:this.info},c!==void 0&&{browserUrl:c});return this.router.navigateByUrl(s,u)?.catch(f=>{this.applicationErrorHandler(f)}),!this.isAnchorElement}ngOnDestroy(){}applyAttributeValue(e,o){let i=this.renderer,r=this.el.nativeElement;o!==null?i.setAttribute(r,e,o):i.removeAttribute(r,e)}_urlTree=A(()=>{this.reactiveRouterState.path(),this._preserveFragment()&&this.reactiveRouterState.fragment();let e=i=>i==="preserve"||i==="merge";(e(this._queryParamsHandling())||e(this.options?.defaultQueryParamsHandling))&&this.reactiveRouterState.queryParams();let o=this.routerLinkInput();return o===null||!this.router.createUrlTree?null:ti(o)?o:this.router.createUrlTree(o,{relativeTo:this._relativeTo()!==void 0?this._relativeTo():this.route,queryParams:this._queryParams(),fragment:this._fragment(),queryParamsHandling:this._queryParamsHandling(),preserveFragment:this._preserveFragment()})},{equal:(e,o)=>this.computeHref(e)===this.computeHref(o)});get urlTree(){return ie(this._urlTree)}computeHref(e){return e!==null&&this.locationStrategy?this.locationStrategy?.prepareExternalUrl(this.router.serializeUrl(e))??"":null}static \u0275fac=function(o){return new(o||n)(re(ko),re(So),ts("tabindex"),re(dt),re(Be),re(zr))};static \u0275dir=Pe({type:n,selectors:[["","routerLink",""]],hostVars:2,hostBindings:function(o,i){o&1&&I("click",function(a){return i.onClick(a.button,a.ctrlKey,a.shiftKey,a.altKey,a.metaKey)}),o&2&&ft("href",i.reactiveHref(),gf)("target",i._target())},inputs:{target:"target",queryParams:"queryParams",fragment:"fragment",queryParamsHandling:"queryParamsHandling",state:"state",info:"info",relativeTo:"relativeTo",preserveFragment:[2,"preserveFragment","preserveFragment",Pt],skipLocationChange:[2,"skipLocationChange","skipLocationChange",Pt],replaceUrl:[2,"replaceUrl","replaceUrl",Pt],browserUrl:[1,"browserUrl"],routerLink:"routerLink"},features:[nn]})}return n})(),Um=(()=>{class n{router;element;renderer;cdr;links;classes=[];routerEventsSubscription;linkInputChangesSubscription;_isActive=!1;get isActive(){return this._isActive}routerLinkActiveOptions={exact:!1};ariaCurrentWhenActive;isActiveChange=new ve;link=v(ia,{optional:!0});constructor(e,o,i,r){this.router=e,this.element=o,this.renderer=i,this.cdr=r,this.routerEventsSubscription=e.events.subscribe(a=>{a instanceof jn&&this.update()})}ngAfterContentInit(){se(this.links.changes,se(null)).pipe(mr()).subscribe(e=>{this.update(),this.subscribeToEachLinkOnChanges()})}subscribeToEachLinkOnChanges(){this.linkInputChangesSubscription?.unsubscribe();let e=[...this.links.toArray(),this.link].filter(o=>!!o).map(o=>o.onChanges);this.linkInputChangesSubscription=We(e).pipe(mr()).subscribe(o=>{this._isActive!==this.isLinkActive(this.router)(o)&&this.update()})}set routerLinkActive(e){if(e==null){this.classes=[];return}let o=Array.isArray(e)?e:e.split(" ");this.classes=o.filter(i=>!!i)}ngOnChanges(e){this.update()}ngOnDestroy(){this.routerEventsSubscription.unsubscribe(),this.linkInputChangesSubscription?.unsubscribe()}update(){!this.links||!this.router.navigated||this.routerLinkActiveOptions===null&&!this._isActive||queueMicrotask(()=>{let e=this.hasActiveLinks();this.classes.forEach(o=>{e?this.renderer.addClass(this.element.nativeElement,o):this.renderer.removeClass(this.element.nativeElement,o)}),e&&this.ariaCurrentWhenActive!==void 0?this.renderer.setAttribute(this.element.nativeElement,"aria-current",this.ariaCurrentWhenActive.toString()):this.renderer.removeAttribute(this.element.nativeElement,"aria-current"),this._isActive!==e&&(this._isActive=e,this.cdr.markForCheck(),this.isActiveChange.emit(e))})}isLinkActive(e){let o=this.routerLinkActiveOptions;if(o===null)return()=>!1;let i;return o===void 0?i=x({},Yr):$I(o)?i=o:o.exact??!1?i=x({},Nm):i=x({},Yr),r=>{let a=r.urlTree;return a?ie(Lm(a,e,i)):!1}}hasActiveLinks(){let e=this.isLinkActive(this.router);return this.link&&e(this.link)||this.links.some(e)}static \u0275fac=function(o){return new(o||n)(re(ko),re(Be),re(dt),re(Ln))};static \u0275dir=Pe({type:n,selectors:[["","routerLinkActive",""]],contentQueries:function(o,i,r){if(o&1&&ad(r,ia,5),o&2){let a;eo(a=to())&&(i.links=a)}},inputs:{routerLinkActiveOptions:"routerLinkActiveOptions",ariaCurrentWhenActive:"ariaCurrentWhenActive",routerLinkActive:"routerLinkActive"},outputs:{isActiveChange:"isActiveChange"},exportAs:["routerLinkActive"],features:[nn]})}return n})();function $I(n){let t=n;return!!(t.paths||t.matrixParams||t.queryParams||t.fragment)}var HI=new $("");function Wm(n,...t){return Bo([{provide:Ns,multi:!0,useValue:n},{provide:So,useFactory:UI},{provide:rd,multi:!0,useFactory:WI},t.map(e=>e.\u0275providers)])}function UI(){return v(ko).routerState.root}function WI(){let n=v(Ne);return t=>{let e=n.get(Wt);if(t!==e.components[0])return;let o=n.get(ko),i=n.get(GI);n.get(qI)===1&&o.initialNavigation(),n.get(YI,null,{optional:!0})?.setUpPreloading(),n.get(HI,null,{optional:!0})?.init(),o.resetRootComponentType(e.componentTypes[0]),i.closed||(i.next(),i.complete(),i.unsubscribe())}}var GI=new $("",{factory:()=>new fe}),qI=new $("",{factory:()=>1});var YI=new $("");var DO=(()=>{class n{_renderer;_elementRef;onChange=e=>{};onTouched=()=>{};constructor(e,o){this._renderer=e,this._elementRef=o}setProperty(e,o){this._renderer.setProperty(this._elementRef.nativeElement,e,o)}registerOnTouched(e){this.onTouched=e}registerOnChange(e){this.onChange=e}setDisabledState(e){this.setProperty("disabled",e)}static \u0275fac=function(o){return new(o||n)(re(dt),re(Be))};static \u0275dir=Pe({type:n})}return n})(),$s=(()=>{class n extends DO{static \u0275fac=(()=>{let e;return function(i){return(e||(e=on(n)))(i||n)}})();static \u0275dir=Pe({type:n,features:[pt]})}return n})(),da=new $(""),KI={provide:da,useExisting:yt(()=>Hs),multi:!0},Hs=(()=>{class n extends $s{writeValue(e){this.setProperty("checked",e)}static \u0275fac=(()=>{let e;return function(i){return(e||(e=on(n)))(i||n)}})();static \u0275dir=Pe({type:n,selectors:[["input","type","checkbox","formControlName","",3,"ngNoCva",""],["input","type","checkbox","formControl","",3,"ngNoCva",""],["input","type","checkbox","ngModel","",3,"ngNoCva",""]],hostBindings:function(o,i){o&1&&I("change",function(a){return i.onChange(a.target.checked)})("blur",function(){return i.onTouched()})},standalone:!1,features:[Gt([KI]),pt]})}return n})(),ZI={provide:da,useExisting:yt(()=>oi),multi:!0};function XI(){let n=hn()?hn().getUserAgent():"";return/android (\d+)/.test(n.toLowerCase())}var QI=new $(""),oi=(()=>{class n extends DO{_compositionMode;_composing=!1;constructor(e,o,i){super(e,o),this._compositionMode=i,this._compositionMode==null&&(this._compositionMode=!XI())}writeValue(e){let o=e??"";this.setProperty("value",o)}_handleInput(e){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(e)}_compositionStart(){this._composing=!0}_compositionEnd(e){this._composing=!1,this._compositionMode&&this.onChange(e)}static \u0275fac=function(o){return new(o||n)(re(dt),re(Be),re(QI,8))};static \u0275dir=Pe({type:n,selectors:[["input","formControlName","",3,"type","checkbox",3,"ngNoCva",""],["textarea","formControlName","",3,"ngNoCva",""],["input","formControl","",3,"type","checkbox",3,"ngNoCva",""],["textarea","formControl","",3,"ngNoCva",""],["input","ngModel","",3,"type","checkbox",3,"ngNoCva",""],["textarea","ngModel","",3,"ngNoCva",""],["","ngDefaultControl",""]],hostBindings:function(o,i){o&1&&I("input",function(a){return i._handleInput(a.target.value)})("blur",function(){return i.onTouched()})("compositionstart",function(){return i._compositionStart()})("compositionend",function(a){return i._compositionEnd(a.target.value)})},standalone:!1,features:[Gt([ZI]),pt]})}return n})();function Zm(n){return n==null||Xm(n)===0}function Xm(n){return n==null?null:Array.isArray(n)||typeof n=="string"?n.length:n instanceof Set?n.size:null}var Us=new $(""),IO=new $(""),JI=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,Gm=class{static min(t){return TO(t)}static max(t){return AO(t)}static required(t){return RO(t)}static requiredTrue(t){return eT(t)}static email(t){return tT(t)}static minLength(t){return nT(t)}static maxLength(t){return oT(t)}static pattern(t){return iT(t)}static nullValidator(t){return cu()}static compose(t){return jO(t)}static composeAsync(t){return zO(t)}};function TO(n){return t=>{if(t.value==null||n==null)return null;let e=parseFloat(t.value);return!isNaN(e)&&e{if(t.value==null||n==null)return null;let e=parseFloat(t.value);return!isNaN(e)&&e>n?{max:{max:n,actual:t.value}}:null}}function RO(n){return Zm(n.value)?{required:!0}:null}function eT(n){return n.value===!0?null:{required:!0}}function tT(n){return Zm(n.value)||JI.test(n.value)?null:{email:!0}}function nT(n){return t=>{let e=t.value?.length??Xm(t.value);return e===null||e===0?null:e{let e=t.value?.length??Xm(t.value);return e!==null&&e>n?{maxlength:{requiredLength:n,actualLength:e}}:null}}function iT(n){if(!n)return cu;let t,e;return typeof n=="string"?(e="",n.charAt(0)!=="^"&&(e+="^"),e+=n,n.charAt(n.length-1)!=="$"&&(e+="$"),t=new RegExp(e)):(e=n.toString(),t=n),o=>{if(Zm(o.value))return null;let i=o.value;return t.test(i)?null:{pattern:{requiredPattern:e,actualValue:i}}}}function cu(n){return null}function FO(n){return n!=null}function NO(n){return qo(n)?We(n):n}function LO(n){let t={};return n.forEach(e=>{t=e!=null?x(x({},t),e):t}),Object.keys(t).length===0?null:t}function VO(n,t){return t.map(e=>e(n))}function rT(n){return!n.validate}function BO(n){return n.map(t=>rT(t)?t:e=>t.validate(e))}function jO(n){if(!n)return null;let t=n.filter(FO);return t.length==0?null:function(e){return LO(VO(e,t))}}function Qm(n){return n!=null?jO(BO(n)):null}function zO(n){if(!n)return null;let t=n.filter(FO);return t.length==0?null:function(e){let o=VO(e,t).map(NO);return mg(o).pipe(Ee(LO))}}function Jm(n){return n!=null?zO(BO(n)):null}function PO(n,t){return n===null?[t]:Array.isArray(n)?[...n,t]:[n,t]}function aT(n){return n._rawValidators}function sT(n){return n._rawAsyncValidators}function qm(n){return n?Array.isArray(n)?n:[n]:[]}function lu(n,t){return Array.isArray(n)?n.includes(t):n===t}function OO(n,t){let e=qm(t);return qm(n).forEach(i=>{lu(e,i)||e.push(i)}),e}function vO(n,t){return qm(t).filter(e=>!lu(n,e))}var du=class{get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}_composedValidatorFn;_composedAsyncValidatorFn;_rawValidators=[];_rawAsyncValidators=[];_setValidators(t){this._rawValidators=t||[],this._composedValidatorFn=Qm(this._rawValidators)}_setAsyncValidators(t){this._rawAsyncValidators=t||[],this._composedAsyncValidatorFn=Jm(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_onDestroyCallbacks=[];_registerOnDestroy(t){this._onDestroyCallbacks.push(t)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(t=>t()),this._onDestroyCallbacks=[]}reset(t=void 0){this.control?.reset(t)}hasError(t,e){return this.control?this.control.hasError(t,e):!1}getError(t,e){return this.control?this.control.getError(t,e):null}},sa=class extends du{name;get formDirective(){return null}get path(){return null}};var Ls="VALID",su="INVALID",ra="PENDING",Vs="DISABLED",ni=class{},uu=class extends ni{value;source;constructor(t,e){super(),this.value=t,this.source=e}},js=class extends ni{pristine;source;constructor(t,e){super(),this.pristine=t,this.source=e}},zs=class extends ni{touched;source;constructor(t,e){super(),this.touched=t,this.source=e}},aa=class extends ni{status;source;constructor(t,e){super(),this.status=t,this.source=e}},Ym=class extends ni{source;constructor(t){super(),this.source=t}},ca=class extends ni{source;constructor(t){super(),this.source=t}};function $O(n){return(mu(n)?n.validators:n)||null}function cT(n){return Array.isArray(n)?Qm(n):n||null}function HO(n,t){return(mu(t)?t.asyncValidators:n)||null}function lT(n){return Array.isArray(n)?Jm(n):n||null}function mu(n){return n!=null&&!Array.isArray(n)&&typeof n=="object"}function dT(n,t,e){let o=n.controls;if(!(t?Object.keys(o):o).length)throw new j(1e3,"");if(!UO(o,e))throw new j(1001,"")}function uT(n,t,e){n._forEachChild((o,i)=>{if(e[i]===void 0)throw new j(-1002,"")})}var gu=class{_pendingDirty=!1;_hasOwnPendingAsyncValidator=null;_pendingTouched=!1;_onCollectionChange=()=>{};_updateOn;_hasRequired=w(!1);_parent=null;_asyncValidationSubscription;_composedValidatorFn;_composedAsyncValidatorFn;_rawValidators;_rawAsyncValidators;value;constructor(t,e){this._assignValidators(t),this._assignAsyncValidators(e)}get validator(){return this._composedValidatorFn}set validator(t){this._rawValidators=this._composedValidatorFn=t,this._updateHasRequiredValidator()}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(t){this._rawAsyncValidators=this._composedAsyncValidatorFn=t}get parent(){return this._parent}get status(){return ie(this.statusReactive)}set status(t){ie(()=>this.statusReactive.set(t))}_status=A(()=>this.statusReactive());statusReactive=w(void 0);get valid(){return this.status===Ls}get invalid(){return this.status===su}get pending(){return this.status===ra}get disabled(){return this.status===Vs}get enabled(){return this.status!==Vs}errors;get pristine(){return ie(this.pristineReactive)}set pristine(t){ie(()=>this.pristineReactive.set(t))}_pristine=A(()=>this.pristineReactive());pristineReactive=w(!0);get dirty(){return!this.pristine}get touched(){return ie(this.touchedReactive)}set touched(t){ie(()=>this.touchedReactive.set(t))}_touched=A(()=>this.touchedReactive());touchedReactive=w(!1);get untouched(){return!this.touched}_events=new fe;events=this._events.asObservable();valueChanges;statusChanges;get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(t){this._assignValidators(t)}setAsyncValidators(t){this._assignAsyncValidators(t)}addValidators(t){this.setValidators(OO(t,this._rawValidators))}addAsyncValidators(t){this.setAsyncValidators(OO(t,this._rawAsyncValidators))}removeValidators(t){this.setValidators(vO(t,this._rawValidators))}removeAsyncValidators(t){this.setAsyncValidators(vO(t,this._rawAsyncValidators))}hasValidator(t){return lu(this._rawValidators,t)}hasAsyncValidator(t){return lu(this._rawAsyncValidators,t)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(t={}){let e=this.touched===!1;this.touched=!0;let o=t.sourceControl??this;t.onlySelf||this._parent?.markAsTouched(F(x({},t),{sourceControl:o})),e&&t.emitEvent!==!1&&this._events.next(new zs(!0,o))}markAllAsDirty(t={}){this.markAsDirty({onlySelf:!0,emitEvent:t.emitEvent,sourceControl:this}),this._forEachChild(e=>e.markAllAsDirty(t))}markAllAsTouched(t={}){this.markAsTouched({onlySelf:!0,emitEvent:t.emitEvent,sourceControl:this}),this._forEachChild(e=>e.markAllAsTouched(t))}markAsUntouched(t={}){let e=this.touched===!0;this.touched=!1,this._pendingTouched=!1;let o=t.sourceControl??this;this._forEachChild(i=>{i.markAsUntouched({onlySelf:!0,emitEvent:t.emitEvent,sourceControl:o})}),t.onlySelf||this._parent?._updateTouched(t,o),e&&t.emitEvent!==!1&&this._events.next(new zs(!1,o))}markAsDirty(t={}){let e=this.pristine===!0;this.pristine=!1;let o=t.sourceControl??this;t.onlySelf||this._parent?.markAsDirty(F(x({},t),{sourceControl:o})),e&&t.emitEvent!==!1&&this._events.next(new js(!1,o))}markAsPristine(t={}){let e=this.pristine===!1;this.pristine=!0,this._pendingDirty=!1;let o=t.sourceControl??this;this._forEachChild(i=>{i.markAsPristine({onlySelf:!0,emitEvent:t.emitEvent})}),t.onlySelf||this._parent?._updatePristine(t,o),e&&t.emitEvent!==!1&&this._events.next(new js(!0,o))}markAsPending(t={}){this.status=ra;let e=t.sourceControl??this;t.emitEvent!==!1&&(this._events.next(new aa(this.status,e)),this.statusChanges.emit(this.status)),t.onlySelf||this._parent?.markAsPending(F(x({},t),{sourceControl:e}))}disable(t={}){let e=this._parentMarkedDirty(t.onlySelf);this.status=Vs,this.errors=null,this._forEachChild(i=>{i.disable(F(x({},t),{onlySelf:!0}))}),this._updateValue();let o=t.sourceControl??this;t.emitEvent!==!1&&(this._events.next(new uu(this.value,o)),this._events.next(new aa(this.status,o)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(F(x({},t),{skipPristineCheck:e}),this),this._onDisabledChange.forEach(i=>i(!0))}enable(t={}){let e=this._parentMarkedDirty(t.onlySelf);this.status=Ls,this._forEachChild(o=>{o.enable(F(x({},t),{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent}),this._updateAncestors(F(x({},t),{skipPristineCheck:e}),this),this._onDisabledChange.forEach(o=>o(!1))}_updateAncestors(t,e){t.onlySelf||(this._parent?.updateValueAndValidity(t),t.skipPristineCheck||this._parent?._updatePristine({},e),this._parent?._updateTouched({},e))}setParent(t){this._parent=t}getRawValue(){return this.value}updateValueAndValidity(t={}){if(this._setInitialStatus(),this._updateValue(),this.enabled){let o=this._cancelExistingSubscription();this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===Ls||this.status===ra)&&this._runAsyncValidator(o,t.emitEvent)}let e=t.sourceControl??this;t.emitEvent!==!1&&(this._events.next(new uu(this.value,e)),this._events.next(new aa(this.status,e)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),t.onlySelf||this._parent?.updateValueAndValidity(F(x({},t),{sourceControl:e}))}_updateTreeValidity(t={emitEvent:!0}){this._forEachChild(e=>e._updateTreeValidity(t)),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?Vs:Ls}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(t,e){if(this.asyncValidator){this.status=ra,this._hasOwnPendingAsyncValidator={emitEvent:e!==!1,shouldHaveEmitted:t!==!1};let o=NO(this.asyncValidator(this));this._asyncValidationSubscription=o.subscribe(i=>{this._hasOwnPendingAsyncValidator=null,this.setErrors(i,{emitEvent:e,shouldHaveEmitted:t})})}}_cancelExistingSubscription(){if(this._asyncValidationSubscription){this._asyncValidationSubscription.unsubscribe();let t=(this._hasOwnPendingAsyncValidator?.emitEvent||this._hasOwnPendingAsyncValidator?.shouldHaveEmitted)??!1;return this._hasOwnPendingAsyncValidator=null,t}return!1}setErrors(t,e={}){this.errors=t,this._updateControlsErrors(e.emitEvent!==!1,this,e.shouldHaveEmitted)}get(t){let e=t;return e==null||(Array.isArray(e)||(e=e.split(".")),e.length===0)?null:e.reduce((o,i)=>o&&o._find(i),this)}getError(t,e){let o=e?this.get(e):this;return o?.errors?o.errors[t]:null}hasError(t,e){return!!this.getError(t,e)}get root(){let t=this;for(;t._parent;)t=t._parent;return t}_updateControlsErrors(t,e,o){this.status=this._calculateStatus(),t&&this.statusChanges.emit(this.status),(t||o)&&this._events.next(new aa(this.status,e)),this._parent&&this._parent._updateControlsErrors(t,e,o)}_initObservables(){this.valueChanges=new ve,this.statusChanges=new ve}_calculateStatus(){return this._allControlsDisabled()?Vs:this.errors?su:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(ra)?ra:this._anyControlsHaveStatus(su)?su:Ls}_anyControlsHaveStatus(t){return this._anyControls(e=>e.status===t)}_anyControlsDirty(){return this._anyControls(t=>t.dirty)}_anyControlsTouched(){return this._anyControls(t=>t.touched)}_updatePristine(t,e){let o=!this._anyControlsDirty(),i=this.pristine!==o;this.pristine=o,t.onlySelf||this._parent?._updatePristine(t,e),i&&this._events.next(new js(this.pristine,e))}_updateTouched(t={},e){this.touched=this._anyControlsTouched(),this._events.next(new zs(this.touched,e)),t.onlySelf||this._parent?._updateTouched(t,e)}_onDisabledChange=[];_registerOnCollectionChange(t){this._onCollectionChange=t}_setUpdateStrategy(t){mu(t)&&t.updateOn!=null&&(this._updateOn=t.updateOn)}_parentMarkedDirty(t){return!t&&!!this._parent?.dirty&&!this._parent._anyControlsDirty()}_find(t){return null}_assignValidators(t){this._rawValidators=Array.isArray(t)?t.slice():t,this._composedValidatorFn=cT(this._rawValidators),this._updateHasRequiredValidator()}_assignAsyncValidators(t){this._rawAsyncValidators=Array.isArray(t)?t.slice():t,this._composedAsyncValidatorFn=lT(this._rawAsyncValidators)}_updateHasRequiredValidator(){ie(()=>this._hasRequired.set(this.hasValidator(Gm.required)))}};function UO(n,t){return Object.hasOwn(n,t)}function gT(n){return n.tagName==="INPUT"||n.tagName==="SELECT"||n.tagName==="TEXTAREA"}function pT(n,t,e,o){switch(e){case"name":n.setAttribute(t,e,o);break;case"disabled":case"readonly":case"required":o?n.setAttribute(t,e,""):n.removeAttribute(t,e);break;case"max":case"min":case"minLength":case"maxLength":o!==void 0?n.setAttribute(t,e,o.toString()):n.removeAttribute(t,e);break}}var Km=class{kind;context;control;message;constructor({kind:t,context:e,control:o}){this.kind=t,this.context=e,this.control=o}};function WO(n){return typeof n=="number"?n:parseFloat(n)}var e_=(()=>{class n{_validator=cu;_onChange;_enabled;ngOnChanges(e){if(this.inputName in e){let o=this.normalizeInput(e[this.inputName].currentValue);this._enabled=this.enabled(o),this._validator=this._enabled?this.createValidator(o):cu,this._onChange?.()}}validate(e){return this._validator(e)}registerOnValidatorChange(e){this._onChange=e}enabled(e){return e!=null}static \u0275fac=function(o){return new(o||n)};static \u0275dir=Pe({type:n,features:[nn]})}return n})(),fT={provide:Us,useExisting:yt(()=>t_),multi:!0},t_=(()=>{class n extends e_{max;inputName="max";normalizeInput=e=>WO(e);createValidator=e=>AO(e);static \u0275fac=(()=>{let e;return function(i){return(e||(e=on(n)))(i||n)}})();static \u0275dir=Pe({type:n,selectors:[["input","type","number","max","","formControlName",""],["input","type","number","max","","formControl",""],["input","type","number","max","","ngModel",""]],hostVars:1,hostBindings:function(o,i){o&2&&ft("max",i._enabled?i.max:null)},inputs:{max:"max"},standalone:!1,features:[Gt([fT]),pt]})}return n})(),mT={provide:Us,useExisting:yt(()=>n_),multi:!0},n_=(()=>{class n extends e_{min;inputName="min";normalizeInput=e=>WO(e);createValidator=e=>TO(e);static \u0275fac=(()=>{let e;return function(i){return(e||(e=on(n)))(i||n)}})();static \u0275dir=Pe({type:n,selectors:[["input","type","number","min","","formControlName",""],["input","type","number","min","","formControl",""],["input","type","number","min","","ngModel",""]],hostVars:1,hostBindings:function(o,i){o&2&&ft("min",i._enabled?i.min:null)},inputs:{min:"min"},standalone:!1,features:[Gt([mT]),pt]})}return n})(),_T={provide:Us,useExisting:yt(()=>_u),multi:!0};var _u=(()=>{class n extends e_{required;inputName="required";normalizeInput=Pt;createValidator=e=>RO;enabled(e){return e}static \u0275fac=(()=>{let e;return function(i){return(e||(e=on(n)))(i||n)}})();static \u0275dir=Pe({type:n,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(o,i){o&2&&ft("required",i._enabled?"":null)},inputs:{required:"required"},standalone:!1,features:[Gt([_T]),pt]})}return n})();var hT=new $(""),o_=new $("",{factory:()=>i_}),i_="always";function CT(n,t){return[...t.path,n]}function yO(n,t,e=i_){GO(n,t),t.valueAccessor.writeValue(n.value),(n.disabled||e==="always")&&t.valueAccessor.setDisabledState?.(n.disabled),bT(n,t),OT(n,t),PT(n,t),MT(n,t)}function xO(n,t){n.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(t)})}function MT(n,t){if(t.valueAccessor.setDisabledState){let e=o=>{t.valueAccessor.setDisabledState(o)};n.registerOnDisabledChange(e),t._registerOnDestroy(()=>{n._unregisterOnDisabledChange(e)})}}function GO(n,t){let e=aT(n);t.validator!==null?n.setValidators(PO(e,t.validator)):typeof e=="function"&&n.setValidators([e]);let o=sT(n);t.asyncValidator!==null?n.setAsyncValidators(PO(o,t.asyncValidator)):typeof o=="function"&&n.setAsyncValidators([o]);let i=()=>n.updateValueAndValidity();xO(t._rawValidators,i),xO(t._rawAsyncValidators,i)}function bT(n,t){t.valueAccessor.registerOnChange(e=>{n._pendingValue=e,n._pendingChange=!0,n._pendingDirty=!0,n.updateOn==="change"&&qO(n,t)})}function PT(n,t){t.valueAccessor.registerOnTouched(()=>{n._pendingTouched=!0,n.updateOn==="blur"&&n._pendingChange&&qO(n,t),n.updateOn!=="submit"&&n.markAsTouched()})}function qO(n,t){n._pendingDirty&&n.markAsDirty(),n.setValue(n._pendingValue,{emitModelToViewChange:!1}),t.viewToModelUpdate(n._pendingValue),n._pendingChange=!1}function OT(n,t){let e=(o,i)=>{t.valueAccessor.writeValue(o),i&&t.viewToModelUpdate(o)};n.registerOnChange(e),t._registerOnDestroy(()=>{n._unregisterOnChange(e)})}function vT(n,t){n==null,GO(n,t)}function yT(n,t){if(!Object.hasOwn(n,"model"))return!1;let e=n.model;return e.isFirstChange()?!0:!Object.is(t,e.currentValue)}function xT(n){return Object.getPrototypeOf(n.constructor)===$s}function wT(n,t){n._syncPendingControls(),t.forEach(e=>{let o=e.control;o.updateOn==="submit"&&o._pendingChange&&(e.viewToModelUpdate(o._pendingValue),o._pendingChange=!1)})}function ST(n,t){if(!t)return null;Array.isArray(t);let e,o,i;return t.forEach(r=>{r.constructor===oi?e=r:xT(r)?o=r:i=r}),i||o||e||null}var kT={provide:hT,useFactory:()=>{let n=v(la,{self:!0});return{setParseErrors:t=>{n.setParseErrorSource(t)},set onReset(t){n.onReset=t}}}},la=class extends du{_parent=null;name=null;valueAccessor=null;isCustomControlBased=!1;userOnReset;resetSubscription;set onReset(t){this.userOnReset=t,this.resetSubscription?.unsubscribe(),this.resetSubscription=void 0,this.control&&(this.resetSubscription=this.control.events.subscribe(e=>{e instanceof ca&&this.control&&this.userOnReset?.(this.control.value)}),this.subscription?.add(this.resetSubscription))}isNativeFormElement=!1;rawValueAccessors;_selectedValueAccessor=null;get selectedValueAccessor(){return this._selectedValueAccessor??=ST(this,this.rawValueAccessors)}parseErrorsValidator=null;renderer;injector;requiredValidatorViaDi;subscription;customControlBindings=null;constructor(t,e,o){super(),this.injector=t,this.renderer=e,this.rawValueAccessors=o,this.injector?.get(Te)?.onDestroy(()=>{this.removeParseErrorsValidator(this.control),this.subscription?.unsubscribe()})}setupCustomControl(){this.subscription?.unsubscribe();let t=this.injector?.get(Ln);if(!this.control||!t)return;let e=t.markForCheck.bind(t);this.subscription=new Oe,this.subscription.add(this.control.valueChanges.subscribe(e)),this.subscription.add(this.control.statusChanges.subscribe(e)),this.resetSubscription?.unsubscribe(),this.resetSubscription=void 0,this.userOnReset&&(this.resetSubscription=this.control.events.subscribe(o=>{o instanceof ca&&this.control&&this.userOnReset?.(this.control.value)}),this.subscription.add(this.resetSubscription)),this.parseErrorsValidator&&this.control.addValidators(this.parseErrorsValidator)}ngControlCreate(t){!t.nativeElement.hasAttribute?.("ngNoCva")&&(this.rawValueAccessors&&this.rawValueAccessors.length>0||this.valueAccessor!==null)||!t.customControl||(this.isCustomControlBased=!0,t.listenToCustomControlModel(i=>{this.control?.setValue(i,{emitModelToViewChange:!1}),this.control?.markAsDirty(),this.viewToModelUpdate(i)}),t.listenToCustomControlOutput("touch",()=>{this.control?.markAsTouched()}),this.customControlBindings={},this.isNativeFormElement=gT(t.nativeElement),this.requiredValidatorViaDi=this._rawValidators.find(i=>i instanceof _u))}ngControlUpdate(t,e){if(!this.isCustomControlBased)return;let o=this.control,i=this.customControlBindings;Object.is(i.value,o.value)||(i.value=o.value,t.setCustomControlModelInput(o.value)),this.bindControlProperty(t,i,"touched",o.touched),this.bindControlProperty(t,i,"dirty",o.dirty),this.bindControlProperty(t,i,"valid",o.valid),this.bindControlProperty(t,i,"invalid",o.invalid),this.bindControlProperty(t,i,"pending",o.pending),this.bindControlProperty(t,i,"disabled",o.disabled),this.shouldBindRequired&&this.bindControlProperty(t,i,"required",this.isRequired);let r=o.errors;if(i.errors!==r){i.errors=r;let a=this._convertErrors(r);t.setInputOnDirectives("errors",a)}}get isRequired(){return(this.requiredValidatorViaDi?._enabled||this.control?._hasRequired())??!1}get shouldBindRequired(){return!0}bindControlProperty(t,e,o,i){if(e[o]===i)return;e[o]=i;let r=t.setInputOnDirectives(o,i);this.isNativeFormElement&&!r&&(o==="disabled"||o==="required")&&this.renderer&&pT(this.renderer,t.nativeElement,o,i)}_convertErrors(t){if(t===null)return[];let e=this.control;return Object.entries(t).map(([o,i])=>new Km({context:i,kind:o,control:e}))}setParseErrorSource(t){if(t===void 0)return;let e=null,o=A(()=>{let i=t();return i.length===0?null:i.reduce((r,a)=>(r[a.kind]=a,r),{})});this.parseErrorsValidator=(()=>e).bind(this),Ze(()=>{e=o(),this.control?.updateValueAndValidity({emitEvent:!1})},{injector:this.injector})}removeParseErrorsValidator(t){this.parseErrorsValidator&&(t?.removeValidators(this.parseErrorsValidator),t?.updateValueAndValidity({emitEvent:!1}))}},pu=class{_cd;constructor(t){this._cd=t}get isTouched(){return this._cd?.control?._touched?.(),!!this._cd?.control?.touched}get isUntouched(){return!!this._cd?.control?.untouched}get isPristine(){return this._cd?.control?._pristine?.(),!!this._cd?.control?.pristine}get isDirty(){return!!this._cd?.control?.dirty}get isValid(){return this._cd?.control?._status?.(),!!this._cd?.control?.valid}get isInvalid(){return!!this._cd?.control?.invalid}get isPending(){return!!this._cd?.control?.pending}get isSubmitted(){return this._cd?._submitted?.(),!!this._cd?.submitted}};var ii=(()=>{class n extends pu{constructor(e){super(e)}static \u0275fac=function(o){return new(o||n)(re(la,2))};static \u0275dir=Pe({type:n,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(o,i){o&2&&E("ng-untouched",i.isUntouched)("ng-touched",i.isTouched)("ng-pristine",i.isPristine)("ng-dirty",i.isDirty)("ng-valid",i.isValid)("ng-invalid",i.isInvalid)("ng-pending",i.isPending)},standalone:!1,features:[pt]})}return n})(),YO=(()=>{class n extends pu{constructor(e){super(e)}static \u0275fac=function(o){return new(o||n)(re(sa,10))};static \u0275dir=Pe({type:n,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["","formArray",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(o,i){o&2&&E("ng-untouched",i.isUntouched)("ng-touched",i.isTouched)("ng-pristine",i.isPristine)("ng-dirty",i.isDirty)("ng-valid",i.isValid)("ng-invalid",i.isInvalid)("ng-pending",i.isPending)("ng-submitted",i.isSubmitted)},standalone:!1,features:[pt]})}return n})(),fu=class extends gu{constructor(t,e,o){super($O(e),HO(o,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}controls;registerControl(t,e){let o=this._find(t);return o||(this.controls[t]=e,e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange),e)}addControl(t,e,o={}){this.registerControl(t,e),this.updateValueAndValidity({emitEvent:o.emitEvent}),this._onCollectionChange()}removeControl(t,e={}){let o=this._find(t);o&&o._registerOnCollectionChange(()=>{}),delete this.controls[t],this.updateValueAndValidity({emitEvent:e.emitEvent}),this._onCollectionChange()}setControl(t,e,o={}){let i=this._find(t);i&&i._registerOnCollectionChange(()=>{}),delete this.controls[t],e&&this.registerControl(t,e),this.updateValueAndValidity({emitEvent:o.emitEvent}),this._onCollectionChange()}contains(t){return this._find(t)?.enabled===!0}setValue(t,e={}){ie(()=>{uT(this,!0,t),Object.keys(t).forEach(o=>{dT(this,!0,o),this.controls[o].setValue(t[o],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)})}patchValue(t,e={}){t!=null&&(Object.keys(t).forEach(o=>{let i=this._find(o);i&&i.patchValue(t[o],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e))}reset(t={},e={}){this._forEachChild((o,i)=>{o.reset(t?t[i]:null,F(x({},e),{onlySelf:!0}))}),this._updatePristine(e,this),this._updateTouched(e,this),this.updateValueAndValidity(e),e?.emitEvent!==!1&&this._events.next(new ca(this))}getRawValue(){return this._reduceChildren({},(t,e,o)=>(t[o]=e.getRawValue(),t))}_syncPendingControls(){let t=this._reduceChildren(!1,(e,o)=>o._syncPendingControls()?!0:e);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_forEachChild(t){Object.keys(this.controls).forEach(e=>{let o=this.controls[e];o&&t(o,e)})}_setUpControls(){this._forEachChild(t=>{t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(t){for(let[e,o]of Object.entries(this.controls))if(this.contains(e)&&t(o))return!0;return!1}_reduceValue(){let t={};return this._reduceChildren(t,(e,o,i)=>((o.enabled||this.disabled)&&(e[i]=o.value),e))}_reduceChildren(t,e){let o=t;return this._forEachChild((i,r)=>{o=e(o,i,r)}),o}_allControlsDisabled(){for(let t of Object.keys(this.controls))if(this.controls[t].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_find(t){return UO(this.controls,t)?this.controls[t]:null}};var ET={provide:sa,useExisting:yt(()=>r_)},Bs=Promise.resolve(),r_=(()=>{class n extends sa{callSetDisabledState;get submitted(){return ie(this.submittedReactive)}_submitted=A(()=>this.submittedReactive());submittedReactive=w(!1);_directives=new Set;form;ngSubmit=new ve;options;constructor(e,o,i){super(),this.callSetDisabledState=i,this.form=new fu({},Qm(e),Jm(o))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(e){Bs.then(()=>{let o=this._findContainer(e.path);e.control=o.registerControl(e.name,e.control),e._setupWithForm(this.callSetDisabledState),e.control.updateValueAndValidity({emitEvent:!1}),this._directives.add(e)})}getControl(e){return this.form.get(e.path)}removeControl(e){Bs.then(()=>{this._findContainer(e.path)?.removeControl(e.name),this._directives.delete(e)})}addFormGroup(e){Bs.then(()=>{let o=this._findContainer(e.path),i=new fu({});vT(i,e),o.registerControl(e.name,i),i.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(e){Bs.then(()=>{this._findContainer(e.path)?.removeControl?.(e.name)})}getFormGroup(e){return this.form.get(e.path)}updateModel(e,o){Bs.then(()=>{this.form.get(e.path).setValue(o)})}setValue(e){this.control.setValue(e)}onSubmit(e){return this.submittedReactive.set(!0),wT(this.form,this._directives),this.ngSubmit.emit(e),this.form._events.next(new Ym(this.control)),e?.target?.method==="dialog"}onReset(){this.resetForm()}resetForm(e=void 0){this.form.reset(e),this.submittedReactive.set(!1)}_setUpdateStrategy(){this.options&&this.options.updateOn!=null&&(this.form._updateOn=this.options.updateOn)}_findContainer(e){return e.pop(),e.length?this.form.get(e):this.form}static \u0275fac=function(o){return new(o||n)(re(Us,10),re(IO,10),re(o_,8))};static \u0275dir=Pe({type:n,selectors:[["form",3,"ngNoForm","",3,"formGroup","",3,"formArray",""],["ng-form"],["","ngForm",""]],hostBindings:function(o,i){o&1&&I("submit",function(a){return i.onSubmit(a)})("reset",function(){return i.onReset()})},inputs:{options:[0,"ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],standalone:!1,features:[Gt([ET]),pt]})}return n})();function wO(n,t){let e=n.indexOf(t);e>-1&&n.splice(e,1)}function SO(n){return typeof n=="object"&&n!==null&&Object.keys(n).length===2&&"value"in n&&"disabled"in n}var DT=class extends gu{defaultValue=null;_onChange=[];_pendingValue;_pendingChange=!1;constructor(t=null,e,o){super($O(e),HO(o,e)),this._applyFormState(t),this._setUpdateStrategy(e),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),mu(e)&&(e.nonNullable||e.initialValueIsDefault)&&(SO(t)?this.defaultValue=t.value:this.defaultValue=t)}setValue(t,e={}){ie(()=>{this.value=this._pendingValue=t,this._onChange.length&&e.emitModelToViewChange!==!1&&this._onChange.forEach(o=>o(this.value,e.emitViewToModelChange!==!1)),this.updateValueAndValidity(e)})}patchValue(t,e={}){this.setValue(t,e)}reset(t=this.defaultValue,e={}){this._applyFormState(t),this.markAsPristine(e),this.markAsUntouched(e),this.setValue(this.value,e),e.overwriteDefaultValue&&(this.defaultValue=this.value),this._pendingChange=!1,e?.emitEvent!==!1&&this._events.next(new ca(this))}_updateValue(){}_anyControls(t){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(t){this._onChange.push(t)}_unregisterOnChange(t){wO(this._onChange,t)}registerOnDisabledChange(t){this._onDisabledChange.push(t)}_unregisterOnDisabledChange(t){wO(this._onDisabledChange,t)}_forEachChild(t){}_syncPendingControls(){return this.updateOn==="submit"&&(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),this._pendingChange)?(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),!0):!1}_applyFormState(t){SO(t)?(this.value=this._pendingValue=t.value,t.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=t}};var IT={provide:la,useExisting:yt(()=>Eo)},kO=Promise.resolve(),Eo=(()=>{class n extends la{_changeDetectorRef;callSetDisabledState;control=new DT;static ngAcceptInputType_isDisabled;_registered=!1;_ngModelInjector;viewModel;name="";isDisabled;model;options;update=new ve;constructor(e,o,i,r,a,s,c,u){super(c,u,r),this._changeDetectorRef=a,this.callSetDisabledState=s,this._parent=e,this._setValidators(o),this._setAsyncValidators(i)}ngOnChanges(e){if(this._registered,this._checkForErrors(),!this._registered||"name"in e){if(this._registered&&(this._checkName(),this.formDirective)){let o=e.name.previousValue;this.formDirective.removeControl({name:o,path:this._getPath(o)})}this._setUpControl()}"isDisabled"in e&&this._updateDisabled(e),yT(e,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective?.removeControl(this)}\u0275ngControlCreate(e){super.ngControlCreate(e)}\u0275ngControlUpdate(e){super.ngControlUpdate(e,!1)}get shouldBindRequired(){return!1}get path(){return this._getPath(this.name)}get formDirective(){return this._parent?this._parent.formDirective:null}viewToModelUpdate(e){this.viewModel=e,this.update.emit(e)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&this.options.updateOn!=null&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!!(this.options&&this.options.standalone)}_setUpStandalone(){this.isCustomControlBased?this.setupCustomControl():(this.valueAccessor??=this.selectedValueAccessor,yO(this.control,this,this.callSetDisabledState)),this.control.updateValueAndValidity({emitEvent:!1})}_setupWithForm(e){this.isCustomControlBased?this.setupCustomControl():(this.valueAccessor??=this.selectedValueAccessor,yO(this.control,this,e))}_checkForErrors(){this._checkName()}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),!this._isStandalone()&&this.name}_updateValue(e){kO.then(()=>{this.control.setValue(e,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(e){let o=e.isDisabled.currentValue,i=o!==0&&Pt(o);kO.then(()=>{i&&!this.control.disabled?this.control.disable():!i&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(e){return this._parent?CT(e,this._parent):[e]}static \u0275fac=function(o){return new(o||n)(re(sa,9),re(Us,10),re(IO,10),re(da,10),re(Ln,8),re(o_,8),re(Ne,8),re(dt,8))};static \u0275dir=Pe({type:n,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"],options:[0,"ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],standalone:!1,features:[Gt([IT,kT]),pt,nn,Ff(null)]})}return n})();var KO=(()=>{class n{static \u0275fac=function(o){return new(o||n)};static \u0275dir=Pe({type:n,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""],standalone:!1})}return n})(),TT={provide:da,useExisting:yt(()=>a_),multi:!0},a_=(()=>{class n extends $s{writeValue(e){let o=e??"";this.setProperty("value",o)}registerOnChange(e){this.onChange=o=>{e(o==""?null:parseFloat(o))}}static \u0275fac=(()=>{let e;return function(i){return(e||(e=on(n)))(i||n)}})();static \u0275dir=Pe({type:n,selectors:[["input","type","number","formControlName","",3,"ngNoCva",""],["input","type","number","formControl","",3,"ngNoCva",""],["input","type","number","ngModel","",3,"ngNoCva",""]],hostBindings:function(o,i){o&1&&I("input",function(a){return i.onChange(a.target.value)})("blur",function(){return i.onTouched()})},standalone:!1,features:[Gt([TT]),pt]})}return n})();var AT={provide:da,useExisting:yt(()=>XO),multi:!0};function ZO(n,t){return n==null?`${t}`:(t&&typeof t=="object"&&(t="Object"),`${n}: ${t}`.slice(0,50))}function RT(n){return n.split(":")[0]}var XO=(()=>{class n extends $s{value;_optionMap=new Map;_idCounter=0;set compareWith(e){this._compareWith=e}_compareWith=Object.is;appRefInjector=v(Wt).injector;destroyRef=v(Te);cdr=v(Ln);_queuedWrite=!1;_writeValueAfterRender(){this._queuedWrite||this.appRefInjector.destroyed||(this._queuedWrite=!0,Po({write:()=>{this.destroyRef.destroyed||(this._queuedWrite=!1,this.writeValue(this.value))}},{injector:this.appRefInjector}))}writeValue(e){this.cdr.markForCheck(),this.value=e;let o=this._getOptionId(e),i=ZO(o,e);this.setProperty("value",i)}registerOnChange(e){this.onChange=o=>{this.value=this._getOptionValue(o),e(this.value)}}_registerOption(){return(this._idCounter++).toString()}_getOptionId(e){for(let o of this._optionMap.keys())if(this._compareWith(this._optionMap.get(o),e))return o;return null}_getOptionValue(e){let o=RT(e);return this._optionMap.has(o)?this._optionMap.get(o):e}static \u0275fac=(()=>{let e;return function(i){return(e||(e=on(n)))(i||n)}})();static \u0275dir=Pe({type:n,selectors:[["select","formControlName","",3,"multiple","",3,"ngNoCva",""],["select","formControl","",3,"multiple","",3,"ngNoCva",""],["select","ngModel","",3,"multiple","",3,"ngNoCva",""]],hostBindings:function(o,i){o&1&&I("change",function(a){return i.onChange(a.target.value)})("blur",function(){return i.onTouched()})},inputs:{compareWith:"compareWith"},standalone:!1,features:[Gt([AT]),pt]})}return n})(),QO=(()=>{class n{_element;_renderer;_select;id;constructor(e,o,i){this._element=e,this._renderer=o,this._select=i,this._select&&(this.id=this._select._registerOption())}set ngValue(e){this._select!=null&&(this._select._optionMap.set(this.id,e),this._setElementValue(ZO(this.id,e)),this._select._writeValueAfterRender())}set value(e){this._setElementValue(e),this._select?._writeValueAfterRender()}_setElementValue(e){this._renderer.setProperty(this._element.nativeElement,"value",e)}ngOnDestroy(){this._select?._optionMap.delete(this.id),this._select?._writeValueAfterRender()}static \u0275fac=function(o){return new(o||n)(re(Be),re(dt),re(XO,9))};static \u0275dir=Pe({type:n,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"},standalone:!1})}return n})(),FT={provide:da,useExisting:yt(()=>JO),multi:!0};function EO(n,t){return n==null?`${t}`:(typeof t=="string"&&(t=`'${t}'`),t&&typeof t=="object"&&(t="Object"),`${n}: ${t}`.slice(0,50))}function NT(n){return n.split(":")[0]}var JO=(()=>{class n extends $s{value;_optionMap=new Map;_idCounter=0;set compareWith(e){this._compareWith=e}_compareWith=Object.is;writeValue(e){this.value=e;let o;if(Array.isArray(e)){let i=e.map(r=>this._getOptionId(r));o=(r,a)=>{r._setSelected(i.indexOf(a)>-1)}}else o=i=>{i._setSelected(!1)};this._optionMap.forEach(o)}registerOnChange(e){this.onChange=o=>{let i=[],r=o.selectedOptions;if(r!==void 0){let a=r;for(let s=0;s{let e;return function(i){return(e||(e=on(n)))(i||n)}})();static \u0275dir=Pe({type:n,selectors:[["select","multiple","","formControlName","",3,"ngNoCva",""],["select","multiple","","formControl","",3,"ngNoCva",""],["select","multiple","","ngModel","",3,"ngNoCva",""]],hostBindings:function(o,i){o&1&&I("change",function(a){return i.onChange(a.target)})("blur",function(){return i.onTouched()})},inputs:{compareWith:"compareWith"},standalone:!1,features:[Gt([FT]),pt]})}return n})(),ev=(()=>{class n{_element;_renderer;_select;id;_value;constructor(e,o,i){this._element=e,this._renderer=o,this._select=i,this._select&&(this.id=this._select._registerOption(this))}set ngValue(e){this._select!=null&&(this._value=e,this._setElementValue(EO(this.id,e)),this._select.writeValue(this._select.value))}set value(e){this._select?(this._value=e,this._setElementValue(EO(this.id,e)),this._select.writeValue(this._select.value)):this._setElementValue(e)}_setElementValue(e){this._renderer.setProperty(this._element.nativeElement,"value",e)}_setSelected(e){this._renderer.setProperty(this._element.nativeElement,"selected",e)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}static \u0275fac=function(o){return new(o||n)(re(Be),re(dt),re(JO,9))};static \u0275dir=Pe({type:n,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"},standalone:!1})}return n})();var LT=(()=>{class n{static \u0275fac=function(o){return new(o||n)};static \u0275mod=gt({type:n});static \u0275inj=at({})}return n})();var Et=(()=>{class n{static withConfig(e){return{ngModule:n,providers:[{provide:o_,useValue:e.callSetDisabledState??i_}]}}static \u0275fac=function(o){return new(o||n)};static \u0275mod=gt({type:n});static \u0275inj=at({imports:[LT]})}return n})();function VT(n,t){if(n&1&&(l(0,"p",3),g(1),d()),n&2){let e=m();p(),y(e.message())}}function BT(n,t){if(n&1&&(l(0,"p",4),g(1),d()),n&2){let e=m();p(),y(e.error())}}var hu=class n{changed=ud();http=v(Mn);config={video_enabled:!0,outputter_enabled:!0,step_summarizer_enabled:!0};busy=w(!1);loading=w(!0);loaded=w(!1);message=w("");error=w("");ngOnInit(){this.http.get("/api/system/capability-settings").pipe(Tt(()=>this.loading.set(!1))).subscribe({next:t=>{this.config=t,this.loaded.set(!0),this.changed.emit(t)},error:()=>this.error.set("\u529F\u80FD\u914D\u7F6E\u52A0\u8F7D\u5931\u8D25\uFF0C\u8BF7\u5237\u65B0\u9875\u9762\u91CD\u8BD5\u3002")})}save(){this.busy()||this.loading()||!this.loaded()||(this.busy.set(!0),this.message.set(""),this.error.set(""),this.http.post("/api/system/capability-settings",this.config).pipe(Tt(()=>this.busy.set(!1))).subscribe({next:t=>{this.config=t,this.changed.emit(t),this.message.set("\u529F\u80FD\u8BBE\u7F6E\u5DF2\u4FDD\u5B58\uFF0C\u65B0\u4EFB\u52A1\u5C06\u4F7F\u7528\u6B64\u914D\u7F6E\u3002")},error:()=>this.error.set("\u4FDD\u5B58\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u670D\u52A1\u5668\u8FDE\u63A5\u548C .env \u6587\u4EF6\u6743\u9650\u3002")}))}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=Ae({type:n,selectors:[["app-capability-settings"]],outputs:{changed:"changed"},decls:27,vars:10,consts:[["aria-label","\u529F\u80FD\u5F00\u5173"],["type","checkbox","role","switch",3,"ngModelChange","ngModel","disabled"],["type","button",3,"click","disabled"],["role","status"],["role","alert",1,"error"]],template:function(e,o){e&1&&(l(0,"section",0)(1,"h3"),g(2,"\u529F\u80FD\u5F00\u5173"),d(),l(3,"p"),g(4,"\u6309\u9700\u542F\u7528\uFF0C\u4FDD\u5B58\u540E\u5BF9\u65B0\u4EFB\u52A1\u751F\u6548\u3002"),d(),l(5,"label")(6,"input",1),wt("ngModelChange",function(r){return Nt(o.config.video_enabled,r)||(o.config.video_enabled=r),r}),d(),Qe(),l(7,"span"),g(8,"\u89C6\u9891\u5206\u6790\u4E0E\u5F55\u5C4F"),l(9,"small"),g(10,"\u5F55\u5236\u8BBE\u5907\u753B\u9762\uFF0C\u5E76\u5141\u8BB8\u667A\u80FD\u4F53\u5206\u6790\u5F55\u50CF\uFF1B\u5173\u95ED\u53EF\u51CF\u5C11\u8D44\u6E90\u5360\u7528\u3002"),d()()(),l(11,"label")(12,"input",1),wt("ngModelChange",function(r){return Nt(o.config.outputter_enabled,r)||(o.config.outputter_enabled=r),r}),d(),Qe(),l(13,"span"),g(14,"\u6700\u7EC8\u62A5\u544A\u751F\u6210"),l(15,"small"),g(16,"\u6839\u636E\u6267\u884C\u8BB0\u5F55\u751F\u6210\u4EFB\u52A1\u7ED3\u679C\u62A5\u544A\u3002"),d()()(),l(17,"label")(18,"input",1),wt("ngModelChange",function(r){return Nt(o.config.step_summarizer_enabled,r)||(o.config.step_summarizer_enabled=r),r}),d(),Qe(),l(19,"span"),g(20,"\u6B65\u9AA4\u6458\u8981\u538B\u7F29"),l(21,"small"),g(22,"Flash \u6A21\u5F0F\u4E0B\u5728\u540E\u53F0\u751F\u6210\u6458\u8981\uFF0C\u51CF\u5C11\u957F\u4EFB\u52A1\u7684\u4E0A\u4E0B\u6587\u5360\u7528\u3002"),d()()(),l(23,"button",2),I("click",function(){return o.save()}),g(24),d(),M(25,VT,2,1,"p",3),M(26,BT,2,1,"p",4),d()),e&2&&(p(6),xt("ngModel",o.config.video_enabled),N("disabled",o.busy()||o.loading()||!o.loaded()),Je(),p(6),xt("ngModel",o.config.outputter_enabled),N("disabled",o.busy()||o.loading()||!o.loaded()),Je(),p(6),xt("ngModel",o.config.step_summarizer_enabled),N("disabled",o.busy()||o.loading()||!o.loaded()),Je(),p(5),N("disabled",o.busy()||o.loading()||!o.loaded()),p(),y(o.busy()?"\u6B63\u5728\u4FDD\u5B58\u2026":"\u4FDD\u5B58\u529F\u80FD\u8BBE\u7F6E"),p(),b(o.message()?25:-1),p(),b(o.error()?26:-1))},dependencies:[Et,Hs,ii,Eo],styles:["section[_ngcontent-%COMP%]{margin-top:24px;padding-top:20px;border-top:1px solid rgba(100,116,139,.3333333333)}h3[_ngcontent-%COMP%]{margin:0 0 8px}p[_ngcontent-%COMP%], small[_ngcontent-%COMP%]{color:#64748b;line-height:1.6}label[_ngcontent-%COMP%]{display:flex;gap:12px;align-items:flex-start;padding:14px 0;cursor:pointer}input[_ngcontent-%COMP%]{width:20px;height:20px;accent-color:#0284c7;flex-shrink:0}small[_ngcontent-%COMP%]{display:block;margin-top:4px}button[_ngcontent-%COMP%]{padding:10px 18px;border-radius:10px;border:1px solid rgba(56,189,248,.4666666667);background:#0284c7;color:#fff;font:inherit;cursor:pointer}button[_ngcontent-%COMP%]:disabled{opacity:.5;cursor:default}.error[_ngcontent-%COMP%]{color:#be123c}"]})};function jT(n,t){n&1&&(l(0,"p",13),g(1,"\u6B63\u5728\u52A0\u8F7D\u914D\u7F6E\u2026"),d())}function zT(n,t){if(n&1&&(l(0,"p",14),g(1),d()),n&2){let e=m();p(),y(e.message())}}function $T(n,t){if(n&1&&(l(0,"p",15),g(1),d()),n&2){let e=m();p(),y(e.error())}}function HT(n,t){if(n&1&&(l(0,"small"),g(1),d()),n&2){let e=m();p(),L("\u4FDD\u5B58\u4F4D\u7F6E\uFF1A",e.envPath())}}var Cu=class n{http=v(Mn);saved=ud();baseUrl="";model="";apiKey="";timeout=120;retries=0;busy=w(null);loading=w(!0);keyConfigured=w(!1);envPath=w("");message=w("");error=w("");ngOnInit(){this.http.get("/api/system/model-settings").pipe(Tt(()=>this.loading.set(!1))).subscribe({next:t=>this.apply(t),error:()=>this.error.set("\u914D\u7F6E\u52A0\u8F7D\u5931\u8D25\uFF0C\u8BF7\u5237\u65B0\u9875\u9762\u91CD\u8BD5\u3002")})}valid(){return!!this.baseUrl.trim()&&!!this.model.trim()&&(!!this.apiKey.trim()||this.keyConfigured())&&this.timeout>0&&this.timeout<=3600&&Number.isInteger(this.retries)&&this.retries>=0&&this.retries<=10}payload(){return{base_url:this.baseUrl.trim(),model:this.model.trim(),api_key:this.apiKey.trim()||void 0,timeout_seconds:this.timeout,max_retries:this.retries}}apply(t){this.baseUrl=t.base_url,this.model=t.model,this.timeout=t.timeout_seconds,this.retries=t.max_retries,this.keyConfigured.set(t.api_key_configured),this.envPath.set(t.env_path)}save(){this.busy()||!this.valid()||(this.busy.set("save"),this.message.set(""),this.error.set(""),this.http.post("/api/system/model-settings",this.payload()).pipe(Tt(()=>this.busy.set(null))).subscribe({next:t=>{this.apply(t),this.apiKey="",this.message.set(t.message||"\u914D\u7F6E\u5DF2\u4FDD\u5B58\u3002"),this.saved.emit()},error:t=>this.error.set(typeof t.error?.detail=="string"?t.error.detail:"\u4FDD\u5B58\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u914D\u7F6E\u5185\u5BB9\u3002")}))}test(){this.busy()||!this.valid()||(this.busy.set("test"),this.message.set(""),this.error.set(""),this.http.post("/api/system/model-settings/test",this.payload()).pipe(Tt(()=>this.busy.set(null))).subscribe({next:t=>this.message.set(t.message),error:t=>this.error.set(typeof t.error?.detail=="string"?t.error.detail:"\u8FDE\u63A5\u6D4B\u8BD5\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u914D\u7F6E\u3002")}))}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=Ae({type:n,selectors:[["app-model-settings"]],outputs:{saved:"saved"},decls:32,vars:19,consts:[[1,"model-settings",3,"ngSubmit"],["for","model-base-url"],["id","model-base-url","name","baseUrl","type","url","required","","placeholder","https://api.openai.com/v1",3,"ngModelChange","ngModel","disabled"],["for","model-name"],["id","model-name","name","model","required","","placeholder","\u8F93\u5165\u63A5\u53E3\u652F\u6301\u7684\u6A21\u578B\u540D",3,"ngModelChange","ngModel","disabled"],["for","model-key"],["id","model-key","name","apiKey","type","password","autocomplete","new-password","placeholder","\u8F93\u5165\u65B0\u5BC6\u94A5",3,"ngModelChange","ngModel","disabled"],[1,"number-fields"],["name","timeout","type","number","min","1","max","3600","required","",3,"ngModelChange","ngModel","disabled"],["name","retries","type","number","min","0","max","10","required","",3,"ngModelChange","ngModel","disabled"],[1,"actions"],["type","submit",3,"disabled"],["type","button",3,"click","disabled"],["role","status"],["role","status",1,"success"],["role","alert",1,"error"]],template:function(e,o){e&1&&(l(0,"form",0),I("ngSubmit",function(){return o.save()}),l(1,"p"),g(2,"\u7EDF\u4E00\u4F7F\u7528 OpenAI Responses\u3002\u4FDD\u5B58\u540E\u65B0\u4EFB\u52A1\u7ACB\u5373\u751F\u6548\uFF0C\u91CD\u542F\u540E\u81EA\u52A8\u52A0\u8F7D\u3002"),d(),l(3,"label",1),g(4,"\u63A5\u53E3\u5730\u5740"),d(),l(5,"input",2),wt("ngModelChange",function(r){return Nt(o.baseUrl,r)||(o.baseUrl=r),r}),d(),Qe(),l(6,"small"),g(7,"\u586B\u5199\u63A5\u53E3\u6839\u5730\u5740\uFF0C\u901A\u5E38\u5305\u542B /v1\uFF0C\u65E0\u9700\u6DFB\u52A0 /responses\u3002"),d(),l(8,"label",3),g(9,"\u6A21\u578B\u540D\u79F0"),d(),l(10,"input",4),wt("ngModelChange",function(r){return Nt(o.model,r)||(o.model=r),r}),d(),Qe(),l(11,"label",5),g(12,"API Key "),l(13,"span"),g(14),d()(),l(15,"input",6),wt("ngModelChange",function(r){return Nt(o.apiKey,r)||(o.apiKey=r),r}),d(),Qe(),l(16,"div",7)(17,"label"),g(18,"\u8BF7\u6C42\u8D85\u65F6\uFF08\u79D2\uFF09"),l(19,"input",8),wt("ngModelChange",function(r){return Nt(o.timeout,r)||(o.timeout=r),r}),d(),Qe(),d(),l(20,"label"),g(21,"\u63A5\u53E3\u91CD\u8BD5\u6B21\u6570"),l(22,"input",9),wt("ngModelChange",function(r){return Nt(o.retries,r)||(o.retries=r),r}),d(),Qe(),d()(),l(23,"div",10)(24,"button",11),g(25),d(),l(26,"button",12),I("click",function(){return o.test()}),g(27),d()(),M(28,jT,2,0,"p",13),M(29,zT,2,1,"p",14),M(30,$T,2,1,"p",15),M(31,HT,2,1,"small"),d()),e&2&&(p(5),xt("ngModel",o.baseUrl),N("disabled",o.busy()||o.loading()),Je(),p(5),xt("ngModel",o.model),N("disabled",o.busy()||o.loading()),Je(),p(4),y(o.keyConfigured()?"\uFF08\u5DF2\u914D\u7F6E\uFF0C\u7559\u7A7A\u4FDD\u7559\uFF09":"\uFF08\u5C1A\u672A\u914D\u7F6E\uFF09"),p(),xt("ngModel",o.apiKey),N("disabled",o.busy()||o.loading()),Je(),p(4),xt("ngModel",o.timeout),N("disabled",o.busy()||o.loading()),Je(),p(3),xt("ngModel",o.retries),N("disabled",o.busy()||o.loading()),Je(),p(2),N("disabled",o.busy()||o.loading()||!o.valid()),p(),y(o.busy()==="save"?"\u6B63\u5728\u4FDD\u5B58\u2026":"\u4FDD\u5B58\u914D\u7F6E"),p(),N("disabled",o.busy()||o.loading()||!o.valid()),p(),L(" ",o.busy()==="test"?"\u6B63\u5728\u6D4B\u8BD5\u2026":"\u6D4B\u8BD5\u8FDE\u63A5"," "),p(),b(o.loading()?28:-1),p(),b(o.message()?29:-1),p(),b(o.error()?30:-1),p(),b(o.envPath()?31:-1))},dependencies:[Et,KO,oi,a_,ii,YO,_u,n_,t_,Eo,r_],styles:[".model-settings[_ngcontent-%COMP%]{display:grid;gap:10px;color:#1e293b}p[_ngcontent-%COMP%], small[_ngcontent-%COMP%]{margin:0;line-height:1.6;color:#64748b}label[_ngcontent-%COMP%]{font-weight:600}label[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font-weight:400;font-size:12px}input[_ngcontent-%COMP%]{box-sizing:border-box;width:100%;padding:12px;border-radius:10px;border:1px solid rgba(100,116,139,.4);background:#f8fafc;color:inherit;font:inherit}input[_ngcontent-%COMP%]:focus{outline:2px solid #38bdf8}.number-fields[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:8px}.number-fields[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{margin-top:8px}.actions[_ngcontent-%COMP%]{display:flex;gap:12px;margin-top:8px}button[_ngcontent-%COMP%]{padding:11px 20px;border-radius:10px;border:1px solid rgba(56,189,248,.4666666667);background:#0284c7;color:#fff;cursor:pointer;font:inherit}button[_ngcontent-%COMP%]:disabled{opacity:.5;cursor:default}.success[_ngcontent-%COMP%]{color:#047857}.error[_ngcontent-%COMP%]{color:#be123c}small[_ngcontent-%COMP%]{overflow-wrap:anywhere}@media(max-width:480px){.number-fields[_ngcontent-%COMP%]{grid-template-columns:1fr}}"]})};var Do="\u751F\u6210\u8FC7\u7A0B\u4E2D\u8BF7\u6C42\u51FA\u9519\uFF0C\u6B63\u5728\u81EA\u52A8\u91CD\u8BD5\u2026";function l_(n){if(!n||typeof n!="object"||!n.payload)return n;let t=n.payload;if(typeof t=="string")try{t=JSON.parse(t)}catch(r){return n}if(!t||typeof t!="object")return n;let e=r=>Array.isArray(r)?r[0]:r,i=[e(t.args?.action),e(t.action),e(t.args)].find(r=>r&&typeof r=="object");return i?F(x(x({},n),i),{args:n.args&&typeof n.args=="object"?n.args:i,name:n.name||i.action||i.name,action:i.action||n.name,trace_id:n.trace_id,timestamp:n.timestamp??i.timestamp}):n}function ae(n){if(n==null)return null;if(Array.isArray(n)){if(n.length===4&&n.every(e=>typeof e=="number"&&!isNaN(e))||n.length===2&&n.every(e=>typeof e=="number"&&!isNaN(e)))return n;if(n.length===2&&Array.isArray(n[0])&&Array.isArray(n[1])){let e=ae(n[0]),o=ae(n[1]);if(e&&o&&e.length===2&&o.length===2)return[e[0],e[1],o[0],o[1]]}let t=[];for(let e of n)if(typeof e=="number"&&!isNaN(e))t.push(e);else if(typeof e=="string"){let o=e.match(/-?\d+(?:\.\d+)?/g);o&&o.forEach(i=>t.push(Number(i)))}else if(Array.isArray(e)){let o=ae(e);o&&t.push(...o)}if(t.length===4||t.length===2)return t}if(typeof n=="string"){let t=n.trim();if(!t)return null;try{let o=JSON.parse(t),i=ae(o);if(i)return i}catch(o){}let e=t.match(/-?\d+(?:\.\d+)?/g);if(e&&(e.length===4||e.length===2))return e.map(o=>Number(o))}return null}function ua(n){if(!n)return null;if(typeof n=="string"){let t=n.trim();try{let r=JSON.parse(t),a=ua(r);if(a&&a.length>0)return a}catch(r){}let e=[],o=/\[\s*(-?\d+(?:\.\d+)?)\s*,\s*(-?\d+(?:\.\d+)?)\s*\]/g,i;for(;(i=o.exec(t))!==null;)e.push([Number(i[1]),Number(i[2])]);if(e.length>0)return e}if(Array.isArray(n)){let t=[];for(let e of n){let o=ae(e);o&&o.length===2?t.push([o[0],o[1]]):Array.isArray(e)&&e.length>=2&&typeof e[0]=="number"&&typeof e[1]=="number"&&t.push([e[0],e[1]])}if(t.length>0)return t}return null}function Vt(n){if(typeof n!="string")return!1;let t=n.trim().toLowerCase();return/\d/.test(t)?!1:["up","down","left","right","swipe up","swipe down","swipe left","swipe right","scroll up","scroll down","scroll left","scroll right","top","bottom"].includes(t)}function Mu(n,t,e){if(!n||!t||!e)return;t.innerHTML="";let o=Array.isArray(e)?e:[e],i=n.naturalWidth||1080,r=n.naturalHeight||2400;o.forEach(a=>{let s=l_(a);if(!s||typeof s!="object")return;let c=(s.action||s.name||"tap").toLowerCase(),u=s.args&&typeof s.args=="object"?s.args:{};if(["manage_app","launch_app","open_app","stop_app","close_app","press_key","press_home","press_back","wait_for_delay","wait","delay","report_task_status","report_failure_analysis"].includes(c))return;let _=c.includes("sequence")||!!(s.sequence||u.sequence||s.normalized_sequence||u.normalized_sequence),h=s.normalized_sequence||u.normalized_sequence||s.sequence||u.sequence||s.targets||u.targets||(Array.isArray(s.coordinates)&&Array.isArray(s.coordinates[0])?s.coordinates:null)||(Array.isArray(u.coordinates)&&Array.isArray(u.coordinates[0])?u.coordinates:null),C=ua(h);if(C&&C.length>0&&(_||C.length>1)){let X=!!(s.normalized_sequence||u.normalized_sequence)||C.every(q=>q[0]<=1e3&&q[1]<=1e3);for(let q=0;q{s_(q[0],q[1],c,i,r,t,X,he+1,C.length)});return}let O=c.includes("swipe")||c.includes("scroll")||c.includes("drag")||c.includes("slide"),P=ae(s.normalized_start_coordinates||u.normalized_start_coordinates),T=ae(s.normalized_end_coordinates||u.normalized_end_coordinates),R=P||ae(s.start_coordinates||s.start_point||s.start||s.from||u.start_coordinates||u.start_point||u.start||u.from),D=T||ae(s.end_coordinates||s.end_point||s.end||s.to||u.end_coordinates||u.end_point||u.end||u.to);if(R&&D&&R.length>=2&&D.length>=2){c_(R[0],R[1],D[0],D[1],i,r,t,!!(P&&T),c);return}let H=ae(s.normalized_coordinates||u.normalized_coordinates),ue=!!H,J=H||ae(s.coordinates)||ae(u.coordinates)||ae(s.coords)||ae(u.coords)||ae(s.target)||ae(u.target)||(O?ae(u.action):null)||(O?ae(s.action):null)||(O?ae(u.gesture):null)||(O?ae(s.gesture):null);if(J&&Array.isArray(J)){if(J.length===4){c_(J[0],J[1],J[2],J[3],i,r,t,ue,c);return}else if(J.length===2&&!O){s_(J[0],J[1],c,i,r,t,ue);return}}if(O){let X=(typeof u.action=="string"&&Vt(u.action)?u.action:null)||(typeof s.action=="string"&&s.action!==c&&Vt(s.action)?s.action:null)||(Vt(u.direction)?u.direction:null)||(Vt(s.direction)?s.direction:null)||(Vt(u.gesture)?u.gesture:null)||(Vt(s.gesture)?s.gesture:null)||"",q=String(X).toLowerCase().trim();if(q){let he=500,Ve=750,Dt=500,Pn=250,On="SWIPE";q.includes("up")||q.includes("top")||c.includes("up")?(he=500,Ve=750,Dt=500,Pn=250,On="SWIPE UP"):q.includes("down")||q.includes("bottom")||c.includes("down")?(he=500,Ve=250,Dt=500,Pn=750,On="SWIPE DOWN"):q.includes("left")||c.includes("left")?(he=800,Ve=500,Dt=200,Pn=500,On="SWIPE LEFT"):(q.includes("right")||c.includes("right"))&&(he=200,Ve=500,Dt=800,Pn=500,On="SWIPE RIGHT"),c_(he,Ve,Dt,Pn,i,r,t,!0,On);return}}J&&Array.isArray(J)&&J.length===2&&s_(J[0],J[1],c,i,r,t,ue)})}function s_(n,t,e,o,i,r,a=!1,s,c){let u,f;a||!a&&n<=1e3&&t<=1e3?(u=n/10,f=t/10):(u=n/(o||1080)*100,f=t/(i||2400)*100);let _=Math.max(1.5,Math.min(98.5,u)),h=Math.max(1.5,Math.min(98.5,f)),C=document.createElement("div");C.className="action-point-marker",C.style.position="absolute",C.style.left=`${_}%`,C.style.top=`${h}%`,C.style.transform="translate(-50%, -50%)",C.style.pointerEvents="none",C.style.zIndex="10";let O=s!==void 0?20:14,P=document.createElement("div");P.style.width=`${O}px`,P.style.height=`${O}px`,P.style.borderRadius="50%",P.style.backgroundColor="#ef4444",P.style.border="2px solid white",P.style.boxShadow="0 0 6px rgba(0,0,0,0.5)",s!==void 0&&(P.style.display="flex",P.style.alignItems="center",P.style.justifyContent="center",P.style.fontSize="11px",P.style.fontWeight="bold",P.style.color="white",P.innerText=String(s));let T=O*2,R=document.createElement("div");R.style.position="absolute",R.style.top=`-${O/2+2}px`,R.style.left=`-${O/2+2}px`,R.style.width=`${T}px`,R.style.height=`${T}px`,R.style.borderRadius="50%",R.style.border="2px solid #ef4444",R.style.animation="pulse-animation 1.5s infinite ease-out",R.style.pointerEvents="none";let D=document.createElement("div");s!==void 0?D.innerText=c&&c>1?`#${s} \u70B9\u51FB`:e.toUpperCase():D.innerText=e.toUpperCase(),D.style.position="absolute",D.style.backgroundColor="rgba(15, 23, 42, 0.9)",D.style.color="white",D.style.padding="1.5px 5px",D.style.borderRadius="3px",D.style.fontSize="9px",D.style.fontWeight="bold",D.style.letterSpacing="0.5px",D.style.whiteSpace="nowrap",D.style.boxShadow="0 1px 4px rgba(0,0,0,0.4)",D.style.border="1px solid rgba(255,255,255,0.2)",h>85?(D.style.bottom=`${O+2}px`,D.style.top="auto"):(D.style.top=`${O+2}px`,D.style.bottom="auto"),_>82?(D.style.right="0px",D.style.left="auto",D.style.transform="none"):_<18?(D.style.left="0px",D.style.right="auto",D.style.transform="none"):(D.style.left="50%",D.style.right="auto",D.style.transform="translateX(-50%)"),C.appendChild(R),C.appendChild(P),C.appendChild(D),r.appendChild(C)}function UT(n,t,e,o,i,r,a,s=!1){let c=s||n<=1e3&&t<=1e3&&e<=1e3&&o<=1e3,u=c?n/10:n/(i||1080)*100,f=c?t/10:t/(r||2400)*100,_=c?e/10:e/(i||1080)*100,h=c?o/10:o/(r||2400)*100,C=Math.max(1.5,Math.min(98.5,u)),O=Math.max(1.5,Math.min(98.5,f)),P=Math.max(1.5,Math.min(98.5,_)),T=Math.max(1.5,Math.min(98.5,h)),R=a.querySelector("svg");R||(R=document.createElementNS("http://www.w3.org/2000/svg","svg"),R.setAttribute("width","100%"),R.setAttribute("height","100%"),R.style.position="absolute",R.style.top="0",R.style.left="0",R.style.pointerEvents="none",R.style.overflow="visible",R.style.zIndex="5",a.appendChild(R));let D=R.querySelector("defs");D||(D=document.createElementNS("http://www.w3.org/2000/svg","defs"),R.insertBefore(D,R.firstChild));let H="seq-arrow-"+Math.random().toString(36).substring(2,9),ue=document.createElementNS("http://www.w3.org/2000/svg","marker");ue.setAttribute("id",H),ue.setAttribute("viewBox","0 0 12 12"),ue.setAttribute("refX","8"),ue.setAttribute("refY","6"),ue.setAttribute("markerWidth","6"),ue.setAttribute("markerHeight","6"),ue.setAttribute("orient","auto");let J=document.createElementNS("http://www.w3.org/2000/svg","path");J.setAttribute("d","M 1 2 L 10 6 L 1 10 z"),J.setAttribute("fill","#ef4444"),J.setAttribute("stroke","#ffffff"),J.setAttribute("stroke-width","1"),ue.appendChild(J),D.appendChild(ue);let X=document.createElementNS("http://www.w3.org/2000/svg","line");X.setAttribute("x1",`${C}%`),X.setAttribute("y1",`${O}%`),X.setAttribute("x2",`${P}%`),X.setAttribute("y2",`${T}%`),X.setAttribute("stroke","#ffffff"),X.setAttribute("stroke-width","4"),X.setAttribute("stroke-linecap","round"),X.setAttribute("opacity","0.8");let q=document.createElementNS("http://www.w3.org/2000/svg","line");q.setAttribute("x1",`${C}%`),q.setAttribute("y1",`${O}%`),q.setAttribute("x2",`${P}%`),q.setAttribute("y2",`${T}%`),q.setAttribute("stroke","#ef4444"),q.setAttribute("stroke-width","2.5"),q.setAttribute("stroke-linecap","round"),q.setAttribute("marker-end",`url(#${H})`),q.setAttribute("stroke-dasharray","4,4"),R.appendChild(X),R.appendChild(q)}function c_(n,t,e,o,i,r,a,s=!1,c="swipe"){let u=s||n<=1e3&&t<=1e3&&e<=1e3&&o<=1e3,f=u?n/10:n/(i||1080)*100,_=u?t/10:t/(r||2400)*100,h=u?e/10:e/(i||1080)*100,C=u?o/10:o/(r||2400)*100,O=Math.max(1.5,Math.min(98.5,f)),P=Math.max(1.5,Math.min(98.5,_)),T=Math.max(1.5,Math.min(98.5,h)),R=Math.max(1.5,Math.min(98.5,C)),D=a.querySelector("svg");D||(D=document.createElementNS("http://www.w3.org/2000/svg","svg"),D.setAttribute("width","100%"),D.setAttribute("height","100%"),D.style.position="absolute",D.style.top="0",D.style.left="0",D.style.pointerEvents="none",D.style.overflow="visible",D.style.zIndex="5",a.appendChild(D));let H=D.querySelector("defs");H||(H=document.createElementNS("http://www.w3.org/2000/svg","defs"),D.insertBefore(H,D.firstChild));let ue="action-arrow-"+Math.random().toString(36).substring(2,9),J=document.createElementNS("http://www.w3.org/2000/svg","marker");J.setAttribute("id",ue),J.setAttribute("viewBox","0 0 12 12"),J.setAttribute("refX","8"),J.setAttribute("refY","6"),J.setAttribute("markerWidth","8"),J.setAttribute("markerHeight","8"),J.setAttribute("orient","auto");let X=document.createElementNS("http://www.w3.org/2000/svg","path");X.setAttribute("d","M 1 2 L 10 6 L 1 10 z"),X.setAttribute("fill","#ef4444"),X.setAttribute("stroke","#ffffff"),X.setAttribute("stroke-width","1.5"),X.setAttribute("stroke-linejoin","round"),J.appendChild(X),H.appendChild(J);let q=document.createElementNS("http://www.w3.org/2000/svg","line");q.setAttribute("x1",`${O}%`),q.setAttribute("y1",`${P}%`),q.setAttribute("x2",`${T}%`),q.setAttribute("y2",`${R}%`),q.setAttribute("stroke","#ffffff"),q.setAttribute("stroke-width","6"),q.setAttribute("stroke-linecap","round"),q.setAttribute("opacity","0.9");let he=document.createElementNS("http://www.w3.org/2000/svg","line");he.setAttribute("x1",`${O}%`),he.setAttribute("y1",`${P}%`),he.setAttribute("x2",`${T}%`),he.setAttribute("y2",`${R}%`),he.setAttribute("stroke","#ef4444"),he.setAttribute("stroke-width","3.5"),he.setAttribute("stroke-linecap","round"),he.setAttribute("marker-end",`url(#${ue})`),he.setAttribute("stroke-dasharray","6,4");let Ve=document.createElementNS("http://www.w3.org/2000/svg","circle");Ve.setAttribute("cx",`${O}%`),Ve.setAttribute("cy",`${P}%`),Ve.setAttribute("r","6.5"),Ve.setAttribute("fill","#ef4444"),Ve.setAttribute("stroke","white"),Ve.setAttribute("stroke-width","2");let Dt=document.createElementNS("http://www.w3.org/2000/svg","circle");Dt.setAttribute("cx",`${O}%`),Dt.setAttribute("cy",`${P}%`),Dt.setAttribute("r","2.5"),Dt.setAttribute("fill","white"),D.appendChild(q),D.appendChild(he),D.appendChild(Ve),D.appendChild(Dt);let Pn=(O+T)/2,On=(P+R)/2,ln=document.createElement("div");ln.className="action-point-marker action-line-label",ln.style.position="absolute",ln.style.left=`${Pn}%`,ln.style.top=`${On}%`,ln.style.transform="translate(-50%, -50%)",ln.style.pointerEvents="none",ln.style.zIndex="10";let dn=document.createElement("div");dn.innerText=c.toUpperCase(),dn.style.backgroundColor="rgba(15, 23, 42, 0.92)",dn.style.color="white",dn.style.padding="2px 6px",dn.style.borderRadius="4px",dn.style.fontSize="9px",dn.style.fontWeight="bold",dn.style.letterSpacing="0.5px",dn.style.whiteSpace="nowrap",dn.style.boxShadow="0 2px 6px rgba(0,0,0,0.5)",dn.style.border="1px solid rgba(255,255,255,0.3)",ln.appendChild(dn),a.appendChild(ln)}var tv=new WeakMap;function ot(n){if(!n)return{};if(typeof n=="object"){let t=tv.get(n);if(t!==void 0)return t;let e=nv(n);return tv.set(n,e),e}return nv(n)}function nv(n){if(n.payload){let t=n.payload;if(typeof t=="string")try{t=JSON.parse(t)}catch(e){}if(t&&typeof t=="object")return t.args&&typeof t.args=="object"?t.args:t}if(n.args){let t=n.args;if(typeof t=="string")try{t=JSON.parse(t)}catch(e){}if(t&&typeof t=="object")return t}return{}}function ov(n){if(!n||!n.name)return!1;let e=n.name.replace(/^(_)?(self\.)?exec_/,"").toLowerCase();return["save_note","read_note","list_notes","update_note","append_note"].includes(e)}function bu(n){if(!n||!n.name)return!1;let e=n.name.replace(/^(_)?(self\.)?exec_/,"").toLowerCase();return["video_analysis","video_analyzer","video_analyzer_pure","spawn_sub_agent","analyze_audio_only"].includes(e)}function d_(n){if(!n||typeof n!="object")return null;let t=Number(n.start),e=Number(n.end);return!Number.isFinite(t)||!Number.isFinite(e)||e<=t?null:{start:t,end:e,category:n.category?String(n.category):void 0,retryable:n.retryable===!0}}function WT(n){let t=n.trim();return t?t.startsWith("CACHED VIDEO ANALYSIS:")?{outcome:"complete",reuse:"full",summary:t.replace(/^CACHED VIDEO ANALYSIS:\s*/,"")}:t.startsWith("PARTIAL VIDEO ANALYSIS")?{outcome:"partial",reuse:"partial",summary:t}:t.startsWith("All sub-agent chunks failed")||t.startsWith("Error:")?{outcome:"failed",summary:t}:t.includes("Analysis is already in progress in another video agent")?{outcome:"waiting",summary:"\u53E6\u4E00\u4E2A\u89C6\u9891\u667A\u80FD\u4F53\u6B63\u5728\u5206\u6790\u6B64\u6BB5\u5185\u5BB9\u3002"}:{outcome:"complete",summary:t}:{}}function or(n){if(!bu(n))return null;let t=ot(n),e=n?.payload&&typeof n.payload=="object"?n.payload:{},o=e.result??n.result??null,i=o&&typeof o=="object"?o:{},r=typeof o=="string"?WT(o):{},a=String(i.outcome||e.outcome||r.outcome||"").toLowerCase();["running","recovering","waiting","complete","partial","failed"].includes(a)||(a=n?.status==="failed"||n?.status==="error"?"failed":n?.status==="running"?"running":"complete");let s=i.recovering===!0||i.fallback_used===!0;a==="running"&&s&&(a="recovering");let c=Number(t.start_time??i.requested_range?.start),u=Number(t.end_time??i.requested_range?.end),f=Number.isFinite(c)&&Number.isFinite(u)&&u>c?{start:c,end:u}:d_(i.requested_range),_=Array.isArray(i.completed_ranges)?i.completed_ranges.map(d_).filter(T=>!!T):[],h=Array.isArray(i.failed_ranges)?i.failed_ranges.map(d_).filter(T=>!!T):[],C=Number(i.completed_count??_.length??0),O=Number(i.total_count??_.length+h.length),P={running:"\u6B63\u5728\u5206\u6790\u5C4F\u5E55\u5F55\u50CF",recovering:"\u6B63\u5728\u5206\u6790\u5C1A\u672A\u7ED3\u675F\u7684\u5F55\u50CF\u7247\u6BB5",waiting:"\u6B63\u5728\u7B49\u5F85\u5DF2\u6709\u7684\u89C6\u9891\u5206\u6790",complete:i.reuse==="full"||r.reuse==="full"?"\u5DF2\u590D\u7528\u89C6\u9891\u5206\u6790":"\u5DF2\u5206\u6790\u5C4F\u5E55\u5F55\u50CF",partial:"\u89C6\u9891\u5206\u6790\u90E8\u5206\u5B8C\u6210",failed:"\u89C6\u9891\u5206\u6790\u672A\u8FD4\u56DE\u7ED3\u679C"};return{outcome:a,title:P[a],query:String(t.specific_query||t.query||t.prompt||i.query||""),summary:String(i.summary||r.summary||""),reuse:i.reuse||r.reuse||"none",requestedRange:f,completedRanges:_,failedRanges:h,evidenceCount:Number(i.evidence_count||0),completedCount:Number.isFinite(C)?C:0,totalCount:Number.isFinite(O)?O:0,fallbackUsed:i.fallback_used===!0}}function u_(n){let t=Math.max(0,Number(n)||0),e=Math.floor(t/60),o=Math.floor(t%60);return`${String(e).padStart(2,"0")}:${String(o).padStart(2,"0")}`}function iv(n){if(!n)return null;let t=ot(n);if(t.video_path||t.video_file||t.file_path||t.file){let e=String(t.video_path||t.video_file||t.file_path||t.file);return e.split("/").pop()||e}if(t.time_description)return String(t.time_description);if(t.start_time!==void 0||t.end_time!==void 0){let e=t.start_time??0,o=t.end_time?`${t.end_time}s`:"end";return`${e}s - ${o}`}return t.purpose?String(t.purpose):"screen_record.mp4"}var GT=new Set(["click","click_sequence","long_press","long_press_on","input","input_text","swipe","scroll","press_key","press_home","press_back","launch_app","manage_app","open_app","focus_and_input_text","focus_and_clear_text","tap","wait_for_delay","wait","run_adb_command","run_short_adb_command"]);function g_(n){if(!n||!n.name||n.type==="llm_call")return!1;let t=n.name.replace(/^(_)?(self\.)?exec_/,"").toLowerCase();return GT.has(t)}function p_(n){if(!n||!n.name)return!0;let t=n.name.replace(/^(_)?(self\.)?exec_/,"").toLowerCase();return!!(t.includes("safety_net")||t==="report_task_status"||t==="report_status"||t==="submit_task_status")}function rv(n,t){return!(!n||!n.name||n.type==="llm_call"||n.type==="agent"||n.type==="log"||p_(n))}function av(n){if(!n)return null;let t=(n.agent_name||n.agent||"").toLowerCase();return t.includes("failure")||t.includes("analyzer")?null:t.includes("outputter")?"Outputter":t.includes("validator")?"Validator":t.includes("diagnos")?"Diagnoser":t.includes("explorer")?"Explorer":null}function Pu(n){if(!n)return[];let t=n.filter(_=>_?.type==="llm_call"&&_?.status==="retrying"&&(_?.name==="llm_retry"||_?.name==="llm_retry_group")&&_?.payload?.source==="provider_sdk"&&["google","gemini"].includes(String(_?.payload?.provider||"").toLowerCase())),e=_=>String(_?.payload?.request_id||`legacy-${_?.step_id||"unassigned"}`),o=new Map;for(let _ of t){let h=e(_);o.set(h,[...o.get(h)||[],_])}let i=new Set(n.filter(_=>_?.type==="llm_call"&&_?.status==="failed").map(_=>_?.payload?.request_id).filter(_=>typeof _=="string"&&!!_)),r=_=>{let h=_[0],C=_[_.length-1];return F(x({},h),{trace_id:`llm-retry-group-${h?.payload?.request_id||h?.trace_id||h?.timestamp||"unknown"}`,name:"llm_retry_group",payload:F(x({},C?.payload||{}),{retry_count:_.length,total_delay:_.reduce((O,P)=>O+(Number(P?.payload?.delay)||0),0),retries:_.map(O=>({trace_id:O.trace_id,timestamp:O.timestamp,error:O?.payload?.error||O.error,delay:Number(O?.payload?.delay)||0,provider:O?.payload?.provider,source:O?.payload?.source,request_id:O?.payload?.request_id,scheduled_at:O?.payload?.scheduled_at}))})})},a=new Map;for(let _ of n)_&&_.trace_id&&a.set(_.trace_id,_);let s=_=>(_||"").replace(/^(_)?(self\.)?exec_/,"").toLowerCase().trim(),c=[],u=new Set,f=new Set;for(let _ of n){if(!_||!_.name||_.type==="agent")continue;if(_.type==="llm_call"&&_.status==="retrying"){let O=e(_),P=o.get(O),T=_?.payload?.request_id;P&&!f.has(O)&&!(T&&i.has(T))&&(c.push(r(P)),f.add(O));continue}if(_.type==="llm_call"&&_.status==="failed"){(_.name==="llm_pause"||_?.payload?.pause===!0)&&c.push(_);continue}let h=s(_.name),C=!1;if(_.parent_trace_id){let O=a.get(_.parent_trace_id);O&&s(O.name)===h&&(C=!0)}C||(_.trace_id?u.has(_.trace_id)||(u.add(_.trace_id),c.push(a.get(_.trace_id)||_)):c.push(_))}return qT(c)}function qT(n){let t=new Map,e=[];n.forEach((i,r)=>{if(!bu(i)){e.push({index:r,tool:i});return}let a=String(i.name||"").replace(/^(_)?(self\.)?exec_/,"").toLowerCase(),s=String(a==="video_analyzer"||a==="video_analyzer_pure"?i.trace_id||i.parent_trace_id||`video-${r}`:i.parent_trace_id||i.trace_id||`video-${r}`),c=t.get(s);c?c.tools.push(i):t.set(s,{firstIndex:r,tools:[i]})});let o=[...e];for(let[i,r]of t){let a=r.tools.map(or).filter(D=>!!D);if(!a.length)continue;let s=a.some(D=>D.outcome==="running"||D.outcome==="recovering"),c=a.filter(D=>D.outcome==="complete"),u=a.some(D=>D.outcome==="partial"),f=a.filter(D=>D.outcome==="failed"),_=a.filter(D=>D.outcome==="waiting"),h;s?h=a.some(D=>D.outcome==="recovering")?"recovering":"running":u||c.length>0&&f.length>0?h="partial":c.length>0?h="complete":_.length>0?h="waiting":h="failed";let C=a.map(D=>D.requestedRange).filter(D=>!!D),O=C.length?{start:Math.min(...C.map(D=>D.start)),end:Math.max(...C.map(D=>D.end))}:null,P=c.length>0&&c.every(D=>D.reuse==="full")?"full":a.some(D=>D.reuse!=="none")?"partial":"none",T=r.tools[0],R={outcome:h,reuse:P,requested_range:O,completed_count:c.length,total_count:a.length,evidence_count:a.reduce((D,H)=>D+H.evidenceCount,0),query:a.find(D=>D.query)?.query||"",recovering:h==="recovering",fallback_used:a.some(D=>D.fallbackUsed)};o.push({index:r.firstIndex,tool:F(x({},T),{trace_id:`video-analysis-${i}`,name:"video_analysis",status:h==="running"||h==="recovering"?"running":"success",payload:F(x({},T.payload||{}),{args:F(x({},T.payload?.args||T.args||{}),{start_time:O?.start,end_time:O?.end}),result:R})})})}return o.sort((i,r)=>i.index-r.index),o.map(i=>i.tool)}function sv(n){if(!n||!n.name)return null;let e=(n.payload?.args||n.args)?.key;return e?e.toLowerCase().endsWith(".md")?e:`${e}.md`:null}function cv(n,t=!1){if(!n||!n.name)return"";let e=n.name.replace(/^(_)?exec_/,""),o=e.toLowerCase(),i=ot(n);switch(o){case"manage_app":case"launch_app":{let r=i.app_name||i.package_name||i.app||"",a=r?r.charAt(0).toUpperCase()+r.slice(1):"\u5E94\u7528",s=i.action?String(i.action).toLowerCase():"";return`${s==="launch"?"\u542F\u52A8\u4E2D":s==="stop"||s==="close"?"\u505C\u6B62\u4E2D":"\u7BA1\u7406\u4E2D"} "${a}"`}case"wait_for_delay":case"wait_delay":case"wait":{let r=i.delay_seconds||i.seconds||i.delay||i.duration;return r?`\u7B49\u5F85 ${r} second${Number(r)>1?"s":""}...`:"\u6B63\u5728\u7B49\u5F85\u2026"}case"wait_for_text":{let r=i.text||i.target_text||"";return r?`\u7B49\u5F85\u6587\u672C "${r}" \u51FA\u73B0\u5728\u5C4F\u5E55\u4E0A`:"\u6B63\u5728\u7B49\u5F85\u5C4F\u5E55\u51FA\u73B0\u6587\u672C"}case"input_text":case"input":{let r=i.text||i.input_text||"";return r?`\u8F93\u5165\u6587\u672C "${r}" \u81F3\u8F93\u5165\u6846`:"\u6B63\u5728\u5411\u8F93\u5165\u6846\u8F93\u5165\u6587\u672C"}case"focus_and_input_text":{let r=i.text||i.input_text||"";return r?`\u805A\u7126\u8F93\u5165\u6846\u5E76\u8F93\u5165 "${r}"`:"\u6B63\u5728\u805A\u7126\u8F93\u5165\u6846\u5E76\u8F93\u5165\u6587\u672C"}case"focus_and_clear_text":return"\u6B63\u5728\u805A\u7126\u8F93\u5165\u6846\u5E76\u6E05\u7A7A\u6587\u672C";case"click":case"tap":{let r=i.target_text||i.text||i.query||"";return r?`\u70B9\u51FB "${r}"`:"\u6B63\u5728\u70B9\u51FB\u5C4F\u5E55\u5143\u7D20"}case"click_sequence":return"\u6B63\u5728\u6267\u884C\u8FDE\u7EED\u70B9\u51FB";case"long_press":{let r=i.target_text||i.text||"";return r?`\u957F\u6309 "${r}"`:"\u6B63\u5728\u957F\u6309\u5C4F\u5E55\u5143\u7D20"}case"swipe":{let r=i.action||i.direction||"";return r?`\u6ED1\u52A8 ${String(r).toUpperCase()} \u5728\u5C4F\u5E55\u4E0A`:"\u6B63\u5728\u6ED1\u52A8\u5C4F\u5E55"}case"press_key":{let r=i.key||i.keycode||"";return r?`\u6309\u952E ${String(r).toUpperCase()}`:"\u6B63\u5728\u6309\u4E0B\u5B9E\u4F53\u6309\u952E"}case"save_note":return t?"\u6B63\u5728\u521B\u5EFA\u7B14\u8BB0":"\u6B63\u5728\u4FDD\u5B58\u7B14\u8BB0";case"read_note":return"\u6B63\u5728\u8BFB\u53D6\u7B14\u8BB0";case"list_notes":return"\u6B63\u5728\u6D4F\u89C8\u5DF2\u4FDD\u5B58\u7B14\u8BB0";case"update_note":return"\u6B63\u5728\u66F4\u65B0\u7B14\u8BB0";case"append_note":return"\u6B63\u5728\u66F4\u65B0\u7B14\u8BB0";case"object_detection":{let r=Array.isArray(i.queries)?i.queries.join(", "):i.queries||"";return r?`Locating \u5728\u5C4F\u5E55\u4E0A: "${r}"`:"\u6B63\u5728\u5B9A\u4F4D\u5C4F\u5E55\u5143\u7D20"}case"ask_explorer":{let r=i.query||i.prompt||"";return r?`Searching \u5728\u5C4F\u5E55\u4E0A: "${r}"`:"\u6B63\u5728\u641C\u7D22\u5C4F\u5E55"}case"report_failure_analysis":{let r=i.reason||i.analysis||"";return r?`\u6392\u67E5\u95EE\u9898\uFF1A${r}`:"\u6B63\u5728\u6392\u67E5\u6267\u884C\u95EE\u9898"}case"run_adb_command":case"run_short_adb_command":{let r=i.command||i.cmd||"";return r?`\u8FD0\u884C\u547D\u4EE4\uFF1A${r}`:"\u6B63\u5728\u8FD0\u884C\u7CFB\u7EDF\u547D\u4EE4"}case"search_logs":case"read_logs":{let r=i.query||i.filter||"";return r?`\u641C\u7D22\u65E5\u5FD7\uFF1A"${r}"`:"\u6B63\u5728\u5206\u6790\u7CFB\u7EDF\u65E5\u5FD7"}case"log_analyzer":case"output_analyzer":return"\u6B63\u5728\u5206\u6790\u65E5\u5FD7";case"diagnoser":case"diagnose":return"\u6B63\u5728\u8BCA\u65AD\u95EE\u9898";case"video_analyzer":case"video_analyzer_pure":return"\u6B63\u5728\u5206\u6790\u5C4F\u5E55\u5F55\u50CF";case"extract_segment_metadata":{let r=i.start_time!==void 0?`${i.start_time}s`:"",a=i.end_time!==void 0?`${i.end_time}s`:"";return`\u622A\u53D6\u5F55\u5C4F\u7247\u6BB5${r&&a?` (${r} - ${a})`:r?` (from ${r})`:""}`}case"spawn_sub_agent":{let r=i.specific_query||i.query||i.prompt||"";return r?`\u5206\u6790\u5F55\u5C4F\uFF1A"${r}"`:"\u6B63\u5728\u8C03\u7528\u5B50\u667A\u80FD\u4F53\u5206\u6790\u5F55\u50CF"}case"analyze_audio_only":{let r=i.specific_query||i.query||"";return r?`Analyzing audio track: "${r}"`:"\u6B63\u5728\u5206\u6790\u5F55\u50CF\u97F3\u8F68"}case"search_history":{let r=i.query||"",a=Array.isArray(i.step_range)&&i.step_range.length?` in steps ${i.step_range[0]}\u2013${i.step_range[i.step_range.length-1]}`:"";return r?`Searching execution history for "${r}"${a}`:`Searching execution history${a}`}case"replay_steps":{let r=i.start_step,a=i.end_step;return r!==void 0&&r!==""&&a!==void 0&&a!==null&&a!==""&&String(a)!==String(r)?`Reviewing steps ${r}\u2013${a}`:r!==void 0&&r!==""?`Reviewing step ${r}`:"\u6B63\u5728\u67E5\u770B\u6B65\u9AA4\u8BE6\u60C5"}case"get_step_screenshot":{let r=i.step_number,a=String(i.which||"").toLowerCase();return a==="overlay"?r!==void 0&&r!==""?`Looking at where step ${r}'s action landed`:"\u6B63\u5728\u67E5\u770B\u64CD\u4F5C\u4F4D\u7F6E":r!==void 0&&r!==""?`Looking at the screen ${a==="post"?"after":"before"} step ${r}`:"\u6B63\u5728\u67E5\u770B\u6B65\u9AA4\u622A\u56FE"}case"probe_device":{let r=i.kind?String(i.kind).replace(/_/g," "):"";return r?`Reading ${r} from the device`:"\u6B63\u5728\u8BFB\u53D6\u8BBE\u5907\u72B6\u6001"}case"outputter":case"output_synthesis":return"\u6B63\u5728\u751F\u6210\u8F93\u51FA\u62A5\u544A";case"web_search":{let r=i.query||"";return r?`Searching web for "${r}"`:"\u6B63\u5728\u641C\u7D22\u7F51\u9875"}case"read_url":return"\u6B63\u5728\u8BFB\u53D6\u7F51\u9875";case"compress_history":return YT(n);default:return`Executing ${e.split("_").map(r=>r.charAt(0).toUpperCase()+r.slice(1)).join(" ")}`}}function nr(n){let t=Number(n);return!Number.isFinite(t)||t<0?"":t<1e3?`${Math.round(t)}`:`${(t/1e3).toFixed(1).replace(/\.0$/,"")}k`}function YT(n){let t=ot(n)||{},e=Number(t.start_step),o=Number(t.end_step),r=Number.isFinite(e)&&Number.isFinite(o)&&e>0&&o>0?e===o?`step ${e}`:`steps ${e}\u2013${o}`:"\u4E4B\u524D\u7684\u6B65\u9AA4",a=r.charAt(0).toUpperCase()+r.slice(1),s=String(n?.status||"").toLowerCase(),c=m_(n);if(s==="failed"||c==="failed")return`Couldn't condense ${r} yet; keeping the full record and retrying later`;if(s!=="success"){let O=String(t.note||"").toLowerCase();if(O==="retrying")return`Retrying the memory summary for ${r}\u2026`;if(O==="held"||c==="ready"){let P=Number(t.swap_at_tokens),T=Number(t.context_tokens),R=[`Short memory for ${r} is ready; keeping the full record until working memory fills up`];return T>0&&P>0&&R.push(`\u2248 ${nr(T)} of ${nr(P)} tokens`),R.join(" \xB7 ")}return`Condensing ${r} into a short memory to free up room\u2026`}let u=[],f=Number(t.source_tokens),_=Number(t.summary_tokens);if(t.forced)u.push(`${a} condensed into a recap to free up memory`);else if(u.push(`${a} condensed into a short memory`),f>0&&_>0){let O=f/_,P=O>=2?` (${Math.round(O)}\xD7 smaller)`:"";u.push(`${nr(f)} \u2192 ${nr(_)} tokens${P}`)}let h=Number(t.context_tokens),C=Number(t.context_budget);return h>0&&u.push(C>0?`working memory \u2248 ${nr(h)} of ${nr(C)} tokens`:`working memory \u2248 ${nr(h)} tokens`),u.join(" \xB7 ")}var KT=["summarizing","ready","applied","failed"];function f_(n){return String(n?.name||"").toLowerCase().replace(/^(_)?exec_/,"")==="compress_history"}function m_(n){let t=ot(n)||{},e=String(t.phase||"").toLowerCase();if(KT.includes(e))return e;let o=String(n?.status||"").toLowerCase();return o==="failed"?"failed":o==="success"?"applied":String(t.note||"").toLowerCase()==="held"?"ready":"summarizing"}function lv(n){switch(m_(n)){case"ready":return"\u6458\u8981\u5DF2\u5C31\u7EEA\uFF0C\u4E0A\u4E0B\u6587\u63A5\u8FD1\u5BB9\u91CF\u4E0A\u9650\u65F6\u66FF\u6362\u539F\u6587";case"applied":return"\u5DF2\u4F7F\u7528\u6458\u8981\u66FF\u6362\u6B64\u6BB5\u8BB0\u5F55";case"failed":return"\u6458\u8981\u5931\u8D25\uFF0C\u4FDD\u7559\u5B8C\u6574\u8BB0\u5F55";default:return"\u6B63\u5728\u603B\u7ED3\u6B64\u6BB5\u8BB0\u5F55"}}function dv(n){return f_(n)&&m_(n)==="ready"}function uv(n){if(!n||!n.name)return"settings";switch(n.name.toLowerCase().replace(/^(_)?exec_/,"")){case"click":case"tap":return"ads_click";case"click_sequence":case"long_press":return"touch_app";case"input_text":case"input":return"keyboard";case"swipe":return"swipe";case"press_key":return"keyboard_tab";case"manage_app":return"open_in_new";case"wait_for_delay":return"timer";case"wait_for_text":return"hourglass_empty";case"object_detection":return"search";case"ask_explorer":return"search";case"report_failure_analysis":return"assessment";case"run_adb_command":case"run_short_adb_command":return"terminal";case"web_search":return"travel_explore";case"read_url":return"language";case"search_logs":case"read_logs":case"log_analyzer":case"output_analyzer":return"receipt_long";case"diagnoser":case"diagnose":return"medical_services";case"video_analyzer":case"video_analyzer_pure":return"video_camera_back";case"extract_segment_metadata":return"crop";case"spawn_sub_agent":return"smart_toy";case"analyze_audio_only":return"graphic_eq";case"search_history":return"find_in_page";case"replay_steps":return"manage_search";case"get_step_screenshot":return"image_search";case"probe_device":return"sensors";case"outputter":case"output_synthesis":return"assignment_turned_in";case"compress_history":return"compress";default:return"build"}}function gv(n){if(!n||!n.name)return"\u5DE5\u5177\u8C03\u7528";let t=n.name.replace(/^(_)?exec_/,"");switch(t.toLowerCase()){case"click":case"tap":return"\u70B9\u51FB\u5143\u7D20";case"click_sequence":return"\u6267\u884C\u8FDE\u7EED\u70B9\u51FB";case"long_press":return"\u957F\u6309\u5143\u7D20";case"input_text":case"input":return"\u8F93\u5165\u6587\u672C";case"swipe":case"scroll":{let o=ot(n),i=o.direction||o.gesture||(typeof o.action=="string"?o.action:"");return i&&Vt(i)?`\u6ED1\u52A8\u5C4F\u5E55\uFF08${String(i).toUpperCase()})`:"\u6ED1\u52A8\u5C4F\u5E55"}case"drag":case"drag_and_drop":return"\u62D6\u52A8\u5C4F\u5E55";case"press_key":return"\u6309\u4E0B\u5B9E\u4F53\u6309\u952E";case"manage_app":case"launch_app":{let o=ot(n),i=o.action?String(o.action).toLowerCase():"";return i==="launch"?"\u542F\u52A8\u5E94\u7528":i==="stop"||i==="close"?"\u505C\u6B62\u5E94\u7528":"\u7BA1\u7406\u5E94\u7528"}case"wait_for_delay":case"wait_delay":return"\u7B49\u5F85";case"wait_for_text":return"\u7B49\u5F85\u6587\u672C";case"object_detection":return"\u5B9A\u4F4D\u5143\u7D20";case"ask_explorer":return"\u641C\u7D22\u5C4F\u5E55";case"report_failure_analysis":return"\u6392\u67E5\u95EE\u9898";case"run_adb_command":case"run_short_adb_command":return"\u8FD0\u884C\u7CFB\u7EDF\u547D\u4EE4";case"web_search":return"\u7F51\u9875\u641C\u7D22";case"read_url":return"\u8BFB\u53D6\u7F51\u9875";case"search_logs":case"read_logs":return"\u641C\u7D22\u65E5\u5FD7";case"log_analyzer":case"output_analyzer":return"\u5206\u6790\u65E5\u5FD7";case"diagnoser":case"diagnose":return"\u8BCA\u65AD\u95EE\u9898";case"video_analyzer":case"video_analyzer_pure":return"\u5206\u6790\u5C4F\u5E55\u5F55\u50CF";case"extract_segment_metadata":return"\u88C1\u526A\u5C4F\u5E55\u5F55\u50CF";case"spawn_sub_agent":return"\u59D4\u6D3E\u89C6\u9891\u5206\u6790";case"analyze_audio_only":return"\u5206\u6790\u97F3\u8F68";default:return t.replace(/_/g," ").replace(/\b\w/g,o=>o.toUpperCase())}}function __(n){return Array.isArray(n)?n.map(e=>e==null?"":String(e).trim()).filter(e=>e.length>0).join(" \u2192 "):""}function h_(n){if(!n||!n.name)return"";let t=ot(n),e=n.name.toLowerCase().replace(/^(_)?exec_/,"");if(e==="manage_app"||e==="launch_app"){let o=t.app_name||t.package_name||t.app||"",i=o?o.charAt(0).toUpperCase()+o.slice(1):"",r=t.action?String(t.action).toLowerCase():"",a=r?r.charAt(0).toUpperCase()+r.slice(1):"";return a&&i?`${a} ${i}`:i||a||""}if(e==="swipe"&&typeof t.action=="string"&&Vt(t.action))return t.action;if(e==="wait_for_text")return t.text||"";if(e==="object_detection")return Array.isArray(t.queries)?t.queries.join(", "):t.queries||"";if(e==="ask_explorer"||e==="web_search")return t.query||t.prompt||"";if(e==="read_url")return t.url||"";if(e==="search_logs"||e==="read_logs")return t.query||t.filter||"";if(e==="report_failure_analysis")return t.status||t.reason||t.analysis||"";if(e==="click_sequence"||e==="tap_sequence"){let o=__(t.target_descriptions);if(o)return o}return t.target&&typeof t.target=="string"?t.target:t.target&&typeof t.target=="number"?`Element #${t.target}`:t.index!==void 0?`Element #${t.index}`:t.target_text||t.target_description||t.target_class||t.element||t.element_text||(e!=="input_text"?t.text:"")||""}function pv(n){if(!n||!n.name)return"\u8F93\u5165";let t=n.name.toLowerCase().replace(/^(_)?exec_/,"");if(t==="wait_for_delay"||t==="wait_delay"||t==="delay"||t==="wait")return"\u8017\u65F6";if(t==="swipe"||t==="scroll"||t==="drag"||t==="drag_and_drop"){let e=ot(n),o=e.direction||e.gesture||(typeof e.action=="string"?e.action:"");return o&&Vt(o)?"\u65B9\u5411":"\u8F93\u5165"}return t==="press_key"||t==="press_home"||t==="press_back"?"\u6309\u952E":t==="input_text"||t==="input"?"\u8F93\u5165\u6587\u672C":"\u8F93\u5165"}function C_(n){if(!n||!n.name)return"";let t=ot(n),e=n.name.toLowerCase().replace(/^(_)?exec_/,"");if(e==="press_key")return t.key||t.keycode||"";if(e==="swipe"||e==="scroll"||e==="drag"||e==="drag_and_drop"){let o=t.direction||t.gesture||(typeof t.action=="string"?t.action:"");return o&&Vt(o)?String(o).toUpperCase():""}return e==="wait_for_delay"||e==="wait_delay"?t.time_in_ms?`${t.time_in_ms}ms`:t.delay_ms?`${t.delay_ms}ms`:t.time?`${t.time}`:"":e==="long_press"&&t.duration?`Duration: ${t.duration}ms`:e==="input_text"||e==="input"?t.text||t.input_text||"":t.input_text||""}function M_(n){if(!n||!n.name)return"";let t=ot(n),o=n.name.replace(/^(_)?exec_/,"").toLowerCase(),i=o==="click_sequence"||o==="tap_sequence"||!!(t.sequence||t.normalized_sequence),r=t.normalized_sequence||t.sequence||t.targets||(Array.isArray(t.coordinates)&&Array.isArray(t.coordinates[0])?t.coordinates:null),a=ua(r);if(a&&a.length>0&&(i||a.length>1))return a.map(f=>`[${f[0]}, ${f[1]}]`).join(" \u2192 ");let s=ae(t.normalized_start_coordinates||t.start_coordinates||t.start),c=ae(t.normalized_end_coordinates||t.end_coordinates||t.end);if(s&&c&&s.length===2&&c.length===2)return`[${s[0]}, ${s[1]}] \u2192 [${c[0]}, ${c[1]}]`;let u=ae(t.normalized_coordinates)||ae(t.coordinates)||ae(t.target)||ae(t.action)||ae(t.gesture)||ae(t.point);return u&&Array.isArray(u)?u.length===4?`[${u[0]}, ${u[1]}] \u2192 [${u[2]}, ${u[3]}]`:u.length===2?`[${u[0]}, ${u[1]}]`:u.join(", "):t.x!==void 0&&t.y!==void 0?`[${t.x}, ${t.y}]`:""}function b_(n){if(!n||!n.name)return"";let t=ot(n);return t.analysis||t.reasoning||t.summary||""}function P_(n){if(!n||!n.name)return!1;let t=n.name.toLowerCase().replace(/^(_)?exec_/,"");return t==="run_adb_command"||t==="run_short_adb_command"}function fv(n){return ot(n).CommandLine||""}function mv(n){return ot(n).Cwd||""}function _v(n){return ot(n).RequestedTerminalID||""}function hv(n){if(!n||P_(n)||h_(n)||C_(n)||M_(n)||b_(n))return"";let t=ot(n);if(!t||typeof t!="object")return"";let e=new Set(["state","controller","ctx","session_id","step_id","trace_id","parent_trace_id","times","delay_ms"]),o=Object.entries(t).filter(([i,r])=>!e.has(i)&&r!==void 0&&r!==null&&r!=="");return o.length===0?"":o.map(([i,r])=>`${i}: ${typeof r=="object"?JSON.stringify(r):r}`).join(", ")}function Cv(n){if(!n)return!1;if(n.status==="failed"||n.status==="error")return!0;let t=ot(n);return t.status==="failed"||t.status==="error"||t.status==="cannot_fix"}function Mv(n){if(!n)return"\u5DE5\u5177\u5931\u8D25";let t=ot(n);return t.status==="cannot_fix"?"Status: cannot_fix":t.error||t.message||t.failure_reason?t.error||t.message||t.failure_reason:n.error||n.message?n.error||n.message:"\u64CD\u4F5C\u5931\u8D25"}function bv(n,t){if(!n)return[];let e=n.payload||n.args||n;if(!e||typeof e!="object")return[];if(t&&t.has(e))return t.get(e);let o=new Set(["action","name","type","target_text","target_description","target_descriptions","text","input_text","target","coordinates","coords","target_bounds","bounds","target_resource_id","resource_id","target_class","class_name","normalized_coordinates","pre_image_name","post_image_name","pre_screenshot","post_screenshot","before_screenshot","after_screenshot","status","success","timestamp","created_at","start_time","execution_id","controller","agent","session_id","step_id","app_name","package_name","app","key","keycode","time_in_ms","delay_ms","delay_seconds","duration","args","kwargs","parameters","extra_params","payload","trace_id","result","error","analysis","details","command","cwd","terminal_id"]),i=[],r=n.args||n.Args||n.kwargs||n.parameters||n.payload,a={};if(r){if(typeof r=="object")a=r;else if(typeof r=="string")try{a=JSON.parse(r)}catch(c){!r.includes("<")&&!r.includes("object at")&&(a={details:r})}}let s=x(x(x({},n),typeof e=="object"?e:{}),a);for(let[c,u]of Object.entries(s)){let f=c.toLowerCase();if(o.has(f)||u==null||u==="")continue;let _=String(u);if(_.includes("object at 0x")||_.startsWith("C.toUpperCase());(f==="time_in_ms"||f==="delay_ms")&&(h="\u5EF6\u8FDF"),i.push({key:h,value:_})}return t&&t.set(e,i),i}function Pv(n){if(!n)return!1;let t=n.trim();if(!t)return!1;if(t.startsWith("```")){let e=t.match(/^```(?:json)?\s*([\s\S]*?)\s*```$/i);e&&(t=e[1].trim())}if(t.startsWith("{")||t.startsWith("["))return!1;try{let e=JSON.parse(t);if(typeof e=="object"&&e!==null)return!1}catch(e){}return!(/^\s*\{.*"label"\s*:.*"results"\s*:/s.test(t)||/^\s*\{.*"point"\s*:.*"label"\s*:/s.test(t)||/^\s*\{.*"action"\s*:/s.test(t)||/^\s*\{.*"name"\s*:/s.test(t)||/^\s*\{\s*"[^"]+"\s*:\s*/.test(t)||/^\s*\[\s*\{\s*"[^"]+"\s*:\s*/.test(t))}function ao(n){if(typeof n=="object"&&n!==null){if(n.message&&typeof n.message=="string")return ao(n.message);if(n.error?.message&&typeof n.error?.message=="string")return ao(n.error.message);if(n.detail&&typeof n.detail=="string")return ao(n.detail);try{return JSON.stringify(n)}catch(a){return String(n)}}let t=String(n).trim();if(!t)return"\u672A\u77E5\u9519\u8BEF";let e=t.match(/"message"\s*:\s*"((?:[^"\\]|\\.)*)"/i);if(e&&e[1]){let a=e[1].replace(/\\"/g,'"').replace(/\\n/g," ").trim();if(a)return a}let o=t.match(/'message'\s*:\s*['"]((?:[^'\\]|\\.)*)['"]/i);if(o&&o[1]){let a=o[1].replace(/\\'/g,"'").replace(/\\n/g," ").trim();if(a)return a}let i=t.match(/\{[\s\S]*\}/);if(i)try{let a=i[0].replace(/'/g,'"').replace(/True/g,"true").replace(/False/g,"false").replace(/None/g,"null"),s=JSON.parse(a);if(s?.message)return String(s.message);if(s?.error?.message)return String(s.error.message)}catch(a){}let r=t;return r.includes("=== Source Location Trace")&&(r=r.split("=== Source Location Trace")[0]),r.includes("[type.googleapis.com")&&(r=r.split("[type.googleapis.com")[0]),r=r.replace(/^Pre-execution validation failed:\s*/i,"").replace(/^Pixel-level validation failed:\s*/i,"").replace(/^Execution error:\s*/i,"").replace(/^ServerError:\s*/i,"").replace(/^(?:LLM\s+(?:Request\s+)?Error\s*:\s*)+/i,"").trim(),r||"\u672A\u77E5\u9519\u8BEF"}function Io(n){if(typeof n=="string"&&(n.trim().startsWith("{")||n.trim().startsWith("[")))try{return JSON.parse(n)}catch(t){return n}return n}var Ov=new WeakMap;function xe(n){if(!n)return null;if(Array.isArray(n))return n.length>0?xe(n[0]):null;if(typeof n=="object"){let t=Ov.get(n);if(t!==void 0)return t;let e=l_(n);return Ov.set(n,e),e}return n}function Kt(n){if(!n)return!1;let t="";if(typeof n=="string")t=n.toLowerCase();else{let e=xe(n);if(!e)return!1;t=(e.name||e.action||"").toLowerCase()}return["tap","click","click_sequence","input","input_text","swipe","scroll","press_key","press_home","press_back","launch_app","manage_app","open_app","focus_and_input_text","focus_and_clear_text","long_press","long_press_on","wait_for_delay","wait","drag","drag_and_drop"].includes(t)}function cn(n){if(!n)return!1;let t="";if(typeof n=="string")t=n.toLowerCase();else{let e=xe(n);if(!e)return!1;t=(e.name||e.action||"").toLowerCase()}return t=t.replace(/^(_)?(self\.)?exec_/,""),t==="report_task_status"||t==="report_status"||t==="submit_task_status"}function xv(n){let t=xe(n);if(!t)return"completed";let o=(t.args&&typeof t.args=="object"?t.args:t.payload?.args||t.payload||t).status||t.status;return typeof o=="string"?o.toLowerCase():"completed"}function vu(n){let t=xe(n);if(!t)return"";let e=t.args&&typeof t.args=="object"?t.args:t.payload?.args||t.payload||t;return e.explanation||e.reason||e.summary||t.explanation||t.reason||t.summary||""}function yu(n){let t=xe(n);if(!t)return"ads_click";switch((t.name||t.action||"").toLowerCase()){case"tap":case"click":case"click_sequence":return"ads_click";case"input":case"input_text":case"focus_and_input_text":return"keyboard";case"focus_and_clear_text":case"clear_text":return"backspace";case"swipe":case"scroll":return"swipe";case"drag":case"drag_and_drop":return"drag_indicator";case"press_key":case"press_home":case"press_back":return"keyboard_tab";case"launch_app":case"manage_app":case"open_app":return"open_in_new";case"long_press":case"long_press_on":return"touch_app";case"wait_for_delay":case"delay":case"wait":return"hourglass_empty";default:return"settings"}}function v_(n){let t=xe(n);if(!t)return"\u64CD\u4F5C";let e=(t.name||t.action||"").toLowerCase();switch(e){case"tap":case"click":case"tap_element":case"click_element":return"\u70B9\u51FB\u5143\u7D20";case"input":case"input_text":case"focus_and_input_text":return"\u8F93\u5165\u6587\u672C";case"focus_and_clear_text":case"clear_text":return"\u6E05\u7A7A\u6587\u672C";case"swipe":case"scroll":{let o=xe(n),i=o?.args&&typeof o.args=="object"?o.args:{},r=o?.direction||o?.gesture||i.direction||i.gesture||(typeof i.action=="string"?i.action:"")||(typeof o?.action=="string"&&o.action!==e?o.action:"");return r&&Vt(r)?`\u6ED1\u52A8\u5C4F\u5E55\uFF08${String(r).toUpperCase()})`:"\u6ED1\u52A8\u5C4F\u5E55"}case"drag":case"drag_and_drop":return"\u62D6\u52A8\u5C4F\u5E55";case"press_key":case"press_home":case"press_back":return"\u6309\u4E0B\u5B9E\u4F53\u6309\u952E";case"launch_app":case"open_app":return"\u542F\u52A8\u5E94\u7528";case"stop_app":case"close_app":return"\u505C\u6B62\u5E94\u7528";case"manage_app":{let o=xe(n),i=(o?.action||o?.args?.action||"").toLowerCase();return i==="launch"?"\u542F\u52A8\u5E94\u7528":i==="stop"||i==="close"?"\u505C\u6B62\u5E94\u7528":"\u7BA1\u7406\u5E94\u7528"}case"wait_for_delay":case"delay":case"wait":return"\u7B49\u5F85";case"long_press":case"long_press_on":return"\u957F\u6309\u5143\u7D20";case"click_sequence":return"\u8FDE\u7EED\u70B9\u51FB";default:return e.replace(/_/g," ").replace(/\b\w/g,o=>o.toUpperCase())}}function y_(n){let t=xe(n);if(!t)return"";let e=(t.name||t.action||"").toLowerCase(),o=t.args&&typeof t.args=="object"?t.args:{};if(e.includes("app")){let i=t.app_name||t.package_name||t.app||o.app_name||o.package_name||o.app||"",r=i?i.charAt(0).toUpperCase()+i.slice(1):"",a=t.action||o.action||"",s=a?String(a).charAt(0).toUpperCase()+String(a).slice(1).toLowerCase():"";return s&&r?`${s} ${r}`:r||s||""}if(e.includes("delay")||e.includes("wait")){let i=t.time_in_ms||t.delay_ms||t.delay_seconds||o.time_in_ms||o.delay_ms||o.delay_seconds||o.duration;if(i)return`${i}ms`}if(e==="click_sequence"||e==="tap_sequence"){let i=__(t.target_descriptions??o.target_descriptions);if(i)return i}return t.target_text||t.target_description||t.target_class||t.element_id||o.target_text||o.target_description||o.element_id||""}function wv(n){let t=xe(n);if(!t)return"\u8F93\u5165";let e=(t.name||t.action||"").toLowerCase();if(e.includes("delay")||e.includes("wait"))return"\u8017\u65F6";if(e==="swipe"||e==="scroll"||e==="drag"||e==="drag_and_drop"){let o=xe(n),i=o?.args&&typeof o.args=="object"?o.args:{},r=o?.direction||o?.gesture||i.direction||i.gesture||(typeof i.action=="string"?i.action:"")||(typeof o?.action=="string"&&o.action!==e?o.action:"");return r&&Vt(r)?"\u65B9\u5411":"\u8F93\u5165"}return e==="press_key"||e.includes("key")?"\u6309\u952E":e==="input_text"||e.includes("input")?"\u8F93\u5165\u6587\u672C":"\u8F93\u5165"}function Sv(n){let t=xe(n);if(!t)return"";let e=(t.name||t.action||"").toLowerCase(),o=t.args&&typeof t.args=="object"?t.args:{};if(e==="press_key"||e.includes("key"))return t.key||t.keycode||o.key||o.keycode||"";if(e==="swipe"||e==="scroll"||e==="drag"||e==="drag_and_drop"){let i=t.direction||t.gesture||o.direction||o.gesture||(typeof o.action=="string"?o.action:"")||(typeof t.action=="string"&&t.action!==e?t.action:"");return i&&Vt(i)?String(i).toUpperCase():""}if(e.includes("delay")||e.includes("wait")){let i=t.time_in_ms||t.delay_ms||t.delay_seconds||o.time_in_ms||o.delay_ms||o.delay_seconds||o.duration;if(i)return`${i}ms`}return t.text||t.input_text||o.text||o.input_text||""}function x_(n){let t=xe(n);if(!t)return"";let e=t.args&&typeof t.args=="object"?t.args:{},o=(t.name||t.action||"").toLowerCase(),i=o==="click_sequence"||o==="tap_sequence"||!!(t.sequence||e.sequence||t.normalized_sequence||e.normalized_sequence),r=t.normalized_sequence||e.normalized_sequence||t.sequence||e.sequence||t.targets||e.targets||(Array.isArray(t.coordinates)&&Array.isArray(t.coordinates[0])?t.coordinates:null)||(Array.isArray(e.coordinates)&&Array.isArray(e.coordinates[0])?e.coordinates:null),a=ua(r);if(a&&a.length>0&&(i||a.length>1))return a.map(C=>`[${C[0]}, ${C[1]}]`).join(" \u2192 ");let s=ae(t.normalized_start_coordinates||e.normalized_start_coordinates),c=ae(t.normalized_end_coordinates||e.normalized_end_coordinates);if(s&&c&&s.length===2&&c.length===2)return`[${s[0]}, ${s[1]}] \u2192 [${c[0]}, ${c[1]}]`;let u=ae(t.start_coordinates||t.start_point||t.start||t.from||e.start_coordinates||e.start_point||e.start||e.from),f=ae(t.end_coordinates||t.end_point||t.end||t.to||e.end_coordinates||e.end_point||e.end||e.to);if(u&&f&&u.length===2&&f.length===2)return`[${u[0]}, ${u[1]}] \u2192 [${f[0]}, ${f[1]}]`;let h=ae(t.normalized_coordinates||e.normalized_coordinates)||ae(t.coordinates)||ae(e.coordinates)||ae(t.coords)||ae(e.coords)||ae(t.target)||ae(e.target)||ae(e.action)||ae(t.action)||ae(e.gesture)||ae(t.gesture);return h&&Array.isArray(h)?h.length===4?`[${h[0]}, ${h[1]}] \u2192 [${h[2]}, ${h[3]}]`:h.length===2?`[${h[0]}, ${h[1]}]`:h.join(", "):""}function ZT(n){return!Array.isArray(n)||n.length===0?!1:String(n[n.length-1])!=="\u5DF2\u53D1\u9001"}function XT(n){if(!Array.isArray(n))return null;let t=n.filter(e=>String(e)!=="\u5DF2\u53D1\u9001");return t.length>0?String(t[t.length-1]):null}function xu(n,t){let e=xe(n);if(e&&(e.status==="failed"||e.status==="error"||e.success===!1))return!0;if(t){if(t.status==="failed"||t.status==="error")return!0;if(t.last_execution_result){let o=typeof t.last_execution_result=="string"?(()=>{try{return JSON.parse(t.last_execution_result)}catch(i){return null}})():t.last_execution_result;if(o&&typeof o=="object"){if(o.status==="failed"||o.status==="error"||o.success===!1||o.is_successful===!1||o.repair_status==="fixed"||o.repair_status==="failed"||o.repair_status==="cannot_fix")return!0;if(Array.isArray(o.execution)&&o.execution.length>0){let i=o.execution[0];if(i&&(i.status==="failed"||i.status==="error"||i.error||ZT(i.attempts)))return!0}}}}return!1}function kv(n,t){let e=xe(n);if(e&&(e.error||e.message||e.failure_reason))return ao(e.error||e.message||e.failure_reason);if(t&&t.last_execution_result){let o=typeof t.last_execution_result=="string"?(()=>{try{return JSON.parse(t.last_execution_result)}catch(i){return null}})():t.last_execution_result;if(o&&typeof o=="object"){if(Array.isArray(o.execution)&&o.execution.length>0){let i=o.execution[0];if(i){let r=XT(i.attempts);if(r)return ao(r);if(i.error||i.failure_reason||i.message)return ao(i.error||i.failure_reason||i.message)}}if(o.error||o.message||o.failure_reason)return ao(o.error||o.message||o.failure_reason)}}return"\u64CD\u4F5C\u5931\u8D25"}function Ev(n){let t=xe(n);if(!t)return"";let e=t.target_bounds||t.bounds||t.args&&(t.args.target_bounds||t.args.bounds);return Array.isArray(e)?e.join(", "):e?String(e):""}function Dv(n){let t=xe(n);return t&&(t.target_resource_id||t.resource_id||t.args&&(t.args.target_resource_id||t.args.resource_id))||""}function Iv(n){let t=xe(n);return t&&(t.target_class||t.class_name||t.args&&(t.args.target_class||t.args.class_name))||""}function Tv(n,t){let e=xe(n);if(!e||typeof e!="object")return[];if(t&&t.has(e))return t.get(e);let o=new Set(["action","name","type","target_text","target_description","target_descriptions","text","input_text","target","coordinates","coords","target_bounds","bounds","target_resource_id","resource_id","target_class","class_name","normalized_coordinates","normalized_start_coordinates","normalized_end_coordinates","start_coordinates","end_coordinates","start","end","from","to","pre_image_name","post_image_name","pre_screenshot","post_screenshot","before_screenshot","after_screenshot","status","success","timestamp","created_at","start_time","execution_id","controller","agent","session_id","step_id","app_name","package_name","app","key","keycode","time_in_ms","delay_ms","delay_seconds","duration","args","kwargs","parameters","extra_params","direction","gesture"]),i=[],r=e.args||e.Args||e.kwargs||e.parameters,a={};if(r){if(typeof r=="object")a=r;else if(typeof r=="string")try{a=JSON.parse(r)}catch(u){!r.includes("<")&&!r.includes("object at")&&(a={details:r})}}let s=x(x({},e),a),c=s.duration||s.duration_ms;c!=null&&c!==""&&i.push({key:"\u8017\u65F6",value:typeof c=="number"?`${c}ms`:String(c)});for(let[u,f]of Object.entries(s)){let _=u.toLowerCase();if(o.has(_)||f==null||f==="")continue;let h=String(f);if(h.includes("object at 0x")||h.startsWith("O.toUpperCase());(_==="time_in_ms"||_==="delay_ms")&&(C="\u5EF6\u8FDF"),i.push({key:C,value:h})}return t&&t.set(e,i),i}function O_(n){if(!n||n==="None"||n==="null"||n==="undefined"||typeof n!="string")return null;let t=n.trim();return!t||t==="None"||t==="null"||t==="undefined"?null:t.startsWith("data:")||t.startsWith("http://")||t.startsWith("https://")||t.startsWith("/local_file")||t.startsWith("/images/")||t.startsWith("/api/images/")?t:t.startsWith("file://")?`/local_file?path=${encodeURIComponent(t)}`:t.startsWith("/")?`/local_file?path=${encodeURIComponent("file://"+t)}`:`/images/${t}`}function QT(n,t){return!n||n===t?.action_taken||Array.isArray(t?.action_taken)&&(t.action_taken===n||t.action_taken.includes(n))||n.is_primary_step_action||n.type==="action"||Kt(n)?!1:!!(n.trace_id||n.payload||n.type==="tool")}var vv=new WeakMap;function Av(n){let t=xe(n);if(!t)return null;let e=Io(t.payload),o=Io(t.result||e?.result),i=Io(t.args||e?.args),r=o?.pre_image_name||o?.pre_screenshot_name||o?.pre_screenshot||e?.pre_image_name||e?.pre_screenshot_name||e?.pre_screenshot||i?.pre_image_name||i?.pre_screenshot_name||i?.pre_screenshot||t.pre_image_name||t.pre_screenshot_name||t.pre_screenshot||t.before_screenshot||t.screenshot;return r?String(r):null}function Ou(n){let t=xe(n);if(!t)return null;let e=Io(t.payload),o=Io(t.result||e?.result),i=Io(t.args||e?.args),r=o?.post_image_name||o?.post_screenshot_name||o?.post_screenshot||e?.post_image_name||e?.post_screenshot_name||e?.post_screenshot||i?.post_image_name||i?.post_screenshot_name||i?.post_screenshot||t.post_image_name||t.post_screenshot_name||t.post_screenshot||t.after_screenshot;return r?String(r):null}function JT(n){if(!n)return null;if(n.failed_screenshot)return String(n.failed_screenshot);if(n.failure_screenshot)return String(n.failure_screenshot);if(n.failed_post_image_name)return String(n.failed_post_image_name);if(Array.isArray(n.generic_tools))for(let t of n.generic_tools){let e=xe(t),o=Io(e?.payload),i=Io(e?.args||o?.args),r=String(e?.name||e?.agent_name||"").toLowerCase();if(i?.post_screenshot_name)return String(i.post_screenshot_name);if(i?.post_screenshot&&(r.includes("failure")||r.includes("validator")||r.includes("diagnos")))return String(i.post_screenshot);if(e?.post_screenshot_name&&(r.includes("failure")||r.includes("validator")))return String(e.post_screenshot_name)}return null}function yv(n){if(!n)return 0;let t=n.timestamp??n.start_time??n.created_at;if(typeof t=="number")return t<1e11?t*1e3:t;if(typeof t=="string"){let e=new Date(t).getTime();if(!isNaN(e)&&e>0)return e}return 0}function eA(n){let t=new Map;if(!n||typeof n!="object")return t;let e=Array.isArray(n.generic_tools)?n.generic_tools.length:0,o=Array.isArray(n.generic_tools)?n.generic_tools.map(P=>`${P?.trace_id||""}:${P?.post_image_name||P?.post_screenshot||""}`).join(","):"",i=`${n.step_id||""}_${e}_${o}_${n.post_image_name||""}_${n.pre_image_name||""}`,r=vv.get(n);if(r&&r.key===i)return r.map;let a=new Map,s=[];!(Array.isArray(n.generic_tools)&&n.generic_tools.some(P=>P&&(P.type==="action"||Kt(P)||cn(P))))&&n.action_taken&&s.push({item:n.action_taken,act:xe(n.action_taken),timestamp:yv(n.action_taken),isPrimary:!0}),Array.isArray(n.generic_tools)&&n.generic_tools.forEach(P=>{if(P){let T=P.type==="action"||Kt(P)||cn(P);s.push({item:P,act:xe(P),timestamp:yv(P),isPrimary:T})}}),s.sort((P,T)=>P.timestamp-T.timestamp);let u=JT(n),f=!!u||n.action_taken&&xu(n.action_taken,n),_=s.some(P=>!P.isPrimary&&(Kt(P.act)||!!Ou(P.act))),h=null;for(let P=s.length-1;P>=0;P--){let T=s[P];if(Kt(T.act)||Ou(T.act)||T.isPrimary){h=T.item;break}}let C=n.pre_image_name||n.pre_screenshot||null,O=!1;for(let P of s){let T=P.act,R=Av(T),D=Ou(T),H=String(T?.agent_name||T?.agent||Io(T?.payload)?.agent_name||T?.name||"").toLowerCase(),ue=H.includes("failure")||H.includes("analyzer")||H.includes("validator")||H.includes("diagnos");u&&!O&&(ue||!P.isPrimary&&f)&&(C=u,O=!0);let J=R||C,X=null,q=!1;D?(X=D,q=!0):(P.isPrimary&&!f||P.item===h&&!f||P.item===h&&ue)&&(X=n.post_image_name||n.post_screenshot||null),X&&(C=X);let he={pre:J,post:X,hasExplicitPost:q};a.set(P.item,he),T&&T!==P.item&&a.set(T,he),T?.trace_id&&a.set(T.trace_id,he),P.item?.trace_id&&a.set(P.item.trace_id,he)}if(n.action_taken&&h){let P=a.get(h);if(P){a.set(n.action_taken,P);let T=xe(n.action_taken);T&&T!==n.action_taken&&a.set(T,P)}}return vv.set(n,{key:i,map:a}),a}function Rv(n,t){let e=eA(n);if(!t)return{pre:n?.pre_image_name||n?.pre_screenshot||null,post:n?.post_image_name||n?.post_screenshot||null,hasExplicitPost:!!(n?.post_image_name||n?.post_screenshot)};let o=xe(t);if(e.has(t))return e.get(t);if(o&&e.has(o))return e.get(o);if(o?.trace_id&&e.has(o.trace_id))return e.get(o.trace_id);let i=Av(o),r=Ou(o),a=i||n?.pre_image_name||n?.pre_screenshot||null,s=r||(QT(t,n)?null:n?.post_image_name||n?.post_screenshot||null);return{pre:a,post:s,hasExplicitPost:!!r}}function w_(n,t){let e=Rv(n,t);return O_(e.pre)}function S_(n,t){let e=Rv(n,t),o=O_(e.post),i=O_(e.pre);return o&&i&&o===i&&!e.hasExplicitPost?null:o}function Fv(n){if(!Array.isArray(n)||n.length===0)return[];let t=[];for(let s of n)s&&((s.type==="step_updated"||s.type==="step_recorded"||s.type==="step")&&s.data?t.push(s.data):(s.step_number!==void 0||s.step_id!==void 0)&&t.push(s));let e=[],o=new Map,i=new Map;for(let s of t){let c=s.step_id!==void 0&&s.step_id!==null&&String(s.step_id).trim()!==""?String(s.step_id).trim():null,u=s.step_number!==void 0&&s.step_number!==null?Number(s.step_number):null,f=-1;if(c&&o.has(c)?f=o.get(c):u!==null&&i.has(u)&&(f=i.get(u)),f>=0){let _=e[f],h=_.action_taken,C=s.action_taken,O=h&&Kt(h)&&cn(C),P=C&&Kt(C)&&cn(h),T=u!==null?u:_.step_number,R=_.step_id||s.step_id,D=F(x(x({},_),s),{step_id:R,step_number:T,pre_image_name:O?_.pre_image_name:s.pre_image_name||_.pre_image_name,post_image_name:O?_.post_image_name||s.post_image_name:s.post_image_name||_.post_image_name,pre_screenshot:O?_.pre_screenshot:s.pre_screenshot||_.pre_screenshot,post_screenshot:O?_.post_screenshot||s.post_screenshot:s.post_screenshot||_.post_screenshot,action_taken:O?_.action_taken:P?C:s.action_taken||_.action_taken,last_execution_result:s.last_execution_result||_.last_execution_result,summary:O?_.summary||s.summary:s.summary||_.summary,operator_raw_thinking:s.operator_raw_thinking||_.operator_raw_thinking,operator_native_thinking:s.operator_native_thinking||_.operator_native_thinking,generic_tools:s.generic_tools||_.generic_tools,timestamp:_.timestamp||s.timestamp});e[f]=D,R&&o.set(String(R),f),T!=null&&i.set(Number(T),f)}else{let _=e.length;e.push(x({},s)),c&&o.set(c,_),u!==null&&i.set(u,_)}}let r=[];for(let s of e){let c=s.action_taken||(Array.isArray(s.generic_tools)?s.generic_tools.find(h=>h&&(h.type==="action"||Kt(h))):null),u=w_(s,c),f=S_(s,c),_=u||f;_&&r.push({stepData:s,act:c,preUrl:u,postUrl:f,primaryImg:_})}r.sort((s,c)=>{let u=Number(s.stepData.step_number??99999),f=Number(c.stepData.step_number??99999);return u!==f?u-f:Number(s.stepData.timestamp??0)-Number(c.stepData.timestamp??0)});let a=[];for(let s=0;s0)return e}return t}function Nv(n,t){if(!t)return-1;let e=String(t);return n.findIndex(o=>o.type==="checker"&&o.data?.trace_id&&String(o.data.trace_id)===e)}function tA(n){for(let t=n.length-1;t>=0;t--)if(n[t].type==="checker"&&n[t].data?.isCompleted===!1)return t;return-1}function Bv(n){if(!n||!Array.isArray(n.segments))return[];let t=[];for(let e of n.segments){if(!e||typeof e.text!="string"||!e.text)continue;let o=typeof e.when=="number"&&e.when>0?e.when:n.ts||0;t.push({execution_id:String(e.execution_id||""),stream_type:e.role==="thought"?"thinking":"text",text:e.text,timestamp:new Date(o*1e3).toISOString(),isCompleted:!0})}return t}function Lv(n){return`${n.execution_id}|${n.stream_type}`}function nA(n,t){let e=Array.isArray(n)?[...n]:[],o=Array.isArray(t)?t:[];if(o.length===0)return e.length>0?e:void 0;let i=new Set(e.map(Lv)),r=!1;for(let a of o){let s=Lv(a);i.has(s)||(i.add(s),e.push(a),r=!0)}return r&&e.sort((a,s)=>ri(a.timestamp,0)-ri(s.timestamp,0)),e}function jv(n,t){let e=a=>t.filter(s=>s.stream_type===a&&s.text.trim()),o=a=>e(a).map(s=>s.text).join(` `);n.operator_native_thinking=o("thinking"),n.operator_raw_thinking=o("text");let i=e("thinking")[0],r=e("text")[0];i&&!n.operator_native_thinking_timestamp&&(n.operator_native_thinking_timestamp=i.timestamp),r&&!n.operator_raw_thinking_timestamp&&(n.operator_raw_thinking_timestamp=r.timestamp)}function oA(n,t){let e=t.data||{};if(!e.event)return;if(e.event==="run_outcome"){let s="checker-outcome",c=n.findIndex(_=>_.id===s),u=F(x(x({},c>-1?n[c].data:{}),e),{phase:"outcome",status:"done",isCompleted:!0,generic_tools:[]}),f={id:s,type:"checker",timestamp:t.timestamp,data:u};c>-1?n[c]=f:n.push(f);return}if(!e.attempt_id)return;let o=`checker-${e.attempt_id}`,i=n.findIndex(s=>s.id===o),r=i>-1?n[i]:null,a=typeof e.ts=="number"?e.ts:t.timestamp?new Date(t.timestamp).getTime()/1e3:void 0;if(e.event==="attempt_started"){let s=F(x(x({},r?.data||{}),e),{status:r?.data?.isCompleted?r.data.status:"running",isCompleted:r?.data?.isCompleted??!1,started_at:r?.data?.started_at??a,verdicts:r?.data?.verdicts||[],findings:r?.data?.findings||[],generic_tools:r?.data?.generic_tools||[]}),c={id:o,type:"checker",timestamp:r?.timestamp||t.timestamp,data:s};r?n[i]=c:n.push(c);return}if(e.event==="attempt_finished"){let s=r?.data?.started_at??a,c=Array.isArray(e.verdicts)?e.verdicts:r?.data?.verdicts||[],u=r?.data?.items?.length?r.data.items:c.map(C=>({kind:C.kind,text:C.item_text,when:C.when})),f=nA(r?.data?.stream_segments,e.stream_segments),_=F(x(x({},r?.data||{}),e),{status:e.status||"done",verdicts:c,items:u,findings:Array.isArray(e.findings)?e.findings:r?.data?.findings||[],generic_tools:r?.data?.generic_tools||[],stream_segments:f,started_at:s,finished_at:a,duration:s!==void 0&&a!==void 0?Math.max(0,a-s):void 0,isCompleted:!0});f&&jv(_,f);let h={id:o,type:"checker",timestamp:r?.timestamp||t.timestamp,data:_};r?n[i]=h:n.push(h)}}function iA(n){let t=new Map;n.forEach((e,o)=>{e.type==="checker"&&e.data?.trace_id&&t.set(String(e.data.trace_id),o)}),t.size!==0&&n.forEach((e,o)=>{if(e.type==="checker")return;let i=e.data?.generic_tools||[];if(i.length===0)return;let r=[],a=!1;for(let s of i){let c=s?.trace_id?String(s.trace_id):"",u=s?.parent_trace_id?String(s.parent_trace_id):"";if(c&&t.has(c)&&s?.type==="agent"){a=!0;continue}let f=u?t.get(u):void 0;if(f===void 0){r.push(s);continue}let _=n[f],h=_.data.generic_tools||[];h.some(C=>C.trace_id&&C.trace_id===s.trace_id)||(n[f]=F(x({},_),{data:F(x({},_.data),{generic_tools:[...h,s]})})),a=!0}a&&(n[o]=F(x({},e),{data:F(x({},e.data),{generic_tools:r})}))})}function k_(n){return n?.type==="log"&&n?.name==="hierarchy_backend"&&!!n?.payload?.previous_backend}function zv(n){if(!n||n.length===0)return[];let t=[];return n.forEach(e=>{if(e){if(e.type==="checker_event"){oA(t,e);return}if(e.type==="llm_stream"){let o=e.data?.execution_id||e.id,i=e.data?.step_id,r=e.data?.stream_type||"text",a=e.data?.text||"",s=e.data?.isCompleted??!1,c=e.data?.isReset??!1,u=e.data?.resetMessage,f=Nv(t,e.data?.parent_trace_id);if(f>-1){let h=t[f],C=x({},h.data),O=Array.isArray(C.stream_segments)?[...C.stream_segments]:[],P=O.findIndex(R=>R.execution_id===o&&R.stream_type===r),T={execution_id:o,stream_type:r==="thinking"?"thinking":"text",text:a,timestamp:P>-1?O[P].timestamp:e.timestamp,isCompleted:s,isReset:c,resetMessage:u};P>-1?O[P]=T:O.push(T),C.stream_segments=O,r==="thinking"?C.operator_native_thinking_timestamp=C.operator_native_thinking_timestamp||e.timestamp:C.operator_raw_thinking_timestamp=C.operator_raw_thinking_timestamp||e.timestamp,jv(C,O),o&&!C.execution_id&&(C.execution_id=o),t[f]=F(x({},h),{data:C});return}let _=-1;if(i&&(_=t.findIndex(h=>h.id===`step-${i}`||h.data?.step_id===i)),_===-1&&o&&(_=t.findIndex(h=>h.data?.execution_id===o||h.id===`stream-${o}`)),_===-1&&!i&&(_=t.findIndex(h=>h.type==="llm_stream"&&h.data?.isReset)),_>-1){let h=t[_],C=x({},h.data),O=Array.isArray(C.stream_resets)?[...C.stream_resets]:[];if(c){C.isReset=!0,C.resetMessage=u;let P=u||Do,T=o||`reset-${e.timestamp||C.step_id||"stream"}`,R=O.findIndex(D=>D.id===T);R>-1?O[R]={id:T,message:P,isWaiting:!0,streamType:r}:O.push({id:T,message:P,isWaiting:!0,streamType:r}),C.stream_resets=O}else o&&C.execution_id!==o?(C.stream_resets=O.map(P=>F(x({},P),{isWaiting:!1})),C.isReset=!1,C.resetMessage=void 0,C.execution_id=o):!c&&a&&a.length>0&&O.some(P=>P.isWaiting)&&(C.stream_resets=O.map(P=>F(x({},P),{isWaiting:!1})),C.isReset=!1,C.resetMessage=void 0);r==="thinking"?(C.operator_native_thinking=a,C.operator_native_thinking_timestamp=C.operator_native_thinking_timestamp||e.timestamp):(C.operator_raw_thinking=a,C.operator_raw_thinking_timestamp=C.operator_raw_thinking_timestamp||e.timestamp),i&&!C.step_id&&(C.step_id=i),o&&!C.execution_id&&(C.execution_id=o),C.isCompleted=s,s&&C.stream_resets&&(C.stream_resets=C.stream_resets.map(P=>F(x({},P),{isWaiting:!1}))),t[_]=F(x({},h),{data:C})}else{let h=i?`step-${i}`:`stream-${o}`,C={execution_id:o,step_id:i,isCompleted:s,isReset:c,resetMessage:u,stream_resets:c?[{id:o||`reset-${e.timestamp||i||"stream"}`,message:u||Do,isWaiting:!0,streamType:r}]:[],generic_tools:[]};r==="thinking"?(C.operator_native_thinking=a,C.operator_native_thinking_timestamp=e.timestamp):(C.operator_raw_thinking=a,C.operator_raw_thinking_timestamp=e.timestamp),t.push({id:h,type:i?"step":"llm_stream",timestamp:e.timestamp,data:C})}}else if(e.type==="step_recorded"||e.type==="step_updated"){let o=e.data.step_id||e.data.step_number||"unknown",i=t.findIndex(r=>r.id===`step-${o}`||r.data?.step_id===o);if(i>-1){let r=t[i],a=r.data.generic_tools||[],s=e.data.generic_tools||[],c=[...a];s.forEach(f=>{let _=c.findIndex(h=>h.trace_id&&f.trace_id&&h.trace_id===f.trace_id);_>-1?c[_]=x(x({},c[_]),f):c.push(f)});let u=F(x(x({},r.data),e.data),{operator_native_thinking:e.data.operator_native_thinking||r.data.operator_native_thinking||void 0,operator_raw_thinking:e.data.operator_raw_thinking||r.data.operator_raw_thinking||void 0,operator_native_thinking_timestamp:r.data.operator_native_thinking_timestamp||e.data.operator_native_thinking_timestamp||(e.data.operator_native_thinking?e.timestamp:void 0),operator_raw_thinking_timestamp:r.data.operator_raw_thinking_timestamp||e.data.operator_raw_thinking_timestamp||(e.data.operator_raw_thinking?e.timestamp:void 0),action_taken:e.data.action_taken||r.data.action_taken||void 0,last_execution_result:e.data.last_execution_result||r.data.last_execution_result||void 0,generic_tools:c,isCompleted:!0});u.stream_resets&&(u.stream_resets=u.stream_resets.map(f=>F(x({},f),{isWaiting:!1}))),t[i]=F(x({},r),{id:`step-${o}`,type:"step",timestamp:r.timestamp||e.timestamp,data:u})}else t.push({id:`step-${o}`,type:"step",timestamp:e.timestamp,data:F(x({},e.data),{isCompleted:!0,operator_native_thinking_timestamp:e.data.operator_native_thinking_timestamp||(e.data.operator_native_thinking?e.timestamp:void 0),operator_raw_thinking_timestamp:e.data.operator_raw_thinking_timestamp||(e.data.operator_raw_thinking?e.timestamp:void 0),generic_tools:e.data.generic_tools||[]})})}else if(e.type==="trace_recorded"){let o=e.data.type==="action",i=e.data.type==="tool"||o,r=e.data.type==="llm_call"&&(e.data.status==="failed"||e.data.status==="retrying");if(!i&&!r&&!k_(e.data))return;let a=e.data.step_id,s=-1,c=Nv(t,e.data.parent_trace_id);if(c===-1&&String(e.data.agent_name||"").toLowerCase()==="checker"&&(c=tA(t)),c>-1&&(s=c),s===-1&&e.data.trace_id&&(s=t.findIndex(u=>u.data?.generic_tools?.some(f=>f.trace_id===e.data.trace_id))),s===-1&&a&&(s=t.findIndex(u=>u.id===`step-${a}`||u.data?.step_id===a)),s===-1&&!a&&(s=t.findIndex(u=>u.id==="step-pre-planning"||u.data?.step_id==="pre-planning")),s===-1&&!a){let u=e.timestamp?new Date(e.timestamp).getTime():0,f=-1;for(let _=0;_=f&&(f=C,s=_)}}if(s>-1){let u=t[s].data,f=u.generic_tools?[...u.generic_tools]:[],_=e.data.trace_id?f.findIndex(h=>h.trace_id===e.data.trace_id):-1;_>-1?f[_]=x(x({},f[_]),e.data):f.push(e.data),t[s]=F(x({},t[s]),{data:F(x({},u),{generic_tools:f})})}else{let u=a||"pre-planning";t.push({id:`step-${u}`,type:"step",timestamp:e.timestamp,data:{step_id:u,isCompleted:!0,generic_tools:[e.data]}})}}}}),iA(t),t.sort((e,o)=>{let i=e.timestamp?new Date(e.timestamp).getTime():0,r=o.timestamp?new Date(o.timestamp).getTime():0;if(Math.abs(i-r)>50)return i-r;let a=u=>u.data?.step_number!==void 0&&u.data.step_number!==null?Number(u.data.step_number):u.data?.step_id==="pre-planning"||u.data?.step_type==="planning"?0:99999,s=a(e),c=a(o);return s!==c&&s!==99999&&c!==99999?s-c:i-r}),t}var Vv=new WeakMap;function rA(n){if(typeof n=="string")return{isImage:n.includes("data:image/")||n.includes("base64,"),length:n.length};if(n===null||typeof n!="object")return{isImage:!1,length:String(n).length};let t=Vv.get(n);if(t)return t;let e="";try{e=JSON.stringify(n)||""}catch(i){e=String(n)}let o={isImage:e.includes("data:image/")||e.includes("base64,"),length:e.length};return Vv.set(n,o),o}function aA(n){if(!n||!n.data)return{total:0,prompt:0,completion:0};let t=n.data;if(t.total_tokens!==void 0&&t.total_tokens!==null&&Number(t.total_tokens)>0){let s=t.token_usage?.prompt_tokens||t.token_usage?.input_tokens||0,c=t.token_usage?.completion_tokens||t.token_usage?.output_tokens||0;return{total:Number(t.total_tokens),prompt:Number(s),completion:Number(c)}}if(t.token_usage&&typeof t.token_usage=="object"){let s=t.token_usage.prompt_tokens||t.token_usage.input_tokens||0,c=t.token_usage.completion_tokens||t.token_usage.output_tokens||0,u=t.token_usage.total_tokens||s+c;if(u>0)return{total:Number(u),prompt:Number(s),completion:Number(c)}}if(t.extra_metadata?.token_usage&&typeof t.extra_metadata.token_usage=="object"){let s=t.extra_metadata.token_usage,c=s.prompt_tokens||s.prompt_token_count||s.input_tokens||0,u=s.completion_tokens||s.candidates_token_count||s.output_tokens||0,f=s.total_tokens||s.total_token_count||c+u;if(f>0)return{total:Number(f),prompt:Number(c),completion:Number(u)}}let e=0,o=0,i=0;if(t.generic_tools&&Array.isArray(t.generic_tools)&&t.generic_tools.forEach(s=>{if(s&&s.payload){let c=s.payload.token_usage||s.payload.usage_metadata;if(c){let u=c.prompt_tokens||c.prompt_token_count||c.input_tokens||0,f=c.completion_tokens||c.candidates_token_count||c.output_tokens||0,_=c.total_tokens||c.total_token_count||u+f;e+=Number(u),o+=Number(f),i+=Number(_)}}}),i>0)return{total:i,prompt:e,completion:o};let r=0,a=0;if(t.operator_native_thinking&&(r+=t.operator_native_thinking.length),t.operator_raw_thinking&&(r+=t.operator_raw_thinking.length),t.generic_tools&&Array.isArray(t.generic_tools)&&t.generic_tools.forEach(s=>{if(s.payload){let c=rA(s.payload);c.isImage?a+=1:r+=c.length}}),r>20||a>0){let s=Math.round(r/4)+a*258;return{total:s,prompt:0,completion:s}}return{total:0,prompt:0,completion:0}}function $v(n){return!n||n<=0?"0 tokens":n<1e3?`${n} tokens`:n<1e6?`${(n/1e3).toFixed(1).replace(/\.0$/,"")}k tokens`:`${(n/1e6).toFixed(2).replace(/\.?0+$/,"")}M tokens`}function Hv(n,t){if(!n||n.length===0)return[];let e=[],o=t?t*1e3:0;return n.forEach((i,r)=>{let a=i.timestamp?new Date(i.timestamp).getTime():Date.now();o===0&&a>0&&(o=a);let s=0;i.data?.duration&&typeof i.data.duration=="number"&&i.data.duration>0?s=Math.max(1,Math.round(i.data.duration)):a>=o&&o>0?s=Math.max(1,Math.round((a-o)/1e3)):s=1;let c=aA(i);e.push({id:`phase-${i.id||r}`,durationSeconds:s,tokens:c.total>0?c.total:void 0,promptTokens:c.prompt>0?c.prompt:void 0,completionTokens:c.completion>0?c.completion:void 0,blocks:[i]}),o=a}),e}function Uv(n,t){if(!n||typeof n!="object")return[];let e=n.generic_tools?n.generic_tools.length:0,o=n.generic_tools&&Array.isArray(n.generic_tools)?n.generic_tools.map(P=>`${P?.trace_id||P?.name||""}:${P?.status||""}`).join(","):"",i=n.action_taken?n.action_taken.timestamp||n.action_taken.start_time||n.action_taken.created_at:null,r=typeof n.operator_native_thinking=="string"?n.operator_native_thinking.trim():"",a=typeof n.operator_raw_thinking=="string"?n.operator_raw_thinking.trim():"",s=Array.isArray(n.stream_segments)&&n.stream_segments.length>0?n.stream_segments:null,c=[e,o,i??"",n.operator_native_thinking_timestamp??"",n.operator_raw_thinking_timestamp??"",r.length,a.length,n.isReset?"1":"0",n.resetMessage??"",n.stream_resets?n.stream_resets.map(P=>`${P.id}:${P.isWaiting?1:0}`).join(","):"",s?s.map(P=>`${P.execution_id}:${P.stream_type}:${P.text.length}`).join(","):""].join("|");if(t){let P=t.get(n);if(P?.signature===c)return P.events}let u=[],f=ri(n.timestamp,0),_=0;if(s)s.forEach(P=>{(!P.text||!P.text.trim())&&!P.isReset||u.push({type:P.stream_type==="thinking"?"thinking":"text",data:{text:P.text,execution_id:P.execution_id,segment:!0,isReset:P.isReset,resetMessage:P.resetMessage},timestamp:ri(P.timestamp,f),sequence:_++})});else{let P=Array.isArray(n.stream_resets)&&n.stream_resets.some(T=>T.streamType==="thinking");(r||P)&&u.push({type:"thinking",data:{text:n.operator_native_thinking||""},timestamp:ri(n.operator_native_thinking_timestamp,f),sequence:_++}),(a||n.isReset&&n.resetMessage||Array.isArray(n.stream_resets)&&n.stream_resets.length>0)&&u.push({type:"text",data:{text:n.operator_raw_thinking||"",isReset:n.isReset,resetMessage:n.resetMessage},timestamp:ri(n.operator_raw_thinking_timestamp,f),sequence:_++})}let h=Pu(n.generic_tools);if(!h.some(P=>P&&(P.type==="action"||Kt(P)||cn(P)))&&n.action_taken&&(Kt(n.action_taken)||cn(n.action_taken))){let P=xe(n.action_taken),T=ri(P?.timestamp??P?.start_time??P?.created_at,f);u.push({type:"action",data:n.action_taken,timestamp:T,sequence:_++})}h.forEach(P=>{if(p_(P)&&!cn(P))return;let T=P.type==="action"||Kt(P)||cn(P),R=ri(P.timestamp??P.start_time??P.created_at,f);u.push({type:T?"action":"tool",data:P,timestamp:R,sequence:_++})}),u.sort((P,T)=>P.timestamp-T.timestamp||P.sequence-T.sequence);let O=u.map(P=>({type:P.type,data:P.data,timestamp:P.timestamp}));return t&&t.set(n,{signature:c,events:O}),O}function Wv(n){if(!n||n.length===0)return"\u6682\u65E0\u65E5\u5FD7\u3002";for(let t=n.length-1;t>=0;t--){let e=n[t];if(e.type==="session_ended"&&(e.data?.status==="cancelled"||e.data?.was_stopped_manually))return"\u4EFB\u52A1\u5DF2\u624B\u52A8\u505C\u6B62\u3002";if(e.type==="llm_stream"&&e.data?.text){let o=e.data.text;if(o.includes("```json")&&o.includes('"success"'))return"\u4EFB\u52A1\u5DF2\u6267\u884C\u5B8C\u6210\uFF0C\u5E76\u901A\u8FC7\u68C0\u67E5\u3002"}if(e.type==="step_recorded"||e.type==="step_updated"){let o=e.data?.action_taken;if(o&&cn(o)){let i=vu(o);if(i)return i}if(e.data?.status==="completed")return e.data.message||"\u4EFB\u52A1\u5DF2\u6210\u529F\u5B8C\u6210\u3002"}}return"\u4F1A\u8BDD\u6B63\u5728\u6267\u884C\u6216\u5DF2\u7ED3\u675F\u3002"}function Gv(n,t){if(!n||!t||t.length===0)return 0;let e=n*1e3,o=t[t.length-1],i=o?.timestamp?new Date(o.timestamp).getTime():Date.now();return Math.max(0,Math.round((i-e)/1e3))}function qv(n,t,e=!0){if(!t||!e)return!1;if(!n||n.length===0)return!0;for(let i=n.length-1;i>=Math.max(0,n.length-3);i--){let r=n[i];if(r.type==="session_ended")return!1;if(r.type==="step_recorded"||r.type==="step_updated"){let a=r.data?.action_taken;if(a&&(a.action==="report_task_status"||a==="report_task_status"||cn(a))||r.data?.status==="completed"||r.data?.status==="failed")return!1}}return!n.some(i=>i&&i.type==="llm_stream"&&i.data&&i.data.isCompleted===!1)}var E_="artemis.sessions.v1",Zt=class n{http=v(Mn);zone=v(ce);activePauseCardKey=null;rawSessions=w([]);pendingQueue=w([]);activeTasks=w([]);activeSessionTracking=new Map;sessions=A(()=>{let t=this.rawSessions(),e=this.pendingQueue(),o=this.agentStatus(),i=this.runningGoal(),r=this.runningSessionId(),a=this.activeTasks(),s=new Map,c=new Map(e.map(f=>[f.session_id,f])),u=new Map(a.map(f=>[f.session_id,f]));if(t.forEach(f=>{let _=u.get(f.session_id),h=c.get(f.session_id),C=(o==="running"||o==="paused")&&r===f.session_id||!!_,O=f.status==="completed"||f.status==="success"||f.status==="failed"||f.status==="cancelled",P=f.status;O?P=f.status==="success"?"completed":f.status:P=C?o==="paused"?"paused":"running":!!h&&!C?"pending":f.status;let T=f.device_serial||f.device_id||_?.device_id||h?.device_serial||null;if(!T&&f.device_info)try{let D=typeof f.device_info=="string"?JSON.parse(f.device_info):f.device_info;T=D?.device_id||D?.device_serial||null}catch(D){}let R=F(x({},f),{status:P,device_serial:T,model_info:C&&this.activeModel()?this.activeModel():f.model_info});s.set(f.session_id,R),O?this.activeSessionTracking.delete(f.session_id):(P==="running"||P==="paused"||P==="pending")&&this.activeSessionTracking.set(f.session_id,R)}),e.forEach(f=>{if(!s.has(f.session_id)){let _=u.get(f.session_id),h=(o==="running"||o==="paused")&&r===f.session_id||!!_,C=F(x({},f),{status:h?o==="paused"?"paused":"running":f.status||"pending",device_serial:f.device_serial||f.device_id||_?.device_id||null});s.set(f.session_id,C),this.activeSessionTracking.set(f.session_id,C)}}),a.length>0)a.forEach(f=>{let _=f.session_id||`active-${f.device_id}`,h=s.get(_);if(h){if(h.status==="pending"){let C=F(x({},h),{status:"running",device_serial:f.device_id||h.device_serial});s.set(_,C),this.activeSessionTracking.set(_,C)}}else{let C={session_id:_,initial_goal:f.goal||i||"",start_time:f.acquired_at?new Date(f.acquired_at).getTime()/1e3:Date.now()/1e3,status:"running",model_info:this.activeModel()||void 0,device_serial:f.device_id||null};s.set(_,C),this.activeSessionTracking.set(_,C)}});else if((o==="running"||o==="paused")&&r&&!s.has(r)){let f={session_id:r,initial_goal:i||"",start_time:Date.now()/1e3,status:o,model_info:this.activeModel()||void 0};s.set(r,f),this.activeSessionTracking.set(r,f)}return this.activeSessionTracking.forEach((f,_)=>{s.has(_)||s.set(_,F(x({},f),{status:"running"}))}),Array.from(s.values()).sort((f,_)=>_.start_time-f.start_time)});currentSessionId=w(null);sessionLogs=w([]);isSessionContentLoading=w(!1);agentStatus=w("idle");runningSessionId=w(null);runningGoal=w(null);isPaused=w(!1);pausedError=w(null);isRetrying=w(!1);retryMessage=w(null);activeModel=w(null);userPinnedSessionId=w(null);startupProgressBySession=w({});pendingStartupProgress=w([]);currentStartupProgress=A(()=>{let t=this.currentSessionId();if(t){let e=String(t).trim().toLowerCase(),o=this.startupProgressBySession(),i=o[t];if(i?.length)return i;let r=Object.entries(o).find(([a])=>a.trim().toLowerCase()===e);if(r?.[1]?.length)return r[1]}return this.pendingStartupProgress()});currentNotes=w({});selectedNoteKey=w("task_plan.md");activeTab=w("tasks");isVideoWindowOpen=w(!1);isVideoMinimized=w(!1);activeVideoUrl=w(null);activeVideoSegments=w([]);activeVideoTitle=w("");isVideoLoading=w(!1);recordingPlaybackStatus=w("idle");recordingPlaybackMessage=w("");shouldAutoplayVideo=w(!1);videoSeekRequest=w(null);stepSeekRequest=w(null);playerMode=w("video");streamResetEvent=w(null);activeVideoSessionId=null;videoSeekRequestId=0;stepSeekRequestId=0;videoRequestGeneration=0;videoRetryTimer=null;videoWaitStartedAt=0;stepLogsForReplay=A(()=>this.sessionLogs().filter(t=>t&&(t.type==="step_updated"||t.type==="step_recorded")),{equal:(t,e)=>t.length===e.length&&t.every((o,i)=>o===e[i])});currentSessionStepFrames=A(()=>Fv(this.stepLogsForReplay()));hasCurrentSessionStepFrames=A(()=>this.currentSessionStepFrames().length>0);setPlayerMode(t){this.playerMode.set(t)}togglePlayerMode(){this.playerMode.update(t=>t==="video"?"steps":"video")}requestStepSeek(t){this.stepSeekRequestId++,this.stepSeekRequest.set({index:t,requestId:this.stepSeekRequestId})}clearUserPinnedSession(){this.userPinnedSessionId.set(null)}currentSession=A(()=>{let t=this.currentSessionId();return t&&this.sessions().find(e=>e.session_id===t)||null});viewedModel=A(()=>{let t=this.currentSession();return t?.model_info?t.model_info:this.activeModel()});isCurrentSessionRunning=A(()=>{let t=this.currentSessionId();if(!t)return!1;let e=this.currentSession();return e?e.status==="running"||e.status==="paused":!!((this.agentStatus()==="running"||this.agentStatus()==="paused")&&this.runningSessionId()===t||this.activeTasks().some(i=>i.session_id===t))});currentSessionVideoUrl=A(()=>{let t=this.currentSessionId();return t&&this.sessions().find(o=>o.session_id===t)?.video_url||null});currentSessionRecordingStatus=A(()=>{let e=this.currentSession()?.recording_status;return e==="recording"||e==="finalizing"||e==="processing"?"processing":e});eventSource=null;statusInterval=null;sessionLoadGeneration=0;sessionSnapshotRequestId=0;sessionSnapshotAppliedId=0;pendingSnapshotRequests=new Set;pendingStreamChunks=new Map;streamFlushTimer=null;lastQueueSignature=null;lastActiveTasksSignature=null;lastPersistedSessionsJson=null;onVisibilityChange=()=>{typeof document<"u"&&!document.hidden&&(this.fetchStatus(),this.fetchSessions())};constructor(){this.restoreSessionsCache(),this.fetchSessions(),this.startStatusPolling(),this.ensureLiveStream(),typeof document<"u"&&document.addEventListener("visibilitychange",this.onVisibilityChange),v(Te).onDestroy(()=>this.destroy())}isRunningTask=A(()=>this.agentStatus()==="running"||this.agentStatus()==="paused"?!0:this.sessions().some(t=>t.status==="running"||t.status==="paused"));getProTuningDefaults(){return this.http.get("/api/run/defaults")}getSessionUsage(t){return this.http.get(`/api/sessions/${encodeURIComponent(t)}/usage`)}runTask(t,e="flash",o,i,r){return new te(a=>{let s={stage:"submitting",message:"\u6B63\u5728\u63D0\u4EA4\u4EFB\u52A1",timestamp:Date.now()/1e3};this.pendingStartupProgress.set([s]);let c={goal:t,profile:e};o&&o.trim()&&(c.expected_output=o.trim()),i!==void 0&&(c.enable_outputter=i),r?.verificationLevel&&(c.verification_level=r.verificationLevel),r?.explorerMode&&(c.explorer_mode=r.explorerMode),this.clearUserPinnedSession(),this.http.post("/api/run",c).subscribe({next:u=>{if(u&&u.tasks&&u.tasks.length>0){let f=u.tasks[0].session_id;if(f){this.appendStartupProgress(F(x({},s),{session_id:f}),f),this.pendingStartupProgress.set([]);let _=this.agentStatus()==="running"||this.sessions().some(C=>C.status==="running"),h=this.runningSessionId()||this.sessions().find(C=>C.status==="running"||C.status==="paused")?.session_id;(!_||h===f)&&this.selectSession(f,!1)}}this.pendingStartupProgress.set([]),a.next(u),a.complete()},error:u=>{this.pendingStartupProgress.set([]),a.error(u)}})})}stopTask(t,e=!1){let o=null,i=e;typeof t=="boolean"?i=t:typeof t=="string"&&t.trim()?o=t.trim():o=this.currentSessionId()||this.runningSessionId()||null,!i&&!o&&(o=this.sessions().find(c=>c.status==="running"||c.status==="paused")?.session_id||null),o&&this.setSessionStatus(o,"cancelled");let r=this.sessions().filter(c=>(c.status==="running"||c.status==="paused")&&c.session_id!==o);i||r.length===0?(this.agentStatus.set("idle"),this.runningSessionId.set(null),this.runningGoal.set(null)):this.runningSessionId()===o&&(this.runningSessionId.set(r[0].session_id),this.runningGoal.set(r[0].initial_goal||null)),this.isPaused.set(!1),this.pausedError.set(null),this.isRetrying.set(!1),this.invalidateStatusSignatures(),i&&this.pendingQueue.set([]),(!o||this.currentSessionId()===o)&&(this.flushStreamChunks(),this.sessionLogs.update(c=>c.some(u=>u.type==="llm_stream"&&!u.data?.isCompleted)?c.map(u=>u.type==="llm_stream"&&!u.data?.isCompleted?F(x({},u),{data:F(x({},u.data),{isCompleted:!0})}):u):c)),o&&this.activeTasks.update(c=>c.filter(u=>u.session_id!==o));let a=`/api/stop?all=${i}`;!i&&o&&(a+=`&session_id=${encodeURIComponent(o)}`);let s={all:i};o&&(s.session_id=o),this.http.post(a,s).subscribe({next:()=>{this.fetchStatus(),this.fetchSessions()},error:c=>{console.error("Failed to stop task:",c),this.fetchSessions(),this.fetchStatus()}})}resumeTask(){this.http.post("/api/resume",{}).subscribe({next:t=>{if(t?.status!=="resumed"){this.fetchStatus();return}let e=this.runningSessionId();this.isPaused.set(!1),this.pausedError.set(null),this.agentStatus.set("running"),this.setSessionStatus(e,"running"),this.fetchStatus()},error:t=>{console.error("Failed to resume task:",t)}})}fetchSessions(){this.http.get("/api/sessions").subscribe({next:t=>{this.rawSessions.set(t),this.persistSessionsCache(t),!this.currentSessionId()&&!this.userPinnedSessionId()&&this.agentStatus()!=="running"&&t.length>0&&this.selectSession(t[0].session_id,!1)},error:t=>{console.error("Failed to fetch sessions from backend:",t)}})}deleteSession(t){if(this.invalidateStatusSignatures(),this.rawSessions.update(e=>e.filter(o=>o.session_id!==t)),this.persistSessionsCache(this.rawSessions()),this.pendingQueue.update(e=>e.filter(o=>o.session_id!==t)),this.userPinnedSessionId()===t&&this.userPinnedSessionId.set(null),this.currentSessionId()===t){this.selectSession("",!1),this.isVideoWindowOpen()&&this.closeVideoPlayer();let e=this.runningSessionId();e&&this.agentStatus()==="running"&&this.selectSession(e,!1)}return new te(e=>{this.http.post(`/api/sessions/${t}/delete`,{}).subscribe({next:o=>{this.fetchSessions(),this.fetchStatus(),e.next(o),e.complete()},error:o=>{console.error(`\u5220\u9664\u4F1A\u8BDD\u5931\u8D25\uFF1A${t}:`,o),this.fetchSessions(),this.fetchStatus(),e.error(o)}})})}clearAllHistory(){return this.invalidateStatusSignatures(),this.userPinnedSessionId.set(null),this.rawSessions.set([]),this.clearSessionsCache(),this.pendingQueue.set([]),this.selectSession("",!1),this.isVideoWindowOpen()&&this.closeVideoPlayer(),new te(t=>{this.http.post("/api/cleanup",{}).subscribe({next:e=>{this.fetchSessions(),this.fetchStatus(),t.next(e),t.complete()},error:e=>{console.error("Failed to cleanup history:",e),this.fetchSessions(),this.fetchStatus(),t.error(e)}})})}selectSession(t,e=!1){if(e&&(t&&t===this.runningSessionId()&&this.agentStatus()==="running"?this.userPinnedSessionId.set(null):t?this.userPinnedSessionId.set(t):this.userPinnedSessionId.set(null)),!t){this.sessionLoadGeneration++,this.pendingSnapshotRequests.clear(),this.discardPendingStreamChunks(),this.isSessionContentLoading.set(!1),this.currentSessionId.set(null),this.sessionLogs.set([]),this.currentNotes.set({});return}if(this.currentSessionId()===t)return;let o=++this.sessionLoadGeneration;this.pendingSnapshotRequests.clear(),this.discardPendingStreamChunks(),this.sessionSnapshotAppliedId=0,this.isSessionContentLoading.set(!0),this.currentSessionId.set(t),this.sessionLogs.set([]),this.activePauseCardKey=null,this.isPaused.set(!1),this.pausedError.set(null),this.fetchNotes(t),this.fetchChecks(t),this.isVideoWindowOpen()&&this.openVideoPlayer(t),console.debug(`Selecting session: ${t}`),this.backfillSessionSteps(t,o),this.ensureLiveStream()}ensureLiveStream(){this.eventSource||(console.debug("Establishing persistent unified live stream via /api/stream"),this.zone.runOutsideAngular(()=>{this.eventSource=new EventSource("/api/stream"),this.eventSource.addEventListener("info",()=>{let e=this.currentSessionId();e&&this.backfillSessionSteps(e)}),this.eventSource.addEventListener("keep-alive",()=>{}),["llm_stream","llm_stream_reset","trace_recorded","step_recorded","step_updated","background_tasks_updated","task_paused","task_resumed","llm_retrying","startup_progress","session_started","session_ended","recording_ready","recording_failed","checker_event"].forEach(e=>{this.eventSource?.addEventListener(e,o=>{try{let i=JSON.parse(o.data),r=i?.session_id;if(e!=="llm_stream"&&this.flushStreamChunks(),e==="recording_ready"||e==="recording_failed"){this.isVideoWindowOpen()&&r&&String(r)===String(this.activeVideoSessionId)&&(e==="recording_ready"?this.refreshActiveRecording(!0):(this.cancelVideoRetry(),this.isVideoLoading.set(!1),this.activeVideoUrl.set(null),this.activeVideoSegments.set([]),this.recordingPlaybackStatus.set("failed"),this.recordingPlaybackMessage.set(i?.error||"\u5F55\u5C4F\u6536\u5C3E\u5931\u8D25\u3002")));return}if(e==="background_tasks_updated"){this.fetchStatus();return}if(e==="session_started"){this.agentStatus.set("running"),i?.session_id&&this.runningSessionId.set(i.session_id),i?.initial_goal&&this.runningGoal.set(i.initial_goal),this.fetchSessions(),!this.userPinnedSessionId()&&i?.session_id&&this.selectSession(i.session_id,!1);return}if(e==="session_ended"){let s=r||this.runningSessionId();s&&(this.applySessionEndedStatus(s,i),this.invalidateStatusSignatures(),this.activeTasks.update(u=>u.filter(f=>f.session_id!==s)));let c=this.activeTasks();if(c.length>0)this.agentStatus.set("running"),this.runningSessionId.set(c[0].session_id),this.runningGoal.set(c[0].goal||null);else if(this.pendingQueue().length>0){let u=this.pendingQueue()[0];this.agentStatus.set("running"),this.runningSessionId.set(u.session_id),this.runningGoal.set(u.initial_goal||null)}else this.agentStatus.set("idle"),this.runningSessionId.set(null),this.runningGoal.set(null);this.isRetrying.set(!1),this.isPaused.set(!1),this.fetchSessions(),this.fetchStatus(),s&&(this.fetchNotes(s),String(s)===String(this.currentSessionId()||"")&&this.fetchChecks(s),this.isVideoWindowOpen()&&this.activeVideoSessionId===s&&this.recordingPlaybackStatus()==="live"&&this.beginRecordingFinalization(s));return}if(e==="startup_progress"){let s=r||this.currentSessionId();if(s){this.appendStartupProgress(i,s);let c=this.currentSessionId();!this.userPinnedSessionId()&&(!c||String(s).trim().toLowerCase()!==String(c).trim().toLowerCase())&&(this.agentStatus.set("running"),this.runningSessionId.set(s),this.selectSession(s,!1))}return}let a=this.currentSessionId();if(r&&a&&String(r).trim().toLowerCase()!==String(a).trim().toLowerCase())return;if(e==="llm_retrying"){this.isRetrying.set(!0);let s=Number(i.attempt||0),c=Number(i.max_retries||0),u=Number(i.delay||0),f=s&&c?`\uFF08\u7B2C ${s}/${c})`:"",_=u>0?`\uFF1B\u91CD\u8BD5\u7B49\u5F85 ${u.toFixed(2).replace(/\.00$/,"")}s`:"";this.retryMessage.set(`AI \u670D\u52A1\u6682\u65F6\u7E41\u5FD9${f}${_}...`),a&&this.appendLiveLLMRetryTrace(i,a);return}if(e==="task_paused"){if(this.isPaused.set(!0),this.isRetrying.set(!1),this.agentStatus.set("paused"),a){this.runningSessionId.set(a),this.setSessionStatus(a,"paused");let s=i.error||"\u6A21\u578B\u8C03\u7528\u5931\u8D25";this.pausedError.set(s),this.appendPausedErrorCard(s,a,i.timestamp,i.step_id,i)}return}if(e==="task_resumed"){this.isPaused.set(!1),this.isRetrying.set(!1),this.pausedError.set(null),a&&this.runningSessionId()===a&&(this.agentStatus.set("running"),this.setSessionStatus(a,"running")),this.activePauseCardKey=null;return}if((e==="step_updated"||e==="step_recorded"||e==="llm_stream")&&this.isRetrying.set(!1),e==="llm_stream_reset"){let s=i?.stream_exec_id||i?.stream_execution_id;if(s)for(let u of Array.from(this.pendingStreamChunks.keys()))(u.startsWith(`${s}|`)||u===s)&&this.pendingStreamChunks.delete(u);let c=i?.message||Do;this.streamResetEvent.set({stream_exec_id:s,stream_execution_id:s,step_id:i?.step_id,session_id:i?.session_id,action:i?.action||"discard",reason:i?.reason||"mid_stream_failure",category:i?.category,error:i?.error,message:c,retry_attempt:i?.retry_attempt,timestamp:Date.now()}),this.sessionLogs.update(u=>{let f=!1,_=u.map(h=>h.type==="llm_stream"&&h.data?.execution_id===s?(f=!0,F(x({},h),{data:F(x({},h.data),{isReset:!0,resetMessage:c})})):h);return!f&&s&&_.push({type:"llm_stream",timestamp:new Date().toISOString(),session_id:i?.session_id,data:{execution_id:s,step_id:i?.step_id,stream_type:"text",text:"",isCompleted:!1,isReset:!0,resetMessage:c}}),_});return}if(e==="llm_stream"?this.queueStreamChunk(i):this.sessionLogs.update(s=>{let u=s.some(h=>h.type==="llm_stream"&&!h.data.isCompleted)?s.map(h=>h.type==="llm_stream"&&!h.data.isCompleted?F(x({},h),{data:F(x({},h.data),{isCompleted:!0})}):h):[...s],f=typeof i?.timestamp=="number"?new Date(i.timestamp*1e3).toISOString():new Date().toISOString(),_={type:e,timestamp:f,data:i};if(e==="trace_recorded"&&i?.trace_id){let h=u.findIndex(C=>C.type==="trace_recorded"&&C.data?.trace_id===i.trace_id);if(h>-1){let C=[...u];return C[h]=_,C}}return[...u,_]}),e==="trace_recorded"&&i){let s=i.name||"";if(["save_note","read_note","update_note","append_note","list_notes","outputter"].includes(s.toLowerCase())){let c=this.currentSessionId();c&&this.fetchNotes(c)}}}catch(i){console.error(`Failed to parse ${e} event data:`,i),this.sessionLogs.update(r=>[...r,{type:e,timestamp:new Date().toISOString(),data:o.data}])}})}),this.eventSource.onerror=e=>{console.warn("Persistent live stream issue, browser will auto-reconnect:",e)}}))}queueStreamChunk(t){let e=t.execution_id,o=t.step_id,i=t.session_id||null,r=t.parent_trace_id||null,a=t.stream_type||"text",s=`${e}|${a}`,c=t.chunk!==void 0?t.chunk:t.text||"",u=this.pendingStreamChunks.get(s);if(u?(u.chunk+=c,o&&(u.stepId=o),i&&(u.sessionId=i),r&&(u.parentTraceId=r)):this.pendingStreamChunks.set(s,{execId:e,stepId:o,sessionId:i,parentTraceId:r,streamType:a,chunk:c}),!this.streamFlushTimer){let f=typeof document<"u"&&document.hidden?500:80;this.streamFlushTimer=setTimeout(()=>this.flushStreamChunks(),f)}}discardPendingStreamChunks(){this.pendingStreamChunks?.clear(),this.streamFlushTimer&&(clearTimeout(this.streamFlushTimer),this.streamFlushTimer=null)}flushStreamChunks(){if(this.streamFlushTimer&&(clearTimeout(this.streamFlushTimer),this.streamFlushTimer=null),!this.pendingStreamChunks?.size)return;let t=Array.from(this.pendingStreamChunks.values());this.pendingStreamChunks.clear(),this.sessionLogs.update(e=>{let o=[...e];for(let i of t){let r=o.findIndex(a=>a.type==="llm_stream"&&a.data.execution_id===i.execId&&(a.data.stream_type||"text")===i.streamType);if(r>-1){let a=o[r];o[r]=F(x({},a),{session_id:i.sessionId||a.session_id,data:F(x({},a.data),{session_id:i.sessionId||a.data?.session_id,text:(a.data.text||"")+i.chunk,step_id:i.stepId||a.data.step_id,parent_trace_id:i.parentTraceId||a.data.parent_trace_id||null})})}else o=o.map(a=>a.type==="llm_stream"&&(a.data.stream_type||"text")===i.streamType&&!a.data.isCompleted&&(a.data.parent_trace_id||null)===(i.parentTraceId||null)?F(x({},a),{data:F(x({},a.data),{isCompleted:!0})}):a),o.push({type:"llm_stream",timestamp:new Date().toISOString(),session_id:i.sessionId||void 0,data:{execution_id:i.execId,session_id:i.sessionId||void 0,step_id:i.stepId,parent_trace_id:i.parentTraceId||null,text:i.chunk,stream_type:i.streamType,isCompleted:!1}})}return o})}backfillSessionSteps(t,e=this.sessionLoadGeneration){let o=++this.sessionSnapshotRequestId;this.pendingSnapshotRequests.add(o),this.http.get(`/api/sessions/${t}/steps`).subscribe({next:i=>{if(this.pendingSnapshotRequests.delete(o),this.currentSessionId()!==t||e!==this.sessionLoadGeneration||o({type:"step_updated",session_id:t,timestamp:new Date((a.timestamp||Date.now()/1e3)*1e3).toISOString(),data:a,history_snapshot:!0}));this.sessionLogs.update(a=>[...r,...a.filter(s=>!s.history_snapshot)]),this.isSessionContentLoading.set(!1)},error:i=>{this.pendingSnapshotRequests.delete(o),console.error("Failed to backfill session steps:",i),this.currentSessionId()===t&&e===this.sessionLoadGeneration&&this.pendingSnapshotRequests.size===0&&this.isSessionContentLoading.set(!1)}}),this.http.get(`/api/sessions/${t}/startup_progress`).subscribe({next:i=>{Array.isArray(i)&&i.length>0&&this.startupProgressBySession.update(r=>{let s=[...r[t]||[]];for(let c of i)s.some(u=>u.stage===c.stage)||s.push(c);return F(x({},r),{[t]:s})})},error:()=>{}})}restoreSessionsCache(){try{let t=localStorage.getItem(E_);if(!t)return;let e=JSON.parse(t);Array.isArray(e)&&(this.lastPersistedSessionsJson=t,this.rawSessions.set(e))}catch(t){this.clearSessionsCache()}}persistSessionsCache(t){try{let e=JSON.stringify(t);if(e===this.lastPersistedSessionsJson)return;this.lastPersistedSessionsJson=e,localStorage.setItem(E_,e)}catch(e){}}clearSessionsCache(){this.lastPersistedSessionsJson=null;try{localStorage.removeItem(E_)}catch(t){}}appendLiveLLMRetryTrace(t,e){let o=typeof t?.timestamp=="number"?t.timestamp>1e11?t.timestamp/1e3:t.timestamp:Date.now()/1e3,i=t?.trace_id||`llm-retry-live-${t?.request_id||"unknown"}-${o}`,r={error:t?.error,delay:t?.delay,attempt:t?.attempt,max_retries:t?.max_retries,provider:t?.provider,source:t?.source,recoverable:t?.recoverable,request_id:t?.request_id,scheduled_at:t?.scheduled_at??o},a={trace_id:i,session_id:e,step_id:t?.step_id||null,type:"llm_call",name:"llm_retry",timestamp:o,status:"retrying",payload:r};this.sessionLogs.update(s=>{let c=s.findIndex(_=>_.type==="trace_recorded"&&(_.data?.trace_id===i||t?.request_id&&_.data?.payload?.request_id===t.request_id&&Number(_.data?.payload?.scheduled_at)===Number(r.scheduled_at))),u={type:"trace_recorded",session_id:e,timestamp:new Date(o*1e3).toISOString(),data:a};if(c<0)return[...s,u];let f=[...s];return f[c]=u,f})}appendPausedErrorCard(t,e,o,i,r){let a=typeof t=="string"?t:JSON.stringify(t),s=`${e}:${a}`;this.activePauseCardKey!==s&&(this.sessionLogs.update(c=>{if(c.some(h=>(h?.type==="trace_recorded"?[h.data]:Array.isArray(h?.data?.generic_tools)?h.data.generic_tools:[]).some(O=>O?.type==="llm_call"&&O?.status==="failed"&&String(O?.payload?.error??O?.error??"")===a)))return c;let f=i||[...c].reverse().find(h=>(h.type==="step_updated"||h.type==="step_recorded")&&h.data?.step_id)?.data?.step_id||null,_=typeof o=="number"?o<1e11?o*1e3:o:o?new Date(o).getTime():Date.now();return[...c,{type:"trace_recorded",session_id:e,timestamp:new Date(_).toISOString(),data:{trace_id:`task-paused-${e}-${_}`,session_id:e,step_id:f,type:"llm_call",name:"llm_pause",status:"failed",timestamp:_/1e3,payload:{error:a,pause:!0,request_id:r?.request_id,provider:r?.provider,waited_seconds:r?.waited_seconds,retries:Array.isArray(r?.retries)?r.retries:[]}}}]}),this.activePauseCardKey=s)}pollCounter=0;setSessionStatus(t,e){t&&(this.invalidateStatusSignatures(),this.rawSessions.update(o=>o.map(i=>i.session_id===t?F(x({},i),{status:e}):i)),this.pendingQueue.update(o=>o.map(i=>i.session_id===t?F(x({},i),{status:e}):i)))}applySessionEndedStatus(t,e){if(!t)return;let o=String(e?.status||"").toLowerCase(),i=e?.was_stopped_manually||o==="cancelled"?"cancelled":o==="failed"?"failed":o==="completed"||o==="success"?"completed":null;i&&(this.activeSessionTracking.delete(String(t)),this.setSessionStatus(String(t),i),this.invalidateStatusSignatures(),this.activeTasks.update(r=>r.filter(a=>a.session_id!==String(t))))}startStatusPolling(){this.fetchStatus(),this.zone.runOutsideAngular(()=>{this.statusInterval=setInterval(()=>{typeof document<"u"&&document.hidden||(this.fetchStatus(),this.pollCounter++,this.pollCounter%3===0&&this.fetchSessions())},2e3)})}invalidateStatusSignatures(){this.lastQueueSignature=null,this.lastActiveTasksSignature=null}fetchStatus(){this.http.get("/api/status").subscribe({next:t=>{if(t&&t.status){let e=this.agentStatus(),o=this.runningSessionId(),i=t.status==="running"||t.status==="paused";if(this.agentStatus.set(t.status),this.runningSessionId.set(t.session_id||null),this.runningGoal.set(t.goal||null),t.model_info&&this.activeModel.set(t.model_info),this.isPaused.set(t.status==="paused"),t.status==="paused"){this.isRetrying.set(!1);let s=t.paused_error||this.pausedError()||"\u6A21\u578B\u8BF7\u6C42\u5931\u8D25\uFF0C\u4EFB\u52A1\u5DF2\u6682\u505C\u3002";this.pausedError.set(s),t.session_id&&this.currentSessionId()===t.session_id&&this.appendPausedErrorCard(s,t.session_id)}else this.pausedError.set(null),this.activePauseCardKey=null;let r=JSON.stringify(t.queue||[]);if(r!==this.lastQueueSignature){this.lastQueueSignature=r;let s=(t.queue||[]).map((c,u)=>typeof c=="object"&&c!==null?{session_id:c.session_id||`pending-task-${u}`,initial_goal:c.goal||"",start_time:c.start_time||c.created_at||Date.now()/1e3+u,status:c.status||"pending",device_serial:c.device_serial||c.device_id||null}:{session_id:`task-queued-${u}`,initial_goal:String(c),start_time:Date.now()/1e3+u,status:"pending"});this.pendingQueue.set(s)}let a=JSON.stringify(t.active_tasks||[]);if(a!==this.lastActiveTasksSignature&&(this.lastActiveTasksSignature=a,this.activeTasks.set(t.active_tasks||[])),(e!==t.status||o!==t.session_id)&&this.fetchSessions(),!i&&(e==="running"||e==="paused")&&o&&this.isVideoWindowOpen()&&this.activeVideoSessionId===o&&this.recordingPlaybackStatus()==="live"&&this.beginRecordingFinalization(o),i&&t.session_id){let s=this.currentSessionId();(!s||!this.userPinnedSessionId()&&s!==t.session_id)&&this.selectSession(t.session_id,!1)}}},error:t=>{console.error("Failed to fetch status from backend:",t),this.agentStatus.set("offline"),this.runningSessionId.set(null),this.runningGoal.set(null)}})}destroy(){this.statusInterval&&(clearInterval(this.statusInterval),this.statusInterval=null),this.eventSource&&(this.eventSource.close(),this.eventSource=null),this.discardPendingStreamChunks(),typeof document<"u"&&document.removeEventListener("visibilitychange",this.onVisibilityChange),this.cancelVideoRetry()}fetchChecks(t){t&&this.http.get(`/api/sessions/${t}/checks`).subscribe({next:e=>{if(this.currentSessionId()!==t)return;let o=this.buildCheckerSnapshotLogs(t,e?.records||[],e?.run_outcome||null,e?.streams||[]);this.sessionLogs.update(i=>[...i.filter(r=>!r.checks_snapshot),...o])},error:e=>{console.error(`Failed to fetch checks for session ${t}:`,e)}})}buildCheckerSnapshotLogs(t,e,o,i=[]){let r=new Map,a=new Map;for(let c of i||[]){if(!c||!c.attempt_id)continue;let u=Bv(c);u.length>0&&a.set(String(c.attempt_id),u)}for(let c of e){if(!c||!c.attempt_id)continue;let u=String(c.attempt_id),f=String(c.checkpoint_id||""),_=r.get(u);_||(_={event:"attempt_finished",phase:f==="final"?"final":"checkpoint",attempt_id:u,checkpoint_id:f,subgoal_text:String(c.subgoal_text||(f==="final"?"\u6839\u636E\u7528\u6237\u539F\u59CB\u76EE\u6807\u8FDB\u884C\u6700\u7EC8\u68C0\u67E5":`\u5B50\u76EE\u6807 ${f.slice(0,8)}`)),anchor_step_id:c.anchor_step_id??null,trace_id:c.trace_id??null,status:"done",verdicts:[],findings:[],ts:typeof c.ts=="number"?c.ts:void 0,session_id:t},r.set(u,_)),typeof c.ts=="number"&&(_.ts=_.ts===void 0?c.ts:Math.min(_.ts,c.ts)),!_.trace_id&&c.trace_id&&(_.trace_id=c.trace_id),_.verdicts.push({item_text:String(c.item_text||""),kind:String(c.kind||""),status:String(c.status||""),evidence:String(c.evidence||""),suggestion:c.suggestion?String(c.suggestion):"",when:c.when?String(c.when):void 0})}let s=[];for(let c of r.values()){let u=new Set(c.verdicts.map(h=>h.status));if(u.size===1){let h=[...u][0];(h==="superseded"||h==="unchecked")&&(c.status=h)}let f=c.ts??Date.now()/1e3;c.timestamp=f;let _=a.get(c.attempt_id);_&&(c.stream_segments=_),s.push({type:"checker_event",session_id:t,timestamp:new Date(f*1e3).toISOString(),checks_snapshot:!0,data:c})}if(o&&typeof o=="object"){let u=(s.length>0?Math.max(...s.map(f=>new Date(f.timestamp).getTime()/1e3)):Date.now()/1e3)+.001;s.push({type:"checker_event",session_id:t,timestamp:new Date(u*1e3).toISOString(),checks_snapshot:!0,data:F(x({event:"run_outcome",phase:"outcome"},o),{ts:u,timestamp:u,session_id:t})})}return s}fetchNotes(t){if(!t){this.currentNotes.set({});return}this.http.get(`/api/sessions/${t}/notes`).subscribe({next:e=>{if(e&&e.notes){this.currentNotes.set(e.notes);let o=Object.keys(e.notes);if(o.length>0){let i=this.selectedNoteKey();o.includes(i)||(o.includes("task_plan.md")?this.selectedNoteKey.set("task_plan.md"):this.selectedNoteKey.set(o[0]))}}},error:e=>{console.error(`Failed to fetch notes for session ${t}:`,e)}})}openVideoPlayer(t,e,o,i,r){let a=t||this.currentSessionId(),s=this.sessions().find(f=>f.session_id===a),c=e||s?.video_url||null,u=o||s?.initial_goal||(a?`\u4EFB\u52A1\uFF1A${a.slice(0,8)}...`:"\u5C4F\u5E55\u5F55\u50CF");if(this.activeVideoTitle.set(u),this.isVideoWindowOpen.set(!0),this.isVideoMinimized.set(!1),this.activeVideoSessionId=a,this.cancelVideoRetry(),this.videoRequestGeneration++,this.shouldAutoplayVideo.set(!1),this.recordingPlaybackMessage.set(""),this.activeVideoSegments.set([]),Number.isFinite(i)&&this.requestVideoSeek(Number(i)),Number.isFinite(r)&&(this.playerMode?.set("steps"),this.requestStepSeek(Number(r))),!a){this.activeVideoUrl.set(null),this.isVideoLoading.set(!1),this.recordingPlaybackStatus.set("unavailable");return}if(s?.status==="running"||s?.status==="paused"){this.activeVideoUrl.set(null),this.isVideoLoading.set(!1),this.recordingPlaybackStatus.set("live");return}this.activeVideoUrl.set(c),this.shouldAutoplayVideo.set(!0),this.videoWaitStartedAt=Date.now(),this.isVideoLoading.set(!0),this.recordingPlaybackStatus.set("processing"),this.recordingPlaybackMessage.set("\u6B63\u5728\u52A0\u8F7D\u5C4F\u5E55\u5F55\u50CF\u2026"),c?this.playerMode?.set("video"):this.hasCurrentSessionStepFrames?.()?this.playerMode?.set("steps"):this.playerMode?.set("video"),this.requestSessionVideo(a,this.videoRequestGeneration)}appendStartupProgress(t,e){if(!t?.stage||!t?.message)return;let o=typeof t.timestamp=="number"?t.timestamp>1e11?t.timestamp/1e3:t.timestamp:Date.now()/1e3,i={session_id:String(t.session_id||e),stage:String(t.stage),message:String(t.message),timestamp:o},r=String(t.session_id||e).trim();this.startupProgressBySession.update(a=>{let s=[...a[r]||a[e]||[]],c=s.findIndex(f=>f.stage===i.stage);c>=0?s[c]=i:s.push(i),s.sort((f,_)=>f.timestamp-_.timestamp);let u=F(x({},a),{[r]:s});return e&&e!==r&&(u[e]=s),u})}beginRecordingFinalization(t){this.activeVideoSessionId===t&&(this.cancelVideoRetry(),this.videoRequestGeneration++,this.videoWaitStartedAt=Date.now(),this.activeVideoUrl.set(null),this.activeVideoSegments.set([]),this.shouldAutoplayVideo.set(!0),this.isVideoLoading.set(!0),this.recordingPlaybackStatus.set("processing"),this.recordingPlaybackMessage.set("\u6B63\u5728\u5B8C\u6210\u5F55\u5C4F\u5904\u7406\u2026"),this.requestSessionVideo(t,this.videoRequestGeneration))}requestSessionVideo(t,e){this.http.get(`/api/sessions/${t}/video`).subscribe({next:o=>{if(e!==this.videoRequestGeneration||t!==this.activeVideoSessionId)return;let i=o.status||(o.has_video&&o.video_url?"ready":"unavailable");if(i==="ready"&&o.video_url){this.cancelVideoRetry(),this.isVideoLoading.set(!1),this.recordingPlaybackStatus.set("ready"),this.recordingPlaybackMessage.set(""),this.activeVideoUrl.set(o.video_url),this.activeVideoSegments.set(o.video_segments||[]),this.playerMode?.set("video"),this.rawSessions.update(r=>r.map(a=>a.session_id===t?F(x({},a),{video_url:o.video_url||void 0,recording_status:"ready"}):a));return}if(i==="processing"){this.activeVideoUrl.set(null),this.activeVideoSegments.set([]),this.isVideoLoading.set(!0),this.recordingPlaybackStatus.set("processing"),this.recordingPlaybackMessage.set("\u6B63\u5728\u5B8C\u6210\u5F55\u5C4F\u5904\u7406\u2026"),this.scheduleVideoRetry(t,e,o.retry_after_ms);return}this.cancelVideoRetry(),this.isVideoLoading.set(!1),this.activeVideoUrl.set(null),this.activeVideoSegments.set([]),this.recordingPlaybackStatus.set(i==="failed"?"failed":"unavailable"),this.recordingPlaybackMessage.set(o.message||(i==="failed"?"\u5F55\u5C4F\u6536\u5C3E\u5931\u8D25\u3002":"\u6B64\u4EFB\u52A1\u6682\u65E0\u53EF\u7528\u5F55\u50CF\u3002")),this.hasCurrentSessionStepFrames?.()&&this.playerMode?.set("steps")},error:()=>{if(!(e!==this.videoRequestGeneration||t!==this.activeVideoSessionId)){if(this.recordingPlaybackStatus()==="processing"){this.scheduleVideoRetry(t,e,1e3);return}this.isVideoLoading.set(!1),this.recordingPlaybackStatus.set("failed"),this.recordingPlaybackMessage.set("\u65E0\u6CD5\u52A0\u8F7D\u5C4F\u5E55\u5F55\u50CF\u3002"),this.hasCurrentSessionStepFrames?.()&&this.playerMode?.set("steps")}}})}scheduleVideoRetry(t,e,o=1e3){if(this.cancelVideoRetry(),Date.now()-this.videoWaitStartedAt>12e4){this.isVideoLoading.set(!1),this.recordingPlaybackStatus.set("failed"),this.recordingPlaybackMessage.set("\u5F55\u5C4F\u5904\u7406\u8D85\u65F6\uFF0C\u53EF\u4EE5\u91CD\u8BD5\u3002");return}let i=Math.max(500,Math.min(3e3,o));this.videoRetryTimer=setTimeout(()=>{this.videoRetryTimer=null,this.requestSessionVideo(t,e)},i)}cancelVideoRetry(){this.videoRetryTimer&&(clearTimeout(this.videoRetryTimer),this.videoRetryTimer=null)}refreshActiveRecording(t){let e=this.activeVideoSessionId;e&&(this.cancelVideoRetry(),this.videoRequestGeneration++,t&&this.shouldAutoplayVideo.set(!0),this.requestSessionVideo(e,this.videoRequestGeneration))}retryVideoRecording(){let t=this.activeVideoSessionId;t&&this.beginRecordingFinalization(t)}consumeVideoAutoplay(){let t=this.shouldAutoplayVideo();return this.shouldAutoplayVideo.set(!1),t}requestVideoSeek(t){Number.isFinite(t)&&this.videoSeekRequest.set({seconds:Math.max(0,t),requestId:++this.videoSeekRequestId})}toggleVideoPlayer(){this.isVideoWindowOpen()?this.isVideoWindowOpen.set(!1):this.openVideoPlayer()}closeVideoPlayer(){this.isVideoWindowOpen.set(!1),this.cancelVideoRetry(),this.videoRequestGeneration++,this.activeVideoSessionId=null}static \u0275fac=function(e){return new(e||n)};static \u0275prov=ee({token:n,factory:n.\u0275fac,providedIn:"root"})};var wu=class n{http=v(Mn);readinessReport=w(null);hasReadinessReport=A(()=>this.readinessReport()!==null);isLoading=w(!1);isRestartingAdb=w(!1);adbServerStatus=w(null);isRemoteAdbServer=A(()=>this.adbServerStatus()?.endpoint.mode==="remote");launchingAvd=w(null);emulatorLaunchState=w(null);isEmulatorLaunching=A(()=>{let t=this.emulatorLaunchState()?.status;return t==="starting"||t==="waiting_for_adb"||t==="booting"});lastCheckedTime=w(null);emulatorPollTimer=null;pythonProbe=A(()=>this.probes().find(t=>t.id==="python_runtime")||null);configProbe=A(()=>this.probes().find(t=>t.id==="system_config")||null);toolchainProbe=A(()=>this.probes().find(t=>t.id==="toolchain")||null);adbProbe=A(()=>this.probes().find(t=>t.id==="android_adb")||null);llmProbe=A(()=>this.probes().find(t=>t.id==="openai_api_key"||t.id==="llm_api_key")||null);openaiProbe=A(()=>this.llmProbe());ocrProbe=A(()=>this.probes().find(t=>t.id==="vision_ocr_key"||t.id==="ocr_api_key")||null);isEnvironmentReady=A(()=>{let t=this.pythonProbe(),e=this.configProbe(),o=this.adbProbe(),i=this.toolchainProbe(),r=t?.status==="pass",a=e?.status==="pass",s=o?.metadata?.installed??o?.status!=="fail",c=i?.status==="pass"||i?.is_blocker===!1;return r&&a&&s&&c});isSkipCredentialsCheck=w(!1);isCredentialsReady=A(()=>this.isSkipCredentialsCheck()?!0:this.llmProbe()?.status==="pass");isDeviceReady=A(()=>this.adbProbe()?.status==="pass");totalStepCount=A(()=>3);passedStepCount=A(()=>{let t=0;return this.isEnvironmentReady()&&t++,this.isCredentialsReady()&&t++,this.isDeviceReady()&&t++,t});isReady=A(()=>this.isEnvironmentReady()&&this.isCredentialsReady()&&this.isDeviceReady());blockerCount=A(()=>this.totalStepCount());passedBlockerCount=A(()=>this.passedStepCount());probes=A(()=>this.readinessReport()?.probes??[]);activeDevice=A(()=>this.readinessReport()?.active_device??null);osType=A(()=>{let t=this.readinessReport()?.os_type;return t==="windows"||t==="win32"?"windows":t==="darwin"||t==="macos"||t==="mac"?"darwin":"linux"});skipCredentialsCheck(){this.isSkipCredentialsCheck.set(!0)}setSkipCredentialsCheck(t){this.isSkipCredentialsCheck.set(t)}connectedDevices=A(()=>{let t=this.adbProbe()?.metadata;return t&&Array.isArray(t.devices)?t.devices:[]});installedAvds=A(()=>{let t=this.adbProbe()?.metadata;return t&&Array.isArray(t.installed_avds)?t.installed_avds:[]});emulatorPath=A(()=>this.adbProbe()?.metadata?.emulator_path||null);isEmulatorInPath=A(()=>this.adbProbe()?.metadata?.is_emulator_in_path??!0);pollingTimer=null;readinessRequest$=null;zone=v(ce);lastAppliedReportJson=null;onVisibilityChange=()=>{typeof document<"u"&&!document.hidden&&this.fetchReadiness(!0).subscribe({error:()=>{}})};constructor(){this.startAutoPolling(3e3),typeof document<"u"&&document.addEventListener("visibilitychange",this.onVisibilityChange),v(Te).onDestroy(()=>{this.stopAutoPolling(),this.stopEmulatorStatusPolling(),typeof document<"u"&&document.removeEventListener("visibilitychange",this.onVisibilityChange)})}startAutoPolling(t=3e3){this.pollingTimer&&clearInterval(this.pollingTimer),this.zone.runOutsideAngular(()=>{this.pollingTimer=setInterval(()=>{typeof document<"u"&&document.hidden||this.fetchReadiness(!0).subscribe({error:()=>{}})},t)})}stopAutoPolling(){this.pollingTimer&&(clearInterval(this.pollingTimer),this.pollingTimer=null)}fetchReadiness(t=!1,e=!1){if(t||this.isLoading.set(!0),this.readinessRequest$)return this.readinessRequest$;let o=this.http.get("/api/system/readiness",{params:e?{force:!0}:{}}).pipe(Fe({next:i=>{this.applyReadinessReport(i)},error:i=>{console.error("Failed to fetch system readiness:",i)}}),Tt(()=>{this.readinessRequest$===o&&(this.readinessRequest$=null),this.isLoading.set(!1)}),Lc({bufferSize:1,refCount:!1}));return this.readinessRequest$=o,o}applyReadinessReport(t){let e=this.readinessReport();if(e&&t.timestamp{this.emulatorLaunchState.set(t),t.status==="ready"?(this.launchingAvd.set(null),this.stopEmulatorStatusPolling(),this.fetchReadiness().subscribe()):t.status==="failed"||t.status==="stopped"||t.status==="idle"?(this.launchingAvd.set(null),this.stopEmulatorStatusPolling()):t.avd_name&&this.launchingAvd.set(t.avd_name)},error:t=>{console.error("Failed to fetch emulator status:",t)}}))}startEmulatorStatusPolling(){this.emulatorPollTimer&&clearInterval(this.emulatorPollTimer),this.emulatorPollTimer=setInterval(()=>{this.fetchEmulatorStatus().subscribe({error:()=>{}})},1e3)}stopEmulatorStatusPolling(){this.emulatorPollTimer&&(clearInterval(this.emulatorPollTimer),this.emulatorPollTimer=null)}launchEmulator(t){return this.launchingAvd.set(t),this.emulatorLaunchState.set({avd_name:t,status:"starting",pid:null,serial:null,stage_message:"\u6B63\u5728\u542F\u52A8\u6A21\u62DF\u5668\u8FDB\u7A0B\u2026",progress_percent:15,started_at:Date.now()/1e3,elapsed_seconds:0,error:null,logs:[`Initiating launch for AVD: ${t}...`],can_retry:!0}),this.http.post("/api/system/emulator/launch",{avd_name:t}).pipe(Fe({next:e=>{this.emulatorLaunchState.set(e),e.status==="failed"?this.launchingAvd.set(null):this.startEmulatorStatusPolling()},error:e=>{console.error("Failed to launch emulator:",e),this.launchingAvd.set(null);let o=e?.error?.detail||e?.message||"\u542F\u52A8\u6A21\u62DF\u5668\u8FDB\u7A0B\u5931\u8D25\u3002";this.emulatorLaunchState.set({avd_name:t,status:"failed",pid:null,serial:null,stage_message:"\u542F\u52A8\u5931\u8D25\u3002",progress_percent:0,started_at:null,elapsed_seconds:0,error:o,logs:[o],can_retry:!0})}}))}stopEmulator(){return this.http.post("/api/system/emulator/stop",{}).pipe(Fe({next:()=>{this.launchingAvd.set(null),this.stopEmulatorStatusPolling(),this.fetchEmulatorStatus().subscribe(),this.fetchReadiness().subscribe()}}))}dismissEmulatorStatus(){return this.http.post("/api/system/emulator/dismiss",{}).pipe(Fe({next:()=>{this.emulatorLaunchState.set(null),this.launchingAvd.set(null),this.stopEmulatorStatusPolling()}}))}restartAdb(){return this.isRestartingAdb.set(!0),this.http.post("/api/system/adb/restart",{}).pipe(Fe({next:t=>{t?.report&&this.applyReadinessReport(t.report),this.isRestartingAdb.set(!1)},error:t=>{console.error("Failed to restart ADB server:",t),this.isRestartingAdb.set(!1)}}))}connectWirelessAdb(t,e=5555){return this.http.post("/api/system/adb/connect",{host:t,port:e}).pipe(Fe({next:o=>{o?.report&&this.applyReadinessReport(o.report)}}))}fetchAdbServerStatus(){return this.http.get("/api/system/adb/server").pipe(Fe(t=>this.adbServerStatus.set(t)))}probeAdbServer(t,e){return this.http.post("/api/system/adb/server/probe",{host:t,port:e,persist:!1})}connectAdbServer(t,e,o=!0){return this.http.post("/api/system/adb/server/connect",{host:t,port:e,persist:o}).pipe(Fe(i=>{i.connection_result.success&&(this.adbServerStatus.set({endpoint:i.connection_result.endpoint}),i.report&&this.applyReadinessReport(i.report))}))}useLocalAdbServer(t=!0){return this.http.post("/api/system/adb/server/local",{},{params:{persist:t}}).pipe(Fe(e=>{this.adbServerStatus.set({endpoint:e.connection_result.endpoint}),e.report&&this.applyReadinessReport(e.report)}))}selectDevice(t){return this.isLoading.set(!0),this.http.post("/api/system/devices/select",{serial:t}).pipe(Fe({next:e=>{e?.report&&this.applyReadinessReport(e.report),this.isLoading.set(!1)},error:e=>{console.error("Failed to select active device:",e),this.isLoading.set(!1)}}))}currentApiKey=A(()=>this.llmProbe()?.metadata?.current_key||"");apiKeysMap=A(()=>this.llmProbe()?.metadata?.api_keys||{});modelConfigEnv=w(null);fetchModelConfigEnv(){return this.http.get("/api/system/model-config-env").pipe(Fe({next:t=>{this.modelConfigEnv.set(t)},error:t=>{console.error("Failed to fetch model config and env:",t)}}))}testApiKey(t,e,o){return this.http.post("/api/system/credentials/test",{provider:t,api_key:e,base_url:o})}updateApiKey(t,e,o=!0){return this.http.post("/api/system/credentials",{provider:t,api_key:e,persist_to_env:o}).pipe(Fe({next:i=>{i?.report&&this.applyReadinessReport(i.report),this.fetchModelConfigEnv().subscribe()},error:i=>{console.error(`Failed to update credentials for ${t}:`,i)}}))}static \u0275fac=function(e){return new(e||n)};static \u0275prov=ee({token:n,factory:n.\u0275fac,providedIn:"root"})};var Yv={"com.google.android.apps.maps":{name:"\u5730\u56FE",icon:"explore",pkg:"com.google.android.apps.maps",category:"navigation"},"com.google.android.gm":{name:"Gmail",icon:"mail",pkg:"com.google.android.gm",category:"productivity"},"com.android.chrome":{name:"Chrome",icon:"public",pkg:"com.android.chrome",category:"browser"},"com.google.android.youtube":{name:"YouTube",icon:"smart_display",pkg:"com.google.android.youtube",category:"entertainment"},"com.android.settings":{name:"\u8BBE\u7F6E",icon:"settings",pkg:"com.android.settings",category:"system"},"com.google.android.deskclock":{name:"\u65F6\u949F",icon:"timer",pkg:"com.google.android.deskclock",category:"utility"},"com.android.deskclock":{name:"\u65F6\u949F",icon:"timer",pkg:"com.android.deskclock",category:"utility"},"com.google.android.calculator":{name:"\u8BA1\u7B97\u5668",icon:"calculate",pkg:"com.google.android.calculator",category:"utility"},"com.android.calculator2":{name:"\u8BA1\u7B97\u5668",icon:"calculate",pkg:"com.android.calculator2",category:"utility"},"com.google.android.apps.photos":{name:"\u76F8\u518C",icon:"photo_library",pkg:"com.google.android.apps.photos",category:"media"},"com.google.android.calendar":{name:"\u65E5\u5386",icon:"calendar_month",pkg:"com.google.android.calendar",category:"productivity"},"com.google.android.keep":{name:"Keep \u7B14\u8BB0",icon:"note_alt",pkg:"com.google.android.keep",category:"productivity"},"com.android.vending":{name:"\u5E94\u7528\u5546\u5E97",icon:"storefront",pkg:"com.android.vending",category:"tools"},"com.google.android.apps.messaging":{name:"\u77ED\u4FE1",icon:"chat",pkg:"com.google.android.apps.messaging",category:"communication"},"com.tencent.mm":{name:"\u5FAE\u4FE1",icon:"forum",pkg:"com.tencent.mm",category:"social"},"com.xingin.xhs":{name:"\u5C0F\u7EA2\u4E66",icon:"auto_stories",pkg:"com.xingin.xhs",category:"social"},"com.sankuai.meituan":{name:"\u7F8E\u56E2",icon:"restaurant",pkg:"com.sankuai.meituan",category:"lifestyle"},"com.dianping.v1":{name:"\u5927\u4F17\u70B9\u8BC4",icon:"star",pkg:"com.dianping.v1",category:"lifestyle"},"tv.danmaku.bili":{name:"\u54D4\u54E9\u54D4\u54E9",icon:"video_library",pkg:"tv.danmaku.bili",category:"entertainment"},"com.eg.android.AlipayGphone":{name:"\u652F\u4ED8\u5B9D",icon:"account_balance_wallet",pkg:"com.eg.android.AlipayGphone",category:"finance"},"com.netease.cloudmusic":{name:"\u7F51\u6613\u4E91\u97F3\u4E50",icon:"headphones",pkg:"com.netease.cloudmusic",category:"entertainment"},"com.spotify.music":{name:"Spotify",icon:"music_note",pkg:"com.spotify.music",category:"entertainment"}},Kv=[{id:"maps_coffee",title:"\u5BFB\u627E\u7CBE\u54C1\u5496\u5561",description:"\u5728 Google \u5730\u56FE\u67E5\u627E\u9644\u8FD1\u9AD8\u8BC4\u5206\u5496\u5561\u9986",goal:"\u6253\u5F00 Google \u5730\u56FE\uFF0C\u641C\u7D22\u9644\u8FD1\u8BC4\u5206\u6700\u9AD8\u7684\u7CBE\u54C1\u5496\u5561\u5E97\uFF0C\u67E5\u770B\u9996\u4E2A\u7ED3\u679C\u8BE6\u60C5\u3002",profile:"flash",category:"flash",tag:"\u5730\u56FE",apps:[{name:"\u5730\u56FE",icon:"explore",pkg:"com.google.android.apps.maps"}],requiredPackages:["com.google.android.apps.maps"],priority:95},{id:"pro_commute_share",title:"\u901A\u52E4\u65F6\u95F4\u4E0E\u77ED\u4FE1\u8349\u7A3F",description:"\u67E5\u8BE2\u5730\u56FE\u901A\u52E4\u65F6\u95F4\uFF0C\u5E76\u8D77\u8349\u9884\u8BA1\u5230\u8FBE\u65F6\u95F4\u77ED\u4FE1",goal:"\u6253\u5F00 Google \u5730\u56FE\u67E5\u8BE2\u524D\u5F80\u56FD\u9645\u673A\u573A\u7684\u901A\u52E4\u65F6\u95F4\uFF0C\u8BA1\u7B97\u5230\u8FBE\u65F6\u95F4\uFF0C\u518D\u6253\u5F00\u77ED\u4FE1\u5E94\u7528\u8D77\u8349\u9884\u8BA1\u5230\u8FBE\u65F6\u95F4\u77ED\u4FE1\u3002",profile:"pro",category:"cross_app",tag:"\u5730\u56FE + \u77ED\u4FE1",apps:[{name:"\u5730\u56FE",icon:"explore",pkg:"com.google.android.apps.maps"},{name:"\u77ED\u4FE1",icon:"chat",pkg:"com.google.android.apps.messaging"}],requiredPackages:["com.google.android.apps.maps","com.google.android.apps.messaging"],matchMode:"all",priority:92},{id:"gmail_receipts",title:"\u67E5\u627E\u8BA2\u5355\u56DE\u6267",description:"\u5728 Gmail \u67E5\u627E\u8FD1\u671F\u822A\u73ED\u6216\u5FEB\u9012\u786E\u8BA4\u90AE\u4EF6",goal:"\u6253\u5F00 Gmail\uFF0C\u641C\u7D22\u8FD1\u671F\u822A\u73ED\u6216\u5305\u88F9\u6295\u9012\u786E\u8BA4\u90AE\u4EF6\u3002",profile:"flash",category:"flash",tag:"Gmail",apps:[{name:"Gmail",icon:"mail",pkg:"com.google.android.gm"}],requiredPackages:["com.google.android.gm"],priority:90},{id:"pro_email_to_calendar",title:"\u5C06\u90AE\u4EF6\u884C\u7A0B\u52A0\u5165\u65E5\u5386",description:"\u63D0\u53D6 Gmail \u4E2D\u7684\u884C\u7A0B\u65E5\u671F\u5E76\u521B\u5EFA\u65E5\u5386\u4E8B\u4EF6",goal:"\u6253\u5F00 Gmail \u67E5\u627E\u6700\u65B0\u6D3B\u52A8\u9080\u8BF7\u6216\u884C\u7A0B\uFF0C\u63D0\u53D6\u65E5\u671F\u548C\u5730\u70B9\uFF0C\u518D\u6253\u5F00 Google \u65E5\u5386\u521B\u5EFA\u5BF9\u5E94\u4E8B\u4EF6\u3002",profile:"pro",category:"cross_app",tag:"Gmail + \u65E5\u5386",apps:[{name:"Gmail",icon:"mail",pkg:"com.google.android.gm"},{name:"\u65E5\u5386",icon:"calendar_month",pkg:"com.google.android.calendar"}],requiredPackages:["com.google.android.gm"],priority:94},{id:"chrome_research",title:"\u641C\u7D22 AI \u6700\u65B0\u8FDB\u5C55",description:"\u5728 Chrome \u641C\u7D22\u591A\u6A21\u6001 AI \u6700\u65B0\u52A8\u6001",goal:"\u6253\u5F00 Chrome\uFF0C\u641C\u7D22\u591A\u6A21\u6001\u79FB\u52A8 AI \u667A\u80FD\u4F53\u7684\u6700\u65B0\u8FDB\u5C55\u3002",profile:"flash",category:"flash",tag:"Chrome",apps:[{name:"Chrome",icon:"public",pkg:"com.android.chrome"}],requiredPackages:["com.android.chrome"],priority:88},{id:"pro_research_keep",title:"\u4EA7\u54C1\u5BF9\u6BD4\u4E0E\u7B14\u8BB0",description:"\u5728 Chrome \u5BF9\u6BD4\u4E09\u6B3E\u70ED\u95E8\u8033\u673A\uFF0C\u5E76\u8BB0\u5165 Keep",goal:"\u6253\u5F00 Chrome\uFF0C\u8C03\u7814\u4E09\u6B3E\u70ED\u95E8\u964D\u566A\u8033\u673A\uFF0C\u5BF9\u6BD4\u4EF7\u683C\u548C\u7EED\u822A\uFF0C\u518D\u5728 Keep \u4E2D\u5199\u4E00\u4EFD\u7ED3\u6784\u5316\u5BF9\u6BD4\u7B14\u8BB0\u3002",profile:"pro",category:"pro",tag:"Chrome + Keep \u7B14\u8BB0",apps:[{name:"Chrome",icon:"public",pkg:"com.android.chrome"},{name:"Keep \u7B14\u8BB0",icon:"note_alt",pkg:"com.google.android.keep"}],requiredPackages:["com.android.chrome"],priority:91},{id:"youtube_lofi",title:"\u64AD\u653E Lo-Fi \u97F3\u4E50\u7535\u53F0",description:"\u5728 YouTube \u641C\u7D22\u5E76\u64AD\u653E Lo-Fi \u563B\u54C8\u76F4\u64AD",goal:"\u6253\u5F00 YouTube\uFF0C\u641C\u7D22\u201CLofi hip hop beats relaxing radio\u201D\uFF0C\u64AD\u653E\u5BF9\u5E94\u76F4\u64AD\u3002",profile:"flash",category:"flash",tag:"YouTube",apps:[{name:"YouTube",icon:"smart_display",pkg:"com.google.android.youtube"}],requiredPackages:["com.google.android.youtube"],priority:85},{id:"settings_display_wifi",title:"\u6DF1\u8272\u6A21\u5F0F\u4E0E Wi-Fi \u68C0\u67E5",description:"\u5728\u8BBE\u7F6E\u4E2D\u542F\u7528\u6DF1\u8272\u6A21\u5F0F\u5E76\u68C0\u67E5\u7F51\u7EDC\u8FDE\u63A5",goal:"\u6253\u5F00\u8BBE\u7F6E\uFF0C\u8FDB\u5165\u663E\u793A\u8BBE\u7F6E\uFF0C\u786E\u8BA4\u6DF1\u8272\u6A21\u5F0F\u5DF2\u5F00\u542F\uFF0C\u518D\u68C0\u67E5 Wi-Fi \u8FDE\u63A5\u72B6\u6001\u3002",profile:"flash",category:"flash",tag:"\u8BBE\u7F6E",apps:[{name:"\u8BBE\u7F6E",icon:"settings",pkg:"com.android.settings"}],requiredPackages:["com.android.settings"],priority:87},{id:"pro_settings_qa",title:"\u7CFB\u7EDF\u529F\u80FD\u4E0E\u5D29\u6E83\u68C0\u67E5",description:"\u904D\u5386\u8BBE\u7F6E\u5B50\u83DC\u5355\uFF0C\u68C0\u67E5\u9875\u9762\u4E0E\u5D29\u6E83\u5F39\u7A97",goal:"\u904D\u5386\u8BBE\u7F6E\u4E2D\u7684\u7F51\u7EDC\u3001\u5DF2\u8FDE\u63A5\u8BBE\u5907\u3001\u5E94\u7528\u3001\u7535\u6C60\u548C\u5B58\u50A8\u83DC\u5355\uFF0C\u786E\u8BA4\u5404\u9875\u9762\u6B63\u5E38\u52A0\u8F7D\u4E14\u6CA1\u6709\u65E0\u54CD\u5E94\u6216\u5D29\u6E83\u5F39\u7A97\uFF0C\u6C47\u603B\u68C0\u67E5\u7ED3\u679C\u3002",profile:"pro",category:"monitor",tag:"\u8BBE\u7F6E\u529F\u80FD\u6D4B\u8BD5",apps:[{name:"\u8BBE\u7F6E",icon:"settings",pkg:"com.android.settings"}],requiredPackages:["com.android.settings"],priority:93},{id:"clock_timer",title:"25 \u5206\u949F\u756A\u8304\u949F",description:"\u5728\u65F6\u949F\u5E94\u7528\u542F\u52A8 25 \u5206\u949F\u4E13\u6CE8\u8BA1\u65F6",goal:"\u6253\u5F00\u65F6\u949F\uFF0C\u5207\u6362\u81F3\u8BA1\u65F6\u5668\uFF0C\u8BBE\u7F6E 25 \u5206\u949F\u5E76\u5F00\u59CB\u5012\u8BA1\u65F6\u3002",profile:"flash",category:"flash",tag:"\u65F6\u949F",apps:[{name:"\u65F6\u949F",icon:"timer",pkg:"com.google.android.deskclock"}],requiredPackages:["com.google.android.deskclock","com.android.deskclock"],priority:86},{id:"calc_gratuity",title:"\u5206\u644A\u8D26\u5355\u4E0E\u5C0F\u8D39",description:"\u8BA1\u7B97 186.40 \u7F8E\u5143\u8D26\u5355\u52A0 18% \u5C0F\u8D39\u540E\u7684\u4E09\u4EBA\u5747\u644A\u91D1\u989D",goal:"\u6253\u5F00\u8BA1\u7B97\u5668\uFF0C\u4E3A 186.40 \u7F8E\u5143\u8D26\u5355\u8BA1\u7B97 18% \u5C0F\u8D39\uFF0C\u518D\u8BA1\u7B97\u4E09\u4EBA\u5747\u644A\u91D1\u989D\u3002",profile:"flash",category:"flash",tag:"\u8BA1\u7B97\u5668",apps:[{name:"\u8BA1\u7B97\u5668",icon:"calculate",pkg:"com.google.android.calculator"}],requiredPackages:["com.google.android.calculator","com.android.calculator2"],priority:84},{id:"photos_inspect",title:"\u67E5\u770B\u6700\u65B0\u622A\u56FE",description:"\u6253\u5F00 Google \u76F8\u518C\u67E5\u770B\u6700\u65B0\u622A\u56FE",goal:"\u6253\u5F00 Google \u76F8\u518C\uFF0C\u67E5\u770B\u622A\u56FE\u76F8\u518C\u4E2D\u7684\u6700\u65B0\u622A\u56FE\u3002",profile:"flash",category:"flash",tag:"\u76F8\u518C",apps:[{name:"\u76F8\u518C",icon:"photo_library",pkg:"com.google.android.apps.photos"}],requiredPackages:["com.google.android.apps.photos"],priority:82},{id:"wechat_browse",title:"\u67E5\u770B\u5FAE\u4FE1\u6D88\u606F",description:"\u6253\u5F00\u5FAE\u4FE1\u67E5\u770B\u6700\u8FD1\u804A\u5929",goal:"\u6253\u5F00\u5FAE\u4FE1\uFF0C\u67E5\u770B\u6700\u8FD1\u7684\u804A\u5929\u6D88\u606F\u3002",profile:"flash",category:"flash",tag:"\u5FAE\u4FE1",apps:[{name:"\u5FAE\u4FE1",icon:"forum",pkg:"com.tencent.mm"}],requiredPackages:["com.tencent.mm"],priority:89},{id:"pro_wechat_to_calendar",title:"\u5C06\u5FAE\u4FE1\u901A\u77E5\u52A0\u5165\u65E5\u5386",description:"\u63D0\u53D6\u5FAE\u4FE1\u4F1A\u8BAE\u901A\u77E5\u5E76\u52A0\u5165\u65E5\u5386",goal:"\u6253\u5F00\u5FAE\u4FE1\uFF0C\u5728\u6700\u8FD1\u804A\u5929\u4E2D\u67E5\u627E\u6700\u65B0\u4F1A\u8BAE\u6216\u6D3B\u52A8\u901A\u77E5\uFF0C\u63D0\u53D6\u65F6\u95F4\u548C\u4E3B\u9898\uFF0C\u518D\u6253\u5F00\u65E5\u5386\u521B\u5EFA\u4E8B\u4EF6\u3002",profile:"pro",category:"cross_app",tag:"\u5FAE\u4FE1 + \u65E5\u5386",apps:[{name:"\u5FAE\u4FE1",icon:"forum",pkg:"com.tencent.mm"},{name:"\u65E5\u5386",icon:"calendar_month",pkg:"com.google.android.calendar"}],requiredPackages:["com.tencent.mm"],priority:93},{id:"xhs_coffee_guide",title:"\u5C0F\u7EA2\u4E66\u5496\u5561\u5E97\u653B\u7565",description:"\u5728\u5C0F\u7EA2\u4E66\u641C\u7D22\u70ED\u95E8\u7CBE\u54C1\u5496\u5561\u5E97\u8BC4\u6D4B",goal:"\u6253\u5F00\u5C0F\u7EA2\u4E66\uFF0C\u641C\u7D22\u9AD8\u8BC4\u5206\u7CBE\u54C1\u5496\u5561\u5E97\uFF0C\u67E5\u770B\u9996\u7BC7\u7B14\u8BB0\u3002",profile:"flash",category:"flash",tag:"\u5C0F\u7EA2\u4E66",apps:[{name:"\u5C0F\u7EA2\u4E66",icon:"auto_stories",pkg:"com.xingin.xhs"}],requiredPackages:["com.xingin.xhs"],priority:87},{id:"meituan_ramen_search",title:"\u7F8E\u56E2\u7F8E\u98DF\u641C\u7D22",description:"\u5728\u7F8E\u56E2\u6216\u5927\u4F17\u70B9\u8BC4\u641C\u7D22\u9644\u8FD1\u9AD8\u8BC4\u5206\u62C9\u9762\u5E97",goal:"\u6253\u5F00\u7F8E\u56E2\u6216\u5927\u4F17\u70B9\u8BC4\uFF0C\u641C\u7D22\u9644\u8FD1\u9AD8\u8BC4\u5206\u62C9\u9762\u5E97\uFF0C\u67E5\u770B\u9996\u5BB6\u9910\u5385\u8BC4\u5206\u3002",profile:"flash",category:"flash",tag:"\u7F8E\u56E2",apps:[{name:"\u7F8E\u56E2",icon:"restaurant",pkg:"com.sankuai.meituan"}],requiredPackages:["com.sankuai.meituan","com.dianping.v1"],priority:86},{id:"bilibili_stream",title:"\u54D4\u54E9\u54D4\u54E9\u79D1\u6280\u89C6\u9891",description:"\u5728\u54D4\u54E9\u54D4\u54E9\u641C\u7D22\u5E76\u64AD\u653E AI \u667A\u80FD\u4F53\u6559\u7A0B",goal:"\u6253\u5F00\u54D4\u54E9\u54D4\u54E9\uFF0C\u641C\u7D22\u201CAI Agent Architecture\u201D\uFF0C\u64AD\u653E\u6700\u5339\u914D\u7684\u89C6\u9891\u3002",profile:"flash",category:"flash",tag:"\u54D4\u54E9\u54D4\u54E9",apps:[{name:"\u54D4\u54E9\u54D4\u54E9",icon:"video_library",pkg:"tv.danmaku.bili"}],requiredPackages:["tv.danmaku.bili"],priority:85},{id:"pro_playstore_review",title:"\u5E94\u7528\u5546\u5E97\u8BC4\u4EF7\u8C03\u7814",description:"\u5BF9\u6BD4 Google Play \u4E0A\u7684\u4EFB\u52A1\u7BA1\u7406\u5E94\u7528\u4E0E\u8BC4\u4EF7",goal:"\u6253\u5F00 Google Play\uFF0C\u641C\u7D22\u9AD8\u8BC4\u5206\u4EFB\u52A1\u7BA1\u7406\u5E94\u7528\uFF0C\u5BF9\u6BD4\u524D\u4E24\u6B3E\u5E94\u7528\u7684\u8BC4\u5206\u548C\u6700\u65B0\u8BC4\u8BBA\uFF0C\u8BB0\u5F55\u63A8\u8350\u7ED3\u679C\u3002",profile:"pro",category:"pro",tag:"\u5E94\u7528\u5546\u5E97",apps:[{name:"\u5E94\u7528\u5546\u5E97",icon:"storefront",pkg:"com.android.vending"}],requiredPackages:["com.android.vending"],priority:88}];var Su=class n{allTasks=Kv;appRegistry=Yv;isSuggestionOnDevice(t,e){return e.size===0?!1:!t.requiredPackages||t.requiredPackages.length===0?!0:t.matchMode==="all"?t.requiredPackages.every(o=>e.has(o)):t.requiredPackages.some(o=>e.has(o))}filterAndRankTasks(t,e,o=0){let i=t.size>0,a=this.allTasks.map(c=>{let u=this.isSuggestionOnDevice(c,t),f=c.priority??50;return i&&(u?(f+=100,c.requiredPackages&&c.requiredPackages.length>1&&c.matchMode==="all"&&(f+=30)):f-=40),{task:c,isMatched:u,score:f}}).filter(c=>e==="flash"?c.task.profile==="flash":e==="pro"?c.task.profile==="pro":e==="cross_app"?c.task.category==="cross_app":e==="monitor"?c.task.category==="monitor":!0);a.sort((c,u)=>u.score-c.score);let s=a.map(c=>c.task);if(o>0&&s.length>0){let c=o%s.length;s=[...s.slice(c),...s.slice(0,c)]}return s}static \u0275fac=function(e){return new(e||n)};static \u0275prov=ee({token:n,factory:n.\u0275fac,providedIn:"root"})};var Xt=[{id:"off",label:"\u5173\u95ED",tagline:"\u4E0D\u68C0\u67E5\u7ED3\u679C\uFF0C\u4EFB\u52A1\u770B\u4F3C\u5B8C\u6210\u65F6\u5373\u7ED3\u675F\u3002",latency:"\u4E0D\u589E\u52A0\u8017\u65F6",runs:["\u6BCF\u4E2A\u6B65\u9AA4\u6267\u884C\u540E\u5373\u89C6\u4E3A\u5B8C\u6210\u3002","\u4FDD\u7559\u5B8C\u6574\u64CD\u4F5C\u8BB0\u5F55\uFF0C\u4E0D\u7ED9\u51FA\u901A\u8FC7\u6216\u5931\u8D25\u7ED3\u8BBA\u3002"],skips:["\u4E0D\u590D\u67E5\uFF0C\u4E5F\u4E0D\u91CD\u8BD5\u3002"],bestFor:"\u9002\u5408\u5FEB\u901F\u8BD5\u7528\u548C\u6F14\u793A\uFF0C\u4EC5\u89C2\u5BDF\u6267\u884C\u8FC7\u7A0B\u3002"},{id:"final",label:"\u7ED3\u675F\u65F6\u68C0\u67E5",tagline:"\u4EFB\u52A1\u7ED3\u675F\u540E\u6309\u76EE\u6807\u68C0\u67E5\u4E00\u6B21\u7ED3\u679C\uFF0C\u9ED8\u8BA4\u4F7F\u7528\u6B64\u6A21\u5F0F\u3002",latency:"\u7ED3\u675F\u65F6\u989D\u5916\u8017\u65F6\u7EA6 20\u201360 \u79D2",runs:["\u4EFB\u52A1\u5B8C\u6210\u540E\uFF0C\u5C06\u6700\u7EC8\u5C4F\u5E55\u3001\u64CD\u4F5C\u5386\u53F2\u548C\u8BBE\u5907\u72B6\u6001\u4E0E\u76EE\u6807\u8FDB\u884C\u5BF9\u7167\u3002","\u82E5\u7ED3\u679C\u4E0D\u7B26\u5408\u76EE\u6807\uFF0C\u5C06\u8FD4\u56DE\u4FEE\u6B63\uFF0C\u6700\u591A\u5C1D\u8BD5 3 \u6B21\u3002"],skips:["\u4EFB\u52A1\u6267\u884C\u671F\u95F4\u4E0D\u8FDB\u884C\u68C0\u67E5\u3002"],bestFor:"\u9002\u5408\u65E5\u5E38\u4EFB\u52A1\uFF0C\u5728\u7ED3\u675F\u65F6\u7ED9\u51FA\u901A\u8FC7\u6216\u5931\u8D25\u7ED3\u8BBA\u3002"},{id:"checkpoints",label:"\u9010\u6B65\u68C0\u67E5",tagline:"\u6BCF\u6B65\u5B8C\u6210\u540E\u7ACB\u5373\u68C0\u67E5\uFF0C\u7ED3\u675F\u65F6\u518D\u505A\u6700\u7EC8\u68C0\u67E5\u3002",latency:"\u6BCF\u6B65\u7ED3\u675F\u540E\u5728\u540E\u53F0\u8FDB\u884C\u7B80\u77ED\u68C0\u67E5",runs:["\u6BCF\u6B65\u5B8C\u6210\u540E\uFF0C\u7ACB\u5373\u4F7F\u7528\u5F53\u65F6\u7684\u622A\u56FE\u8FDB\u884C\u68C0\u67E5\u3002","\u82E5\u67D0\u6B65\u51FA\u9519\uFF0C\u4F1A\u5148\u4FEE\u6B63\u518D\u7EE7\u7EED\uFF0C\u6BCF\u6B65\u6700\u591A\u91CD\u8BD5 2 \u6B21\u3002","\u8BB0\u5F55\u5931\u8D25\u7684\u6D4B\u8BD5\u6761\u4EF6\uFF0C\u7136\u540E\u7EE7\u7EED\u6267\u884C\u4EFB\u52A1\u3002","\u7ED3\u675F\u65F6\u4ECD\u4F1A\u8FDB\u884C\u6700\u7EC8\u68C0\u67E5\u3002"],bestFor:"\u9002\u5408\u524D\u671F\u9519\u8BEF\u4F1A\u5F71\u54CD\u540E\u7EED\u7ED3\u679C\u7684\u957F\u6D41\u7A0B\u4EFB\u52A1\u3002"},{id:"strict",label:"\u4E25\u683C\u68C0\u67E5",tagline:"\u9010\u6B65\u68C0\u67E5\u5E76\u589E\u52A0\u91CD\u8BD5\u6B21\u6570\uFF0C\u9996\u6B21\u6D4B\u8BD5\u5931\u8D25\u5373\u505C\u6B62\u3002",latency:"\u8017\u65F6\u6700\u957F\uFF1A\u66F4\u591A\u68C0\u67E5\u4E0E\u91CD\u8BD5",runs:["\u589E\u52A0\u68C0\u67E5\u65F6\u95F4\u4E0E\u4FEE\u6B63\u6B21\u6570\uFF1A\u6BCF\u6B65\u6700\u591A 4 \u6B21\uFF0C\u7ED3\u675F\u65F6\u6700\u591A 5 \u6B21\u3002","\u9996\u6B21\u6D4B\u8BD5\u6761\u4EF6\u5931\u8D25\u65F6\u7ACB\u5373\u505C\u6B62\uFF0C\u5E76\u9644\u4E0A\u8BC1\u636E\u3002"],bestFor:"\u9002\u5408\u53D1\u5E03\u9A8C\u6536\u548C\u56DE\u5F52\u6D4B\u8BD5\uFF0C\u4E25\u683C\u907F\u514D\u8BEF\u5224\u901A\u8FC7\u3002"}],Qt=[{id:"flash",label:"\u5FEB\u901F\u8BC6\u522B",tagline:"\u901A\u8FC7\u4E00\u6B21\u8BC6\u522B\u67E5\u627E\u5C4F\u5E55\u6309\u94AE\u548C\u6587\u672C\u3002",latency:"\u6BCF\u6B21\u641C\u7D22\u8BC6\u522B 1 \u6B21",runs:["\u6839\u636E\u540D\u79F0\u3001\u56FE\u6807\u6216\u989C\u8272\u67E5\u627E\u5C4F\u5E55\u5143\u7D20\uFF0C\u76F4\u63A5\u8FD4\u56DE\u4F4D\u7F6E\u3002","\u652F\u6301\u4E00\u6B21\u67E5\u627E\u591A\u4E2A\u5143\u7D20\u3002"],skips:["\u4E0D\u653E\u5927\uFF0C\u4E5F\u4E0D\u518D\u6B21\u8BC6\u522B\u3002"],bestFor:"\u9002\u5408\u6309\u94AE\u3001\u56FE\u6807\u548C\u6587\u5B57\u6E05\u6670\u7684\u666E\u901A\u5E94\u7528\u3002"},{id:"pro",label:"\u591A\u6B21\u8BC6\u522B",tagline:"\u6700\u591A\u8BC6\u522B 3 \u6B21\uFF0C\u7ED3\u5408\u63A8\u7406\u540E\u8FD4\u56DE\u7ED3\u679C\u3002",latency:"\u6BCF\u6B21\u641C\u7D22\u6700\u591A\u8BC6\u522B 3 \u6B21",runs:["\u5148\u8BFB\u53D6\u754C\u9762\u5E03\u5C40\uFF0C\u518D\u641C\u7D22\u753B\u9762\u3002","\u9996\u6B21\u672A\u627E\u5230\u65F6\uFF0C\u4F1A\u5728 3 \u6B21\u9884\u7B97\u5185\u5C1D\u8BD5\u5176\u4ED6\u65B9\u5F0F\u3002"],skips:["\u4E0D\u653E\u5927\u5C0F\u533A\u57DF\uFF0C\u4EE5\u7F29\u77ED\u641C\u7D22\u65F6\u95F4\u3002"],bestFor:"\u9002\u5408\u6309\u4F4D\u7F6E\u63CF\u8FF0\u7684\u5143\u7D20\uFF08\u5982\u201CWi-Fi \u65C1\u7684\u5F00\u5173\u201D\uFF09\u6216\u6807\u7B7E\u4E0D\u6E05\u6670\u7684\u76EE\u6807\u3002"},{id:"ultra",label:"\u7CBE\u7EC6\u8BC6\u522B",tagline:"\u653E\u5927\u5C4F\u5E55\u5C40\u90E8\uFF0C\u6700\u591A\u8BC6\u522B 8 \u6B21\u3002",latency:"\u6BCF\u6B21\u641C\u7D22\u6700\u591A\u8BC6\u522B 8 \u6B21\uFF08\u8017\u65F6\u6700\u957F\uFF09",runs:["\u53EF\u88C1\u526A\u548C\u653E\u5927\u5C4F\u5E55\u5C40\u90E8\uFF0C\u9010\u4E00\u8BC6\u522B\u5C0F\u5B57\u4E0E\u5BC6\u96C6\u5E03\u5C40\u3002","\u540E\u7EED\u8BC6\u522B\u4F1A\u590D\u7528\u4E4B\u524D\u7684\u4FE1\u606F\uFF0C\u51CF\u5C11\u91CD\u590D\u5904\u7406\u3002"],bestFor:"\u9002\u5408\u5BC6\u96C6\u754C\u9762\u3001\u5FAE\u5C0F\u76EE\u6807\u3001\u56FE\u8868\u548C\u9700\u8981\u7CBE\u786E\u5B9A\u4F4D\u7684\u68C0\u67E5\u3002"}],ai="final",si="flash";function so(n,t,e){let o=String(t??"").trim().toLowerCase(),i=n.findIndex(r=>r.id===o);return i>=0?i:Math.max(0,n.findIndex(r=>r.id===e))}function ku(n,t){return t<=1?0:Math.min(Math.max(n,0),t-1)/(t-1)*100}var D_=(n,t)=>t.serial,Zv=(n,t)=>t.id,sA=(n,t)=>t.kind,cA=(n,t)=>t.name;function lA(n,t){n&1&&(l(0,"span",14),g(1,"check_circle"),d())}function dA(n,t){n&1&&(l(0,"span",15),g(1,"tune"),d())}function uA(n,t){n&1&&(l(0,"span",17),g(1,"lock"),d())}function gA(n,t){n&1&&(l(0,"span",15),g(1,"rocket_launch"),d())}function pA(n,t){n&1&&(l(0,"span",23),g(1,"check"),d())}function fA(n,t){n&1&&(l(0,"span"),g(1,"1"),d())}function mA(n,t){if(n&1){let e=B();l(0,"div",31)(1,"div",54)(2,"div",55)(3,"span",56),g(4,"bolt"),d()(),l(5,"div",57)(6,"div",58)(7,"div",59),g(8,"\u81EA\u52A8\u5B89\u88C5\u4F9D\u8D56"),d(),l(9,"div",60)(10,"button",61),I("click",function(){S(e);let i=m(2);return k(i.setSelectedOs("linux"))}),g(11,"Linux"),d(),l(12,"button",61),I("click",function(){S(e);let i=m(2);return k(i.setSelectedOs("darwin"))}),g(13,"macOS"),d(),l(14,"button",61),I("click",function(){S(e);let i=m(2);return k(i.setSelectedOs("windows"))}),g(15,"Windows"),d()()(),l(16,"div",62),g(17,"\u5728\u7EC8\u7AEF\u8FD0\u884C\u4EE5\u4E0B\u547D\u4EE4\uFF0C\u5B89\u88C5 ADB\u3001FFmpeg\u3001scrcpy \u548C\u9879\u76EE\u4F9D\u8D56\uFF1A"),d()()(),l(18,"div",63)(19,"code"),g(20),d(),l(21,"button",64),I("click",function(){S(e);let i=m(2);return k(i.copyToClipboard(i.oneClickSetupCmd(),"one_click_deps"))}),l(22,"span",29),g(23),d(),l(24,"span"),g(25),d()()()()}if(n&2){let e=m(2);p(10),E("active",e.effectiveOs()==="linux"),p(2),E("active",e.effectiveOs()==="darwin"),p(2),E("active",e.effectiveOs()==="windows"),p(6),y(e.oneClickSetupCmd()),p(),E("copied",e.copiedId()==="one_click_deps"),p(2),y(e.copiedId()==="one_click_deps"?"check":"content_copy"),p(2),y(e.copiedId()==="one_click_deps"?"\u5DF2\u590D\u5236":"\u590D\u5236")}}function _A(n,t){if(n&1){let e=B();l(0,"div",42)(1,"div",65)(2,"div",63)(3,"span",66),g(4,"$"),d(),l(5,"code",67),g(6,"uv python install 3.12"),d(),l(7,"button",64),I("click",function(){S(e);let i=m(2);return k(i.copyToClipboard("uv python install 3.12","py_install"))}),l(8,"span",29),g(9),d(),l(10,"span"),g(11),d()()()()()}if(n&2){let e=m(2);p(7),E("copied",e.copiedId()==="py_install"),p(2),y(e.copiedId()==="py_install"?"check":"content_copy"),p(2),y(e.copiedId()==="py_install"?"\u5DF2\u590D\u5236":"\u590D\u5236")}}function hA(n,t){if(n&1){let e=B();l(0,"div",42)(1,"div",65)(2,"div",63)(3,"span",66),g(4,"$"),d(),l(5,"code",67),g(6),d(),l(7,"button",64),I("click",function(){S(e);let i=m(2);return k(i.copyToClipboard(i.adbInstallCmd(),"env_adb_cmd"))}),l(8,"span",29),g(9),d(),l(10,"span"),g(11),d()()()()()}if(n&2){let e=m(2);p(6),y(e.adbInstallCmd()),p(),E("copied",e.copiedId()==="env_adb_cmd"),p(2),y(e.copiedId()==="env_adb_cmd"?"check":"content_copy"),p(2),y(e.copiedId()==="env_adb_cmd"?"\u5DF2\u590D\u5236":"\u590D\u5236")}}function CA(n,t){if(n&1){let e=B();l(0,"div",42)(1,"div",65)(2,"div",63)(3,"span",66),g(4,"$"),d(),l(5,"code",67),g(6,"artemis init"),d(),l(7,"button",64),I("click",function(){S(e);let i=m(2);return k(i.copyToClipboard("artemis init","cfg_init"))}),l(8,"span",29),g(9),d(),l(10,"span"),g(11),d()()()()()}if(n&2){let e=m(2);p(7),E("copied",e.copiedId()==="cfg_init"),p(2),y(e.copiedId()==="cfg_init"?"check":"content_copy"),p(2),y(e.copiedId()==="cfg_init"?"\u5DF2\u590D\u5236":"\u590D\u5236")}}function MA(n,t){if(n&1){let e=B();l(0,"div",42)(1,"div",65)(2,"div",63)(3,"span",66),g(4,"$"),d(),l(5,"code",67),g(6),d(),l(7,"button",64),I("click",function(){S(e);let i=m(2);return k(i.copyToClipboard(i.toolchainInstallCmd(),"install_toolchain"))}),l(8,"span",29),g(9),d(),l(10,"span"),g(11),d()()()()()}if(n&2){let e=m(2);p(6),y(e.toolchainInstallCmd()),p(),E("copied",e.copiedId()==="install_toolchain"),p(2),y(e.copiedId()==="install_toolchain"?"check":"content_copy"),p(2),y(e.copiedId()==="install_toolchain"?"\u5DF2\u590D\u5236":"\u590D\u5236")}}function bA(n,t){n&1&&(l(0,"span",23),g(1,"check"),d())}function PA(n,t){n&1&&(l(0,"span"),g(1,"2"),d())}function OA(n,t){n&1&&(l(0,"span",23),g(1,"check"),d())}function vA(n,t){n&1&&(l(0,"span"),g(1,"3"),d())}function yA(n,t){n&1&&(l(0,"span",68),g(1,"sync"),d(),l(2,"span"),g(3,"\u6B63\u5728\u91CD\u542F\u2026"),d())}function xA(n,t){if(n&1&&(l(0,"span",69),g(1,"check"),d(),l(2,"span",70),g(3),d()),n&2){let e=m(2);p(3),y(e.adbRestartFeedback())}}function wA(n,t){if(n&1&&(l(0,"span",29),g(1,"sync"),d(),l(2,"span"),g(3),d()),n&2){let e=m(2);p(3),y(e.isRemoteAdbServer()?"\u5237\u65B0\u8BBE\u5907":"\u91CD\u542F ADB")}}function SA(n,t){n&1&&(l(0,"span"),g(1,"\u865A\u62DF\u8BBE\u5907"),d(),l(2,"span",81),g(3,"\xB7"),d())}function kA(n,t){if(n&1&&(l(0,"span",81),g(1,"\xB7"),d(),l(2,"span"),g(3),d()),n&2){let e=m(3);p(3),y(e.activeDevice()?.screen_resolution)}}function EA(n,t){if(n&1&&(l(0,"span",81),g(1,"\xB7"),d(),l(2,"span"),g(3),d()),n&2){let e=m(3);p(3),L("Android ",e.activeDevice()?.android_version)}}function DA(n,t){if(n&1&&(l(0,"span",81),g(1,"\xB7"),d(),l(2,"span",82),g(3),d()),n&2){let e=m(3);p(3),tt(" Remote via ",e.adbServerStatus()?.endpoint?.host,":",e.adbServerStatus()?.endpoint?.port," ")}}function IA(n,t){n&1&&(l(0,"span",88),g(1,"\u2713 \u5F53\u524D\u8BBE\u5907"),d())}function TA(n,t){if(n&1){let e=B();l(0,"button",86),I("click",function(){let i=S(e).$implicit,r=m(4);return k(r.selectTargetDevice(i.serial))}),l(1,"span",87),g(2," phone_android "),d(),l(3,"span"),g(4),d(),M(5,IA,2,0,"span",88),d()}if(n&2){let e=t.$implicit,o=m(4);E("selected",e.serial===o.activeDevice()?.serial),p(4),y(e.model||e.serial),p(),b(e.serial===o.activeDevice()?.serial?5:-1)}}function AA(n,t){if(n&1&&(l(0,"div",80)(1,"span",83),g(2,"\u9009\u62E9\u5F53\u524D\u8BBE\u5907\uFF1A"),d(),l(3,"div",84),W(4,TA,6,4,"button",85,D_),d()()),n&2){let e=m(3);p(4),G(e.connectedDevices())}}function RA(n,t){if(n&1&&(l(0,"div",46)(1,"div",71)(2,"div",72)(3,"span",73),g(4," phone_android "),d()(),l(5,"div",74)(6,"div",75),g(7),d(),l(8,"div",76),M(9,SA,4,0),l(10,"span"),g(11),d(),M(12,kA,4,1),M(13,EA,4,1),M(14,DA,4,2),d()(),l(15,"div",77),z(16,"span",78),l(17,"span",79),g(18,"\u5DF2\u8FDE\u63A5"),d()()(),M(19,AA,6,0,"div",80),d()),n&2){let e=m(2);p(7),L(" ",e.activeDevice()?.model||e.activeDevice()?.serial," "),p(2),b(e.activeDevice()?.is_emulator?9:-1),p(2),y(e.activeDevice()?.serial),p(),b(e.activeDevice()?.screen_resolution?12:-1),p(),b(e.activeDevice()?.android_version?13:-1),p(),b(e.isRemoteAdbServer()?14:-1),p(5),b(e.connectedDevices().length>1?19:-1)}}function FA(n,t){n&1&&(l(0,"span",106),g(1,"check"),d())}function NA(n,t){n&1&&z(0,"span",107)}function LA(n,t){n&1&&(l(0,"span",106),g(1,"check"),d())}function VA(n,t){n&1&&z(0,"span",107)}function BA(n,t){n&1&&(l(0,"span"),g(1,"2"),d())}function jA(n,t){n&1&&(l(0,"span",106),g(1,"check"),d())}function zA(n,t){n&1&&z(0,"span",107)}function $A(n,t){n&1&&(l(0,"span"),g(1,"3"),d())}function HA(n,t){if(n&1&&(l(0,"div",125),g(1),d()),n&2){let e=t.$implicit;p(),y(e)}}function UA(n,t){if(n&1&&W(0,HA,2,1,"div",125,ze),n&2){let e=m(4);G(e.emulatorLaunchState()?.logs)}}function WA(n,t){n&1&&(l(0,"div",124),g(1,"\u6B63\u5728\u7B49\u5F85\u8FDB\u7A0B\u8F93\u51FA\u2026"),d())}function GA(n,t){if(n&1){let e=B();l(0,"div",119)(1,"div",120)(2,"div",121)(3,"span",29),g(4,"terminal"),d(),l(5,"span"),g(6,"\u6A21\u62DF\u5668\u63A7\u5236\u53F0\u8F93\u51FA\uFF08stdout / stderr\uFF09"),d()(),l(7,"button",122),I("click",function(){S(e);let i=m(3);return k(i.copyToClipboard(i.emulatorLaunchState()?.logs?.join(` `)||"","boot_logs"))}),l(8,"span",29),g(9),d(),l(10,"span"),g(11),d()()(),l(12,"pre",123),M(13,UA,2,0)(14,WA,2,0,"div",124),d()()}if(n&2){let e=m(3);p(9),y(e.copiedId()==="boot_logs"?"check":"content_copy"),p(2),y(e.copiedId()==="boot_logs"?"Copied":"Copy Logs"),p(2),b(e.emulatorLaunchState()?.logs?.length?13:14)}}function qA(n,t){if(n&1){let e=B();l(0,"div",47)(1,"div",89)(2,"div",90)(3,"div",91)(4,"div",92)(5,"span",93),g(6,"sync"),d()(),l(7,"div",94)(8,"div",95)(9,"h4",96),g(10," \u6B63\u5728\u542F\u52A8 Android \u6A21\u62DF\u5668\uFF1A "),l(11,"span",97),g(12),d()(),l(13,"span",98),g(14),d()(),l(15,"p",99),g(16),d()()(),l(17,"div",100)(18,"button",101),I("click",function(){S(e);let i=m(2);return k(i.toggleLaunchLogs())}),l(19,"span",29),g(20,"terminal"),d(),l(21,"span"),g(22),d()(),l(23,"button",102),I("click",function(){S(e);let i=m(2);return k(i.stopEmulator())}),l(24,"span",29),g(25,"cancel"),d(),l(26,"span"),g(27,"\u505C\u6B62"),d()()()(),l(28,"div",103)(29,"div",104)(30,"div",105),M(31,FA,2,0,"span",106)(32,NA,1,0,"span",107),d(),l(33,"span",108),g(34,"1. \u542F\u52A8\u8FDB\u7A0B"),d()(),z(35,"div",109),l(36,"div",104)(37,"div",105),M(38,LA,2,0,"span",106)(39,VA,1,0,"span",107)(40,BA,2,0,"span"),d(),l(41,"span",108),g(42,"2. ADB \u8FDE\u63A5"),d()(),z(43,"div",109),l(44,"div",104)(45,"div",105),M(46,jA,2,0,"span",106)(47,zA,1,0,"span",107)(48,$A,2,0,"span"),d(),l(49,"span",108),g(50,"3. \u7CFB\u7EDF\u542F\u52A8"),d()(),z(51,"div",109),l(52,"div",104)(53,"div",105)(54,"span",106),g(55,"check_circle"),d()(),l(56,"span",108),g(57,"4. \u5C31\u7EEA"),d()()(),l(58,"div",110)(59,"div",111),z(60,"div",112),d(),l(61,"div",113)(62,"span",114),g(63),d(),l(64,"span",115)(65,"span",116),g(66,"timer"),d(),g(67),d()()(),l(68,"div",117)(69,"span",118),g(70,"info"),d(),l(71,"span"),g(72,"Android \u6A21\u62DF\u5668\u51B7\u542F\u52A8\u901A\u5E38\u9700\u8981 20\u201345 \u79D2\u3002\u4E0A\u65B9\u4F1A\u663E\u793A\u5B9E\u65F6\u8FDB\u5EA6\uFF0C\u8BF7\u52FF\u91CD\u590D\u70B9\u51FB\u542F\u52A8\u3002"),d()(),M(73,GA,15,3,"div",119),d()()}if(n&2){let e=m(2);p(12),y(e.emulatorLaunchState()?.avd_name||e.activeDevice()?.serial||"\u865A\u62DF\u8BBE\u5907"),p(2),y(e.emulatorLaunchState()?.status==="booting"?"OS Booting":"Starting"),p(2),y(e.emulatorLaunchState()?.stage_message||"Initializing Android Virtual Device..."),p(2),E("active",e.showLaunchLogs()),p(4),y(e.showLaunchLogs()?"Hide Logs":"View Boot Logs"),p(7),E("done",e.emulatorLaunchState()?.progress_percent>=35)("active",e.emulatorLaunchState()?.status==="starting"),p(2),b(e.emulatorLaunchState()?.progress_percent>=35?31:32),p(4),E("done",e.emulatorLaunchState()?.progress_percent>=35),p(),E("done",e.emulatorLaunchState()?.progress_percent>=65)("active",e.emulatorLaunchState()?.status==="waiting_for_adb"),p(2),b(e.emulatorLaunchState()?.progress_percent>=65?38:e.emulatorLaunchState()?.status==="waiting_for_adb"?39:40),p(5),E("done",e.emulatorLaunchState()?.progress_percent>=65),p(),E("done",e.emulatorLaunchState()?.status==="ready")("active",e.emulatorLaunchState()?.status==="booting"||e.adbProbe()?.summary==="Device Booting"),p(2),b(e.emulatorLaunchState()?.status==="ready"?46:e.emulatorLaunchState()?.status==="booting"||e.adbProbe()?.summary==="Device Booting"?47:48),p(5),E("done",e.emulatorLaunchState()?.status==="ready"),p(),E("done",e.emulatorLaunchState()?.status==="ready"),p(8),Ie("width",e.emulatorLaunchState()?.progress_percent||25,"%"),p(3),L("",e.emulatorLaunchState()?.progress_percent||25,"% Complete"),p(4),L(" Elapsed: ",e.emulatorLaunchState()?.elapsed_seconds||0,"s "),p(6),b(e.showLaunchLogs()?73:-1)}}function YA(n,t){if(n&1&&(l(0,"div",125),g(1),d()),n&2){let e=t.$implicit;p(),y(e)}}function KA(n,t){if(n&1){let e=B();l(0,"div",135)(1,"div",120)(2,"span"),g(3,"\u8FDB\u7A0B\u8F93\u51FA\u4E0E\u9519\u8BEF\u65E5\u5FD7\uFF1A"),d(),l(4,"button",122),I("click",function(){S(e);let i=m(3);return k(i.copyToClipboard(i.emulatorLaunchState()?.logs?.join(` `)||"","fail_logs"))}),l(5,"span",29),g(6),d(),l(7,"span"),g(8),d()()(),l(9,"pre",140),W(10,YA,2,1,"div",125,ze),d()()}if(n&2){let e=m(3);p(6),y(e.copiedId()==="fail_logs"?"check":"content_copy"),p(2),y(e.copiedId()==="fail_logs"?"Copied":"Copy Logs"),p(2),G(e.emulatorLaunchState()?.logs)}}function ZA(n,t){if(n&1){let e=B();l(0,"button",141),I("click",function(){S(e);let i=m(3);return k(i.launchAvdEmulator(i.emulatorLaunchState().avd_name))}),l(1,"span",29),g(2,"refresh"),d(),l(3,"span"),g(4),d()()}if(n&2){let e=m(3);N("disabled",e.isRemoteAdbServer()),p(4),L("Retry Launch (",e.emulatorLaunchState()?.avd_name,")")}}function XA(n,t){if(n&1){let e=B();l(0,"div",48)(1,"div",126)(2,"div",127)(3,"div",128)(4,"div",129)(5,"span",130),g(6,"error"),d()(),l(7,"div",131)(8,"h4",132),g(9,"\u6A21\u62DF\u5668\u542F\u52A8\u5931\u8D25"),d(),l(10,"p",133),g(11),d()()(),l(12,"button",134),I("click",function(){S(e);let i=m(2);return k(i.dismissEmulatorStatus())}),l(13,"span",29),g(14,"close"),d()()(),M(15,KA,12,2,"div",135),l(16,"div",136),M(17,ZA,5,2,"button",137),l(18,"button",138),I("click",function(){S(e);let i=m(2);return k(i.restartAdbServer())}),l(19,"span",29),g(20,"sync"),d(),l(21,"span"),g(22,"\u91CD\u542F ADB \u670D\u52A1\u5668"),d()(),l(23,"button",139),I("click",function(){S(e);let i=m(2);return k(i.dismissEmulatorStatus())}),l(24,"span"),g(25,"\u5173\u95ED\u63D0\u793A"),d()()()()()}if(n&2){let e=m(2);p(11),y(e.emulatorLaunchState()?.error||"The Android emulator process failed to start or crashed during initialization."),p(4),b(e.emulatorLaunchState()?.logs?.length?15:-1),p(2),b(e.emulatorLaunchState()?.avd_name?17:-1)}}function QA(n,t){if(n&1&&g(0),n&2){let e=m(3);L(" ",e.installedAvds().length," \u4E2A\u672C\u5730\u865A\u62DF\u8BBE\u5907\u53EF\u7528 ")}}function JA(n,t){n&1&&g(0," \u542F\u52A8\u672C\u5730 Android \u865A\u62DF\u8BBE\u5907 ")}function e5(n,t){if(n&1){let e=B();l(0,"div",152)(1,"div",155)(2,"span",29),g(3,"hub"),d(),l(4,"span"),g(5," Artemis \u5F53\u524D\u4F7F\u7528 "),l(6,"strong"),g(7),d(),g(8,"\u3002\u4F7F\u7528\u672C\u5730\u6A21\u62DF\u5668\u3001USB \u6216\u65E0\u7EBF ADB \u524D\uFF0C\u8BF7\u5148\u5207\u6362\u81F3\u672C\u5730 ADB\u3002 "),d()(),l(9,"button",156),I("click",function(){S(e);let i=m(3);return k(i.switchToLocalAdbServer())}),l(10,"span",29),g(11,"sync"),d(),l(12,"span"),g(13),d()()()}if(n&2){let e=m(3);p(7),tt("",e.adbServerStatus()?.endpoint?.host,":",e.adbServerStatus()?.endpoint?.port),p(2),N("disabled",e.isSwitchingToLocalAdb()),p(),E("spinning",e.isSwitchingToLocalAdb()),p(3),y(e.isSwitchingToLocalAdb()?"Switching...":"Use Local ADB")}}function t5(n,t){if(n&1&&(z(0,"span",174),l(1,"span"),g(2),d()),n&2){let e=m(6);p(2),tt("",e.emulatorLaunchState()?.status==="booting"?"Booting OS":"Starting"," (",e.emulatorLaunchState()?.elapsed_seconds||0,"s)")}}function n5(n,t){n&1&&(l(0,"span",175),g(1,"play_arrow"),d(),l(2,"span"),g(3,"\u542F\u52A8"),d())}function o5(n,t){if(n&1){let e=B();l(0,"div",165)(1,"div",166)(2,"div",167)(3,"span",29),g(4,"smartphone"),d()(),l(5,"div",168)(6,"div",169)(7,"span",170),g(8),d(),l(9,"span",171),g(10,"\u865A\u62DF\u8BBE\u5907"),d()()()(),l(11,"div",172)(12,"button",173),I("click",function(){let i=S(e).$implicit,r=m(5);return k(r.launchAvdEmulator(i))}),M(13,t5,3,2)(14,n5,4,0),d()()()}if(n&2){let e=t.$implicit,o=m(5);p(8),y(e),p(4),E("launching",o.launchingAvd()===e||o.isEmulatorLaunching()&&o.emulatorLaunchState()?.avd_name===e),N("disabled",o.isEmulatorLaunching()||o.isRemoteAdbServer())("title",o.isEmulatorLaunching()?"\u6B63\u5728\u542F\u52A8\u6A21\u62DF\u5668\u2026":"\u542F\u52A8"+e),p(),b(o.launchingAvd()===e||o.isEmulatorLaunching()&&o.emulatorLaunchState()?.avd_name===e?13:14)}}function i5(n,t){if(n&1&&(l(0,"div",157)(1,"div",159)(2,"div",160)(3,"span",161),g(4,"devices"),d(),l(5,"span",162),g(6,"\u5DF2\u5B89\u88C5\u7684\u865A\u62DF\u8BBE\u5907\uFF08AVD\uFF09"),d(),l(7,"span",163),g(8),d()()(),l(9,"div",164),W(10,o5,15,6,"div",165,ze),d()()),n&2){let e=m(4);p(8),L("",e.installedAvds().length," \u4E2A\u53EF\u7528"),p(2),G(e.installedAvds())}}function r5(n,t){if(n&1&&(l(0,"div",186)(1,"div",188)(2,"div",189)(3,"span",190),g(4,"1"),d(),l(5,"span",191),g(6,"download"),d()(),l(7,"div",192),g(8,"\u5B89\u88C5 Android Studio"),d(),l(9,"div",193),g(10),l(11,"a",194),g(12,"developer.android.com/studio"),d(),g(13," \u5E76\u5B89\u88C5\u3002 "),d()(),l(14,"div",188)(15,"div",189)(16,"span",190),g(17,"2"),d(),l(18,"span",191),g(19,"developer_mode"),d()(),l(20,"div",192),g(21,"\u6253\u5F00\u8BBE\u5907\u7BA1\u7406\u5668"),d(),l(22,"div",193),g(23," \u5728 Android Studio \u6B22\u8FCE\u9875\u9762\u6253\u5F00 "),l(24,"strong"),g(25,"\u66F4\u591A\u64CD\u4F5C > \u865A\u62DF\u8BBE\u5907\u7BA1\u7406\u5668"),d(),g(26," \uFF08\u6216 "),l(27,"strong"),g(28,"\u5DE5\u5177 > \u8BBE\u5907\u7BA1\u7406\u5668"),d(),g(29,"). "),d()(),l(30,"div",188)(31,"div",189)(32,"span",190),g(33,"3"),d(),l(34,"span",191),g(35,"add_circle"),d()(),l(36,"div",192),g(37,"\u521B\u5EFA\u865A\u62DF\u8BBE\u5907"),d(),l(38,"div",193),g(39," \u70B9\u51FB "),l(40,"strong"),g(41,"\u521B\u5EFA\u8BBE\u5907"),d(),g(42,"\uFF0C\u9009\u62E9 "),l(43,"strong"),g(44,"Pixel 8"),d(),g(45,"\uFF0C\u9009\u62E9 "),l(46,"strong"),g(47,"Android 14 (API 34)"),d(),g(48,"\uFF0C\u7136\u540E\u70B9\u51FB "),l(49,"strong"),g(50,"\u5B8C\u6210"),d(),g(51,". "),d()(),l(52,"div",188)(53,"div",189)(54,"span",190),g(55,"4"),d(),l(56,"span",191),g(57,"play_arrow"),d()(),l(58,"div",192),g(59,"\u542F\u52A8\u6A21\u62DF\u5668"),d(),l(60,"div",193),g(61," \u70B9\u51FB \u25B6 "),l(62,"strong"),g(63,"\u64AD\u653E"),d(),g(64," \u3002Artemis \u4F1A\u81EA\u52A8\u68C0\u6D4B\u5E76\u8FDE\u63A5\u8BBE\u5907\u3002 "),d()()()),n&2){let e=m(5);p(10),L(" Download for ",e.effectiveOs()==="darwin"?"macOS":e.effectiveOs()==="windows"?"Windows":"Linux"," from ")}}function a5(n,t){if(n&1){let e=B();l(0,"div",187)(1,"div",195)(2,"div",196),g(3,"1"),d(),l(4,"div",197)(5,"div",26),g(6),d(),l(7,"p",198),g(8),d(),l(9,"div",63)(10,"span",66),g(11),d(),l(12,"code",67),g(13),d(),l(14,"button",64),I("click",function(){S(e);let i=m(5);return k(i.copyToClipboard(i.emuHypervisorCmd(),"emu_kvm"))}),l(15,"span",29),g(16),d(),l(17,"span"),g(18),d()()()()(),l(19,"div",195)(20,"div",196),g(21,"2"),d(),l(22,"div",197)(23,"div",26),g(24,"\u4E0B\u8F7D\u6A21\u62DF\u5668\u4E0E\u7CFB\u7EDF\u955C\u50CF\uFF08API 34\uFF09"),d(),l(25,"p",198),g(26,"\u901A\u8FC7 SDK \u7BA1\u7406\u5668\u5B89\u88C5 Android 14 Google APIs \u7CFB\u7EDF\u955C\u50CF\uFF1A"),d(),l(27,"div",63)(28,"span",66),g(29),d(),l(30,"code",67),g(31),d(),l(32,"button",64),I("click",function(){S(e);let i=m(5);return k(i.copyToClipboard(i.emuSdkInstallCmd(),"emu_sdk"))}),l(33,"span",29),g(34),d(),l(35,"span"),g(36),d()()()()(),l(37,"div",195)(38,"div",196),g(39,"3"),d(),l(40,"div",197)(41,"div",26),g(42,"\u521B\u5EFA\u865A\u62DF\u8BBE\u5907\uFF08Pixel 8 AVD\uFF09"),d(),l(43,"p",198),g(44,"\u521B\u5EFA Android \u865A\u62DF\u8BBE\u5907\uFF0C\u540D\u79F0\u4E3A "),l(45,"code"),g(46,"Pixel_8_API_34"),d(),g(47,":"),d(),l(48,"div",63)(49,"span",66),g(50),d(),l(51,"code",67),g(52),d(),l(53,"button",64),I("click",function(){S(e);let i=m(5);return k(i.copyToClipboard(i.emuCreateAvdCmd(),"emu_create"))}),l(54,"span",29),g(55),d(),l(56,"span"),g(57),d()()()()(),l(58,"div",195)(59,"div",196),g(60,"4"),d(),l(61,"div",197)(62,"div",26),g(63,"\u542F\u52A8\u6A21\u62DF\u5668"),d(),l(64,"p",198),g(65,"\u542F\u52A8\u865A\u62DF\u8BBE\u5907\uFF08\u53EF\u6DFB\u52A0 "),l(66,"code"),g(67,"-no-window"),d(),g(68," \u4EE5\u65E0\u754C\u9762\u6A21\u5F0F\u8FD0\u884C\uFF09\uFF1A"),d(),l(69,"div",63)(70,"span",66),g(71),d(),l(72,"code",67),g(73,"emulator -avd Pixel_8_API_34 -no-boot-anim"),d(),l(74,"button",64),I("click",function(){S(e);let i=m(5);return k(i.copyToClipboard("emulator -avd Pixel_8_API_34 -no-boot-anim","emu_run"))}),l(75,"span",29),g(76),d(),l(77,"span"),g(78),d()()()()()()}if(n&2){let e=m(5);p(6),y(e.emuHypervisorTitle()),p(2),y(e.emuHypervisorDesc()),p(3),y(e.effectiveOs()==="windows"?"PS>":"$"),p(2),y(e.emuHypervisorCmd()),p(),E("copied",e.copiedId()==="emu_kvm"),p(2),y(e.copiedId()==="emu_kvm"?"check":"content_copy"),p(2),y(e.copiedId()==="emu_kvm"?"\u5DF2\u590D\u5236":"\u590D\u5236"),p(11),y(e.effectiveOs()==="windows"?"PS>":"$"),p(2),y(e.emuSdkInstallCmd()),p(),E("copied",e.copiedId()==="emu_sdk"),p(2),y(e.copiedId()==="emu_sdk"?"check":"content_copy"),p(2),y(e.copiedId()==="emu_sdk"?"\u5DF2\u590D\u5236":"\u590D\u5236"),p(14),y(e.effectiveOs()==="windows"?"PS>":"$"),p(2),y(e.emuCreateAvdCmd()),p(),E("copied",e.copiedId()==="emu_create"),p(2),y(e.copiedId()==="emu_create"?"check":"content_copy"),p(2),y(e.copiedId()==="emu_create"?"\u5DF2\u590D\u5236":"\u590D\u5236"),p(14),y(e.effectiveOs()==="windows"?"PS>":"$"),p(3),E("copied",e.copiedId()==="emu_run"),p(2),y(e.copiedId()==="emu_run"?"check":"content_copy"),p(2),y(e.copiedId()==="emu_run"?"\u5DF2\u590D\u5236":"\u590D\u5236")}}function s5(n,t){if(n&1){let e=B();l(0,"div",158)(1,"div",176)(2,"div",177)(3,"div",178)(4,"span",29),g(5,"devices_off"),d()(),l(6,"div",179)(7,"div",180)(8,"h4",181),g(9,"\u672A\u68C0\u6D4B\u5230 Android \u865A\u62DF\u8BBE\u5907\uFF08AVD\uFF09"),d(),l(10,"div",60)(11,"button",61),I("click",function(){S(e);let i=m(4);return k(i.setSelectedOs("linux"))}),g(12,"Linux"),d(),l(13,"button",61),I("click",function(){S(e);let i=m(4);return k(i.setSelectedOs("darwin"))}),g(14,"macOS"),d(),l(15,"button",61),I("click",function(){S(e);let i=m(4);return k(i.setSelectedOs("windows"))}),g(16,"Windows"),d()()(),l(17,"p",182),g(18,"\u6309\u4EE5\u4E0B\u6B65\u9AA4\u5B89\u88C5\u5E76\u542F\u52A8\u6A21\u62DF\u5668\uFF1A"),d()()(),l(19,"div",183)(20,"button",184),I("click",function(){S(e);let i=m(4);return k(i.setEmulatorSetupMode("studio"))}),l(21,"span",185),g(22,"desktop_windows"),d(),l(23,"span"),g(24,"Android Studio\uFF08\u56FE\u5F62\u754C\u9762\uFF09"),d()(),l(25,"button",184),I("click",function(){S(e);let i=m(4);return k(i.setEmulatorSetupMode("cli"))}),l(26,"span",185),g(27,"terminal"),d(),l(28,"span"),g(29,"\u547D\u4EE4\u884C"),d()()()(),M(30,r5,65,1,"div",186),M(31,a5,79,25,"div",187),d()}if(n&2){let e=m(4);p(11),E("active",e.effectiveOs()==="linux"),p(2),E("active",e.effectiveOs()==="darwin"),p(2),E("active",e.effectiveOs()==="windows"),p(5),E("active",e.emulatorSetupMode()==="studio"),p(5),E("active",e.emulatorSetupMode()==="cli"),p(5),b(e.emulatorSetupMode()==="studio"?30:-1),p(),b(e.emulatorSetupMode()==="cli"?31:-1)}}function c5(n,t){if(n&1&&(l(0,"div",153),M(1,i5,12,1,"div",157)(2,s5,32,12,"div",158),d()),n&2){let e=m(3);p(),b(e.installedAvds().length>0?1:2)}}function l5(n,t){n&1&&(l(0,"div",153)(1,"div",199)(2,"span",200),g(3,"cable"),d(),l(4,"span"),g(5,"\u901A\u8FC7 USB \u6570\u636E\u7EBF\u8FDE\u63A5 Android \u624B\u673A\uFF0C\u5E76\u542F\u7528 USB \u8C03\u8BD5\uFF1A"),d()(),l(6,"div",201)(7,"div",188)(8,"div",189)(9,"span",190),g(10,"1"),d(),l(11,"span",191),g(12,"usb"),d()(),l(13,"div",192),g(14,"\u8FDE\u63A5 USB \u6570\u636E\u7EBF"),d(),l(15,"div",193),g(16,"\u4F7F\u7528\u6570\u636E\u7EBF\u5C06 Android \u624B\u673A\u8FDE\u63A5\u5230\u6B64\u8BA1\u7B97\u673A\u3002"),d()(),l(17,"div",188)(18,"div",189)(19,"span",190),g(20,"2"),d(),l(21,"span",191),g(22,"touch_app"),d()(),l(23,"div",192),g(24,"\u542F\u7528\u5F00\u53D1\u8005\u9009\u9879"),d(),l(25,"div",193),g(26,"\u5728\u624B\u673A\u4E0A\u6253\u5F00 "),l(27,"strong"),g(28,"\u8BBE\u7F6E > \u5173\u4E8E\u624B\u673A"),d(),g(29,"\uFF0C\u70B9\u51FB "),l(30,"strong"),g(31,"\u7248\u672C\u53F7"),d(),g(32," 7 \u6B21\u3002"),d()(),l(33,"div",188)(34,"div",189)(35,"span",190),g(36,"3"),d(),l(37,"span",191),g(38,"toggle_on"),d()(),l(39,"div",192),g(40,"\u542F\u7528 USB \u8C03\u8BD5"),d(),l(41,"div",193),g(42,"\u5728 "),l(43,"strong"),g(44,"\u8BBE\u7F6E > \u5F00\u53D1\u8005\u9009\u9879"),d(),g(45,"\u4E2D\uFF0C\u5C06 "),l(46,"strong"),g(47,"USB \u8C03\u8BD5"),d(),g(48," \u5F00\u542F\u3002 "),d()(),l(49,"div",188)(50,"div",189)(51,"span",190),g(52,"4"),d(),l(53,"span",191),g(54,"verified_user"),d()(),l(55,"div",192),g(56,"\u6388\u6743\u8BA1\u7B97\u673A"),d(),l(57,"div",193),g(58,"\u52FE\u9009 "),l(59,"strong"),g(60,"\u201C\u59CB\u7EC8\u5141\u8BB8\u201D"),d(),g(61," \uFF0C\u7136\u540E\u70B9\u51FB "),l(62,"strong"),g(63,"\u5141\u8BB8"),d(),g(64," \u5B8C\u6210\u624B\u673A\u4E0A\u7684\u6388\u6743\u63D0\u793A\u3002 "),d()()()())}function d5(n,t){n&1&&(l(0,"span",68),g(1,"sync"),d(),l(2,"span"),g(3,"\u6B63\u5728\u8FDE\u63A5\u2026"),d())}function u5(n,t){n&1&&(l(0,"span",29),g(1,"bolt"),d(),l(2,"span"),g(3,"\u8FDE\u63A5"),d())}function g5(n,t){if(n&1&&(l(0,"div",214)(1,"span",29),g(2,"check_circle"),d(),l(3,"span"),g(4),d()()),n&2){let e=m(4);p(4),y(e.wifiConnectMessage())}}function p5(n,t){if(n&1&&(l(0,"div",215)(1,"span",29),g(2,"error"),d(),l(3,"span"),g(4),d()()),n&2){let e=m(4);p(4),y(e.wifiConnectError())}}function f5(n,t){if(n&1){let e=B();l(0,"div",153)(1,"div",202)(2,"span",200),g(3,"wifi"),d(),l(4,"span"),g(5,"\u5C06\u624B\u673A\u548C\u8BA1\u7B97\u673A\u8FDE\u63A5\u5230\u540C\u4E00 Wi-Fi \u7F51\u7EDC\uFF1A"),d()(),l(6,"div",203)(7,"div",204)(8,"div",205)(9,"label",206),g(10,"\u8BBE\u5907 IP \u5730\u5740"),d(),l(11,"div",207)(12,"span",208),g(13,"router"),d(),l(14,"input",209),I("ngModelChange",function(i){S(e);let r=m(3);return k(r.wifiHost.set(i))}),d(),Qe(),d()(),l(15,"div",210)(16,"label",206),g(17,"\u7AEF\u53E3"),d(),l(18,"div",207)(19,"span",208),g(20,"tag"),d(),l(21,"input",211),I("ngModelChange",function(i){S(e);let r=m(3);return k(r.wifiPort.set(i))}),d(),Qe(),d()(),l(22,"div",212)(23,"button",213),I("click",function(){S(e);let i=m(3);return k(i.connectWifiDevice())}),M(24,d5,4,0)(25,u5,4,0),d()()(),M(26,g5,5,1,"div",214),M(27,p5,5,1,"div",215),d(),l(28,"div",216)(29,"span",217),g(30,"help_outline"),d(),l(31,"div",218),g(32," \u5728\u624B\u673A\u4E2D\u67E5\u770B IP \u5730\u5740\u4E0E\u7AEF\u53E3\uFF1A "),l(33,"strong"),g(34,"\u8BBE\u7F6E > \u5F00\u53D1\u8005\u9009\u9879 > \u65E0\u7EBF\u8C03\u8BD5"),d(),g(35,". "),d()()()}if(n&2){let e=m(3);p(14),N("ngModel",e.wifiHost()),Je(),p(7),N("ngModel",e.wifiPort()),Je(),p(2),N("disabled",e.isConnectingWifi()||e.isRemoteAdbServer()||!e.wifiHost().trim()),p(),b(e.isConnectingWifi()?24:25),p(2),b(e.wifiConnectMessage()?26:-1),p(),b(e.wifiConnectError()?27:-1)}}function m5(n,t){n&1&&(l(0,"span",68),g(1,"sync"),d(),l(2,"span"),g(3,"\u6B63\u5728\u68C0\u67E5\u2026"),d())}function _5(n,t){n&1&&(l(0,"span",29),g(1,"bolt"),d(),l(2,"span"),g(3,"\u6D4B\u8BD5\u8FDE\u63A5"),d())}function h5(n,t){if(n&1&&(l(0,"div",233)(1,"span",29),g(2,"check_circle"),d(),l(3,"span"),g(4),d()()),n&2){let e=m(4);p(4),y(e.remoteAdbMessage())}}function C5(n,t){if(n&1&&(l(0,"div",234)(1,"span",29),g(2,"error"),d(),l(3,"span"),g(4),d()()),n&2){let e=m(4);p(4),y(e.remoteAdbError())}}function M5(n,t){if(n&1&&(l(0,"div",238)(1,"span",29),g(2,"phone_android"),d(),l(3,"div",239)(4,"strong"),g(5),d(),l(6,"span"),g(7),d()(),l(8,"span",240),g(9),d()()),n&2){let e=t.$implicit;p(5),y(e.model||e.serial),p(2),y(e.serial),p(),E("ready",e.state==="device"),p(),L(" ",e.state==="device"?"\u5C31\u7EEA":e.state," ")}}function b5(n,t){if(n&1&&(l(0,"div",235),W(1,M5,10,5,"div",238,D_),d()),n&2){let e=m(4);p(),G(e.remoteAdbDevices())}}function P5(n,t){n&1&&(l(0,"span",68),g(1,"sync"),d(),l(2,"span"),g(3,"\u6B63\u5728\u8FDE\u63A5\u2026"),d())}function O5(n,t){if(n&1&&(l(0,"span",29),g(1,"check"),d(),l(2,"span"),g(3),d()),n&2){let e=m(5);p(3),y(e.remoteAdbHasReadyDevice()?"\u4F7F\u7528\u6B64\u8FDE\u63A5":"\u4ECD\u7136\u4F7F\u7528")}}function v5(n,t){if(n&1){let e=B();l(0,"button",241),I("click",function(){S(e);let i=m(4);return k(i.activateRemoteAdbServer())}),M(1,P5,4,0)(2,O5,4,1),d()}if(n&2){let e=m(4);N("disabled",e.isActivatingRemoteAdb()),p(),b(e.isActivatingRemoteAdb()?1:2)}}function y5(n,t){if(n&1){let e=B();l(0,"div",154)(1,"div",219)(2,"span",200),g(3,"hub"),d(),l(4,"span"),g(5,"\u8F93\u5165\u672C\u673A\u53EF\u8BBF\u95EE\u7684 ADB \u670D\u52A1\u5668\u5730\u5740\u548C\u7AEF\u53E3\uFF0C\u5373\u53EF\u53D1\u73B0\u5E76\u63A7\u5236\u8FDE\u63A5\u5728\u5176\u4ED6\u8BA1\u7B97\u673A\u4E0A\u7684\u624B\u673A\u3002"),d()(),l(6,"div",220)(7,"div",221)(8,"div",222)(9,"label",223),g(10,"ADB \u670D\u52A1\u5668\u5730\u5740"),d(),l(11,"div",224)(12,"span",208),g(13,"dns"),d(),l(14,"input",225),I("ngModelChange",function(i){S(e);let r=m(3);return k(r.updateRemoteAdbHost(i))}),d(),Qe(),d()(),l(15,"div",226)(16,"label",227),g(17,"ADB \u670D\u52A1\u5668\u7AEF\u53E3"),d(),l(18,"div",224)(19,"span",208),g(20,"tag"),d(),l(21,"input",228),I("ngModelChange",function(i){S(e);let r=m(3);return k(r.updateRemoteAdbPort(i))}),d(),Qe(),d()(),l(22,"div",229)(23,"button",230),I("click",function(){S(e);let i=m(3);return k(i.connectRemoteAdbServer())}),M(24,m5,4,0)(25,_5,4,0),d()()(),l(26,"label",231)(27,"input",232),I("ngModelChange",function(i){S(e);let r=m(3);return k(r.rememberRemoteAdb.set(i))}),d(),Qe(),l(28,"span"),g(29,"\u4FDD\u5B58\u6B64\u5730\u5740\uFF0C\u4F9B\u540E\u7EED\u542F\u52A8\u4F7F\u7528"),d()(),M(30,h5,5,1,"div",233),M(31,C5,5,1,"div",234),M(32,b5,3,0,"div",235),M(33,v5,3,2,"button",236),d(),l(34,"p",237),g(35," Artemis \u5C06\u5411\u6B64\u670D\u52A1\u5668\u53D1\u9001 ADB \u547D\u4EE4\uFF0C\u5E76\u4F7F\u7528\u8BE5\u670D\u52A1\u5668\u80FD\u591F\u53D1\u73B0\u7684\u624B\u673A\u3002 "),d()()}if(n&2){let e=m(3);p(14),N("ngModel",e.remoteAdbHost()),Je(),p(7),N("ngModel",e.remoteAdbPort()),Je(),p(2),N("disabled",e.isConnectingRemoteAdb()||e.isActivatingRemoteAdb()||!e.remoteAdbHost().trim()),p(),b(e.isConnectingRemoteAdb()?24:25),p(3),N("ngModel",e.rememberRemoteAdb()),Je(),p(3),b(e.remoteAdbMessage()?30:-1),p(),b(e.remoteAdbError()?31:-1),p(),b(e.remoteAdbDevices().length>0?32:-1),p(),b(e.remoteAdbProbeResult()?.success&&!e.isProbedRemoteAdbActive()?33:-1)}}function x5(n,t){if(n&1){let e=B();l(0,"div",49)(1,"div",142)(2,"button",143),I("click",function(){S(e);let i=m(2);return k(i.setAdbGuideTab("emulator"))}),l(3,"div",144)(4,"div",145)(5,"span",29),g(6,"smartphone"),d()(),l(7,"div",146)(8,"div",147)(9,"span",148),g(10,"Android \u6A21\u62DF\u5668"),d()(),l(11,"span",149),M(12,QA,1,1)(13,JA,1,0),d()()(),l(14,"div",150),z(15,"span",151),d()(),l(16,"button",143),I("click",function(){S(e);let i=m(2);return k(i.setAdbGuideTab("usb"))}),l(17,"div",144)(18,"div",145)(19,"span",29),g(20,"usb"),d()(),l(21,"div",146)(22,"div",147)(23,"span",148),g(24,"USB \u8FDE\u63A5"),d()(),l(25,"span",149),g(26,"\u901A\u8FC7 USB \u8FDE\u63A5\u5B9E\u4F53\u624B\u673A"),d()()(),l(27,"div",150),z(28,"span",151),d()(),l(29,"button",143),I("click",function(){S(e);let i=m(2);return k(i.setAdbGuideTab("wifi"))}),l(30,"div",144)(31,"div",145)(32,"span",29),g(33,"wifi"),d()(),l(34,"div",146)(35,"div",147)(36,"span",148),g(37,"\u65E0\u7EBF ADB"),d()(),l(38,"span",149),g(39,"\u901A\u8FC7\u5C40\u57DF\u7F51 Wi-Fi \u8FDE\u63A5"),d()()(),l(40,"div",150),z(41,"span",151),d()(),l(42,"button",143),I("click",function(){S(e);let i=m(2);return k(i.setAdbGuideTab("remote"))}),l(43,"div",144)(44,"div",145)(45,"span",29),g(46,"devices"),d()(),l(47,"div",146)(48,"div",147)(49,"span",148),g(50,"\u8FDC\u7A0B\u8BA1\u7B97\u673A"),d()(),l(51,"span",149),g(52,"\u8FDE\u63A5\u5176\u4ED6\u8BA1\u7B97\u673A\u4E0A\u7684\u624B\u673A"),d()()(),l(53,"div",150),z(54,"span",151),d()()(),M(55,e5,14,6,"div",152),M(56,c5,3,1,"div",153),M(57,l5,65,0,"div",153),M(58,f5,36,6,"div",153),M(59,y5,36,9,"div",154),d()}if(n&2){let e=m(2);p(2),E("active",e.activeAdbGuideTab()==="emulator"),p(10),b(e.installedAvds().length>0?12:13),p(3),E("checked",e.activeAdbGuideTab()==="emulator"),p(),E("active",e.activeAdbGuideTab()==="usb"),p(12),E("checked",e.activeAdbGuideTab()==="usb"),p(),E("active",e.activeAdbGuideTab()==="wifi"),p(12),E("checked",e.activeAdbGuideTab()==="wifi"),p(),E("active",e.activeAdbGuideTab()==="remote"),p(12),E("checked",e.activeAdbGuideTab()==="remote"),p(),b(e.activeAdbGuideTab()!=="remote"&&e.isRemoteAdbServer()?55:-1),p(),b(e.activeAdbGuideTab()==="emulator"?56:-1),p(),b(e.activeAdbGuideTab()==="usb"?57:-1),p(),b(e.activeAdbGuideTab()==="wifi"?58:-1),p(),b(e.activeAdbGuideTab()==="remote"?59:-1)}}function w5(n,t){n&1&&(l(0,"span",88),g(1,"\u2713 \u5F53\u524D\u8BBE\u5907"),d())}function S5(n,t){if(n&1){let e=B();l(0,"button",86),I("click",function(){let i=S(e).$implicit,r=m(4);return k(r.selectTargetDevice(i.serial))}),l(1,"span",87),g(2," phone_android "),d(),l(3,"span"),g(4),d(),M(5,w5,2,0,"span",88),d()}if(n&2){let e=t.$implicit,o=m(4);E("selected",e.serial===o.activeDevice()?.serial),p(4),y(e.model||e.serial),p(),b(e.serial===o.activeDevice()?.serial?5:-1)}}function k5(n,t){if(n&1&&(l(0,"div",248)(1,"span",83),g(2,"\u9009\u62E9\u5F53\u524D\u8BBE\u5907\uFF1A"),d(),l(3,"div",84),W(4,S5,6,4,"button",85,D_),d()()),n&2){let e=m(3);p(4),G(e.connectedDevices())}}function E5(n,t){if(n&1){let e=B();l(0,"div",50)(1,"div",242)(2,"span",243),g(3,"lock"),d(),l(4,"div",244)(5,"div",245),g(6),d(),l(7,"div",246),g(8),d()(),l(9,"button",247),I("click",function(){S(e);let i=m(2);return k(i.refreshReadiness())}),l(10,"span",29),g(11,"refresh"),d(),l(12,"span"),g(13),d()()(),M(14,k5,6,0,"div",248),d()}if(n&2){let e=m(2);p(6),L(" ",e.adbProbe()?.summary==="Device Locked"?"Device Is Locked":"Unable to Verify Lock State"," "),p(2),L(" ",e.adbProbe()?.description," "),p(),N("disabled",e.isRefreshingDiagnostics()),p(),E("spinning",e.isRefreshingDiagnostics()),p(3),y(e.isRefreshingDiagnostics()?"\u6B63\u5728\u68C0\u67E5\u2026":"Check Again"),p(),b(e.connectedDevices().length>1?14:-1)}}function D5(n,t){if(n&1){let e=B();l(0,"div",51)(1,"div",249)(2,"span",243),g(3,"screen_lock_portrait"),d(),l(4,"div",250)(5,"div",251),g(6,"\u7B49\u5F85 USB \u8C03\u8BD5\u6388\u6743"),d(),l(7,"div",252),g(8," \u5DF2\u68C0\u6D4B\u5230 Android \u8BBE\u5907\uFF0C\u4F46\u5C1A\u672A\u6388\u6743\u3002\u8BF7\u89E3\u9501\u624B\u673A\u5E76\u70B9\u51FB "),l(9,"strong"),g(10,"\u201C\u5141\u8BB8 USB \u8C03\u8BD5\u201D"),d(),g(11,". "),d()(),l(12,"button",253),I("click",function(){S(e);let i=m(2);return k(i.restartAdbServer())}),l(13,"span",29),g(14,"refresh"),d(),l(15,"span"),g(16),d()()()()}if(n&2){let e=m(2);p(16),y(e.isRemoteAdbServer()?"\u5237\u65B0\u8BBE\u5907":"\u91CD\u542F ADB \u5E76\u68C0\u67E5")}}function I5(n,t){n&1&&(l(0,"span",259),g(1,"\u5DF2\u68C0\u6D4B\u5230"),d())}function T5(n,t){n&1&&(l(0,"span",259),g(1,"\u5DF2\u68C0\u6D4B\u5230"),d())}function A5(n,t){n&1&&(l(0,"span",259),g(1,"\u5DF2\u68C0\u6D4B\u5230"),d())}function R5(n,t){if(n&1){let e=B();l(0,"div",52)(1,"div",254)(2,"span",255),g(3,"error"),d(),l(4,"div")(5,"strong"),g(6,"\u672A\u627E\u5230 Android \u5E73\u53F0\u5DE5\u5177\uFF08adb\uFF09\u3002"),d(),g(7," \u8BF7\u5728\u5F53\u524D\u64CD\u4F5C\u7CFB\u7EDF\u4E2D\u5B89\u88C5 ADB\uFF1A "),d()(),l(8,"div",256)(9,"div",257)(10,"div",258)(11,"span"),g(12,"Linux (Ubuntu / Debian)"),d(),M(13,I5,2,0,"span",259),d(),l(14,"div",63)(15,"span",66),g(16,"$"),d(),l(17,"code",67),g(18,"sudo apt-get install -y adb"),d(),l(19,"button",64),I("click",function(){S(e);let i=m(2);return k(i.copyToClipboard("sudo apt-get install -y adb","linux_adb"))}),l(20,"span",29),g(21),d(),l(22,"span"),g(23),d()()()(),l(24,"div",257)(25,"div",258)(26,"span"),g(27,"macOS (Homebrew)"),d(),M(28,T5,2,0,"span",259),d(),l(29,"div",63)(30,"span",66),g(31,"$"),d(),l(32,"code",67),g(33,"brew install android-platform-tools"),d(),l(34,"button",64),I("click",function(){S(e);let i=m(2);return k(i.copyToClipboard("brew install android-platform-tools","mac_adb"))}),l(35,"span",29),g(36),d(),l(37,"span"),g(38),d()()()(),l(39,"div",257)(40,"div",258)(41,"span"),g(42,"Windows (WinGet)"),d(),M(43,A5,2,0,"span",259),d(),l(44,"div",63)(45,"span",66),g(46,">"),d(),l(47,"code",67),g(48,"winget install Google.PlatformTools"),d(),l(49,"button",64),I("click",function(){S(e);let i=m(2);return k(i.copyToClipboard("winget install Google.PlatformTools","win_adb"))}),l(50,"span",29),g(51),d(),l(52,"span"),g(53),d()()()()()()}if(n&2){let e=m(2);p(9),E("highlight-os",e.effectiveOs()==="linux"),p(4),b(e.effectiveOs()==="linux"?13:-1),p(6),E("copied",e.copiedId()==="linux_adb"),p(2),y(e.copiedId()==="linux_adb"?"check":"content_copy"),p(2),y(e.copiedId()==="linux_adb"?"\u5DF2\u590D\u5236":"\u590D\u5236"),p(),E("highlight-os",e.effectiveOs()==="darwin"),p(4),b(e.effectiveOs()==="darwin"?28:-1),p(6),E("copied",e.copiedId()==="mac_adb"),p(2),y(e.copiedId()==="mac_adb"?"check":"content_copy"),p(2),y(e.copiedId()==="mac_adb"?"\u5DF2\u590D\u5236":"\u590D\u5236"),p(),E("highlight-os",e.effectiveOs()==="windows"),p(4),b(e.effectiveOs()==="windows"?43:-1),p(6),E("copied",e.copiedId()==="win_adb"),p(2),y(e.copiedId()==="win_adb"?"check":"content_copy"),p(2),y(e.copiedId()==="win_adb"?"\u5DF2\u590D\u5236":"\u590D\u5236")}}function F5(n,t){if(n&1){let e=B();l(0,"div",53)(1,"div",260)(2,"div",261)(3,"span",23),g(4,"check"),d()(),l(5,"div",262)(6,"h4",263),g(7,"\u7CFB\u7EDF\u5DF2\u5C31\u7EEA\uFF0C\u53EF\u4EE5\u5F00\u59CB\u81EA\u52A8\u5316\u4EFB\u52A1"),d(),l(8,"p",264),g(9,"\u4F9D\u8D56\u3001\u6A21\u578B\u51ED\u636E\u548C Android \u8BBE\u5907\u5747\u5DF2\u5C31\u7EEA\u3002"),d()()(),l(10,"button",265),I("click",function(){S(e);let i=m(2);return k(i.setTab("launcher"))}),l(11,"span"),g(12,"\u542F\u52A8\u81EA\u52A8\u5316\u4EFB\u52A1"),d(),l(13,"span",266),g(14,"rocket_launch"),d()()()}}function N5(n,t){if(n&1){let e=B();l(0,"section",18)(1,"div",20)(2,"div",21)(3,"div",22),M(4,pA,2,0,"span",23)(5,fA,2,0,"span"),d(),l(6,"div",24)(7,"div",25)(8,"h3",26),g(9,"\u7CFB\u7EDF\u4E0E\u73AF\u5883"),d()(),l(10,"p",27),g(11,"\u57FA\u7840\u5DE5\u5177\u3001Android \u8C03\u8BD5\u6865\u4E0E\u5F55\u5C4F\u73AF\u5883"),d()(),l(12,"button",28),I("click",function(){S(e);let i=m();return k(i.refreshReadiness())}),l(13,"span",29),g(14,"refresh"),d(),l(15,"span"),g(16),d()()(),l(17,"div",30),M(18,mA,26,11,"div",31),l(19,"div",32)(20,"div",33)(21,"div",34)(22,"div",35)(23,"span",36),g(24,"terminal"),d()(),l(25,"div",37)(26,"div",38),g(27,"Python \u8FD0\u884C\u73AF\u5883"),d(),l(28,"div",39),g(29),d()(),l(30,"div",40),z(31,"span",41),d()(),M(32,_A,12,4,"div",42),d(),l(33,"div",33)(34,"div",34)(35,"div",35)(36,"span",36),g(37,"construction"),d()(),l(38,"div",37)(39,"div",38),g(40,"Android \u5E73\u53F0\u5DE5\u5177"),d(),l(41,"div",39),g(42),d()(),l(43,"div",40),z(44,"span",41),d()(),M(45,hA,12,5,"div",42),d(),l(46,"div",33)(47,"div",34)(48,"div",35)(49,"span",36),g(50,"tune"),d()(),l(51,"div",37)(52,"div",38),g(53,"\u7CFB\u7EDF\u914D\u7F6E"),d(),l(54,"div",39),g(55),d()(),l(56,"div",40),z(57,"span",41),d()(),M(58,CA,12,4,"div",42),d(),l(59,"div",33)(60,"div",34)(61,"div",35)(62,"span",36),g(63,"videocam"),d()(),l(64,"div",37)(65,"div",38),g(66,"\u5F55\u5C4F\u5DE5\u5177"),d(),l(67,"div",39),g(68),d()(),l(69,"div",40),z(70,"span",41),d()(),M(71,MA,12,5,"div",42),d()()()(),l(72,"div",20)(73,"div",21)(74,"div",22),M(75,bA,2,0,"span",23)(76,PA,2,0,"span"),d(),l(77,"div",24)(78,"div",25)(79,"h3",26),g(80,"\u6A21\u578B\u914D\u7F6E"),d()(),l(81,"p",27),g(82,"OpenAI Responses \u63A5\u53E3\u4E0E\u6A21\u578B\u8BBE\u7F6E"),d()()(),l(83,"div",30)(84,"app-model-settings",43),I("saved",function(){S(e);let i=m();return k(i.refreshReadiness())}),d(),z(85,"app-capability-settings"),d()(),l(86,"div",20)(87,"div",21)(88,"div",22),M(89,OA,2,0,"span",23)(90,vA,2,0,"span"),d(),l(91,"div",24)(92,"div",25)(93,"h3",26),g(94,"Android \u8BBE\u5907\u4E0E\u6A21\u62DF\u5668\u8FDE\u63A5"),d()(),l(95,"p",27),g(96,"\u8FDE\u63A5\u672C\u5730\u6A21\u62DF\u5668\u3001USB \u624B\u673A\u3001\u65E0\u7EBF\u8BBE\u5907\u6216\u8FDC\u7A0B ADB \u670D\u52A1\u5668"),d()(),l(97,"button",44),I("click",function(){S(e);let i=m();return k(i.toggleConnectionMethods())}),l(98,"span",29),g(99,"swap_horiz"),d(),l(100,"span"),g(101),d()(),l(102,"button",45),I("click",function(){S(e);let i=m();return k(i.restartAdbServer())}),M(103,yA,4,0)(104,xA,4,1)(105,wA,4,1),d()(),l(106,"div",30),M(107,RA,20,7,"div",46),M(108,qA,74,34,"div",47),M(109,XA,26,3,"div",48),M(110,x5,60,22,"div",49),M(111,E5,15,7,"div",50),M(112,D5,17,1,"div",51),M(113,R5,54,21,"div",52),d()(),M(114,F5,15,0,"div",53),d()}if(n&2){let e=m();p(),E("card-pass",e.isEnvironmentReady())("card-warn",!e.isEnvironmentReady()),p(2),E("step-pass",e.isEnvironmentReady()),p(),b(e.isEnvironmentReady()?4:5),p(8),N("disabled",e.isRefreshingDiagnostics()),p(),E("spinning",e.isRefreshingDiagnostics()),p(3),y(e.isRefreshingDiagnostics()?"\u6B63\u5728\u68C0\u67E5\u2026":"\u91CD\u65B0\u68C0\u67E5"),p(2),b(e.hasReadinessReport()&&!e.isEnvironmentReady()?18:-1),p(2),E("item-pass",e.pythonProbe()?.status==="pass")("item-fail",e.pythonProbe()?.status==="fail"),p(9),y(e.pythonProbe()?.summary||"\u6B63\u5728\u68C0\u67E5\u2026"),p(2),E("dot-pass",e.pythonProbe()?.status==="pass")("dot-fail",e.pythonProbe()?.status==="fail"),p(),b(e.pythonProbe()?.status==="fail"?32:-1),p(),E("item-pass",e.adbProbe()?.metadata?.installed)("item-fail",e.adbProbe()?.status==="fail"),p(9),y(e.adbProbe()?e.adbProbe()?.metadata?.installed?"ADB \u5DF2\u5B89\u88C5":"\u7F3A\u5C11 ADB":"\u6B63\u5728\u68C0\u67E5\u2026"),p(2),E("dot-pass",e.adbProbe()?.metadata?.installed)("dot-fail",e.adbProbe()?.status==="fail"),p(),b(e.adbProbe()?.status==="fail"?45:-1),p(),E("item-pass",e.configProbe()?.status==="pass")("item-fail",e.configProbe()?.status==="fail"),p(9),y(e.configProbe()?.summary||"\u914D\u7F6E\u6709\u6548"),p(2),E("dot-pass",e.configProbe()?.status==="pass")("dot-fail",e.configProbe()?.status==="fail"),p(),b(e.configProbe()?.status==="fail"?58:-1),p(),E("item-pass",e.toolchainProbe()?.status==="pass")("item-fail",e.toolchainProbe()?.status!=="pass"),p(9),y(e.toolchainProbe()?.summary||"FFmpeg & scrcpy"),p(2),E("dot-pass",e.toolchainProbe()?.status==="pass")("dot-fail",e.toolchainProbe()?.status!=="pass"),p(),b(e.toolchainProbe()?.status!=="pass"?71:-1),p(),E("card-pass",e.isCredentialsReady())("card-warn",!e.isCredentialsReady()),p(2),E("step-pass",e.isCredentialsReady()),p(),b(e.isCredentialsReady()?75:76),p(11),E("card-pass",e.isDeviceReady())("card-warn",!e.isDeviceReady()),p(2),E("step-pass",e.isDeviceReady()),p(),b(e.isDeviceReady()?89:90),p(12),y(e.showConnectionMethods()?"\u6536\u8D77\u9009\u9879":"\u5207\u6362\u8FDE\u63A5"),p(),N("disabled",e.isRestartingAdb())("title",e.isRemoteAdbServer()?"\u5237\u65B0\u8FDC\u7A0B ADB \u8BBE\u5907\u5217\u8868":"\u91CD\u542F\u672C\u5730 ADB \u670D\u52A1"),p(),b(e.isRestartingAdb()?103:e.adbRestartFeedback()?104:105),p(4),b(e.isDeviceReady()?107:-1),p(),b(e.isEmulatorLaunching()||!e.isDeviceReady()&&e.adbProbe()?.summary==="Device Booting"?108:-1),p(),b(!e.isDeviceReady()&&!e.isEmulatorLaunching()&&e.emulatorLaunchState()?.status==="failed"?109:-1),p(),b(e.showConnectionMethods()||!e.isDeviceReady()&&!e.isEmulatorLaunching()&&e.adbProbe()?.summary!=="Device Booting"&&e.adbProbe()?.summary!=="Device Unauthorized"&&e.adbProbe()?.summary!=="Device Locked"&&e.adbProbe()?.summary!=="Lock State Unknown"&&e.adbProbe()?.status!=="fail"&&e.emulatorLaunchState()?.status!=="failed"?110:-1),p(),b(e.adbProbe()?.status==="warn"&&(e.adbProbe()?.summary==="Device Locked"||e.adbProbe()?.summary==="Lock State Unknown")?111:-1),p(),b(e.adbProbe()?.status==="warn"&&e.adbProbe()?.summary==="Device Unauthorized"?112:-1),p(),b(e.adbProbe()?.status==="fail"?113:-1),p(),b(e.isReady()?114:-1)}}function L5(n,t){if(n&1){let e=B();l(0,"div",303),I("click",function(){S(e);let i=m(2);return k(i.setTab("diagnostics"))}),l(1,"span",304),g(2),d(),l(3,"span"),g(4),d(),l(5,"span",305),g(6,"arrow_forward"),d()()}if(n&2){let e=m(2);p(2),y(e.adbProbe()?.summary==="Device Locked"?"lock":"warning"),p(2),L(" ",e.adbProbe()?.summary==="Device Locked"?"Android \u8BBE\u5907\u5DF2\u9501\u5B9A\uFF0C\u8BF7\u5148\u89E3\u9501\u5E76\u8FDB\u5165\u4E3B\u5C4F\u5E55\u3002":"\u8FD0\u884C\u73AF\u5883\u3001\u6A21\u578B\u51ED\u636E\u6216 Android \u8BBE\u5907\u5C1A\u672A\u5C31\u7EEA\u3002\u70B9\u51FB\u6B64\u5904\u6253\u5F00\u7CFB\u7EDF\u8BBE\u7F6E\u3002"," ")}}function V5(n,t){if(n&1){let e=B();l(0,"div",269)(1,"div",306)(2,"span",307),g(3,"auto_awesome"),d(),l(4,"span",308),g(5," \u68C0\u6D4B\u5230\u6301\u7EED\u76D1\u63A7\u6216\u590D\u6742\u4EFB\u52A1\uFF0C\u5EFA\u8BAE\u4F7F\u7528\uFF1A "),l(6,"strong"),g(7,"Pro \u4E13\u4E1A\u6A21\u5F0F"),d()()(),l(8,"button",309),I("click",function(){S(e);let i=m(2);return k(i.setProfile("pro"))}),l(9,"span"),g(10,"\u5207\u6362\u81F3 Pro"),d(),l(11,"span",310),g(12,"arrow_forward"),d()()()}}function B5(n,t){n&1&&(l(0,"p",275)(1,"span",311),g(2,"Flash"),d(),l(3,"span",312),g(4,"\xB7"),d(),l(5,"span"),g(6,"\u8282\u7701 Token\uFF0C\u5FEB\u901F\u54CD\u5E94 "),l(7,"strong"),g(8,"\u6BCF\u6B65 3\u20135 \u79D2"),d(),g(9," \u76F4\u63A5\u6839\u636E\u5B9E\u65F6\u5C4F\u5E55\u6267\u884C\u64CD\u4F5C\uFF0C\u9002\u5408\u8DEF\u5F84\u660E\u786E\u7684\u65E5\u5E38\u4EFB\u52A1\u3002"),d(),l(10,"span",313),g(11,"\uFF08\u4E0D\u89C4\u5212\u3001\u4E0D\u68C0\u67E5\u7ED3\u679C\u3001\u4E0D\u6267\u884C ADB \u547D\u4EE4\uFF09"),d()())}function j5(n,t){n&1&&(l(0,"p",275)(1,"span",311),g(2,"Pro"),d(),l(3,"span",312),g(4,"\xB7"),d(),l(5,"span"),g(6,"\u5148\u89C4\u5212\u3001\u518D\u68C0\u67E5\u7ED3\u679C\uFF0C\u9047\u5230\u64CD\u4F5C\u53D7\u963B\u65F6\u81EA\u52A8\u6062\u590D\u3002\u652F\u6301 "),l(7,"strong"),g(8,"\u8D85\u8FC7 100 \u6B65\u7684"),d(),g(9," \u5DE5\u4F5C\u6D41\u548C\u5B9E\u65F6\u624B\u673A\u76D1\u63A7\uFF08"),l(10,"strong"),g(11,"15\u201340 \u79D2"),d(),g(12," / \u6B65\uFF09\u3002"),d()())}function z5(n,t){if(n&1&&(l(0,"div",276)(1,"span",314),g(2,"error"),d(),l(3,"span"),g(4),d()()),n&2){let e=m(2);p(4),y(e.errorMessage())}}function $5(n,t){if(n&1&&(l(0,"span",285),g(1),d()),n&2){let e=m(2);p(),L("",e.taskGoal().length," chars")}}function H5(n,t){n&1&&(z(0,"span",315),l(1,"span"),g(2,"\u6B63\u5728\u542F\u52A8\u2026"),d())}function U5(n,t){n&1&&(l(0,"span",316),g(1,"play_arrow"),d(),l(2,"span"),g(3,"\u6267\u884C\u4EFB\u52A1"),d())}function W5(n,t){if(n&1){let e=B();l(0,"button",330),I("click",function(){S(e);let i=m(3);return k(i.expectedOutput.set(""))}),l(1,"span",29),g(2,"close"),d()()}}function G5(n,t){if(n&1){let e=B();l(0,"button",331),I("click",function(){S(e);let i=m(3);return k(i.resetTuning())}),g(1,"\u91CD\u7F6E"),d()}}function q5(n,t){if(n&1&&z(0,"span",344),n&2){let e=t.$index,o=m().$implicit,i=m(3);Ie("--%NS%n",i.notchFraction(e,o.ladder.length)),E("reached",e<=o.index)}}function Y5(n,t){if(n&1&&(Fi(),z(0,"rect",348)),n&2){let e=t.$implicit;Ie("opacity",e.opacity)("animation-delay",e.delay,"ms"),ft("x",e.x+"%")("y",e.y)}}function K5(n,t){if(n&1&&(z(0,"div",345),Fi(),l(1,"svg",346),W(2,Y5,1,6,":svg:rect",347,Yo),d()),n&2){let e=m(4);p(2),G(e.ditherPixels)}}function Z5(n,t){n&1&&z(0,"span",342)}function X5(n,t){if(n&1&&(l(0,"li"),g(1),d()),n&2){let e=t.$implicit;p(),y(e)}}function Q5(n,t){if(n&1&&(l(0,"li"),g(1),d()),n&2){let e=t.$implicit;p(),y(e)}}function J5(n,t){if(n&1&&(l(0,"div",357)(1,"span",356),g(2,"\u4E0D\u5305\u542B\u7684\u80FD\u529B"),d(),l(3,"ul"),W(4,Q5,2,1,"li",null,Yo),d()()),n&2){let e=m(2).$implicit;p(4),G(e.level.skips)}}function eR(n,t){if(n&1&&(z(0,"div",349),l(1,"div",350)(2,"div",351)(3,"span",352),g(4),d(),l(5,"span",353),g(6),d()(),l(7,"p",354),g(8),d(),l(9,"div",355)(10,"span",356),g(11,"\u8FD0\u884C\u65B9\u5F0F"),d(),l(12,"ul"),W(13,X5,2,1,"li",null,Yo),d()(),M(15,J5,6,0,"div",357),l(16,"div",358)(17,"span",356),g(18,"\u9002\u7528\u573A\u666F"),d(),l(19,"span"),g(20),d()()()),n&2){let e=m().$implicit;p(4),y(e.level.label),p(2),y(e.level.latency),p(2),y(e.level.tagline),p(5),G(e.level.runs),p(2),b(e.level.skips?.length?15:-1),p(5),y(e.level.bestFor)}}function tR(n,t){if(n&1){let e=B();l(0,"div",332)(1,"div",333)(2,"span",334),g(3),d(),l(4,"span",335),g(5),d()(),l(6,"div",336)(7,"span"),g(8),d(),l(9,"span"),g(10),d()(),l(11,"div",337),I("pointerenter",function(){let i=S(e).$implicit,r=m(3);return k(r.showTuningTip(i.kind))})("pointerleave",function(){let i=S(e).$implicit,r=m(3);return k(r.hideTuningTip(i.kind))}),l(12,"div",338),z(13,"div",339),W(14,q5,1,4,"span",340,Zv),M(16,K5,4,0),d(),z(17,"div",341),M(18,Z5,1,0,"span",342),l(19,"input",343),I("input",function(i){let r=S(e).$implicit,a=m(3);return k(a.setTuningIndex(r.kind,i.target.value))})("focus",function(){let i=S(e).$implicit,r=m(3);return k(r.showTuningTip(i.kind))})("blur",function(){let i=S(e).$implicit,r=m(3);return k(r.hideTuningTip(i.kind))}),d(),M(20,eR,21,5),d()()}if(n&2){let e=t.$implicit,o=m(3);Ie("--%NS%pct",e.fraction),E("verify",e.kind==="verify")("explore",e.kind==="explore")("dragging",o.activeTuningTip()===e.kind),p(3),y(e.name),p(2),y(e.level.label),p(3),y(e.ends[0]),p(2),y(e.ends[1]),p(4),G(e.ladder),p(2),b(e.index===e.ladder.length-1?16:-1),p(2),b(e.index===e.ladder.length-1?18:-1),p(),N("max",e.ladder.length-1)("value",e.index),ft("aria-label",e.name)("aria-valuetext",e.level.label+": "+e.level.tagline),p(),b(o.activeTuningTip()===e.kind?20:-1)}}function nR(n,t){if(n&1){let e=B();l(0,"div",317)(1,"div",318)(2,"span",319),g(3,"\u9884\u671F\u8F93\u51FA"),d(),l(4,"span",320),g(5,"\uFF08\u53EF\u9009\uFF09"),d()(),l(6,"div",321)(7,"input",322),I("ngModelChange",function(i){S(e);let r=m(2);return k(r.expectedOutput.set(i))}),d(),Qe(),M(8,W5,3,0,"button",323),d()(),l(9,"div",324)(10,"div",325)(11,"span",326),g(12,"Pro \u8BBE\u7F6E"),d(),M(13,G5,2,0,"button",327),d(),l(14,"div",328),W(15,tR,21,19,"div",329,sA),d()()}if(n&2){let e=m(2);p(7),N("ngModel",e.expectedOutput()),Je(),p(),b(e.expectedOutput().trim()?8:-1),p(),E("tip-open",e.activeTuningTip()!==null),p(4),b(e.isTuningDefault()?-1:13),p(2),G(e.tuningSliders())}}function oR(n,t){if(n&1&&(l(0,"div",362)(1,"span",29),g(2),d()()),n&2){let e=t.$implicit;N("title",e.name),p(2),y(e.icon)}}function iR(n,t){if(n&1){let e=B();l(0,"div",359),I("click",function(){let i=S(e).$implicit,r=m(2);return k(r.applySuggestion(i))}),l(1,"div",360)(2,"div",361),W(3,oR,3,2,"div",362,cA),l(5,"span",363),g(6),d()(),l(7,"span",364),g(8),d()(),l(9,"div",365)(10,"h4",366),g(11),d(),l(12,"p",367),g(13),d()(),l(14,"div",368)(15,"span",369),g(16),d(),l(17,"div",370)(18,"span"),g(19,"\u4F7F\u7528"),d(),l(20,"span",371),g(21,"arrow_forward"),d()()()()}if(n&2){let e=t.$implicit,o=m(2);E("is-pro-card",e.profile==="pro")("is-flash-card",e.profile==="flash"),p(3),G(e.apps),p(3),y(o.getAppNamesDisplay(e.apps)),p(),E("mode-pro",e.profile==="pro")("mode-flash",e.profile==="flash"),N("title",e.profile==="pro"?"\u4F7F\u7528 ARTEMIS Pro\uFF1A\u591A\u667A\u80FD\u4F53\u534F\u4F5C":"\u4F7F\u7528 ARTEMIS Flash\uFF1A\u5FEB\u901F\u6267\u884C"),p(),L(" ",e.profile==="pro"?"Pro":"Flash"," "),p(3),y(e.title),p(2),y(e.description),p(3),y(e.tag)}}function rR(n,t){if(n&1){let e=B();l(0,"section",19),M(1,L5,7,2,"div",267),l(2,"div",268),M(3,V5,13,0,"div",269),l(4,"div",270)(5,"textarea",271),wt("ngModelChange",function(i){S(e);let r=m();return Nt(r.taskGoal,i)||(r.taskGoal=i),k(i)}),I("keydown.control.enter",function(){S(e);let i=m();return k(i.runTask())})("keydown.meta.enter",function(){S(e);let i=m();return k(i.runTask())}),d(),Qe(),d(),l(6,"div",272)(7,"div",273)(8,"span",29),g(9),d()(),l(10,"div",274),M(11,B5,12,0,"p",275)(12,j5,13,0,"p",275),d()(),M(13,z5,5,1,"div",276),l(14,"div",277)(15,"div",278)(16,"div",279)(17,"button",280),I("click",function(){S(e);let i=m();return k(i.setProfile("flash"))}),l(18,"span",281),g(19,"bolt"),d(),l(20,"span",282),g(21,"Flash"),d()(),l(22,"button",283),I("click",function(){S(e);let i=m();return k(i.setProfile("pro"))}),l(23,"span",281),g(24,"psychology"),d(),l(25,"span",282),g(26,"Pro"),d()()()(),l(27,"div",284),M(28,$5,2,1,"span",285),l(29,"button",286),I("click",function(){S(e);let i=m();return k(i.runTask())}),M(30,H5,3,0)(31,U5,4,0),d()()()(),M(32,nR,17,5),l(33,"div",287)(34,"div",288)(35,"div",289)(36,"div",290)(37,"span",291),g(38,"auto_awesome"),d(),l(39,"span",292),g(40,"\u63A8\u8350\u4EFB\u52A1"),d()(),l(41,"div",293)(42,"button",294),I("click",function(){S(e);let i=m();return k(i.setCategory("all"))}),l(43,"span"),g(44,"\u5168\u90E8"),d()(),l(45,"button",295),I("click",function(){S(e);let i=m();return k(i.setCategory("flash"))}),l(46,"span",296),g(47,"bolt"),d(),l(48,"span"),g(49,"Flash"),d()(),l(50,"button",297),I("click",function(){S(e);let i=m();return k(i.setCategory("pro"))}),l(51,"span",296),g(52,"psychology"),d(),l(53,"span"),g(54,"Pro"),d()(),l(55,"button",294),I("click",function(){S(e);let i=m();return k(i.setCategory("cross_app"))}),l(56,"span",296),g(57,"sync_alt"),d(),l(58,"span"),g(59,"\u8DE8\u5E94\u7528"),d()(),l(60,"button",294),I("click",function(){S(e);let i=m();return k(i.setCategory("monitor"))}),l(61,"span",296),g(62,"monitoring"),d(),l(63,"span"),g(64,"\u76D1\u63A7"),d()()()(),l(65,"div",298)(66,"button",299),I("click",function(){S(e);let i=m();return k(i.shuffleSuggestions())}),l(67,"span",300),g(68,"shuffle"),d(),l(69,"span"),g(70,"\u6362\u4E00\u6279"),d()()()(),l(71,"div",301),W(72,iR,22,14,"div",302,Zv),d()()()}if(n&2){let e=m();p(),b(e.hasReadinessReport()&&!e.isReady()?1:-1),p(),E("is-pro-active",e.selectedProfile()==="pro"),p(),b(e.showIntentSuggestion()?3:-1),p(2),xt("ngModel",e.taskGoal),N("disabled",e.isSubmitting()),Je(),p(),E("is-pro",e.selectedProfile()==="pro"),p(3),y(e.selectedProfile()==="flash"?"bolt":"psychology"),p(2),b(e.selectedProfile()==="flash"?11:12),p(2),b(e.errorMessage()?13:-1),p(4),E("active",e.selectedProfile()==="flash"),p(5),E("active",e.selectedProfile()==="pro"),p(6),b(e.taskGoal().length>0?28:-1),p(),E("btn-run-pro",e.selectedProfile()==="pro"),N("disabled",!e.taskGoal().trim()||e.isSubmitting()||!e.isReady())("title",e.isReady()?"\u6267\u884C\u4EFB\u52A1":e.adbProbe()?.summary==="Device Locked"?"\u8BF7\u5148\u89E3\u9501 Android \u8BBE\u5907":"\u8BF7\u5148\u5B8C\u6210\u7CFB\u7EDF\u8BBE\u7F6E"),p(),b(e.isSubmitting()?30:31),p(2),b(e.selectedProfile()==="pro"?32:-1),p(10),E("active",e.selectedCategory()==="all"),p(3),E("active",e.selectedCategory()==="flash"),p(5),E("active",e.selectedCategory()==="pro"),p(5),E("active",e.selectedCategory()==="cross_app"),p(5),E("active",e.selectedCategory()==="monitor"),p(12),G(e.filteredSuggestions())}}function aR(n=260,t=7){let e=t>>>0,o=()=>(e=Math.imul(e,1664525)+1013904223>>>0,e/4294967296),i=[];for(let r=0;rthis.systemService.adbServerStatus());isRemoteAdbServer=A(()=>this.systemService.isRemoteAdbServer());remoteAdbHasReadyDevice=A(()=>this.remoteAdbDevices().some(t=>t.state==="device"));isProbedRemoteAdbActive=A(()=>{let t=this.remoteAdbProbeResult()?.endpoint,e=this.adbServerStatus()?.endpoint;return!!t&&!!e&&t.identity===e.identity});wifiCommand=A(()=>{let t=this.wifiHost().trim()||"",e=this.wifiPort().trim()||"5555";return`adb connect ${t}:${e}`});selectedProfile=w("flash");taskGoal=w("");isSubmitting=w(!1);errorMessage=w(null);expectedOutput=w("");showOutputterDrawer=w(!1);verificationLevels=Xt;explorerModes=Qt;verificationIndex=w(so(Xt,ai,ai));explorerIndex=w(so(Qt,si,si));tuningDefaults=w({verification:ai,explorer:si});tuningTouched=w(!1);activeTuningTip=w(null);ditherPixels=aR();verificationLevel=A(()=>Xt[this.verificationIndex()]);explorerMode=A(()=>Qt[this.explorerIndex()]);isTuningDefault=A(()=>{let t=this.tuningDefaults();return this.verificationLevel().id===t.verification&&this.explorerMode().id===t.explorer});tuningSliders=A(()=>{let t=this.verificationIndex(),e=this.explorerIndex();return[{kind:"verify",name:"\u7ED3\u679C\u68C0\u67E5",ends:["\u5173\u95ED","\u4E25\u683C\u68C0\u67E5"],ladder:Xt,index:t,level:Xt[t],fraction:ku(t,Xt.length)/100},{kind:"explore",name:"\u5C4F\u5E55\u8BC6\u522B",ends:["\u66F4\u5FEB","\u66F4\u7CBE\u7EC6"],ladder:Qt,index:e,level:Qt[e],fraction:ku(e,Qt.length)/100}]});notchFraction(t,e){return ku(t,e)/100}setTuningIndex(t,e){let o=Math.round(Number(e));if(!Number.isFinite(o))return;let i=t==="verify"?Xt:Qt,r=Math.min(Math.max(o,0),i.length-1);this.tuningTouched.set(!0),t==="verify"?this.verificationIndex.set(r):this.explorerIndex.set(r),this.activeTuningTip.set(t)}showTuningTip(t){this.activeTuningTip.set(t)}hideTuningTip(t){this.activeTuningTip()===t&&this.activeTuningTip.set(null)}resetTuning(){let t=this.tuningDefaults();this.verificationIndex.set(so(Xt,t.verification,ai)),this.explorerIndex.set(so(Qt,t.explorer,si)),this.tuningTouched.set(!1)}loadProTuningDefaults(){this.agentService.getProTuningDefaults().subscribe({next:t=>{let e=so(Xt,t?.verification_level,ai),o=so(Qt,t?.explorer_mode,si);this.tuningDefaults.set({verification:Xt[e].id,explorer:Qt[o].id}),this.tuningTouched()||(this.verificationIndex.set(e),this.explorerIndex.set(o))},error:()=>{}})}toggleOutputterDrawer(){this.showOutputterDrawer.update(t=>!t)}applyOutputPreset(t){this.expectedOutput()===t?this.expectedOutput.set(""):(this.expectedOutput.set(t),this.showOutputterDrawer.set(!0))}isIntentSuggestingPro=A(()=>{let t=this.taskGoal().toLowerCase();return t.trim()?["monitor","polling","poll","wait until","loop","keep watching","crash","logcat","troubleshoot","diagnose","debug","investigate","compare","extract","summarize","report","\u76D1\u63A7","\u8F6E\u8BE2","\u7B49\u5F85","\u4E00\u76F4","\u76F4\u5230","\u5D29\u6E83","\u95EA\u9000","\u6392\u67E5","\u5206\u6790\u65E5\u5FD7","\u5BF9\u6BD4","\u603B\u7ED3"].some(o=>t.includes(o)):!1});showIntentSuggestion=A(()=>this.isIntentSuggestingPro()&&this.selectedProfile()==="flash");isReady=A(()=>this.systemService.isReady());hasReadinessReport=A(()=>this.systemService.hasReadinessReport());isLoading=A(()=>this.systemService.isLoading());isRestartingAdb=A(()=>this.systemService.isRestartingAdb());launchingAvd=A(()=>this.systemService.launchingAvd());emulatorLaunchState=A(()=>this.systemService.emulatorLaunchState());isEmulatorLaunching=A(()=>this.systemService.isEmulatorLaunching());showLaunchLogs=w(!1);pythonProbe=A(()=>this.systemService.pythonProbe());configProbe=A(()=>this.systemService.configProbe());adbProbe=A(()=>this.systemService.adbProbe());llmProbe=A(()=>this.systemService.llmProbe());openaiProbe=A(()=>this.systemService.openaiProbe());ocrProbe=A(()=>this.systemService.ocrProbe());toolchainProbe=A(()=>this.systemService.toolchainProbe());isEnvironmentReady=A(()=>this.systemService.isEnvironmentReady());isCredentialsReady=A(()=>this.systemService.isCredentialsReady());isSkipCredentialsCheck=A(()=>this.systemService.isSkipCredentialsCheck());isDeviceReady=A(()=>this.systemService.isDeviceReady());activeDevice=A(()=>this.systemService.activeDevice());connectedDevices=A(()=>this.systemService.connectedDevices());installedAvds=A(()=>this.systemService.installedAvds());emulatorPath=A(()=>this.systemService.emulatorPath());isEmulatorInPath=A(()=>this.systemService.isEmulatorInPath());totalStepCount=A(()=>this.systemService.totalStepCount());passedStepCount=A(()=>this.systemService.passedStepCount());blockerCount=A(()=>this.systemService.blockerCount());passedBlockerCount=A(()=>this.systemService.passedBlockerCount());configuredLlmProviders=A(()=>{let t=this.llmProbe()?.metadata;return t&&Array.isArray(t.providers)?t.providers:[]});selectedOs=w(null);effectiveOs=A(()=>this.selectedOs()||this.systemService.osType());oneClickSetupCmd=A(()=>this.effectiveOs()==="windows"?"powershell -ExecutionPolicy Bypass -File scripts/install_deps.ps1":"bash scripts/install_deps.sh");adbInstallCmd=A(()=>{let t=this.effectiveOs();return t==="windows"?"winget install Google.PlatformTools":t==="darwin"?"brew install android-platform-tools":"sudo apt-get install -y adb"});toolchainInstallCmd=A(()=>{let t=this.effectiveOs();return t==="windows"?"winget install Gyan.FFmpeg Genymobile.scrcpy":t==="darwin"?"brew install ffmpeg scrcpy":"sudo apt-get install -y ffmpeg scrcpy"});emuHypervisorTitle=A(()=>{let t=this.effectiveOs();return t==="windows"?"\u542F\u7528 Windows \u865A\u62DF\u673A\u76D1\u63A7\u7A0B\u5E8F\u5E73\u53F0\uFF08WHPX\uFF09":t==="darwin"?"\u68C0\u67E5 macOS \u865A\u62DF\u5316\u5E76\u5B89\u88C5\u5DE5\u5177":"\u542F\u7528 KVM \u786C\u4EF6\u52A0\u901F\uFF08Linux\uFF09"});emuHypervisorDesc=A(()=>{let t=this.effectiveOs();return t==="windows"?"\u4EE5\u7BA1\u7406\u5458\u8EAB\u4EFD\u6253\u5F00 PowerShell\uFF0C\u542F\u7528 Windows \u865A\u62DF\u673A\u76D1\u63A7\u7A0B\u5E8F\u5E73\u53F0\uFF1A":t==="darwin"?"macOS \u4F7F\u7528\u7CFB\u7EDF Hypervisor.framework\u3002\u901A\u8FC7 Homebrew \u6216 Android Studio \u5B89\u88C5 SDK \u5DE5\u5177\uFF1A":"\u786E\u4FDD\u5F53\u524D\u7528\u6237\u62E5\u6709\u865A\u62DF\u5316\u6743\u9650\uFF1A"});emuHypervisorCmd=A(()=>{let t=this.effectiveOs();return t==="windows"?"Enable-WindowsOptionalFeature -Online -FeatureName HypervisorPlatform":t==="darwin"?"brew install --cask android-commandlinetools":"sudo apt-get install -y qemu-kvm libvirt-daemon-system && sudo adduser $USER kvm"});emuSdkInstallCmd=A(()=>this.effectiveOs()==="darwin"?'sdkmanager --install "system-images;android-34;google_apis;arm64-v8a" "emulator" "platform-tools"':'sdkmanager --install "system-images;android-34;google_apis;x86_64" "emulator" "platform-tools"');emuCreateAvdCmd=A(()=>this.effectiveOs()==="darwin"?'avdmanager create avd -n Pixel_8_API_34 -k "system-images;android-34;google_apis;arm64-v8a" --device "pixel_8"':'avdmanager create avd -n Pixel_8_API_34 -k "system-images;android-34;google_apis;x86_64" --device "pixel_8"');isOcrConfigured=A(()=>this.ocrProbe()?.metadata?.configured===!0);allSuggestions=this.taskRecService.allTasks;selectedCategory=w("all");shuffleOffset=w(0);installedPackages=A(()=>{let t=this.activeDevice()?.installed_packages;return t&&Array.isArray(t)?new Set(t):new Set});filteredSuggestions=A(()=>this.taskRecService.filterAndRankTasks(this.installedPackages(),this.selectedCategory(),this.shuffleOffset()));focusListener=()=>{this.systemService.fetchReadiness().subscribe()};ngOnInit(){this.loadProTuningDefaults(),this.systemService.fetchReadiness().subscribe(),this.systemService.fetchModelConfigEnv().subscribe(),this.systemService.fetchAdbServerStatus().subscribe({next:t=>{t.endpoint.mode==="remote"&&(this.remoteAdbHost.set(t.endpoint.host),this.remoteAdbPort.set(String(t.endpoint.port)),this.activeAdbGuideTab.set("remote"))},error:()=>{}}),window.addEventListener("focus",this.focusListener)}ngOnDestroy(){window.removeEventListener("focus",this.focusListener)}setTab(t){this.activeTab.set(t),t==="diagnostics"&&(this.systemService.fetchReadiness().subscribe(),this.systemService.fetchModelConfigEnv().subscribe())}setSelectedOs(t){this.selectedOs.set(t)}setAdbGuideTab(t){this.activeAdbGuideTab.set(t),this.remoteAdbError.set(null),this.remoteAdbMessage.set(null)}setEmulatorSetupMode(t){this.emulatorSetupMode.set(t)}skipCredentialsCheck(){this.systemService.skipCredentialsCheck()}refreshReadiness(){this.isRefreshingDiagnostics.set(!0),this.systemService.fetchReadiness(!1,!0).subscribe({next:()=>{this.systemService.fetchModelConfigEnv().subscribe({next:()=>{setTimeout(()=>this.isRefreshingDiagnostics.set(!1),450)},error:()=>this.isRefreshingDiagnostics.set(!1)})},error:()=>this.isRefreshingDiagnostics.set(!1)})}restartAdbServer(){this.adbRestartFeedback.set(null),this.systemService.restartAdb().subscribe({next:t=>{this.adbRestartFeedback.set(t?.restart_result?.skipped?"\u8BBE\u5907\u5DF2\u5237\u65B0 \u2713":"ADB \u5DF2\u5237\u65B0 \u2713"),setTimeout(()=>this.adbRestartFeedback.set(null),2500)},error:()=>{this.adbRestartFeedback.set("\u91CD\u542F\u5931\u8D25"),setTimeout(()=>this.adbRestartFeedback.set(null),3e3)}})}connectWifiDevice(){if(this.isRemoteAdbServer()){this.wifiConnectError.set("\u8FDE\u63A5\u65E0\u7EBF\u8BBE\u5907\u524D\uFF0C\u8BF7\u5148\u5207\u6362\u81F3\u672C\u5730 ADB\u3002");return}let t=this.wifiHost().trim(),e=this.wifiPort().trim()||"5555",o=parseInt(e,10)||5555;if(!t){this.wifiConnectError.set("\u8BF7\u8F93\u5165\u6709\u6548\u7684 IP \u5730\u5740\u3002");return}this.isConnectingWifi.set(!0),this.wifiConnectError.set(null),this.wifiConnectMessage.set(null),this.systemService.connectWirelessAdb(t,o).subscribe({next:i=>{this.isConnectingWifi.set(!1);let r=i?.connect_result;r?.success?(this.wifiConnectMessage.set(`\u5DF2\u8FDE\u63A5\u81F3 ${t}:${o}!`),setTimeout(()=>this.wifiConnectMessage.set(null),4e3)):this.wifiConnectError.set(r?.message||"\u8FDE\u63A5\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u624B\u673A IP \u5730\u5740\u548C Wi-Fi\u3002")},error:i=>{this.isConnectingWifi.set(!1),this.wifiConnectError.set(i?.error?.detail||"\u8FDE\u63A5\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5 ADB \u8FDE\u63A5\u3002")}})}connectRemoteAdbServer(){let t=this.remoteAdbHost().trim(),e=Number(this.remoteAdbPort().trim());if(!t){this.remoteAdbError.set("\u8BF7\u8F93\u5165 ADB \u670D\u52A1\u5668\u7684\u4E3B\u673A\u540D\u6216 IP \u5730\u5740\u3002");return}if(!Number.isInteger(e)||e<1||e>65535){this.remoteAdbError.set("\u8BF7\u8F93\u5165 1\u201365535 \u4E4B\u95F4\u7684\u7AEF\u53E3\u3002");return}this.isConnectingRemoteAdb.set(!0),this.remoteAdbError.set(null),this.remoteAdbMessage.set(null),this.remoteAdbDevices.set([]),this.remoteAdbProbeResult.set(null),this.systemService.probeAdbServer(t,e).subscribe({next:o=>{this.isConnectingRemoteAdb.set(!1);let i=o.connection_result;i.success?(this.remoteAdbProbeResult.set(i),this.remoteAdbDevices.set(i.devices||[]),this.remoteAdbMessage.set(i.message)):this.remoteAdbError.set(i.message)},error:o=>{this.isConnectingRemoteAdb.set(!1),this.remoteAdbError.set(o?.error?.detail||"\u65E0\u6CD5\u6D4B\u8BD5 ADB \u670D\u52A1\u5668\u8FDE\u63A5\u3002")}})}activateRemoteAdbServer(){let t=this.remoteAdbProbeResult();if(!t?.success){this.remoteAdbError.set("\u8BF7\u5148\u6D4B\u8BD5\u670D\u52A1\u5668\u8FDE\u63A5\u3002");return}this.isActivatingRemoteAdb.set(!0),this.remoteAdbError.set(null),this.systemService.connectAdbServer(t.endpoint.host,t.endpoint.port,this.rememberRemoteAdb()).subscribe({next:e=>{this.isActivatingRemoteAdb.set(!1);let o=e.connection_result;o.success?(this.remoteAdbProbeResult.set(o),this.remoteAdbDevices.set(o.devices||[]),this.remoteAdbMessage.set(o.message)):this.remoteAdbError.set(o.message)},error:e=>{this.isActivatingRemoteAdb.set(!1),this.remoteAdbError.set(e?.error?.detail||"\u65E0\u6CD5\u4F7F\u7528\u6B64 ADB \u670D\u52A1\u5668\u3002")}})}updateRemoteAdbHost(t){this.remoteAdbHost.set(t),this.clearRemoteAdbProbe()}updateRemoteAdbPort(t){this.remoteAdbPort.set(t),this.clearRemoteAdbProbe()}clearRemoteAdbProbe(){this.remoteAdbProbeResult.set(null),this.remoteAdbDevices.set([]),this.remoteAdbMessage.set(null),this.remoteAdbError.set(null)}switchToLocalAdbServer(){this.isSwitchingToLocalAdb.set(!0),this.remoteAdbError.set(null),this.systemService.useLocalAdbServer(!0).subscribe({next:t=>{this.isSwitchingToLocalAdb.set(!1),this.remoteAdbDevices.set([]),this.remoteAdbMessage.set(t.connection_result.message)},error:t=>{this.isSwitchingToLocalAdb.set(!1),this.remoteAdbError.set(t?.error?.detail||"\u65E0\u6CD5\u5207\u6362\u56DE\u672C\u5730 ADB \u670D\u52A1\u5668\u3002")}})}toggleConnectionMethods(){this.showConnectionMethods.update(t=>!t)}launchAvdEmulator(t){this.isRemoteAdbServer()||this.systemService.launchEmulator(t).subscribe()}toggleLaunchLogs(){this.showLaunchLogs.update(t=>!t)}stopEmulator(){this.systemService.stopEmulator().subscribe()}dismissEmulatorStatus(){this.systemService.dismissEmulatorStatus().subscribe()}selectTargetDevice(t){this.systemService.selectDevice(t).subscribe()}getEmulatorCommand(t){let e=this.emulatorPath();return`${this.isEmulatorInPath()?"emulator":e||"~/Android/Sdk/emulator/emulator"} -avd ${t}`}copyToClipboard(t,e){navigator.clipboard&&navigator.clipboard.writeText(t).then(()=>{this.copiedId.set(e),setTimeout(()=>{this.copiedId()===e&&this.copiedId.set(null)},2e3)})}setProfile(t){this.selectedProfile.set(t)}setCategory(t){this.selectedCategory.set(t)}shuffleSuggestions(){this.shuffleOffset.update(t=>t+3)}getAppNamesDisplay(t){return t.map(e=>e.name).join(" + ")}applySuggestion(t){this.taskGoal.set(t.goal),this.selectedProfile.set(t.profile),this.errorMessage.set(null)}applyQuickPrompt(t,e){this.taskGoal.set(t),e&&this.selectedProfile.set(e),this.errorMessage.set(null)}proceedToLauncher(){this.activeTab.set("launcher")}runTask(){let t=this.taskGoal().trim();if(!t){this.errorMessage.set("\u8BF7\u5148\u8F93\u5165\u4EFB\u52A1\u76EE\u6807\u3002");return}if(!this.isReady()){this.errorMessage.set("\u8FD0\u884C\u6761\u4EF6\u5C1A\u672A\u6EE1\u8DB3\uFF0C\u8BF7\u5148\u68C0\u67E5\u7CFB\u7EDF\u8BBE\u7F6E\u3002"),this.activeTab.set("diagnostics");return}this.isSubmitting.set(!0),this.errorMessage.set(null),this.agentService.runTask(t,this.selectedProfile(),this.selectedProfile()==="pro"&&this.expectedOutput().trim()?this.expectedOutput().trim():void 0,void 0,this.selectedProfile()==="pro"?{verificationLevel:this.verificationLevel().id,explorerMode:this.explorerMode().id}:void 0).subscribe({next:()=>{this.isSubmitting.set(!1),this.router.navigate(["/workspace"])},error:e=>{console.error("Failed to submit task from home page:",e),this.isSubmitting.set(!1),this.errorMessage.set(e?.error?.detail||"\u63D0\u4EA4\u4EFB\u52A1\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u670D\u52A1\u5668\u8FDE\u63A5\u3002")}})}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=Ae({type:n,selectors:[["app-home"]],decls:26,vars:14,consts:[[1,"home-container"],[1,"aurora-background"],[1,"glow","glow-1"],[1,"glow","glow-2"],[1,"glow","glow-3"],[1,"glow","glow-pending"],[1,"glow","glow-ready"],[1,"glow","glow-pro"],[1,"home-content"],[1,"hero-section"],[1,"hero-title"],[1,"mode-tabs-container"],[1,"mode-tabs"],["type","button",1,"mode-tab-btn",3,"click"],[1,"material-symbols-outlined","tab-icon","icon-ready"],[1,"material-symbols-outlined","tab-icon"],[1,"tab-label"],[1,"material-symbols-outlined","tab-icon","icon-locked"],[1,"setup-guide-view"],[1,"task-launcher-view"],[1,"guide-card"],[1,"guide-card-header"],[1,"step-badge"],[1,"material-symbols-outlined","step-check-icon"],[1,"step-info"],[1,"step-title-row"],[1,"step-title"],[1,"step-desc"],["type","button","title","\u91CD\u65B0\u68C0\u67E5\u5168\u90E8\u7CFB\u7EDF\u4F9D\u8D56",1,"btn-header-action",3,"click","disabled"],[1,"material-symbols-outlined"],[1,"guide-card-body"],[1,"one-click-install-bar"],[1,"env-matrix-grid"],[1,"env-item-card"],[1,"item-header"],[1,"item-icon-box"],[1,"material-symbols-outlined","item-icon"],[1,"item-title-group"],[1,"item-name"],[1,"item-subtitle"],[1,"item-status"],[1,"status-dot"],[1,"item-body"],[3,"saved"],["type","button",1,"btn-restart-adb","btn-connection-options",3,"click"],["type","button",1,"btn-restart-adb",3,"click","disabled","title"],[1,"connected-device-panel"],[1,"emulator-boot-tracker-container"],[1,"emulator-failed-container"],[1,"foolproof-guide-container"],[1,"device-locked-panel"],[1,"unauthorized-panel"],[1,"adb-missing-panel"],[1,"ready-banner-footer"],[1,"install-bar-left"],[1,"install-bar-icon-box"],[1,"material-symbols-outlined","bolt-icon"],[1,"install-bar-text"],[1,"install-bar-title-row"],[1,"install-bar-title"],[1,"os-selector-pills"],["type","button",1,"os-pill",3,"click"],[1,"install-bar-desc"],[1,"code-box","small-box"],["type","button",1,"btn-copy-code",3,"click"],[1,"item-action-box"],[1,"terminal-prefix"],[1,"code-text"],[1,"material-symbols-outlined","spinning"],[1,"material-symbols-outlined","feedback-done"],[1,"feedback-text"],[1,"device-hero-card"],[1,"device-avatar"],[1,"material-symbols-outlined","device-hero-icon"],[1,"device-hero-details"],[1,"device-hero-name"],[1,"device-hero-meta"],[1,"device-hero-status"],[1,"status-dot","dot-pass"],[1,"status-text"],[1,"multi-device-switcher"],[1,"meta-dot"],[1,"remote-endpoint-label"],[1,"switcher-label"],[1,"switcher-chips"],["type","button",1,"device-chip-btn",3,"selected"],["type","button",1,"device-chip-btn",3,"click"],[1,"material-symbols-outlined","chip-icon"],[1,"active-check"],[1,"emulator-boot-tracker-card"],[1,"tracker-header"],[1,"tracker-title-group"],[1,"tracker-icon-box"],[1,"material-symbols-outlined","spinning-icon"],[1,"tracker-titles"],[1,"tracker-main-heading"],[1,"tracker-title"],[1,"avd-highlight"],[1,"stage-tag-badge"],[1,"tracker-subtitle"],[1,"tracker-actions"],["type","button",1,"btn-toggle-logs",3,"click"],["type","button","title","\u7EC8\u6B62\u6A21\u62DF\u5668\u8FDB\u7A0B",1,"btn-stop-emu",3,"click"],[1,"boot-stepper"],[1,"step-item"],[1,"step-circle"],[1,"material-symbols-outlined","check-icon"],[1,"spinner-tiny"],[1,"step-label"],[1,"step-line"],[1,"progress-bar-container"],[1,"progress-bar-track"],[1,"progress-bar-fill"],[1,"progress-bar-meta"],[1,"progress-percent"],[1,"progress-timer"],[1,"material-symbols-outlined","timer-icon"],[1,"boot-tip-banner"],[1,"material-symbols-outlined","tip-icon"],[1,"boot-logs-drawer"],[1,"logs-header"],[1,"logs-header-left"],["type","button",1,"btn-copy-logs",3,"click"],[1,"logs-body"],[1,"log-empty"],[1,"log-line"],[1,"emulator-failed-card"],[1,"failed-header"],[1,"failed-header-left"],[1,"failed-icon-box"],[1,"material-symbols-outlined","failed-icon"],[1,"failed-titles"],[1,"failed-title"],[1,"failed-desc"],["type","button","title","\u5173\u95ED\u9519\u8BEF\u63D0\u793A",1,"btn-dismiss-failed",3,"click"],[1,"failed-logs-box"],[1,"failed-actions-bar"],["type","button",1,"btn-retry-launch",3,"disabled"],["type","button",1,"btn-restart-adb-sub",3,"click"],["type","button",1,"btn-dismiss-flat",3,"click"],[1,"failed-logs-pre"],["type","button",1,"btn-retry-launch",3,"click","disabled"],[1,"connection-methods-nav"],["type","button",1,"method-nav-card",3,"click"],[1,"method-card-left"],[1,"method-icon-box"],[1,"method-info"],[1,"method-title-row"],[1,"method-title"],[1,"method-desc"],[1,"method-card-right"],[1,"radio-indicator"],[1,"active-remote-notice"],[1,"method-details-panel"],[1,"method-details-panel","remote-adb-panel"],[1,"active-remote-copy"],["type","button",1,"btn-use-local-adb",3,"click","disabled"],[1,"avds-section"],[1,"emulator-setup-guide-container"],[1,"section-header-bar"],[1,"section-title-group"],[1,"material-symbols-outlined","header-icon"],[1,"section-title"],[1,"count-badge"],[1,"avds-list"],[1,"avd-card-item"],[1,"avd-item-main"],[1,"avd-avatar"],[1,"avd-meta"],[1,"avd-heading"],[1,"avd-name"],[1,"avd-type-pill"],[1,"avd-item-actions"],["type","button",1,"btn-avd-launch",3,"click","disabled","title"],[1,"spinner-icon"],[1,"material-symbols-outlined","action-icon"],[1,"empty-avd-banner"],[1,"banner-left"],[1,"empty-avd-icon-box"],[1,"banner-titles"],[1,"banner-title-row"],[1,"empty-title"],[1,"empty-desc"],[1,"mode-switch-pills"],["type","button",1,"pill-btn",3,"click"],[1,"material-symbols-outlined","pill-icon"],[1,"steps-flow-grid","emu-flow-grid"],[1,"cli-steps-list"],[1,"flow-step-card"],[1,"step-card-header"],[1,"step-number-badge"],[1,"material-symbols-outlined","step-card-icon"],[1,"step-card-title"],[1,"step-card-desc"],["href","https://developer.android.com/studio","target","_blank","rel","noopener",1,"guide-link"],[1,"cli-step-item"],[1,"step-badge-num"],[1,"step-content"],[1,"step-text"],[1,"usb-guide-intro"],[1,"material-symbols-outlined","intro-icon"],[1,"steps-flow-grid"],[1,"wifi-guide-intro"],[1,"wifi-interactive-box"],[1,"wifi-form-row"],[1,"wifi-input-col","ip-col"],[1,"wifi-label"],[1,"wifi-input-wrap"],[1,"material-symbols-outlined","wrap-icon"],["type","text","placeholder","\u4F8B\u5982\uFF1A192.168.1.108","spellcheck","false",1,"wifi-input",3,"ngModelChange","ngModel"],[1,"wifi-input-col","port-col"],["type","text","placeholder","5555","spellcheck","false",1,"wifi-input",3,"ngModelChange","ngModel"],[1,"wifi-btn-col"],["type","button",1,"btn-wifi-connect",3,"click","disabled"],[1,"wifi-status-alert","success"],[1,"wifi-status-alert","error"],[1,"info-callout-box"],[1,"material-symbols-outlined","callout-icon"],[1,"callout-text"],[1,"remote-guide-intro"],[1,"remote-adb-interactive-box"],[1,"remote-adb-form-row"],[1,"remote-adb-input-col","host-col"],["for","remote-adb-host",1,"remote-adb-label"],[1,"remote-adb-input-wrap"],["id","remote-adb-host","type","text","placeholder","127.0.0.1","autocomplete","off","spellcheck","false",1,"remote-adb-input",3,"ngModelChange","ngModel"],[1,"remote-adb-input-col","port-col"],["for","remote-adb-port",1,"remote-adb-label"],["id","remote-adb-port","type","text","inputmode","numeric","placeholder","5038","autocomplete","off","spellcheck","false",1,"remote-adb-input",3,"ngModelChange","ngModel"],[1,"remote-adb-btn-col"],["type","button",1,"btn-remote-adb-connect",3,"click","disabled"],[1,"remember-remote-adb"],["type","checkbox",3,"ngModelChange","ngModel"],[1,"remote-adb-status-alert","success"],["role","alert",1,"remote-adb-status-alert","error"],[1,"remote-device-results"],["type","button",1,"btn-remote-adb-connect","btn-use-tested-endpoint",3,"disabled"],[1,"remote-adb-explanation"],[1,"remote-device-row"],[1,"remote-device-copy"],[1,"remote-device-state"],["type","button",1,"btn-remote-adb-connect","btn-use-tested-endpoint",3,"click","disabled"],[1,"device-locked-card"],[1,"material-symbols-outlined","alert-icon"],[1,"locked-details"],[1,"locked-title"],[1,"locked-desc"],["type","button",1,"btn-check-unlock",3,"click","disabled"],[1,"multi-device-switcher",2,"margin-top","12px"],[1,"unauthorized-card"],[1,"unauth-details"],[1,"unauth-title"],[1,"unauth-desc"],["type","button",1,"btn-retry-auth",3,"click"],[1,"error-msg-box"],[1,"material-symbols-outlined","err-icon"],[1,"install-commands-row"],[1,"install-card"],[1,"install-os"],[1,"detected-badge"],[1,"ready-banner-left"],[1,"step-badge","step-pass"],[1,"ready-text-group"],[1,"ready-title"],[1,"ready-desc"],["type","button",1,"btn-proceed-launch",3,"click"],[1,"material-symbols-outlined","rocket-icon"],[1,"launcher-warning-bar"],[1,"composer-card"],[1,"intent-suggestion-strip"],[1,"composer-input-area"],["id","task-input-field","rows","3","placeholder","\u63CF\u8FF0\u4F60\u5E0C\u671B\u5728\u624B\u673A\u4E0A\u5B8C\u6210\u7684\u4EFB\u52A1\uFF0C\u4F8B\u5982\uFF1A\u6253\u5F00 Gmail \u5E76\u67E5\u627E\u6700\u65B0\u90AE\u4EF6\u2026",1,"composer-textarea",3,"ngModelChange","keydown.control.enter","keydown.meta.enter","ngModel","disabled"],[1,"composer-model-descriptor"],[1,"descriptor-icon-wrap"],[1,"descriptor-body"],[1,"desc-line"],[1,"error-banner"],[1,"composer-action-bar"],[1,"bar-left"],[1,"model-toggle-capsule"],["type","button","title","Flash\uFF1A\u5FEB\u901F\u6267\u884C\u65E5\u5E38\u5E94\u7528\u4EFB\u52A1\uFF08\u6BCF\u6B65 3\u20135 \u79D2\uFF09",1,"model-toggle-btn","btn-flash",3,"click"],[1,"material-symbols-outlined","btn-icon"],[1,"btn-text"],["type","button","title","Pro\uFF1A\u5148\u89C4\u5212\u3001\u68C0\u67E5\u7ED3\u679C\u5E76\u6062\u590D\u53D7\u963B\u6B65\u9AA4\uFF0C\u9002\u5408\u957F\u6D41\u7A0B\u6216\u590D\u6742\u4EFB\u52A1\uFF08\u6BCF\u6B65 15\u201340 \u79D2\uFF09",1,"model-toggle-btn","btn-pro",3,"click"],[1,"bar-right"],[1,"char-count"],["type","button",1,"btn-run-composer",3,"click","disabled","title"],[1,"smart-suggestions-container"],[1,"suggestions-header-bar"],[1,"header-left"],[1,"section-label"],[1,"material-symbols-outlined","section-icon"],[1,"label-text"],[1,"category-tabs-group"],["type","button",1,"cat-tab-btn",3,"click"],["type","button",1,"cat-tab-btn","cat-flash",3,"click"],[1,"material-symbols-outlined","tab-mini-icon"],["type","button",1,"cat-tab-btn","cat-pro",3,"click"],[1,"header-right"],["type","button","title","\u67E5\u770B\u66F4\u591A\u4EFB\u52A1",1,"btn-shuffle-suggestions",3,"click"],[1,"material-symbols-outlined","shuffle-icon"],[1,"suggestions-cards-grid"],[1,"suggestion-card",3,"is-pro-card","is-flash-card"],[1,"launcher-warning-bar",3,"click"],[1,"material-symbols-outlined","warn-icon"],[1,"material-symbols-outlined","arrow"],[1,"suggestion-left"],[1,"material-symbols-outlined","sparkle-icon"],[1,"suggestion-text"],["type","button",1,"btn-switch-pro",3,"click"],[1,"material-symbols-outlined","btn-arrow"],[1,"mode-name"],[1,"bullet"],[1,"limitation-tag"],[1,"material-symbols-outlined","error-icon"],[1,"spinner"],[1,"material-symbols-outlined","run-icon"],[1,"pro-outputter-standalone-card"],[1,"outputter-card-header"],[1,"outputter-title"],[1,"outputter-optional-tag"],[1,"outputter-input-wrapper"],["type","text","placeholder","Specify expected output or schema (e.g. 'Extract SMS verification code as JSON' or 'Summary of discounts and total price')...","spellcheck","false",1,"outputter-standalone-input",3,"ngModelChange","ngModel"],["type","button","title","\u6E05\u7A7A\u9884\u671F\u8F93\u51FA",1,"btn-clear-standalone"],[1,"pro-tuning-card"],[1,"tuning-card-header"],[1,"tuning-title"],["type","button","title","\u6062\u590D\u9ED8\u8BA4\u8BBE\u7F6E",1,"btn-tuning-reset"],[1,"tuning-sliders"],[1,"tuning-slider",3,"verify","explore","dragging","--%NS%pct"],["type","button","title","\u6E05\u7A7A\u9884\u671F\u8F93\u51FA",1,"btn-clear-standalone",3,"click"],["type","button","title","\u6062\u590D\u9ED8\u8BA4\u8BBE\u7F6E",1,"btn-tuning-reset",3,"click"],[1,"tuning-slider"],[1,"slider-head"],[1,"slider-name"],[1,"slider-value"],["aria-hidden","true",1,"slider-ends"],[1,"slider-track-wrap",3,"pointerenter","pointerleave"],["aria-hidden","true",1,"slider-rail"],[1,"slider-fill"],[1,"slider-notch",3,"reached","--%NS%n"],["aria-hidden","true",1,"slider-thumb"],["aria-hidden","true",1,"thumb-ripple"],["type","range","min","0","step","1",1,"slider-input",3,"input","focus","blur","max","value"],[1,"slider-notch"],[1,"slider-solid"],["width","100%","height","6","aria-hidden","true",1,"slider-dither"],["width","2","height","2",3,"opacity","animation-delay"],["width","2","height","2"],["aria-hidden","true",1,"tuning-tip-arrow"],["role","tooltip",1,"tuning-tip"],[1,"tip-heading"],[1,"tip-title"],[1,"tip-latency"],[1,"tip-tagline"],[1,"tip-section"],[1,"tip-section-title"],[1,"tip-section","skips"],[1,"tip-best"],[1,"suggestion-card",3,"click"],[1,"card-top-row"],[1,"app-icons-cluster"],[1,"app-icon-badge",3,"title"],[1,"app-names-label"],[1,"mode-badge",3,"title"],[1,"card-body"],[1,"card-title"],[1,"card-desc"],[1,"card-footer-row"],[1,"tag-pill"],[1,"use-prompt-action"],[1,"material-symbols-outlined","action-arrow"]],template:function(e,o){e&1&&(l(0,"div",0)(1,"div",1),z(2,"div",2)(3,"div",3)(4,"div",4)(5,"div",5)(6,"div",6)(7,"div",7),d(),l(8,"main",8)(9,"section",9)(10,"h1",10),g(11," \u4F60\u60F3\u5728\u624B\u673A\u4E0A\u5B8C\u6210\u4EC0\u4E48\u4EFB\u52A1\uFF1F "),d()(),l(12,"div",11)(13,"div",12)(14,"button",13),I("click",function(){return o.setTab("diagnostics")}),M(15,lA,2,0,"span",14)(16,dA,2,0,"span",15),l(17,"span",16),g(18,"\u7CFB\u7EDF\u8BBE\u7F6E\u4E0E\u8FD0\u884C\u51C6\u5907"),d()(),l(19,"button",13),I("click",function(){return o.setTab("launcher")}),M(20,uA,2,0,"span",17)(21,gA,2,0,"span",15),l(22,"span",16),g(23,"\u542F\u52A8\u81EA\u52A8\u5316\u4EFB\u52A1"),d()()()(),M(24,N5,115,78,"section",18),M(25,rR,74,32,"section",19),d()()),e&2&&(E("system-ready",o.isReady())("system-pending",!o.isReady())("pro-theme-active",o.selectedProfile()==="pro"),p(14),E("active",o.activeTab()==="diagnostics"),p(),b(o.isReady()?15:16),p(4),E("active",o.activeTab()==="launcher"),p(),b(o.isReady()?21:20),p(4),b(o.activeTab()==="diagnostics"?24:-1),p(),b(o.activeTab()==="launcher"?25:-1))},dependencies:[Et,oi,Hs,ii,Eo,Cu,hu],styles:['@charset "UTF-8";.os-selector-pills[_ngcontent-%COMP%]{display:inline-flex;align-items:center;padding:2px;gap:2px;background:#ffffffa6;border:1px solid rgba(226,232,240,.85);border-radius:8px;box-shadow:0 1px 3px #0f172a0a,inset 0 1px 1px #fffc;backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%)}.os-selector-pills[_ngcontent-%COMP%] .os-pill[_ngcontent-%COMP%]{padding:3px 9px;border:0;border-radius:6px;background:transparent;color:#475569;font-family:inherit;font-size:11px;font-weight:600;line-height:1.35;cursor:pointer;transition:color .15s ease,background-color .15s ease,box-shadow .15s ease}.os-selector-pills[_ngcontent-%COMP%] .os-pill[_ngcontent-%COMP%]:hover{color:#0f172a;background:#ffffffb8}.os-selector-pills[_ngcontent-%COMP%] .os-pill.active[_ngcontent-%COMP%]{color:#fff;background:#1a73e8;box-shadow:0 1px 2px #0f172a1f}.os-selector-pills[_ngcontent-%COMP%] .os-pill[_ngcontent-%COMP%]:focus-visible{outline:2px solid rgba(26,115,232,.35);outline-offset:1px}[_nghost-%COMP%]{display:block;min-height:100vh;width:100%;background-color:#f8f9fa;font-family:Google Sans Text,Google Sans,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:#0f172a;box-sizing:border-box;-webkit-font-smoothing:antialiased}*[_ngcontent-%COMP%], *[_ngcontent-%COMP%]:before, *[_ngcontent-%COMP%]:after{box-sizing:border-box}.home-container[_ngcontent-%COMP%]{position:relative;min-height:100vh;display:flex;flex-direction:column;background-color:#f8f9fa;overflow-x:hidden}.home-container[_ngcontent-%COMP%] .aurora-background[_ngcontent-%COMP%]{display:block;position:fixed;top:0;left:0;width:100vw;height:100vh;pointer-events:none;z-index:1;overflow:hidden;opacity:.9;transition:opacity .8s ease}.home-container[_ngcontent-%COMP%] .aurora-background[_ngcontent-%COMP%] .glow[_ngcontent-%COMP%]{position:absolute;border-radius:50%;transform:translateZ(0);will-change:transform,opacity;pointer-events:none}.home-container[_ngcontent-%COMP%] .aurora-background[_ngcontent-%COMP%] .glow-1[_ngcontent-%COMP%]{top:-140px;left:10%;width:520px;height:520px;background:radial-gradient(circle,rgba(59,130,246,.12) 0%,rgba(99,102,241,.04) 45%,transparent 82%);animation:_ngcontent-%COMP%_floatGlow1 22s ease-in-out infinite alternate}.home-container[_ngcontent-%COMP%] .aurora-background[_ngcontent-%COMP%] .glow-2[_ngcontent-%COMP%]{top:-100px;right:12%;width:560px;height:560px;background:radial-gradient(circle,rgba(147,51,234,.08) 0%,rgba(219,39,119,.03) 45%,transparent 82%);animation:_ngcontent-%COMP%_floatGlow2 26s ease-in-out infinite alternate}.home-container[_ngcontent-%COMP%] .aurora-background[_ngcontent-%COMP%] .glow-3[_ngcontent-%COMP%]{top:280px;left:30%;width:460px;height:460px;background:radial-gradient(circle,rgba(6,182,212,.08) 0%,rgba(59,130,246,.03) 45%,transparent 82%);animation:_ngcontent-%COMP%_floatGlow3 20s ease-in-out infinite alternate}.home-container[_ngcontent-%COMP%] .aurora-background[_ngcontent-%COMP%] .glow-pending[_ngcontent-%COMP%]{top:-120px;left:15%;right:15%;margin:0 auto;width:720px;height:520px;background:radial-gradient(circle,rgba(245,158,11,.09) 0%,rgba(217,119,6,.035) 38%,transparent 82%);opacity:0;transition:opacity .8s cubic-bezier(.4,0,.2,1);animation:_ngcontent-%COMP%_readyPulseGlow 9s ease-in-out infinite alternate;pointer-events:none}.home-container[_ngcontent-%COMP%] .aurora-background[_ngcontent-%COMP%] .glow-ready[_ngcontent-%COMP%]{top:-120px;left:15%;right:15%;margin:0 auto;width:700px;height:520px;background:radial-gradient(circle,rgba(16,185,129,.14) 0%,rgba(6,182,212,.08) 38%,transparent 82%);opacity:0;transition:opacity 1s cubic-bezier(.4,0,.2,1);animation:_ngcontent-%COMP%_readyPulseGlow 7s ease-in-out infinite alternate;pointer-events:none}.home-container[_ngcontent-%COMP%] .aurora-background[_ngcontent-%COMP%] .glow-pro[_ngcontent-%COMP%]{top:-100px;left:20%;right:20%;margin:0 auto;width:680px;height:520px;background:radial-gradient(circle,rgba(99,102,241,.18) 0%,rgba(147,51,234,.08) 38%,transparent 82%);opacity:0;transition:opacity .8s cubic-bezier(.4,0,.2,1);pointer-events:none}.home-container.system-pending[_ngcontent-%COMP%] .aurora-background[_ngcontent-%COMP%] .glow-pending[_ngcontent-%COMP%]{opacity:1}.home-container.system-pending[_ngcontent-%COMP%] .aurora-background[_ngcontent-%COMP%] .glow-1[_ngcontent-%COMP%]{background:radial-gradient(circle,rgba(245,158,11,.07) 0%,rgba(99,102,241,.03) 55%,transparent 75%)}.home-container.system-ready[_ngcontent-%COMP%] .aurora-background[_ngcontent-%COMP%] .glow-pending[_ngcontent-%COMP%]{opacity:0}.home-container.system-ready[_ngcontent-%COMP%] .aurora-background[_ngcontent-%COMP%] .glow-ready[_ngcontent-%COMP%]{opacity:1}.home-container.system-ready[_ngcontent-%COMP%] .aurora-background[_ngcontent-%COMP%] .glow-1[_ngcontent-%COMP%]{background:radial-gradient(circle,rgba(16,185,129,.1) 0%,rgba(59,130,246,.05) 55%,transparent 75%)}.home-container.pro-theme-active[_ngcontent-%COMP%] .aurora-background[_ngcontent-%COMP%] .glow-pro[_ngcontent-%COMP%]{opacity:1}.home-container.pro-theme-active[_ngcontent-%COMP%] .aurora-background[_ngcontent-%COMP%] .glow-ready[_ngcontent-%COMP%]{opacity:.35}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%]{position:relative;z-index:5;max-width:960px;width:100%;margin:0 auto;padding:36px 24px 60px;display:flex;flex-direction:column;gap:18px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .hero-section[_ngcontent-%COMP%]{text-align:center;padding:16px 0 6px;margin:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .hero-section[_ngcontent-%COMP%] .hero-title[_ngcontent-%COMP%]{font-family:Outfit,Google Sans,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:32px;font-weight:600;letter-spacing:-.035em;line-height:1.2;color:#0f172a;margin:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .hero-section[_ngcontent-%COMP%] .hero-subtitle[_ngcontent-%COMP%]{font-size:14.5px;color:#64748b;font-weight:400;margin:8px 0 0;letter-spacing:-.01em}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .mode-tabs-container[_ngcontent-%COMP%]{display:flex;justify-content:center;margin-bottom:6px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .mode-tabs-container[_ngcontent-%COMP%] .mode-tabs[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr;width:100%;max-width:520px;box-sizing:border-box;background:#ffffffb8;backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);padding:3px;border-radius:9999px;border:1px solid rgba(226,232,240,.85);gap:3px;box-shadow:0 2px 8px -1px #0f172a0f,0 1px 2px #00000005,inset 0 1px 1px #ffffffe6;-webkit-user-select:none;user-select:none;font-family:Google Sans,Google Sans Text,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;transition:background .25s cubic-bezier(.4,0,.2,1),box-shadow .25s cubic-bezier(.4,0,.2,1),border-color .25s cubic-bezier(.4,0,.2,1)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .mode-tabs-container[_ngcontent-%COMP%] .mode-tabs[_ngcontent-%COMP%]:hover{background:#ffffffd9;box-shadow:0 4px 14px -2px #0f172a14,0 2px 4px #00000005,inset 0 1px 1px #fff;border-color:#cbd5e1e6}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .mode-tabs-container[_ngcontent-%COMP%] .mode-tabs[_ngcontent-%COMP%] .mode-tab-btn[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:32px;padding:0 14px;box-sizing:border-box;border:none;background:transparent;border-radius:9999px;cursor:pointer;font-family:inherit;font-size:13px;font-weight:600;color:#475569;line-height:1;transition:all .2s cubic-bezier(.4,0,.2,1);outline:none;white-space:nowrap;min-width:0}@media(max-width:560px){.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .mode-tabs-container[_ngcontent-%COMP%] .mode-tabs[_ngcontent-%COMP%] .mode-tab-btn[_ngcontent-%COMP%]{white-space:normal;height:auto;min-height:32px;padding:6px 10px;gap:5px;font-size:12px;line-height:1.2;text-align:center}}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .mode-tabs-container[_ngcontent-%COMP%] .mode-tabs[_ngcontent-%COMP%] .mode-tab-btn[_ngcontent-%COMP%] .tab-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;color:#64748b;flex-shrink:0;transition:color .15s ease,transform .15s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .mode-tabs-container[_ngcontent-%COMP%] .mode-tabs[_ngcontent-%COMP%] .mode-tab-btn[_ngcontent-%COMP%] .tab-icon.icon-ready[_ngcontent-%COMP%]{color:#059669}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .mode-tabs-container[_ngcontent-%COMP%] .mode-tabs[_ngcontent-%COMP%] .mode-tab-btn[_ngcontent-%COMP%] .tab-icon.icon-locked[_ngcontent-%COMP%]{color:#94a3b8;font-size:15px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .mode-tabs-container[_ngcontent-%COMP%] .mode-tabs[_ngcontent-%COMP%] .mode-tab-btn[_ngcontent-%COMP%] .tab-label[_ngcontent-%COMP%]{color:#475569;min-width:0;transition:color .15s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .mode-tabs-container[_ngcontent-%COMP%] .mode-tabs[_ngcontent-%COMP%] .mode-tab-btn[_ngcontent-%COMP%]:hover:not(.active){background:#ffffffb3;color:#0f172a}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .mode-tabs-container[_ngcontent-%COMP%] .mode-tabs[_ngcontent-%COMP%] .mode-tab-btn[_ngcontent-%COMP%]:hover:not(.active) .tab-icon[_ngcontent-%COMP%]{color:#1e293b}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .mode-tabs-container[_ngcontent-%COMP%] .mode-tabs[_ngcontent-%COMP%] .mode-tab-btn[_ngcontent-%COMP%]:hover:not(.active) .tab-icon.icon-ready[_ngcontent-%COMP%]{color:#059669}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .mode-tabs-container[_ngcontent-%COMP%] .mode-tabs[_ngcontent-%COMP%] .mode-tab-btn[_ngcontent-%COMP%]:hover:not(.active) .tab-label[_ngcontent-%COMP%]{color:#0f172a}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .mode-tabs-container[_ngcontent-%COMP%] .mode-tabs[_ngcontent-%COMP%] .mode-tab-btn.active[_ngcontent-%COMP%]{background:#fff!important;color:#0f172a!important;font-weight:700;box-shadow:0 2px 8px -1px #0f172a14,0 1px 2px #0000000a,inset 0 1px #fff}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .mode-tabs-container[_ngcontent-%COMP%] .mode-tabs[_ngcontent-%COMP%] .mode-tab-btn.active[_ngcontent-%COMP%] .tab-icon[_ngcontent-%COMP%]{color:#1a73e8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .mode-tabs-container[_ngcontent-%COMP%] .mode-tabs[_ngcontent-%COMP%] .mode-tab-btn.active[_ngcontent-%COMP%] .tab-icon.icon-ready[_ngcontent-%COMP%]{color:#059669}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .mode-tabs-container[_ngcontent-%COMP%] .mode-tabs[_ngcontent-%COMP%] .mode-tab-btn.active[_ngcontent-%COMP%] .tab-label[_ngcontent-%COMP%]{color:#0f172a!important}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .mode-tabs-container[_ngcontent-%COMP%] .mode-tabs[_ngcontent-%COMP%] .mode-tab-btn[_ngcontent-%COMP%]:active{transform:scale(.98)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:16px;animation:_ngcontent-%COMP%_fadeIn .2s ease-out}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%]{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 1px 3px #00000008,0 4px 12px #00000005;overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%]:hover{border-color:#cbd5e1}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 20px;border-bottom:1px solid #f1f5f9;background:#fff}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .step-badge[_ngcontent-%COMP%]{width:32px;height:32px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;font-size:13.5px;font-weight:700;background:#f1f5f9;color:#475569;flex-shrink:0;transition:all .2s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .step-badge[_ngcontent-%COMP%] span[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .step-badge[_ngcontent-%COMP%] .step-check-icon[_ngcontent-%COMP%]{font-size:18px;font-weight:700;color:inherit}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .step-badge.step-pass[_ngcontent-%COMP%]{background:#ecfdf5;color:#059669}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .step-info[_ngcontent-%COMP%]{flex:1;min-width:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .step-info[_ngcontent-%COMP%] .step-title-row[_ngcontent-%COMP%]{display:flex;align-items:center;gap:10px;margin-bottom:2px;flex-wrap:wrap}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .step-info[_ngcontent-%COMP%] .step-title-row[_ngcontent-%COMP%] .step-title[_ngcontent-%COMP%]{margin:0;font-size:15px;font-weight:600;color:#0f172a}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .step-info[_ngcontent-%COMP%] .step-title-row[_ngcontent-%COMP%] .status-pill[_ngcontent-%COMP%]{font-size:11px;font-weight:600;padding:2px 8px;border-radius:12px;line-height:1.3;height:22px;display:inline-flex;align-items:center}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .step-info[_ngcontent-%COMP%] .step-title-row[_ngcontent-%COMP%] .status-pill.pill-pass[_ngcontent-%COMP%]{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .step-info[_ngcontent-%COMP%] .step-title-row[_ngcontent-%COMP%] .status-pill.pill-warn[_ngcontent-%COMP%]{background:#fffbeb;color:#b45309;border:1px solid #fde68a}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .step-info[_ngcontent-%COMP%] .step-title-row[_ngcontent-%COMP%] .status-pill.pill-fail[_ngcontent-%COMP%]{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .step-info[_ngcontent-%COMP%] .step-desc[_ngcontent-%COMP%]{margin:0;font-size:12.5px;color:#475569;line-height:1.4}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .btn-restart-adb[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .btn-header-action[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:5px;padding:0 13px;height:32px;background:#ffffffb8;backdrop-filter:blur(10px) saturate(180%);-webkit-backdrop-filter:blur(10px) saturate(180%);border:1px solid rgba(226,232,240,.88);box-shadow:0 2px 8px -1px #0f172a0d,inset 0 1px 1px #fffffff2;color:#475569;transition:background .2s cubic-bezier(.4,0,.2,1),border-color .2s cubic-bezier(.4,0,.2,1),color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1),opacity .2s cubic-bezier(.4,0,.2,1)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .btn-restart-adb[_ngcontent-%COMP%]:hover:not(:disabled), .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .btn-header-action[_ngcontent-%COMP%]:hover:not(:disabled){background:#ffffffeb;border-color:#bfdbfef2;color:#1a73e8;box-shadow:0 4px 12px -2px #0f172a14,inset 0 1px 1px #fff;transform:translateY(-.5px)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .btn-restart-adb[_ngcontent-%COMP%]:hover:not(:disabled) .material-symbols-outlined[_ngcontent-%COMP%]:not(.feedback-done), .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .btn-header-action[_ngcontent-%COMP%]:hover:not(:disabled) .material-symbols-outlined[_ngcontent-%COMP%]:not(.feedback-done){color:#1a73e8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .btn-restart-adb[_ngcontent-%COMP%]:active:not(:disabled), .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .btn-header-action[_ngcontent-%COMP%]:active:not(:disabled){transform:scale(.97)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .btn-restart-adb[_ngcontent-%COMP%]:disabled, .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .btn-header-action[_ngcontent-%COMP%]:disabled{opacity:.55;cursor:not-allowed;transform:none}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .btn-restart-adb[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .btn-header-action[_ngcontent-%COMP%]{border-radius:8px;font-family:inherit;font-size:12px;font-weight:600;cursor:pointer;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .btn-restart-adb[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .btn-header-action[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:15px;color:#64748b;transition:transform .2s ease,color .15s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .btn-restart-adb[_ngcontent-%COMP%] .feedback-done[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .btn-header-action[_ngcontent-%COMP%] .feedback-done[_ngcontent-%COMP%]{color:#059669!important;font-size:16px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .btn-restart-adb[_ngcontent-%COMP%] .feedback-text[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .btn-header-action[_ngcontent-%COMP%] .feedback-text[_ngcontent-%COMP%]{color:#059669;font-weight:600}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .btn-restart-adb[_ngcontent-%COMP%] .spinning[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-header[_ngcontent-%COMP%] .btn-header-action[_ngcontent-%COMP%] .spinning[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_spin 1s linear infinite}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .guide-card[_ngcontent-%COMP%] .guide-card-body[_ngcontent-%COMP%]{padding:18px 20px;display:flex;flex-direction:column;gap:14px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .one-click-install-bar[_ngcontent-%COMP%]{background:#f0f9ff;border:1px solid #bae6fd;border-radius:10px;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:14px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .one-click-install-bar[_ngcontent-%COMP%] .install-bar-left[_ngcontent-%COMP%]{display:flex;align-items:center;gap:12px;min-width:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .one-click-install-bar[_ngcontent-%COMP%] .install-bar-left[_ngcontent-%COMP%] .install-bar-icon-box[_ngcontent-%COMP%]{width:32px;height:32px;border-radius:8px;background:#0284c7;color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .one-click-install-bar[_ngcontent-%COMP%] .install-bar-left[_ngcontent-%COMP%] .install-bar-icon-box[_ngcontent-%COMP%] .bolt-icon[_ngcontent-%COMP%]{font-size:18px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .one-click-install-bar[_ngcontent-%COMP%] .install-bar-left[_ngcontent-%COMP%] .install-bar-text[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:2px;min-width:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .one-click-install-bar[_ngcontent-%COMP%] .install-bar-left[_ngcontent-%COMP%] .install-bar-text[_ngcontent-%COMP%] .install-bar-title-row[_ngcontent-%COMP%]{display:flex;align-items:center;flex-wrap:wrap}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .one-click-install-bar[_ngcontent-%COMP%] .install-bar-left[_ngcontent-%COMP%] .install-bar-text[_ngcontent-%COMP%] .install-bar-title-row[_ngcontent-%COMP%] .install-bar-title[_ngcontent-%COMP%]{font-size:13px;font-weight:600;color:#0f172a}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .one-click-install-bar[_ngcontent-%COMP%] .install-bar-left[_ngcontent-%COMP%] .install-bar-text[_ngcontent-%COMP%] .install-bar-title-row[_ngcontent-%COMP%] .os-selector-pills[_ngcontent-%COMP%]{display:inline-flex;align-items:center;background:#ffffffa6;backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);border:1px solid rgba(226,232,240,.85);border-radius:8px;padding:2px;gap:2px;box-shadow:0 1px 3px #0f172a0a,inset 0 1px 1px #fffc}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .one-click-install-bar[_ngcontent-%COMP%] .install-bar-left[_ngcontent-%COMP%] .install-bar-text[_ngcontent-%COMP%] .install-bar-title-row[_ngcontent-%COMP%] .os-selector-pills[_ngcontent-%COMP%] .os-pill[_ngcontent-%COMP%]{border:none;background:transparent;font-size:11px;font-weight:600;color:#475569;padding:3px 9px;border-radius:6px;cursor:pointer;transition:all .15s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .one-click-install-bar[_ngcontent-%COMP%] .install-bar-left[_ngcontent-%COMP%] .install-bar-text[_ngcontent-%COMP%] .install-bar-title-row[_ngcontent-%COMP%] .os-selector-pills[_ngcontent-%COMP%] .os-pill[_ngcontent-%COMP%]:hover{color:#0f172a;background:#ffffff80}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .one-click-install-bar[_ngcontent-%COMP%] .install-bar-left[_ngcontent-%COMP%] .install-bar-text[_ngcontent-%COMP%] .install-bar-title-row[_ngcontent-%COMP%] .os-selector-pills[_ngcontent-%COMP%] .os-pill.active[_ngcontent-%COMP%]{background:#1a73e8eb;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#fff!important;box-shadow:0 2px 6px #1a73e84d,inset 0 1px 1px #ffffff59}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .one-click-install-bar[_ngcontent-%COMP%] .install-bar-left[_ngcontent-%COMP%] .install-bar-text[_ngcontent-%COMP%] .install-bar-desc[_ngcontent-%COMP%]{font-size:12px;color:#475569;line-height:1.4;margin-top:2px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .one-click-install-bar[_ngcontent-%COMP%] .code-box[_ngcontent-%COMP%]{margin:0;flex-shrink:0}@media(max-width:860px){.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .one-click-install-bar[_ngcontent-%COMP%]{flex-direction:column;align-items:stretch}}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .env-matrix-grid[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}@media(max-width:640px){.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .env-matrix-grid[_ngcontent-%COMP%]{grid-template-columns:1fr}}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .env-matrix-grid[_ngcontent-%COMP%] .env-item-card[_ngcontent-%COMP%]{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;justify-content:center;gap:8px;transition:border-color .18s ease,box-shadow .18s ease;min-width:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .env-matrix-grid[_ngcontent-%COMP%] .env-item-card[_ngcontent-%COMP%]:hover{border-color:#cbd5e1}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .env-matrix-grid[_ngcontent-%COMP%] .env-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%]{display:flex;align-items:center;gap:10px;min-width:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .env-matrix-grid[_ngcontent-%COMP%] .env-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .item-icon-box[_ngcontent-%COMP%]{width:32px;height:32px;border-radius:8px;background:#f8fafc;border:1px solid #e2e8f0;color:#475569;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .env-matrix-grid[_ngcontent-%COMP%] .env-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .item-icon-box[_ngcontent-%COMP%] .item-icon[_ngcontent-%COMP%]{font-size:17px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .env-matrix-grid[_ngcontent-%COMP%] .env-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .item-title-group[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1px;flex:1;min-width:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .env-matrix-grid[_ngcontent-%COMP%] .env-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .item-title-group[_ngcontent-%COMP%] .item-name[_ngcontent-%COMP%]{font-size:13px;font-weight:600;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .env-matrix-grid[_ngcontent-%COMP%] .env-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .item-title-group[_ngcontent-%COMP%] .item-subtitle[_ngcontent-%COMP%]{font-size:11.5px;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .env-matrix-grid[_ngcontent-%COMP%] .env-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .item-status[_ngcontent-%COMP%]{display:flex;align-items:center;margin-left:auto;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .env-matrix-grid[_ngcontent-%COMP%] .env-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .item-status[_ngcontent-%COMP%] .status-dot[_ngcontent-%COMP%]{width:7px;height:7px;border-radius:50%}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .env-matrix-grid[_ngcontent-%COMP%] .env-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .item-status[_ngcontent-%COMP%] .status-dot.dot-pass[_ngcontent-%COMP%]{background:#10b981}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .env-matrix-grid[_ngcontent-%COMP%] .env-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .item-status[_ngcontent-%COMP%] .status-dot.dot-fail[_ngcontent-%COMP%]{background:#ef4444}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .env-matrix-grid[_ngcontent-%COMP%] .env-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .item-status[_ngcontent-%COMP%] .status-dot.dot-warn[_ngcontent-%COMP%]{background:#f59e0b}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .env-matrix-grid[_ngcontent-%COMP%] .env-item-card[_ngcontent-%COMP%] .item-body[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .env-matrix-grid[_ngcontent-%COMP%] .env-item-card[_ngcontent-%COMP%] .item-body[_ngcontent-%COMP%] .item-action-box[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:4px;min-width:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .env-matrix-grid[_ngcontent-%COMP%] .env-item-card.item-fail[_ngcontent-%COMP%]{background:#fff8f8;border-color:#fecaca}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .env-matrix-grid[_ngcontent-%COMP%] .env-item-card.item-fail[_ngcontent-%COMP%] .item-icon-box[_ngcontent-%COMP%]{background:#fef2f2;color:#dc2626;border-color:#fecaca}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .model-choice-cards-row[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .model-choice-cards-row[_ngcontent-%COMP%] .choice-card[_ngcontent-%COMP%]{border:1px solid #e2e8f0;border-radius:10px;padding:14px 16px;background:#f8fafc;cursor:pointer;transition:all .18s ease;-webkit-user-select:none;user-select:none}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .model-choice-cards-row[_ngcontent-%COMP%] .choice-card[_ngcontent-%COMP%] .choice-card-top[_ngcontent-%COMP%]{display:flex;align-items:flex-start;gap:12px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .model-choice-cards-row[_ngcontent-%COMP%] .choice-card[_ngcontent-%COMP%] .choice-card-top[_ngcontent-%COMP%] .choice-radio[_ngcontent-%COMP%]{margin-top:2px;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .model-choice-cards-row[_ngcontent-%COMP%] .choice-card[_ngcontent-%COMP%] .choice-card-top[_ngcontent-%COMP%] .choice-radio[_ngcontent-%COMP%] .radio-dot[_ngcontent-%COMP%]{display:block;width:16px;height:16px;border-radius:50%;border:1.5px solid #cbd5e1;background:#fff;transition:all .15s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .model-choice-cards-row[_ngcontent-%COMP%] .choice-card[_ngcontent-%COMP%] .choice-card-top[_ngcontent-%COMP%] .choice-radio[_ngcontent-%COMP%] .radio-dot.checked[_ngcontent-%COMP%]{border-color:#1a73e8;background:#1a73e8;box-shadow:inset 0 0 0 3px #fff}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .model-choice-cards-row[_ngcontent-%COMP%] .choice-card[_ngcontent-%COMP%] .choice-card-top[_ngcontent-%COMP%] .choice-icon-wrap[_ngcontent-%COMP%]{width:34px;height:34px;border-radius:8px;background:#fff;border:1px solid #e2e8f0;display:flex;align-items:center;justify-content:center;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .model-choice-cards-row[_ngcontent-%COMP%] .choice-card[_ngcontent-%COMP%] .choice-card-top[_ngcontent-%COMP%] .choice-icon-wrap[_ngcontent-%COMP%] .brand-svg[_ngcontent-%COMP%]{width:18px;height:18px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .model-choice-cards-row[_ngcontent-%COMP%] .choice-card[_ngcontent-%COMP%] .choice-card-top[_ngcontent-%COMP%] .choice-icon-wrap.icon-gear[_ngcontent-%COMP%]{color:#475569}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .model-choice-cards-row[_ngcontent-%COMP%] .choice-card[_ngcontent-%COMP%] .choice-card-top[_ngcontent-%COMP%] .choice-icon-wrap.icon-gear[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:18px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .model-choice-cards-row[_ngcontent-%COMP%] .choice-card[_ngcontent-%COMP%] .choice-card-top[_ngcontent-%COMP%] .choice-text[_ngcontent-%COMP%]{flex:1;min-width:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .model-choice-cards-row[_ngcontent-%COMP%] .choice-card[_ngcontent-%COMP%] .choice-card-top[_ngcontent-%COMP%] .choice-text[_ngcontent-%COMP%] .choice-title-row[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .model-choice-cards-row[_ngcontent-%COMP%] .choice-card[_ngcontent-%COMP%] .choice-card-top[_ngcontent-%COMP%] .choice-text[_ngcontent-%COMP%] .choice-title-row[_ngcontent-%COMP%] .choice-title[_ngcontent-%COMP%]{font-size:13.5px;font-weight:600;color:#0f172a}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .model-choice-cards-row[_ngcontent-%COMP%] .choice-card[_ngcontent-%COMP%] .choice-card-top[_ngcontent-%COMP%] .choice-text[_ngcontent-%COMP%] .choice-title-row[_ngcontent-%COMP%] .tag-badge[_ngcontent-%COMP%]{font-size:10.5px;font-weight:600;padding:1px 7px;border-radius:10px;line-height:1.3}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .model-choice-cards-row[_ngcontent-%COMP%] .choice-card[_ngcontent-%COMP%] .choice-card-top[_ngcontent-%COMP%] .choice-text[_ngcontent-%COMP%] .choice-title-row[_ngcontent-%COMP%] .tag-badge.tag-rec[_ngcontent-%COMP%]{background:#eff6ff;color:#1a73e8;border:1px solid #bfdbfe}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .model-choice-cards-row[_ngcontent-%COMP%] .choice-card[_ngcontent-%COMP%] .choice-card-top[_ngcontent-%COMP%] .choice-text[_ngcontent-%COMP%] .choice-title-row[_ngcontent-%COMP%] .tag-badge.tag-ready[_ngcontent-%COMP%]{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .model-choice-cards-row[_ngcontent-%COMP%] .choice-card[_ngcontent-%COMP%] .choice-card-top[_ngcontent-%COMP%] .choice-text[_ngcontent-%COMP%] .choice-desc[_ngcontent-%COMP%]{margin:3px 0 0;font-size:12px;color:#475569;line-height:1.4}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .model-choice-cards-row[_ngcontent-%COMP%] .choice-card[_ngcontent-%COMP%] .choice-card-top[_ngcontent-%COMP%] .choice-text[_ngcontent-%COMP%] .choice-desc[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{font-family:JetBrains Mono,Fira Code,Roboto Mono,SFMono-Regular,Consolas,monospace;background:#fff;border:1px solid #e2e8f0;padding:1px 4px;border-radius:4px;color:#1557b0;font-size:11px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .model-choice-cards-row[_ngcontent-%COMP%] .choice-card[_ngcontent-%COMP%]:hover:not(.selected){border-color:#cbd5e1;background:#fff}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .model-choice-cards-row[_ngcontent-%COMP%] .choice-card.selected[_ngcontent-%COMP%]{border-color:#1a73e8;background:#fff;box-shadow:0 0 0 1px #1a73e8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .model-choice-cards-row[_ngcontent-%COMP%] .choice-card.selected[_ngcontent-%COMP%] .choice-icon-wrap[_ngcontent-%COMP%]{border-color:#bfdbfe}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .model-choice-cards-row[_ngcontent-%COMP%] .choice-card.selected[_ngcontent-%COMP%] .choice-icon-wrap.icon-gear[_ngcontent-%COMP%]{color:#1a73e8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:14px 16px;display:flex;flex-direction:column;gap:10px;animation:_ngcontent-%COMP%_fadeIn .15s ease-out}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box.ocr-box[_ngcontent-%COMP%]{background:#fff;border:1px solid #e2e8f0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .input-box-header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .input-box-header[_ngcontent-%COMP%] .header-label[_ngcontent-%COMP%]{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:#0f172a}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .input-box-header[_ngcontent-%COMP%] .header-label[_ngcontent-%COMP%] .label-icon[_ngcontent-%COMP%]{font-size:16px;color:#1a73e8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .input-box-header[_ngcontent-%COMP%] .btn-header-link[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;font-weight:600;color:#1a73e8;text-decoration:none;padding:3px 10px;height:26px;background:#eff6ffbf;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(191,219,254,.85);border-radius:6px;box-shadow:0 1px 3px #2563eb0f,inset 0 1px 1px #fffc;transition:all .15s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .input-box-header[_ngcontent-%COMP%] .btn-header-link[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:13px;color:#1a73e8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .input-box-header[_ngcontent-%COMP%] .btn-header-link[_ngcontent-%COMP%]:hover{background:#dbeafee6;color:#1557b0;border-color:#1a73e8;box-shadow:0 2px 6px #2563eb26;transform:translateY(-.5px)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .unified-key-row[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .unified-key-row[_ngcontent-%COMP%] .unified-key-wrapper[_ngcontent-%COMP%]{flex:1 1 260px;min-width:0;display:flex;align-items:center;background:#ffffffbf;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid #e2e8f0;border-radius:8px;padding:0 10px;height:36px;transition:border-color .15s ease,box-shadow .15s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .unified-key-row[_ngcontent-%COMP%] .unified-key-wrapper[_ngcontent-%COMP%]:focus-within{border-color:#1a73e8;box-shadow:0 0 0 2px #1a73e81f}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .unified-key-row[_ngcontent-%COMP%] .unified-key-wrapper[_ngcontent-%COMP%] .key-prefix-icon[_ngcontent-%COMP%]{font-size:16px;color:#94a3b8;margin-right:6px;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .unified-key-row[_ngcontent-%COMP%] .unified-key-wrapper[_ngcontent-%COMP%] .unified-key-input[_ngcontent-%COMP%]{flex:1;min-width:0;border:none;outline:none;font-family:JetBrains Mono,Fira Code,Roboto Mono,SFMono-Regular,Consolas,monospace;font-size:12.5px;color:#0f172a;background:transparent;padding:4px 0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .unified-key-row[_ngcontent-%COMP%] .unified-key-wrapper[_ngcontent-%COMP%] .unified-key-input.is-masked[_ngcontent-%COMP%]{letter-spacing:2px;font-weight:700;font-size:13px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .unified-key-row[_ngcontent-%COMP%] .unified-key-wrapper[_ngcontent-%COMP%] .unified-key-input[_ngcontent-%COMP%]::placeholder{color:#94a3b8;font-family:Google Sans Text,Google Sans,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:12px;letter-spacing:normal;font-weight:400}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .unified-key-row[_ngcontent-%COMP%] .unified-key-wrapper[_ngcontent-%COMP%] .btn-icon-action[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;width:26px;height:26px;background:transparent;border:none;border-radius:4px;color:#64748b;cursor:pointer;transition:all .15s ease;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .unified-key-row[_ngcontent-%COMP%] .unified-key-wrapper[_ngcontent-%COMP%] .btn-icon-action[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:15px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .unified-key-row[_ngcontent-%COMP%] .unified-key-wrapper[_ngcontent-%COMP%] .btn-icon-action[_ngcontent-%COMP%] .text-emerald[_ngcontent-%COMP%]{color:#059669!important}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .unified-key-row[_ngcontent-%COMP%] .unified-key-wrapper[_ngcontent-%COMP%] .btn-icon-action[_ngcontent-%COMP%]:hover{background:#f1f5f9cc;color:#0f172a}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .unified-key-row[_ngcontent-%COMP%] .btn-unified-save[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:0 18px;height:36px;background:linear-gradient(135deg,#1a73e8eb,#2563ebd9);backdrop-filter:blur(10px) saturate(180%);-webkit-backdrop-filter:blur(10px) saturate(180%);border:1px solid rgba(255,255,255,.28);box-shadow:0 4px 14px #1a73e852,inset 0 1px 1px #ffffff73;color:#fff!important;transition:background .2s cubic-bezier(.4,0,.2,1),border-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1),opacity .2s cubic-bezier(.4,0,.2,1)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .unified-key-row[_ngcontent-%COMP%] .btn-unified-save[_ngcontent-%COMP%] span[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .unified-key-row[_ngcontent-%COMP%] .btn-unified-save[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .unified-key-row[_ngcontent-%COMP%] .btn-unified-save[_ngcontent-%COMP%] .run-icon[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .unified-key-row[_ngcontent-%COMP%] .btn-unified-save[_ngcontent-%COMP%] .action-icon[_ngcontent-%COMP%]{color:#fff!important}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .unified-key-row[_ngcontent-%COMP%] .btn-unified-save[_ngcontent-%COMP%]:hover:not(:disabled){background:linear-gradient(135deg,#1a73e8,#2563ebf2);box-shadow:0 6px 20px #1a73e86b,inset 0 1px 1px #fff9;transform:translateY(-1px)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .unified-key-row[_ngcontent-%COMP%] .btn-unified-save[_ngcontent-%COMP%]:active:not(:disabled){transform:scale(.97) translateY(0);box-shadow:0 2px 8px #1a73e859}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .unified-key-row[_ngcontent-%COMP%] .btn-unified-save[_ngcontent-%COMP%]:disabled{background:#94a3b880;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);box-shadow:none;opacity:.65;cursor:not-allowed;transform:none}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .unified-key-row[_ngcontent-%COMP%] .btn-unified-save[_ngcontent-%COMP%]{border-radius:8px;font-family:inherit;font-size:12.5px;font-weight:600;cursor:pointer;white-space:nowrap;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .unified-key-row[_ngcontent-%COMP%] .btn-unified-save[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:16px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .unified-key-row[_ngcontent-%COMP%] .btn-unified-save[_ngcontent-%COMP%] .spin[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_spin 1s linear infinite}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .unified-key-row[_ngcontent-%COMP%] .btn-unified-test[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:0 15px;height:36px;background:#eff6ffb3;backdrop-filter:blur(14px) saturate(180%);-webkit-backdrop-filter:blur(14px) saturate(180%);color:#1a73e8;border:1px solid rgba(191,219,254,.85);border-radius:8px;box-shadow:0 2px 6px -1px #2563eb14,inset 0 1px 1px #ffffffe6;font-family:inherit;font-size:12.5px;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);white-space:nowrap;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .unified-key-row[_ngcontent-%COMP%] .btn-unified-test[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:15px;color:#1a73e8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .unified-key-row[_ngcontent-%COMP%] .btn-unified-test[_ngcontent-%COMP%]:hover:not(:disabled){background:#dbeafee6;border-color:#1a73e8;color:#1557b0;box-shadow:0 4px 12px -2px #2563eb26,inset 0 1px 1px #fff;transform:translateY(-.5px)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .unified-key-row[_ngcontent-%COMP%] .btn-unified-test[_ngcontent-%COMP%]:active:not(:disabled){transform:scale(.97)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .unified-key-row[_ngcontent-%COMP%] .btn-unified-test[_ngcontent-%COMP%]:disabled{opacity:.55;cursor:not-allowed;transform:none}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .unified-key-row[_ngcontent-%COMP%] .btn-unified-test[_ngcontent-%COMP%] .spin[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_spin 1s linear infinite}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .feedback-msg[_ngcontent-%COMP%]{display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:6px;font-size:12px;font-weight:600}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .feedback-msg[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:15px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .feedback-msg.success[_ngcontent-%COMP%]{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .credentials-input-box[_ngcontent-%COMP%] .feedback-msg.error[_ngcontent-%COMP%]{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ocr-enhancement-card[_ngcontent-%COMP%]{background:#fff;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden;margin-top:2px;transition:border-color .18s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ocr-enhancement-card[_ngcontent-%COMP%] .ocr-card-toggle-bar[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ocr-enhancement-card[_ngcontent-%COMP%] .ocr-card-toggle-bar[_ngcontent-%COMP%]:hover{background:#f8fafc}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ocr-enhancement-card[_ngcontent-%COMP%] .ocr-card-toggle-bar[_ngcontent-%COMP%] .toggle-bar-left[_ngcontent-%COMP%]{display:flex;align-items:center;gap:10px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ocr-enhancement-card[_ngcontent-%COMP%] .ocr-card-toggle-bar[_ngcontent-%COMP%] .toggle-bar-left[_ngcontent-%COMP%] .icon-ocr[_ngcontent-%COMP%]{font-size:18px;color:#1a73e8;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ocr-enhancement-card[_ngcontent-%COMP%] .ocr-card-toggle-bar[_ngcontent-%COMP%] .toggle-bar-left[_ngcontent-%COMP%] .toggle-bar-titles[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ocr-enhancement-card[_ngcontent-%COMP%] .ocr-card-toggle-bar[_ngcontent-%COMP%] .toggle-bar-left[_ngcontent-%COMP%] .toggle-bar-titles[_ngcontent-%COMP%] .ocr-main-title[_ngcontent-%COMP%]{font-size:13px;font-weight:600;color:#0f172a}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ocr-enhancement-card[_ngcontent-%COMP%] .ocr-card-toggle-bar[_ngcontent-%COMP%] .toggle-bar-right[_ngcontent-%COMP%]{display:flex;align-items:center;gap:10px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ocr-enhancement-card[_ngcontent-%COMP%] .ocr-card-toggle-bar[_ngcontent-%COMP%] .toggle-bar-right[_ngcontent-%COMP%] .status-dot[_ngcontent-%COMP%]{width:7px;height:7px;border-radius:50%}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ocr-enhancement-card[_ngcontent-%COMP%] .ocr-card-toggle-bar[_ngcontent-%COMP%] .toggle-bar-right[_ngcontent-%COMP%] .status-dot.dot-pass[_ngcontent-%COMP%]{background:#10b981}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ocr-enhancement-card[_ngcontent-%COMP%] .ocr-card-toggle-bar[_ngcontent-%COMP%] .toggle-bar-right[_ngcontent-%COMP%] .caret-icon[_ngcontent-%COMP%]{font-size:18px;color:#64748b;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ocr-enhancement-card[_ngcontent-%COMP%] .ocr-content-body[_ngcontent-%COMP%]{padding:12px 14px;border-top:1px solid #f1f5f9;display:flex;flex-direction:column;gap:10px;background:#f8fafc;animation:_ngcontent-%COMP%_fadeIn .15s ease-out}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ocr-enhancement-card[_ngcontent-%COMP%] .ocr-content-body[_ngcontent-%COMP%] .ocr-help-desc[_ngcontent-%COMP%]{margin:0;font-size:12px;color:#475569;line-height:1.45}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ocr-enhancement-card[_ngcontent-%COMP%] .ocr-content-body[_ngcontent-%COMP%] .credentials-input-box.ocr-box[_ngcontent-%COMP%]{margin:0;padding:12px;background:#fff;border:1px solid #e2e8f0;border-radius:8px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:12px;animation:_ngcontent-%COMP%_fadeIn .15s ease-out}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%]{background:#fff;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .inspector-card-header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:10px 14px;background:#fff;border-bottom:1px solid #f1f5f9}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .inspector-card-header[_ngcontent-%COMP%] .inspector-header-left[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .inspector-card-header[_ngcontent-%COMP%] .inspector-header-left[_ngcontent-%COMP%] .header-icon[_ngcontent-%COMP%]{font-size:18px;color:#1a73e8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .inspector-card-header[_ngcontent-%COMP%] .inspector-header-left[_ngcontent-%COMP%] .inspector-header-titles[_ngcontent-%COMP%]{display:flex;flex-direction:column}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .inspector-card-header[_ngcontent-%COMP%] .inspector-header-left[_ngcontent-%COMP%] .inspector-header-titles[_ngcontent-%COMP%] .inspector-title[_ngcontent-%COMP%]{font-size:13px;font-weight:600;color:#0f172a}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .inspector-card-header[_ngcontent-%COMP%] .inspector-header-left[_ngcontent-%COMP%] .inspector-header-titles[_ngcontent-%COMP%] .inspector-subtitle[_ngcontent-%COMP%]{font-size:11.5px;color:#475569}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .inspector-card-header[_ngcontent-%COMP%] .inspector-header-left[_ngcontent-%COMP%] .inspector-header-titles[_ngcontent-%COMP%] .inspector-subtitle[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{font-family:JetBrains Mono,Fira Code,Roboto Mono,SFMono-Regular,Consolas,monospace;background:#f1f5f9;padding:1px 4px;border-radius:4px;color:#1557b0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .inspector-card-header[_ngcontent-%COMP%] .inspector-header-actions[_ngcontent-%COMP%]{display:flex;align-items:center;gap:6px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .inspector-card-header[_ngcontent-%COMP%] .btn-file-action[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:4px;padding:0 10px;height:28px;background:#ffffffb8;backdrop-filter:blur(10px) saturate(180%);-webkit-backdrop-filter:blur(10px) saturate(180%);border:1px solid rgba(226,232,240,.88);box-shadow:0 2px 8px -1px #0f172a0d,inset 0 1px 1px #fffffff2;color:#475569;transition:background .2s cubic-bezier(.4,0,.2,1),border-color .2s cubic-bezier(.4,0,.2,1),color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1),opacity .2s cubic-bezier(.4,0,.2,1)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .inspector-card-header[_ngcontent-%COMP%] .btn-file-action[_ngcontent-%COMP%]:hover:not(:disabled){background:#ffffffeb;border-color:#bfdbfef2;color:#1a73e8;box-shadow:0 4px 12px -2px #0f172a14,inset 0 1px 1px #fff;transform:translateY(-.5px)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .inspector-card-header[_ngcontent-%COMP%] .btn-file-action[_ngcontent-%COMP%]:hover:not(:disabled) .material-symbols-outlined[_ngcontent-%COMP%]:not(.feedback-done){color:#1a73e8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .inspector-card-header[_ngcontent-%COMP%] .btn-file-action[_ngcontent-%COMP%]:active:not(:disabled){transform:scale(.97)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .inspector-card-header[_ngcontent-%COMP%] .btn-file-action[_ngcontent-%COMP%]:disabled{opacity:.55;cursor:not-allowed;transform:none}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .inspector-card-header[_ngcontent-%COMP%] .btn-file-action[_ngcontent-%COMP%]{border-radius:6px;font-family:inherit;font-size:11.5px;font-weight:600;cursor:pointer}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .inspector-card-header[_ngcontent-%COMP%] .btn-file-action[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:13px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .inspector-card-header[_ngcontent-%COMP%] .btn-file-action.btn-toggle-code[_ngcontent-%COMP%]{background:#eff6ffbf;color:#1a73e8;border-color:#bfdbfed9}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .inspector-card-header[_ngcontent-%COMP%] .btn-file-action.btn-toggle-code[_ngcontent-%COMP%]:hover{background:#dbeafee6;color:#1557b0;border-color:#1a73e8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .inspector-summary-row[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:12px;padding:12px 14px;background:#fff}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .inspector-summary-row[_ngcontent-%COMP%] .summary-metric[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:4px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .inspector-summary-row[_ngcontent-%COMP%] .summary-metric[_ngcontent-%COMP%] .metric-label[_ngcontent-%COMP%]{font-size:10.5px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .inspector-summary-row[_ngcontent-%COMP%] .summary-metric[_ngcontent-%COMP%] .metric-val-pill[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;font-family:JetBrains Mono,Fira Code,Roboto Mono,SFMono-Regular,Consolas,monospace;font-size:12px;color:#0f172a}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .inspector-summary-row[_ngcontent-%COMP%] .summary-metric[_ngcontent-%COMP%] .metric-val-pill[_ngcontent-%COMP%] .provider-dot[_ngcontent-%COMP%]{width:7px;height:7px;border-radius:50%;background:#1a73e8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .inspector-summary-row[_ngcontent-%COMP%] .summary-metric[_ngcontent-%COMP%] .metric-val-pill[_ngcontent-%COMP%] .provider-name[_ngcontent-%COMP%]{font-weight:700;color:#1a73e8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .inspector-summary-row[_ngcontent-%COMP%] .summary-metric[_ngcontent-%COMP%] .metric-val-pill[_ngcontent-%COMP%] .model-divider[_ngcontent-%COMP%]{color:#94a3b8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .inspector-summary-row[_ngcontent-%COMP%] .summary-metric[_ngcontent-%COMP%] .metric-val-pill[_ngcontent-%COMP%] .model-name[_ngcontent-%COMP%]{font-weight:600;color:#0f172a}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .inspector-summary-row[_ngcontent-%COMP%] .summary-metric[_ngcontent-%COMP%] .metric-val-pill.secondary[_ngcontent-%COMP%]{background:#f8fafc;color:#475569;font-size:11.5px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .jsonc-viewer-box[_ngcontent-%COMP%]{border-top:1px solid #e2e8f0;background:#0f172a;max-height:260px;overflow-y:auto;padding:12px 14px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .jsonc-viewer-box[_ngcontent-%COMP%] .jsonc-code[_ngcontent-%COMP%]{margin:0;font-family:JetBrains Mono,Fira Code,Roboto Mono,SFMono-Regular,Consolas,monospace;font-size:11.5px;line-height:1.5;color:#e2e8f0;white-space:pre-wrap;word-break:break-all}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .env-keys-table[_ngcontent-%COMP%]{display:flex;flex-direction:column}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .env-keys-table[_ngcontent-%COMP%] .env-key-row[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:8px 14px;border-bottom:1px solid #f1f5f9;transition:background .12s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .env-keys-table[_ngcontent-%COMP%] .env-key-row[_ngcontent-%COMP%]:last-child{border-bottom:none}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .env-keys-table[_ngcontent-%COMP%] .env-key-row[_ngcontent-%COMP%]:hover{background:#f8fafc}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .env-keys-table[_ngcontent-%COMP%] .env-key-row[_ngcontent-%COMP%] .env-name-col[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .env-keys-table[_ngcontent-%COMP%] .env-key-row[_ngcontent-%COMP%] .env-name-col[_ngcontent-%COMP%] .env-key-name[_ngcontent-%COMP%]{font-family:JetBrains Mono,Fira Code,Roboto Mono,SFMono-Regular,Consolas,monospace;font-size:12px;font-weight:600;color:#0f172a;background:#f1f5f9;padding:2px 6px;border-radius:4px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .env-keys-table[_ngcontent-%COMP%] .env-key-row[_ngcontent-%COMP%] .env-status-col[_ngcontent-%COMP%]{display:flex;align-items:center}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .env-keys-table[_ngcontent-%COMP%] .env-key-row[_ngcontent-%COMP%] .env-status-col[_ngcontent-%COMP%] .badge-env-pass[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;color:#059669;background:#ecfdf5;border:1px solid #a7f3d0;padding:2px 7px;border-radius:6px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .env-keys-table[_ngcontent-%COMP%] .env-key-row[_ngcontent-%COMP%] .env-status-col[_ngcontent-%COMP%] .badge-env-pass[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:13px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .env-keys-table[_ngcontent-%COMP%] .env-key-row[_ngcontent-%COMP%] .env-status-col[_ngcontent-%COMP%] .badge-env-pass[_ngcontent-%COMP%] .key-preview[_ngcontent-%COMP%]{font-family:JetBrains Mono,Fira Code,Roboto Mono,SFMono-Regular,Consolas,monospace;font-size:10.5px;color:#047857;margin-left:2px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .env-keys-table[_ngcontent-%COMP%] .env-key-row[_ngcontent-%COMP%] .env-status-col[_ngcontent-%COMP%] .badge-env-unset[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;color:#94a3b8;background:#f8fafc;border:1px solid #e2e8f0;padding:2px 7px;border-radius:6px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .custom-config-inspector[_ngcontent-%COMP%] .inspector-card[_ngcontent-%COMP%] .env-keys-table[_ngcontent-%COMP%] .env-key-row[_ngcontent-%COMP%] .env-status-col[_ngcontent-%COMP%] .badge-env-unset[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:13px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .connected-device-panel[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:10px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .connected-device-panel[_ngcontent-%COMP%] .device-hero-card[_ngcontent-%COMP%]{display:flex;align-items:center;gap:16px;padding:16px 20px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #00000005,0 4px 12px #00000005;transition:all .2s cubic-bezier(.4,0,.2,1)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .connected-device-panel[_ngcontent-%COMP%] .device-hero-card[_ngcontent-%COMP%]:hover{border-color:#cbd5e1;box-shadow:0 2px 6px #0000000a,0 8px 18px #00000008}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .connected-device-panel[_ngcontent-%COMP%] .device-hero-card[_ngcontent-%COMP%] .device-avatar[_ngcontent-%COMP%]{width:44px;height:44px;border-radius:10px;background:#f1f5f9;border:1px solid #e2e8f0;color:#334155;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .connected-device-panel[_ngcontent-%COMP%] .device-hero-card[_ngcontent-%COMP%] .device-avatar[_ngcontent-%COMP%] .device-hero-icon[_ngcontent-%COMP%]{font-size:22px;color:#334155!important}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .connected-device-panel[_ngcontent-%COMP%] .device-hero-card[_ngcontent-%COMP%] .device-hero-details[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .connected-device-panel[_ngcontent-%COMP%] .device-hero-card[_ngcontent-%COMP%] .device-hero-details[_ngcontent-%COMP%] .device-hero-name[_ngcontent-%COMP%]{font-size:14.5px;font-weight:600;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.01em}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .connected-device-panel[_ngcontent-%COMP%] .device-hero-card[_ngcontent-%COMP%] .device-hero-details[_ngcontent-%COMP%] .device-hero-meta[_ngcontent-%COMP%]{display:flex;align-items:center;gap:6px;font-size:12px;color:#64748b;flex-wrap:wrap}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .connected-device-panel[_ngcontent-%COMP%] .device-hero-card[_ngcontent-%COMP%] .device-hero-details[_ngcontent-%COMP%] .device-hero-meta[_ngcontent-%COMP%] .meta-dot[_ngcontent-%COMP%]{color:#94a3b8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .connected-device-panel[_ngcontent-%COMP%] .device-hero-card[_ngcontent-%COMP%] .device-hero-details[_ngcontent-%COMP%] .device-hero-meta[_ngcontent-%COMP%] .remote-endpoint-label[_ngcontent-%COMP%]{color:#1a73e8;font-family:JetBrains Mono,Fira Code,Roboto Mono,SFMono-Regular,Consolas,monospace;font-size:11px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .connected-device-panel[_ngcontent-%COMP%] .device-hero-card[_ngcontent-%COMP%] .device-hero-status[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:#047857;margin-left:auto;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .connected-device-panel[_ngcontent-%COMP%] .device-hero-card[_ngcontent-%COMP%] .device-hero-status[_ngcontent-%COMP%] .status-dot[_ngcontent-%COMP%]{width:7px;height:7px;border-radius:50%;background:#10b981;box-shadow:0 0 #10b981b3;animation:_ngcontent-%COMP%_statusDotPulse 2s infinite cubic-bezier(.4,0,.6,1)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .connected-device-panel[_ngcontent-%COMP%] .multi-device-switcher[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:5px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .connected-device-panel[_ngcontent-%COMP%] .multi-device-switcher[_ngcontent-%COMP%] .switcher-label[_ngcontent-%COMP%]{font-size:11px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .connected-device-panel[_ngcontent-%COMP%] .multi-device-switcher[_ngcontent-%COMP%] .switcher-chips[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:6px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .connected-device-panel[_ngcontent-%COMP%] .multi-device-switcher[_ngcontent-%COMP%] .switcher-chips[_ngcontent-%COMP%] .device-chip-btn[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:5px;padding:0 10px;height:30px;background:#fff;border:1px solid #e2e8f0;border-radius:6px;font-family:inherit;font-size:11.5px;font-weight:600;color:#475569;cursor:pointer;transition:all .15s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .connected-device-panel[_ngcontent-%COMP%] .multi-device-switcher[_ngcontent-%COMP%] .switcher-chips[_ngcontent-%COMP%] .device-chip-btn[_ngcontent-%COMP%] .chip-icon[_ngcontent-%COMP%]{font-size:14px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .connected-device-panel[_ngcontent-%COMP%] .multi-device-switcher[_ngcontent-%COMP%] .switcher-chips[_ngcontent-%COMP%] .device-chip-btn[_ngcontent-%COMP%] .active-check[_ngcontent-%COMP%]{color:#059669;font-size:10.5px;font-weight:700}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .connected-device-panel[_ngcontent-%COMP%] .multi-device-switcher[_ngcontent-%COMP%] .switcher-chips[_ngcontent-%COMP%] .device-chip-btn.selected[_ngcontent-%COMP%]{background:#ecfdf5;border-color:#059669;color:#059669}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .connected-device-panel[_ngcontent-%COMP%] .multi-device-switcher[_ngcontent-%COMP%] .switcher-chips[_ngcontent-%COMP%] .device-chip-btn[_ngcontent-%COMP%]:hover:not(.selected){background:#f8fafc;border-color:#cbd5e1}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-container[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:12px;margin-bottom:8px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:16px;padding:20px;background:linear-gradient(180deg,#fff,#f8fafc);border:1.5px solid rgba(37,99,235,.25);border-radius:12px;box-shadow:0 4px 16px #2563eb0f}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .tracker-header[_ngcontent-%COMP%]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .tracker-header[_ngcontent-%COMP%] .tracker-title-group[_ngcontent-%COMP%]{display:flex;align-items:flex-start;gap:12px;flex:1;min-width:260px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .tracker-header[_ngcontent-%COMP%] .tracker-title-group[_ngcontent-%COMP%] .tracker-icon-box[_ngcontent-%COMP%]{width:36px;height:36px;border-radius:10px;background:#2563eb1a;color:#1a73e8;display:flex;align-items:center;justify-content:center;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .tracker-header[_ngcontent-%COMP%] .tracker-title-group[_ngcontent-%COMP%] .tracker-icon-box[_ngcontent-%COMP%] .spinning-icon[_ngcontent-%COMP%]{font-size:20px;animation:_ngcontent-%COMP%_spin 1.2s linear infinite}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .tracker-header[_ngcontent-%COMP%] .tracker-title-group[_ngcontent-%COMP%] .tracker-titles[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:4px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .tracker-header[_ngcontent-%COMP%] .tracker-title-group[_ngcontent-%COMP%] .tracker-titles[_ngcontent-%COMP%] .tracker-main-heading[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .tracker-header[_ngcontent-%COMP%] .tracker-title-group[_ngcontent-%COMP%] .tracker-titles[_ngcontent-%COMP%] .tracker-main-heading[_ngcontent-%COMP%] .tracker-title[_ngcontent-%COMP%]{margin:0;font-size:15px;font-weight:700;color:#0f172a}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .tracker-header[_ngcontent-%COMP%] .tracker-title-group[_ngcontent-%COMP%] .tracker-titles[_ngcontent-%COMP%] .tracker-main-heading[_ngcontent-%COMP%] .tracker-title[_ngcontent-%COMP%] .avd-highlight[_ngcontent-%COMP%]{color:#1a73e8;font-family:JetBrains Mono,monospace,sans-serif}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .tracker-header[_ngcontent-%COMP%] .tracker-title-group[_ngcontent-%COMP%] .tracker-titles[_ngcontent-%COMP%] .tracker-main-heading[_ngcontent-%COMP%] .stage-tag-badge[_ngcontent-%COMP%]{display:inline-flex;align-items:center;padding:2px 8px;border-radius:12px;background:#2563eb1f;color:#1a73e8;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .tracker-header[_ngcontent-%COMP%] .tracker-title-group[_ngcontent-%COMP%] .tracker-titles[_ngcontent-%COMP%] .tracker-subtitle[_ngcontent-%COMP%]{margin:0;font-size:13px;color:#475569;line-height:1.4}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .tracker-header[_ngcontent-%COMP%] .tracker-actions[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .tracker-header[_ngcontent-%COMP%] .tracker-actions[_ngcontent-%COMP%] .btn-toggle-logs[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:6px;padding:6px 13px;background:#ffffffb8;backdrop-filter:blur(10px) saturate(180%);-webkit-backdrop-filter:blur(10px) saturate(180%);border:1px solid rgba(226,232,240,.88);box-shadow:0 2px 8px -1px #0f172a0d,inset 0 1px 1px #fffffff2;color:#475569;transition:background .2s cubic-bezier(.4,0,.2,1),border-color .2s cubic-bezier(.4,0,.2,1),color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1),opacity .2s cubic-bezier(.4,0,.2,1)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .tracker-header[_ngcontent-%COMP%] .tracker-actions[_ngcontent-%COMP%] .btn-toggle-logs[_ngcontent-%COMP%]:hover:not(:disabled){background:#ffffffeb;border-color:#bfdbfef2;color:#1a73e8;box-shadow:0 4px 12px -2px #0f172a14,inset 0 1px 1px #fff;transform:translateY(-.5px)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .tracker-header[_ngcontent-%COMP%] .tracker-actions[_ngcontent-%COMP%] .btn-toggle-logs[_ngcontent-%COMP%]:hover:not(:disabled) .material-symbols-outlined[_ngcontent-%COMP%]:not(.feedback-done){color:#1a73e8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .tracker-header[_ngcontent-%COMP%] .tracker-actions[_ngcontent-%COMP%] .btn-toggle-logs[_ngcontent-%COMP%]:active:not(:disabled){transform:scale(.97)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .tracker-header[_ngcontent-%COMP%] .tracker-actions[_ngcontent-%COMP%] .btn-toggle-logs[_ngcontent-%COMP%]:disabled{opacity:.55;cursor:not-allowed;transform:none}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .tracker-header[_ngcontent-%COMP%] .tracker-actions[_ngcontent-%COMP%] .btn-toggle-logs[_ngcontent-%COMP%]{border-radius:6px;font-size:12px;font-weight:600;cursor:pointer}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .tracker-header[_ngcontent-%COMP%] .tracker-actions[_ngcontent-%COMP%] .btn-toggle-logs[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:15px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .tracker-header[_ngcontent-%COMP%] .tracker-actions[_ngcontent-%COMP%] .btn-toggle-logs.active[_ngcontent-%COMP%]{background:#eff6ffe6;color:#1a73e8;border-color:#2563eb66;box-shadow:0 2px 6px #2563eb1f}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .tracker-header[_ngcontent-%COMP%] .tracker-actions[_ngcontent-%COMP%] .btn-stop-emu[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:5px;padding:6px 13px;background:#fef2f2bf;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(254,202,202,.85);border-radius:6px;color:#dc2626;font-size:12px;font-weight:600;cursor:pointer;box-shadow:0 1px 3px #dc26260f,inset 0 1px 1px #fffc;transition:all .2s cubic-bezier(.4,0,.2,1)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .tracker-header[_ngcontent-%COMP%] .tracker-actions[_ngcontent-%COMP%] .btn-stop-emu[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:15px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .tracker-header[_ngcontent-%COMP%] .tracker-actions[_ngcontent-%COMP%] .btn-stop-emu[_ngcontent-%COMP%]:hover{background:#fee2e2f2;border-color:#dc2626;box-shadow:0 4px 12px -2px #dc262626;transform:translateY(-.5px)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .tracker-header[_ngcontent-%COMP%] .tracker-actions[_ngcontent-%COMP%] .btn-stop-emu[_ngcontent-%COMP%]:active{transform:scale(.97)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .boot-stepper[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#fff;border:1px solid #e2e8f0;border-radius:8px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .boot-stepper[_ngcontent-%COMP%] .step-item[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:#64748b}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .boot-stepper[_ngcontent-%COMP%] .step-item[_ngcontent-%COMP%] .step-circle[_ngcontent-%COMP%]{width:22px;height:22px;border-radius:50%;background:#f1f5f9;border:1.5px solid #e2e8f0;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#64748b;transition:all .2s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .boot-stepper[_ngcontent-%COMP%] .step-item[_ngcontent-%COMP%] .step-circle[_ngcontent-%COMP%] .check-icon[_ngcontent-%COMP%]{font-size:14px;color:#fff}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .boot-stepper[_ngcontent-%COMP%] .step-item[_ngcontent-%COMP%] .step-circle[_ngcontent-%COMP%] .spinner-tiny[_ngcontent-%COMP%]{width:11px;height:11px;border:2px solid rgba(37,99,235,.3);border-top-color:#1a73e8;border-radius:50%;animation:_ngcontent-%COMP%_spin .8s linear infinite}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .boot-stepper[_ngcontent-%COMP%] .step-item[_ngcontent-%COMP%] .step-label[_ngcontent-%COMP%]{white-space:nowrap}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .boot-stepper[_ngcontent-%COMP%] .step-item.active[_ngcontent-%COMP%]{color:#1a73e8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .boot-stepper[_ngcontent-%COMP%] .step-item.active[_ngcontent-%COMP%] .step-circle[_ngcontent-%COMP%]{border-color:#1a73e8;background:#2563eb1a;color:#1a73e8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .boot-stepper[_ngcontent-%COMP%] .step-item.done[_ngcontent-%COMP%]{color:#059669}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .boot-stepper[_ngcontent-%COMP%] .step-item.done[_ngcontent-%COMP%] .step-circle[_ngcontent-%COMP%]{border-color:#059669;background:#059669;color:#fff}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .boot-stepper[_ngcontent-%COMP%] .step-line[_ngcontent-%COMP%]{flex:1;height:2px;background:#e2e8f0;margin:0 10px;border-radius:2px;transition:all .3s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .boot-stepper[_ngcontent-%COMP%] .step-line.done[_ngcontent-%COMP%]{background:#059669}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .progress-bar-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:6px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .progress-bar-container[_ngcontent-%COMP%] .progress-bar-track[_ngcontent-%COMP%]{width:100%;height:8px;background:#e2e8f0;border-radius:6px;overflow:hidden}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .progress-bar-container[_ngcontent-%COMP%] .progress-bar-track[_ngcontent-%COMP%] .progress-bar-fill[_ngcontent-%COMP%]{height:100%;background:linear-gradient(90deg,#3b82f6,#10b981);border-radius:6px;transition:width .4s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .progress-bar-container[_ngcontent-%COMP%] .progress-bar-meta[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:600}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .progress-bar-container[_ngcontent-%COMP%] .progress-bar-meta[_ngcontent-%COMP%] .progress-percent[_ngcontent-%COMP%]{color:#1a73e8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .progress-bar-container[_ngcontent-%COMP%] .progress-bar-meta[_ngcontent-%COMP%] .progress-timer[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px;color:#475569}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .progress-bar-container[_ngcontent-%COMP%] .progress-bar-meta[_ngcontent-%COMP%] .progress-timer[_ngcontent-%COMP%] .timer-icon[_ngcontent-%COMP%]{font-size:14px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .boot-tip-banner[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#2563eb0d;border-left:3px solid #1a73e8;border-radius:0 6px 6px 0;font-size:12px;color:#475569}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .boot-tip-banner[_ngcontent-%COMP%] .tip-icon[_ngcontent-%COMP%]{font-size:16px;color:#1a73e8;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .boot-logs-drawer[_ngcontent-%COMP%]{display:flex;flex-direction:column;border:1px solid #1e293b;border-radius:8px;background:#0f172a;overflow:hidden}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .boot-logs-drawer[_ngcontent-%COMP%] .logs-header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:#1e293b;color:#94a3b8;font-size:12px;font-weight:600}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .boot-logs-drawer[_ngcontent-%COMP%] .logs-header[_ngcontent-%COMP%] .logs-header-left[_ngcontent-%COMP%]{display:flex;align-items:center;gap:6px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .boot-logs-drawer[_ngcontent-%COMP%] .logs-header[_ngcontent-%COMP%] .logs-header-left[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:14px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .boot-logs-drawer[_ngcontent-%COMP%] .logs-header[_ngcontent-%COMP%] .btn-copy-logs[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:#334155;border:none;border-radius:4px;color:#f8fafc;font-size:11px;font-weight:600;cursor:pointer}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .boot-logs-drawer[_ngcontent-%COMP%] .logs-header[_ngcontent-%COMP%] .btn-copy-logs[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:12px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .boot-logs-drawer[_ngcontent-%COMP%] .logs-header[_ngcontent-%COMP%] .btn-copy-logs[_ngcontent-%COMP%]:hover{background:#475569}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .boot-logs-drawer[_ngcontent-%COMP%] .logs-body[_ngcontent-%COMP%]{margin:0;padding:12px;max-height:180px;overflow-y:auto;font-family:JetBrains Mono,monospace,sans-serif;font-size:11px;line-height:1.5;color:#cbd5e1;white-space:pre-wrap;word-break:break-all}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .boot-logs-drawer[_ngcontent-%COMP%] .logs-body[_ngcontent-%COMP%] .log-line[_ngcontent-%COMP%]{margin-bottom:2px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-boot-tracker-card[_ngcontent-%COMP%] .boot-logs-drawer[_ngcontent-%COMP%] .logs-body[_ngcontent-%COMP%] .log-empty[_ngcontent-%COMP%]{color:#64748b;font-style:italic}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:14px;padding:18px 20px;background:#fff8f8;border:1.5px solid rgba(239,68,68,.3);border-radius:12px;box-shadow:0 4px 14px #ef44440f}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-header[_ngcontent-%COMP%]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-header[_ngcontent-%COMP%] .failed-header-left[_ngcontent-%COMP%]{display:flex;align-items:flex-start;gap:12px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-header[_ngcontent-%COMP%] .failed-header-left[_ngcontent-%COMP%] .failed-icon-box[_ngcontent-%COMP%]{width:34px;height:34px;border-radius:8px;background:#ef44441f;color:#dc2626;display:flex;align-items:center;justify-content:center;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-header[_ngcontent-%COMP%] .failed-header-left[_ngcontent-%COMP%] .failed-icon-box[_ngcontent-%COMP%] .failed-icon[_ngcontent-%COMP%]{font-size:20px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-header[_ngcontent-%COMP%] .failed-header-left[_ngcontent-%COMP%] .failed-titles[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:2px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-header[_ngcontent-%COMP%] .failed-header-left[_ngcontent-%COMP%] .failed-titles[_ngcontent-%COMP%] .failed-title[_ngcontent-%COMP%]{margin:0;font-size:15px;font-weight:700;color:#dc2626}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-header[_ngcontent-%COMP%] .failed-header-left[_ngcontent-%COMP%] .failed-titles[_ngcontent-%COMP%] .failed-desc[_ngcontent-%COMP%]{margin:0;font-size:13px;color:#0f172a;line-height:1.4}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-header[_ngcontent-%COMP%] .btn-dismiss-failed[_ngcontent-%COMP%]{background:transparent;border:none;color:#64748b;cursor:pointer;padding:4px;border-radius:4px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-header[_ngcontent-%COMP%] .btn-dismiss-failed[_ngcontent-%COMP%]:hover{background:#0000000d;color:#0f172a}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-logs-box[_ngcontent-%COMP%]{display:flex;flex-direction:column;background:#1e1e2e;border-radius:8px;overflow:hidden}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-logs-box[_ngcontent-%COMP%] .logs-header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;background:#282a36;color:#f55;font-size:11px;font-weight:600}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-logs-box[_ngcontent-%COMP%] .logs-header[_ngcontent-%COMP%] .btn-copy-logs[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;background:#44475a;border:none;border-radius:4px;color:#f8fafc;font-size:10px;cursor:pointer}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-logs-box[_ngcontent-%COMP%] .failed-logs-pre[_ngcontent-%COMP%]{margin:0;padding:10px 12px;max-height:120px;overflow-y:auto;font-family:JetBrains Mono,monospace;font-size:11px;line-height:1.4;color:#f8f8f2;white-space:pre-wrap}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-actions-bar[_ngcontent-%COMP%]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-actions-bar[_ngcontent-%COMP%] .btn-retry-launch[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:6px;padding:6px 16px;background:linear-gradient(135deg,#1a73e8eb,#2563ebd9);backdrop-filter:blur(10px) saturate(180%);-webkit-backdrop-filter:blur(10px) saturate(180%);border:1px solid rgba(255,255,255,.28);box-shadow:0 4px 14px #1a73e852,inset 0 1px 1px #ffffff73;color:#fff!important;transition:background .2s cubic-bezier(.4,0,.2,1),border-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1),opacity .2s cubic-bezier(.4,0,.2,1)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-actions-bar[_ngcontent-%COMP%] .btn-retry-launch[_ngcontent-%COMP%] span[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-actions-bar[_ngcontent-%COMP%] .btn-retry-launch[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-actions-bar[_ngcontent-%COMP%] .btn-retry-launch[_ngcontent-%COMP%] .run-icon[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-actions-bar[_ngcontent-%COMP%] .btn-retry-launch[_ngcontent-%COMP%] .action-icon[_ngcontent-%COMP%]{color:#fff!important}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-actions-bar[_ngcontent-%COMP%] .btn-retry-launch[_ngcontent-%COMP%]:hover:not(:disabled){background:linear-gradient(135deg,#1a73e8,#2563ebf2);box-shadow:0 6px 20px #1a73e86b,inset 0 1px 1px #fff9;transform:translateY(-1px)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-actions-bar[_ngcontent-%COMP%] .btn-retry-launch[_ngcontent-%COMP%]:active:not(:disabled){transform:scale(.97) translateY(0);box-shadow:0 2px 8px #1a73e859}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-actions-bar[_ngcontent-%COMP%] .btn-retry-launch[_ngcontent-%COMP%]:disabled{background:#94a3b880;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);box-shadow:none;opacity:.65;cursor:not-allowed;transform:none}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-actions-bar[_ngcontent-%COMP%] .btn-retry-launch[_ngcontent-%COMP%]{border-radius:6px;font-size:12px;font-weight:600;cursor:pointer}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-actions-bar[_ngcontent-%COMP%] .btn-retry-launch[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:15px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-actions-bar[_ngcontent-%COMP%] .btn-restart-adb-sub[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:#ffffffb8;backdrop-filter:blur(10px) saturate(180%);-webkit-backdrop-filter:blur(10px) saturate(180%);border:1px solid rgba(226,232,240,.88);box-shadow:0 2px 8px -1px #0f172a0d,inset 0 1px 1px #fffffff2;color:#475569;transition:background .2s cubic-bezier(.4,0,.2,1),border-color .2s cubic-bezier(.4,0,.2,1),color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1),opacity .2s cubic-bezier(.4,0,.2,1)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-actions-bar[_ngcontent-%COMP%] .btn-restart-adb-sub[_ngcontent-%COMP%]:hover:not(:disabled){background:#ffffffeb;border-color:#bfdbfef2;color:#1a73e8;box-shadow:0 4px 12px -2px #0f172a14,inset 0 1px 1px #fff;transform:translateY(-.5px)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-actions-bar[_ngcontent-%COMP%] .btn-restart-adb-sub[_ngcontent-%COMP%]:hover:not(:disabled) .material-symbols-outlined[_ngcontent-%COMP%]:not(.feedback-done){color:#1a73e8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-actions-bar[_ngcontent-%COMP%] .btn-restart-adb-sub[_ngcontent-%COMP%]:active:not(:disabled){transform:scale(.97)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-actions-bar[_ngcontent-%COMP%] .btn-restart-adb-sub[_ngcontent-%COMP%]:disabled{opacity:.55;cursor:not-allowed;transform:none}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-actions-bar[_ngcontent-%COMP%] .btn-restart-adb-sub[_ngcontent-%COMP%]{border-radius:6px;font-size:12px;font-weight:600;cursor:pointer}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-actions-bar[_ngcontent-%COMP%] .btn-restart-adb-sub[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:15px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-actions-bar[_ngcontent-%COMP%] .btn-dismiss-flat[_ngcontent-%COMP%]{background:transparent;border:none;color:#475569;font-size:12px;font-weight:600;cursor:pointer;padding:6px 10px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .emulator-failed-card[_ngcontent-%COMP%] .failed-actions-bar[_ngcontent-%COMP%] .btn-dismiss-flat[_ngcontent-%COMP%]:hover{text-decoration:underline}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:12px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .connection-methods-nav[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}@media(max-width:1100px){.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .connection-methods-nav[_ngcontent-%COMP%]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .connection-methods-nav[_ngcontent-%COMP%]{grid-template-columns:1fr}}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .connection-methods-nav[_ngcontent-%COMP%] .method-nav-card[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;cursor:pointer;text-align:left;transition:all .18s ease;outline:none;min-width:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .connection-methods-nav[_ngcontent-%COMP%] .method-nav-card[_ngcontent-%COMP%] .method-card-left[_ngcontent-%COMP%]{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .connection-methods-nav[_ngcontent-%COMP%] .method-nav-card[_ngcontent-%COMP%] .method-card-left[_ngcontent-%COMP%] .method-icon-box[_ngcontent-%COMP%]{width:32px;height:32px;border-radius:8px;background:#fff;border:1px solid #e2e8f0;color:#475569;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .connection-methods-nav[_ngcontent-%COMP%] .method-nav-card[_ngcontent-%COMP%] .method-card-left[_ngcontent-%COMP%] .method-icon-box[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:17px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .connection-methods-nav[_ngcontent-%COMP%] .method-nav-card[_ngcontent-%COMP%] .method-card-left[_ngcontent-%COMP%] .method-info[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .connection-methods-nav[_ngcontent-%COMP%] .method-nav-card[_ngcontent-%COMP%] .method-card-left[_ngcontent-%COMP%] .method-info[_ngcontent-%COMP%] .method-title-row[_ngcontent-%COMP%]{display:flex;align-items:center}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .connection-methods-nav[_ngcontent-%COMP%] .method-nav-card[_ngcontent-%COMP%] .method-card-left[_ngcontent-%COMP%] .method-info[_ngcontent-%COMP%] .method-title-row[_ngcontent-%COMP%] .method-title[_ngcontent-%COMP%]{font-size:13px;font-weight:600;color:#0f172a}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .connection-methods-nav[_ngcontent-%COMP%] .method-nav-card[_ngcontent-%COMP%] .method-card-left[_ngcontent-%COMP%] .method-info[_ngcontent-%COMP%] .method-desc[_ngcontent-%COMP%]{font-size:11.5px;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .connection-methods-nav[_ngcontent-%COMP%] .method-nav-card[_ngcontent-%COMP%] .method-card-right[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-left:8px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .connection-methods-nav[_ngcontent-%COMP%] .method-nav-card[_ngcontent-%COMP%] .method-card-right[_ngcontent-%COMP%] .radio-indicator[_ngcontent-%COMP%]{width:16px;height:16px;border-radius:50%;border:1.5px solid #cbd5e1;background:#fff;transition:all .15s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .connection-methods-nav[_ngcontent-%COMP%] .method-nav-card[_ngcontent-%COMP%] .method-card-right[_ngcontent-%COMP%] .radio-indicator.checked[_ngcontent-%COMP%]{border-color:#1a73e8;background:#1a73e8;box-shadow:inset 0 0 0 3px #fff}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .connection-methods-nav[_ngcontent-%COMP%] .method-nav-card.active[_ngcontent-%COMP%]{background:#fff;border-color:#1a73e8;box-shadow:0 0 0 1px #1a73e8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .connection-methods-nav[_ngcontent-%COMP%] .method-nav-card.active[_ngcontent-%COMP%] .method-icon-box[_ngcontent-%COMP%]{background:#eff6ff;color:#1a73e8;border-color:#bfdbfe}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .connection-methods-nav[_ngcontent-%COMP%] .method-nav-card.active[_ngcontent-%COMP%] .method-title[_ngcontent-%COMP%]{color:#1a73e8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .connection-methods-nav[_ngcontent-%COMP%] .method-nav-card[_ngcontent-%COMP%]:hover:not(.active){background:#fff;border-color:#cbd5e1}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .active-remote-notice[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;background:#fffbeb;border:1px solid #fde68a;border-radius:8px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .active-remote-notice[_ngcontent-%COMP%] .active-remote-copy[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;min-width:0;color:#78350f;font-size:11.5px;line-height:1.45}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .active-remote-notice[_ngcontent-%COMP%] .active-remote-copy[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{color:#d97706;font-size:17px;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .active-remote-notice[_ngcontent-%COMP%] .active-remote-copy[_ngcontent-%COMP%] strong[_ngcontent-%COMP%]{font-family:JetBrains Mono,Fira Code,Roboto Mono,SFMono-Regular,Consolas,monospace;font-weight:600}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .active-remote-notice[_ngcontent-%COMP%] .btn-use-local-adb[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:32px;padding:0 12px;background:#ffffffb8;backdrop-filter:blur(10px) saturate(180%);-webkit-backdrop-filter:blur(10px) saturate(180%);border:1px solid rgba(226,232,240,.88);box-shadow:0 2px 8px -1px #0f172a0d,inset 0 1px 1px #fffffff2;color:#475569;transition:background .2s cubic-bezier(.4,0,.2,1),border-color .2s cubic-bezier(.4,0,.2,1),color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1),opacity .2s cubic-bezier(.4,0,.2,1)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .active-remote-notice[_ngcontent-%COMP%] .btn-use-local-adb[_ngcontent-%COMP%]:hover:not(:disabled){background:#ffffffeb;border-color:#bfdbfef2;color:#1a73e8;box-shadow:0 4px 12px -2px #0f172a14,inset 0 1px 1px #fff;transform:translateY(-.5px)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .active-remote-notice[_ngcontent-%COMP%] .btn-use-local-adb[_ngcontent-%COMP%]:hover:not(:disabled) .material-symbols-outlined[_ngcontent-%COMP%]:not(.feedback-done){color:#1a73e8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .active-remote-notice[_ngcontent-%COMP%] .btn-use-local-adb[_ngcontent-%COMP%]:active:not(:disabled){transform:scale(.97)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .active-remote-notice[_ngcontent-%COMP%] .btn-use-local-adb[_ngcontent-%COMP%]:disabled{opacity:.55;cursor:not-allowed;transform:none}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .active-remote-notice[_ngcontent-%COMP%] .btn-use-local-adb[_ngcontent-%COMP%]{border-radius:6px;font-family:inherit;font-size:11.5px;font-weight:600;cursor:pointer;white-space:nowrap}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .active-remote-notice[_ngcontent-%COMP%] .btn-use-local-adb[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:15px}@media(max-width:700px){.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .active-remote-notice[_ngcontent-%COMP%]{align-items:stretch;flex-direction:column}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .active-remote-notice[_ngcontent-%COMP%] .btn-use-local-adb[_ngcontent-%COMP%]{width:100%}}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%]{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:14px 16px;display:flex;flex-direction:column;gap:12px;animation:_ngcontent-%COMP%_fadeIn .15s ease-out}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .avds-section[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:10px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .avds-section[_ngcontent-%COMP%] .section-header-bar[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px;padding-bottom:6px;border-bottom:1px solid #f1f5f9}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .avds-section[_ngcontent-%COMP%] .section-header-bar[_ngcontent-%COMP%] .section-title-group[_ngcontent-%COMP%]{display:flex;align-items:center;gap:6px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .avds-section[_ngcontent-%COMP%] .section-header-bar[_ngcontent-%COMP%] .section-title-group[_ngcontent-%COMP%] .header-icon[_ngcontent-%COMP%]{font-size:17px;color:#1a73e8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .avds-section[_ngcontent-%COMP%] .section-header-bar[_ngcontent-%COMP%] .section-title-group[_ngcontent-%COMP%] .section-title[_ngcontent-%COMP%]{font-size:13px;font-weight:600;color:#0f172a}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .avds-section[_ngcontent-%COMP%] .section-header-bar[_ngcontent-%COMP%] .section-title-group[_ngcontent-%COMP%] .count-badge[_ngcontent-%COMP%]{font-size:10.5px;font-weight:600;padding:1.5px 6px;border-radius:6px;background:#f1f5f9;color:#475569}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .avds-section[_ngcontent-%COMP%] .avds-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:8px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .avds-section[_ngcontent-%COMP%] .avds-list[_ngcontent-%COMP%] .avd-card-item[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;gap:12px;min-width:0;transition:all .15s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .avds-section[_ngcontent-%COMP%] .avds-list[_ngcontent-%COMP%] .avd-card-item[_ngcontent-%COMP%]:hover{border-color:#cbd5e1;background:#fff}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .avds-section[_ngcontent-%COMP%] .avds-list[_ngcontent-%COMP%] .avd-card-item[_ngcontent-%COMP%] .avd-item-main[_ngcontent-%COMP%]{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .avds-section[_ngcontent-%COMP%] .avds-list[_ngcontent-%COMP%] .avd-card-item[_ngcontent-%COMP%] .avd-item-main[_ngcontent-%COMP%] .avd-avatar[_ngcontent-%COMP%]{width:32px;height:32px;border-radius:6px;background:#fff;border:1px solid #e2e8f0;color:#1a73e8;display:flex;align-items:center;justify-content:center;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .avds-section[_ngcontent-%COMP%] .avds-list[_ngcontent-%COMP%] .avd-card-item[_ngcontent-%COMP%] .avd-item-main[_ngcontent-%COMP%] .avd-avatar[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:17px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .avds-section[_ngcontent-%COMP%] .avds-list[_ngcontent-%COMP%] .avd-card-item[_ngcontent-%COMP%] .avd-item-main[_ngcontent-%COMP%] .avd-meta[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1px;flex:1;min-width:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .avds-section[_ngcontent-%COMP%] .avds-list[_ngcontent-%COMP%] .avd-card-item[_ngcontent-%COMP%] .avd-item-main[_ngcontent-%COMP%] .avd-meta[_ngcontent-%COMP%] .avd-heading[_ngcontent-%COMP%]{display:flex;align-items:center;gap:6px;min-width:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .avds-section[_ngcontent-%COMP%] .avds-list[_ngcontent-%COMP%] .avd-card-item[_ngcontent-%COMP%] .avd-item-main[_ngcontent-%COMP%] .avd-meta[_ngcontent-%COMP%] .avd-heading[_ngcontent-%COMP%] .avd-name[_ngcontent-%COMP%]{font-size:13px;font-weight:600;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .avds-section[_ngcontent-%COMP%] .avds-list[_ngcontent-%COMP%] .avd-card-item[_ngcontent-%COMP%] .avd-item-main[_ngcontent-%COMP%] .avd-meta[_ngcontent-%COMP%] .avd-heading[_ngcontent-%COMP%] .avd-type-pill[_ngcontent-%COMP%]{font-size:9.5px;font-weight:600;padding:1px 5px;border-radius:4px;background:#fff;border:1px solid #e2e8f0;color:#64748b;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .avds-section[_ngcontent-%COMP%] .avds-list[_ngcontent-%COMP%] .avd-card-item[_ngcontent-%COMP%] .avd-item-actions[_ngcontent-%COMP%]{display:flex;align-items:center;gap:6px;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .avds-section[_ngcontent-%COMP%] .avds-list[_ngcontent-%COMP%] .avd-card-item[_ngcontent-%COMP%] .avd-item-actions[_ngcontent-%COMP%] .btn-avd-launch[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:0 15px;height:30px;background:linear-gradient(135deg,#1a73e8eb,#2563ebd9);backdrop-filter:blur(10px) saturate(180%);-webkit-backdrop-filter:blur(10px) saturate(180%);border:1px solid rgba(255,255,255,.28);box-shadow:0 4px 14px #1a73e852,inset 0 1px 1px #ffffff73;color:#fff!important;transition:background .2s cubic-bezier(.4,0,.2,1),border-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1),opacity .2s cubic-bezier(.4,0,.2,1)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .avds-section[_ngcontent-%COMP%] .avds-list[_ngcontent-%COMP%] .avd-card-item[_ngcontent-%COMP%] .avd-item-actions[_ngcontent-%COMP%] .btn-avd-launch[_ngcontent-%COMP%] span[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .avds-section[_ngcontent-%COMP%] .avds-list[_ngcontent-%COMP%] .avd-card-item[_ngcontent-%COMP%] .avd-item-actions[_ngcontent-%COMP%] .btn-avd-launch[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .avds-section[_ngcontent-%COMP%] .avds-list[_ngcontent-%COMP%] .avd-card-item[_ngcontent-%COMP%] .avd-item-actions[_ngcontent-%COMP%] .btn-avd-launch[_ngcontent-%COMP%] .run-icon[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .avds-section[_ngcontent-%COMP%] .avds-list[_ngcontent-%COMP%] .avd-card-item[_ngcontent-%COMP%] .avd-item-actions[_ngcontent-%COMP%] .btn-avd-launch[_ngcontent-%COMP%] .action-icon[_ngcontent-%COMP%]{color:#fff!important}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .avds-section[_ngcontent-%COMP%] .avds-list[_ngcontent-%COMP%] .avd-card-item[_ngcontent-%COMP%] .avd-item-actions[_ngcontent-%COMP%] .btn-avd-launch[_ngcontent-%COMP%]:hover:not(:disabled){background:linear-gradient(135deg,#1a73e8,#2563ebf2);box-shadow:0 6px 20px #1a73e86b,inset 0 1px 1px #fff9;transform:translateY(-1px)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .avds-section[_ngcontent-%COMP%] .avds-list[_ngcontent-%COMP%] .avd-card-item[_ngcontent-%COMP%] .avd-item-actions[_ngcontent-%COMP%] .btn-avd-launch[_ngcontent-%COMP%]:active:not(:disabled){transform:scale(.97) translateY(0);box-shadow:0 2px 8px #1a73e859}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .avds-section[_ngcontent-%COMP%] .avds-list[_ngcontent-%COMP%] .avd-card-item[_ngcontent-%COMP%] .avd-item-actions[_ngcontent-%COMP%] .btn-avd-launch[_ngcontent-%COMP%]:disabled{background:#94a3b880;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);box-shadow:none;opacity:.65;cursor:not-allowed;transform:none}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .avds-section[_ngcontent-%COMP%] .avds-list[_ngcontent-%COMP%] .avd-card-item[_ngcontent-%COMP%] .avd-item-actions[_ngcontent-%COMP%] .btn-avd-launch[_ngcontent-%COMP%]{border-radius:6px;font-family:inherit;font-size:12px;font-weight:600;cursor:pointer}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .avds-section[_ngcontent-%COMP%] .avds-list[_ngcontent-%COMP%] .avd-card-item[_ngcontent-%COMP%] .avd-item-actions[_ngcontent-%COMP%] .btn-avd-launch[_ngcontent-%COMP%] .action-icon[_ngcontent-%COMP%]{font-size:15px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .avds-section[_ngcontent-%COMP%] .avds-list[_ngcontent-%COMP%] .avd-card-item[_ngcontent-%COMP%] .avd-item-actions[_ngcontent-%COMP%] .btn-avd-launch[_ngcontent-%COMP%] .spinner-icon[_ngcontent-%COMP%]{width:13px;height:13px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:_ngcontent-%COMP%_spin .8s linear infinite}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .emulator-setup-guide-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:12px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .emulator-setup-guide-container[_ngcontent-%COMP%] .empty-avd-banner[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:12px 14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .emulator-setup-guide-container[_ngcontent-%COMP%] .empty-avd-banner[_ngcontent-%COMP%] .banner-left[_ngcontent-%COMP%]{display:flex;align-items:center;gap:10px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .emulator-setup-guide-container[_ngcontent-%COMP%] .empty-avd-banner[_ngcontent-%COMP%] .banner-left[_ngcontent-%COMP%] .empty-avd-icon-box[_ngcontent-%COMP%]{width:34px;height:34px;border-radius:6px;background:#fff;border:1px solid #e2e8f0;color:#64748b;display:flex;align-items:center;justify-content:center;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .emulator-setup-guide-container[_ngcontent-%COMP%] .empty-avd-banner[_ngcontent-%COMP%] .banner-left[_ngcontent-%COMP%] .empty-avd-icon-box[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:19px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .emulator-setup-guide-container[_ngcontent-%COMP%] .empty-avd-banner[_ngcontent-%COMP%] .banner-left[_ngcontent-%COMP%] .banner-titles[_ngcontent-%COMP%] .banner-title-row[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .emulator-setup-guide-container[_ngcontent-%COMP%] .empty-avd-banner[_ngcontent-%COMP%] .banner-left[_ngcontent-%COMP%] .banner-titles[_ngcontent-%COMP%] .banner-title-row[_ngcontent-%COMP%] .empty-title[_ngcontent-%COMP%]{margin:0;font-size:13px;font-weight:600;color:#0f172a}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .emulator-setup-guide-container[_ngcontent-%COMP%] .empty-avd-banner[_ngcontent-%COMP%] .banner-left[_ngcontent-%COMP%] .banner-titles[_ngcontent-%COMP%] .empty-desc[_ngcontent-%COMP%]{margin:2px 0 0;font-size:12px;color:#475569}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .emulator-setup-guide-container[_ngcontent-%COMP%] .empty-avd-banner[_ngcontent-%COMP%] .mode-switch-pills[_ngcontent-%COMP%]{display:inline-flex;background:#fff;border:1px solid #e2e8f0;padding:2px;border-radius:6px;gap:2px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .emulator-setup-guide-container[_ngcontent-%COMP%] .empty-avd-banner[_ngcontent-%COMP%] .mode-switch-pills[_ngcontent-%COMP%] .pill-btn[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:4px;border:none;background:transparent;color:#475569;font-family:inherit;font-size:11.5px;font-weight:600;cursor:pointer;transition:all .15s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .emulator-setup-guide-container[_ngcontent-%COMP%] .empty-avd-banner[_ngcontent-%COMP%] .mode-switch-pills[_ngcontent-%COMP%] .pill-btn[_ngcontent-%COMP%] .pill-icon[_ngcontent-%COMP%]{font-size:14px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .emulator-setup-guide-container[_ngcontent-%COMP%] .empty-avd-banner[_ngcontent-%COMP%] .mode-switch-pills[_ngcontent-%COMP%] .pill-btn[_ngcontent-%COMP%]:hover{color:#0f172a}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .emulator-setup-guide-container[_ngcontent-%COMP%] .empty-avd-banner[_ngcontent-%COMP%] .mode-switch-pills[_ngcontent-%COMP%] .pill-btn.active[_ngcontent-%COMP%]{background:#1a73e8;color:#fff}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .emulator-setup-guide-container[_ngcontent-%COMP%] .emu-flow-grid[_ngcontent-%COMP%] .flow-step-card[_ngcontent-%COMP%] .guide-link[_ngcontent-%COMP%]{color:#1a73e8;font-weight:600;text-decoration:none}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .emulator-setup-guide-container[_ngcontent-%COMP%] .emu-flow-grid[_ngcontent-%COMP%] .flow-step-card[_ngcontent-%COMP%] .guide-link[_ngcontent-%COMP%]:hover{text-decoration:underline}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .emulator-setup-guide-container[_ngcontent-%COMP%] .cli-steps-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:8px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .emulator-setup-guide-container[_ngcontent-%COMP%] .cli-steps-list[_ngcontent-%COMP%] .cli-step-item[_ngcontent-%COMP%]{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .emulator-setup-guide-container[_ngcontent-%COMP%] .cli-steps-list[_ngcontent-%COMP%] .cli-step-item[_ngcontent-%COMP%] .step-badge-num[_ngcontent-%COMP%]{width:22px;height:22px;border-radius:50%;background:#eff6ff;color:#1a73e8;font-size:11.5px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .emulator-setup-guide-container[_ngcontent-%COMP%] .cli-steps-list[_ngcontent-%COMP%] .cli-step-item[_ngcontent-%COMP%] .step-content[_ngcontent-%COMP%]{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .emulator-setup-guide-container[_ngcontent-%COMP%] .cli-steps-list[_ngcontent-%COMP%] .cli-step-item[_ngcontent-%COMP%] .step-content[_ngcontent-%COMP%] .step-title[_ngcontent-%COMP%]{font-size:12.5px;font-weight:600;color:#0f172a}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .emulator-setup-guide-container[_ngcontent-%COMP%] .cli-steps-list[_ngcontent-%COMP%] .cli-step-item[_ngcontent-%COMP%] .step-content[_ngcontent-%COMP%] .step-text[_ngcontent-%COMP%]{margin:0;font-size:11.5px;color:#475569}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .emulator-setup-guide-container[_ngcontent-%COMP%] .cli-steps-list[_ngcontent-%COMP%] .cli-step-item[_ngcontent-%COMP%] .step-content[_ngcontent-%COMP%] .small-box[_ngcontent-%COMP%]{margin-top:4px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .usb-guide-intro[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .wifi-guide-intro[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .remote-guide-intro[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600;color:#475569}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .usb-guide-intro[_ngcontent-%COMP%] .intro-icon[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .wifi-guide-intro[_ngcontent-%COMP%] .intro-icon[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .remote-guide-intro[_ngcontent-%COMP%] .intro-icon[_ngcontent-%COMP%]{font-size:17px;color:#1a73e8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .steps-flow-grid[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}@media(max-width:900px){.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .steps-flow-grid[_ngcontent-%COMP%]{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .steps-flow-grid[_ngcontent-%COMP%]{grid-template-columns:1fr}}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .steps-flow-grid[_ngcontent-%COMP%] .flow-step-card[_ngcontent-%COMP%]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:12px 14px;display:flex;flex-direction:column;gap:6px;min-width:0;transition:all .15s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .steps-flow-grid[_ngcontent-%COMP%] .flow-step-card[_ngcontent-%COMP%]:hover{border-color:#cbd5e1;background:#fff}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .steps-flow-grid[_ngcontent-%COMP%] .flow-step-card[_ngcontent-%COMP%] .step-card-header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .steps-flow-grid[_ngcontent-%COMP%] .flow-step-card[_ngcontent-%COMP%] .step-card-header[_ngcontent-%COMP%] .step-number-badge[_ngcontent-%COMP%]{width:20px;height:20px;border-radius:4px;background:#1a73e8;color:#fff!important;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .steps-flow-grid[_ngcontent-%COMP%] .flow-step-card[_ngcontent-%COMP%] .step-card-header[_ngcontent-%COMP%] .step-card-icon[_ngcontent-%COMP%]{font-size:17px;color:#94a3b8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .steps-flow-grid[_ngcontent-%COMP%] .flow-step-card[_ngcontent-%COMP%] .step-card-title[_ngcontent-%COMP%]{font-size:12.5px;font-weight:600;color:#0f172a}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .steps-flow-grid[_ngcontent-%COMP%] .flow-step-card[_ngcontent-%COMP%] .step-card-desc[_ngcontent-%COMP%]{font-size:11.5px;color:#64748b;line-height:1.4}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .wifi-interactive-box[_ngcontent-%COMP%]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:12px 14px;display:flex;flex-direction:column;gap:10px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .wifi-interactive-box[_ngcontent-%COMP%] .wifi-form-row[_ngcontent-%COMP%]{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .wifi-interactive-box[_ngcontent-%COMP%] .wifi-form-row[_ngcontent-%COMP%] .wifi-input-col[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:3px;min-width:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .wifi-interactive-box[_ngcontent-%COMP%] .wifi-form-row[_ngcontent-%COMP%] .wifi-input-col.ip-col[_ngcontent-%COMP%]{flex:1 1 180px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .wifi-interactive-box[_ngcontent-%COMP%] .wifi-form-row[_ngcontent-%COMP%] .wifi-input-col.port-col[_ngcontent-%COMP%]{flex:0 1 90px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .wifi-interactive-box[_ngcontent-%COMP%] .wifi-form-row[_ngcontent-%COMP%] .wifi-input-col[_ngcontent-%COMP%] .wifi-label[_ngcontent-%COMP%]{font-size:11px;font-weight:600;color:#64748b}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .wifi-interactive-box[_ngcontent-%COMP%] .wifi-form-row[_ngcontent-%COMP%] .wifi-input-col[_ngcontent-%COMP%] .wifi-input-wrap[_ngcontent-%COMP%]{display:flex;align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:0 8px;height:34px;transition:border-color .15s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .wifi-interactive-box[_ngcontent-%COMP%] .wifi-form-row[_ngcontent-%COMP%] .wifi-input-col[_ngcontent-%COMP%] .wifi-input-wrap[_ngcontent-%COMP%]:focus-within{border-color:#1a73e8;box-shadow:0 0 0 2px #1a73e81a}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .wifi-interactive-box[_ngcontent-%COMP%] .wifi-form-row[_ngcontent-%COMP%] .wifi-input-col[_ngcontent-%COMP%] .wifi-input-wrap[_ngcontent-%COMP%] .wrap-icon[_ngcontent-%COMP%]{font-size:15px;color:#94a3b8;margin-right:5px;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .wifi-interactive-box[_ngcontent-%COMP%] .wifi-form-row[_ngcontent-%COMP%] .wifi-input-col[_ngcontent-%COMP%] .wifi-input-wrap[_ngcontent-%COMP%] .wifi-input[_ngcontent-%COMP%]{flex:1;min-width:0;border:none;outline:none;background:transparent;font-family:JetBrains Mono,Fira Code,Roboto Mono,SFMono-Regular,Consolas,monospace;font-size:12px;color:#0f172a}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .wifi-interactive-box[_ngcontent-%COMP%] .wifi-form-row[_ngcontent-%COMP%] .wifi-input-col[_ngcontent-%COMP%] .wifi-input-wrap[_ngcontent-%COMP%] .wifi-input[_ngcontent-%COMP%]::placeholder{color:#94a3b8;font-family:Google Sans Text,Google Sans,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:11.5px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .wifi-interactive-box[_ngcontent-%COMP%] .wifi-form-row[_ngcontent-%COMP%] .wifi-btn-col[_ngcontent-%COMP%]{flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .wifi-interactive-box[_ngcontent-%COMP%] .wifi-form-row[_ngcontent-%COMP%] .wifi-btn-col[_ngcontent-%COMP%] .btn-wifi-connect[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:0 16px;height:34px;background:linear-gradient(135deg,#1a73e8eb,#2563ebd9);backdrop-filter:blur(10px) saturate(180%);-webkit-backdrop-filter:blur(10px) saturate(180%);border:1px solid rgba(255,255,255,.28);box-shadow:0 4px 14px #1a73e852,inset 0 1px 1px #ffffff73;color:#fff!important;transition:background .2s cubic-bezier(.4,0,.2,1),border-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1),opacity .2s cubic-bezier(.4,0,.2,1)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .wifi-interactive-box[_ngcontent-%COMP%] .wifi-form-row[_ngcontent-%COMP%] .wifi-btn-col[_ngcontent-%COMP%] .btn-wifi-connect[_ngcontent-%COMP%] span[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .wifi-interactive-box[_ngcontent-%COMP%] .wifi-form-row[_ngcontent-%COMP%] .wifi-btn-col[_ngcontent-%COMP%] .btn-wifi-connect[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .wifi-interactive-box[_ngcontent-%COMP%] .wifi-form-row[_ngcontent-%COMP%] .wifi-btn-col[_ngcontent-%COMP%] .btn-wifi-connect[_ngcontent-%COMP%] .run-icon[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .wifi-interactive-box[_ngcontent-%COMP%] .wifi-form-row[_ngcontent-%COMP%] .wifi-btn-col[_ngcontent-%COMP%] .btn-wifi-connect[_ngcontent-%COMP%] .action-icon[_ngcontent-%COMP%]{color:#fff!important}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .wifi-interactive-box[_ngcontent-%COMP%] .wifi-form-row[_ngcontent-%COMP%] .wifi-btn-col[_ngcontent-%COMP%] .btn-wifi-connect[_ngcontent-%COMP%]:hover:not(:disabled){background:linear-gradient(135deg,#1a73e8,#2563ebf2);box-shadow:0 6px 20px #1a73e86b,inset 0 1px 1px #fff9;transform:translateY(-1px)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .wifi-interactive-box[_ngcontent-%COMP%] .wifi-form-row[_ngcontent-%COMP%] .wifi-btn-col[_ngcontent-%COMP%] .btn-wifi-connect[_ngcontent-%COMP%]:active:not(:disabled){transform:scale(.97) translateY(0);box-shadow:0 2px 8px #1a73e859}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .wifi-interactive-box[_ngcontent-%COMP%] .wifi-form-row[_ngcontent-%COMP%] .wifi-btn-col[_ngcontent-%COMP%] .btn-wifi-connect[_ngcontent-%COMP%]:disabled{background:#94a3b880;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);box-shadow:none;opacity:.65;cursor:not-allowed;transform:none}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .wifi-interactive-box[_ngcontent-%COMP%] .wifi-form-row[_ngcontent-%COMP%] .wifi-btn-col[_ngcontent-%COMP%] .btn-wifi-connect[_ngcontent-%COMP%]{border-radius:6px;font-family:inherit;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .wifi-interactive-box[_ngcontent-%COMP%] .wifi-form-row[_ngcontent-%COMP%] .wifi-btn-col[_ngcontent-%COMP%] .btn-wifi-connect[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:16px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .wifi-interactive-box[_ngcontent-%COMP%] .wifi-form-row[_ngcontent-%COMP%] .wifi-btn-col[_ngcontent-%COMP%] .btn-wifi-connect[_ngcontent-%COMP%] .spinning[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_spin 1s linear infinite}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .wifi-interactive-box[_ngcontent-%COMP%] .wifi-status-alert[_ngcontent-%COMP%]{display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:6px;font-size:11.5px;font-weight:600}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .wifi-interactive-box[_ngcontent-%COMP%] .wifi-status-alert[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:15px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .wifi-interactive-box[_ngcontent-%COMP%] .wifi-status-alert.success[_ngcontent-%COMP%]{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .wifi-interactive-box[_ngcontent-%COMP%] .wifi-status-alert.error[_ngcontent-%COMP%]{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .info-callout-box[_ngcontent-%COMP%]{display:flex;align-items:flex-start;gap:8px;padding:8px 12px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;font-size:11.5px;color:#1557b0;line-height:1.45}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel[_ngcontent-%COMP%] .info-callout-box[_ngcontent-%COMP%] .callout-icon[_ngcontent-%COMP%]{font-size:16px;color:#1a73e8;flex-shrink:0;margin-top:1px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:10px;padding:12px 14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-form-row[_ngcontent-%COMP%]{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-form-row[_ngcontent-%COMP%] .remote-adb-input-col[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:3px;min-width:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-form-row[_ngcontent-%COMP%] .remote-adb-input-col.host-col[_ngcontent-%COMP%]{flex:1 1 220px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-form-row[_ngcontent-%COMP%] .remote-adb-input-col.port-col[_ngcontent-%COMP%]{flex:0 1 120px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-form-row[_ngcontent-%COMP%] .remote-adb-input-col[_ngcontent-%COMP%] .remote-adb-label[_ngcontent-%COMP%]{color:#64748b;font-size:11px;font-weight:600}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-form-row[_ngcontent-%COMP%] .remote-adb-input-col[_ngcontent-%COMP%] .remote-adb-input-wrap[_ngcontent-%COMP%]{display:flex;align-items:center;height:36px;padding:0 9px;background:#fff;border:1px solid #e2e8f0;border-radius:6px;transition:border-color .15s ease,box-shadow .15s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-form-row[_ngcontent-%COMP%] .remote-adb-input-col[_ngcontent-%COMP%] .remote-adb-input-wrap[_ngcontent-%COMP%]:focus-within{border-color:#1a73e8;box-shadow:0 0 0 2px #1a73e81a}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-form-row[_ngcontent-%COMP%] .remote-adb-input-col[_ngcontent-%COMP%] .remote-adb-input-wrap[_ngcontent-%COMP%] .wrap-icon[_ngcontent-%COMP%]{margin-right:6px;color:#94a3b8;font-size:15px;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-form-row[_ngcontent-%COMP%] .remote-adb-input-col[_ngcontent-%COMP%] .remote-adb-input-wrap[_ngcontent-%COMP%] .remote-adb-input[_ngcontent-%COMP%]{flex:1;min-width:0;border:0;outline:0;background:transparent;color:#0f172a;font-family:JetBrains Mono,Fira Code,Roboto Mono,SFMono-Regular,Consolas,monospace;font-size:12px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-form-row[_ngcontent-%COMP%] .remote-adb-input-col[_ngcontent-%COMP%] .remote-adb-input-wrap[_ngcontent-%COMP%] .remote-adb-input[_ngcontent-%COMP%]::placeholder{color:#94a3b8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-form-row[_ngcontent-%COMP%] .remote-adb-btn-col[_ngcontent-%COMP%]{flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-form-row[_ngcontent-%COMP%] .remote-adb-btn-col[_ngcontent-%COMP%] .btn-remote-adb-connect[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;gap:5px;height:36px;padding:0 16px;background:linear-gradient(135deg,#1a73e8eb,#2563ebd9);backdrop-filter:blur(10px) saturate(180%);-webkit-backdrop-filter:blur(10px) saturate(180%);border:1px solid rgba(255,255,255,.28);box-shadow:0 4px 14px #1a73e852,inset 0 1px 1px #ffffff73;color:#fff!important;transition:background .2s cubic-bezier(.4,0,.2,1),border-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1),opacity .2s cubic-bezier(.4,0,.2,1)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-form-row[_ngcontent-%COMP%] .remote-adb-btn-col[_ngcontent-%COMP%] .btn-remote-adb-connect[_ngcontent-%COMP%] span[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-form-row[_ngcontent-%COMP%] .remote-adb-btn-col[_ngcontent-%COMP%] .btn-remote-adb-connect[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-form-row[_ngcontent-%COMP%] .remote-adb-btn-col[_ngcontent-%COMP%] .btn-remote-adb-connect[_ngcontent-%COMP%] .run-icon[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-form-row[_ngcontent-%COMP%] .remote-adb-btn-col[_ngcontent-%COMP%] .btn-remote-adb-connect[_ngcontent-%COMP%] .action-icon[_ngcontent-%COMP%]{color:#fff!important}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-form-row[_ngcontent-%COMP%] .remote-adb-btn-col[_ngcontent-%COMP%] .btn-remote-adb-connect[_ngcontent-%COMP%]:hover:not(:disabled){background:linear-gradient(135deg,#1a73e8,#2563ebf2);box-shadow:0 6px 20px #1a73e86b,inset 0 1px 1px #fff9;transform:translateY(-1px)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-form-row[_ngcontent-%COMP%] .remote-adb-btn-col[_ngcontent-%COMP%] .btn-remote-adb-connect[_ngcontent-%COMP%]:active:not(:disabled){transform:scale(.97) translateY(0);box-shadow:0 2px 8px #1a73e859}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-form-row[_ngcontent-%COMP%] .remote-adb-btn-col[_ngcontent-%COMP%] .btn-remote-adb-connect[_ngcontent-%COMP%]:disabled{background:#94a3b880;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);box-shadow:none;opacity:.65;cursor:not-allowed;transform:none}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-form-row[_ngcontent-%COMP%] .remote-adb-btn-col[_ngcontent-%COMP%] .btn-remote-adb-connect[_ngcontent-%COMP%]{border-radius:6px;font-family:inherit;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-form-row[_ngcontent-%COMP%] .remote-adb-btn-col[_ngcontent-%COMP%] .btn-remote-adb-connect[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:16px}@media(max-width:640px){.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-form-row[_ngcontent-%COMP%]{align-items:stretch;flex-direction:column}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-form-row[_ngcontent-%COMP%] .remote-adb-input-col[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-form-row[_ngcontent-%COMP%] .remote-adb-input-col.host-col[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-form-row[_ngcontent-%COMP%] .remote-adb-input-col.port-col[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-form-row[_ngcontent-%COMP%] .remote-adb-btn-col[_ngcontent-%COMP%]{flex:1 1 auto;width:100%}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-form-row[_ngcontent-%COMP%] .remote-adb-btn-col[_ngcontent-%COMP%] .btn-remote-adb-connect[_ngcontent-%COMP%]{width:100%}}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remember-remote-adb[_ngcontent-%COMP%]{display:inline-flex;align-items:center;align-self:flex-start;gap:7px;color:#475569;font-size:11.5px;cursor:pointer}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remember-remote-adb[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{width:15px;height:15px;margin:0;accent-color:#1a73e8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .btn-use-tested-endpoint[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;align-self:flex-end;gap:5px;min-width:150px;height:36px;padding:0 16px;background:linear-gradient(135deg,#1a73e8eb,#2563ebd9);backdrop-filter:blur(10px) saturate(180%);-webkit-backdrop-filter:blur(10px) saturate(180%);border:1px solid rgba(255,255,255,.28);box-shadow:0 4px 14px #1a73e852,inset 0 1px 1px #ffffff73;color:#fff!important;transition:background .2s cubic-bezier(.4,0,.2,1),border-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1),opacity .2s cubic-bezier(.4,0,.2,1)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .btn-use-tested-endpoint[_ngcontent-%COMP%] span[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .btn-use-tested-endpoint[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .btn-use-tested-endpoint[_ngcontent-%COMP%] .run-icon[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .btn-use-tested-endpoint[_ngcontent-%COMP%] .action-icon[_ngcontent-%COMP%]{color:#fff!important}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .btn-use-tested-endpoint[_ngcontent-%COMP%]:hover:not(:disabled){background:linear-gradient(135deg,#1a73e8,#2563ebf2);box-shadow:0 6px 20px #1a73e86b,inset 0 1px 1px #fff9;transform:translateY(-1px)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .btn-use-tested-endpoint[_ngcontent-%COMP%]:active:not(:disabled){transform:scale(.97) translateY(0);box-shadow:0 2px 8px #1a73e859}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .btn-use-tested-endpoint[_ngcontent-%COMP%]:disabled{background:#94a3b880;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);box-shadow:none;opacity:.65;cursor:not-allowed;transform:none}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .btn-use-tested-endpoint[_ngcontent-%COMP%]{border-radius:6px;font-family:inherit;font-size:12px;font-weight:600;cursor:pointer}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .btn-use-tested-endpoint[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:16px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-status-alert[_ngcontent-%COMP%]{display:flex;align-items:flex-start;gap:6px;padding:7px 10px;border-radius:6px;font-size:11.5px;font-weight:600;line-height:1.4}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-status-alert[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:15px;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-status-alert.success[_ngcontent-%COMP%]{color:#047857;background:#ecfdf5;border:1px solid #a7f3d0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-adb-status-alert.error[_ngcontent-%COMP%]{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-device-results[_ngcontent-%COMP%]{display:flex;flex-direction:column;overflow:hidden;background:#fff;border:1px solid #e2e8f0;border-radius:7px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-device-results[_ngcontent-%COMP%] .remote-device-row[_ngcontent-%COMP%]{display:flex;align-items:center;gap:9px;min-width:0;padding:8px 10px;border-bottom:1px solid #f1f5f9}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-device-results[_ngcontent-%COMP%] .remote-device-row[_ngcontent-%COMP%]:last-child{border-bottom:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-device-results[_ngcontent-%COMP%] .remote-device-row[_ngcontent-%COMP%] > .material-symbols-outlined[_ngcontent-%COMP%]{color:#1a73e8;font-size:17px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-device-results[_ngcontent-%COMP%] .remote-device-row[_ngcontent-%COMP%] .remote-device-copy[_ngcontent-%COMP%]{display:flex;flex:1;flex-direction:column;min-width:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-device-results[_ngcontent-%COMP%] .remote-device-row[_ngcontent-%COMP%] .remote-device-copy[_ngcontent-%COMP%] strong[_ngcontent-%COMP%]{color:#0f172a;font-size:12px;font-weight:600}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-device-results[_ngcontent-%COMP%] .remote-device-row[_ngcontent-%COMP%] .remote-device-copy[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{overflow:hidden;color:#64748b;font-family:JetBrains Mono,Fira Code,Roboto Mono,SFMono-Regular,Consolas,monospace;font-size:10.5px;text-overflow:ellipsis;white-space:nowrap}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-device-results[_ngcontent-%COMP%] .remote-device-row[_ngcontent-%COMP%] .remote-device-state[_ngcontent-%COMP%]{color:#b45309;font-size:10.5px;font-weight:600;text-transform:capitalize}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-interactive-box[_ngcontent-%COMP%] .remote-device-results[_ngcontent-%COMP%] .remote-device-row[_ngcontent-%COMP%] .remote-device-state.ready[_ngcontent-%COMP%]{color:#047857}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .foolproof-guide-container[_ngcontent-%COMP%] .method-details-panel.remote-adb-panel[_ngcontent-%COMP%] .remote-adb-explanation[_ngcontent-%COMP%]{margin:0;color:#64748b;font-size:11.5px;line-height:1.5}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%]{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fffbeb;border:1px solid #fde68a;border-radius:10px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .alert-icon[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .alert-icon[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .alert-icon[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .alert-icon[_ngcontent-%COMP%]{font-size:24px;color:#d97706;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .unauth-details[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .locked-details[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .unauth-details[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .locked-details[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .unauth-details[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .locked-details[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .unauth-details[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .locked-details[_ngcontent-%COMP%]{flex:1;min-width:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .unauth-details[_ngcontent-%COMP%] .unauth-title[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .unauth-details[_ngcontent-%COMP%] .locked-title[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .locked-details[_ngcontent-%COMP%] .unauth-title[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .locked-details[_ngcontent-%COMP%] .locked-title[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .unauth-details[_ngcontent-%COMP%] .unauth-title[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .unauth-details[_ngcontent-%COMP%] .locked-title[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .locked-details[_ngcontent-%COMP%] .unauth-title[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .locked-details[_ngcontent-%COMP%] .locked-title[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .unauth-details[_ngcontent-%COMP%] .unauth-title[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .unauth-details[_ngcontent-%COMP%] .locked-title[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .locked-details[_ngcontent-%COMP%] .unauth-title[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .locked-details[_ngcontent-%COMP%] .locked-title[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .unauth-details[_ngcontent-%COMP%] .unauth-title[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .unauth-details[_ngcontent-%COMP%] .locked-title[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .locked-details[_ngcontent-%COMP%] .unauth-title[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .locked-details[_ngcontent-%COMP%] .locked-title[_ngcontent-%COMP%]{font-size:13px;font-weight:600;color:#b45309;margin-bottom:2px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .unauth-details[_ngcontent-%COMP%] .unauth-desc[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .unauth-details[_ngcontent-%COMP%] .locked-desc[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .locked-details[_ngcontent-%COMP%] .unauth-desc[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .locked-details[_ngcontent-%COMP%] .locked-desc[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .unauth-details[_ngcontent-%COMP%] .unauth-desc[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .unauth-details[_ngcontent-%COMP%] .locked-desc[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .locked-details[_ngcontent-%COMP%] .unauth-desc[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .locked-details[_ngcontent-%COMP%] .locked-desc[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .unauth-details[_ngcontent-%COMP%] .unauth-desc[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .unauth-details[_ngcontent-%COMP%] .locked-desc[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .locked-details[_ngcontent-%COMP%] .unauth-desc[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .locked-details[_ngcontent-%COMP%] .locked-desc[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .unauth-details[_ngcontent-%COMP%] .unauth-desc[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .unauth-details[_ngcontent-%COMP%] .locked-desc[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .locked-details[_ngcontent-%COMP%] .unauth-desc[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .locked-details[_ngcontent-%COMP%] .locked-desc[_ngcontent-%COMP%]{font-size:11.5px;color:#78350f;line-height:1.4}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .btn-retry-auth[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .btn-check-unlock[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .btn-retry-auth[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .btn-check-unlock[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .btn-retry-auth[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .btn-check-unlock[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .btn-retry-auth[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .btn-check-unlock[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:4px;padding:0 12px;height:30px;background:#fef3c7bf;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(253,230,138,.85);border-radius:6px;box-shadow:0 1px 3px #d9770614,inset 0 1px 1px #fffc;font-family:inherit;font-size:11.5px;font-weight:600;color:#b45309;cursor:pointer;flex-shrink:0;transition:all .2s cubic-bezier(.4,0,.2,1)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .btn-retry-auth[_ngcontent-%COMP%]:hover:not(:disabled), .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .btn-check-unlock[_ngcontent-%COMP%]:hover:not(:disabled), .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .btn-retry-auth[_ngcontent-%COMP%]:hover:not(:disabled), .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .btn-check-unlock[_ngcontent-%COMP%]:hover:not(:disabled), .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .btn-retry-auth[_ngcontent-%COMP%]:hover:not(:disabled), .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .btn-check-unlock[_ngcontent-%COMP%]:hover:not(:disabled), .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .btn-retry-auth[_ngcontent-%COMP%]:hover:not(:disabled), .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .btn-check-unlock[_ngcontent-%COMP%]:hover:not(:disabled){background:#fde68af2;border-color:#d97706;transform:translateY(-.5px);box-shadow:0 3px 8px #d9770626}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .btn-retry-auth[_ngcontent-%COMP%]:active, .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .btn-check-unlock[_ngcontent-%COMP%]:active, .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .btn-retry-auth[_ngcontent-%COMP%]:active, .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .btn-check-unlock[_ngcontent-%COMP%]:active, .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .btn-retry-auth[_ngcontent-%COMP%]:active, .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .btn-check-unlock[_ngcontent-%COMP%]:active, .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .btn-retry-auth[_ngcontent-%COMP%]:active, .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .btn-check-unlock[_ngcontent-%COMP%]:active{transform:scale(.97)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .btn-retry-auth[_ngcontent-%COMP%]:disabled, .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .btn-check-unlock[_ngcontent-%COMP%]:disabled, .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .btn-retry-auth[_ngcontent-%COMP%]:disabled, .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .unauthorized-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .btn-check-unlock[_ngcontent-%COMP%]:disabled, .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .btn-retry-auth[_ngcontent-%COMP%]:disabled, .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .unauthorized-card[_ngcontent-%COMP%] .btn-check-unlock[_ngcontent-%COMP%]:disabled, .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .btn-retry-auth[_ngcontent-%COMP%]:disabled, .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .device-locked-panel[_ngcontent-%COMP%] .device-locked-card[_ngcontent-%COMP%] .btn-check-unlock[_ngcontent-%COMP%]:disabled{cursor:not-allowed;opacity:.65}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .adb-missing-panel[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:10px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .adb-missing-panel[_ngcontent-%COMP%] .error-msg-box[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;padding:10px 12px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;font-size:12px;color:#b91c1c}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .adb-missing-panel[_ngcontent-%COMP%] .error-msg-box[_ngcontent-%COMP%] .err-icon[_ngcontent-%COMP%]{font-size:17px;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .adb-missing-panel[_ngcontent-%COMP%] .install-commands-row[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .adb-missing-panel[_ngcontent-%COMP%] .install-commands-row[_ngcontent-%COMP%] .install-card[_ngcontent-%COMP%]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:10px 12px;display:flex;flex-direction:column;gap:6px;transition:all .15s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .adb-missing-panel[_ngcontent-%COMP%] .install-commands-row[_ngcontent-%COMP%] .install-card.highlight-os[_ngcontent-%COMP%]{background:#eff6ff;border-color:#bfdbfe}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .adb-missing-panel[_ngcontent-%COMP%] .install-commands-row[_ngcontent-%COMP%] .install-card[_ngcontent-%COMP%] .install-os[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;font-size:11.5px;font-weight:600;color:#475569}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .adb-missing-panel[_ngcontent-%COMP%] .install-commands-row[_ngcontent-%COMP%] .install-card[_ngcontent-%COMP%] .install-os[_ngcontent-%COMP%] .detected-badge[_ngcontent-%COMP%]{font-size:9.5px;font-weight:700;color:#1a73e8;background:#dbeafe;padding:1px 5px;border-radius:4px;text-transform:uppercase}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ready-banner-footer[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #00000008,0 4px 12px #00000005;transition:all .2s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ready-banner-footer[_ngcontent-%COMP%]:hover{border-color:#cbd5e1}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ready-banner-footer[_ngcontent-%COMP%] .ready-banner-left[_ngcontent-%COMP%]{display:flex;align-items:center;gap:14px;min-width:0;flex:1}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ready-banner-footer[_ngcontent-%COMP%] .ready-banner-left[_ngcontent-%COMP%] .step-badge[_ngcontent-%COMP%]{width:32px;height:32px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;font-size:13.5px;font-weight:700;background:#f1f5f9;color:#475569;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ready-banner-footer[_ngcontent-%COMP%] .ready-banner-left[_ngcontent-%COMP%] .step-badge[_ngcontent-%COMP%] .step-check-icon[_ngcontent-%COMP%]{font-size:18px;font-weight:700;color:inherit}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ready-banner-footer[_ngcontent-%COMP%] .ready-banner-left[_ngcontent-%COMP%] .step-badge.step-pass[_ngcontent-%COMP%]{background:#ecfdf5;color:#059669}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ready-banner-footer[_ngcontent-%COMP%] .ready-banner-left[_ngcontent-%COMP%] .ready-text-group[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:2px;min-width:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ready-banner-footer[_ngcontent-%COMP%] .ready-banner-left[_ngcontent-%COMP%] .ready-text-group[_ngcontent-%COMP%] .ready-title[_ngcontent-%COMP%]{margin:0;font-size:15px;font-weight:600;color:#0f172a;letter-spacing:-.01em}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ready-banner-footer[_ngcontent-%COMP%] .ready-banner-left[_ngcontent-%COMP%] .ready-text-group[_ngcontent-%COMP%] .ready-desc[_ngcontent-%COMP%]{margin:0;font-size:12.5px;color:#475569;line-height:1.4}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ready-banner-footer[_ngcontent-%COMP%] .btn-proceed-launch[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:6px;padding:0 18px;height:36px;background:linear-gradient(135deg,#1a73e8eb,#2563ebd9);backdrop-filter:blur(10px) saturate(180%);-webkit-backdrop-filter:blur(10px) saturate(180%);border:1px solid rgba(255,255,255,.28);box-shadow:0 4px 14px #1a73e852,inset 0 1px 1px #ffffff73;color:#fff!important;transition:background .2s cubic-bezier(.4,0,.2,1),border-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1),opacity .2s cubic-bezier(.4,0,.2,1)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ready-banner-footer[_ngcontent-%COMP%] .btn-proceed-launch[_ngcontent-%COMP%] span[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ready-banner-footer[_ngcontent-%COMP%] .btn-proceed-launch[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ready-banner-footer[_ngcontent-%COMP%] .btn-proceed-launch[_ngcontent-%COMP%] .run-icon[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ready-banner-footer[_ngcontent-%COMP%] .btn-proceed-launch[_ngcontent-%COMP%] .action-icon[_ngcontent-%COMP%]{color:#fff!important}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ready-banner-footer[_ngcontent-%COMP%] .btn-proceed-launch[_ngcontent-%COMP%]:hover:not(:disabled){background:linear-gradient(135deg,#1a73e8,#2563ebf2);box-shadow:0 6px 20px #1a73e86b,inset 0 1px 1px #fff9;transform:translateY(-1px)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ready-banner-footer[_ngcontent-%COMP%] .btn-proceed-launch[_ngcontent-%COMP%]:active:not(:disabled){transform:scale(.97) translateY(0);box-shadow:0 2px 8px #1a73e859}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ready-banner-footer[_ngcontent-%COMP%] .btn-proceed-launch[_ngcontent-%COMP%]:disabled{background:#94a3b880;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);box-shadow:none;opacity:.65;cursor:not-allowed;transform:none}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ready-banner-footer[_ngcontent-%COMP%] .btn-proceed-launch[_ngcontent-%COMP%]{border-radius:8px;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ready-banner-footer[_ngcontent-%COMP%] .btn-proceed-launch[_ngcontent-%COMP%] .rocket-icon[_ngcontent-%COMP%]{font-size:16px;transition:transform .2s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ready-banner-footer[_ngcontent-%COMP%] .btn-proceed-launch[_ngcontent-%COMP%]:hover:not(:disabled) .rocket-icon[_ngcontent-%COMP%]{transform:translate(2px) translateY(-2px)}@media(max-width:768px){.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ready-banner-footer[_ngcontent-%COMP%]{flex-direction:column;align-items:stretch}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .setup-guide-view[_ngcontent-%COMP%] .ready-banner-footer[_ngcontent-%COMP%] .btn-proceed-launch[_ngcontent-%COMP%]{justify-content:center}}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .code-box[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:space-between;gap:8px;padding:0 6px 0 10px;height:32px;background:#0f172a;color:#f8fafc;border-radius:6px;font-family:JetBrains Mono,Fira Code,Roboto Mono,SFMono-Regular,Consolas,monospace;font-size:11.5px;min-width:0;max-width:100%}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .code-box[_ngcontent-%COMP%] .terminal-prefix[_ngcontent-%COMP%]{color:#64748b;-webkit-user-select:none;user-select:none;flex-shrink:0;font-weight:700;font-size:11px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .code-box[_ngcontent-%COMP%] .code-text[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .code-box[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{flex:1;min-width:0;color:#38bdf8!important;font-family:inherit;background:transparent!important;border:none!important;padding:0!important;font-size:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .code-box[_ngcontent-%COMP%] .btn-copy-code[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;gap:3px;padding:0 8px;height:22px;background:#ffffff24;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff!important;border:1px solid rgba(255,255,255,.2);border-radius:5px;box-shadow:inset 0 1px 1px #fff3;font-family:Google Sans Text,Google Sans,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:10.5px;font-weight:600;cursor:pointer;transition:all .18s ease;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .code-box[_ngcontent-%COMP%] .btn-copy-code[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .code-box[_ngcontent-%COMP%] .btn-copy-code[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:#fff!important}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .code-box[_ngcontent-%COMP%] .btn-copy-code[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:12px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .code-box[_ngcontent-%COMP%] .btn-copy-code[_ngcontent-%COMP%]:hover{background:#ffffff42;border-color:#ffffff59;transform:translateY(-.5px)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .code-box[_ngcontent-%COMP%] .btn-copy-code[_ngcontent-%COMP%]:active{transform:scale(.96)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .code-box[_ngcontent-%COMP%] .btn-copy-code.copied[_ngcontent-%COMP%]{background:#10b98159;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-color:#10b98199;color:#34d399!important;box-shadow:0 0 10px #10b9814d,inset 0 1px 1px #fff6}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .code-box[_ngcontent-%COMP%] .btn-copy-code.copied[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .code-box[_ngcontent-%COMP%] .btn-copy-code.copied[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:#34d399!important}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .code-box.small-box[_ngcontent-%COMP%]{height:30px;font-size:11.5px;padding:0 6px 0 10px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .code-box.small-box[_ngcontent-%COMP%] .btn-copy-code[_ngcontent-%COMP%]{height:22px;padding:0 8px;font-size:10.5px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .code-box.small-box[_ngcontent-%COMP%] .btn-copy-code[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:12px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:12px;animation:_ngcontent-%COMP%_fadeIn .22s cubic-bezier(.4,0,.2,1)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .launcher-warning-bar[_ngcontent-%COMP%]{display:flex;align-items:center;gap:10px;padding:10px 16px;background:#fffbeb;border:1px solid #fde68a;border-radius:12px;color:#92400e;font-size:13px;cursor:pointer;transition:all .15s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .launcher-warning-bar[_ngcontent-%COMP%] .warn-icon[_ngcontent-%COMP%]{font-size:18px;color:#d97706;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .launcher-warning-bar[_ngcontent-%COMP%] .arrow[_ngcontent-%COMP%]{font-size:16px;margin-left:auto}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .launcher-warning-bar[_ngcontent-%COMP%]:hover{background:#fef3c7;border-color:#fcd34d}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%]{background:#ffffffe0;backdrop-filter:blur(16px) saturate(190%);-webkit-backdrop-filter:blur(16px) saturate(190%);border:1px solid rgba(255,255,255,.95);box-shadow:0 20px 50px -12px #0f172a14,0 1px 3px #00000005,inset 0 1px 1px #fffffff2;border-radius:20px;padding:18px 20px 14px;transition:border-color .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1),background .3s cubic-bezier(.4,0,.2,1);position:relative}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card.is-pro-active[_ngcontent-%COMP%]{border-color:#ddd6fef2;box-shadow:0 24px 60px -12px #6366f129,0 1px 3px #00000005,inset 0 1px 1px #fffffff2}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .intent-suggestion-strip[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;background:linear-gradient(135deg,#eef2fff2,#f5f3fff2);border:1px solid rgba(199,210,254,.85);border-radius:10px;margin-bottom:12px;animation:_ngcontent-%COMP%_slideUpFade .22s cubic-bezier(.4,0,.2,1)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .intent-suggestion-strip[_ngcontent-%COMP%] .suggestion-left[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;min-width:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .intent-suggestion-strip[_ngcontent-%COMP%] .suggestion-left[_ngcontent-%COMP%] .sparkle-icon[_ngcontent-%COMP%]{font-size:17px;color:#6366f1;flex-shrink:0;animation:_ngcontent-%COMP%_sparklePulse 2.5s ease-in-out infinite alternate}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .intent-suggestion-strip[_ngcontent-%COMP%] .suggestion-left[_ngcontent-%COMP%] .suggestion-text[_ngcontent-%COMP%]{font-size:12.5px;color:#3730a3;line-height:1.4}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .intent-suggestion-strip[_ngcontent-%COMP%] .suggestion-left[_ngcontent-%COMP%] .suggestion-text[_ngcontent-%COMP%] strong[_ngcontent-%COMP%]{color:#1e1b4b;font-weight:600}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .intent-suggestion-strip[_ngcontent-%COMP%] .btn-switch-pro[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:6px;border:none;background:#6366f1;color:#fff;font-family:inherit;font-size:11.5px;font-weight:600;cursor:pointer;flex-shrink:0;transition:all .18s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #6366f140}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .intent-suggestion-strip[_ngcontent-%COMP%] .btn-switch-pro[_ngcontent-%COMP%] .btn-arrow[_ngcontent-%COMP%]{font-size:14px;transition:transform .15s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .intent-suggestion-strip[_ngcontent-%COMP%] .btn-switch-pro[_ngcontent-%COMP%]:hover{background:#4f46e5;box-shadow:0 2px 6px #6366f159;transform:translateY(-.5px)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .intent-suggestion-strip[_ngcontent-%COMP%] .btn-switch-pro[_ngcontent-%COMP%]:hover .btn-arrow[_ngcontent-%COMP%]{transform:translate(2px)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .intent-suggestion-strip[_ngcontent-%COMP%] .btn-switch-pro[_ngcontent-%COMP%]:active{transform:scale(.96)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-input-area[_ngcontent-%COMP%]{width:100%}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-input-area[_ngcontent-%COMP%] .composer-textarea[_ngcontent-%COMP%]{width:100%;border:none;outline:none;background:transparent;padding:0;margin:0;font-family:inherit;font-size:15.5px;line-height:1.6;color:#0f172a;resize:vertical;min-height:90px;letter-spacing:-.01em}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-input-area[_ngcontent-%COMP%] .composer-textarea[_ngcontent-%COMP%]::placeholder{color:#94a3b8;font-weight:400}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-input-area[_ngcontent-%COMP%] .composer-textarea[_ngcontent-%COMP%]:disabled{color:#94a3b8;cursor:not-allowed}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-model-descriptor[_ngcontent-%COMP%]{display:flex;align-items:center;gap:9px;padding:8px 12px;border-radius:9px;background:#f8fafcbf;border:1px solid rgba(241,245,249,.95);margin-top:10px;margin-bottom:12px;transition:all .25s cubic-bezier(.4,0,.2,1)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-model-descriptor[_ngcontent-%COMP%] .descriptor-icon-wrap[_ngcontent-%COMP%]{width:22px;height:22px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;background:#1a73e81a;color:#1a73e8;flex-shrink:0;transition:all .25s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-model-descriptor[_ngcontent-%COMP%] .descriptor-icon-wrap[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:14px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-model-descriptor[_ngcontent-%COMP%] .descriptor-body[_ngcontent-%COMP%]{flex:1;min-width:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-model-descriptor[_ngcontent-%COMP%] .descriptor-body[_ngcontent-%COMP%] .desc-line[_ngcontent-%COMP%]{margin:0;font-size:12.5px;line-height:1.45;color:#475569;letter-spacing:-.005em}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-model-descriptor[_ngcontent-%COMP%] .descriptor-body[_ngcontent-%COMP%] .desc-line[_ngcontent-%COMP%] .mode-name[_ngcontent-%COMP%]{font-weight:700;color:#0f172a}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-model-descriptor[_ngcontent-%COMP%] .descriptor-body[_ngcontent-%COMP%] .desc-line[_ngcontent-%COMP%] .bullet[_ngcontent-%COMP%]{color:#94a3b8;margin:0 3px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-model-descriptor[_ngcontent-%COMP%] .descriptor-body[_ngcontent-%COMP%] .desc-line[_ngcontent-%COMP%] strong[_ngcontent-%COMP%]{color:#0f172a;font-weight:600}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-model-descriptor[_ngcontent-%COMP%] .descriptor-body[_ngcontent-%COMP%] .desc-line[_ngcontent-%COMP%] .limitation-tag[_ngcontent-%COMP%]{color:#64748b;font-size:11.5px;margin-left:3px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-model-descriptor.is-pro[_ngcontent-%COMP%]{background:linear-gradient(135deg,#f5f3ffcc,#faf5ffcc);border-color:#ede9fef2}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-model-descriptor.is-pro[_ngcontent-%COMP%] .descriptor-icon-wrap[_ngcontent-%COMP%]{background:#7c3aed1f;color:#7c3aed}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-model-descriptor.is-pro[_ngcontent-%COMP%] .descriptor-body[_ngcontent-%COMP%] .desc-line[_ngcontent-%COMP%]{color:#334155}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-model-descriptor.is-pro[_ngcontent-%COMP%] .descriptor-body[_ngcontent-%COMP%] .desc-line[_ngcontent-%COMP%] .mode-name[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-model-descriptor.is-pro[_ngcontent-%COMP%] .descriptor-body[_ngcontent-%COMP%] .desc-line[_ngcontent-%COMP%] strong[_ngcontent-%COMP%]{color:#1e1b4b}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .error-banner[_ngcontent-%COMP%]{display:flex;align-items:center;gap:6px;padding:8px 12px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#b91c1c;font-size:12px;margin-bottom:10px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .error-banner[_ngcontent-%COMP%] .error-icon[_ngcontent-%COMP%]{font-size:16px;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding-top:10px;border-top:1px solid rgba(241,245,249,.95);gap:12px;flex-wrap:wrap}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-left[_ngcontent-%COMP%]{display:flex;align-items:center}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-left[_ngcontent-%COMP%] .model-toggle-capsule[_ngcontent-%COMP%]{display:inline-flex;align-items:center;background:#f1f5f9d9;padding:3px;border-radius:18px;gap:3px;border:1px solid rgba(226,232,240,.88);width:172px;box-sizing:border-box}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-left[_ngcontent-%COMP%] .model-toggle-capsule[_ngcontent-%COMP%] .model-toggle-btn[_ngcontent-%COMP%]{flex:1 1 0;width:50%;height:32px;padding:0 10px;border-radius:15px;border:none;background:transparent;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:all .2s cubic-bezier(.4,0,.2,1);outline:none;box-sizing:border-box;white-space:nowrap}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-left[_ngcontent-%COMP%] .model-toggle-capsule[_ngcontent-%COMP%] .model-toggle-btn[_ngcontent-%COMP%] .btn-icon[_ngcontent-%COMP%]{font-size:16px;color:#64748b;flex-shrink:0;transition:color .15s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-left[_ngcontent-%COMP%] .model-toggle-capsule[_ngcontent-%COMP%] .model-toggle-btn[_ngcontent-%COMP%] .btn-text[_ngcontent-%COMP%]{font-size:13px;font-weight:500;color:#475569;line-height:1}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-left[_ngcontent-%COMP%] .model-toggle-capsule[_ngcontent-%COMP%] .model-toggle-btn[_ngcontent-%COMP%]:hover:not(.active){background:#ffffffb3}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-left[_ngcontent-%COMP%] .model-toggle-capsule[_ngcontent-%COMP%] .model-toggle-btn[_ngcontent-%COMP%]:hover:not(.active) .btn-icon[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-left[_ngcontent-%COMP%] .model-toggle-capsule[_ngcontent-%COMP%] .model-toggle-btn[_ngcontent-%COMP%]:hover:not(.active) .btn-text[_ngcontent-%COMP%]{color:#0f172a}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-left[_ngcontent-%COMP%] .model-toggle-capsule[_ngcontent-%COMP%] .model-toggle-btn.active[_ngcontent-%COMP%]{background:#fff;box-shadow:0 1px 4px #00000014,0 1px 2px #0000000a}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-left[_ngcontent-%COMP%] .model-toggle-capsule[_ngcontent-%COMP%] .model-toggle-btn.active[_ngcontent-%COMP%] .btn-icon[_ngcontent-%COMP%]{color:#1a73e8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-left[_ngcontent-%COMP%] .model-toggle-capsule[_ngcontent-%COMP%] .model-toggle-btn.active[_ngcontent-%COMP%] .btn-text[_ngcontent-%COMP%]{color:#0f172a;font-weight:600}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-left[_ngcontent-%COMP%] .model-toggle-capsule[_ngcontent-%COMP%] .model-toggle-btn.btn-pro.active[_ngcontent-%COMP%]{background:linear-gradient(135deg,#6366f1,#7c3aed);box-shadow:0 2px 8px #6366f159}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-left[_ngcontent-%COMP%] .model-toggle-capsule[_ngcontent-%COMP%] .model-toggle-btn.btn-pro.active[_ngcontent-%COMP%] .btn-icon[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-left[_ngcontent-%COMP%] .model-toggle-capsule[_ngcontent-%COMP%] .model-toggle-btn.btn-pro.active[_ngcontent-%COMP%] .btn-text[_ngcontent-%COMP%]{color:#fff!important}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-left[_ngcontent-%COMP%] .model-toggle-capsule[_ngcontent-%COMP%] .model-toggle-btn[_ngcontent-%COMP%]:active{transform:scale(.97)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-right[_ngcontent-%COMP%]{display:flex;align-items:center;gap:12px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-right[_ngcontent-%COMP%] .char-count[_ngcontent-%COMP%]{font-size:11.5px;color:#94a3b8;font-variant-numeric:tabular-nums}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-right[_ngcontent-%COMP%] .btn-run-composer[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:38px;padding:0 20px;background:linear-gradient(135deg,#1a73e8eb,#2563ebd9);backdrop-filter:blur(10px) saturate(180%);-webkit-backdrop-filter:blur(10px) saturate(180%);border:1px solid rgba(255,255,255,.28);box-shadow:0 4px 14px #1a73e852,inset 0 1px 1px #ffffff73;color:#fff!important;transition:background .2s cubic-bezier(.4,0,.2,1),border-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1),opacity .2s cubic-bezier(.4,0,.2,1)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-right[_ngcontent-%COMP%] .btn-run-composer[_ngcontent-%COMP%] span[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-right[_ngcontent-%COMP%] .btn-run-composer[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-right[_ngcontent-%COMP%] .btn-run-composer[_ngcontent-%COMP%] .run-icon[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-right[_ngcontent-%COMP%] .btn-run-composer[_ngcontent-%COMP%] .action-icon[_ngcontent-%COMP%]{color:#fff!important}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-right[_ngcontent-%COMP%] .btn-run-composer[_ngcontent-%COMP%]:hover:not(:disabled){background:linear-gradient(135deg,#1a73e8,#2563ebf2);box-shadow:0 6px 20px #1a73e86b,inset 0 1px 1px #fff9;transform:translateY(-1px)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-right[_ngcontent-%COMP%] .btn-run-composer[_ngcontent-%COMP%]:active:not(:disabled){transform:scale(.97) translateY(0);box-shadow:0 2px 8px #1a73e859}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-right[_ngcontent-%COMP%] .btn-run-composer[_ngcontent-%COMP%]:disabled{background:#94a3b880;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);box-shadow:none;opacity:.65;cursor:not-allowed;transform:none}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-right[_ngcontent-%COMP%] .btn-run-composer[_ngcontent-%COMP%]{border-radius:12px;font-family:inherit;font-size:13.5px;font-weight:700;cursor:pointer;letter-spacing:-.01em}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-right[_ngcontent-%COMP%] .btn-run-composer.btn-run-pro[_ngcontent-%COMP%]{background:linear-gradient(135deg,#6366f1eb,#7c3aedd9);box-shadow:0 4px 14px #6366f152,inset 0 1px 1px #ffffff73}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-right[_ngcontent-%COMP%] .btn-run-composer.btn-run-pro[_ngcontent-%COMP%]:hover:not(:disabled){background:linear-gradient(135deg,#6366f1,#7c3aedf2);box-shadow:0 6px 20px #6366f16b,inset 0 1px 1px #fff9}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-right[_ngcontent-%COMP%] .btn-run-composer[_ngcontent-%COMP%] .run-icon[_ngcontent-%COMP%]{font-size:18px;line-height:1;transition:transform .2s cubic-bezier(.34,1.56,.64,1)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-right[_ngcontent-%COMP%] .btn-run-composer[_ngcontent-%COMP%]:hover:not(:disabled) .run-icon[_ngcontent-%COMP%]{transform:scale(1.15) rotate(15deg)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .composer-card[_ngcontent-%COMP%] .composer-action-bar[_ngcontent-%COMP%] .bar-right[_ngcontent-%COMP%] .btn-run-composer[_ngcontent-%COMP%] .spinner[_ngcontent-%COMP%]{width:14px;height:14px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:_ngcontent-%COMP%_spin .8s linear infinite}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-outputter-standalone-card[_ngcontent-%COMP%]{background:#ffffffe0;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(226,232,240,.95);border-radius:16px;padding:12px 18px 14px;box-shadow:0 1px 3px #00000005,0 8px 24px -6px #0f172a0a;display:flex;flex-direction:column;gap:8px;animation:_ngcontent-%COMP%_slideUpFade .2s cubic-bezier(.4,0,.2,1)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-outputter-standalone-card[_ngcontent-%COMP%] .outputter-card-header[_ngcontent-%COMP%]{display:flex;align-items:baseline;gap:6px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-outputter-standalone-card[_ngcontent-%COMP%] .outputter-card-header[_ngcontent-%COMP%] .outputter-title[_ngcontent-%COMP%]{font-size:13px;font-weight:700;color:#0f172a;letter-spacing:-.01em}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-outputter-standalone-card[_ngcontent-%COMP%] .outputter-card-header[_ngcontent-%COMP%] .outputter-optional-tag[_ngcontent-%COMP%]{font-size:11.5px;font-weight:500;color:#94a3b8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-outputter-standalone-card[_ngcontent-%COMP%] .outputter-input-wrapper[_ngcontent-%COMP%]{display:flex;align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:0 12px;height:38px;transition:all .18s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-outputter-standalone-card[_ngcontent-%COMP%] .outputter-input-wrapper[_ngcontent-%COMP%]:focus-within{background:#fff;border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed1a}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-outputter-standalone-card[_ngcontent-%COMP%] .outputter-input-wrapper[_ngcontent-%COMP%] .outputter-standalone-input[_ngcontent-%COMP%]{flex:1;border:none;outline:none;background:transparent;font-family:inherit;font-size:13px;color:#0f172a}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-outputter-standalone-card[_ngcontent-%COMP%] .outputter-input-wrapper[_ngcontent-%COMP%] .outputter-standalone-input[_ngcontent-%COMP%]::placeholder{color:#94a3b8;font-weight:400}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-outputter-standalone-card[_ngcontent-%COMP%] .outputter-input-wrapper[_ngcontent-%COMP%] .btn-clear-standalone[_ngcontent-%COMP%]{border:none;background:transparent;color:#94a3b8;cursor:pointer;padding:3px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:color .15s ease,background .15s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-outputter-standalone-card[_ngcontent-%COMP%] .outputter-input-wrapper[_ngcontent-%COMP%] .btn-clear-standalone[_ngcontent-%COMP%]:hover{color:#475569;background:#0000000d}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-outputter-standalone-card[_ngcontent-%COMP%] .outputter-input-wrapper[_ngcontent-%COMP%] .btn-clear-standalone[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:16px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%]{--%NS%tip-w: 320px;--%NS%thumb-w: 22px;--%NS%thumb-h: 14px;--%NS%col-gap: 28px;--%NS%accent: #6366f1;position:relative;background:#ffffffe0;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(226,232,240,.95);border-radius:16px;padding:12px 18px 14px;box-shadow:0 1px 3px #00000005,0 8px 24px -6px #0f172a0a;display:flex;flex-direction:column;gap:10px;animation:_ngcontent-%COMP%_slideUpFade .2s cubic-bezier(.4,0,.2,1)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card.tip-open[_ngcontent-%COMP%]{z-index:30}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-card-header[_ngcontent-%COMP%]{display:flex;align-items:baseline;justify-content:space-between;gap:10px;min-height:16px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-card-header[_ngcontent-%COMP%] .tuning-title[_ngcontent-%COMP%]{font-size:13px;font-weight:700;color:#0f172a;letter-spacing:-.01em}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-card-header[_ngcontent-%COMP%] .btn-tuning-reset[_ngcontent-%COMP%]{border:none;background:transparent;padding:0;font-family:inherit;font-size:12px;font-weight:500;color:#94a3b8;cursor:pointer;transition:color .15s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-card-header[_ngcontent-%COMP%] .btn-tuning-reset[_ngcontent-%COMP%]:hover{color:#475569}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-card-header[_ngcontent-%COMP%] .btn-tuning-reset[_ngcontent-%COMP%]:focus-visible{outline:2px solid var(--%NS%accent);outline-offset:3px;border-radius:3px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-sliders[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px var(--%NS%col-gap)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:4px;min-width:0;--%NS%tip-min: 0px;--%NS%tip-max: calc(100% - var(--%NS%tip-w))}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider.verify[_ngcontent-%COMP%]{--%NS%tip-max: calc(200% + var(--%NS%col-gap) - var(--%NS%tip-w))}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider.explore[_ngcontent-%COMP%]{--%NS%accent: #0ea5e9;--%NS%tip-min: calc(-100% - var(--%NS%col-gap))}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%] .slider-head[_ngcontent-%COMP%]{display:flex;align-items:baseline;gap:8px;font-size:13px;line-height:18px;color:#0f172a}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%] .slider-head[_ngcontent-%COMP%] .slider-name[_ngcontent-%COMP%]{font-weight:400;color:#334155}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%] .slider-head[_ngcontent-%COMP%] .slider-value[_ngcontent-%COMP%]{font-weight:600}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%] .slider-ends[_ngcontent-%COMP%]{display:flex;justify-content:space-between;font-size:11.5px;line-height:14px;color:#94a3b8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%] .slider-track-wrap[_ngcontent-%COMP%]{position:relative;height:26px;display:flex;align-items:center}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%] .slider-rail[_ngcontent-%COMP%]{position:relative;width:100%;height:6px;border-radius:3px;background:#e2e8f0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%] .slider-fill[_ngcontent-%COMP%]{position:absolute;top:0;bottom:0;left:0;width:calc(var(--%NS%pct) * (100% - var(--%NS%thumb-w)) + var(--%NS%thumb-w) / 2);border-radius:3px;background:color-mix(in srgb,var(--%NS%accent) 24%,#e2e8f0);transition:width .15s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%] .slider-notch[_ngcontent-%COMP%]{position:absolute;top:50%;left:calc(var(--%NS%n) * (100% - var(--%NS%thumb-w)) + var(--%NS%thumb-w) / 2);width:4px;height:4px;border-radius:50%;background:#94a3b8;transform:translate(-50%,-50%);transition:background .15s ease;z-index:1}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%] .slider-notch.reached[_ngcontent-%COMP%]{background:#fffffff2}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%] .slider-thumb[_ngcontent-%COMP%]{position:absolute;top:50%;left:calc(var(--%NS%pct) * (100% - var(--%NS%thumb-w)) + var(--%NS%thumb-w) / 2);width:var(--%NS%thumb-w);height:var(--%NS%thumb-h);border-radius:5px;background:#fff;border:1px solid rgba(15,23,42,.1);box-shadow:0 1px 2px #0f172a1f,0 2px 6px #0f172a14;transform:translate(-50%,-50%);pointer-events:none;transition:left .15s ease,box-shadow .15s ease,border-color .15s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%] .slider-solid[_ngcontent-%COMP%]{position:absolute;inset:0;border-radius:3px;background:var(--%NS%accent);transform-origin:right center;transform:scaleX(1);animation:_ngcontent-%COMP%_solidSweep 1s cubic-bezier(.4,0,.2,1) .2s both;pointer-events:none}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%] .slider-dither[_ngcontent-%COMP%]{position:absolute;inset:0;display:block;overflow:hidden;border-radius:3px;pointer-events:none}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%] .slider-dither[_ngcontent-%COMP%] rect[_ngcontent-%COMP%]{fill:var(--%NS%accent);animation:_ngcontent-%COMP%_ditherIn .3s ease-out both}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%] .thumb-ripple[_ngcontent-%COMP%]{position:absolute;top:50%;left:calc(var(--%NS%pct) * (100% - var(--%NS%thumb-w)) + var(--%NS%thumb-w) / 2);width:var(--%NS%thumb-w);height:var(--%NS%thumb-w);border-radius:50%;border:1.5px solid var(--%NS%accent);transform:translate(-50%,-50%) scale(.6);opacity:0;pointer-events:none;animation:_ngcontent-%COMP%_thumbRipple .6s ease-out forwards}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider.dragging[_ngcontent-%COMP%] .slider-thumb[_ngcontent-%COMP%]{border-color:color-mix(in srgb,var(--%NS%accent) 45%,transparent);box-shadow:0 1px 2px #0f172a1f,0 2px 8px #0f172a1a,0 0 0 4px color-mix(in srgb,var(--%NS%accent) 14%,transparent)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%] .slider-input[_ngcontent-%COMP%]{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer;-webkit-appearance:none;appearance:none;background:transparent}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%] .slider-input[_ngcontent-%COMP%]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:var(--%NS%thumb-w);height:26px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%] .slider-input[_ngcontent-%COMP%]::-moz-range-thumb{width:var(--%NS%thumb-w);height:26px;border:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%] .slider-input[_ngcontent-%COMP%]:focus-visible ~ .slider-thumb[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%]:has(.slider-input:focus-visible) .slider-thumb[_ngcontent-%COMP%]{box-shadow:0 1px 2px #0f172a1f,0 0 0 2px #fff,0 0 0 4px var(--%NS%accent)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%] .tuning-tip-arrow[_ngcontent-%COMP%]{position:absolute;bottom:calc(100% + 2px);left:calc(var(--%NS%pct) * (100% - var(--%NS%thumb-w)) + var(--%NS%thumb-w) / 2);width:10px;height:10px;background:#fff;border-right:1px solid rgb(226,232,240);border-bottom:1px solid rgb(226,232,240);transform:translate(-50%,50%) rotate(45deg);z-index:41;pointer-events:none}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%] .tuning-tip[_ngcontent-%COMP%]{position:absolute;bottom:calc(100% + 7px);left:clamp(var(--%NS%tip-min),var(--%NS%pct) * (100% - var(--%NS%thumb-w)) + var(--%NS%thumb-w) / 2 - var(--%NS%tip-w) / 2,var(--%NS%tip-max));width:var(--%NS%tip-w);max-width:calc(100vw - 32px);padding:12px 14px;background:#fff;border:1px solid rgb(226,232,240);border-radius:12px;box-shadow:0 12px 32px -8px #0f172a2e,0 2px 6px #0f172a0f;z-index:40;pointer-events:none;animation:_ngcontent-%COMP%_tipPop .16s ease-out;font-size:12px;line-height:1.5;color:#334155;display:flex;flex-direction:column;gap:8px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%] .tuning-tip[_ngcontent-%COMP%] .tip-heading[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%] .tuning-tip[_ngcontent-%COMP%] .tip-heading[_ngcontent-%COMP%] .tip-title[_ngcontent-%COMP%]{font-size:13.5px;font-weight:600;color:#0f172a;letter-spacing:-.01em}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%] .tuning-tip[_ngcontent-%COMP%] .tip-heading[_ngcontent-%COMP%] .tip-latency[_ngcontent-%COMP%]{font-size:11.5px;color:#94a3b8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%] .tuning-tip[_ngcontent-%COMP%] .tip-tagline[_ngcontent-%COMP%]{margin:0;color:#0f172a}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%] .tuning-tip[_ngcontent-%COMP%] .tip-section[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:2px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%] .tuning-tip[_ngcontent-%COMP%] .tip-section[_ngcontent-%COMP%] ul[_ngcontent-%COMP%]{margin:0;padding-left:16px;display:flex;flex-direction:column;gap:2px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%] .tuning-tip[_ngcontent-%COMP%] .tip-section[_ngcontent-%COMP%] li[_ngcontent-%COMP%]::marker{color:#cbd5e1}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%] .tuning-tip[_ngcontent-%COMP%] .tip-section.skips[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{color:#64748b}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%] .tuning-tip[_ngcontent-%COMP%] .tip-section-title[_ngcontent-%COMP%]{font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider[_ngcontent-%COMP%] .tuning-tip[_ngcontent-%COMP%] .tip-best[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:2px;color:#475569}@media(max-width:760px){.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-sliders[_ngcontent-%COMP%]{grid-template-columns:minmax(0,1fr);gap:10px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider.verify[_ngcontent-%COMP%], .home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .pro-tuning-card[_ngcontent-%COMP%] .tuning-slider.explore[_ngcontent-%COMP%]{--%NS%tip-min: 0px;--%NS%tip-max: calc(100% - var(--%NS%tip-w))}}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:12px;margin-top:10px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-header-bar[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-header-bar[_ngcontent-%COMP%] .header-left[_ngcontent-%COMP%]{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-header-bar[_ngcontent-%COMP%] .header-left[_ngcontent-%COMP%] .section-label[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:6px;font-family:inherit;font-size:13px;font-weight:700;color:#0f172a;letter-spacing:-.01em}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-header-bar[_ngcontent-%COMP%] .header-left[_ngcontent-%COMP%] .section-label[_ngcontent-%COMP%] .section-icon[_ngcontent-%COMP%]{font-size:17px;color:#6366f1;animation:_ngcontent-%COMP%_sparklePulse 3s ease-in-out infinite alternate}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-header-bar[_ngcontent-%COMP%] .header-left[_ngcontent-%COMP%] .section-label[_ngcontent-%COMP%] .device-context-pill[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:12px;background:#10b9811a;border:1px solid rgba(16,185,129,.25);color:#059669;font-size:11px;font-weight:600;line-height:1.3}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-header-bar[_ngcontent-%COMP%] .header-left[_ngcontent-%COMP%] .section-label[_ngcontent-%COMP%] .device-context-pill[_ngcontent-%COMP%] .dev-icon[_ngcontent-%COMP%]{font-size:13px;color:#059669}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-header-bar[_ngcontent-%COMP%] .header-left[_ngcontent-%COMP%] .category-tabs-group[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:3px;background:#ffffffa6;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding:3px;border-radius:16px;border:1px solid rgba(226,232,240,.85);box-shadow:0 1px 3px #00000005}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-header-bar[_ngcontent-%COMP%] .header-left[_ngcontent-%COMP%] .category-tabs-group[_ngcontent-%COMP%] .cat-tab-btn[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:12px;border:none;background:transparent;font-family:inherit;font-size:11.5px;font-weight:600;color:#64748b;cursor:pointer;transition:all .18s ease;white-space:nowrap}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-header-bar[_ngcontent-%COMP%] .header-left[_ngcontent-%COMP%] .category-tabs-group[_ngcontent-%COMP%] .cat-tab-btn[_ngcontent-%COMP%] .tab-mini-icon[_ngcontent-%COMP%]{font-size:13px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-header-bar[_ngcontent-%COMP%] .header-left[_ngcontent-%COMP%] .category-tabs-group[_ngcontent-%COMP%] .cat-tab-btn[_ngcontent-%COMP%]:hover:not(.active){color:#0f172a;background:#fff9}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-header-bar[_ngcontent-%COMP%] .header-left[_ngcontent-%COMP%] .category-tabs-group[_ngcontent-%COMP%] .cat-tab-btn.active[_ngcontent-%COMP%]{color:#0f172a;background:#fff;box-shadow:0 2px 6px #0f172a14,inset 0 1px #fff}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-header-bar[_ngcontent-%COMP%] .header-left[_ngcontent-%COMP%] .category-tabs-group[_ngcontent-%COMP%] .cat-tab-btn.active.cat-device[_ngcontent-%COMP%]{color:#059669}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-header-bar[_ngcontent-%COMP%] .header-left[_ngcontent-%COMP%] .category-tabs-group[_ngcontent-%COMP%] .cat-tab-btn.active.cat-flash[_ngcontent-%COMP%]{color:#1a73e8}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-header-bar[_ngcontent-%COMP%] .header-left[_ngcontent-%COMP%] .category-tabs-group[_ngcontent-%COMP%] .cat-tab-btn.active.cat-pro[_ngcontent-%COMP%]{color:#7c3aed}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-header-bar[_ngcontent-%COMP%] .header-right[_ngcontent-%COMP%] .btn-shuffle-suggestions[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:4px;padding:5px 12px;border-radius:14px;background:#ffffffb8;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(226,232,240,.85);color:#64748b;font-family:inherit;font-size:11.5px;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-header-bar[_ngcontent-%COMP%] .header-right[_ngcontent-%COMP%] .btn-shuffle-suggestions[_ngcontent-%COMP%] .shuffle-icon[_ngcontent-%COMP%]{font-size:14px;transition:transform .2s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-header-bar[_ngcontent-%COMP%] .header-right[_ngcontent-%COMP%] .btn-shuffle-suggestions[_ngcontent-%COMP%]:hover{background:#fff;color:#0f172a;border-color:#cbd5e1e6;transform:translateY(-1px);box-shadow:0 2px 8px #0f172a0f}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-header-bar[_ngcontent-%COMP%] .header-right[_ngcontent-%COMP%] .btn-shuffle-suggestions[_ngcontent-%COMP%]:hover .shuffle-icon[_ngcontent-%COMP%]{transform:rotate(45deg)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-header-bar[_ngcontent-%COMP%] .header-right[_ngcontent-%COMP%] .btn-shuffle-suggestions[_ngcontent-%COMP%]:active{transform:scale(.97)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-cards-grid[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(auto-fill,minmax(285px,1fr));gap:12px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-cards-grid[_ngcontent-%COMP%] .suggestion-card[_ngcontent-%COMP%]{display:flex;flex-direction:column;justify-content:space-between;padding:14px 16px;border-radius:16px;background:#ffffffb8;backdrop-filter:blur(10px) saturate(180%);-webkit-backdrop-filter:blur(10px) saturate(180%);border:1px solid rgba(226,232,240,.85);box-shadow:0 2px 8px -1px #0f172a0a,inset 0 1px 1px #fffffff2;cursor:pointer;transition:background .22s cubic-bezier(.4,0,.2,1),transform .22s cubic-bezier(.4,0,.2,1),box-shadow .22s cubic-bezier(.4,0,.2,1),border-color .22s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none;position:relative;overflow:hidden;min-height:128px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-cards-grid[_ngcontent-%COMP%] .suggestion-card[_ngcontent-%COMP%]:hover{background:#fffffff2;transform:translateY(-2px);box-shadow:0 8px 24px -4px #0f172a14,0 2px 6px #00000005,inset 0 1px 1px #fff;border-color:#bfdbfef2}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-cards-grid[_ngcontent-%COMP%] .suggestion-card.is-pro-card[_ngcontent-%COMP%]:hover{border-color:#c7d2fef2;box-shadow:0 8px 24px -4px #6366f11f,inset 0 1px 1px #fff}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-cards-grid[_ngcontent-%COMP%] .suggestion-card[_ngcontent-%COMP%]:active{transform:scale(.985)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-cards-grid[_ngcontent-%COMP%] .suggestion-card[_ngcontent-%COMP%] .card-top-row[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;gap:8px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-cards-grid[_ngcontent-%COMP%] .suggestion-card[_ngcontent-%COMP%] .card-top-row[_ngcontent-%COMP%] .app-icons-cluster[_ngcontent-%COMP%]{display:flex;align-items:center;gap:6px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-cards-grid[_ngcontent-%COMP%] .suggestion-card[_ngcontent-%COMP%] .card-top-row[_ngcontent-%COMP%] .app-icons-cluster[_ngcontent-%COMP%] .app-icon-badge[_ngcontent-%COMP%]{width:26px;height:26px;border-radius:8px;background:#f1f5f9;display:flex;align-items:center;justify-content:center;color:#475569;border:1px solid rgba(226,232,240,.9);flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-cards-grid[_ngcontent-%COMP%] .suggestion-card[_ngcontent-%COMP%] .card-top-row[_ngcontent-%COMP%] .app-icons-cluster[_ngcontent-%COMP%] .app-icon-badge[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font-size:14px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-cards-grid[_ngcontent-%COMP%] .suggestion-card[_ngcontent-%COMP%] .card-top-row[_ngcontent-%COMP%] .app-icons-cluster[_ngcontent-%COMP%] .app-names-label[_ngcontent-%COMP%]{font-size:11.5px;font-weight:600;color:#475569;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-cards-grid[_ngcontent-%COMP%] .suggestion-card[_ngcontent-%COMP%] .card-top-row[_ngcontent-%COMP%] .mode-badge[_ngcontent-%COMP%]{padding:2px 7px;border-radius:8px;font-size:10.5px;font-weight:700;line-height:1.2;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-cards-grid[_ngcontent-%COMP%] .suggestion-card[_ngcontent-%COMP%] .card-top-row[_ngcontent-%COMP%] .mode-badge.mode-flash[_ngcontent-%COMP%]{background:#1a73e81a;color:#1a73e8;border:1px solid rgba(26,115,232,.2)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-cards-grid[_ngcontent-%COMP%] .suggestion-card[_ngcontent-%COMP%] .card-top-row[_ngcontent-%COMP%] .mode-badge.mode-pro[_ngcontent-%COMP%]{background:#6366f11f;color:#6366f1;border:1px solid rgba(99,102,241,.25)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-cards-grid[_ngcontent-%COMP%] .suggestion-card[_ngcontent-%COMP%] .card-body[_ngcontent-%COMP%]{margin:8px 0 6px}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-cards-grid[_ngcontent-%COMP%] .suggestion-card[_ngcontent-%COMP%] .card-body[_ngcontent-%COMP%] .card-title[_ngcontent-%COMP%]{font-size:13.5px;font-weight:600;color:#0f172a;margin:0 0 3px;line-height:1.3;letter-spacing:-.01em}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-cards-grid[_ngcontent-%COMP%] .suggestion-card[_ngcontent-%COMP%] .card-body[_ngcontent-%COMP%] .card-desc[_ngcontent-%COMP%]{font-size:12px;color:#64748b;margin:0;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-cards-grid[_ngcontent-%COMP%] .suggestion-card[_ngcontent-%COMP%] .card-footer-row[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:6px;padding-top:8px;border-top:1px solid rgba(241,245,249,.85)}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-cards-grid[_ngcontent-%COMP%] .suggestion-card[_ngcontent-%COMP%] .card-footer-row[_ngcontent-%COMP%] .tag-pill[_ngcontent-%COMP%]{font-size:11px;font-weight:600;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-cards-grid[_ngcontent-%COMP%] .suggestion-card[_ngcontent-%COMP%] .card-footer-row[_ngcontent-%COMP%] .use-prompt-action[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:3px;font-size:11.5px;font-weight:600;color:#1a73e8;opacity:.85;transition:all .15s ease;flex-shrink:0}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-cards-grid[_ngcontent-%COMP%] .suggestion-card[_ngcontent-%COMP%] .card-footer-row[_ngcontent-%COMP%] .use-prompt-action[_ngcontent-%COMP%] .action-arrow[_ngcontent-%COMP%]{font-size:13px;transition:transform .15s ease}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-cards-grid[_ngcontent-%COMP%] .suggestion-card[_ngcontent-%COMP%]:hover .use-prompt-action[_ngcontent-%COMP%]{opacity:1}.home-container[_ngcontent-%COMP%] .home-content[_ngcontent-%COMP%] .task-launcher-view[_ngcontent-%COMP%] .smart-suggestions-container[_ngcontent-%COMP%] .suggestions-cards-grid[_ngcontent-%COMP%] .suggestion-card[_ngcontent-%COMP%]:hover .use-prompt-action[_ngcontent-%COMP%] .action-arrow[_ngcontent-%COMP%]{transform:translate(2px)}@keyframes _ngcontent-%COMP%_spin{to{transform:rotate(360deg)}}@keyframes _ngcontent-%COMP%_fadeIn{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}@keyframes _ngcontent-%COMP%_slideUpFade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes _ngcontent-%COMP%_slideDownFade{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes _ngcontent-%COMP%_floatGlow1{0%{transform:translate(0) scale(1)}50%{transform:translate(35px,45px) scale(1.06)}to{transform:translate(-25px,25px) scale(.96)}}@keyframes _ngcontent-%COMP%_floatGlow2{0%{transform:translate(0) scale(1)}50%{transform:translate(-40px,40px) scale(1.08)}to{transform:translate(20px,60px) scale(.94)}}@keyframes _ngcontent-%COMP%_floatGlow3{0%{transform:translate(0) scale(1)}50%{transform:translate(25px,-30px) scale(1.04)}to{transform:translate(-30px,15px) scale(.97)}}@keyframes _ngcontent-%COMP%_readyPulseGlow{0%{transform:scale(.97)}50%{transform:scale(1.06)}to{transform:scale(.98)}}@keyframes _ngcontent-%COMP%_statusDotPulse{0%{transform:scale(.95);box-shadow:0 0 #10b981b3}70%{transform:scale(1);box-shadow:0 0 0 5px #10b98100}to{transform:scale(.95);box-shadow:0 0 #10b98100}}@keyframes _ngcontent-%COMP%_sparklePulse{0%{transform:scale(.92) rotate(0);opacity:.8}50%{transform:scale(1.12) rotate(8deg);opacity:1}to{transform:scale(.92) rotate(0);opacity:.8}}@media(prefers-reduced-motion:reduce){.home-container[_ngcontent-%COMP%] .aurora-background[_ngcontent-%COMP%] .glow[_ngcontent-%COMP%], .sparkle-icon[_ngcontent-%COMP%], .status-dot[_ngcontent-%COMP%], .slider-dither[_ngcontent-%COMP%] rect[_ngcontent-%COMP%], .slider-solid[_ngcontent-%COMP%], .thumb-ripple[_ngcontent-%COMP%]{animation:none!important}}@keyframes _ngcontent-%COMP%_ditherIn{0%{opacity:0}}@keyframes _ngcontent-%COMP%_solidSweep{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes _ngcontent-%COMP%_thumbRipple{0%{opacity:.7;transform:translate(-50%,-50%) scale(.6)}to{opacity:0;transform:translate(-50%,-50%) scale(2.6)}}@keyframes _ngcontent-%COMP%_tipPop{0%{opacity:0;transform:translateY(6px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}'],changeDetection:1})};var sR={running:"\u6267\u884C\u4E2D",queued:"\u6392\u961F\u4E2D",pending:"\u7B49\u5F85\u4E2D",completed:"\u5DF2\u5B8C\u6210",success:"\u6210\u529F",succeeded:"\u6210\u529F",failed:"\u5931\u8D25",error:"\u9519\u8BEF",paused:"\u5DF2\u6682\u505C",cancelled:"\u5DF2\u53D6\u6D88",canceled:"\u5DF2\u53D6\u6D88",stopped:"\u5DF2\u505C\u6B62",unknown:"\u672A\u77E5",idle:"\u7A7A\u95F2",starting:"\u542F\u52A8\u4E2D",launching:"\u542F\u52A8\u4E2D",ready:"\u5C31\u7EEA",pass:"\u901A\u8FC7",fail:"\u5931\u8D25",warn:"\u8B66\u544A",warning:"\u8B66\u544A",blocked:"\u53D7\u963B",done:"\u5B8C\u6210",active:"\u5F53\u524D",waiting:"\u7B49\u5F85\u4E2D",processing:"\u5904\u7406\u4E2D"},ga=class n{transform(t){return sR[(t||"").toLowerCase()]||t||""}static \u0275fac=function(e){return new(e||n)};static \u0275pipe=rs({name:"uiLabel",type:n,pure:!0})};var I_;try{I_=typeof Intl<"u"&&Intl.v8BreakIterator}catch(n){I_=!1}var ir=(()=>{class n{_platformId=v(Li);isBrowser=this._platformId?eP(this._platformId):typeof document=="object"&&!!document;EDGE=this.isBrowser&&/(edge)/i.test(navigator.userAgent);TRIDENT=this.isBrowser&&/(msie|trident)/i.test(navigator.userAgent);BLINK=this.isBrowser&&!!(window.chrome||I_)&&typeof CSS<"u"&&!this.EDGE&&!this.TRIDENT;WEBKIT=this.isBrowser&&/AppleWebKit/i.test(navigator.userAgent)&&!this.BLINK&&!this.EDGE&&!this.TRIDENT;IOS=this.isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!("MSStream"in window);FIREFOX=this.isBrowser&&/(firefox|minefield)/i.test(navigator.userAgent);ANDROID=this.isBrowser&&/android/i.test(navigator.userAgent)&&!this.TRIDENT;SAFARI=this.isBrowser&&/safari/i.test(navigator.userAgent)&&this.WEBKIT;static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:n.\u0275fac})}return n})();function Du(n){if(n.composedPath)try{return n.composedPath()[0]}catch(t){}return n.target}function T_(){return typeof __karma__<"u"&&!!__karma__||typeof jasmine<"u"&&!!jasmine||typeof jest<"u"&&!!jest||typeof Mocha<"u"&&!!Mocha}var Iu=new WeakMap,A_=(()=>{class n{_appRef;_injector=v(Ne);_environmentInjector=v(De);load(e){let o=this._appRef=this._appRef||this._injector.get(Wt),i=Iu.get(o);i||(i={loaders:new Set,refs:[]},Iu.set(o,i),o.onDestroy(()=>{Iu.get(o)?.refs.forEach(r=>r.destroy()),Iu.delete(o)})),i.loaders.has(e)||(i.loaders.add(e),i.refs.push(pd(e,{environmentInjector:this._environmentInjector})))}static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:n.\u0275fac})}return n})();function et(n){return n==null?"":typeof n=="string"?n:`${n}px`}function R_(n){return Array.isArray(n)?n:[n]}function Xv(n){return n instanceof Be?n.nativeElement:n}var cR=new $("cdk-dir-doc",{providedIn:"root",factory:()=>v(Me)}),lR=/^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i;function dR(n){let t=n?.toLowerCase()||"";return t==="auto"&&typeof navigator<"u"&&navigator?.language?lR.test(navigator.language)?"rtl":"ltr":t==="rtl"?"rtl":"ltr"}var F_=(()=>{class n{get value(){return this.valueSignal()}valueSignal=w("ltr");change=new ve;constructor(){let e=v(cR,{optional:!0});if(e){let o=e.body?e.body.dir:null,i=e.documentElement?e.documentElement.dir:null;this.valueSignal.set(dR(o||i||"ltr"))}}ngOnDestroy(){this.change.complete()}static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:n.\u0275fac})}return n})();var rr;function Qv(){if(rr==null){if(typeof document!="object"||!document||typeof Element!="function"||!Element)return rr=!1,rr;if(document.documentElement?.style&&"scrollBehavior"in document.documentElement.style)rr=!0;else{let n=Element.prototype.scrollTo;n?rr=!/\{\s*\[native code\]\s*\}/.test(n.toString()):rr=!1}}return rr}var Gs=(()=>{class n{static \u0275fac=function(o){return new(o||n)};static \u0275mod=gt({type:n});static \u0275inj=at({})}return n})();var uR=20,N_=(()=>{class n{_ngZone=v(ce);_platform=v(ir);_renderer=v($t).createRenderer(null,null);_cleanupGlobalListener;_scrolled=new fe;_scrolledCount=0;scrollContainers=new Map;register(e){this.scrollContainers.has(e)||this.scrollContainers.set(e,e.elementScrolled().subscribe(()=>this._scrolled.next(e)))}deregister(e){let o=this.scrollContainers.get(e);o&&(o.unsubscribe(),this.scrollContainers.delete(e))}scrolled(e=uR){return this._platform.isBrowser?new te(o=>{this._cleanupGlobalListener||(this._cleanupGlobalListener=this._ngZone.runOutsideAngular(()=>this._renderer.listen("document","scroll",()=>this._scrolled.next())));let i=e>0?this._scrolled.pipe(Fc(e)).subscribe(o):this._scrolled.subscribe(o);return this._scrolledCount++,()=>{i.unsubscribe(),this._scrolledCount--,this._scrolledCount||(this._cleanupGlobalListener?.(),this._cleanupGlobalListener=void 0)}}):se()}ngOnDestroy(){this._cleanupGlobalListener?.(),this._cleanupGlobalListener=void 0,this.scrollContainers.forEach((e,o)=>this.deregister(o)),this._scrolled.complete()}ancestorScrolled(e,o){let i=this.getAncestorScrollContainers(e);return this.scrolled(o).pipe(vt(r=>!r||i.indexOf(r)>-1))}getAncestorScrollContainers(e){let o=[];return this.scrollContainers.forEach((i,r)=>{this._targetContainsElement(r,e)&&o.push(r)}),o}_targetContainsElement(e,o){let i=Xv(o),r=e.getElementRef().nativeElement;do if(i==r)return!0;while(i=i.parentElement);return!1}static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:n.\u0275fac})}return n})();var gR=20,qs=(()=>{class n{_platform=v(ir);_listeners;_viewportSize=null;_change=new fe;_document=v(Me);constructor(){let e=v(ce),o=v($t).createRenderer(null,null);e.runOutsideAngular(()=>{if(this._platform.isBrowser){let i=r=>this._change.next(r);this._listeners=[o.listen("window","resize",i),o.listen("window","orientationchange",i)]}this.change().subscribe(()=>this._viewportSize=null)})}ngOnDestroy(){this._listeners?.forEach(e=>e()),this._change.complete()}getViewportSize(){this._viewportSize||this._updateViewportSize();let e={width:this._viewportSize.width,height:this._viewportSize.height};return this._platform.isBrowser||(this._viewportSize=null),e}getViewportRect(){let e=this.getViewportScrollPosition(),{width:o,height:i}=this.getViewportSize();return{top:e.top,left:e.left,bottom:e.top+i,right:e.left+o,height:i,width:o}}getViewportScrollPosition(){if(!this._platform.isBrowser)return{top:0,left:0};let e=this._document,o=this._getWindow(),i=e.documentElement,r=i.getBoundingClientRect(),a=-r.top||e.body?.scrollTop||o.scrollY||i.scrollTop||0,s=-r.left||e.body?.scrollLeft||o.scrollX||i.scrollLeft||0;return{top:a,left:s}}change(e=gR){return e>0?this._change.pipe(Fc(e)):this._change}_getWindow(){return this._document.defaultView||window}_updateViewportSize(){let e=this._getWindow();this._viewportSize=this._platform.isBrowser?{width:e.innerWidth,height:e.innerHeight}:{width:0,height:0}}static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:n.\u0275fac})}return n})();var Jv=(()=>{class n{static \u0275fac=function(o){return new(o||n)};static \u0275mod=gt({type:n});static \u0275inj=at({})}return n})(),L_=(()=>{class n{static \u0275fac=function(o){return new(o||n)};static \u0275mod=gt({type:n});static \u0275inj=at({imports:[Gs,Jv,Gs,Jv]})}return n})();var ey=new Map,Tu=class n{_appId=v(Ni);static _infix=`a${Math.floor(Math.random()*1e5).toString()}`;getId(t,e=!1){this._appId!=="ng"&&(t+=this._appId);let o=ey.get(t);return o===void 0?o=0:o++,ey.set(t,o),`${t}${e?n._infix+"-":""}${o}`}static \u0275fac=function(e){return new(e||n)};static \u0275prov=oe({token:n,factory:n.\u0275fac})};var Ys=class{_attachedHost=null;attach(t){return this._attachedHost=t,t.attach(this)}detach(){let t=this._attachedHost;t!=null&&(this._attachedHost=null,t.detach())}get isAttached(){return this._attachedHost!=null}setAttachedHost(t){this._attachedHost=t}},V_=class extends Ys{component;viewContainerRef;injector;projectableNodes;bindings;directives;constructor(t,e,o,i,r,a){super(),this.component=t,this.viewContainerRef=e,this.injector=o,this.projectableNodes=i,this.bindings=r||null,this.directives=a||null}},Ks=class extends Ys{templateRef;viewContainerRef;context;injector;constructor(t,e,o,i){super(),this.templateRef=t,this.viewContainerRef=e,this.context=o,this.injector=i}get origin(){return this.templateRef.elementRef}attach(t,e=this.context){return this.context=e,super.attach(t)}detach(){return this.context=void 0,super.detach()}},B_=class extends Ys{element;constructor(t){super(),this.element=t instanceof Be?t.nativeElement:t}},j_=class{_attachedPortal=null;_disposeFn=null;_isDisposed=!1;hasAttached(){return!!this._attachedPortal}attach(t){if(t instanceof V_)return this._attachedPortal=t,this.attachComponentPortal(t);if(t instanceof Ks)return this._attachedPortal=t,this.attachTemplatePortal(t);if(this.attachDomPortal&&t instanceof B_)return this._attachedPortal=t,this.attachDomPortal(t)}attachDomPortal=null;detach(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()}dispose(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0}setDisposeFn(t){this._disposeFn=t}_invokeDisposeFn(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)}},Au=class extends j_{outletElement;_appRef;_defaultInjector;constructor(t,e,o){super(),this.outletElement=t,this._appRef=e,this._defaultInjector=o}attachComponentPortal(t){let e;if(t.viewContainerRef){let o=t.injector||t.viewContainerRef.injector,i=o.get(Mo,null,{optional:!0})||void 0;e=t.viewContainerRef.createComponent(t.component,{index:t.viewContainerRef.length,injector:o,ngModuleRef:i,projectableNodes:t.projectableNodes||void 0,bindings:t.bindings||void 0,directives:t.directives||void 0}),this.setDisposeFn(()=>e.destroy())}else{let o=this._appRef,i=t.injector||this._defaultInjector||Ne.NULL,r=i.get(De,o.injector);e=pd(t.component,{elementInjector:i,environmentInjector:r,projectableNodes:t.projectableNodes||void 0,bindings:t.bindings||void 0,directives:t.directives||void 0}),o.attachView(e.hostView),this.setDisposeFn(()=>{o.viewCount>0&&o.detachView(e.hostView),e.destroy()})}return this.outletElement.appendChild(this._getComponentRootNode(e)),this._attachedPortal=t,e}attachTemplatePortal(t){let e=t.viewContainerRef,o=e.createEmbeddedView(t.templateRef,t.context,{injector:t.injector});return o.rootNodes.forEach(i=>this.outletElement.appendChild(i)),o.detectChanges(),this.setDisposeFn(()=>{let i=e.indexOf(o);i!==-1&&e.remove(i)}),this._attachedPortal=t,o}attachDomPortal=t=>{let e=t.element;e.parentNode;let o=this.outletElement.ownerDocument.createComment("dom-portal");e.parentNode.insertBefore(o,e),this.outletElement.appendChild(e),this._attachedPortal=t,super.setDisposeFn(()=>{o.parentNode&&o.parentNode.replaceChild(e,o)})};dispose(){super.dispose(),this.outletElement.remove()}_getComponentRootNode(t){return t.hostView.rootNodes[0]}};var ty=(()=>{class n{static \u0275fac=function(o){return new(o||n)};static \u0275mod=gt({type:n});static \u0275inj=at({})}return n})();function ny(n,...t){return t.length?t.some(e=>n[e]):n.altKey||n.shiftKey||n.ctrlKey||n.metaKey}var oy=Qv();function dy(n){return new Ru(n.get(qs),n.get(Me))}var Ru=class{_viewportRuler;_previousHTMLStyles={top:"",left:""};_previousScrollPosition;_isEnabled=!1;_document;constructor(t,e){this._viewportRuler=t,this._document=e}attach(){}enable(){if(this._canBeEnabled()){let t=this._document.documentElement;this._previousScrollPosition=this._viewportRuler.getViewportScrollPosition(),this._previousHTMLStyles.left=t.style.left||"",this._previousHTMLStyles.top=t.style.top||"",t.style.left=et(-this._previousScrollPosition.left),t.style.top=et(-this._previousScrollPosition.top),t.classList.add("cdk-global-scrollblock"),this._isEnabled=!0}}disable(){if(this._isEnabled){let t=this._document.documentElement,e=this._document.body,o=t.style,i=e.style,r=o.scrollBehavior||"",a=i.scrollBehavior||"";this._isEnabled=!1,o.left=this._previousHTMLStyles.left,o.top=this._previousHTMLStyles.top,t.classList.remove("cdk-global-scrollblock"),oy&&(o.scrollBehavior=i.scrollBehavior="auto"),window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),oy&&(o.scrollBehavior=r,i.scrollBehavior=a)}}_canBeEnabled(){if(this._document.documentElement.classList.contains("cdk-global-scrollblock")||this._isEnabled)return!1;let e=this._document.documentElement,o=this._viewportRuler.getViewportSize();return e.scrollHeight>o.height||e.scrollWidth>o.width}};function uy(n,t){return new Fu(n.get(N_),n.get(ce),n.get(qs),t)}var Fu=class{_scrollDispatcher;_ngZone;_viewportRuler;_config;_scrollSubscription=null;_overlayRef;_initialScrollPosition;constructor(t,e,o,i){this._scrollDispatcher=t,this._ngZone=e,this._viewportRuler=o,this._config=i}attach(t){this._overlayRef,this._overlayRef=t}enable(){if(this._scrollSubscription)return;let t=this._scrollDispatcher.scrolled(0).pipe(vt(e=>!e||!this._overlayRef.overlayElement.contains(e.getElementRef().nativeElement)));this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=t.subscribe(()=>{let e=this._viewportRuler.getViewportScrollPosition().top;Math.abs(e-this._initialScrollPosition)>this._config.threshold?this._detach():this._overlayRef.updatePosition()})):this._scrollSubscription=t.subscribe(this._detach)}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}_detach=()=>{this.disable(),this._overlayRef.hasAttached()&&this._ngZone.run(()=>this._overlayRef.detach())}};var Zs=class{enable(){}disable(){}attach(){}};function z_(n,t){return t.some(e=>{let o=n.bottome.bottom,r=n.righte.right;return o||i||r||a})}function iy(n,t){return t.some(e=>{let o=n.tope.bottom,r=n.lefte.right;return o||i||r||a})}function H_(n,t){return new Nu(n.get(N_),n.get(qs),n.get(ce),t)}var Nu=class{_scrollDispatcher;_viewportRuler;_ngZone;_config;_scrollSubscription=null;_overlayRef;constructor(t,e,o,i){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=o,this._config=i}attach(t){this._overlayRef,this._overlayRef=t}enable(){if(!this._scrollSubscription){let t=this._config?this._config.scrollThrottle:0;this._scrollSubscription=this._scrollDispatcher.scrolled(t).subscribe(()=>{if(this._overlayRef.updatePosition(),this._config&&this._config.autoClose){let e=this._overlayRef.overlayElement.getBoundingClientRect(),{width:o,height:i}=this._viewportRuler.getViewportSize();z_(e,[{width:o,height:i,bottom:i,right:o,top:0,left:0}])&&(this.disable(),this._ngZone.run(()=>this._overlayRef.detach()))}})}}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}},gy=(()=>{class n{_injector=v(Ne);noop=()=>new Zs;close=e=>uy(this._injector,e);block=()=>dy(this._injector);reposition=e=>H_(this._injector,e);static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:n.\u0275fac})}return n})(),Xs=class{positionStrategy;scrollStrategy=new Zs;panelClass="";hasBackdrop=!1;backdropClass="cdk-overlay-dark-backdrop";disableAnimations;width;height;minWidth;minHeight;maxWidth;maxHeight;direction;disposeOnNavigation=!1;usePopover;eventPredicate;constructor(t){if(t){let e=Object.keys(t);for(let o of e)t[o]!==void 0&&(this[o]=t[o])}}};var Lu=class{connectionPair;scrollableViewProperties;constructor(t,e){this.connectionPair=t,this.scrollableViewProperties=e}};var py=(()=>{class n{_attachedOverlays=[];_document=v(Me);_isAttached=!1;ngOnDestroy(){this.detach()}add(e){this.remove(e),this._attachedOverlays.push(e)}remove(e){let o=this._attachedOverlays.indexOf(e);o>-1&&this._attachedOverlays.splice(o,1),this._attachedOverlays.length===0&&this.detach()}canReceiveEvent(e,o,i){return i.observers.length<1?!1:e.eventPredicate?e.eventPredicate(o):!0}static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:n.\u0275fac})}return n})(),fy=(()=>{class n extends py{_ngZone=v(ce);_renderer=v($t).createRenderer(null,null);_cleanupKeydown;add(e){super.add(e),this._isAttached||(this._ngZone.runOutsideAngular(()=>{this._cleanupKeydown=this._renderer.listen("body","keydown",this._keydownListener)}),this._isAttached=!0)}detach(){this._isAttached&&(this._cleanupKeydown?.(),this._isAttached=!1)}_keydownListener=e=>{let o=this._attachedOverlays;for(let i=o.length-1;i>-1;i--){let r=o[i];if(this.canReceiveEvent(r,e,r._keydownEvents)){this._ngZone.run(()=>r._keydownEvents.next(e));break}}};static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:n.\u0275fac})}return n})(),my=(()=>{class n extends py{_platform=v(ir);_ngZone=v(ce);_renderer=v($t).createRenderer(null,null);_cursorOriginalValue;_cursorStyleIsSet=!1;_pointerDownEventTarget=null;_cleanups;add(e){if(super.add(e),!this._isAttached){let o=this._document.body,i={capture:!0},r=this._renderer;this._cleanups=this._ngZone.runOutsideAngular(()=>[r.listen(o,"pointerdown",this._pointerDownListener,i),r.listen(o,"click",this._clickListener,i),r.listen(o,"auxclick",this._clickListener,i),r.listen(o,"contextmenu",this._clickListener,i)]),this._platform.IOS&&!this._cursorStyleIsSet&&(this._cursorOriginalValue=o.style.cursor,o.style.cursor="pointer",this._cursorStyleIsSet=!0),this._isAttached=!0}}detach(){this._isAttached&&(this._cleanups?.forEach(e=>e()),this._cleanups=void 0,this._platform.IOS&&this._cursorStyleIsSet&&(this._document.body.style.cursor=this._cursorOriginalValue,this._cursorStyleIsSet=!1),this._isAttached=!1)}_pointerDownListener=e=>{this._pointerDownEventTarget=Du(e)};_clickListener=e=>{let o=Du(e),i=e.type==="click"&&this._pointerDownEventTarget?this._pointerDownEventTarget:o;this._pointerDownEventTarget=null;let r=this._attachedOverlays.slice();for(let a=r.length-1;a>-1;a--){let s=r[a],c=s._outsidePointerEvents;if(!(!s.hasAttached()||!this.canReceiveEvent(s,e,c))){if(ry(s.overlayElement,o)||ry(s.overlayElement,i))break;this._ngZone?this._ngZone.run(()=>c.next(e)):c.next(e)}}};static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:n.\u0275fac})}return n})();function ry(n,t){let e=typeof ShadowRoot<"u"&&ShadowRoot,o=t;for(;o;){if(o===n)return!0;o=e&&o instanceof ShadowRoot?o.host:o.parentNode}return!1}var _y=(()=>{class n{static \u0275fac=function(o){return new(o||n)};static \u0275cmp=Ae({type:n,selectors:[["ng-component"]],hostAttrs:["cdk-overlay-style-loader",""],decls:0,vars:0,template:function(o,i){},styles:[`.cdk-overlay-container, .cdk-global-overlay-wrapper { pointer-events: none; top: 0; left: 0; height: 100%; width: 100%; } .cdk-overlay-container { position: fixed; } @layer cdk-overlay { .cdk-overlay-container { z-index: 1000; } } .cdk-overlay-container:empty { display: none; } .cdk-global-overlay-wrapper { display: flex; position: absolute; } @layer cdk-overlay { .cdk-global-overlay-wrapper { z-index: 1000; } } .cdk-overlay-pane { position: absolute; pointer-events: auto; box-sizing: border-box; display: flex; max-width: 100%; max-height: 100%; } @layer cdk-overlay { .cdk-overlay-pane { z-index: 1000; } } .cdk-overlay-backdrop { position: absolute; top: 0; bottom: 0; left: 0; right: 0; pointer-events: auto; -webkit-tap-highlight-color: transparent; opacity: 0; touch-action: manipulation; } @layer cdk-overlay { .cdk-overlay-backdrop { z-index: 1000; transition: opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1); } } @media (prefers-reduced-motion) { .cdk-overlay-backdrop { transition-duration: 1ms; } } .cdk-overlay-backdrop-showing { opacity: 1; } @media (forced-colors: active) { .cdk-overlay-backdrop-showing { opacity: 0.6; } } @layer cdk-overlay { .cdk-overlay-dark-backdrop { background: rgba(0, 0, 0, 0.32); } } .cdk-overlay-transparent-backdrop { transition: visibility 1ms linear, opacity 1ms linear; visibility: hidden; opacity: 1; } .cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing, .cdk-high-contrast-active .cdk-overlay-transparent-backdrop { opacity: 0; visibility: visible; } .cdk-overlay-backdrop-noop-animation { transition: none; } .cdk-overlay-connected-position-bounding-box { position: absolute; display: flex; flex-direction: column; min-width: 1px; min-height: 1px; } @layer cdk-overlay { .cdk-overlay-connected-position-bounding-box { z-index: 1000; } } .cdk-global-scrollblock { position: fixed; width: 100%; overflow-y: scroll; } .cdk-overlay-popover { background: none; border: none; padding: 0; outline: 0; overflow: visible; position: fixed; pointer-events: none; white-space: normal; color: inherit; text-decoration: none; width: 100%; height: 100%; inset: auto; top: 0; left: 0; } .cdk-overlay-popover::backdrop { display: none; } .cdk-overlay-popover .cdk-overlay-backdrop { position: fixed; z-index: auto; } `],encapsulation:2})}return n})(),hy=(()=>{class n{_platform=v(ir);_containerElement;_document=v(Me);_styleLoader=v(A_);ngOnDestroy(){this._containerElement?.remove()}getContainerElement(){return this._loadStyles(),this._containerElement||this._createContainer(),this._containerElement}_createContainer(){let e="cdk-overlay-container";if(this._platform.isBrowser||T_()){let i=this._document.querySelectorAll(`.${e}[platform="server"], .${e}[platform="test"]`);for(let r=0;r{let t=this.element;clearTimeout(this._fallbackTimeout),this._cleanupTransitionEnd?.(),this._cleanupTransitionEnd=this._renderer.listen(t,"transitionend",this.dispose),this._fallbackTimeout=setTimeout(this.dispose,500),t.style.pointerEvents="none",t.classList.remove("cdk-overlay-backdrop-showing")})}dispose=()=>{clearTimeout(this._fallbackTimeout),this._cleanupClick?.(),this._cleanupTransitionEnd?.(),this._cleanupClick=this._cleanupTransitionEnd=this._fallbackTimeout=void 0,this.element.remove()}};function U_(n){return n&&n.nodeType===1}var Vu=class{_portalOutlet;_host;_pane;_config;_ngZone;_keyboardDispatcher;_document;_location;_outsideClickDispatcher;_animationsDisabled;_injector;_renderer;_backdropClick=new fe;_attachments=new fe;_detachments=new fe;_positionStrategy;_scrollStrategy;_locationChanges=Oe.EMPTY;_backdropRef=null;_detachContentMutationObserver;_detachContentAfterRenderRef;_disposed=!1;_previousHostParent;_keydownEvents=new fe;_outsidePointerEvents=new fe;_afterNextRenderRef;constructor(t,e,o,i,r,a,s,c,u,f=!1,_,h){this._portalOutlet=t,this._host=e,this._pane=o,this._config=i,this._ngZone=r,this._keyboardDispatcher=a,this._document=s,this._location=c,this._outsideClickDispatcher=u,this._animationsDisabled=f,this._injector=_,this._renderer=h,i.scrollStrategy&&(this._scrollStrategy=i.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=i.positionStrategy}get overlayElement(){return this._pane}get backdropElement(){return this._backdropRef?.element||null}get hostElement(){return this._host}get eventPredicate(){return this._config?.eventPredicate||null}attach(t){if(this._disposed)return null;this._attachHost();let e=this._portalOutlet.attach(t);return this._positionStrategy?.attach(this),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._afterNextRenderRef?.destroy(),this._afterNextRenderRef=Po(()=>{this.hasAttached()&&this.updatePosition()},{injector:this._injector}),this._togglePointerEvents(!0),this._config.hasBackdrop&&this._attachBackdrop(),this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!0),this._attachments.next(),this._completeDetachContent(),this._keyboardDispatcher.add(this),this._config.disposeOnNavigation&&(this._locationChanges=this._location.subscribe(()=>this.dispose())),this._outsideClickDispatcher.add(this),typeof e?.onDestroy=="function"&&e.onDestroy(()=>{this.hasAttached()&&this._ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>this.detach()))}),e}detach(){if(!this.hasAttached())return;this.detachBackdrop(),this._togglePointerEvents(!1),this._positionStrategy&&this._positionStrategy.detach&&this._positionStrategy.detach(),this._scrollStrategy&&this._scrollStrategy.disable();let t=this._portalOutlet.detach();return this._detachments.next(),this._completeDetachContent(),this._keyboardDispatcher.remove(this),this._detachContentWhenEmpty(),this._locationChanges.unsubscribe(),this._outsideClickDispatcher.remove(this),t}dispose(){if(this._disposed)return;let t=this.hasAttached();this._positionStrategy&&this._positionStrategy.dispose(),this._disposeScrollStrategy(),this._backdropRef?.dispose(),this._locationChanges.unsubscribe(),this._keyboardDispatcher.remove(this),this._portalOutlet.dispose(),this._attachments.complete(),this._backdropClick.complete(),this._keydownEvents.complete(),this._outsidePointerEvents.complete(),this._outsideClickDispatcher.remove(this),this._host?.remove(),this._afterNextRenderRef?.destroy(),this._previousHostParent=this._pane=this._host=this._backdropRef=null,t&&this._detachments.next(),this._detachments.complete(),this._completeDetachContent(),this._disposed=!0}hasAttached(){return this._portalOutlet.hasAttached()}backdropClick(){return this._backdropClick}attachments(){return this._attachments}detachments(){return this._detachments}keydownEvents(){return this._keydownEvents}outsidePointerEvents(){return this._outsidePointerEvents}getConfig(){return this._config}updatePosition(){this._positionStrategy&&this._positionStrategy.apply()}updatePositionStrategy(t){t!==this._positionStrategy&&(this._positionStrategy&&this._positionStrategy.dispose(),this._positionStrategy=t,this.hasAttached()&&(t.attach(this),this.updatePosition()))}updateSize(t){this._config=x(x({},this._config),t),this._updateElementSize()}setDirection(t){this._config=F(x({},this._config),{direction:t}),this._updateElementDirection()}addPanelClass(t){this._pane&&this._toggleClasses(this._pane,t,!0)}removePanelClass(t){this._pane&&this._toggleClasses(this._pane,t,!1)}getDirection(){let t=this._config.direction;return t?typeof t=="string"?t:t.value:"ltr"}updateScrollStrategy(t){t!==this._scrollStrategy&&(this._disposeScrollStrategy(),this._scrollStrategy=t,this.hasAttached()&&(t.attach(this),t.enable()))}_updateElementDirection(){this._host.setAttribute("dir",this.getDirection())}_updateElementSize(){if(!this._pane)return;let t=this._pane.style;t.width=et(this._config.width),t.height=et(this._config.height),t.minWidth=et(this._config.minWidth),t.minHeight=et(this._config.minHeight),t.maxWidth=et(this._config.maxWidth),t.maxHeight=et(this._config.maxHeight)}_togglePointerEvents(t){this._pane.style.pointerEvents=t?"":"none"}_attachHost(){if(!this._host.parentElement){let t=this._config.usePopover?this._positionStrategy?.getPopoverInsertionPoint?.():null;U_(t)?t.after(this._host):t?.type==="parent"?t.element.appendChild(this._host):this._previousHostParent?.appendChild(this._host)}if(this._config.usePopover)try{this._host.showPopover()}catch(t){}}_attachBackdrop(){let t="cdk-overlay-backdrop-showing";this._backdropRef?.dispose(),this._backdropRef=new $_(this._document,this._renderer,this._ngZone,e=>{this._backdropClick.next(e)}),this._animationsDisabled&&this._backdropRef.element.classList.add("cdk-overlay-backdrop-noop-animation"),this._config.backdropClass&&this._toggleClasses(this._backdropRef.element,this._config.backdropClass,!0),this._config.usePopover?this._host.prepend(this._backdropRef.element):this._host.parentElement.insertBefore(this._backdropRef.element,this._host),!this._animationsDisabled&&typeof requestAnimationFrame<"u"?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>this._backdropRef?.element.classList.add(t))}):this._backdropRef.element.classList.add(t)}_updateStackingOrder(){!this._config.usePopover&&this._host.nextSibling&&this._host.parentNode.appendChild(this._host)}detachBackdrop(){this._animationsDisabled?(this._backdropRef?.dispose(),this._backdropRef=null):this._backdropRef?.detach()}_toggleClasses(t,e,o){let i=R_(e||[]).filter(r=>!!r);i.length&&(o?t.classList.add(...i):t.classList.remove(...i))}_detachContentWhenEmpty(){let t=!1;try{this._detachContentAfterRenderRef=Po(()=>{t=!0,this._detachContent()},{injector:this._injector})}catch(e){if(t)throw e;this._detachContent()}globalThis.MutationObserver&&this._pane&&(this._detachContentMutationObserver||=new globalThis.MutationObserver(()=>{this._detachContent()}),this._detachContentMutationObserver.observe(this._pane,{childList:!0}))}_detachContent(){(!this._pane||!this._host||this._pane.children.length===0)&&(this._pane&&this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!1),this._host&&this._host.parentElement&&(this._previousHostParent=this._host.parentElement,this._host.remove()),this._completeDetachContent())}_completeDetachContent(){this._detachContentAfterRenderRef?.destroy(),this._detachContentAfterRenderRef=void 0,this._detachContentMutationObserver?.disconnect()}_disposeScrollStrategy(){let t=this._scrollStrategy;t?.disable(),t?.detach?.()}},ay="cdk-overlay-connected-position-bounding-box",pR=/([A-Za-z%]+)$/;function W_(n,t){return new Bu(t,n.get(qs),n.get(Me),n.get(ir),n.get(hy))}var Bu=class{_viewportRuler;_document;_platform;_overlayContainer;_overlayRef;_isInitialRender=!1;_lastBoundingBoxSize={width:0,height:0};_isPushed=!1;_canPush=!0;_growAfterOpen=!1;_hasFlexibleDimensions=!0;_positionLocked=!1;_originRect;_overlayRect;_viewportRect;_containerRect;_viewportMargin=0;_scrollables=[];_preferredPositions=[];_origin;_pane;_isDisposed=!1;_boundingBox=null;_lastPosition=null;_lastScrollVisibility=null;_positionChanges=new fe;_resizeSubscription=Oe.EMPTY;_offsetX=0;_offsetY=0;_transformOriginSelector;_appliedPanelClasses=[];_previousPushAmount=null;_popoverLocation="global";positionChanges=this._positionChanges;get positions(){return this._preferredPositions}constructor(t,e,o,i,r){this._viewportRuler=e,this._document=o,this._platform=i,this._overlayContainer=r,this.setOrigin(t)}attach(t){this._overlayRef&&this._overlayRef,this._validatePositions(),t.hostElement.classList.add(ay),this._overlayRef=t,this._boundingBox=t.hostElement,this._pane=t.overlayElement,this._isDisposed=!1,this._isInitialRender=!0,this._lastPosition=null,this._resizeSubscription.unsubscribe(),this._resizeSubscription=this._viewportRuler.change().subscribe(()=>{this._isInitialRender=!0,this.apply()})}apply(){if(this._isDisposed||!this._platform.isBrowser)return;if(!this._isInitialRender&&this._positionLocked&&this._lastPosition){this.reapplyLastPosition();return}this._clearPanelClasses(),this._resetOverlayElementStyles(),this._resetBoundingBoxStyles(),this._viewportRect=this._getNarrowedViewportRect(),this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._containerRect=this._getContainerRect();let t=this._originRect,e=this._overlayRect,o=this._viewportRect,i=this._containerRect,r=[],a;for(let s of this._preferredPositions){let c=this._getOriginPoint(t,i,s),u=this._getOverlayPoint(c,e,s),f=this._getOverlayFit(u,e,o,s);if(f.isCompletelyWithinViewport){this._isPushed=!1,this._applyPosition(s,c);return}if(this._canFitWithFlexibleDimensions(f,u,o)){r.push({position:s,origin:c,overlayRect:e,boundingBoxRect:this._calculateBoundingBoxRect(c,s)});continue}(!a||a.overlayFit.visibleAreac&&(c=f,s=u)}this._isPushed=!1,this._applyPosition(s.position,s.origin);return}if(this._canPush){this._isPushed=!0,this._applyPosition(a.position,a.originPoint);return}this._applyPosition(a.position,a.originPoint)}detach(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()}dispose(){this._isDisposed||(this._boundingBox&&ar(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove(ay),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)}reapplyLastPosition(){if(this._isDisposed||!this._platform.isBrowser)return;let t=this._lastPosition;t?(this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect(),this._containerRect=this._getContainerRect(),this._applyPosition(t,this._getOriginPoint(this._originRect,this._containerRect,t))):this.apply()}withScrollableContainers(t){return this._scrollables=t,this}withPositions(t){return this._preferredPositions=t,t.indexOf(this._lastPosition)===-1&&(this._lastPosition=null),this._validatePositions(),this}withViewportMargin(t){return this._viewportMargin=t,this}withFlexibleDimensions(t=!0){return this._hasFlexibleDimensions=t,this}withGrowAfterOpen(t=!0){return this._growAfterOpen=t,this}withPush(t=!0){return this._canPush=t,this}withLockedPosition(t=!0){return this._positionLocked=t,this}setOrigin(t){return this._origin=t,this}withDefaultOffsetX(t){return this._offsetX=t,this}withDefaultOffsetY(t){return this._offsetY=t,this}withTransformOriginOn(t){return this._transformOriginSelector=t,this}withPopoverLocation(t){return this._popoverLocation=t,this}getPopoverInsertionPoint(){return this._popoverLocation==="global"?null:this._popoverLocation!=="inline"?this._popoverLocation:this._origin instanceof Be?this._origin.nativeElement:U_(this._origin)?this._origin:null}_getOriginPoint(t,e,o){let i;if(o.originX=="center")i=t.left+t.width/2;else{let a=this._isRtl()?t.right:t.left,s=this._isRtl()?t.left:t.right;i=o.originX=="start"?a:s}e.left<0&&(i-=e.left);let r;return o.originY=="center"?r=t.top+t.height/2:r=o.originY=="top"?t.top:t.bottom,e.top<0&&(r-=e.top),{x:i,y:r}}_getOverlayPoint(t,e,o){let i;o.overlayX=="center"?i=-e.width/2:o.overlayX==="start"?i=this._isRtl()?-e.width:0:i=this._isRtl()?0:-e.width;let r;return o.overlayY=="center"?r=-e.height/2:r=o.overlayY=="top"?0:-e.height,{x:t.x+i,y:t.y+r}}_getOverlayFit(t,e,o,i){let r=cy(e),{x:a,y:s}=t,c=this._getOffset(i,"x"),u=this._getOffset(i,"y");c&&(a+=c),u&&(s+=u);let f=0-a,_=a+r.width-o.width,h=0-s,C=s+r.height-o.height,O=this._subtractOverflows(r.width,f,_),P=this._subtractOverflows(r.height,h,C),T=O*P;return{visibleArea:T,isCompletelyWithinViewport:r.width*r.height===T,fitsInViewportVertically:P===r.height,fitsInViewportHorizontally:O==r.width}}_canFitWithFlexibleDimensions(t,e,o){if(this._hasFlexibleDimensions){let i=o.bottom-e.y,r=o.right-e.x,a=sy(this._overlayRef.getConfig().minHeight),s=sy(this._overlayRef.getConfig().minWidth),c=t.fitsInViewportVertically||a!=null&&a<=i,u=t.fitsInViewportHorizontally||s!=null&&s<=r;return c&&u}return!1}_pushOverlayOnScreen(t,e,o){if(this._previousPushAmount&&this._positionLocked)return{x:t.x+this._previousPushAmount.x,y:t.y+this._previousPushAmount.y};let i=cy(e),r=this._viewportRect,a=Math.max(t.x+i.width-r.width,0),s=Math.max(t.y+i.height-r.height,0),c=Math.max(r.top-o.top-t.y,0),u=Math.max(r.left-o.left-t.x,0),f=0,_=0;return i.width<=r.width?f=u||-a:f=t.xO&&!this._isInitialRender&&!this._growAfterOpen&&(a=t.y-O/2)}let c=e.overlayX==="start"&&!i||e.overlayX==="end"&&i,u=e.overlayX==="end"&&!i||e.overlayX==="start"&&i,f,_,h;if(u)h=o.width-t.x+this._getViewportMarginStart()+this._getViewportMarginEnd(),f=t.x-this._getViewportMarginStart();else if(c)_=t.x,f=o.right-t.x-this._getViewportMarginEnd();else{let C=Math.min(o.right-t.x+o.left,t.x),O=this._lastBoundingBoxSize.width;f=C*2,_=t.x-C,f>O&&!this._isInitialRender&&!this._growAfterOpen&&(_=t.x-O/2)}return{top:a,left:_,bottom:s,right:h,width:f,height:r}}_setBoundingBoxStyles(t,e){let o=this._calculateBoundingBoxRect(t,e);!this._isInitialRender&&!this._growAfterOpen&&(o.height=Math.min(o.height,this._lastBoundingBoxSize.height),o.width=Math.min(o.width,this._lastBoundingBoxSize.width));let i={};if(this._hasExactPosition())i.top=i.left="0",i.bottom=i.right="auto",i.maxHeight=i.maxWidth="",i.width=i.height="100%";else{let r=this._overlayRef.getConfig().maxHeight,a=this._overlayRef.getConfig().maxWidth;i.width=et(o.width),i.height=et(o.height),i.top=et(o.top)||"auto",i.bottom=et(o.bottom)||"auto",i.left=et(o.left)||"auto",i.right=et(o.right)||"auto",e.overlayX==="center"?i.alignItems="center":i.alignItems=e.overlayX==="end"?"flex-end":"flex-start",e.overlayY==="center"?i.justifyContent="center":i.justifyContent=e.overlayY==="bottom"?"flex-end":"flex-start",r&&(i.maxHeight=et(r)),a&&(i.maxWidth=et(a))}this._lastBoundingBoxSize=o,ar(this._boundingBox.style,i)}_resetBoundingBoxStyles(){ar(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})}_resetOverlayElementStyles(){ar(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})}_setOverlayElementStyles(t,e){let o={},i=this._hasExactPosition(),r=this._hasFlexibleDimensions,a=this._overlayRef.getConfig();if(i){let f=this._viewportRuler.getViewportScrollPosition();ar(o,this._getExactOverlayY(e,t,f)),ar(o,this._getExactOverlayX(e,t,f))}else o.position="static";let s="",c=this._getOffset(e,"x"),u=this._getOffset(e,"y");c&&(s+=`translateX(${c}px) `),u&&(s+=`translateY(${u}px)`),o.transform=s.trim(),a.maxHeight&&(i?o.maxHeight=et(a.maxHeight):r&&(o.maxHeight="")),a.maxWidth&&(i?o.maxWidth=et(a.maxWidth):r&&(o.maxWidth="")),ar(this._pane.style,o)}_getExactOverlayY(t,e,o){let i={top:"",bottom:""},r=this._getOverlayPoint(e,this._overlayRect,t);if(this._isPushed&&(r=this._pushOverlayOnScreen(r,this._overlayRect,o)),t.overlayY==="bottom"){let a=this._document.documentElement.clientHeight;i.bottom=`${a-(r.y+this._overlayRect.height)}px`}else i.top=et(r.y);return i}_getExactOverlayX(t,e,o){let i={left:"",right:""},r=this._getOverlayPoint(e,this._overlayRect,t);this._isPushed&&(r=this._pushOverlayOnScreen(r,this._overlayRect,o));let a;if(this._isRtl()?a=t.overlayX==="end"?"left":"right":a=t.overlayX==="end"?"right":"left",a==="right"){let s=this._document.documentElement.clientWidth;i.right=`${s-(r.x+this._overlayRect.width)}px`}else i.left=et(r.x);return i}_getScrollVisibility(){let t=this._getOriginRect(),e=this._pane.getBoundingClientRect(),o=this._scrollables.map(i=>i.getElementRef().nativeElement.getBoundingClientRect());return{isOriginClipped:iy(t,o),isOriginOutsideView:z_(t,o),isOverlayClipped:iy(e,o),isOverlayOutsideView:z_(e,o)}}_subtractOverflows(t,...e){return e.reduce((o,i)=>o-Math.max(i,0),t)}_getNarrowedViewportRect(){let t=this._document.documentElement.clientWidth,e=this._document.documentElement.clientHeight,o=this._viewportRuler.getViewportScrollPosition();return{top:o.top+this._getViewportMarginTop(),left:o.left+this._getViewportMarginStart(),right:o.left+t-this._getViewportMarginEnd(),bottom:o.top+e-this._getViewportMarginBottom(),width:t-this._getViewportMarginStart()-this._getViewportMarginEnd(),height:e-this._getViewportMarginTop()-this._getViewportMarginBottom()}}_isRtl(){return this._overlayRef.getDirection()==="rtl"}_hasExactPosition(){return!this._hasFlexibleDimensions||this._isPushed}_getOffset(t,e){return e==="x"?t.offsetX==null?this._offsetX:t.offsetX:t.offsetY==null?this._offsetY:t.offsetY}_validatePositions(){}_addPanelClasses(t){this._pane&&R_(t).forEach(e=>{e!==""&&this._appliedPanelClasses.indexOf(e)===-1&&(this._appliedPanelClasses.push(e),this._pane.classList.add(e))})}_clearPanelClasses(){this._pane&&(this._appliedPanelClasses.forEach(t=>{this._pane.classList.remove(t)}),this._appliedPanelClasses=[])}_getViewportMarginStart(){return typeof this._viewportMargin=="number"?this._viewportMargin:this._viewportMargin?.start??0}_getViewportMarginEnd(){return typeof this._viewportMargin=="number"?this._viewportMargin:this._viewportMargin?.end??0}_getViewportMarginTop(){return typeof this._viewportMargin=="number"?this._viewportMargin:this._viewportMargin?.top??0}_getViewportMarginBottom(){return typeof this._viewportMargin=="number"?this._viewportMargin:this._viewportMargin?.bottom??0}_getOriginRect(){let t=this._origin;if(t instanceof Be)return t.nativeElement.getBoundingClientRect();if(t instanceof Element)return t.getBoundingClientRect();let e=t.width||0,o=t.height||0;return{top:t.y,bottom:t.y+o,left:t.x,right:t.x+e,height:o,width:e}}_getContainerRect(){let t=this._overlayRef.getConfig().usePopover&&this._popoverLocation!=="global",e=this._overlayContainer.getContainerElement();t&&(e.style.display="block");let o=e.getBoundingClientRect();return t&&(e.style.display=""),o}};function ar(n,t){for(let e in t)t.hasOwnProperty(e)&&(n[e]=t[e]);return n}function sy(n){if(typeof n!="number"&&n!=null){let[t,e]=n.split(pR);return!e||e==="px"?parseFloat(t):null}return n||null}function cy(n){return{top:Math.floor(n.top),right:Math.floor(n.right),bottom:Math.floor(n.bottom),left:Math.floor(n.left),width:Math.floor(n.width),height:Math.floor(n.height)}}function fR(n,t){return n===t?!0:n.isOriginClipped===t.isOriginClipped&&n.isOriginOutsideView===t.isOriginOutsideView&&n.isOverlayClipped===t.isOverlayClipped&&n.isOverlayOutsideView===t.isOverlayOutsideView}var ly="cdk-global-overlay-wrapper";function Cy(n){return new ju}var ju=class{_overlayRef;_cssPosition="static";_topOffset="";_bottomOffset="";_alignItems="";_xPosition="";_xOffset="";_width="";_height="";_isDisposed=!1;attach(t){let e=t.getConfig();this._overlayRef=t,this._width&&!e.width&&t.updateSize({width:this._width}),this._height&&!e.height&&t.updateSize({height:this._height}),t.hostElement.classList.add(ly),this._isDisposed=!1}top(t=""){return this._bottomOffset="",this._topOffset=t,this._alignItems="flex-start",this}left(t=""){return this._xOffset=t,this._xPosition="left",this}bottom(t=""){return this._topOffset="",this._bottomOffset=t,this._alignItems="flex-end",this}right(t=""){return this._xOffset=t,this._xPosition="right",this}start(t=""){return this._xOffset=t,this._xPosition="start",this}end(t=""){return this._xOffset=t,this._xPosition="end",this}width(t=""){return this._overlayRef?this._overlayRef.updateSize({width:t}):this._width=t,this}height(t=""){return this._overlayRef?this._overlayRef.updateSize({height:t}):this._height=t,this}centerHorizontally(t=""){return this.left(t),this._xPosition="center",this}centerVertically(t=""){return this.top(t),this._alignItems="center",this}apply(){if(!this._overlayRef||!this._overlayRef.hasAttached())return;let t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement.style,o=this._overlayRef.getConfig(),{width:i,height:r,maxWidth:a,maxHeight:s}=o,c=(i==="100%"||i==="100vw")&&(!a||a==="100%"||a==="100vw"),u=(r==="100%"||r==="100vh")&&(!s||s==="100%"||s==="100vh"),f=this._xPosition,_=this._xOffset,h=this._overlayRef.getConfig().direction==="rtl",C="",O="",P="";c?P="flex-start":f==="center"?(P="center",h?O=_:C=_):h?f==="left"||f==="end"?(P="flex-end",C=_):(f==="right"||f==="start")&&(P="flex-start",O=_):f==="left"||f==="start"?(P="flex-start",C=_):(f==="right"||f==="end")&&(P="flex-end",O=_),t.position=this._cssPosition,t.marginLeft=c?"0":C,t.marginTop=u?"0":this._topOffset,t.marginBottom=this._bottomOffset,t.marginRight=c?"0":O,e.justifyContent=P,e.alignItems=u?"flex-start":this._alignItems}dispose(){if(this._isDisposed||!this._overlayRef)return;let t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement,o=e.style;e.classList.remove(ly),o.justifyContent=o.alignItems=t.marginTop=t.marginBottom=t.marginLeft=t.marginRight=t.position="",this._overlayRef=null,this._isDisposed=!0}},My=(()=>{class n{_injector=v(Ne);global(){return Cy()}flexibleConnectedTo(e){return W_(this._injector,e)}static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:n.\u0275fac})}return n})(),G_=new $("OVERLAY_DEFAULT_CONFIG");function q_(n,t){n.get(A_).load(_y);let e=n.get(hy),o=n.get(Me),i=n.get(Tu),r=n.get(Wt),a=n.get(F_),s=n.get(dt,null,{optional:!0})||n.get($t).createRenderer(null,null),c=new Xs(t),u=n.get(G_,null,{optional:!0})?.usePopover??!0;c.direction=c.direction||a.value,!o.body||!("showPopover"in o.body)?c.usePopover=!1:c.usePopover=t?.usePopover??u;let f=o.createElement("div"),_=o.createElement("div");f.id=i.getId("cdk-overlay-"),f.classList.add("cdk-overlay-pane"),_.appendChild(f),c.usePopover&&(_.setAttribute("popover","manual"),_.classList.add("cdk-overlay-popover"));let h=c.usePopover?c.positionStrategy?.getPopoverInsertionPoint?.():null;return U_(h)?h.after(_):h?.type==="parent"?h.element.appendChild(_):e.getContainerElement().appendChild(_),new Vu(new Au(f,r,n),_,f,c,n.get(ce),n.get(fy),o,n.get(Xo),n.get(my),t?.disableAnimations??n.get(hp,null,{optional:!0})==="NoopAnimations",n.get(De),s)}var by=(()=>{class n{scrollStrategies=v(gy);_positionBuilder=v(My);_injector=v(Ne);create(e){return q_(this._injector,e)}position(){return this._positionBuilder}static \u0275fac=function(o){return new(o||n)};static \u0275prov=oe({token:n,factory:n.\u0275fac})}return n})(),mR=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],_R=new $("cdk-connected-overlay-scroll-strategy",{providedIn:"root",factory:()=>{let n=v(Ne);return()=>H_(n)}}),Qs=(()=>{class n{elementRef=v(Be);static \u0275fac=function(o){return new(o||n)};static \u0275dir=Pe({type:n,selectors:[["","cdk-overlay-origin",""],["","overlay-origin",""],["","cdkOverlayOrigin",""]],exportAs:["cdkOverlayOrigin"]})}return n})(),Py=new $("cdk-connected-overlay-default-config"),Y_=(()=>{class n{_dir=v(F_,{optional:!0});_injector=v(Ne);_overlayRef;_templatePortal;_backdropSubscription=Oe.EMPTY;_attachSubscription=Oe.EMPTY;_detachSubscription=Oe.EMPTY;_positionSubscription=Oe.EMPTY;_offsetX;_offsetY;_position;_scrollStrategyFactory=v(_R);_ngZone=v(ce);origin;positions;positionStrategy;get offsetX(){return this._offsetX}set offsetX(e){this._offsetX=e,this._position&&this._updatePositionStrategy(this._position)}get offsetY(){return this._offsetY}set offsetY(e){this._offsetY=e,this._position&&this._updatePositionStrategy(this._position)}width;height;minWidth;minHeight;backdropClass;panelClass;viewportMargin=0;scrollStrategy;open=!1;disableClose=!1;transformOriginSelector;hasBackdrop=!1;lockPosition=!1;flexibleDimensions=!1;growAfterOpen=!1;push=!1;disposeOnNavigation=!1;usePopover;matchWidth=!1;set _config(e){typeof e!="string"&&this._assignConfig(e)}backdropClick=new ve;positionChange=new ve;attach=new ve;detach=new ve;overlayKeydown=new ve;overlayOutsideClick=new ve;constructor(){let e=v(Qn),o=v(Rn),i=v(Py,{optional:!0}),r=v(G_,{optional:!0});this.usePopover=r?.usePopover===!1?null:"global",this._templatePortal=new Ks(e,o),this.scrollStrategy=this._scrollStrategyFactory(),i&&this._assignConfig(i)}get overlayRef(){return this._overlayRef}get dir(){return this._dir?this._dir.value:"ltr"}ngOnDestroy(){this._attachSubscription.unsubscribe(),this._detachSubscription.unsubscribe(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this._overlayRef?.dispose()}ngOnChanges(e){this._position&&(this._updatePositionStrategy(this._position),this._overlayRef?.updateSize({width:this._getWidth(),minWidth:this.minWidth,height:this.height,minHeight:this.minHeight}),e.origin&&this.open&&this._position.apply()),e.open&&(this.open?this.attachOverlay():this.detachOverlay())}_createOverlay(){(!this.positions||!this.positions.length)&&(this.positions=mR);let e=this._overlayRef=q_(this._injector,this._buildConfig());this._attachSubscription=e.attachments().subscribe(()=>this.attach.emit()),this._detachSubscription=e.detachments().subscribe(()=>this.detach.emit()),e.keydownEvents().subscribe(o=>{this.overlayKeydown.next(o),o.keyCode===27&&!this.disableClose&&!ny(o)&&(o.preventDefault(),this.detachOverlay())}),this._overlayRef.outsidePointerEvents().subscribe(o=>{let i=this._getOriginElement(),r=Du(o);(!i||i!==r&&!i.contains(r))&&this.overlayOutsideClick.next(o)})}_buildConfig(){let e=this._position=this.positionStrategy||this._createPositionStrategy(),o=new Xs({direction:this._dir||"ltr",positionStrategy:e,scrollStrategy:this.scrollStrategy,hasBackdrop:this.hasBackdrop,disposeOnNavigation:this.disposeOnNavigation,usePopover:!!this.usePopover});return(this.height||this.height===0)&&(o.height=this.height),(this.minWidth||this.minWidth===0)&&(o.minWidth=this.minWidth),(this.minHeight||this.minHeight===0)&&(o.minHeight=this.minHeight),this.backdropClass&&(o.backdropClass=this.backdropClass),this.panelClass&&(o.panelClass=this.panelClass),o}_updatePositionStrategy(e){let o=this.positions.map(i=>({originX:i.originX,originY:i.originY,overlayX:i.overlayX,overlayY:i.overlayY,offsetX:i.offsetX||this.offsetX,offsetY:i.offsetY||this.offsetY,panelClass:i.panelClass||void 0}));return e.setOrigin(this._getOrigin()).withPositions(o).withFlexibleDimensions(this.flexibleDimensions).withPush(this.push).withGrowAfterOpen(this.growAfterOpen).withViewportMargin(this.viewportMargin).withLockedPosition(this.lockPosition).withTransformOriginOn(this.transformOriginSelector).withPopoverLocation(this.usePopover===null?"global":this.usePopover)}_createPositionStrategy(){let e=W_(this._injector,this._getOrigin());return this._updatePositionStrategy(e),e}_getOrigin(){return this.origin instanceof Qs?this.origin.elementRef:this.origin}_getOriginElement(){return this.origin instanceof Qs?this.origin.elementRef.nativeElement:this.origin instanceof Be?this.origin.nativeElement:typeof Element<"u"&&this.origin instanceof Element?this.origin:null}_getWidth(){return this.width?this.width:this.matchWidth?this._getOriginElement()?.getBoundingClientRect?.().width:void 0}attachOverlay(){this._overlayRef||this._createOverlay();let e=this._overlayRef;e.getConfig().hasBackdrop=this.hasBackdrop,e.updateSize({width:this._getWidth()}),e.hasAttached()||e.attach(this._templatePortal),this.hasBackdrop?this._backdropSubscription=e.backdropClick().subscribe(o=>this.backdropClick.emit(o)):this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this.positionChange.observers.length>0&&(this._positionSubscription=this._position.positionChanges.pipe(hg(()=>this.positionChange.observers.length>0)).subscribe(o=>{this._ngZone.run(()=>this.positionChange.emit(o)),this.positionChange.observers.length===0&&this._positionSubscription.unsubscribe()})),this.open=!0}detachOverlay(){this._overlayRef?.detach(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this.open=!1}_assignConfig(e){this.origin=e.origin??this.origin,this.positions=e.positions??this.positions,this.positionStrategy=e.positionStrategy??this.positionStrategy,this.offsetX=e.offsetX??this.offsetX,this.offsetY=e.offsetY??this.offsetY,this.width=e.width??this.width,this.height=e.height??this.height,this.minWidth=e.minWidth??this.minWidth,this.minHeight=e.minHeight??this.minHeight,this.backdropClass=e.backdropClass??this.backdropClass,this.panelClass=e.panelClass??this.panelClass,this.viewportMargin=e.viewportMargin??this.viewportMargin,this.scrollStrategy=e.scrollStrategy??this.scrollStrategy,this.disableClose=e.disableClose??this.disableClose,this.transformOriginSelector=e.transformOriginSelector??this.transformOriginSelector,this.hasBackdrop=e.hasBackdrop??this.hasBackdrop,this.lockPosition=e.lockPosition??this.lockPosition,this.flexibleDimensions=e.flexibleDimensions??this.flexibleDimensions,this.growAfterOpen=e.growAfterOpen??this.growAfterOpen,this.push=e.push??this.push,this.disposeOnNavigation=e.disposeOnNavigation??this.disposeOnNavigation,this.usePopover=e.usePopover??this.usePopover,this.matchWidth=e.matchWidth??this.matchWidth}static \u0275fac=function(o){return new(o||n)};static \u0275dir=Pe({type:n,selectors:[["","cdk-connected-overlay",""],["","connected-overlay",""],["","cdkConnectedOverlay",""]],inputs:{origin:[0,"cdkConnectedOverlayOrigin","origin"],positions:[0,"cdkConnectedOverlayPositions","positions"],positionStrategy:[0,"cdkConnectedOverlayPositionStrategy","positionStrategy"],offsetX:[0,"cdkConnectedOverlayOffsetX","offsetX"],offsetY:[0,"cdkConnectedOverlayOffsetY","offsetY"],width:[0,"cdkConnectedOverlayWidth","width"],height:[0,"cdkConnectedOverlayHeight","height"],minWidth:[0,"cdkConnectedOverlayMinWidth","minWidth"],minHeight:[0,"cdkConnectedOverlayMinHeight","minHeight"],backdropClass:[0,"cdkConnectedOverlayBackdropClass","backdropClass"],panelClass:[0,"cdkConnectedOverlayPanelClass","panelClass"],viewportMargin:[0,"cdkConnectedOverlayViewportMargin","viewportMargin"],scrollStrategy:[0,"cdkConnectedOverlayScrollStrategy","scrollStrategy"],open:[0,"cdkConnectedOverlayOpen","open"],disableClose:[0,"cdkConnectedOverlayDisableClose","disableClose"],transformOriginSelector:[0,"cdkConnectedOverlayTransformOriginOn","transformOriginSelector"],hasBackdrop:[2,"cdkConnectedOverlayHasBackdrop","hasBackdrop",Pt],lockPosition:[2,"cdkConnectedOverlayLockPosition","lockPosition",Pt],flexibleDimensions:[2,"cdkConnectedOverlayFlexibleDimensions","flexibleDimensions",Pt],growAfterOpen:[2,"cdkConnectedOverlayGrowAfterOpen","growAfterOpen",Pt],push:[2,"cdkConnectedOverlayPush","push",Pt],disposeOnNavigation:[2,"cdkConnectedOverlayDisposeOnNavigation","disposeOnNavigation",Pt],usePopover:[0,"cdkConnectedOverlayUsePopover","usePopover"],matchWidth:[2,"cdkConnectedOverlayMatchWidth","matchWidth",Pt],_config:[0,"cdkConnectedOverlay","_config"]},outputs:{backdropClick:"backdropClick",positionChange:"positionChange",attach:"attach",detach:"detach",overlayKeydown:"overlayKeydown",overlayOutsideClick:"overlayOutsideClick"},exportAs:["cdkConnectedOverlay"],features:[nn]})}return n})(),K_=(()=>{class n{static \u0275fac=function(o){return new(o||n)};static \u0275mod=gt({type:n});static \u0275inj=at({providers:[by],imports:[Gs,ty,L_,L_]})}return n})();var CR=1e6;function Z_(n){let t=Math.max(0,Math.floor(Number(n)||0)),e=Math.floor(t/3600),o=Math.floor(t%3600/60),i=t%60,r=a=>String(a).padStart(2,"0");return e>0?`${e}h ${r(o)}m ${r(i)}s`:o>0?`${o}m ${r(i)}s`:`${i}s`}function Oy(n){let t=Math.max(0,Math.floor(Number(n)||0));return t<1e3?String(t):t<1e6?`${(t/1e3).toFixed(1).replace(/\.0$/,"")}k`:`${(t/1e6).toFixed(2).replace(/\.?0+$/,"")}M`}function vy(n,t){let e=Number(n),o=Number(t)||CR;if(!Number.isFinite(e)||e<0||n===null||n===void 0)return null;let i=e/o*100;return Math.min(100,Math.round(i*10)/10)}function yy(n,t,e){if(!n?.start_time)return 0;let o=n.start_time*1e3,i=!t&&n.end_time?n.end_time*1e3:e;return Math.max(0,Math.round((i-o)/1e3))}function xy(n,t){return n==="verify"?Xt[so(Xt,t,ai)].label:Qt[so(Qt,t,si)].label}function wy(n){let t=n;if(typeof t=="string")try{t=JSON.parse(t)}catch(i){return null}if(!t||typeof t!="object")return null;let e=t.run_tuning;if(!e||typeof e!="object")return null;let o=e;return!o.verification_level&&!o.explorer_mode?null:{verification_level:o.verification_level??null,explorer_mode:o.explorer_mode??null}}function co(n){return n?n.split(/(\*\*.*?\*\*|`.*?`)/g).filter(e=>e!=="").map(e=>e.startsWith("**")&&e.endsWith("**")?{text:e.slice(2,-2),bold:!0,code:!1}:e.startsWith("`")&&e.endsWith("`")?{text:e.slice(1,-1),bold:!1,code:!0}:{text:e,bold:!1,code:!1}):[]}function Js(n){return n?n.split(` `).map(t=>{let e=t.trim(),o=t.length-t.trimStart().length;if(e.startsWith("- [x] ")||e.startsWith("- [X] ")){let a=e.substring(6);return{type:"checked",segments:co(a),indent:o}}if(e.startsWith("- [/] ")){let a=e.substring(6);return{type:"progress",segments:co(a),indent:o}}if(e.startsWith("- [ ] ")){let a=e.substring(6);return{type:"unchecked",segments:co(a),indent:o}}let i=e.match(/^[-*]\s*(verify|assert)(@end)?\s*:\s*(.*)$/i);if(i){let a=i[1].toLowerCase(),s=!!i[2],c=i[3].trim();return{type:"verify",checkKind:a,atEnd:s,segments:co(c),indent:o}}let r=e.match(/^[-*]\s*finding\s*:\s*(.*)$/i);if(r){let a=r[1].trim();return{type:"finding",checkKind:"finding",segments:co(a),indent:o}}if(e.startsWith("- ")||e.startsWith("* ")){let a=e.substring(2);return{type:"list-item",segments:co(a),indent:o}}if(e.startsWith("# ")){let a=e.substring(2);return{type:"h1",segments:co(a),indent:o}}if(e.startsWith("## ")){let a=e.substring(3);return{type:"h2",segments:co(a),indent:o}}if(e.startsWith("### ")){let a=e.substring(4);return{type:"h3",segments:co(a),indent:o}}return e?{type:"text",segments:co(t),indent:o}:{type:"empty",segments:[],indent:0}}):[]}function ec(n){let t=Js(n),e=[],o=[],i=null,r=null,a=0;for(let s of t){if(s.type==="empty")continue;if((s.type==="h1"||s.type==="h2")&&!i){i=s.segments.map(u=>u.text).join("");continue}["checked","progress","unchecked"].includes(s.type)&&(!r||s.indent<=(r._indent??0))?(a++,r={index:a,type:s.type,segments:s.segments,subSteps:[],checks:[],_indent:s.indent},e.push(r)):r&&s.indent>(r._indent??0)?s.type==="verify"||s.type==="assert"||s.type==="finding"?r.checks.push(s):r.subSteps.push(s):o.push(s)}return{title:i,milestones:e,otherLines:o}}function Sy(n){if(!n)return null;let t=n.trim();if(t.includes("```json")){let e=t.split("```json");e.length>1&&(t=e[1].split("```")[0].trim())}else if(t.includes("```")){let e=t.split("```");e.length>1&&(t=e[1].split("```")[0].trim())}try{let e=JSON.parse(t);if(e&&typeof e=="object"&&"success"in e)return{success:!!e.success,reason:e.reason||"\u672A\u63D0\u4F9B\u539F\u56E0\u3002"}}catch(e){}return null}function sr(n){return n?n.replace(/`([^`]+)`/g,'$1').replace(/\*\*\*([^*]+)\*\*\*/g,"$1").replace(/___([^_]+)___/g,"$1").replace(/\*\*([^*]+)\*\*/g,"$1").replace(/__([^_]+)__/g,"$1").replace(/\*([^*]+)\*/g,"$1").replace(/\b_([^_]+)_\b/g,"$1").replace(/~~([^~]+)~~/g,"$1"):""}function X_(n){if(!n)return"";let o=n.replace(/<\/?(thought|short_term_memory|strong_term_memory|reasoning|plan|task_plan|call_tool)[^\n>]*>?/gi,"").replace(/\r\n/g,` `).replace(/\r/g,` `).replace(/\n{3,}/g,` `).trim().replace(/&/g,"&").replace(//g,">").split(` `),i=[],r=null,a=!1,s="",c=[],u=()=>{r&&(i.push(``),r=null)};for(let f=0;f${T}`),a=!1,c=[],s=""}else u(),a=!0,s=h.substring(3).trim(),c=[];continue}if(a){c.push(_);continue}let C=h.match(/^(#{1,6})\s+(.*)$/);if(C){u();let T=C[1].length,R=sr(C[2]);i.push(`${R}`);continue}if(/^(\-{3,}|\*{3,}|_{3,})$/.test(h)){u(),i.push('
');continue}if(h.startsWith("> ")||h.startsWith(">")){u();let T=sr(h.replace(/^>\s?/,""));i.push(`
${T}
`);continue}let O=_.match(/^(\s*)([\*\-])\s+(.*)$/);if(O){r!=="ul"&&(u(),r="ul",i.push("
    "));let T=O[1].length,D=Math.max(0,Math.floor((T-2)/2))*12,H=D?` style="margin-left: ${D}px"`:"",ue=O[3],J=ue.match(/^(verify|assert)(@end)?\s*:\s*(.*)$/i),X=ue.match(/^finding\s*:\s*(.*)$/i);if(J){let q=J[1].toLowerCase(),he=J[2]?"@end":"",Ve=q==="assert"?" assert":"",Dt=sr(J[3].trim());i.push(`${q}${he}${Dt}`)}else if(X){let q=sr(X[1].trim());i.push(`finding${q}`)}else{let q=sr(ue);i.push(`${q}`)}continue}let P=_.match(/^(\s*)(\d+)\.\s+(.*)$/);if(P){r!=="ol"&&(u(),r="ol",i.push("
      "));let T=P[1].length,D=Math.max(0,Math.floor((T-2)/2))*12,H=D?` style="margin-left: ${D}px"`:"",ue=sr(P[3]);i.push(`${ue}`);continue}if(u(),h==="")i.push('
      ');else{let T=sr(_);i.push(`
      ${T}
      `)}}if(a){let f=c.join(` `);i.push(`
      ${f}
      `)}return u(),i.join(` `)}var MR=n=>[n],Ey=(n,t)=>t.id||n;function bR(n,t){n&1&&(l(0,"div",28),g(1," \u6CA1\u6709\u6B63\u5728\u6267\u884C\u6216\u6392\u961F\u7684\u4EFB\u52A1 "),d())}function PR(n,t){n&1&&z(0,"span",36)}function OR(n,t){if(n&1&&(l(0,"span",38)(1,"span",47),g(2,"phone_android"),d(),l(3,"span",48),g(4),d()()),n&2){let e=m().$implicit,o=m(2);N("title","Device: "+o.getDeviceSerial(e)),p(4),y(o.getDeviceSerial(e))}}function vR(n,t){n&1&&(l(0,"span",39),g(1,"\xB7"),d())}function yR(n,t){if(n&1){let e=B();l(0,"button",49),I("click",function(i){S(e);let r=m().$implicit,a=m(2);return k(a.stopTask(r.session_id,i))}),l(1,"span",25),g(2,"stop_circle"),d()()}}function xR(n,t){if(n&1){let e=B();l(0,"button",50),I("click",function(i){S(e);let r=m().$implicit,a=m(2);return k(a.deleteTask(r.session_id,i))}),l(1,"span",25),g(2,"delete"),d()()}}function wR(n,t){if(n&1){let e=B();l(0,"div",33),I("click",function(i){let r=S(e).$implicit,a=m(2);return k(a.selectTask(r.session_id,i))}),l(1,"div",34)(2,"span",35),M(3,PR,1,0,"span",36),g(4),mt(5,"uiLabel"),d(),l(6,"div",37),M(7,OR,5,2,"span",38),M(8,vR,2,0,"span",39),l(9,"span",40),g(10),mt(11,"date"),d(),M(12,yR,3,0,"button",41),M(13,xR,3,0,"button",42),d()(),l(14,"div",43),g(15),d(),l(16,"div",44)(17,"span",45),g(18),d(),l(19,"span",46),g(20),mt(21,"date"),d()()()}if(n&2){let e=t.$implicit,o=m(2);E("selected",o.agentService.currentSessionId()===e.session_id)("running",o.getTaskStatus(e)==="running"),p(2),N("ngClass",o.getTaskStatus(e)),p(),b(o.getTaskStatus(e)==="running"?3:-1),p(),L(" ",qi(5,18,o.getTaskStatus(e))," "),p(3),b(o.getDeviceSerial(e)?7:-1),p(),b(o.getDeviceSerial(e)?8:-1),p(2),y(qt(11,20,e.start_time*1e3,"shortTime")),p(2),b(o.getTaskStatus(e)==="running"||o.getTaskStatus(e)==="paused"?12:-1),p(),b(o.getTaskStatus(e)!=="running"&&o.getTaskStatus(e)!=="paused"?13:-1),p(),N("title",Gi(e.initial_goal)),p(),L(" ",e.initial_goal||"\u672A\u547D\u540D\u4EFB\u52A1"," "),p(2),N("title",e.session_id),p(),L("ID: ",e.session_id),p(2),y(qt(21,23,e.start_time*1e3,"MM/dd/yy"))}}function SR(n,t){n&1&&(l(0,"div",28),g(1," \u6682\u65E0\u5386\u53F2\u4EFB\u52A1 "),d())}function kR(n,t){n&1&&z(0,"span",36)}function ER(n,t){if(n&1&&(l(0,"span",38)(1,"span",47),g(2,"phone_android"),d(),l(3,"span",48),g(4),d()()),n&2){let e=m().$implicit,o=m(2);N("title","Device: "+o.getDeviceSerial(e)),p(4),y(o.getDeviceSerial(e))}}function DR(n,t){n&1&&(l(0,"span",39),g(1,"\xB7"),d())}function IR(n,t){if(n&1){let e=B();l(0,"button",50),I("click",function(i){S(e);let r=m().$implicit,a=m(2);return k(a.deleteTask(r.session_id,i))}),l(1,"span",25),g(2,"delete"),d()()}}function TR(n,t){if(n&1){let e=B();l(0,"div",33),I("click",function(i){let r=S(e).$implicit,a=m(2);return k(a.selectTask(r.session_id,i))}),l(1,"div",34)(2,"span",35),M(3,kR,1,0,"span",36),g(4),mt(5,"uiLabel"),d(),l(6,"div",37),M(7,ER,5,2,"span",38),M(8,DR,2,0,"span",39),l(9,"span",40),g(10),mt(11,"date"),d(),M(12,IR,3,0,"button",42),d()(),l(13,"div",43),g(14),d(),l(15,"div",44)(16,"span",45),g(17),d(),l(18,"span",46),g(19),mt(20,"date"),d()()()}if(n&2){let e=t.$implicit,o=m(2);E("selected",o.agentService.currentSessionId()===e.session_id)("running",o.getTaskStatus(e)==="running"),p(2),N("ngClass",o.getTaskStatus(e)),p(),b(o.getTaskStatus(e)==="running"?3:-1),p(),L(" ",qi(5,17,o.getTaskStatus(e))," "),p(3),b(o.getDeviceSerial(e)?7:-1),p(),b(o.getDeviceSerial(e)?8:-1),p(2),y(qt(11,19,e.start_time*1e3,"shortTime")),p(2),b(o.getTaskStatus(e)!=="running"&&o.getTaskStatus(e)!=="paused"?12:-1),p(),N("title",Gi(e.initial_goal)),p(),L(" ",e.initial_goal||"\u672A\u547D\u540D\u4EFB\u52A1"," "),p(2),N("title",e.session_id),p(),L("ID: ",e.session_id),p(2),y(qt(20,22,e.start_time*1e3,"MM/dd/yy"))}}function AR(n,t){if(n&1&&(l(0,"div",23)(1,"div",24)(2,"span",25),g(3,"list_alt"),d(),l(4,"span"),g(5,"\u4EFB\u52A1\u961F\u5217"),d()(),l(6,"div",26)(7,"span",27),g(8,"bolt"),d(),l(9,"span"),g(10),d()(),M(11,bR,2,0,"div",28),W(12,wR,22,26,"div",29,je().trackSession,!0),l(14,"div",30)(15,"span",31),g(16,"history"),d(),l(17,"span"),g(18),d()(),M(19,SR,2,0,"div",28),l(20,"div",32),W(21,TR,21,25,"div",29,je().trackSession,!0),d()()),n&2){let e=m();p(10),L("Active Queue (",e.activeQueue().length,")"),p(),b(e.activeQueue().length===0?11:-1),p(),G(e.activeQueue()),p(6),L("Past Runs & History (",e.historyTasks().length,")"),p(),b(e.historyTasks().length===0?19:-1),p(2),G(e.historyTasks())}}function RR(n,t){if(n&1){let e=B();l(0,"button",56),I("click",function(i){let r=S(e).$implicit,a=m(3);return k(a.selectNote(r,i))}),l(1,"span",57),g(2,"draft"),d(),g(3),d()}if(n&2){let e=t.$implicit,o=m(3);E("active",o.agentService.selectedNoteKey()===e),p(3),L(" ",e," ")}}function FR(n,t){if(n&1&&(l(0,"div",52)(1,"div",54),W(2,RR,4,3,"button",55,je().trackNoteKey,!0),d()()),n&2){let e=m(2);p(2),G(e.noteKeys())}}function NR(n,t){n&1&&(l(0,"div",28)(1,"span",58),g(2,"description"),d(),l(3,"span"),g(4,"\u6B64\u4F1A\u8BDD\u6682\u65E0\u7B14\u8BB0\u3002"),d()())}function LR(n,t){if(n&1&&(l(0,"h3",59),g(1),d()),n&2){let e=m(3);p(),y(e.parsedNote().title)}}function VR(n,t){n&1&&(l(0,"span",64),g(1,"check_box"),d())}function BR(n,t){n&1&&(l(0,"span",65),g(1,"indeterminate_check_box"),d())}function jR(n,t){n&1&&(l(0,"span",66),g(1,"check_box_outline_blank"),d())}function zR(n,t){if(n&1&&(l(0,"span"),g(1),d()),n&2){let e=t.$implicit;E("bold-segment",e.bold)("code-segment",e.code),p(),y(e.text)}}function $R(n,t){n&1&&(l(0,"span",73),g(1,"check_box"),d())}function HR(n,t){n&1&&(l(0,"span",74),g(1,"indeterminate_check_box"),d())}function UR(n,t){n&1&&(l(0,"span",75),g(1,"check_box_outline_blank"),d())}function WR(n,t){n&1&&(l(0,"span",76),g(1,"\u2022"),d())}function GR(n,t){if(n&1&&(l(0,"span"),g(1),d()),n&2){let e=t.$implicit;E("bold-segment",e.bold)("code-segment",e.code),p(),y(e.text)}}function qR(n,t){if(n&1&&(l(0,"span",77),W(1,GR,2,5,"span",68,ze),d()),n&2){let e=m().$implicit;p(),G(e.segments)}}function YR(n,t){if(n&1&&(l(0,"div",72),M(1,$R,2,0,"span",73)(2,HR,2,0,"span",74)(3,UR,2,0,"span",75)(4,WR,2,0,"span",76),M(5,qR,3,0,"span",77),d()),n&2){let e,o=t.$implicit;Ie("padding-left",o.indent>2?(o.indent-2)*12:0,"px"),N("ngClass",o.type),p(),b((e=o.type)==="checked"?1:e==="progress"?2:e==="unchecked"?3:e==="list-item"?4:-1),p(4),b(o.type!=="empty"?5:-1)}}function KR(n,t){if(n&1&&(l(0,"div",69),W(1,YR,6,5,"div",71,je().trackMarkdownLine,!0),d()),n&2){let e=m().$implicit;p(),G(e.subSteps)}}function ZR(n,t){if(n&1&&(l(0,"span"),g(1),d()),n&2){let e=t.$implicit;E("bold-segment",e.bold)("code-segment",e.code),p(),y(e.text)}}function XR(n,t){if(n&1&&(l(0,"div",79)(1,"div",80)(2,"span",81),g(3),d()(),l(4,"div",82),W(5,ZR,2,5,"span",68,ze),d()()),n&2){let e=t.$implicit;Ie("margin-left",e.indent>2?(e.indent-2)*12:0,"px"),N("ngClass",e.type),p(2),E("assert",e.checkKind==="assert"),p(),tt("",e.checkKind||"verify","",e.atEnd?" @end":""),p(2),G(e.segments)}}function QR(n,t){if(n&1&&(l(0,"div",70),W(1,XR,7,7,"div",78,je().trackMarkdownLine,!0),d()),n&2){let e=m().$implicit;p(),G(e.checks)}}function JR(n,t){if(n&1&&(l(0,"div",62)(1,"div",63),M(2,VR,2,0,"span",64)(3,BR,2,0,"span",65)(4,jR,2,0,"span",66),l(5,"div",67),W(6,zR,2,5,"span",68,ze),d()(),M(8,KR,3,0,"div",69),M(9,QR,3,0,"div",70),d()),n&2){let e,o=t.$implicit;N("ngClass",o.type),p(2),b((e=o.type)==="checked"?2:e==="progress"?3:e==="unchecked"?4:-1),p(4),G(o.segments),p(2),b(o.subSteps.length>0?8:-1),p(),b(o.checks.length>0?9:-1)}}function eF(n,t){if(n&1&&(l(0,"div",60),W(1,JR,10,4,"div",62,je().trackMilestone,!0),d()),n&2){let e=m(3);p(),G(e.parsedNote().milestones)}}function tF(n,t){if(n&1&&(l(0,"span"),g(1),d()),n&2){let e=t.$implicit;E("bold-segment",e.bold)("code-segment",e.code),p(),y(e.text)}}function nF(n,t){if(n&1&&(l(0,"div",85)(1,"div",80)(2,"span",81),g(3),d()(),l(4,"div",82),W(5,tF,2,5,"span",68,ze),d()()),n&2){let e=m().$implicit;Ie("margin-left",e.indent*12,"px"),N("ngClass",e.type),p(2),E("assert",e.checkKind==="assert"),p(),tt("",e.checkKind||"verify","",e.atEnd?" @end":""),p(2),G(e.segments)}}function oF(n,t){n&1&&(l(0,"span",73),g(1,"check_box"),d())}function iF(n,t){n&1&&(l(0,"span",74),g(1,"indeterminate_check_box"),d())}function rF(n,t){n&1&&(l(0,"span",75),g(1,"check_box_outline_blank"),d())}function aF(n,t){n&1&&(l(0,"span",76),g(1,"\u2022"),d())}function sF(n,t){if(n&1&&(l(0,"span"),g(1),d()),n&2){let e=t.$implicit;E("bold-segment",e.bold)("code-segment",e.code),p(),y(e.text)}}function cF(n,t){if(n&1&&(l(0,"span",77),W(1,sF,2,5,"span",68,ze),d()),n&2){let e=m(2).$implicit;p(),G(e.segments)}}function lF(n,t){if(n&1&&(l(0,"div",86),M(1,oF,2,0,"span",73)(2,iF,2,0,"span",74)(3,rF,2,0,"span",75)(4,aF,2,0,"span",76),M(5,cF,3,0,"span",77),d()),n&2){let e,o=m().$implicit;Ie("margin-left",o.indent*12,"px"),N("ngClass",o.type),p(),b((e=o.type)==="checked"?1:e==="progress"?2:e==="unchecked"?3:e==="list-item"?4:-1),p(4),b(o.type!=="empty"?5:-1)}}function dF(n,t){if(n&1&&M(0,nF,7,7,"div",83)(1,lF,6,5,"div",84),n&2){let e=t.$implicit;b(e.type==="verify"||e.type==="finding"?0:1)}}function uF(n,t){if(n&1&&(l(0,"div",61),W(1,dF,2,1,null,null,je().trackMarkdownLine,!0),d()),n&2){let e=m(3);p(),G(e.parsedNote().otherLines)}}function gF(n,t){if(n&1&&(l(0,"div",53),M(1,LR,2,1,"h3",59),M(2,eF,3,0,"div",60),M(3,uF,3,0,"div",61),d()),n&2){let e=m(2);p(),b(e.parsedNote().title?1:-1),p(),b(e.parsedNote().milestones.length>0?2:-1),p(),b(e.parsedNote().otherLines.length>0?3:-1)}}function pF(n,t){if(n&1&&(l(0,"div",51)(1,"div",24)(2,"span",25),g(3,"description"),d(),l(4,"span"),g(5,"\u7B14\u8BB0\u4E0E\u8BA1\u5212"),d()(),M(6,FR,4,0,"div",52),M(7,NR,5,0,"div",28),M(8,gF,4,3,"div",53),d()),n&2){let e=m();p(6),b(e.noteKeys().length>1?6:-1),p(),b(e.noteKeys().length===0?7:-1),p(),b(e.noteKeys().length>0?8:-1)}}function fF(n,t){if(n&1&&(l(0,"span",103),g(1),d()),n&2){let e=m(2);N("title",e.id),p(),y(e.id)}}function mF(n,t){if(n&1&&(l(0,"span",106),g(1),l(2,"span",113),g(3),d()()),n&2){let e=t,o=m(4);p(),L(" ",o.formatRunTokens(e.total_tokens)," "),p(2),tt("",o.formatRunTokens(e.prompt_tokens)," \u8F93\u5165 \xB7 ",o.formatRunTokens(e.completion_tokens)," \u8F93\u51FA")}}function _F(n,t){n&1&&(l(0,"span",107),g(1,"\u2014"),d())}function hF(n,t){if(n&1&&(l(0,"span",106),g(1),l(2,"span",114),g(3),d()()),n&2){let e=m(4);p(),L(" ",e.runInfoContextPercent(),"% "),p(2),L("/ ",e.formatRunTokens(e.runUsage()?.operator_context_window_tokens))}}function CF(n,t){n&1&&(l(0,"span",107),g(1,"\u2014"),d())}function MF(n,t){if(n&1&&(l(0,"div",104)(1,"span",105),g(2,"\u7ED3\u679C\u68C0\u67E5"),d(),l(3,"span",106),g(4),d()(),l(5,"div",104)(6,"span",105),g(7,"\u5C4F\u5E55\u8BC6\u522B"),d(),l(8,"span",106),g(9),d()()),n&2){let e=m(4);p(4),y(e.runTuningLabel("verify",e.runInfoTuning()?.verification_level)),p(5),y(e.runTuningLabel("explore",e.runInfoTuning()?.explorer_mode))}}function bF(n,t){n&1&&(l(0,"div",112),g(1,"Flash \u65E0\u9700\u989D\u5916\u8BBE\u7F6E\u3002"),d())}function PF(n,t){if(n&1&&(l(0,"div",100)(1,"div",101)(2,"span",25),g(3),d(),l(4,"span",102),g(5),d(),M(6,fF,2,2,"span",103),d(),l(7,"div",104)(8,"span",105),g(9,"\u5DF2\u7528\u65F6\u95F4"),d(),l(10,"span",106),g(11),d()(),l(12,"div",104)(13,"span",105),g(14,"Token \u7528\u91CF"),d(),M(15,mF,4,3,"span",106)(16,_F,2,0,"span",107),d(),l(17,"div",108)(18,"div",109)(19,"span",105),g(20,"\u4E0A\u4E0B\u6587"),d(),M(21,hF,4,2,"span",106)(22,CF,2,0,"span",107),d(),l(23,"div",110),z(24,"div",111),d()(),M(25,MF,10,2)(26,bF,2,0,"div",112),d()),n&2){let e,o=m(),i=m(2);p(2),E("is-pro",i.runInfoIsPro()),p(),y(i.getModelIcon(o.name)),p(2),y(i.getModelDisplayName(o.name)),p(),b(o.id?6:-1),p(5),y(i.runInfoElapsed()),p(4),b((e=i.runUsage())?15:16,e),p(6),b(i.runInfoContextPercent()!==null?21:22),p(2),E("is-high",(i.runInfoContextPercent()??0)>=70)("is-critical",(i.runInfoContextPercent()??0)>=90),p(),Ie("width",i.runInfoContextPercent()??0,"%"),p(),b(i.runInfoIsPro()?25:26)}}function OF(n,t){if(n&1){let e=B();l(0,"button",96,2),I("click",function(i){S(e);let r=m(2);return k(r.toggleRunInfo(i))}),l(2,"span",97),g(3),d(),l(4,"span",98),g(5,"\u6267\u884C\u6A21\u5F0F\uFF1A"),d(),l(6,"span",99),g(7),d()(),Vr(8,PF,27,15,"ng-template",16),I("backdropClick",function(){S(e);let i=m(2);return k(i.isRunInfoOpen.set(!1))})}if(n&2){let e=t,o=Fn(1),i=m(2);E("active",i.isRunInfoOpen()),N("ngClass",i.getModelClass(e.name))("title",i.getArchitectureTooltip(e)),ft("aria-expanded",i.isRunInfoOpen()),p(3),y(i.getModelIcon(e.name)),p(4),y(i.getModelDisplayName(e.name)),p(),N("cdkConnectedOverlayOrigin",o)("cdkConnectedOverlayOpen",i.isRunInfoOpen())("cdkConnectedOverlayHasBackdrop",!0)("cdkConnectedOverlayPositions",i.dropdownPositions)}}function vF(n,t){n&1&&(l(0,"span",88),g(1," videocam "),d())}function yF(n,t){n&1&&(l(0,"span",89),g(1," progress_activity "),d())}function xF(n,t){n&1&&(l(0,"span",90),g(1," smart_display "),d())}function wF(n,t){n&1&&(l(0,"span",91),g(1," slideshow "),d())}function SF(n,t){n&1&&(l(0,"span",92),g(1," videocam_off "),d())}function kF(n,t){n&1&&(l(0,"span",88),g(1," videocam "),d())}function EF(n,t){n&1&&(l(0,"span",93),g(1,"\u6B63\u5728\u5F55\u5236\u2026"),d())}function DF(n,t){n&1&&(l(0,"span",93),g(1,"\u6B63\u5728\u51C6\u5907\u2026"),d())}function IF(n,t){n&1&&(l(0,"span",93),g(1,"\u64AD\u653E\u5F55\u50CF"),d())}function TF(n,t){n&1&&(l(0,"span",93),g(1,"\u6B65\u9AA4\u56DE\u653E"),d())}function AF(n,t){n&1&&(l(0,"span",93),g(1,"\u5F55\u5C4F\u5931\u8D25"),d())}function RF(n,t){n&1&&(l(0,"span",93),g(1,"\u5C4F\u5E55\u5F55\u50CF"),d())}function FF(n,t){n&1&&z(0,"span",94)}function NF(n,t){if(n&1&&(l(0,"span",95),g(1),d()),n&2){let e=m(2);p(),L(" ",e.agentService.currentSessionStepFrames().length," ")}}function LF(n,t){if(n&1){let e=B();l(0,"div",17),M(1,OF,9,11),l(2,"button",87),I("click",function(){S(e);let i=m();return k(i.agentService.toggleVideoPlayer())}),M(3,vF,2,0,"span",88),M(4,yF,2,0,"span",89),M(5,xF,2,0,"span",90),M(6,wF,2,0,"span",91),M(7,SF,2,0,"span",92),M(8,kF,2,0,"span",88),M(9,EF,2,0,"span",93),M(10,DF,2,0,"span",93),M(11,IF,2,0,"span",93),M(12,TF,2,0,"span",93),M(13,AF,2,0,"span",93),M(14,RF,2,0,"span",93),M(15,FF,1,0,"span",94),M(16,NF,2,1,"span",95),d()()}if(n&2){let e,o=m();p(),b((e=o.agentService.viewedModel())?1:-1,e),p(),E("active",o.agentService.isVideoWindowOpen())("recording",o.agentService.isCurrentSessionRunning())("processing",!o.agentService.isCurrentSessionRunning()&&o.agentService.currentSessionRecordingStatus()==="processing")("has-video",!o.agentService.isCurrentSessionRunning()&&!!o.agentService.currentSessionVideoUrl())("has-steps",!o.agentService.isCurrentSessionRunning()&&!o.agentService.currentSessionVideoUrl()&&o.agentService.hasCurrentSessionStepFrames())("failed",!o.agentService.isCurrentSessionRunning()&&!o.agentService.currentSessionVideoUrl()&&!o.agentService.hasCurrentSessionStepFrames()&&o.agentService.currentSessionRecordingStatus()==="failed"),N("title",o.getScreenRecordingButtonTitle()),p(),b(o.agentService.isCurrentSessionRunning()?3:-1),p(),b(!o.agentService.isCurrentSessionRunning()&&o.agentService.currentSessionRecordingStatus()==="processing"?4:-1),p(),b(!o.agentService.isCurrentSessionRunning()&&o.agentService.currentSessionRecordingStatus()!=="processing"&&o.agentService.currentSessionVideoUrl()?5:-1),p(),b(!o.agentService.isCurrentSessionRunning()&&o.agentService.currentSessionRecordingStatus()!=="processing"&&!o.agentService.currentSessionVideoUrl()&&o.agentService.hasCurrentSessionStepFrames()?6:-1),p(),b(!o.agentService.isCurrentSessionRunning()&&o.agentService.currentSessionRecordingStatus()!=="processing"&&!o.agentService.currentSessionVideoUrl()&&!o.agentService.hasCurrentSessionStepFrames()&&o.agentService.currentSessionRecordingStatus()==="failed"?7:-1),p(),b(!o.agentService.isCurrentSessionRunning()&&o.agentService.currentSessionRecordingStatus()!=="processing"&&!o.agentService.currentSessionVideoUrl()&&!o.agentService.hasCurrentSessionStepFrames()&&o.agentService.currentSessionRecordingStatus()!=="failed"?8:-1),p(),b(o.agentService.isCurrentSessionRunning()?9:-1),p(),b(!o.agentService.isCurrentSessionRunning()&&o.agentService.currentSessionRecordingStatus()==="processing"?10:-1),p(),b(!o.agentService.isCurrentSessionRunning()&&o.agentService.currentSessionRecordingStatus()!=="processing"&&o.agentService.currentSessionVideoUrl()?11:-1),p(),b(!o.agentService.isCurrentSessionRunning()&&o.agentService.currentSessionRecordingStatus()!=="processing"&&!o.agentService.currentSessionVideoUrl()&&o.agentService.hasCurrentSessionStepFrames()?12:-1),p(),b(!o.agentService.isCurrentSessionRunning()&&o.agentService.currentSessionRecordingStatus()!=="processing"&&!o.agentService.currentSessionVideoUrl()&&!o.agentService.hasCurrentSessionStepFrames()&&o.agentService.currentSessionRecordingStatus()==="failed"?13:-1),p(),b(!o.agentService.isCurrentSessionRunning()&&o.agentService.currentSessionRecordingStatus()!=="processing"&&!o.agentService.currentSessionVideoUrl()&&!o.agentService.hasCurrentSessionStepFrames()&&o.agentService.currentSessionRecordingStatus()!=="failed"?14:-1),p(),b(o.agentService.isCurrentSessionRunning()?15:-1),p(),b(!o.agentService.isCurrentSessionRunning()&&!o.agentService.currentSessionVideoUrl()&&o.agentService.hasCurrentSessionStepFrames()?16:-1)}}function VF(n,t){n&1&&(l(0,"div",19)(1,"span",115),g(2,"progress_activity"),d(),l(3,"span"),g(4,"\u6B63\u5728\u52A0\u8F7D\u6267\u884C\u5386\u53F2\u2026"),d()())}function BF(n,t){n&1&&(l(0,"div",20)(1,"div",116)(2,"span",25),g(3,"sensors"),d()(),l(4,"h3"),g(5,"\u5C1A\u672A\u9009\u62E9\u6267\u884C\u8BB0\u5F55"),d(),l(6,"p"),g(7,"\u8BF7\u4ECE\u53F3\u4FA7\u4EFB\u52A1\u5217\u8868\u9009\u62E9\u4F1A\u8BDD\uFF0C\u67E5\u770B\u5B9E\u65F6\u6267\u884C\u8BB0\u5F55\u3002"),d()())}function jF(n,t){if(n&1&&(l(0,"div",128),z(1,"span",129),l(2,"div",130)(3,"span",131),g(4),d()()()),n&2){let e=t.$implicit;p(),E("streaming",e.isActive),p(3),Br(" ",e.message," \xB7 ",e.isActive?"Waiting ":"Waited ","",e.elapsed," ")}}function zF(n,t){if(n&1&&(l(0,"div",117)(1,"div",121)(2,"span",122),g(3),d()(),l(4,"div",123)(5,"div",124)(6,"div",125)(7,"div",126)(8,"div",127),W(9,jF,5,5,"div",128,ze),d()()()()()()),n&2){let e=m(2);p(3),L("\u51C6\u5907\u8017\u65F6 ",e.startupPreparationDuration()," \u79D2"),p(6),G(e.startupWorkItems())}}function $F(n,t){if(n&1&&(l(0,"span",135)(1,"span",136),g(2,"\xB7"),d(),l(3,"span",137),g(4),d()()),n&2){let e=m(2).$implicit,o=m(2);N("title",o.getTokenTooltip(e)),p(4),y(o.formatTokenCount(e.tokens))}}function HF(n,t){if(n&1&&(l(0,"div",134)(1,"span",122),g(2),d(),M(3,$F,5,2,"span",135),d()),n&2){let e=m(),o=e.$implicit,i=e.$index,r=m(2);E("first-phase",i===0&&r.startupWorkItems().length===0),p(2),tt("",r.isCheckerPhase(o)?"Checked":"Worked"," for ",o.durationSeconds,"s"),p(),b(o.tokens?3:-1)}}function UF(n,t){if(n&1&&(l(0,"span",143),g(1),d()),n&2){let e=m(3).$implicit;N("title",e.data.subgoal_text),p(),y(e.data.subgoal_text)}}function WF(n,t){if(n&1&&(l(0,"li",146)(1,"span",147),g(2),d(),l(3,"span",148),g(4),d(),l(5,"span",149),g(6),d()()),n&2){let e=t.$implicit,o=t.$index,i=m(4).$implicit,r=m(4);p(2),y(o+1),p(2),y(e.text),p(2),y(r.getCheckMethodLabel(e,i))}}function GF(n,t){if(n&1&&(l(0,"ol",145),W(1,WF,7,3,"li",146,Yo),d()),n&2){let e=m(3).$implicit,o=m(4);p(),G(o.getCheckerItems(e))}}function qF(n,t){if(n&1&&(l(0,"div",139)(1,"div",141),z(2,"span",129),l(3,"span",142),g(4),d(),M(5,UF,2,2,"span",143),l(6,"span",144),g(7),d()(),M(8,GF,3,0,"ol",145),d()),n&2){let e=m(2).$implicit,o=m(4);N("ngClass","tone-"+o.getCheckerTone(e)),p(2),E("streaming",o.isBlockRunning(e)),p(2),y(o.getCheckerPhaseLabel(e)),p(),b(e.data.phase!=="outcome"&&e.data.subgoal_text?5:-1),p(2),y(o.getCheckerStatusLabel(e)),p(),b(!o.isCheckerMuted(e)&&o.getCheckerItems(e).length>0?8:-1)}}function YF(n,t){if(n&1&&(l(0,"div",156)(1,"div",157),z(2,"div",158),d()()),n&2){let e=m(2),o=e.$implicit,i=e.$index,r=m(3).$implicit,a=m(4);p(2),N("innerHTML",a.renderMarkdown(o.data.text,r.id+"-seg-"+i),Hi)}}function KF(n,t){if(n&1){let e=B();l(0,"div",153)(1,"div",154),I("click",function(){S(e);let i=m().$index,r=m(3).$implicit,a=m(4);return k(a.toggleCheckerSegment(r,i))}),z(2,"span",129),l(3,"span",155),g(4),d()(),M(5,YF,3,1,"div",156),d()}if(n&2){let e=m(),o=e.$implicit,i=e.$index,r=m(3).$implicit,a=m(4);E("is-running",a.isCheckerSegmentRunning(r,i)&&!a.isCheckerSegmentResetNotice(o))("is-resetting",a.isCheckerSegmentResetNotice(o))("collapsed",a.isCheckerSegmentCollapsed(r,i)),p(2),E("streaming",a.isCheckerSegmentRunning(r,i)&&!a.isCheckerSegmentResetNotice(o))("resetting",a.isCheckerSegmentResetNotice(o)),p(2),y(a.isCheckerSegmentResetNotice(o)?a.getCheckerSegmentResetMessage(o):"\u601D\u8003\u8FC7\u7A0B"),p(),b(o.data.text&&o.data.text.trim()?5:-1)}}function ZF(n,t){if(n&1&&(l(0,"div",127)(1,"div",128),z(2,"span",129),l(3,"div",130)(4,"span",131),g(5),d()()()()),n&2){let e=m(2),o=e.$implicit,i=e.$index,r=m(3).$implicit,a=m(4);p(2),E("streaming",a.isCheckerSegmentRunning(r,i)),p(3),y(a.formatResetMessage(a.getCheckerSegmentResetMessage(o),a.isCheckerSegmentRunning(r,i)))}}function XF(n,t){if(n&1&&(l(0,"div",160)(1,"div",161),z(2,"span",129),l(3,"span",155),g(4,"\u6267\u884C\u8FC7\u7A0B"),d()(),l(5,"div",162),z(6,"div",158),d()()),n&2){let e=m(2),o=e.$implicit,i=e.$index,r=m(3).$implicit,a=m(4);E("is-running",a.isCheckerSegmentRunning(r,i)),p(2),E("streaming",a.isCheckerSegmentRunning(r,i)),p(4),N("innerHTML",a.renderMarkdown(o.data.text,r.id+"-seg-"+i),Hi)}}function QF(n,t){if(n&1&&(M(0,ZF,6,3,"div",127),M(1,XF,7,5,"div",159)),n&2){let e=m().$implicit;b(e.data.isReset?0:-1),p(),b(e.data.text&&e.data.text.trim()?1:-1)}}function JF(n,t){if(n&1&&(l(0,"div",128),z(1,"span",129),l(2,"div",130)(3,"span",131),g(4),d()()()),n&2){let e=t.$implicit,o=m(10);p(),E("streaming",e.isWaiting),p(3),y(o.formatResetMessage(e.message,e.isWaiting))}}function eN(n,t){if(n&1&&(l(0,"div",127),W(1,JF,5,3,"div",128,Ey),d()),n&2){let e=m(5).$implicit,o=m(4);p(),G(o.getBlockResets(e,!0))}}function tN(n,t){if(n&1&&(l(0,"div",156)(1,"div",157),z(2,"div",158),d()()),n&2){let e=m(3).$implicit,o=m(3).$implicit,i=m(4);p(2),N("innerHTML",i.renderMarkdown(i.getStreamDisplayText(o.id+"-native",e.data.text),o.id+"-native"),Hi)}}function nN(n,t){if(n&1){let e=B();l(0,"div",153)(1,"div",154),I("click",function(){S(e);let i=m(5).$implicit,r=m(4);return k(r.toggleCollapse(i.data.execution_id||i.data.step_id||i.id))}),z(2,"span",129),l(3,"span",155),g(4,"\u601D\u8003\u8FC7\u7A0B"),d()(),M(5,tN,3,1,"div",156),d()}if(n&2){let e=m(2).$implicit,o=m(3).$implicit,i=m(4);E("is-running",i.isBlockRunning(o))("collapsed",i.collapsedStreams().has(o.data.execution_id||o.data.step_id||o.id)),p(2),E("streaming",i.isBlockRunning(o)),p(3),b(i.getStreamDisplayText(o.id+"-native",e.data.text)?5:-1)}}function oN(n,t){if(n&1&&(M(0,eN,3,0,"div",127),M(1,nN,6,7,"div",163)),n&2){let e=m().$implicit,o=m(3).$implicit,i=m(4);b(i.getBlockResets(o,!0).length>0?0:-1),p(),b(i.getStreamDisplayText(o.id+"-native",e.data.text)||i.isBlockRunning(o)&&!i.isStreamRewinding(o.id+"-native")&&!i.hasWaitingReset(o,!0)?1:-1)}}function iN(n,t){if(n&1&&(l(0,"div",128),z(1,"span",129),l(2,"div",130)(3,"span",131),g(4),d()()()),n&2){let e=t.$implicit,o=m(10);p(),E("streaming",e.isWaiting),p(3),y(o.formatResetMessage(e.message,e.isWaiting))}}function rN(n,t){if(n&1&&(l(0,"div",127),W(1,iN,5,3,"div",128,Ey),d()),n&2){let e=m(5).$implicit,o=m(4);p(),G(o.getBlockResets(e,!1))}}function aN(n,t){if(n&1&&(l(0,"div",162),z(1,"div",158),d()),n&2){let e=m(3).$implicit,o=m(3).$implicit,i=m(4);p(),N("innerHTML",i.renderMarkdown(i.getStreamDisplayText(o.id,e.data.text),o.id),Hi)}}function sN(n,t){if(n&1&&(l(0,"div",160)(1,"div",161),z(2,"span",129),l(3,"span",155),g(4,"\u6267\u884C\u8FC7\u7A0B"),d()(),M(5,aN,2,1,"div",162),d()),n&2){let e=m(2).$implicit,o=m(3).$implicit,i=m(4);E("is-running",i.isBlockRunning(o)),p(2),E("streaming",i.isBlockRunning(o)),p(3),b(i.getStreamDisplayText(o.id,e.data.text)?5:-1)}}function cN(n,t){if(n&1&&(M(0,rN,3,0,"div",127),M(1,sN,6,5,"div",159)),n&2){let e=m().$implicit,o=m(3).$implicit,i=m(4);b(i.getBlockResets(o,!1).length>0?0:-1),p(),b(i.getStreamDisplayText(o.id,e.data.text)||i.isBlockRunning(o)&&!i.isStreamRewinding(o.id)&&!i.hasWaitingReset(o,!1)?1:-1)}}function lN(n,t){if(n&1&&(l(0,"div",171)(1,"div",173)(2,"span",174),g(3,"\u6458\u8981\uFF1A"),d(),l(4,"span",175),g(5),d()()()),n&2){let e=m(2).$implicit,o=m(7);p(5),L('"',o.getReportStatusExplanation(e.data),'"')}}function dN(n,t){if(n&1&&(l(0,"div",178)(1,"span",180),g(2,"\u62A5\u544A\u4E0E\u53D1\u73B0"),d(),z(3,"span",181),d()),n&2){let e=m(3).$index,o=m(3).$implicit,i=m(4);p(3),N("innerHTML",i.renderMarkdown(t,"report-"+o.id+"-"+e),Hi)}}function uN(n,t){if(n&1){let e=B();l(0,"div",182)(1,"span",183),g(2,"\u6700\u7EC8\u9A8C\u8BC1\u72B6\u6001"),d(),l(3,"div",184),I("click",function(i){S(e);let r=m(4).$implicit,a=m(3).$implicit,s=m(4);return k(s.openImageModal(s.getStepPreImageUrl(a.data,r.data),r.data,i))}),l(4,"div",185),z(5,"img",186),d()()()}if(n&2){let e=m(4).$implicit,o=m(3).$implicit,i=m(4);p(5),N("src",i.getStepPreImageUrl(o.data,e.data),Ut)}}function gN(n,t){if(n&1){let e=B();l(0,"div",182)(1,"span",183),g(2,"\u64CD\u4F5C\u540E\u9A8C\u8BC1"),d(),l(3,"div",184),I("click",function(i){S(e);let r=m(4).$implicit,a=m(3).$implicit,s=m(4);return k(s.openImageModal(s.getStepPostImageUrl(a.data,r.data),null,i))}),l(4,"div",185),z(5,"img",187),d()()()}if(n&2){let e=m(4).$implicit,o=m(3).$implicit,i=m(4);p(5),N("src",i.getStepPostImageUrl(o.data,e.data),Ut)}}function pN(n,t){if(n&1&&(l(0,"div",179),M(1,uN,6,1,"div",182),M(2,gN,6,1,"div",182),d()),n&2){let e=m(3).$implicit,o=m(3).$implicit,i=m(4);p(),b(i.getStepPreImageUrl(o.data,e.data)?1:-1),p(),b(i.getStepPostImageUrl(o.data,e.data)?2:-1)}}function fN(n,t){if(n&1&&(l(0,"div",176),I("click",function(o){return o.stopPropagation()}),l(1,"div",177),M(2,dN,4,1,"div",178),d(),M(3,pN,3,2,"div",179),d()),n&2){let e,o=m(2).$implicit,i=m(3).$implicit,r=m(4);p(2),b((e=r.getReportStatusExplanation(o.data))?2:-1,e),p(),b(r.getStepPreImageUrl(i.data,o.data)||r.getStepPostImageUrl(i.data,o.data)?3:-1)}}function mN(n,t){if(n&1){let e=B();l(0,"div",164)(1,"div",165),I("click",function(i){S(e);let r=m().$index,a=m(3).$implicit,s=m(4);return k(s.toggleActionExpanded("action-"+a.id+"-"+r,i))}),l(2,"span",166),g(3),d(),l(4,"span",167),g(5),d(),l(6,"span",168)(7,"span",169),g(8),d(),g(9),d(),l(10,"span",170),g(11),d()(),M(12,lN,6,1,"div",171),M(13,fN,4,2,"div",172),d()}if(n&2){let e=m(),o=e.$implicit,i=e.$index,r=m(3).$implicit,a=m(4);E("is-completed",a.getReportStatusValue(o.data)==="completed"||a.getReportStatusValue(o.data)==="success")("is-failed",a.getReportStatusValue(o.data)==="failed")("is-expanded",a.isActionExpanded("action-"+r.id+"-"+i)),p(2),E("is-failed",a.getReportStatusValue(o.data)==="failed"),p(),L(" ",a.getReportStatusValue(o.data)==="failed"?"cancel":"task_alt"," "),p(2),L(" ",a.getReportStatusValue(o.data)==="failed"?"\u4EFB\u52A1\u6267\u884C\u5931\u8D25":"\u4EFB\u52A1\u5DF2\u5B8C\u6210"," "),p(),E("is-failed",a.getReportStatusValue(o.data)==="failed")("is-completed",a.getReportStatusValue(o.data)!=="failed"),p(2),L(" ",a.getReportStatusValue(o.data)==="failed"?"error":"check_circle"," "),p(),L(" ",a.getReportStatusValue(o.data)==="failed"?"\u5931\u8D25":"\u5DF2\u5B8C\u6210"," "),p(2),L(" ",a.isActionExpanded("action-"+r.id+"-"+i)?"expand_less":"expand_more"," "),p(),b(!a.isActionExpanded("action-"+r.id+"-"+i)&&a.getReportStatusExplanation(o.data)?12:-1),p(),b(a.isActionExpanded("action-"+r.id+"-"+i)?13:-1)}}function _N(n,t){n&1&&(l(0,"span",190)(1,"span",169),g(2,"error"),d(),g(3," \u5931\u8D25 "),d())}function hN(n,t){if(n&1&&(l(0,"div",173)(1,"span",174),g(2,"\u76EE\u6807\uFF1A"),d(),l(3,"span",175),g(4),d()()),n&2){let e=m(3).$implicit,o=m(7);p(4),L('"',o.getActionTargetText(e.data),'"')}}function CN(n,t){if(n&1&&(l(0,"div",173)(1,"span",174),g(2),d(),l(3,"span",175),g(4),d()()),n&2){let e=m(3).$implicit,o=m(7);p(2),L("",o.getActionInputLabel(e.data),":"),p(2),L('"',o.getActionInputText(e.data),'"')}}function MN(n,t){if(n&1&&(l(0,"div",173)(1,"span",174),g(2,"\u5750\u6807\uFF1A"),d(),l(3,"span",191),g(4),d()()),n&2){let e=m(3).$implicit,o=m(7);p(4),y(o.getActionCoords(e.data))}}function bN(n,t){if(n&1&&(l(0,"div",171),M(1,hN,5,1,"div",173),M(2,CN,5,2,"div",173),M(3,MN,5,1,"div",173),d()),n&2){let e=m(2).$implicit,o=m(7);p(),b(o.getActionTargetText(e.data)?1:-1),p(),b(o.getActionInputText(e.data)?2:-1),p(),b(o.getActionCoords(e.data)?3:-1)}}function PN(n,t){if(n&1&&(l(0,"div",192)(1,"span",180),g(2,"\u76EE\u6807"),d(),l(3,"span",194),g(4),d()()),n&2){let e=m(3).$implicit,o=m(7);p(4),L('"',o.getActionTargetText(e.data),'"')}}function ON(n,t){if(n&1&&(l(0,"div",192)(1,"span",180),g(2),d(),l(3,"span",194),g(4),d()()),n&2){let e=m(3).$implicit,o=m(7);p(2),y(o.getActionInputLabel(e.data)),p(2),L('"',o.getActionInputText(e.data),'"')}}function vN(n,t){if(n&1&&(l(0,"div",192)(1,"span",180),g(2,"\u5750\u6807"),d(),l(3,"span",195),g(4),d()()),n&2){let e=m(3).$implicit,o=m(7);p(4),y(o.getActionCoords(e.data))}}function yN(n,t){if(n&1&&(l(0,"div",192)(1,"span",180),g(2,"\u76EE\u6807\u8FB9\u754C"),d(),l(3,"span",195),g(4),d()()),n&2){let e=m(3).$implicit,o=m(7);p(4),L("[",o.getActionBounds(e.data),"]")}}function xN(n,t){if(n&1&&(l(0,"div",192)(1,"span",180),g(2,"\u76EE\u6807\u7C7B\u578B"),d(),l(3,"span",195),g(4),d()()),n&2){let e=m(3).$implicit,o=m(7);p(4),y(o.getActionClass(e.data))}}function wN(n,t){if(n&1&&(l(0,"div",192)(1,"span",180),g(2),d(),l(3,"span",195),g(4),d()()),n&2){let e=t.$implicit;p(2),y(e.key),p(2),y(e.value)}}function SN(n,t){if(n&1&&(l(0,"div",192)(1,"span",180),g(2,"\u64CD\u4F5C"),d(),l(3,"span",194),g(4),d()()),n&2){let e=m(3).$implicit,o=m(7);p(4),y(o.getActionTitle(e.data))}}function kN(n,t){if(n&1){let e=B();l(0,"div",182)(1,"span",183),g(2,"\u64CD\u4F5C\u524D"),d(),l(3,"div",184),I("click",function(i){S(e);let r=m(4).$implicit,a=m(3).$implicit,s=m(4);return k(s.openImageModal(s.getStepPreImageUrl(a.data,r.data),r.data,i))}),l(4,"div",185)(5,"img",196,3),I("load",function(){S(e);let i=Fn(6),r=Fn(8),a=m(4).$implicit,s=m(7);return k(s.onImageLoad(i,r,a.data))}),d(),z(7,"div",197,4),d()()()}if(n&2){let e=m(4).$implicit,o=m(3).$implicit,i=m(4);p(5),N("src",i.getStepPreImageUrl(o.data,e.data),Ut)}}function EN(n,t){if(n&1){let e=B();l(0,"div",182)(1,"span",183),g(2,"\u64CD\u4F5C\u540E"),d(),l(3,"div",184),I("click",function(i){S(e);let r=m(4).$implicit,a=m(3).$implicit,s=m(4);return k(s.openImageModal(s.getStepPostImageUrl(a.data,r.data),null,i))}),l(4,"div",185),z(5,"img",187),d()()()}if(n&2){let e=m(4).$implicit,o=m(3).$implicit,i=m(4);p(5),N("src",i.getStepPostImageUrl(o.data,e.data),Ut)}}function DN(n,t){if(n&1&&(l(0,"div",179),M(1,kN,9,1,"div",182),M(2,EN,6,1,"div",182),d()),n&2){let e=m(3).$implicit,o=m(3).$implicit,i=m(4);p(),b(i.getStepPreImageUrl(o.data,e.data)?1:-1),p(),b(i.getStepPostImageUrl(o.data,e.data)?2:-1)}}function IN(n,t){if(n&1&&(l(0,"div",193)(1,"span",198),g(2,"error"),d(),l(3,"span",199),g(4),d()()),n&2){let e=m(3).$implicit,o=m(3).$implicit,i=m(4);p(4),y(i.getActionErrorMessage(e.data,o.data))}}function TN(n,t){if(n&1&&(l(0,"div",176),I("click",function(o){return o.stopPropagation()}),l(1,"div",177),M(2,PN,5,1,"div",192),M(3,ON,5,2,"div",192),M(4,vN,5,1,"div",192),M(5,yN,5,1,"div",192),M(6,xN,5,1,"div",192),W(7,wN,5,2,"div",192,je().trackParam,!0),M(9,SN,5,1,"div",192),d(),M(10,DN,3,2,"div",179),M(11,IN,5,1,"div",193),d()),n&2){let e=m(2).$implicit,o=m(3).$implicit,i=m(4);p(2),b(i.getActionTargetText(e.data)?2:-1),p(),b(i.getActionInputText(e.data)?3:-1),p(),b(i.getActionCoords(e.data)?4:-1),p(),b(i.getActionBounds(e.data)?5:-1),p(),b(i.getActionClass(e.data)?6:-1),p(),G(i.getActionExtraParams(e.data)),p(2),b(!i.getActionTargetText(e.data)&&!i.getActionInputText(e.data)&&!i.getActionCoords(e.data)&&!i.getActionBounds(e.data)&&!i.getActionClass(e.data)&&i.getActionExtraParams(e.data).length===0?9:-1),p(),b(i.getStepPreImageUrl(o.data,e.data)||i.getStepPostImageUrl(o.data,e.data)?10:-1),p(),b(i.isActionFailed(e.data,o.data)?11:-1)}}function AN(n,t){if(n&1){let e=B();l(0,"div",188)(1,"div",165),I("click",function(i){S(e);let r=m().$index,a=m(3).$implicit,s=m(4);return k(s.toggleActionExpanded("action-"+a.id+"-"+r,i))}),l(2,"span",189),g(3),d(),l(4,"span",167),g(5),d(),M(6,_N,4,0,"span",190),l(7,"span",170),g(8),d()(),M(9,bN,4,3,"div",171),M(10,TN,12,8,"div",172),d()}if(n&2){let e=m(),o=e.$implicit,i=e.$index,r=m(3).$implicit,a=m(4);E("is-running",a.isItemRunning(o,r))("is-failed",a.isActionFailed(o.data,r.data))("is-expanded",a.isActionExpanded("action-"+r.id+"-"+i)),p(2),E("is-failed",a.isActionFailed(o.data,r.data)),p(),y(a.getActionIcon(o.data)),p(2),y(a.getActionTitle(o.data)),p(),b(a.isActionFailed(o.data,r.data)?6:-1),p(2),L(" ",a.isActionExpanded("action-"+r.id+"-"+i)?"expand_less":"expand_more"," "),p(),b(!a.isActionExpanded("action-"+r.id+"-"+i)&&(a.getActionTargetText(o.data)||a.getActionInputText(o.data)||a.getActionCoords(o.data))?9:-1),p(),b(a.isActionExpanded("action-"+r.id+"-"+i)?10:-1)}}function RN(n,t){if(n&1&&(l(0,"div",127)(1,"div",128),z(2,"span",129),l(3,"div",130)(4,"span",131),g(5),d()()()()),n&2){let e=m(2).$implicit,o=m(7);p(5),y(o.getBackendSwitchMessage(e.data))}}function FN(n,t){n&1&&g(0),n&2&&L(" \xB7 Retrying in ",t,"\u2026 ")}function NN(n,t){if(n&1&&(l(0,"span",131),g(1," \u6A21\u578B\u6682\u65F6\u4E0D\u53EF\u7528 "),M(2,FN,1,1),d(),l(3,"span",203),g(4," \u9891\u7E41\u91CD\u8BD5\u53EF\u80FD\u662F\u63A5\u53E3\u9650\u6D41\u5BFC\u81F4\uFF0C\u53EF\u63D0\u9AD8\u8C03\u7528\u989D\u5EA6\u6216\u964D\u4F4E\u5E76\u53D1\u6570\u3002 "),d()),n&2){let e,o=m().$implicit,i=m(10);p(2),b((e=i.getLLMRetryEntryDelay(o))?2:-1,e)}}function LN(n,t){if(n&1&&(l(0,"span",131),g(1),d()),n&2){let e=m().$implicit,o=m(10);p(),L(" Retrying LLM request \xB7 Waited ",o.getLLMRetryEntryWaited(e)," ")}}function VN(n,t){if(n&1&&(l(0,"div",128),z(1,"span",129),l(2,"div",130),M(3,NN,5,1),M(4,LN,2,1,"span",131),d()()),n&2){let e=t.$implicit,o=t.$index,i=m(3).$implicit,r=m(7);p(),E("streaming",o===r.getLLMRetryEntries(i.data).length-1&&r.isLLMRetryEntryWaiting(e)),p(2),b(r.isLLMRetryEntryWaiting(e)?3:-1),p(),b(r.isLLMRetryEntryWaiting(e)?-1:4)}}function BN(n,t){if(n&1&&(l(0,"div",127),W(1,VN,5,4,"div",128,ze),d()),n&2){let e=m(2).$implicit,o=m(7);p(),G(o.getLLMRetryEntries(e.data))}}function jN(n,t){n&1&&(l(0,"span",207)(1,"span",169),g(2,"pause_circle"),d(),g(3," \u5DF2\u6682\u505C "),d())}function zN(n,t){n&1&&(l(0,"span",190)(1,"span",169),g(2,"warning"),d(),g(3," \u5931\u8D25 "),d())}function $N(n,t){if(n&1&&(l(0,"span",170),g(1),d()),n&2){let e=m(3).$index,o=m(3).$implicit,i=m(4);p(),L(" ",i.isActionExpanded("llm-failure-"+o.id+"-"+e)?"expand_less":"expand_more"," ")}}function HN(n,t){n&1&&(l(0,"div",173)(1,"span",174),g(2,"\u5DF2\u7B49\u5F85\uFF1A"),d(),l(3,"span",175),g(4),d()()),n&2&&(p(4),y(t))}function UN(n,t){if(n&1&&(l(0,"div",211)(1,"span"),g(2),d(),l(3,"span"),g(4),d()()),n&2){let e=t.$implicit,o=t.$index,i=m(11);p(2),L("Retry ",o+1),p(2),tt(" Planned ",i.getLLMRetryEntryDelay(e)||"0s"," \xB7 Waited ",i.getLLMRetryEntryWaited(e)," ")}}function WN(n,t){if(n&1&&(l(0,"div",208)(1,"div",210),g(2,"\u91CD\u8BD5\u8BE6\u60C5"),d(),W(3,UN,5,3,"div",211,ze),d()),n&2){let e=m(3).$implicit,o=m(7);p(3),G(o.getLLMFailureRetryEntries(e.data))}}function GN(n,t){if(n&1){let e=B();l(0,"div",209)(1,"button",212),I("click",function(i){S(e);let r=m(10);return k(r.resumePausedTask(i))}),l(2,"span",213),g(3,"play_arrow"),d(),l(4,"span"),g(5,"\u7EE7\u7EED\u4EFB\u52A1"),d(),l(6,"span",214),g(7,"arrow_forward"),d()(),l(8,"span",215),g(9,"\u4EFB\u52A1\u5DF2\u6682\u505C \xB7 \u5F53\u524D\u6CA1\u6709\u6267\u884C\u4E2D\u7684\u6B65\u9AA4"),d()()}}function qN(n,t){if(n&1){let e=B();l(0,"div",200)(1,"div",204),I("click",function(i){S(e);let r=m(2),a=r.$implicit,s=r.$index,c=m(3).$implicit,u=m(4);return k(u.hasLLMFailureRetryEntries(a.data)&&u.toggleActionExpanded("llm-failure-"+c.id+"-"+s,i))}),l(2,"div",205)(3,"span",206),g(4,"error"),d(),l(5,"span",167),g(6,"\u6A21\u578B\u8BF7\u6C42\u5931\u8D25"),d(),M(7,jN,4,0,"span",207)(8,zN,4,0,"span",190),M(9,$N,2,1,"span",170),d(),l(10,"div",171)(11,"div",173)(12,"span",174),g(13,"\u53D1\u751F\u4E86\u4EC0\u4E48\uFF1A"),d(),l(14,"span",175),g(15,"\u81EA\u52A8\u91CD\u8BD5\u540E\u4ECD\u65E0\u6CD5\u5B8C\u6210\u6A21\u578B\u8BF7\u6C42\u3002"),d()(),l(16,"div",173)(17,"span",174),g(18,"\u5931\u8D25\u539F\u56E0\uFF1A"),d(),l(19,"span",175),g(20),d()(),M(21,HN,5,1,"div",173),M(22,WN,5,0,"div",208),d()(),M(23,GN,10,0,"div",209),d()}if(n&2){let e,o=m(2),i=o.$implicit,r=o.$index,a=m(3).$implicit,s=m(4);p(),E("has-details",s.hasLLMFailureRetryEntries(i.data))("is-expanded",s.isActionExpanded("llm-failure-"+a.id+"-"+r)),p(6),b(s.isTerminalLLMFailure(i.data)?7:8),p(2),b(s.hasLLMFailureRetryEntries(i.data)?9:-1),p(11),y(s.getLLMErrorText(i.data)),p(),b((e=s.getLLMFailureWaited(i.data))?21:-1,e),p(),b(s.isActionExpanded("llm-failure-"+a.id+"-"+r)?22:-1),p(),b(s.isTerminalLLMFailure(i.data)?23:-1)}}function YN(n,t){if(n&1){let e=B();l(0,"span",220),I("click",function(){let i=S(e),r=m(10);return k(r.onToolKeyClick(i))}),l(1,"span",57),g(2,"draft"),d(),g(3),d()}n&2&&(p(3),L(" ",t," "))}function KN(n,t){n&1&&(l(0,"span",222),g(1),d()),n&2&&(p(),L("\xB7 ",t))}function ZN(n,t){if(n&1){let e=B();l(0,"span",221),I("click",function(){S(e);let i=m(3).$implicit,r=m(7);return k(r.onVideoToolClick(i.data))}),l(1,"span",57),g(2,"videocam"),d(),g(3),d(),M(4,KN,2,1,"span",222)}if(n&2){let e,o=m(3).$implicit,i=m(7);N("title","Open recording at "+i.getVideoAnalysisRangeLabel(o.data)),p(3),L(" ",i.getVideoAnalysisRangeLabel(o.data)," "),p(),b((e=i.getVideoAnalysisDetail(o.data))?4:-1,e)}}function XN(n,t){if(n&1&&(l(0,"div",216)(1,"div",217),z(2,"span",129),l(3,"div",218)(4,"span"),g(5),d(),M(6,YN,4,1,"span",219),M(7,ZN,5,3),d()()()),n&2){let e,o=m(2).$implicit,i=m(3).$implicit,r=m(4);E("is-running",r.isToolLineRunning(o,i))("is-note-tool",r.isNoteTool(o.data))("is-video-tool",r.isVideoTool(o.data))("is-video-attention",r.isVideoTool(o.data)&&r.isVideoAnalysisAttention(o.data)),ft("title",r.getCompressionPhaseTitle(o.data)),p(2),E("streaming",r.isToolLineRunning(o,i)),p(3),tt("",r.isVideoTool(o.data)?r.getVideoAnalysisLabel(o.data):r.getToolDisplayLabel(o.data),"",r.isNoteTool(o.data)&&r.getToolKey(o.data)||r.isVideoTool(o.data)?":":""),p(),b((e=r.isNoteTool(o.data)&&r.getToolKey(o.data))?6:-1,e),p(),b(r.isVideoTool(o.data)?7:-1)}}function QN(n,t){n&1&&(l(0,"span",190)(1,"span",169),g(2,"error"),d(),g(3," \u5931\u8D25 "),d())}function JN(n,t){if(n&1&&(l(0,"div",173)(1,"span",174),g(2,"\u547D\u4EE4\uFF1A"),d(),l(3,"span",224)(4,"code"),g(5),d()()()),n&2){let e=m(5).$implicit,o=m(7);p(5),y(o.getAdbCommandLine(e.data))}}function e3(n,t){if(n&1&&(l(0,"div",173)(1,"span",174),g(2,"\u5DE5\u4F5C\u76EE\u5F55\uFF1A"),d(),l(3,"span",175),g(4),d()()),n&2){let e=m(5).$implicit,o=m(7);p(4),L('"',o.getAdbCwd(e.data),'"')}}function t3(n,t){if(n&1&&(l(0,"div",173)(1,"span",174),g(2,"\u7EC8\u7AEF ID\uFF1A"),d(),l(3,"span",175),g(4),d()()),n&2){let e=m(5).$implicit,o=m(7);p(4),L('"',o.getAdbTerminalId(e.data),'"')}}function n3(n,t){if(n&1&&(M(0,JN,6,1,"div",173),M(1,e3,5,1,"div",173),M(2,t3,5,1,"div",173)),n&2){let e=m(4).$implicit,o=m(7);b(o.getAdbCommandLine(e.data)?0:-1),p(),b(o.getAdbCwd(e.data)?1:-1),p(),b(o.getAdbTerminalId(e.data)?2:-1)}}function o3(n,t){if(n&1&&(l(0,"div",173)(1,"span",174),g(2,"\u76EE\u6807\uFF1A"),d(),l(3,"span",175),g(4),d()()),n&2){let e=m(5).$implicit,o=m(7);p(4),L('"',o.getToolTargetText(e.data),'"')}}function i3(n,t){if(n&1&&(l(0,"div",173)(1,"span",174),g(2),d(),l(3,"span",175),g(4),d()()),n&2){let e=m(5).$implicit,o=m(7);p(2),L("",o.getToolInputLabel(e.data),":"),p(2),L('"',o.getToolInputText(e.data),'"')}}function r3(n,t){if(n&1&&(l(0,"div",173)(1,"span",174),g(2,"\u5750\u6807\uFF1A"),d(),l(3,"span",191),g(4),d()()),n&2){let e=m(5).$implicit,o=m(7);p(4),y(o.getToolCoords(e.data))}}function a3(n,t){if(n&1&&(l(0,"div",173)(1,"span",174),g(2,"\u5206\u6790\uFF1A"),d(),l(3,"span",175),g(4),d()()),n&2){let e=m(5).$implicit,o=m(7);p(4),L('"',o.getToolAnalysisText(e.data),'"')}}function s3(n,t){if(n&1&&(l(0,"div",173)(1,"span",174),g(2,"\u8BE6\u60C5\uFF1A"),d(),l(3,"span",175),g(4),d()()),n&2){let e=m(5).$implicit,o=m(7);p(4),L('"',o.getToolGenericDetails(e.data),'"')}}function c3(n,t){if(n&1&&(M(0,o3,5,1,"div",173),M(1,i3,5,2,"div",173),M(2,r3,5,1,"div",173),M(3,a3,5,1,"div",173),M(4,s3,5,1,"div",173)),n&2){let e=m(4).$implicit,o=m(7);b(o.getToolTargetText(e.data)?0:-1),p(),b(o.getToolInputText(e.data)?1:-1),p(),b(o.getToolCoords(e.data)?2:-1),p(),b(o.getToolAnalysisText(e.data)?3:-1),p(),b(o.getToolGenericDetails(e.data)?4:-1)}}function l3(n,t){if(n&1&&(l(0,"div",171),M(1,n3,3,3),M(2,c3,5,5),d()),n&2){let e=m(3).$implicit,o=m(7);p(),b(o.isAdbCommandTool(e.data)?1:-1),p(),b(o.isAdbCommandTool(e.data)?-1:2)}}function d3(n,t){if(n&1&&(l(0,"div",178)(1,"span",180),g(2,"\u547D\u4EE4"),d(),l(3,"span",225)(4,"code"),g(5),d()()()),n&2){let e=m(5).$implicit,o=m(7);p(5),y(o.getAdbCommandLine(e.data))}}function u3(n,t){if(n&1&&(l(0,"div",192)(1,"span",180),g(2,"\u5DE5\u4F5C\u76EE\u5F55"),d(),l(3,"span",194),g(4),d()()),n&2){let e=m(5).$implicit,o=m(7);p(4),L('"',o.getAdbCwd(e.data),'"')}}function g3(n,t){if(n&1&&(l(0,"div",192)(1,"span",180),g(2,"\u7EC8\u7AEF ID"),d(),l(3,"span",195),g(4),d()()),n&2){let e=m(5).$implicit,o=m(7);p(4),y(o.getAdbTerminalId(e.data))}}function p3(n,t){if(n&1&&(M(0,d3,6,1,"div",178),M(1,u3,5,1,"div",192),M(2,g3,5,1,"div",192)),n&2){let e=m(4).$implicit,o=m(7);b(o.getAdbCommandLine(e.data)?0:-1),p(),b(o.getAdbCwd(e.data)?1:-1),p(),b(o.getAdbTerminalId(e.data)?2:-1)}}function f3(n,t){if(n&1&&(l(0,"div",192)(1,"span",180),g(2,"\u76EE\u6807"),d(),l(3,"span",194),g(4),d()()),n&2){let e=m(5).$implicit,o=m(7);p(4),L('"',o.getToolTargetText(e.data),'"')}}function m3(n,t){if(n&1&&(l(0,"div",192)(1,"span",180),g(2),d(),l(3,"span",194),g(4),d()()),n&2){let e=m(5).$implicit,o=m(7);p(2),y(o.getToolInputLabel(e.data)),p(2),L('"',o.getToolInputText(e.data),'"')}}function _3(n,t){if(n&1&&(l(0,"div",192)(1,"span",180),g(2,"\u5750\u6807"),d(),l(3,"span",195),g(4),d()()),n&2){let e=m(5).$implicit,o=m(7);p(4),y(o.getToolCoords(e.data))}}function h3(n,t){if(n&1&&(l(0,"div",192)(1,"span",180),g(2,"\u5206\u6790"),d(),l(3,"span",194),g(4),d()()),n&2){let e=m(5).$implicit,o=m(7);p(4),L('"',o.getToolAnalysisText(e.data),'"')}}function C3(n,t){if(n&1&&(l(0,"div",192)(1,"span",180),g(2,"\u8BE6\u60C5"),d(),l(3,"span",194),g(4),d()()),n&2){let e=m(5).$implicit,o=m(7);p(4),L('"',o.getToolGenericDetails(e.data),'"')}}function M3(n,t){if(n&1&&(l(0,"div",192)(1,"span",180),g(2),d(),l(3,"span",195),g(4),d()()),n&2){let e=t.$implicit;p(2),y(e.key),p(2),y(e.value)}}function b3(n,t){if(n&1&&(M(0,f3,5,1,"div",192),M(1,m3,5,2,"div",192),M(2,_3,5,1,"div",192),M(3,h3,5,1,"div",192),M(4,C3,5,1,"div",192),W(5,M3,5,2,"div",192,je().trackParam,!0)),n&2){let e=m(4).$implicit,o=m(7);b(o.getToolTargetText(e.data)?0:-1),p(),b(o.getToolInputText(e.data)?1:-1),p(),b(o.getToolCoords(e.data)?2:-1),p(),b(o.getToolAnalysisText(e.data)?3:-1),p(),b(o.getToolGenericDetails(e.data)?4:-1),p(),G(o.getToolExtraParams(e.data))}}function P3(n,t){if(n&1){let e=B();l(0,"div",182)(1,"span",183),g(2,"\u64CD\u4F5C\u524D"),d(),l(3,"div",184),I("click",function(i){S(e);let r=m(5).$implicit,a=m(3).$implicit,s=m(4);return k(s.openImageModal(s.getStepPreImageUrl(a.data,r.data),r.data,i))}),l(4,"div",185)(5,"img",196,5),I("load",function(){S(e);let i=Fn(6),r=Fn(8),a=m(5).$implicit,s=m(7);return k(s.onImageLoad(i,r,a.data))}),d(),z(7,"div",197,6),d()()()}if(n&2){let e=m(5).$implicit,o=m(3).$implicit,i=m(4);p(5),N("src",i.getStepPreImageUrl(o.data,e.data),Ut)}}function O3(n,t){if(n&1){let e=B();l(0,"div",182)(1,"span",183),g(2,"\u64CD\u4F5C\u540E"),d(),l(3,"div",184),I("click",function(i){S(e);let r=m(5).$implicit,a=m(3).$implicit,s=m(4);return k(s.openImageModal(s.getStepPostImageUrl(a.data,r.data),null,i))}),l(4,"div",185),z(5,"img",187),d()()()}if(n&2){let e=m(5).$implicit,o=m(3).$implicit,i=m(4);p(5),N("src",i.getStepPostImageUrl(o.data,e.data),Ut)}}function v3(n,t){if(n&1&&(l(0,"div",179),M(1,P3,9,1,"div",182),M(2,O3,6,1,"div",182),d()),n&2){let e=m(4).$implicit,o=m(3).$implicit,i=m(4);p(),b(i.getStepPreImageUrl(o.data,e.data)?1:-1),p(),b(i.getStepPostImageUrl(o.data,e.data)?2:-1)}}function y3(n,t){if(n&1&&(l(0,"div",193)(1,"span",198),g(2,"error"),d(),l(3,"span",199),g(4),d()()),n&2){let e=m(4).$implicit,o=m(7);p(4),y(o.getToolErrorMessage(e.data))}}function x3(n,t){if(n&1&&(l(0,"div",176),I("click",function(o){return o.stopPropagation()}),l(1,"div",177),M(2,p3,3,3),M(3,b3,7,5),d(),M(4,v3,3,2,"div",179),M(5,y3,5,1,"div",193),d()),n&2){let e=m(3).$implicit,o=m(3).$implicit,i=m(4);p(2),b(i.isAdbCommandTool(e.data)?2:-1),p(),b(i.isAdbCommandTool(e.data)?-1:3),p(),b(i.getStepPreImageUrl(o.data,e.data)||i.getStepPostImageUrl(o.data,e.data)?4:-1),p(),b(i.isToolFailed(e.data)?5:-1)}}function w3(n,t){if(n&1){let e=B();l(0,"div",223)(1,"div",165),I("click",function(i){S(e);let r=m(2).$index,a=m(3).$implicit,s=m(4);return k(s.toggleActionExpanded("tool-"+a.id+"-"+r,i))}),l(2,"span",189),g(3),d(),l(4,"span",167),g(5),d(),M(6,QN,4,0,"span",190),l(7,"span",170),g(8),d()(),M(9,l3,3,2,"div",171),M(10,x3,6,4,"div",172),d()}if(n&2){let e=m(2),o=e.$implicit,i=e.$index,r=m(3).$implicit,a=m(4);E("is-running",a.isItemRunning(o,r))("has-no-details",a.isAdbCommandTool(o.data)?!a.getAdbCommandLine(o.data):!a.getToolTargetText(o.data)&&!a.getToolInputText(o.data)&&!a.getToolCoords(o.data)&&!a.getToolAnalysisText(o.data)&&!a.getToolGenericDetails(o.data)&&a.getToolExtraParams(o.data).length===0)("is-failed",a.isToolFailed(o.data))("is-expanded",a.isActionExpanded("tool-"+r.id+"-"+i)),p(2),E("is-failed",a.isToolFailed(o.data)),p(),y(a.getToolIcon(o.data)),p(2),y(a.getToolTitle(o.data)),p(),b(a.isToolFailed(o.data)?6:-1),p(2),L(" ",a.isActionExpanded("tool-"+r.id+"-"+i)?"expand_less":"expand_more"," "),p(),b(!a.isActionExpanded("tool-"+r.id+"-"+i)&&(a.isAdbCommandTool(o.data)?a.getAdbCommandLine(o.data):a.getToolTargetText(o.data)||a.getToolInputText(o.data)||a.getToolCoords(o.data)||a.getToolAnalysisText(o.data)||a.getToolGenericDetails(o.data))?9:-1),p(),b(a.isActionExpanded("tool-"+r.id+"-"+i)?10:-1)}}function S3(n,t){if(n&1&&(M(0,RN,6,1,"div",127),M(1,BN,3,0,"div",127),M(2,qN,24,10,"div",200),M(3,XN,8,15,"div",201),M(4,w3,11,16,"div",202)),n&2){let e=m().$implicit,o=m(3).$implicit,i=m(4);b(i.isBackendSwitchNote(e.data)?0:-1),p(),b(i.isLLMRetry(e.data)?1:-1),p(),b(i.isDisplayableLLMFailure(e.data)?2:-1),p(),b(i.shouldShowTool(e.data,o.data)&&!i.isDeviceActionTool(e.data)?3:-1),p(),b(i.shouldShowTool(e.data,o.data)&&i.isDeviceActionTool(e.data)?4:-1)}}function k3(n,t){if(n&1&&(M(0,KF,6,12,"div",150),M(1,QF,2,2),M(2,oN,2,2),M(3,cN,2,2),M(4,mN,14,19,"div",151),M(5,AN,11,14,"div",152),M(6,S3,5,5)),n&2){let e=t.$implicit,o=m(3).$implicit,i=m(4);b(i.isCheckerBlock(o)&&e.type==="thinking"?0:-1),p(),b(i.isCheckerBlock(o)&&e.type==="text"&&i.isCheckerTextVisible(e)?1:-1),p(),b(!i.isCheckerBlock(o)&&e.type==="thinking"?2:-1),p(),b(!i.isCheckerBlock(o)&&e.type==="text"?3:-1),p(),b(i.isReportStatusAction(e.data)?4:-1),p(),b(e.type==="action"&&!i.isReportStatusAction(e.data)&&(i.isAndroidAction(e.data)||e.data?.type==="action")?5:-1),p(),b(e.type==="tool"?6:-1)}}function E3(n,t){if(n&1&&(l(0,"div",126),W(1,k3,7,7,null,null,je().trackStepEvent,!0),d()),n&2){let e=m(2).$implicit,o=m(4);p(),G(o.getSortedStepEvents(e.data))}}function D3(n,t){if(n&1&&(l(0,"span",231),g(1),d()),n&2){let e=m().$implicit;p(),y(e.suggestion)}}function I3(n,t){if(n&1&&(l(0,"div",226)(1,"span",147),g(2),d(),l(3,"span",228),g(4),d(),l(5,"span",229)(6,"span",230),g(7),d(),M(8,D3,2,1,"span",231),d()()),n&2){let e=t.$implicit,o=t.$index,i=m(3).$implicit,r=m(4);N("ngClass",e.status),p(2),y(r.getVerdictItemNumber(i,e,o)),p(2),y(r.getVerdictIcon(e.status)),p(3),y(e.evidence||r.getVerdictStatusText(e.status)),p(),b(e.suggestion?8:-1)}}function T3(n,t){if(n&1&&(l(0,"div",227),g(1),d()),n&2){let e=t.$implicit;p(),y(e)}}function A3(n,t){if(n&1&&(l(0,"div",140),W(1,I3,9,5,"div",226,Yo),W(3,T3,2,1,"div",227,ze),d()),n&2){let e=m(2).$implicit,o=m(4);N("ngClass","tone-"+o.getCheckerTone(e)),p(),G(o.getCheckerVerdicts(e)),p(2),G(o.getCheckerNotes(e))}}function R3(n,t){if(n&1&&(l(0,"div",138)(1,"div",125),M(2,qF,9,7,"div",139),M(3,E3,3,0,"div",126),M(4,A3,5,1,"div",140),d()()),n&2){let e=m().$implicit,o=m(4);N("ngClass",$f(4,MR,"type-"+e.type)),p(2),b(o.isCheckerBlock(e)?2:-1),p(),b(o.getSortedStepEvents(e.data).length>0?3:-1),p(),b(o.hasCheckerResult(e)?4:-1)}}function F3(n,t){if(n&1&&M(0,R3,5,6,"div",138),n&2){let e=t.$implicit,o=m(4);b(o.hasVisibleContent(e)?0:-1)}}function N3(n,t){if(n&1&&(l(0,"div",133),W(1,F3,1,1,null,null,je().trackBlock,!0),d()),n&2){let e=m().$implicit;p(),G(e.blocks)}}function L3(n,t){if(n&1&&(l(0,"div",118),M(1,HF,4,5,"div",132),M(2,N3,3,0,"div",133),d()),n&2){let e=t.$implicit,o=m(2);p(),b(o.hasVisibleBlocks(e)?1:-1),p(),b(o.hasVisibleBlocks(e)?2:-1)}}function V3(n,t){if(n&1&&(l(0,"h3",240),g(1),d()),n&2){let e=m();p(),y(e.title)}}function B3(n,t){if(n&1&&(l(0,"strong"),g(1),d()),n&2){let e=m().$implicit;p(),y(e.text)}}function j3(n,t){if(n&1&&(l(0,"code"),g(1),d()),n&2){let e=m().$implicit;p(),y(e.text)}}function z3(n,t){if(n&1&&(l(0,"span"),g(1),d()),n&2){let e=m().$implicit;p(),y(e.text)}}function $3(n,t){if(n&1&&(M(0,B3,2,1,"strong"),M(1,j3,2,1,"code"),M(2,z3,2,1,"span")),n&2){let e=t.$implicit;b(e.bold?0:-1),p(),b(e.code?1:-1),p(),b(!e.bold&&!e.code?2:-1)}}function H3(n,t){if(n&1&&(l(0,"div",244)(1,"span",169),g(2),d(),l(3,"span",67),W(4,$3,3,3,null,null,ze),d()()),n&2){let e=t.$implicit;sd("status-"+e.type),p(2),L(" ",e.type==="checked"?"check_circle":e.type==="progress"?"pending":"radio_button_unchecked"," "),p(2),G(e.segments)}}function U3(n,t){if(n&1&&(l(0,"div",241),W(1,H3,6,3,"div",243,je().trackMilestone,!0),d()),n&2){let e=m();p(),G(e.milestones)}}function W3(n,t){if(n&1&&(l(0,"span",249),g(1),d()),n&2){let e=m().$implicit;E("assert",e.checkKind==="assert"),p(),tt("",e.checkKind||"verify","",e.atEnd?"@end":"")}}function G3(n,t){n&1&&(l(0,"span",248),g(1,"finding"),d())}function q3(n,t){if(n&1&&(l(0,"strong"),g(1),d()),n&2){let e=m().$implicit;p(),y(e.text)}}function Y3(n,t){if(n&1&&(l(0,"code"),g(1),d()),n&2){let e=m().$implicit;p(),y(e.text)}}function K3(n,t){if(n&1&&(l(0,"span"),g(1),d()),n&2){let e=m().$implicit;p(),y(e.text)}}function Z3(n,t){if(n&1&&(M(0,q3,2,1,"strong"),M(1,Y3,2,1,"code"),M(2,K3,2,1,"span")),n&2){let e=t.$implicit;b(e.bold?0:-1),p(),b(e.code?1:-1),p(),b(!e.bold&&!e.code?2:-1)}}function X3(n,t){if(n&1&&(l(0,"p",246),M(1,W3,2,4,"span",247),M(2,G3,2,0,"span",248),W(3,Z3,3,3,null,null,ze),d()),n&2){let e=t.$implicit;sd("line-"+e.type),p(),b(e.type==="verify"?1:-1),p(),b(e.type==="finding"?2:-1),p(),G(e.segments)}}function Q3(n,t){if(n&1&&(l(0,"div",242),W(1,X3,5,4,"p",245,je().trackMarkdownLine,!0),d()),n&2){let e=m();p(),G(e.otherLines)}}function J3(n,t){if(n&1&&(l(0,"div",239),M(1,V3,2,1,"h3",240),M(2,U3,3,0,"div",241),M(3,Q3,3,0,"div",242),d()),n&2){let e=t;p(),b(e.title?1:-1),p(),b(e.milestones.length>0?2:-1),p(),b(e.otherLines.length>0?3:-1)}}function e4(n,t){if(n&1){let e=B();l(0,"div",119)(1,"div",232)(2,"div",233)(3,"span",234),g(4,"assignment_turned_in"),d(),l(5,"span",235),g(6,"\u4EFB\u52A1\u62A5\u544A"),d()(),l(7,"div",236)(8,"button",237),I("click",function(i){S(e);let r=m(2);return k(r.openOutputterNote(i))}),l(9,"span",25),g(10,"visibility"),d(),l(11,"span"),g(12,"\u5728\u7B14\u8BB0\u4E2D\u67E5\u770B"),d()()()(),l(13,"div",238),M(14,J3,4,3,"div",239),d()()}if(n&2){let e,o=m(2);p(14),b((e=o.parsedOutputReport())?14:-1,e)}}function t4(n,t){if(n&1&&(l(0,"div",120)(1,"div",250)(2,"span",115),g(3,"progress_activity"),d(),l(4,"span",251),g(5),d()()()),n&2){let e=m(2);p(5),y(e.currentPlanningText())}}function n4(n,t){if(n&1&&(l(0,"div",21),M(1,zF,11,1,"div",117),W(2,L3,3,2,"div",118,je().trackPhase,!0),M(4,e4,15,1,"div",119),M(5,t4,6,1,"div",120),d()),n&2){let e,o=m();p(),b(o.startupWorkItems().length>0?1:-1),p(),G(o.phases()),p(2),b((e=o.outputterReport())?4:-1,e),p(),b(o.showPlanningLoader()&&(o.startupWorkItems().length===0||o.startupPreparationIsComplete()||o.consolidatedBlocks().length>0)?5:-1)}}function o4(n,t){if(n&1){let e=B();l(0,"div",252),I("click",function(i){S(e);let r=m();return k(r.closeImageModal(i))}),l(1,"div",253),I("click",function(i){return i.stopPropagation()}),l(2,"button",254),I("click",function(i){S(e);let r=m();return k(r.closeImageModal(i))}),l(3,"span",25),g(4,"close"),d()(),l(5,"div",185)(6,"img",255,7),I("load",function(){S(e);let i=Fn(7),r=Fn(9),a=m();return k(a.onImageLoad(i,r,a.selectedZoomAction()))}),d(),z(8,"div",197,8),d()()()}if(n&2){let e=m();p(6),N("src",e.selectedZoomImage(),Ut)}}var tc=["\u6B63\u5728\u89C4\u5212\u4E0B\u4E00\u6B65\u2026","\u6B63\u5728\u5206\u6790\u5C4F\u5E55\u5750\u6807\u2026","\u6B63\u5728\u8BF7\u6C42\u6A21\u578B\u2026","\u6B63\u5728\u5236\u5B9A\u64CD\u4F5C\u8BA1\u5212\u2026","\u6B63\u5728\u8BC6\u522B\u754C\u9762\u72B6\u6001\u4E0E\u5143\u7D20\u2026","\u6B63\u5728\u8BC4\u4F30\u6267\u884C\u8DEF\u5F84\u2026","\u6B63\u5728\u786E\u8BA4\u4E0B\u4E00\u6B65\u64CD\u4F5C\u2026","\u6B63\u5728\u6574\u7406\u63A8\u7406\u7ED3\u679C\u2026","\u6B63\u5728\u8BC4\u4F30\u5B50\u76EE\u6807\u2026","\u6B63\u5728\u6536\u96C6\u5C4F\u5E55\u4FE1\u606F\u2026","\u6B63\u5728\u5206\u6790\u4E0B\u4E00\u6B65\u4EA4\u4E92\u2026","\u6B63\u5728\u8C03\u6574\u6267\u884C\u7B56\u7565\u2026","\u6B63\u5728\u9884\u6D4B\u64CD\u4F5C\u7ED3\u679C\u2026","\u6B63\u5728\u5206\u6790\u4EFB\u52A1\u2026","\u6B63\u5728\u51C6\u5907\u4E0B\u4E00\u6761\u6307\u4EE4\u2026","\u6B63\u5728\u89C4\u5212\u64CD\u4F5C\u6B65\u9AA4\u2026"],ky=[{started:"device_check",completed:"device_ready",completedMessage:"Android \u8BBE\u5907\u5DF2\u8FDE\u63A5"},{started:"uiautomator",completed:"uiautomator_ready",completedMessage:"\u754C\u9762\u5C42\u7EA7\u670D\u52A1\u5DF2\u5C31\u7EEA",liveDetailStages:["helper_install","helper_upgrade"],completedDetailStage:"hierarchy_backend"},{started:"environment",completed:"environment_ready",completedMessage:"\u8BBE\u5907\u73AF\u5883\u5DF2\u5C31\u7EEA"}];function i4(n){let t=Math.max(0,n);return t<10?`${t.toFixed(1)}s`:`${Math.round(t)}s`}function r4(n,t,e,o){let i=new Map(n.map(a=>[a.stage,a])),r=i.get("first_response");return ky.flatMap((a,s)=>{let c=i.get(a.started),u=i.get(a.completed);if(!c&&!u)return[];let f=ky.slice(s+1).map(H=>i.get(H.started)||i.get(H.completed)).find(H=>!!H),_=a.started==="environment"?r:f,h=u||_,C=!h&&!e&&o,O=c?.timestamp||u?.timestamp||t,P=h?.timestamp||(C?t:n[n.length-1]?.timestamp||O),T=(a.liveDetailStages||[]).map(H=>i.get(H)).filter(H=>!!H).filter(H=>H.timestamp>=O).sort((H,ue)=>ue.timestamp-H.timestamp)[0],R=a.completedDetailStage?i.get(a.completedDetailStage):void 0,D=h?R?.message||u?.message||a.completedMessage:T?.message||c.message;return[F(x({},u||c),{message:D,isActive:C,elapsed:i4(P-O)})]})}var zu=class n{agentService=v(Zt);http=v(Mn);destroyRef=v(Te);zone=v(ce);isUserAtBottom=!0;resizeObserver=null;streamLogsContainer=null;autoScrollTimer=null;autoScrollStreamBoxes=!1;onContainerScroll=()=>{let t=this.streamLogsContainer;if(!t)return;let e=150,o=t.scrollHeight-t.scrollTop-t.clientHeight;this.isUserAtBottom=o<=e};currentPlanningText=w(tc[0]);planningIntervalId=null;currentPhraseIndex=0;isTaskDropdownOpen=w(!1);isNotesDropdownOpen=w(!1);isRunInfoOpen=w(!1);runUsage=w(null);runInfoClock=w(Date.now());runInfoIsPro=A(()=>this.getModelClass(this.agentService.viewedModel()?.name)==="is-pro");runInfoElapsed=A(()=>{let t=this.agentService.currentSession(),e=this.agentService.isCurrentSessionRunning();return Z_(yy(t,e,this.runInfoClock()))});runInfoTuning=A(()=>{let t=this.runUsage();return t?.run_tuning&&(t.run_tuning.verification_level||t.run_tuning.explorer_mode)?t.run_tuning:wy(this.agentService.currentSession()?.device_info)});runInfoContextPercent=A(()=>{let t=this.runUsage();return t?vy(t.operator_context_tokens,t.operator_context_window_tokens):null});dropdownPositions=[{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top",offsetY:6},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom",offsetY:-6},{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top",offsetY:6}];selectedZoomImage=w(null);selectedZoomAction=w(null);collapsedStreams=w(new Set);scheduledCollapses=new Set;typedTextsSignal=w({});typingTargets=new Map;typingRafId=null;lastTypingTimestamp=0;static TYPING_CHARS_PER_SECOND=667;static TYPING_MIN_FRAME_MS=28;activeBlockResets=w(new Map);activeResetNotices=w(new Map);rewindTargets=new Map;static REWIND_CHARS_PER_SECOND=2600;markdownHtmlCache=new Map;thinkingTextCache=new WeakMap;deviceSerialCache=new WeakMap;expandedActionCards=w(new Set);collapsedActionCards=w(new Set);retryClock=w(Date.now());actionParamsCache=new WeakMap;toolParamsCache=new WeakMap;sortedEventsCache=new WeakMap;activeQueue=A(()=>this.agentService.sessions().filter(e=>{let o=this.getTaskStatus(e);return o==="running"||o==="paused"||o==="pending"}).sort((e,o)=>{let i=this.getTaskStatus(e),r=this.getTaskStatus(o),a=i==="running"||i==="paused",s=r==="running"||r==="paused";return a&&!s?-1:!a&&s?1:(e.start_time||0)-(o.start_time||0)}));historyTasks=A(()=>this.agentService.sessions().filter(t=>{let e=this.getTaskStatus(t);return e==="completed"||e==="failed"||e==="cancelled"}));currentNoteContent=A(()=>{let t=this.agentService.currentNotes(),e=this.agentService.selectedNoteKey();return t[e]||""});noteKeys=A(()=>Object.keys(this.agentService.currentNotes()).filter(t=>t.toLowerCase().endsWith(".md")));outputterReport=A(()=>this.agentService.currentNotes()["output.md"]||null);parsedOutputReport=A(()=>{let t=this.outputterReport();return t?ec(t):null});parsedNote=A(()=>this.getParsedNote(this.currentNoteContent()));filteredLogs=A(()=>{let t=this.agentService.sessionLogs(),e=this.agentService.currentSessionId();return e?t.filter(o=>{let i=o.session_id||o.data?.session_id;return!i||i===e}):t});sessionSummary=A(()=>Wv(this.filteredLogs()));showPlanningLoader=A(()=>{let t=this.agentService.agentStatus()==="running",e=this.agentService.currentSessionId(),o=this.agentService.runningSessionId(),i=!e||e===o;return qv(this.filteredLogs(),t,i)});isViewingPausedTask=A(()=>{if(!this.agentService.isPaused()||this.agentService.agentStatus()!=="paused")return!1;let t=this.agentService.currentSessionId(),e=this.agentService.runningSessionId();return!t||t===e});sessionDuration=A(()=>{let t=this.agentService.sessions().find(e=>e.session_id===this.agentService.currentSessionId());return Gv(t?.start_time||0,this.filteredLogs())});consolidatedBlocks=A(()=>zv(this.filteredLogs()));phases=A(()=>{let t=this.agentService.sessions().find(e=>e.session_id===this.agentService.currentSessionId());return Hv(this.consolidatedBlocks(),t?.start_time||0)});startupWorkItems=A(()=>{this.retryClock();let t=this.agentService.currentStartupProgress(),e=["running","paused"].includes(this.agentService.agentStatus());return r4(t,Date.now()/1e3,this.consolidatedBlocks().length>0,e)});startupPreparationIsRunning=A(()=>this.startupWorkItems().some(t=>t.isActive));startupPreparationIsComplete=A(()=>{let t=this.startupWorkItems();return t.length>0&&!t.some(e=>e.isActive)});startupPreparationDuration=A(()=>{let t=this.startupWorkItems();if(t.length===0)return 0;let e=this.agentService.currentStartupProgress(),o=e[0]?.timestamp||t[0].timestamp,i=e.find(a=>a.stage==="environment_ready")?.timestamp||e.find(a=>a.stage==="first_response")?.timestamp,r=this.startupPreparationIsRunning()?Date.now()/1e3:i||Math.max(...t.map(a=>a.timestamp));return Math.max(1,Math.round(r-o))});retryablePauseTrace=A(()=>{if(!this.isViewingPausedTask())return null;let t=this.consolidatedBlocks();for(let e=t.length-1;e>=0;e--){let o=t[e]?.data?.generic_tools;if(Array.isArray(o))for(let i=o.length-1;i>=0;i--){let r=o[i];if(this.isDisplayableLLMFailure(r))return r}}return null});hasVisibleBlocks(t){return!t||!t.blocks?!1:t.blocks.some(e=>this.hasVisibleContent(e))}constructor(){Ze(t=>{let e=this.isRunInfoOpen(),o=this.agentService.currentSessionId(),i=this.agentService.isCurrentSessionRunning();if(!e||!o||(ie(()=>this.runUsage())?.session_id!==o&&this.runUsage.set(null),this.loadRunUsage(o),!i))return;let r=setInterval(()=>this.loadRunUsage(o),3e3);t(()=>clearInterval(r))}),Ze(t=>{if(!this.isRunInfoOpen()||!this.agentService.isCurrentSessionRunning())return;this.runInfoClock.set(Date.now());let e=setInterval(()=>this.runInfoClock.set(Date.now()),1e3);t(()=>clearInterval(e))}),this.zone.runOutsideAngular(()=>{let t=setInterval(()=>{let e=this.agentService.agentStatus();(e==="running"||e==="paused"||this.agentService.isRetrying())&&this.retryClock.set(Date.now())},1e3);this.destroyRef.onDestroy(()=>clearInterval(t))}),Ze(()=>{this.filteredLogs().find(o=>o.type==="llm_stream"&&!o.data?.isCompleted)&&this.scheduleAutoScroll(!0)}),Ze(()=>{this.consolidatedBlocks(),this.typedTextsSignal(),this.scheduleAutoScroll(!1)}),Ze(()=>{let t=this.agentService.streamResetEvent();t&&ie(()=>{this.triggerStreamRewind(t.stream_execution_id||t.stream_exec_id,t.message||Do)})}),Ze(()=>{this.consolidatedBlocks().forEach(e=>{if(e.type==="checker")return;let o=e.id;if(e.data?.isReset){ie(()=>{let a=e.data.resetMessage||Do,s=this.typedTextsSignal();(s[o]?.length||0)>0||(s[o+"-native"]?.length||0)>0?!this.rewindTargets.has(o)&&!this.rewindTargets.has(o+"-native")&&this.triggerStreamRewind(e.data.execution_id,a):((this.activeBlockResets().get(o)||[]).length===0&&this.upsertBlockResetNotice(o,{id:e.data.execution_id||`${o}-text`,message:a,isWaiting:!e.data?.isCompleted,streamType:"text"}),this.activeResetNotices().has(o)||this.activeResetNotices.update(f=>{let _=new Map(f);return _.set(o,a),_}))});return}let i=this.getRawThinking(e)||"",r=this.getNativeThinking(e)||"";ie(()=>{let a=this.typedTextsSignal();i&&(o in a?(a[o]||"").lengthF(x({},u),{[o]:i})):this.startTyping(o,i,!1)):e.data?.isCompleted?this.typedTextsSignal.update(c=>F(x({},c),{[o]:i})):(this.typedTextsSignal.update(c=>F(x({},c),{[o]:""})),this.startTyping(o,i,!1)));let s=o+"-native";if(r){let c=e.data?.execution_id||e.data?.step_id||o;s in a?(a[s]||"").lengthF(x({},f),{[s]:r})),this.collapsedStreams.update(f=>{let _=new Set(f);return _.add(c),_})):this.startTyping(s,r,!0,c)):e.data?.isCompleted?(this.typedTextsSignal.update(u=>F(x({},u),{[s]:r})),this.collapsedStreams.update(u=>{let f=new Set(u);return f.add(c),f})):(this.typedTextsSignal.update(u=>F(x({},u),{[s]:""})),this.startTyping(s,r,!0,c))}})})}),Ze(()=>{this.agentService.currentSessionId(),ie(()=>{this.stopTypingLoop(),this.typedTextsSignal.set({}),this.activeResetNotices.set(new Map),this.activeBlockResets.set(new Map),this.markdownHtmlCache.clear(),this.scheduledCollapses.clear(),this.collapsedStreams.set(new Set),this.isUserAtBottom=!0,setTimeout(()=>{let t=document.querySelector(".stream-logs-content");t&&(t.scrollTop=t.scrollHeight)},100)})}),Ze(()=>{this.showPlanningLoader()?this.planningIntervalId||(this.currentPhraseIndex=Math.floor(Math.random()*tc.length),this.currentPlanningText.set(tc[this.currentPhraseIndex]),this.planningIntervalId=setInterval(()=>{this.currentPhraseIndex=(this.currentPhraseIndex+1)%tc.length,this.currentPlanningText.set(tc[this.currentPhraseIndex])},2800)):this.planningIntervalId&&(clearInterval(this.planningIntervalId),this.planningIntervalId=null)}),this.destroyRef.onDestroy(()=>{this.planningIntervalId&&(clearInterval(this.planningIntervalId),this.planningIntervalId=null),this.resizeObserver&&(this.resizeObserver.disconnect(),this.resizeObserver=null),this.stopTypingLoop(),this.autoScrollTimer&&(clearTimeout(this.autoScrollTimer),this.autoScrollTimer=null),this.streamLogsContainer&&(this.streamLogsContainer.removeEventListener("scroll",this.onContainerScroll),this.streamLogsContainer=null)})}ngAfterViewInit(){let t=document.querySelector(".stream-logs-content");this.streamLogsContainer=t,t&&(this.zone.runOutsideAngular(()=>{t.addEventListener("scroll",this.onContainerScroll,{passive:!0})}),typeof ResizeObserver<"u"&&(this.resizeObserver=new ResizeObserver(()=>{this.isUserAtBottom&&this.scheduleAutoScroll(!1)}),this.resizeObserver.observe(t)))}scheduleAutoScroll(t){this.autoScrollStreamBoxes=this.autoScrollStreamBoxes||t,!this.autoScrollTimer&&this.zone.runOutsideAngular(()=>{this.autoScrollTimer=setTimeout(()=>{this.autoScrollTimer=null;let e=this.autoScrollStreamBoxes;this.autoScrollStreamBoxes=!1;let o=e?Array.from(document.getElementsByClassName("stream-box")):[],i=o.map(s=>s.scrollHeight),r=this.streamLogsContainer,a=r&&this.isUserAtBottom?r.scrollHeight:null;o.forEach((s,c)=>{s.scrollTop=i[c]}),r&&a!==null&&(r.scrollTop=a)},50)})}toggleTaskDropdown(t){t.stopPropagation(),this.isTaskDropdownOpen.update(e=>!e),this.isTaskDropdownOpen()&&this.isNotesDropdownOpen.set(!1)}toggleNotesDropdown(t){t.stopPropagation(),this.isNotesDropdownOpen.update(e=>!e),this.isNotesDropdownOpen()&&this.isTaskDropdownOpen.set(!1)}openOutputterNote(t){t&&t.stopPropagation(),this.agentService.selectedNoteKey.set("output.md"),this.isNotesDropdownOpen.set(!0),this.isTaskDropdownOpen.set(!1)}closeAllDropdowns(){this.isTaskDropdownOpen.set(!1),this.isNotesDropdownOpen.set(!1),this.isRunInfoOpen.set(!1)}toggleRunInfo(t){t.stopPropagation(),this.isRunInfoOpen.update(e=>!e),this.isRunInfoOpen()&&(this.isTaskDropdownOpen.set(!1),this.isNotesDropdownOpen.set(!1))}loadRunUsage(t){this.agentService.getSessionUsage(t).subscribe({next:e=>{this.agentService.currentSessionId()===t&&this.runUsage.set(e)},error:e=>console.error("Failed to load session usage:",e)})}formatRunElapsed(t){return Z_(t)}formatRunTokens(t){return Oy(t)}runTuningLabel(t,e){return xy(t,e)}getTaskStatus(t){if(t.status){let e=t.status.toLowerCase();if(e==="completed"||e==="success"||e==="failed"||e==="cancelled")return e==="success"?"completed":e;if(e==="running"||e==="paused"||e==="pending")return e}return t.session_id===this.agentService.runningSessionId()&&(this.agentService.agentStatus()==="running"||this.agentService.agentStatus()==="paused")?this.agentService.agentStatus():"completed"}getDeviceSerial(t){if(this.deviceSerialCache.has(t))return this.deviceSerialCache.get(t)??null;let e=null,o=t.device_serial||t.device_id;if(o&&o!=="pending"&&o!=="null"&&o!=="undefined")e=o;else if(t.device_info)try{let i=typeof t.device_info=="string"?JSON.parse(t.device_info):t.device_info,r=i?.device_id||i?.device_serial;r&&r!=="pending"&&r!=="null"&&r!=="undefined"&&(e=r)}catch(i){}return this.deviceSerialCache.set(t,e),e}selectTask(t,e){e&&e.stopPropagation(),this.agentService.selectSession(t,!0),this.isTaskDropdownOpen.set(!1)}stopTask(t,e){e&&e.stopPropagation(),this.agentService.stopTask(t,!1)}deleteTask(t,e){e&&e.stopPropagation(),confirm("\u786E\u5B9A\u5220\u9664\u6B64\u4EFB\u52A1\uFF1F\u6B64\u64CD\u4F5C\u65E0\u6CD5\u64A4\u9500\u3002")&&this.agentService.deleteSession(t).subscribe({error:o=>{console.error(`\u5220\u9664\u4F1A\u8BDD\u5931\u8D25\uFF1A${t}:`,o)}})}selectNote(t,e){e&&e.stopPropagation(),this.agentService.selectedNoteKey.set(t)}getParsedNote(t){return ec(t)}getParsedNoteLines(t){return Js(t)}upsertBlockResetNotice(t,e){this.activeBlockResets.update(o=>{let i=new Map(o),r=[...i.get(t)||[]],a=r.findIndex(s=>s.id===e.id);return a>-1?r[a]=e:r.push(e),i.set(t,r),i})}startTyping(t,e,o=!1,i){let r=t.endsWith("-native")?t.replace("-native",""):t,a=this.rewindTargets.get(t);a&&(this.rewindTargets.delete(t),this.typedTextsSignal.update(s=>F(x({},s),{[t]:""})),this.upsertBlockResetNotice(r,{id:a.execId||`${r}-${o?"thinking":"text"}`,message:a.message,isWaiting:!1,streamType:o?"thinking":"text"})),this.rewindTargets.delete(t),this.activeBlockResets.update(s=>{let c=s.get(r);if(!c||c.length===0)return s;let u=o?"thinking":"text",f=c.map(h=>h.streamType===u?F(x({},h),{isWaiting:!1}):h),_=new Map(s);return _.set(r,f),_}),this.typingTargets.set(t,{blockId:r,isThinking:o,execId:i,fallbackText:e}),this.ensureTypingLoop()}ensureTypingLoop(){this.typingRafId===null&&(this.lastTypingTimestamp=performance.now(),this.zone.runOutsideAngular(()=>{let t=e=>{this.typingRafId=null;let o=e-this.lastTypingTimestamp;o>=n.TYPING_MIN_FRAME_MS&&(this.lastTypingTimestamp=e,this.advanceTyping(o)),(this.typingTargets.size>0||this.rewindTargets.size>0)&&(this.typingRafId=requestAnimationFrame(t))};this.typingRafId=requestAnimationFrame(t)}))}stopTypingLoop(){this.typingTargets.clear(),this.rewindTargets.clear(),this.typingRafId!==null&&(cancelAnimationFrame(this.typingRafId),this.typingRafId=null)}advanceTyping(t){let e=ie(()=>this.consolidatedBlocks()),o=ie(()=>this.typedTextsSignal()),i=Math.max(1,Math.round(n.TYPING_CHARS_PER_SECOND*t/1e3)),r=Math.max(2,Math.round(n.REWIND_CHARS_PER_SECOND*t/1e3)),a={},s=!1;for(let[u,f]of this.typingTargets){let _=e.find(O=>O.id===f.blockId),h=f.fallbackText;_&&(h=(f.isThinking?this.getNativeThinking(_):this.getRawThinking(_))||f.fallbackText);let C=o[u]||"";C.length0){let h=Math.max(0,_.length-r);a[u]=_.slice(0,h),s=!0,h===0&&(this.rewindTargets.delete(u),c.push({blockId:f.blockId,execId:f.execId,isThinking:f.isThinking,message:f.message}))}else this.rewindTargets.delete(u),c.push({blockId:f.blockId,execId:f.execId,isThinking:f.isThinking,message:f.message})}if(c.length>0){for(let u of c)this.upsertBlockResetNotice(u.blockId,{id:u.execId||`${u.blockId}-${u.isThinking?"thinking":"text"}`,message:u.message,isWaiting:!0,streamType:u.isThinking?"thinking":"text"});this.activeResetNotices.update(u=>{let f=new Map(u);for(let _ of c)f.set(_.blockId,_.message);return f})}s&&this.typedTextsSignal.update(u=>x(x({},u),a))}triggerStreamRewind(t,e){let o=ie(()=>this.consolidatedBlocks()),i=ie(()=>this.typedTextsSignal()),r=o.find(u=>u.data?.execution_id===t||u.id===`stream-${t}`||u.data?.step_id===t||Array.isArray(u.data?.stream_segments)&&u.data.stream_segments.some(f=>f.execution_id===t))||o.find(u=>u.data?.isReset);if(!r)return;let a=r.id,s=[{key:a,isThinking:!1},{key:a+"-native",isThinking:!0}],c=!1;for(let{key:u,isThinking:f}of s)this.typingTargets.delete(u),(i[u]||"").length>0&&(this.rewindTargets.set(u,{blockId:a,isThinking:f,execId:t,message:e}),c=!0);c?this.ensureTypingLoop():(this.upsertBlockResetNotice(a,{id:t||`${a}-text`,message:e,isWaiting:!0,streamType:"text"}),this.activeResetNotices.update(u=>{let f=new Map(u);return f.set(a,e),f}))}getBlockResets(t,e=!1){if(!t)return[];let o=t.id,i=e?"thinking":"text",r=(this.activeBlockResets().get(o)||[]).filter(c=>c.streamType===i),a=(Array.isArray(t.data?.stream_resets)?t.data.stream_resets:[]).filter(c=>(c.streamType||"text")===i);if(r.length===0&&a.length===0)return!e&&t.data?.isReset&&t.data?.resetMessage?[{id:t.data.execution_id||o,message:t.data.resetMessage,isWaiting:!t.data?.isCompleted,streamType:"text"}]:[];let s=new Map;for(let c of a)s.set(c.id,{id:c.id,message:c.message,isWaiting:t.data?.isCompleted?!1:c.isWaiting??!1,streamType:c.streamType||i});for(let c of r)s.set(c.id,F(x({},c),{isWaiting:t.data?.isCompleted?!1:c.isWaiting}));return Array.from(s.values())}hasWaitingReset(t,e=!1){return this.getBlockResets(t,e).some(i=>i.isWaiting)}hasBlockResets(t,e=!1){return this.getBlockResets(t,e).length>0}formatResetMessage(t,e){return t?e?t:t.replace(/[,.\s]*(?:Retrying automatically(?:\.{3}|\.\.\.)?)\s*$/i,"").trim():""}getCheckerSegmentResetMessage(t){return t?.data?.resetMessage||Do}getResetNotice(t){if(!t)return null;let e=this.getBlockResets(t,!1);if(e.length>0){let r=e[e.length-1];return this.formatResetMessage(r.message,r.isWaiting)}let o=t.id,i=this.activeResetNotices().get(o);return i?this.formatResetMessage(i,!t.data?.isCompleted):t.data?.isReset&&t.data?.resetMessage?this.formatResetMessage(t.data.resetMessage,!t.data?.isCompleted):null}isStreamRewinding(t){return this.rewindTargets.has(t)}isCheckerSegmentResetNotice(t){if(!t?.data?.isReset)return!1;let e=t.data.text;return!e||e.trim().length===0}getStreamDisplayText(t,e=""){let o=this.typedTextsSignal()[t];return o!==void 0?o:e}triggerDelayedCollapse(t){this.scheduledCollapses.has(t)||(this.scheduledCollapses.add(t),setTimeout(()=>{this.collapsedStreams.update(e=>{let o=new Set(e);return o.add(t),o})},1e3))}onDetailsToggle(t,e){let i=t.target.open;this.collapsedStreams.update(r=>{let a=new Set(r);return i?a.delete(e):a.add(e),a})}toggleCollapse(t){this.collapsedStreams.update(e=>{let o=new Set(e);return o.has(t)?o.delete(t):o.add(t),o})}getActionObject(t){return xe(t)}isAndroidAction(t){return Kt(t)}getActionIcon(t){return yu(t)}getActionTitle(t){return v_(t)}getActionTargetText(t){return y_(t)}getActionInputLabel(t){return wv(t)}getActionInputText(t){return Sv(t)}getActionCoords(t){return x_(t)}isActionFailed(t,e){return xu(t,e)}getActionErrorMessage(t,e){return kv(t,e)}isActionExpanded(t,e=!1){return this.collapsedActionCards().has(t)?!1:this.expandedActionCards().has(t)?!0:e}toggleActionExpanded(t,e,o=!1){e&&e.stopPropagation(),this.isActionExpanded(t,o)?(this.expandedActionCards.update(r=>{let a=new Set(r);return a.delete(t),a}),this.collapsedActionCards.update(r=>{let a=new Set(r);return a.add(t),a})):(this.collapsedActionCards.update(r=>{let a=new Set(r);return a.delete(t),a}),this.expandedActionCards.update(r=>{let a=new Set(r);return a.add(t),a}))}getActionBounds(t){return Ev(t)}getActionResourceId(t){return Dv(t)}getActionClass(t){return Iv(t)}getActionExtraParams(t){return Tv(t,this.actionParamsCache)}getToolExtraParams(t){return bv(t,this.toolParamsCache)}getStepPreImageUrl(t,e){return w_(t,e)}getStepPostImageUrl(t,e){return S_(t,e)}openImageModal(t,e,o){o&&o.stopPropagation(),this.selectedZoomImage.set(t),this.selectedZoomAction.set(e||null)}closeImageModal(t){t&&t.stopPropagation(),this.selectedZoomImage.set(null),this.selectedZoomAction.set(null)}onImageLoad(t,e,o){if(!(!t||!e))try{this.drawActionCoordinatesOnOverlay(t,e,o)}catch(i){console.warn("Failed to draw action overlay:",i)}}drawActionCoordinatesOnOverlay(t,e,o){Mu(t,e,o)}firstSaveNoteByKey=A(()=>{let t=new Map;for(let e of this.consolidatedBlocks())if(e.type==="step"&&e.data.generic_tools){for(let o of this.getUniqueGenericTools(e.data.generic_tools))if(o.name&&o.name.toLowerCase()==="save_note"){let i=this.getToolKey(o);i&&!t.has(i)&&t.set(i,o)}}return t});isFirstSaveNoteForKey(t){if(!t||!t.name||t.name.toLowerCase()!=="save_note")return!1;let e=this.getToolKey(t);if(!e)return!0;let o=this.firstSaveNoteByKey().get(e);return o?t.trace_id&&o.trace_id?t.trace_id===o.trace_id:t===o:!0}getToolDisplayLabel(t){return cv(t,this.isFirstSaveNoteForKey(t))}getCompressionPhaseTitle(t){return f_(t)?lv(t):null}isToolLineRunning(t,e){return this.isItemRunning(t,e)&&!dv(t?.data)}isNoteTool(t){return ov(t)}isVideoTool(t){return bu(t)}getVideoToolTarget(t){return iv(t)}getVideoAnalysisLabel(t){return or(t)?.title||"\u6B63\u5728\u5206\u6790\u5C4F\u5E55\u5F55\u50CF"}getVideoAnalysisRangeLabel(t){let e=or(t)?.requestedRange;return e?`${u_(e.start)}\u2013${u_(e.end)}`:"\u5C4F\u5E55\u5F55\u50CF"}getVideoAnalysisDetail(t){let e=or(t);return!e||e.totalCount<=1?"":e.outcome==="running"||e.outcome==="recovering"?e.completedCount>0?`${e.completedCount}/${e.totalCount} \u6BB5\u5DF2\u4FDD\u5B58`:"":e.outcome==="partial"?`${e.completedCount}/${e.totalCount} \u6BB5\u5DF2\u4FDD\u5B58`:""}isVideoAnalysisAttention(t){let e=or(t)?.outcome;return e==="partial"||e==="failed"}onVideoToolClick(t){let e=this.agentService.currentSessionId();if(e){let o=or(t)?.requestedRange?.start;this.agentService.openVideoPlayer(e,void 0,void 0,o)}}getScreenRecordingButtonTitle(){return this.agentService.isCurrentSessionRunning()?"\u4EFB\u52A1\u6B63\u5728\u8FD0\u884C\uFF08\u5F55\u5C4F\u4E2D\uFF09":this.agentService.currentSessionRecordingStatus()==="processing"?"\u6B63\u5728\u51C6\u5907\u5C4F\u5E55\u5F55\u50CF\u2026":this.agentService.currentSessionVideoUrl()?"\u64AD\u653E\u5C4F\u5E55\u5F55\u50CF":this.agentService.hasCurrentSessionStepFrames()?this.agentService.currentSessionRecordingStatus()==="failed"?"\u5F55\u5C4F\u5931\u8D25\uFF0C\u70B9\u51FB\u9010\u6B65\u56DE\u653E\u622A\u56FE":"\u9010\u6B65\u56DE\u653E\u622A\u56FE":this.agentService.currentSessionRecordingStatus()==="failed"?"\u5C4F\u5E55\u5F55\u50CF\u751F\u6210\u5931\u8D25":"\u5C4F\u5E55\u5F55\u50CF"}isDeviceActionTool(t){return g_(t)}isFailureAnalyzerActionTool(t){return g_(t)}getToolAgentName(t){return av(t)}shouldShowTool(t,e){return rv(t,e)}getUniqueGenericTools(t){return Pu(t)}getSortedStepEvents(t){return Uv(t,this.sortedEventsCache)}getThinkingTexts(t){let e=this.thinkingTextCache.get(t);if(!e){let o=t.operator_native_thinking||(t.stream_type==="thinking"?t.text:null),i=t.operator_raw_thinking||(t.stream_type==="text"?t.text:null);e={native:o&&o.trim()?o:null,raw:i&&i.trim()&&this.isHumanThinking(i)?i:null},this.thinkingTextCache.set(t,e)}return e}getNativeThinking(t){return!t||!t.data?null:this.getThinkingTexts(t.data).native}getRawThinking(t){return!t||!t.data?null:this.getThinkingTexts(t.data).raw}isCheckerBlock(t){return t?.type==="checker"}isCheckerPhase(t){let e=Array.isArray(t?.blocks)?t.blocks:[];return e.length>0&&e.every(o=>this.isCheckerBlock(o))}getCheckerPhaseLabel(t){switch(t?.data?.phase){case"final":return"\u6700\u7EC8\u68C0\u67E5";case"outcome":return"\u7ED3\u679C";default:return"\u52FE\u9009"}}getCheckerVerdicts(t){return Array.isArray(t?.data?.verdicts)?t.data.verdicts:[]}getCheckerItems(t){let e=t?.data||{};return Array.isArray(e.items)&&e.items.length>0?e.items:this.getCheckerVerdicts(t).map(o=>({kind:o.kind,text:o.item_text,when:o.when}))}getCheckMethodLabel(t,e){let o=[t?.kind==="assert"?"\u6D4B\u8BD5\u65AD\u8A00":"\u5FC5\u987B\u901A\u8FC7"];return t?.when==="at_end"&&e?.data?.phase!=="final"&&o.push("\u7ED3\u675F\u65F6"),o.join(" \xB7 ")}isCheckerMuted(t){let e=t?.data?.status;return e==="superseded"||e==="unchecked"}getVerdictItemNumber(t,e,o){let i=this.getCheckerItems(t).findIndex(r=>r.text===e?.item_text);return(i>-1?i:o)+1}getVerdictStatusText(t){switch(t){case"passed":return"\u5DF2\u901A\u8FC7";case"failed":return"\u5931\u8D25";case"inconclusive":return"\u65E0\u6CD5\u786E\u8BA4";case"superseded":return"\u5DF2\u88AB\u8F83\u65B0\u7684\u68C0\u67E5\u66FF\u4EE3";case"unchecked":return"\u672A\u68C0\u67E5";default:return t||""}}hasCheckerResult(t){return!this.isCheckerBlock(t)||this.isBlockRunning(t)||this.isCheckerMuted(t)?!1:t.data?.phase==="outcome"?this.getCheckerNotes(t).length>0:this.getCheckerVerdicts(t).length>0||this.getCheckerNotes(t).length>0}getCheckerNotes(t){let e=t?.data||{};if(e.phase==="outcome")return Array.isArray(e.last_findings)?e.last_findings:[];let o=[];if(Array.isArray(e.unmet_subgoals))for(let i of e.unmet_subgoals)o.push(`\u5C1A\u672A\u5B8C\u6210\uFF1A${i}`);return e.reverted&&o.push("\u6B64\u6B65\u9AA4\u5DF2\u9000\u56DE\u91CD\u65B0\u6267\u884C\u3002"),e.error&&o.push(String(e.error)),o}openCheckSegments=w(new Set);isCheckerSegmentRunning(t,e){return this.isBlockRunning(t)?e===this.getSortedStepEvents(t.data).length-1:!1}isCheckerSegmentCollapsed(t,e){return this.isCheckerSegmentRunning(t,e)?!1:!this.openCheckSegments().has(`${t.id}-${e}`)}toggleCheckerSegment(t,e){let o=`${t.id}-${e}`;this.openCheckSegments.update(i=>{let r=new Set(i);return r.has(o)?r.delete(o):r.add(o),r})}isCheckerTextVisible(t){if(t?.data?.isReset)return!0;let e=t?.data?.text;return typeof e=="string"&&e.trim().length>0&&this.isHumanThinking(e)}getCheckerTone(t){let e=t?.data||{};if(e.phase==="outcome")return e.task_status==="completed"?"passed":e.task_status==="blocked"?"failed":"inconclusive";if(e.isCompleted===!1)return"running";if(e.status==="superseded"||e.status==="unchecked")return"muted";if(e.status==="error")return"inconclusive";let o=this.getCheckerVerdicts(t);return o.some(i=>i.status==="failed")?"failed":o.some(i=>i.status==="inconclusive")?"inconclusive":"passed"}getCheckerStatusLabel(t){let e=t?.data||{};if(e.phase==="outcome"){let r=e.tests||{},a=e.task_status==="completed"?"\u76EE\u6807\u5DF2\u5B8C\u6210":e.task_status==="blocked"?"\u53D7\u963B":"\u90E8\u5206\u5B8C\u6210",s=[[r.passed,"passed"],[r.failed,"failed"],[r.inconclusive,"inconclusive"],[r.unchecked,"\u672A\u68C0\u67E5"]].filter(([c])=>Number(c)>0).map(([c,u])=>`${c} ${u}`);return s.length>0?`${a} \xB7 ${s.join(" \xB7 ")}`:a}if(e.isCompleted===!1)return"\u6B63\u5728\u68C0\u67E5\u2026";switch(e.status){case"superseded":return"\u5DF2\u66FF\u4EE3";case"unchecked":return"\u672A\u68C0\u67E5";case"error":return"\u6682\u65E0\u7ED3\u8BBA"}let o=this.getCheckerVerdicts(t),i=o.filter(r=>r.status==="failed").length;return i>0?`${i} failed`:o.some(r=>r.status==="inconclusive")?"\u65E0\u6CD5\u786E\u5B9A":o.length>0?"\u5DF2\u901A\u8FC7":"\u5B8C\u6210"}getVerdictIcon(t){switch(t){case"passed":return"check_circle";case"failed":return"cancel";case"inconclusive":return"help";case"superseded":return"history";case"unchecked":return"radio_button_unchecked";default:return"pending"}}hasVisibleContent(t){if(!t)return!1;if(t.type==="checker")return!0;let e=!!this.getNativeThinking(t),o=!!this.getRawThinking(t),i=this.hasBlockResets(t,!1)||this.hasBlockResets(t,!0),r=!!t.data?.generic_tools&&t.data.generic_tools.some(s=>this.shouldShowTool(s,t.data)||this.isDisplayableLLMFailure(s)||this.isLLMRetry(s)||this.isReportStatusAction(s)||this.isBackendSwitchNote(s)),a=!!t.data?.action_taken&&(this.isAndroidAction(t.data.action_taken)||this.isReportStatusAction(t.data.action_taken));return e||o||i||r||a}isReportStatusAction(t){return cn(t)}getReportStatusValue(t){return xv(t)}getReportStatusExplanation(t){return vu(t)}isHumanThinking(t){return Pv(t)}isTerminalLLMFailure(t){return!!t&&this.retryablePauseTrace()===t}isDisplayableLLMFailure(t){return t?.type==="llm_call"&&t?.status==="failed"&&(t?.name==="llm_pause"||t?.payload?.pause===!0)}isBackendSwitchNote(t){return k_(t)}getBackendSwitchMessage(t){return String(t?.payload?.message||"\u754C\u9762\u5C42\u7EA7\u6765\u6E90\u5DF2\u53D8\u66F4")}resumePausedTask(t){t.stopPropagation(),this.agentService.resumeTask()}getLLMErrorText(t){let e="\u6A21\u578B\u8BF7\u6C42\u5931\u8D25\uFF0C\u63A5\u53E3\u672A\u8FD4\u56DE\u9519\u8BEF\u8BE6\u60C5\u3002";if(!t)return e;let o=t.payload?.error||t.error;if(!o)return e;let i=this.cleanErrorMessage(o);return i==="\u672A\u77E5\u9519\u8BEF"?e:i}isLLMRetry(t){return t?.type==="llm_call"&&t?.status==="retrying"&&t?.payload?.source==="provider_sdk"&&["google","gemini"].includes(String(t?.payload?.provider||"").toLowerCase())}getLLMRetryEntries(t){let e=t?.payload?.retries;return Array.isArray(e)&&e.length>0?e:[t?.payload||t]}getLLMFailureRetryEntries(t){let e=t?.payload?.retries;return Array.isArray(e)?e.filter(o=>o?.source==="provider_sdk"&&["google","gemini"].includes(String(o?.provider||"").toLowerCase())):[]}hasLLMFailureRetryEntries(t){return this.getLLMFailureRetryEntries(t).length>0}getLLMRetryEntryDelay(t){let e=Number(t?.delay);return!Number.isFinite(e)||e<=0?null:`${e.toFixed(2).replace(/\.00$/,"")}s`}getLLMRetryEntryWaited(t){let e=Number(t?.delay);if(!Number.isFinite(e)||e<=0)return"0s";let o=Number(t?.scheduled_at??t?.timestamp);if(!Number.isFinite(o)||o<=0)return this.formatLLMDuration(e);let i=o<1e11?o*1e3:o,r=Math.min(e,Math.max(0,(this.retryClock()-i)/1e3));return this.formatLLMDuration(r)}isLLMRetryEntryWaiting(t){let e=Number(t?.delay),o=Number(t?.scheduled_at??t?.timestamp);if(!Number.isFinite(e)||e<=0||!Number.isFinite(o))return!1;let i=o<1e11?o*1e3:o;return this.retryClock()r.session_id===e);return!(i&&(i.status==="completed"||i.status==="failed"||i.status==="cancelled"))}isItemRunning(t,e){if(!t||!t.data||!this.isCurrentSessionActive()||t.data.status==="success"||t.data.status==="failed"||t.data.status==="cancelled"||this.isReportStatusAction(t.data)||this.isReportStatusAction(t.data?.action_taken))return!1;if(t.data.status==="running")return!0;let o=this.consolidatedBlocks(),i=o.length>0?o[o.length-1]:null;if(i&&(i.id===e?.id||!e?.data?.isCompleted)){let r=this.getSortedStepEvents(e.data),a=r.length>0?r[r.length-1]:null;if(a&&(a.data?.trace_id===t.data?.trace_id||a===t))return!0}return!1}isBlockRunning(t){if(!t||!t.data||!this.isCurrentSessionActive())return!1;if(t.type==="checker")return t.data.isCompleted===!1;if(this.isReportStatusAction(t.data.action_taken)||t.data?.status==="completed"||t.data?.status==="failed"||t.data?.status==="cancelled")return!1;if(t.data.isCompleted===!1)return!0;let e=this.consolidatedBlocks();return(e.length>0?e[e.length-1]:null)?.id===t.id}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=Ae({type:n,selectors:[["app-agent-stream"]],decls:23,vars:17,consts:[["taskQueueOrigin","cdkOverlayOrigin"],["notesOrigin","cdkOverlayOrigin"],["runInfoOrigin","cdkOverlayOrigin"],["preImg",""],["preOverlay",""],["preImgTool",""],["preOverlayTool",""],["modalImg",""],["modalOverlay",""],[1,"agent-stream-container"],[1,"vscode-nav-header"],[1,"vscode-tab-container"],["cdkOverlayOrigin","","title","\u4EFB\u52A1\u961F\u5217","aria-label","\u4EFB\u52A1\u961F\u5217",1,"vscode-tab-btn",3,"click"],[1,"material-symbols-outlined","tab-icon"],[1,"tab-label"],["cdkOverlayOrigin","","title","\u7B14\u8BB0\u4E0E\u8BA1\u5212","aria-label","\u7B14\u8BB0\u4E0E\u8BA1\u5212",1,"vscode-tab-btn",3,"click"],["cdkConnectedOverlay","","cdkConnectedOverlayBackdropClass","cdk-overlay-transparent-backdrop",3,"backdropClick","cdkConnectedOverlayOrigin","cdkConnectedOverlayOpen","cdkConnectedOverlayHasBackdrop","cdkConnectedOverlayPositions"],[1,"stream-floating-toolbar"],[1,"stream-logs-content"],["aria-live","polite",1,"session-loading-state"],[1,"empty-state"],[1,"logs-list-container"],[1,"image-modal-backdrop"],[1,"vscode-dropdown-menu","task-dropdown"],[1,"popover-title-header"],[1,"material-symbols-outlined"],[1,"dropdown-section-label"],[1,"material-symbols-outlined","icon-bolt"],[1,"dropdown-empty-state"],[1,"dropdown-item-card",3,"selected","running"],[1,"dropdown-section-label","history-label"],[1,"material-symbols-outlined","icon-history"],[1,"dropdown-history-list"],[1,"dropdown-item-card",3,"click"],[1,"item-header"],[1,"task-badge",3,"ngClass"],[1,"status-dot"],[1,"item-header-actions"],[1,"item-device",3,"title"],[1,"item-time-divider"],[1,"item-time"],["type","button","title","\u505C\u6B62\u6B64\u4EFB\u52A1","aria-label","\u505C\u6B62\u6B64\u4EFB\u52A1",1,"btn-stop-card"],["type","button","title","\u5220\u9664\u6B64\u4EFB\u52A1","aria-label","\u5220\u9664\u6B64\u4EFB\u52A1",1,"btn-delete-card"],[1,"item-goal",3,"title"],[1,"item-footer"],[1,"item-id",3,"title"],[1,"item-date"],[1,"material-symbols-outlined","device-icon"],[1,"device-name"],["type","button","title","\u505C\u6B62\u6B64\u4EFB\u52A1","aria-label","\u505C\u6B62\u6B64\u4EFB\u52A1",1,"btn-stop-card",3,"click"],["type","button","title","\u5220\u9664\u6B64\u4EFB\u52A1","aria-label","\u5220\u9664\u6B64\u4EFB\u52A1",1,"btn-delete-card",3,"click"],[1,"vscode-dropdown-menu","notes-dropdown"],[1,"notes-selector-container"],[1,"dropdown-notes-content"],[1,"notes-selector-list"],[1,"note-selector-pill",3,"active"],[1,"note-selector-pill",3,"click"],[1,"material-symbols-outlined","pill-icon"],[1,"material-symbols-outlined","empty-icon"],[1,"note-title"],[1,"milestones-container"],[1,"other-lines-container"],[1,"milestone-block",3,"ngClass"],[1,"milestone-title-row"],[1,"material-symbols-outlined","milestone-status-icon","checked"],[1,"material-symbols-outlined","milestone-status-icon","progress"],[1,"material-symbols-outlined","milestone-status-icon","unchecked"],[1,"milestone-text"],[3,"bold-segment","code-segment"],[1,"milestone-substeps"],[1,"milestone-checks-container"],[1,"substep-row",3,"ngClass","padding-left"],[1,"substep-row",3,"ngClass"],[1,"material-symbols-outlined","check-icon","checked"],[1,"material-symbols-outlined","check-icon","progress"],[1,"material-symbols-outlined","check-icon","unchecked"],[1,"bullet"],[1,"line-text"],[1,"verification-card",3,"ngClass","margin-left"],[1,"verification-card",3,"ngClass"],[1,"card-header"],[1,"card-tag"],[1,"card-body"],[1,"verification-card","standalone",3,"ngClass","margin-left"],[1,"md-line",3,"ngClass","margin-left"],[1,"verification-card","standalone",3,"ngClass"],[1,"md-line",3,"ngClass"],[1,"btn-screen-recording",3,"click","title"],[1,"material-symbols-outlined","video-icon"],[1,"material-symbols-outlined","video-icon","spin-animation"],[1,"material-symbols-outlined","video-icon","play-icon"],[1,"material-symbols-outlined","video-icon","steps-icon"],[1,"material-symbols-outlined","video-icon","error-icon"],[1,"btn-text"],[1,"video-pulse-dot","red"],[1,"steps-count-badge"],["type","button","cdkOverlayOrigin","","aria-haspopup","dialog",1,"model-info-chip",3,"click","ngClass","title"],[1,"material-symbols-outlined","model-icon"],[1,"model-label"],[1,"model-name"],["role","dialog","aria-label","\u8FD0\u884C\u4FE1\u606F",1,"vscode-dropdown-menu","run-info-dropdown"],[1,"run-info-header"],[1,"run-info-title"],[1,"run-info-model",3,"title"],[1,"run-info-row"],[1,"run-info-label"],[1,"run-info-value"],[1,"run-info-value","is-muted"],[1,"run-info-row","is-stacked"],[1,"run-info-line"],[1,"run-info-meter"],[1,"run-info-meter-fill"],[1,"run-info-note"],[1,"run-info-sub"],[1,"run-info-sub-inline"],[1,"material-symbols-outlined","spin-animation"],[1,"empty-icon"],["aria-live","polite",1,"phase-container","startup-phase"],[1,"phase-container"],[1,"outputter-synthesis-stream-card"],[1,"planning-loader-container"],[1,"phase-header","first-phase"],[1,"phase-worked-time"],["aria-label","\u4EFB\u52A1\u542F\u52A8\u8FDB\u5EA6",1,"phase-body"],[1,"block-item","type-stream"],[1,"step-body"],[1,"step-actions-container"],[1,"llm-retry-notes"],[1,"llm-retry-note"],[1,"stream-status-dot"],[1,"llm-retry-note-text"],[1,"llm-retry-status-line"],[1,"phase-header",3,"first-phase"],[1,"phase-body"],[1,"phase-header"],[1,"phase-token-usage",3,"title"],[1,"token-dot"],[1,"token-text"],[1,"block-item",3,"ngClass"],[1,"check-lane",3,"ngClass"],[1,"check-result",3,"ngClass"],[1,"check-header"],[1,"check-title"],[1,"check-subject",3,"title"],[1,"check-status"],[1,"check-items"],[1,"check-item"],[1,"check-index"],[1,"check-text"],[1,"check-method"],[1,"thinking-stream-details","native-thinking-details",3,"is-running","is-resetting","collapsed"],[1,"step-android-action-card","task-report-card",3,"is-completed","is-failed","is-expanded"],[1,"step-android-action-card",3,"is-running","is-failed","is-expanded"],[1,"thinking-stream-details","native-thinking-details"],[1,"details-summary",3,"click"],[1,"header-label"],[1,"details-content-wrapper"],[1,"details-content","stream-box"],[1,"stream-text",3,"innerHTML"],[1,"step-raw-thinking-message",3,"is-running"],[1,"step-raw-thinking-message"],[1,"report-header"],[1,"report-content","stream-box"],[1,"thinking-stream-details","native-thinking-details",3,"is-running","collapsed"],[1,"step-android-action-card","task-report-card"],[1,"action-card-header",3,"click"],[1,"material-symbols-outlined","action-icon","report-icon"],[1,"action-title"],[1,"action-status-badge"],[1,"material-symbols-outlined","status-icon"],[1,"action-expand-icon","material-symbols-outlined"],[1,"action-card-body"],[1,"action-card-expanded-details"],[1,"action-detail-row"],[1,"detail-label"],[1,"detail-value"],[1,"action-card-expanded-details",3,"click"],[1,"expanded-grid"],[1,"grid-item","full-width"],[1,"expanded-screenshots-container"],[1,"grid-label"],[1,"grid-value","report-markdown-body",3,"innerHTML"],[1,"screenshot-column"],[1,"screenshot-label"],[1,"image-wrapper",3,"click"],[1,"img-relative-box"],["alt","\u6700\u7EC8\u5C4F\u5E55\u622A\u56FE",3,"src"],["alt","\u64CD\u4F5C\u540E\u622A\u56FE",3,"src"],[1,"step-android-action-card"],[1,"material-symbols-outlined","action-icon"],[1,"action-status-badge","is-failed"],[1,"detail-value","coordinate-badge"],[1,"grid-item"],[1,"expanded-error-banner"],[1,"grid-value"],[1,"grid-value","code-pill"],["alt","\u64CD\u4F5C\u524D\u622A\u56FE",3,"load","src"],[1,"overlay-layer"],[1,"material-symbols-outlined","icon"],[1,"error-text"],[1,"llm-failure-stack"],[1,"step-generic-tool",3,"is-running","is-note-tool","is-video-tool","is-video-attention"],[1,"step-android-action-card","tool-action-card",3,"is-running","has-no-details","is-failed","is-expanded"],[1,"llm-retry-guidance"],[1,"step-android-action-card","tool-action-card","is-failed",3,"click"],[1,"action-card-header","llm-failure-header"],[1,"material-symbols-outlined","action-icon","is-failed"],[1,"action-status-badge","is-paused"],[1,"failure-retry-details"],[1,"llm-resume-row"],[1,"failure-retry-title"],[1,"failure-retry-row"],["type","button","title","\u7EE7\u7EED\u5DF2\u6682\u505C\u7684\u4EFB\u52A1","aria-label","\u7EE7\u7EED\u5DF2\u6682\u505C\u7684\u4EFB\u52A1",1,"btn-continue-task",3,"click"],[1,"material-symbols-outlined","continue-icon"],[1,"material-symbols-outlined","continue-arrow"],[1,"llm-resume-hint"],[1,"step-generic-tool"],[1,"tool-call-label"],[1,"tool-call-text"],["title","\u70B9\u51FB\u67E5\u770B\u7B14\u8BB0\u5185\u5BB9",1,"tool-key-pill"],["title","\u70B9\u51FB\u67E5\u770B\u7B14\u8BB0\u5185\u5BB9",1,"tool-key-pill",3,"click"],[1,"tool-key-pill",3,"click","title"],[1,"video-status-detail"],[1,"step-android-action-card","tool-action-card"],[1,"detail-value","command-value"],[1,"grid-value","command-value"],[1,"check-verdict",3,"ngClass"],[1,"check-note"],[1,"material-symbols-outlined","verdict-icon"],[1,"verdict-body"],[1,"verdict-evidence"],[1,"verdict-suggestion"],[1,"synthesis-card-header"],[1,"header-left"],[1,"material-symbols-outlined","icon-sparkle"],[1,"main-title"],[1,"header-right"],["type","button",1,"btn-open-note",3,"click"],[1,"synthesis-card-preview"],[1,"parsed-note-container"],[1,"parsed-note-title"],[1,"parsed-milestones"],[1,"parsed-other-lines"],[1,"milestone-item",3,"class"],[1,"milestone-item"],[1,"other-line",3,"class"],[1,"other-line"],[1,"verify-badge",3,"assert"],[1,"finding-badge"],[1,"verify-badge"],[1,"planning-loader"],[1,"loader-text"],[1,"image-modal-backdrop",3,"click"],[1,"image-modal-content",3,"click"],["aria-label","\u5173\u95ED\u56FE\u7247\u9884\u89C8",1,"image-modal-close",3,"click"],["alt","\u653E\u5927\u622A\u56FE",3,"load","src"]],template:function(e,o){if(e&1&&(l(0,"div",9)(1,"header",10)(2,"div",11)(3,"button",12,0),I("click",function(r){return o.toggleTaskDropdown(r)}),l(5,"span",13),g(6,"list_alt"),d(),l(7,"span",14),g(8,"\u4EFB\u52A1\u961F\u5217"),d()(),l(9,"button",15,1),I("click",function(r){return o.toggleNotesDropdown(r)}),l(11,"span",13),g(12,"description"),d(),l(13,"span",14),g(14,"\u7B14\u8BB0\u4E0E\u8BA1\u5212"),d()()(),Vr(15,AR,23,4,"ng-template",16),I("backdropClick",function(){return o.isTaskDropdownOpen.set(!1)}),Vr(16,pF,9,3,"ng-template",16),I("backdropClick",function(){return o.isNotesDropdownOpen.set(!1)}),d(),M(17,LF,17,28,"div",17),l(18,"main",18),M(19,VF,5,0,"div",19),M(20,BF,8,0,"div",20),M(21,n4,6,3,"div",21),d(),M(22,o4,10,1,"div",22),d()),e&2){let i=Fn(4),r=Fn(10);p(3),E("active",o.isTaskDropdownOpen()),p(6),E("active",o.isNotesDropdownOpen()),p(6),N("cdkConnectedOverlayOrigin",i)("cdkConnectedOverlayOpen",o.isTaskDropdownOpen())("cdkConnectedOverlayHasBackdrop",!0)("cdkConnectedOverlayPositions",o.dropdownPositions),p(),N("cdkConnectedOverlayOrigin",r)("cdkConnectedOverlayOpen",o.isNotesDropdownOpen())("cdkConnectedOverlayHasBackdrop",!0)("cdkConnectedOverlayPositions",o.dropdownPositions),p(),b(o.consolidatedBlocks().length>0||o.showPlanningLoader()?17:-1),p(2),b(o.agentService.isSessionContentLoading()?19:-1),p(),b(!o.agentService.isSessionContentLoading()&&o.consolidatedBlocks().length===0&&!o.showPlanningLoader()&&o.startupWorkItems().length===0?20:-1),p(),b(!o.agentService.isSessionContentLoading()&&(o.phases().length>0||o.showPlanningLoader()||o.startupWorkItems().length>0)?21:-1),p(),b(o.selectedZoomImage()?22:-1)}},dependencies:[Qo,Ki,Et,K_,Y_,Qs,ga,Zi],styles:['@charset "UTF-8";[_nghost-%COMP%]{display:flex;flex-direction:column;height:100%;width:100%;overflow:hidden}.agent-stream-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%;background:#f8f9fa;box-sizing:border-box;position:relative;container-type:inline-size;container-name:stream-panel}.agent-stream-container[_ngcontent-%COMP%] .vscode-nav-header[_ngcontent-%COMP%]{position:relative;height:60px;flex-shrink:0;background:#fff;border-bottom:1px solid rgba(0,0,0,.08);display:flex;align-items:center;justify-content:flex-end;padding:0 16px;box-sizing:border-box;-webkit-user-select:none;user-select:none;box-shadow:none;z-index:10}@media(min-width:1151px){.agent-stream-container[_ngcontent-%COMP%] .vscode-nav-header[_ngcontent-%COMP%]{display:none!important}}.agent-stream-container[_ngcontent-%COMP%] .vscode-nav-header[_ngcontent-%COMP%] .vscode-tab-container[_ngcontent-%COMP%]{display:flex;height:36px;box-sizing:border-box;background:#f1f5f9b8;backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);border:1px solid rgba(226,232,240,.85);border-radius:18px;padding:3px;gap:3px;align-items:center;flex-shrink:0;box-shadow:0 2px 8px -1px #0f172a0a,inset 0 1px 1px #fffc}.agent-stream-container[_ngcontent-%COMP%] .vscode-nav-header[_ngcontent-%COMP%] .vscode-tab-btn[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:30px;padding:0 14px;box-sizing:border-box;border:none;background:transparent;border-radius:15px;font-size:13px;font-weight:600;color:#64748b;font-family:Google Sans,Google Sans Text,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;text-decoration:none;cursor:pointer;position:relative;line-height:1;transition:all .2s cubic-bezier(.4,0,.2,1);outline:none;white-space:nowrap}.agent-stream-container[_ngcontent-%COMP%] .vscode-nav-header[_ngcontent-%COMP%] .vscode-tab-btn[_ngcontent-%COMP%] .tab-icon[_ngcontent-%COMP%]{font-size:16px;color:inherit;transition:color .15s ease}.agent-stream-container[_ngcontent-%COMP%] .vscode-nav-header[_ngcontent-%COMP%] .vscode-tab-btn[_ngcontent-%COMP%] .badge-count[_ngcontent-%COMP%]{background:#2563eb;color:#fff;font-size:10px;font-weight:700;padding:1px 6px;border-radius:10px;line-height:1}.agent-stream-container[_ngcontent-%COMP%] .vscode-nav-header[_ngcontent-%COMP%] .vscode-tab-btn[_ngcontent-%COMP%] .dropdown-chevron[_ngcontent-%COMP%]{font-size:16px;color:#94a3b8;margin-left:2px;transition:transform .2s ease,color .15s ease}.agent-stream-container[_ngcontent-%COMP%] .vscode-nav-header[_ngcontent-%COMP%] .vscode-tab-btn[_ngcontent-%COMP%] .dropdown-chevron.open[_ngcontent-%COMP%]{transform:rotate(180deg);color:#1e293b}.agent-stream-container[_ngcontent-%COMP%] .vscode-nav-header[_ngcontent-%COMP%] .vscode-tab-btn[_ngcontent-%COMP%]:hover:not(.active){color:#0f172a;background:#fff9}.agent-stream-container[_ngcontent-%COMP%] .vscode-nav-header[_ngcontent-%COMP%] .vscode-tab-btn.active[_ngcontent-%COMP%]{background:#fff;color:#2563eb;box-shadow:0 2px 8px #0000000f,0 1px 2px #00000005}.agent-stream-container[_ngcontent-%COMP%] .vscode-nav-header[_ngcontent-%COMP%] .vscode-tab-btn.active[_ngcontent-%COMP%] .tab-icon[_ngcontent-%COMP%]{color:#2563eb}.agent-stream-container[_ngcontent-%COMP%] .vscode-nav-header[_ngcontent-%COMP%] .vscode-tab-btn.video-replay-tab-btn[_ngcontent-%COMP%] .video-indicator-dot[_ngcontent-%COMP%]{width:7px;height:7px;border-radius:50%;background:#10b981;box-shadow:0 0 6px #10b981;margin-left:-2px;flex-shrink:0}.agent-stream-container[_ngcontent-%COMP%] .vscode-nav-header[_ngcontent-%COMP%] .vscode-tab-btn.video-replay-tab-btn.has-video[_ngcontent-%COMP%] .tab-icon[_ngcontent-%COMP%]{color:#0284c7}.agent-stream-container[_ngcontent-%COMP%] .vscode-nav-header[_ngcontent-%COMP%] .header-right-actions[_ngcontent-%COMP%]{margin-left:auto;display:flex;align-items:center}.agent-stream-container[_ngcontent-%COMP%] .vscode-nav-header[_ngcontent-%COMP%] .header-right-actions[_ngcontent-%COMP%] .btn-resume-task[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .vscode-nav-header[_ngcontent-%COMP%] .header-right-actions[_ngcontent-%COMP%] .btn-stop-task[_ngcontent-%COMP%]{padding:5px 10px;background:#2563eb;border:1px solid #2563eb;border-radius:16px;font-size:13px;font-weight:600;color:#fff;cursor:pointer;display:flex;align-items:center;gap:4px;transition:all .2s;box-shadow:0 2px 4px #2563eb33}.agent-stream-container[_ngcontent-%COMP%] .vscode-nav-header[_ngcontent-%COMP%] .header-right-actions[_ngcontent-%COMP%] .btn-resume-task[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .vscode-nav-header[_ngcontent-%COMP%] .header-right-actions[_ngcontent-%COMP%] .btn-stop-task[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:15px;color:inherit}.agent-stream-container[_ngcontent-%COMP%] .vscode-nav-header[_ngcontent-%COMP%] .header-right-actions[_ngcontent-%COMP%] .btn-resume-task[_ngcontent-%COMP%]:hover, .agent-stream-container[_ngcontent-%COMP%] .vscode-nav-header[_ngcontent-%COMP%] .header-right-actions[_ngcontent-%COMP%] .btn-stop-task[_ngcontent-%COMP%]:hover{background:#1d4ed8;border-color:#1d4ed8;box-shadow:0 4px 8px #2563eb4d}.agent-stream-container[_ngcontent-%COMP%] .vscode-nav-header[_ngcontent-%COMP%] .header-right-actions[_ngcontent-%COMP%] .btn-stop-task[_ngcontent-%COMP%]{background:#ef4444;border-color:#ef4444;box-shadow:0 2px 4px #ef444433}.agent-stream-container[_ngcontent-%COMP%] .vscode-nav-header[_ngcontent-%COMP%] .header-right-actions[_ngcontent-%COMP%] .btn-stop-task[_ngcontent-%COMP%]:hover{background:#dc2626;border-color:#dc2626;box-shadow:0 4px 8px #ef44444d}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%]{position:absolute;top:12px;right:20px;height:36px;display:inline-flex;align-items:center;gap:8px;z-index:40;pointer-events:auto}@media(max-width:1150px){.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%]{top:72px}}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .model-info-chip[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:5px;height:30px;padding:0 11px;margin:0;box-sizing:border-box;background:#ffffffb8;backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);border:1px solid rgba(226,232,240,.85);border-radius:15px;cursor:pointer;-webkit-user-select:none;user-select:none;appearance:none;-webkit-appearance:none}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .model-info-chip[_ngcontent-%COMP%]:hover{background:#ffffffeb;border-color:#cbd5e1f2}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .model-info-chip.active[_ngcontent-%COMP%]{background:#eff6ff;border-color:#bfdbfe}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .model-info-chip.active[_ngcontent-%COMP%] .model-icon[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .model-info-chip.active[_ngcontent-%COMP%] .model-name[_ngcontent-%COMP%]{color:#1d4ed8}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .model-info-chip[_ngcontent-%COMP%]:focus-visible{outline:2px solid #93c5fd;outline-offset:1px}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .model-info-chip[_ngcontent-%COMP%]{box-shadow:0 2px 6px -1px #0f172a0d,inset 0 1px 1px #ffffffe6;font-family:Google Sans,Google Sans Text,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;transition:all .2s cubic-bezier(.4,0,.2,1)}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .model-info-chip[_ngcontent-%COMP%] .model-icon[_ngcontent-%COMP%]{font-size:15px;width:15px;height:15px;display:inline-flex;align-items:center;justify-content:center;color:#64748b}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .model-info-chip[_ngcontent-%COMP%] .model-label[_ngcontent-%COMP%]{font-size:12px;font-weight:500;color:#64748b;line-height:1}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .model-info-chip[_ngcontent-%COMP%] .model-name[_ngcontent-%COMP%]{font-size:12px;font-weight:700;color:#1e293b;letter-spacing:.1px;line-height:1}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .btn-screen-recording[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:5px;height:30px;padding:0 12px;box-sizing:border-box;background:#ffffffb8;backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);border:1px solid rgba(226,232,240,.85);border-radius:15px;box-shadow:0 2px 6px -1px #0f172a0d,inset 0 1px 1px #ffffffe6;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);-webkit-user-select:none;user-select:none;outline:none;font-family:Google Sans,Google Sans Text,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .btn-screen-recording[_ngcontent-%COMP%] .video-icon[_ngcontent-%COMP%]{font-size:15px;width:15px;height:15px;display:inline-flex;align-items:center;justify-content:center;color:#64748b;transition:transform .2s ease,color .2s ease}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .btn-screen-recording[_ngcontent-%COMP%] .btn-text[_ngcontent-%COMP%]{font-size:12px;font-weight:600;color:#475569;letter-spacing:.1px;line-height:1;transition:color .15s ease}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .btn-screen-recording[_ngcontent-%COMP%] .video-pulse-dot[_ngcontent-%COMP%]{width:6px;height:6px;border-radius:50%;background:#ef4444;box-shadow:0 0 6px #ef4444;animation:pulseRed 1.5s infinite}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .btn-screen-recording.recording[_ngcontent-%COMP%]{background:#fef2f2e6;border-color:#f8717199;box-shadow:0 2px 6px -1px #dc262626,inset 0 1px 1px #ffffffe6}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .btn-screen-recording.recording[_ngcontent-%COMP%] .video-icon[_ngcontent-%COMP%]{color:#dc2626}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .btn-screen-recording.recording[_ngcontent-%COMP%] .btn-text[_ngcontent-%COMP%]{color:#b91c1c}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .btn-screen-recording.processing[_ngcontent-%COMP%] .video-icon[_ngcontent-%COMP%]{color:#2563eb;animation:_ngcontent-%COMP%_spin 1s linear infinite}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .btn-screen-recording[_ngcontent-%COMP%]:hover:not(.active){background:#ffffffe0;border-color:#cbd5e1f2;box-shadow:0 4px 12px -2px #0f172a14,inset 0 1px 1px #fff;color:#0f172a}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .btn-screen-recording[_ngcontent-%COMP%]:hover:not(.active) .video-icon[_ngcontent-%COMP%]{color:#1a73e8;transform:scale(1.08)}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .btn-screen-recording[_ngcontent-%COMP%]:hover:not(.active) .btn-text[_ngcontent-%COMP%]{color:#0f172a}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .btn-screen-recording[_ngcontent-%COMP%]:active{transform:translateY(0);box-shadow:0 1px 3px #0f172a14}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .btn-screen-recording.has-steps[_ngcontent-%COMP%]{background:#f0fdfae6;border-color:#5eead4b3;box-shadow:0 2px 6px -1px #0d94881f,inset 0 1px 1px #ffffffe6}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .btn-screen-recording.has-steps[_ngcontent-%COMP%] .steps-icon[_ngcontent-%COMP%]{color:#0d9488}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .btn-screen-recording.has-steps[_ngcontent-%COMP%] .btn-text[_ngcontent-%COMP%]{color:#0f766e}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .btn-screen-recording.has-steps[_ngcontent-%COMP%]:hover:not(.active){background:#ccfbf1f2;border-color:#2dd4bfd9}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .btn-screen-recording.has-steps[_ngcontent-%COMP%]:hover:not(.active) .steps-icon[_ngcontent-%COMP%]{color:#0f766e}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .btn-screen-recording.failed[_ngcontent-%COMP%]{background:#fef2f2cc;border-color:#fecacae6}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .btn-screen-recording.failed[_ngcontent-%COMP%] .error-icon[_ngcontent-%COMP%]{color:#ef4444}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .btn-screen-recording.failed[_ngcontent-%COMP%] .btn-text[_ngcontent-%COMP%]{color:#dc2626}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .btn-screen-recording[_ngcontent-%COMP%] .steps-count-badge[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;padding:1px 5px;border-radius:10px;background:#0d9488;color:#fff;font-size:10px;font-weight:700;line-height:1;margin-left:2px}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .btn-screen-recording.active[_ngcontent-%COMP%]{background:#1a73e8f2;border-color:#1a73e8f2;box-shadow:0 2px 8px #1a73e859}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .btn-screen-recording.active[_ngcontent-%COMP%] .video-icon[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .btn-screen-recording.active[_ngcontent-%COMP%] .btn-text[_ngcontent-%COMP%]{color:#fff}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .btn-screen-recording.active[_ngcontent-%COMP%] .video-pulse-dot[_ngcontent-%COMP%]{background:#fff;box-shadow:0 0 6px #ffffffe6}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .btn-screen-recording.active[_ngcontent-%COMP%] .steps-count-badge[_ngcontent-%COMP%]{background:#fff;color:#1a73e8}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%]{flex:1;overflow-y:auto;padding:72px 24px 100px;position:relative}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .session-loading-state[_ngcontent-%COMP%]{min-height:180px;display:flex;align-items:center;justify-content:center;gap:9px;color:#64748b;font-size:13px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .session-loading-state[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:18px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%]{display:flex;flex-direction:column}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .floating-model-badge[_ngcontent-%COMP%]{position:sticky;top:0;float:right;margin-top:-2px;margin-right:4px;display:inline-flex;align-items:center;gap:4px;padding:3px 9px;background:#ffffffeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(99,102,241,.2);border-radius:12px;box-shadow:0 1px 4px #6366f114,0 1px 2px #0000000a;z-index:35;cursor:default;transition:all .2s ease;-webkit-user-select:none;user-select:none}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .floating-model-badge[_ngcontent-%COMP%]:hover{background:#fff;border-color:#6366f166;box-shadow:0 2px 8px #6366f126;transform:translateY(-1px)}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .floating-model-badge[_ngcontent-%COMP%]:hover .model-icon[_ngcontent-%COMP%]{color:#4f46e5;transform:rotate(15deg) scale(1.05)}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .floating-model-badge[_ngcontent-%COMP%] .model-icon[_ngcontent-%COMP%]{font-size:13px;color:#6366f1;transition:all .3s ease}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .floating-model-badge[_ngcontent-%COMP%] .model-name[_ngcontent-%COMP%]{font-size:11px;font-weight:600;color:#334155;letter-spacing:normal;font-family:Google Sans,Google Sans Text,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%]::-webkit-scrollbar{width:6px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%]::-webkit-scrollbar-track{background:transparent}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%]::-webkit-scrollbar-thumb{background:#00000026;border-radius:10px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%]::-webkit-scrollbar-thumb:hover{background:#00000040}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .empty-state[_ngcontent-%COMP%]{flex:1 1 auto;min-height:100%;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-sizing:border-box;padding:30px;margin:auto 0}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .empty-state[_ngcontent-%COMP%] .empty-icon[_ngcontent-%COMP%]{margin-bottom:12px;opacity:.8}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .empty-state[_ngcontent-%COMP%] .empty-icon[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:40px;color:#94a3b8}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .empty-state[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{margin:0 0 6px;font-size:12px;font-weight:600;color:#1f1f1f}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .empty-state[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0;font-size:12px;color:#1f1f1f;max-width:320px;line-height:1.5}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list-container[_ngcontent-%COMP%]{display:flex;flex-direction:column}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list-container[_ngcontent-%COMP%] .planning-loader-container[_ngcontent-%COMP%]{display:flex;align-items:center;margin-top:10px;margin-bottom:10px;padding-left:2px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list-container[_ngcontent-%COMP%] .planning-loader-container[_ngcontent-%COMP%] .planning-loader[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:8px;color:#475569;font-size:13px;font-weight:500;-webkit-user-select:none;user-select:none}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list-container[_ngcontent-%COMP%] .planning-loader-container[_ngcontent-%COMP%] .planning-loader[_ngcontent-%COMP%] .spin-animation[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;animation:_ngcontent-%COMP%_spin-loader 1s linear infinite;color:#2563eb;flex-shrink:0}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list-container[_ngcontent-%COMP%] .planning-loader-container[_ngcontent-%COMP%] .planning-loader[_ngcontent-%COMP%] .loader-text[_ngcontent-%COMP%]{color:#475569;font-size:13px;font-weight:500;line-height:1.4}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-container[_ngcontent-%COMP%]{display:flex;flex-direction:column}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-header[_ngcontent-%COMP%]{font-size:12px;font-weight:400;line-height:1.5;min-height:20px;box-sizing:border-box;color:#71717a;margin-top:16px;margin-bottom:8px;-webkit-user-select:none;user-select:none;display:flex;align-items:center;gap:4px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-header.first-phase[_ngcontent-%COMP%]{margin-top:0}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-header[_ngcontent-%COMP%] .phase-worked-time[_ngcontent-%COMP%]{color:#71717a;font-weight:400}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-header[_ngcontent-%COMP%] .phase-token-usage[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:4px;color:#8e8e93;cursor:default}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-header[_ngcontent-%COMP%] .phase-token-usage[_ngcontent-%COMP%] .token-dot[_ngcontent-%COMP%]{color:#a1a1aa;font-weight:700}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-header[_ngcontent-%COMP%] .phase-token-usage[_ngcontent-%COMP%] .token-text[_ngcontent-%COMP%]{color:#71717a;font-variant-numeric:tabular-nums}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:8px;padding-left:12px;border-left:1px solid rgba(0,0,0,.04);margin-left:6px;position:relative;z-index:1}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:8px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%]{border-radius:8px;padding:0;overflow:visible;box-shadow:0 1px 3px #00000005;border:1px solid transparent;background:transparent;display:flex;flex-direction:column}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .details-content-wrapper[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .details-content-wrapper[_ngcontent-%COMP%]{display:grid;grid-template-rows:1fr;transition:grid-template-rows .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .details-content-wrapper[_ngcontent-%COMP%] .details-content[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .details-content-wrapper[_ngcontent-%COMP%] .details-content[_ngcontent-%COMP%]{min-height:0}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details.native-thinking-details[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details.native-thinking-details[_ngcontent-%COMP%]{border-color:transparent;background:transparent;box-shadow:none}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details.native-thinking-details[_ngcontent-%COMP%]:not(.collapsed), .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details.native-thinking-details[_ngcontent-%COMP%]:not(.collapsed){background:transparent}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details.native-thinking-details[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details.native-thinking-details[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%]{color:#71717a}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details.native-thinking-details[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%]:after, .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details.native-thinking-details[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%]:after{color:#d4d4d8}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details.native-thinking-details[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%]:hover, .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details.native-thinking-details[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%]:hover{color:#1f1f1f}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details.native-thinking-details.is-running[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details.native-thinking-details.is-running[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%]{background:linear-gradient(90deg,#71717a,#2563eb,#7c3aed,#0284c7,#71717a);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:_ngcontent-%COMP%_subtle-color-flow 2.8s linear infinite;font-weight:500}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details.native-thinking-details.is-running[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%] .stream-status-dot[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details.native-thinking-details.is-running[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%] .stream-status-dot[_ngcontent-%COMP%]{background:#3b82f6;box-shadow:0 0 #3b82f673;animation:_ngcontent-%COMP%_pulse-stream-dot 1.8s cubic-bezier(.4,0,.6,1) infinite}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details.native-thinking-details.is-resetting[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details.native-thinking-details.is-resetting[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%]{background:none!important;-webkit-background-clip:border-box!important;background-clip:border-box!important;-webkit-text-fill-color:#71717a!important;color:#71717a!important;animation:none!important;font-weight:400!important}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details.native-thinking-details.is-resetting[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%] .stream-status-dot[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details.native-thinking-details.is-resetting[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%] .stream-status-dot[_ngcontent-%COMP%]{background:#f59e0b;box-shadow:0 0 #f59e0b73;animation:_ngcontent-%COMP%_pulse-stream-amber 1.8s cubic-bezier(.4,0,.6,1) infinite}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details.native-thinking-details[_ngcontent-%COMP%] .stream-status-dot[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details.native-thinking-details[_ngcontent-%COMP%] .stream-status-dot[_ngcontent-%COMP%]{background:#d4d4d8}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details.native-thinking-details[_ngcontent-%COMP%] .stream-status-dot.streaming[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details.native-thinking-details[_ngcontent-%COMP%] .stream-status-dot.streaming[_ngcontent-%COMP%]{background:#3b82f6;box-shadow:0 0 #3b82f673;animation:_ngcontent-%COMP%_pulse-stream-dot 1.8s cubic-bezier(.4,0,.6,1) infinite}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details.native-thinking-details[_ngcontent-%COMP%] .stream-status-dot.resetting[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details.native-thinking-details[_ngcontent-%COMP%] .stream-status-dot.resetting[_ngcontent-%COMP%]{background:#f59e0b;box-shadow:0 0 #f59e0b73;animation:_ngcontent-%COMP%_pulse-stream-amber 1.8s cubic-bezier(.4,0,.6,1) infinite}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details.native-thinking-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details.native-thinking-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%]{color:#1f1f1f}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details.raw-thinking-details[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details.raw-thinking-details[_ngcontent-%COMP%]{border-color:#dbeafe;background:#f8fafc}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details.raw-thinking-details[_ngcontent-%COMP%]:not(.collapsed), .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details.raw-thinking-details[_ngcontent-%COMP%]:not(.collapsed){background:#f8fafc}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details.raw-thinking-details[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details.raw-thinking-details[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%]{color:#1e40af}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details.raw-thinking-details[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%]:after, .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details.raw-thinking-details[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%]:after{color:#93c5fd}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details.raw-thinking-details[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%]:hover, .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details.raw-thinking-details[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%]:hover{color:#1e3a8a}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details.raw-thinking-details[_ngcontent-%COMP%] .stream-status-dot[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details.raw-thinking-details[_ngcontent-%COMP%] .stream-status-dot[_ngcontent-%COMP%]{background:#93c5fd}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details.raw-thinking-details[_ngcontent-%COMP%] .stream-status-dot.streaming[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details.raw-thinking-details[_ngcontent-%COMP%] .stream-status-dot.streaming[_ngcontent-%COMP%]{background:#2563eb;animation:_ngcontent-%COMP%_pulse-stream-blue 1.5s infinite}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%]:not(.collapsed), .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%]:not(.collapsed){box-shadow:0 1px 3px #00000005}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%]:not(.collapsed) .details-summary[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%]:not(.collapsed) .details-summary[_ngcontent-%COMP%]{margin-bottom:8px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%]:not(.collapsed) .details-summary[_ngcontent-%COMP%]:after, .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%]:not(.collapsed) .details-summary[_ngcontent-%COMP%]:after{transform:rotate(90deg)}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%]{padding:0;margin-bottom:0;font-family:Google Sans,Google Sans Text,Inter,Arial,sans-serif;font-weight:400;font-size:12px;line-height:1.5;min-height:20px;box-sizing:border-box;letter-spacing:.5px;cursor:pointer;-webkit-user-select:none;user-select:none;display:flex;align-items:center;gap:8px;outline:none;list-style:none}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%]::-webkit-details-marker, .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%]::-webkit-details-marker{display:none}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%]:after, .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%]:after{content:"\\276f";display:inline-block;font-size:9px;margin-left:6px;transition:transform .2s cubic-bezier(.4,0,.2,1),color .2s ease}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%]:hover .stream-status-dot[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%]:hover .stream-status-dot[_ngcontent-%COMP%]{transform:scale(1.25);background:#71717a}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%]:hover:after, .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%]:hover:after{transform:translate(3px);color:#71717a}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-status-dot[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-status-dot[_ngcontent-%COMP%]{width:8px;height:8px;border-radius:50%;display:inline-block;transition:transform .2s cubic-bezier(.4,0,.2,1),background-color .2s ease}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-box[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-box[_ngcontent-%COMP%]{max-height:250px;overflow-y:auto;background:transparent;padding:4px 0;box-sizing:border-box}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-box[_ngcontent-%COMP%]::-webkit-scrollbar, .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-box[_ngcontent-%COMP%]::-webkit-scrollbar{width:6px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-box[_ngcontent-%COMP%]::-webkit-scrollbar-track, .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-box[_ngcontent-%COMP%]::-webkit-scrollbar-track{background:transparent}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-box[_ngcontent-%COMP%]::-webkit-scrollbar-thumb, .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-box[_ngcontent-%COMP%]::-webkit-scrollbar-thumb{background:#00000014;border-radius:999px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-box[_ngcontent-%COMP%]::-webkit-scrollbar-thumb:hover, .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-box[_ngcontent-%COMP%]::-webkit-scrollbar-thumb:hover{background:#00000029}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%]{font-family:inherit;font-size:12.5px;line-height:1.65;color:#1f1f1f;white-space:normal;word-break:break-word}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] strong[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] strong[_ngcontent-%COMP%]{font-weight:600;color:#111827}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] div[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] p[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] div[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{font-size:12.5px;line-height:1.65;color:#1f1f1f;margin:4px 0}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] h1[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] h2[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] h3[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] h4[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] h5[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] h6[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] h1[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] h2[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] h3[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] h4[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] h5[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] h6[_ngcontent-%COMP%]{font-size:12.5px;font-weight:600;color:#1f1f1f;margin-top:8px;margin-bottom:4px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] .inline-code[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] .inline-code[_ngcontent-%COMP%]{font-family:Fira Code,Roboto Mono,Consolas,monospace;font-size:11px;background:#f4f4f5;color:#b91c1c;padding:2px 6px;border-radius:4px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] ul[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] ol[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] ul[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] ol[_ngcontent-%COMP%]{margin:4px 0;padding-left:16px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] ol[_ngcontent-%COMP%] li[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] ol[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{font-size:12.5px;line-height:1.65;color:#1f1f1f;margin:4px 0;padding-left:2px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] .md-para-gap[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] .md-para-gap[_ngcontent-%COMP%]{height:6px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details.collapsed[_ngcontent-%COMP%] .details-content-wrapper[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details.collapsed[_ngcontent-%COMP%] .details-content-wrapper[_ngcontent-%COMP%]{grid-template-rows:0fr;display:none}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-details.collapsed[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-details.collapsed[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%]{margin-bottom:0}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%]{background:transparent;border:1px solid transparent;border-radius:8px;padding:0;margin-bottom:0;box-shadow:none}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .report-header[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .report-header[_ngcontent-%COMP%]{font-family:Google Sans,Google Sans Text,Inter,Arial,sans-serif;font-weight:400;font-size:12px;line-height:1.5;min-height:20px;box-sizing:border-box;letter-spacing:.5px;color:#71717a;margin-bottom:8px;-webkit-user-select:none;user-select:none;display:flex;align-items:center;gap:8px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .report-header[_ngcontent-%COMP%] .stream-status-dot[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .report-header[_ngcontent-%COMP%] .stream-status-dot[_ngcontent-%COMP%]{width:8px;height:8px;border-radius:50%;display:inline-block;background:#d4d4d8}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .report-header[_ngcontent-%COMP%] .stream-status-dot.streaming[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .report-header[_ngcontent-%COMP%] .stream-status-dot.streaming[_ngcontent-%COMP%]{background:#71717a;animation:_ngcontent-%COMP%_pulse-stream-grey 1.5s infinite}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .report-content[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .report-content[_ngcontent-%COMP%]{font-size:12.5px;line-height:1.65;color:#1f1f1f}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-box[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-box[_ngcontent-%COMP%]{max-height:250px;overflow-y:auto;background:transparent;padding:4px 0;box-sizing:border-box}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-box[_ngcontent-%COMP%]::-webkit-scrollbar, .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-box[_ngcontent-%COMP%]::-webkit-scrollbar{width:6px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-box[_ngcontent-%COMP%]::-webkit-scrollbar-track, .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-box[_ngcontent-%COMP%]::-webkit-scrollbar-track{background:transparent}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-box[_ngcontent-%COMP%]::-webkit-scrollbar-thumb, .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-box[_ngcontent-%COMP%]::-webkit-scrollbar-thumb{background:#00000014;border-radius:999px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-box[_ngcontent-%COMP%]::-webkit-scrollbar-thumb:hover, .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-box[_ngcontent-%COMP%]::-webkit-scrollbar-thumb:hover{background:#00000029}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%]{font-family:inherit;font-size:12.5px;line-height:1.65;color:#1f1f1f;white-space:normal;word-break:break-word}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] strong[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] strong[_ngcontent-%COMP%]{font-weight:600;color:#111827}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] div[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] p[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] div[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{font-size:12.5px;line-height:1.65;color:#1f1f1f;margin:4px 0}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] h1[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] h1[_ngcontent-%COMP%]{font-size:14px;font-weight:700;color:#0f172a;margin-top:12px;margin-bottom:6px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] h2[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{font-size:13.5px;font-weight:700;color:#0f172a;margin-top:10px;margin-bottom:5px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] h3[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{font-size:13px;font-weight:600;color:#1e293b;margin-top:8px;margin-bottom:4px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] h4[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] h5[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] h6[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] h4[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] h5[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] h6[_ngcontent-%COMP%]{font-size:12.5px;font-weight:600;color:#334155;margin-top:6px;margin-bottom:3px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] em[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] em[_ngcontent-%COMP%]{font-style:italic;color:inherit}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] blockquote[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] blockquote[_ngcontent-%COMP%]{margin:6px 0;padding:4px 10px;border-left:3px solid #cbd5e1;color:#475569;background:#f1f5f980;border-radius:0 4px 4px 0}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] .code-block[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] .code-block[_ngcontent-%COMP%]{margin:6px 0;padding:8px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;overflow-x:auto;font-family:Fira Code,Roboto Mono,Consolas,monospace;font-size:11.5px;line-height:1.5;color:#1e293b}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] .md-hr[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] .md-hr[_ngcontent-%COMP%]{border:none;border-top:1px solid #e2e8f0;margin:10px 0}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] .inline-code[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] .inline-code[_ngcontent-%COMP%]{font-family:Fira Code,Roboto Mono,Consolas,monospace;font-size:11px;background:#f4f4f5;color:#b91c1c;padding:2px 6px;border-radius:4px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] ul[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] ol[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] ul[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] ol[_ngcontent-%COMP%]{margin:4px 0;padding-left:16px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] ol[_ngcontent-%COMP%] li[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] ol[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{font-size:12.5px;line-height:1.65;color:#1f1f1f;margin:4px 0;padding-left:2px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li.md-verify-item[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] ol[_ngcontent-%COMP%] li.md-verify-item[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li.md-verify-item[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] ol[_ngcontent-%COMP%] li.md-verify-item[_ngcontent-%COMP%]{color:#334155}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li.md-finding-item[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] ol[_ngcontent-%COMP%] li.md-finding-item[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li.md-finding-item[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] ol[_ngcontent-%COMP%] li.md-finding-item[_ngcontent-%COMP%]{color:#92400e}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] .md-para-gap[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .thinking-stream-flat-card[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%] .md-para-gap[_ngcontent-%COMP%]{height:6px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .checker-stream-flat-card[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .checker-stream-flat-card[_ngcontent-%COMP%]{background:#f5f3ff;border:1px solid #e9d5ff;border-radius:8px;padding:12px 16px;margin-bottom:8px;box-shadow:0 1px 3px #00000003}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .checker-stream-flat-card[_ngcontent-%COMP%] .report-header[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .checker-stream-flat-card[_ngcontent-%COMP%] .report-header[_ngcontent-%COMP%]{font-family:Google Sans,Google Sans Text,Inter,Arial,Liberation Sans,sans-serif;font-weight:700;font-size:12px;line-height:1.5;letter-spacing:.5px;color:#6b21a8;margin-bottom:8px;-webkit-user-select:none;user-select:none;display:flex;align-items:center;gap:8px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .checker-stream-flat-card[_ngcontent-%COMP%] .report-header[_ngcontent-%COMP%] .stream-status-dot[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .checker-stream-flat-card[_ngcontent-%COMP%] .report-header[_ngcontent-%COMP%] .stream-status-dot[_ngcontent-%COMP%]{width:8px;height:8px;border-radius:50%;display:inline-block;background:#c084fc}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .checker-stream-flat-card[_ngcontent-%COMP%] .report-header[_ngcontent-%COMP%] .stream-status-dot.streaming[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .checker-stream-flat-card[_ngcontent-%COMP%] .report-header[_ngcontent-%COMP%] .stream-status-dot.streaming[_ngcontent-%COMP%]{background:#a855f7;animation:_ngcontent-%COMP%_pulse-stream-purple 1.5s infinite}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .checker-stream-flat-card[_ngcontent-%COMP%] .report-content[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .checker-stream-flat-card[_ngcontent-%COMP%] .report-content[_ngcontent-%COMP%]{font-size:12px;line-height:1.6;color:#27272a}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .checker-stream-flat-card[_ngcontent-%COMP%] .report-content[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .checker-stream-flat-card[_ngcontent-%COMP%] .report-content[_ngcontent-%COMP%] .stream-text[_ngcontent-%COMP%]{font-family:Fira Code,Roboto Mono,Consolas,monospace;font-size:11.5px;white-space:pre-wrap;word-break:break-all;color:#5b21b6;background:#ffffff80;padding:8px;border-radius:6px;border:1px dashed rgba(168,85,247,.2)}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .checker-stream-flat-card[_ngcontent-%COMP%] .checker-result-badge[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .checker-stream-flat-card[_ngcontent-%COMP%] .checker-result-badge[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:11.5px;padding:4px 10px;border-radius:6px;margin-bottom:10px;border:1px solid transparent}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .checker-stream-flat-card[_ngcontent-%COMP%] .checker-result-badge.success[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .checker-stream-flat-card[_ngcontent-%COMP%] .checker-result-badge.success[_ngcontent-%COMP%]{background:#ecfdf5;color:#065f46;border-color:#a7f3d0}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .checker-stream-flat-card[_ngcontent-%COMP%] .checker-result-badge.failed[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .checker-stream-flat-card[_ngcontent-%COMP%] .checker-result-badge.failed[_ngcontent-%COMP%]{background:#fef2f2;color:#991b1b;border-color:#fca5a5}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .llm-stream-body[_ngcontent-%COMP%] .checker-stream-flat-card[_ngcontent-%COMP%] .checker-reason[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .checker-stream-flat-card[_ngcontent-%COMP%] .checker-reason[_ngcontent-%COMP%]{font-size:12px;line-height:1.6;color:#3f3f46;font-weight:500}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:8px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-raw-thinking-message[_ngcontent-%COMP%]{background:transparent;border:1px solid transparent;border-radius:8px;padding:0;margin-bottom:0;box-shadow:none}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-raw-thinking-message.is-running[_ngcontent-%COMP%] .report-header[_ngcontent-%COMP%]{background:linear-gradient(90deg,#71717a,#2563eb,#7c3aed,#0284c7,#71717a);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:_ngcontent-%COMP%_subtle-color-flow 2.8s linear infinite;font-weight:500}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-raw-thinking-message.is-running[_ngcontent-%COMP%] .report-header[_ngcontent-%COMP%] .stream-status-dot[_ngcontent-%COMP%]{background:#3b82f6;box-shadow:0 0 #3b82f673;animation:_ngcontent-%COMP%_pulse-stream-dot 1.8s cubic-bezier(.4,0,.6,1) infinite}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-raw-thinking-message.is-resetting[_ngcontent-%COMP%] .report-header[_ngcontent-%COMP%]{background:none!important;-webkit-background-clip:border-box!important;background-clip:border-box!important;-webkit-text-fill-color:#71717a!important;color:#71717a!important;animation:none!important;font-weight:400!important;margin-bottom:0}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-raw-thinking-message.is-resetting[_ngcontent-%COMP%] .report-header[_ngcontent-%COMP%] .stream-status-dot[_ngcontent-%COMP%]{background:#f59e0b;box-shadow:0 0 #f59e0b73;animation:_ngcontent-%COMP%_pulse-stream-amber 1.8s cubic-bezier(.4,0,.6,1) infinite}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-raw-thinking-message[_ngcontent-%COMP%] .report-header[_ngcontent-%COMP%]{font-family:Google Sans,Google Sans Text,Inter,Arial,sans-serif;font-weight:400;font-size:12px;line-height:1.5;min-height:20px;box-sizing:border-box;letter-spacing:.5px;color:#71717a;margin-bottom:8px;-webkit-user-select:none;user-select:none;display:flex;align-items:center;gap:8px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-raw-thinking-message[_ngcontent-%COMP%] .report-header[_ngcontent-%COMP%] .header-label[_ngcontent-%COMP%]{line-height:1.5;word-break:break-word}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-raw-thinking-message[_ngcontent-%COMP%] .report-header[_ngcontent-%COMP%] .stream-status-dot[_ngcontent-%COMP%]{width:8px;height:8px;border-radius:50%;display:inline-block;background:#d4d4d8}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-raw-thinking-message[_ngcontent-%COMP%] .report-header[_ngcontent-%COMP%] .stream-status-dot.streaming[_ngcontent-%COMP%]{background:#3b82f6;box-shadow:0 0 #3b82f673;animation:_ngcontent-%COMP%_pulse-stream-dot 1.8s cubic-bezier(.4,0,.6,1) infinite}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-raw-thinking-message[_ngcontent-%COMP%] .report-header[_ngcontent-%COMP%] .stream-status-dot.resetting[_ngcontent-%COMP%]{background:#f59e0b;box-shadow:0 0 #f59e0b73;animation:_ngcontent-%COMP%_pulse-stream-amber 1.8s cubic-bezier(.4,0,.6,1) infinite}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-raw-thinking-message[_ngcontent-%COMP%] .report-content[_ngcontent-%COMP%]{font-size:12.5px;line-height:1.65;color:#1f1f1f}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-raw-thinking-message[_ngcontent-%COMP%] .report-content[_ngcontent-%COMP%] strong[_ngcontent-%COMP%]{font-weight:600;color:#111827}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-raw-thinking-message[_ngcontent-%COMP%] .report-content[_ngcontent-%COMP%] div[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-raw-thinking-message[_ngcontent-%COMP%] .report-content[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{font-size:12.5px;line-height:1.65;color:#1f1f1f;margin:4px 0}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-raw-thinking-message[_ngcontent-%COMP%] .report-content[_ngcontent-%COMP%] h1[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-raw-thinking-message[_ngcontent-%COMP%] .report-content[_ngcontent-%COMP%] h2[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-raw-thinking-message[_ngcontent-%COMP%] .report-content[_ngcontent-%COMP%] h3[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-raw-thinking-message[_ngcontent-%COMP%] .report-content[_ngcontent-%COMP%] h4[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-raw-thinking-message[_ngcontent-%COMP%] .report-content[_ngcontent-%COMP%] h5[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-raw-thinking-message[_ngcontent-%COMP%] .report-content[_ngcontent-%COMP%] h6[_ngcontent-%COMP%]{font-size:12.5px;font-weight:600;color:#1f1f1f;margin-top:8px;margin-bottom:4px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-raw-thinking-message[_ngcontent-%COMP%] .report-content[_ngcontent-%COMP%] .inline-code[_ngcontent-%COMP%]{font-family:Fira Code,Roboto Mono,Consolas,monospace;font-size:11px;background:#f4f4f5;color:#b91c1c;padding:2px 6px;border-radius:4px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-raw-thinking-message[_ngcontent-%COMP%] .report-content[_ngcontent-%COMP%] ul[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-raw-thinking-message[_ngcontent-%COMP%] .report-content[_ngcontent-%COMP%] ol[_ngcontent-%COMP%]{margin:4px 0;padding-left:16px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-raw-thinking-message[_ngcontent-%COMP%] .report-content[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-raw-thinking-message[_ngcontent-%COMP%] .report-content[_ngcontent-%COMP%] ol[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{font-size:12.5px;line-height:1.65;color:#1f1f1f;margin:4px 0;padding-left:2px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-raw-thinking-message[_ngcontent-%COMP%] .report-content[_ngcontent-%COMP%] .md-para-gap[_ngcontent-%COMP%]{height:6px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-action-summary-card[_ngcontent-%COMP%]{background:#f4fbf7;border:1px solid #d1fae5;border-radius:8px;padding:12px 16px;margin-bottom:8px;box-shadow:0 1px 3px #00000003}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-action-summary-card[_ngcontent-%COMP%] .report-header[_ngcontent-%COMP%]{font-family:Google Sans,Google Sans Text,Inter,Arial,Liberation Sans,sans-serif;font-weight:700;font-size:12px;line-height:1.5;letter-spacing:.5px;color:#065f46;margin-bottom:8px;-webkit-user-select:none;user-select:none}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-action-summary-card[_ngcontent-%COMP%] .report-content[_ngcontent-%COMP%]{font-size:12px;line-height:1.6;color:#27272a}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-action-summary-card[_ngcontent-%COMP%] .report-content[_ngcontent-%COMP%] strong[_ngcontent-%COMP%]{font-weight:600;color:#09090b}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-action-summary-card[_ngcontent-%COMP%] .report-content[_ngcontent-%COMP%] .inline-code[_ngcontent-%COMP%]{font-family:Fira Code,Roboto Mono,Consolas,monospace;font-size:11px;background:#e6f4ea;color:#137333;padding:2px 6px;border-radius:4px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-action-summary-card[_ngcontent-%COMP%] .report-content[_ngcontent-%COMP%] ul[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-action-summary-card[_ngcontent-%COMP%] .report-content[_ngcontent-%COMP%] ol[_ngcontent-%COMP%]{margin:2px 0;padding-left:20px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-action-summary-card[_ngcontent-%COMP%] .report-content[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-action-summary-card[_ngcontent-%COMP%] .report-content[_ngcontent-%COMP%] ol[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{margin-bottom:2px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-action-summary-card[_ngcontent-%COMP%] .report-content[_ngcontent-%COMP%] .md-para-gap[_ngcontent-%COMP%]{height:4px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:8px;margin-top:0;margin-bottom:0}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .llm-retry-notes[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:8px;padding:0}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .llm-retry-notes[_ngcontent-%COMP%] .llm-retry-note[_ngcontent-%COMP%]{min-height:25px;box-sizing:border-box;display:flex;align-items:center;gap:8px;color:#71717a;font-family:Google Sans,Google Sans Text,Inter,Arial,sans-serif;font-size:12px;line-height:1.5;letter-spacing:.2px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .llm-retry-notes[_ngcontent-%COMP%] .llm-retry-note[_ngcontent-%COMP%] .stream-status-dot[_ngcontent-%COMP%]{width:8px;height:8px;border-radius:50%;background:#d4d4d8;flex:0 0 auto}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .llm-retry-notes[_ngcontent-%COMP%] .llm-retry-note[_ngcontent-%COMP%] .stream-status-dot.streaming[_ngcontent-%COMP%]{background:#3b82f6;box-shadow:0 0 #3b82f673;animation:_ngcontent-%COMP%_pulse-stream-dot 1.8s cubic-bezier(.4,0,.6,1) infinite}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .llm-retry-notes[_ngcontent-%COMP%] .llm-retry-note[_ngcontent-%COMP%] .stream-status-dot.resetting[_ngcontent-%COMP%]{background:#f59e0b;box-shadow:0 0 #f59e0b73;animation:_ngcontent-%COMP%_pulse-stream-amber 1.8s cubic-bezier(.4,0,.6,1) infinite}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .llm-retry-notes[_ngcontent-%COMP%] .llm-retry-note[_ngcontent-%COMP%] .llm-retry-note-text[_ngcontent-%COMP%]{color:#71717a;display:flex;flex-direction:column;min-width:0}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .llm-retry-notes[_ngcontent-%COMP%] .llm-retry-note[_ngcontent-%COMP%] .llm-retry-note-text[_ngcontent-%COMP%] .llm-retry-status-line[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .llm-retry-notes[_ngcontent-%COMP%] .llm-retry-note[_ngcontent-%COMP%] .llm-retry-note-text[_ngcontent-%COMP%] .llm-retry-guidance[_ngcontent-%COMP%]{display:block}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .llm-retry-notes[_ngcontent-%COMP%] .llm-retry-note[_ngcontent-%COMP%] .llm-retry-note-text[_ngcontent-%COMP%] .llm-retry-guidance[_ngcontent-%COMP%]{color:#a1a1aa}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-generic-tool[_ngcontent-%COMP%]{border:1px solid transparent}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-generic-tool.is-video-attention[_ngcontent-%COMP%]:not(.is-running) .tool-call-label[_ngcontent-%COMP%] .stream-status-dot[_ngcontent-%COMP%]{background:#f59e0b;box-shadow:none;animation:none}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-generic-tool.is-llm-error[_ngcontent-%COMP%] .tool-call-label[_ngcontent-%COMP%]{display:flex;align-items:flex-start;color:#71717a;line-height:1.5;-webkit-user-select:text;user-select:text}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-generic-tool.is-llm-error[_ngcontent-%COMP%] .tool-call-label[_ngcontent-%COMP%] .error-icon[_ngcontent-%COMP%]{font-size:14px;color:#94a3b8;margin-top:1px;margin-left:-3px;margin-right:-3px;flex-shrink:0}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-generic-tool.is-llm-error[_ngcontent-%COMP%] .tool-call-label[_ngcontent-%COMP%] .tool-call-text[_ngcontent-%COMP%]{display:block;color:inherit}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-generic-tool.is-llm-error[_ngcontent-%COMP%] .tool-call-label[_ngcontent-%COMP%] .error-title-text[_ngcontent-%COMP%]{font-weight:500;color:#71717a;margin-right:4px;flex-shrink:0}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-generic-tool.is-llm-error[_ngcontent-%COMP%] .tool-call-label[_ngcontent-%COMP%] .error-message-text[_ngcontent-%COMP%]{color:#71717a;word-break:break-word}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-generic-tool.is-running[_ngcontent-%COMP%] .tool-call-label[_ngcontent-%COMP%] .stream-status-dot[_ngcontent-%COMP%]{background:#3b82f6;box-shadow:0 0 #3b82f673;animation:_ngcontent-%COMP%_pulse-stream-dot 1.8s cubic-bezier(.4,0,.6,1) infinite}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-generic-tool.is-running[_ngcontent-%COMP%] .tool-call-label[_ngcontent-%COMP%] .tool-call-text[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]:first-child{background:linear-gradient(90deg,#71717a,#2563eb,#7c3aed,#0284c7,#71717a);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:_ngcontent-%COMP%_subtle-color-flow 2.8s linear infinite;font-weight:500}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-generic-tool[_ngcontent-%COMP%] .tool-call-label[_ngcontent-%COMP%]{font-size:12px;font-weight:400;color:#71717a;font-family:Google Sans,Google Sans Text,Inter,Arial,sans-serif;letter-spacing:.5px;line-height:1.5;min-height:22px;box-sizing:border-box;display:inline-flex;align-items:center;gap:8px;-webkit-user-select:none;user-select:none;padding:0}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-generic-tool[_ngcontent-%COMP%] .tool-call-label[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:not(.tool-key-pill){color:inherit}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-generic-tool[_ngcontent-%COMP%] .tool-call-label[_ngcontent-%COMP%] .stream-status-dot[_ngcontent-%COMP%]{width:8px;height:8px;border-radius:50%;background:#d4d4d8;display:inline-block;flex-shrink:0}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-generic-tool[_ngcontent-%COMP%] .tool-call-label[_ngcontent-%COMP%] .stream-status-dot.streaming[_ngcontent-%COMP%]{background:#3b82f6;box-shadow:0 0 #3b82f673;animation:_ngcontent-%COMP%_pulse-stream-dot 1.8s cubic-bezier(.4,0,.6,1) infinite}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-generic-tool[_ngcontent-%COMP%] .tool-call-label[_ngcontent-%COMP%] .is-failed-dot[_ngcontent-%COMP%]{font-size:13px;color:#94a3b8;display:inline-flex;align-items:center;justify-content:center;width:8px;height:8px;flex-shrink:0;line-height:1}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-generic-tool[_ngcontent-%COMP%] .tool-call-label[_ngcontent-%COMP%] .tool-call-text[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:2px;color:inherit}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-generic-tool[_ngcontent-%COMP%] .tool-call-label[_ngcontent-%COMP%] .tool-key-pill[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border:none;background:transparent;font-size:12px;font-weight:500;color:#1a73e8;cursor:pointer;border-radius:4px;transition:all .2s ease;vertical-align:middle;text-decoration:none!important}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-generic-tool[_ngcontent-%COMP%] .tool-call-label[_ngcontent-%COMP%] .tool-key-pill[_ngcontent-%COMP%] .pill-icon[_ngcontent-%COMP%]{font-size:14px;color:inherit}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-generic-tool[_ngcontent-%COMP%] .tool-call-label[_ngcontent-%COMP%] .tool-key-pill[_ngcontent-%COMP%]:hover{color:#1557b0;background:#1a73e814}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-generic-tool[_ngcontent-%COMP%] .tool-call-label[_ngcontent-%COMP%] .video-status-detail[_ngcontent-%COMP%]{color:inherit;margin-left:2px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-llm-error-card[_ngcontent-%COMP%]{background:#fef2f2;border:1px solid #fecaca;border-radius:10px;padding:10px 12px;margin-top:0;margin-bottom:0;margin-left:-19px;box-shadow:0 4px 12px #ef444408;width:fit-content;min-width:260px;max-width:480px;display:flex;flex-direction:column;gap:8px;transition:all .2s ease;position:relative}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-llm-error-card[_ngcontent-%COMP%]:hover{border-color:#fca5a5;box-shadow:0 4px 16px #ef444414}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-llm-error-card[_ngcontent-%COMP%] .error-card-header[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;border-bottom:1px solid #fee2e2;padding-bottom:6px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-llm-error-card[_ngcontent-%COMP%] .error-card-header[_ngcontent-%COMP%] .error-icon[_ngcontent-%COMP%]{font-size:18px;color:#ef4444}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-llm-error-card[_ngcontent-%COMP%] .error-card-header[_ngcontent-%COMP%] .error-title[_ngcontent-%COMP%]{font-family:Google Sans,Google Sans Text,Inter,Arial,sans-serif;font-weight:700;font-size:12px;color:#991b1b}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-llm-error-card[_ngcontent-%COMP%] .error-card-body[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:6px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-llm-error-card[_ngcontent-%COMP%] .error-card-body[_ngcontent-%COMP%] .error-detail-row[_ngcontent-%COMP%]{display:flex;font-size:12px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-llm-error-card[_ngcontent-%COMP%] .error-card-body[_ngcontent-%COMP%] .error-detail-row[_ngcontent-%COMP%] .detail-value[_ngcontent-%COMP%]{color:#b91c1c;font-weight:500;word-break:break-word;line-height:1.4}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .llm-failure-stack[_ngcontent-%COMP%]{width:380px;max-width:100%;margin-left:-19px;display:flex;flex-direction:column;align-items:flex-start;gap:10px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .llm-failure-stack[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%]{width:100%;margin-left:0;box-sizing:border-box}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .llm-failure-stack[_ngcontent-%COMP%] .llm-resume-row[_ngcontent-%COMP%]{min-height:36px;display:flex;align-items:center;gap:10px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .llm-failure-stack[_ngcontent-%COMP%] .btn-continue-task[_ngcontent-%COMP%]{min-height:36px;padding:7px 12px 7px 10px;display:inline-flex;align-items:center;justify-content:center;gap:7px;box-sizing:border-box;border:1px solid #1d4ed8;border-radius:9px;background:#2563eb;color:#fff;font-family:inherit;font-size:12px;font-weight:700;line-height:1;cursor:pointer;box-shadow:0 2px 7px #2563eb38;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .llm-failure-stack[_ngcontent-%COMP%] .btn-continue-task[_ngcontent-%COMP%] .continue-icon[_ngcontent-%COMP%]{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;margin:-2px 0 -2px -2px;border-radius:50%;background:#ffffff29;font-size:16px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .llm-failure-stack[_ngcontent-%COMP%] .btn-continue-task[_ngcontent-%COMP%] .continue-arrow[_ngcontent-%COMP%]{font-size:15px;opacity:.72;transition:transform .18s ease,opacity .18s ease}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .llm-failure-stack[_ngcontent-%COMP%] .btn-continue-task[_ngcontent-%COMP%]:hover{background:#1d4ed8;border-color:#1e40af;box-shadow:0 4px 11px #2563eb47;transform:translateY(-1px)}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .llm-failure-stack[_ngcontent-%COMP%] .btn-continue-task[_ngcontent-%COMP%]:hover .continue-arrow[_ngcontent-%COMP%]{opacity:1;transform:translate(2px)}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .llm-failure-stack[_ngcontent-%COMP%] .btn-continue-task[_ngcontent-%COMP%]:active{box-shadow:0 1px 4px #2563eb33;transform:translateY(0) scale(.98)}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .llm-failure-stack[_ngcontent-%COMP%] .btn-continue-task[_ngcontent-%COMP%]:focus-visible{outline:3px solid rgba(59,130,246,.25);outline-offset:2px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .llm-failure-stack[_ngcontent-%COMP%] .llm-resume-hint[_ngcontent-%COMP%]{color:#94a3b8;font-size:11px;line-height:1.35;white-space:nowrap}@media(max-width:560px){.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .llm-failure-stack[_ngcontent-%COMP%] .llm-resume-row[_ngcontent-%COMP%]{width:100%}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .llm-failure-stack[_ngcontent-%COMP%] .btn-continue-task[_ngcontent-%COMP%]{flex:1}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .llm-failure-stack[_ngcontent-%COMP%] .llm-resume-hint[_ngcontent-%COMP%]{display:none}}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;margin-top:0;margin-bottom:0;margin-left:-19px;box-shadow:0 4px 12px #00000005;width:380px;max-width:100%;display:flex;flex-direction:column;gap:8px;transition:all .25s cubic-bezier(.16,1,.3,1);position:relative;cursor:pointer;-webkit-user-select:none;user-select:none}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card.is-running[_ngcontent-%COMP%]{border-color:#3b82f659;box-shadow:0 2px 10px #3b82f614;animation:_ngcontent-%COMP%_subtle-card-glow 2.5s ease-in-out infinite alternate}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card.is-running[_ngcontent-%COMP%] .action-icon[_ngcontent-%COMP%]{color:#3b82f6}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card.is-running[_ngcontent-%COMP%] .action-title[_ngcontent-%COMP%]{background:linear-gradient(90deg,#0f172a,#2563eb 30%,#7c3aed,#0284c7 70%,#0f172a);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:_ngcontent-%COMP%_subtle-color-flow 2.8s linear infinite}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%]:hover{border-color:#cbd5e1;box-shadow:0 4px 16px #0000000a;transform:translateY(-1px)}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%]:hover .action-expand-icon[_ngcontent-%COMP%]{color:#1e293b;background:#e2e8f0}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card.is-expanded[_ngcontent-%COMP%]{border-color:#94a3b8;background:#fff;box-shadow:0 8px 24px #0000000f}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card.is-expanded[_ngcontent-%COMP%] .action-expand-icon[_ngcontent-%COMP%]{color:#0f172a;background:#e2e8f0}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card.is-failed[_ngcontent-%COMP%]{background:#f8fafc;border-color:#fca5a5}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card.is-failed.has-details[_ngcontent-%COMP%]{cursor:pointer}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card.is-failed[_ngcontent-%COMP%]:hover{border-color:#f87171}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card.is-failed.is-expanded[_ngcontent-%COMP%]{background:#fff;border-color:#f87171}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card.task-report-card[_ngcontent-%COMP%]{background:#f0fdf4;border:1px solid #bbf7d0}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card.task-report-card.is-completed[_ngcontent-%COMP%]{background:#f0fdf4;border-color:#86efac}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card.task-report-card.is-completed[_ngcontent-%COMP%] .report-icon[_ngcontent-%COMP%]{color:#16a34a;font-variation-settings:"FILL" 1}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card.task-report-card.is-completed[_ngcontent-%COMP%] .action-title[_ngcontent-%COMP%]{color:#14532d;font-weight:700}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card.task-report-card.is-completed[_ngcontent-%COMP%] .action-status-badge.is-completed[_ngcontent-%COMP%]{background:#dcfce7;color:#15803d;border:1px solid #bbf7d0}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card.task-report-card.is-failed[_ngcontent-%COMP%]{background:#fef2f2;border-color:#fecaca}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card.task-report-card.is-failed[_ngcontent-%COMP%] .report-icon[_ngcontent-%COMP%]{color:#dc2626;font-variation-settings:"FILL" 1}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card.task-report-card.is-failed[_ngcontent-%COMP%] .action-title[_ngcontent-%COMP%]{color:#7f1d1d;font-weight:700}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card.task-report-card.is-failed[_ngcontent-%COMP%] .action-status-badge.is-failed[_ngcontent-%COMP%]{background:#fee2e2;color:#b91c1c;border:1px solid #fca5a5}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card.task-report-card[_ngcontent-%COMP%] .report-markdown-body[_ngcontent-%COMP%]{font-size:12px;line-height:1.5;color:#1f2937;font-weight:400;-webkit-user-select:text;user-select:text;word-break:break-word}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card.task-report-card[_ngcontent-%COMP%] .report-markdown-body[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:3px 0}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card.task-report-card[_ngcontent-%COMP%] .report-markdown-body[_ngcontent-%COMP%] strong[_ngcontent-%COMP%]{font-weight:600;color:#0f172a}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card.task-report-card[_ngcontent-%COMP%] .report-markdown-body[_ngcontent-%COMP%] ul[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card.task-report-card[_ngcontent-%COMP%] .report-markdown-body[_ngcontent-%COMP%] ol[_ngcontent-%COMP%]{margin:3px 0;padding-left:18px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card.task-report-card[_ngcontent-%COMP%] .report-markdown-body[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{font-family:Fira Code,monospace;background:#e2e8f0;color:#1f2937;padding:1px 4px;border-radius:4px;font-size:11px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card.has-no-details[_ngcontent-%COMP%]{padding:8px 12px;gap:0}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card.has-no-details[_ngcontent-%COMP%] .action-card-header[_ngcontent-%COMP%]{border-bottom:none;padding-bottom:0}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-header[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;border-bottom:1px solid #f1f5f9;padding-bottom:6px;width:100%}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-header[_ngcontent-%COMP%] .action-icon[_ngcontent-%COMP%]{font-size:18px;color:#64748b}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-header[_ngcontent-%COMP%] .action-icon.is-failed[_ngcontent-%COMP%]{color:#ef4444}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-header[_ngcontent-%COMP%] .action-title[_ngcontent-%COMP%]{font-family:Google Sans,Google Sans Text,Inter,Arial,Liberation Sans,sans-serif;font-weight:700;font-size:12px;color:#0f172a;flex-grow:1}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-header[_ngcontent-%COMP%] .action-agent-badge[_ngcontent-%COMP%]{display:inline-flex;align-items:center;font-size:10px;font-weight:600;padding:1px 6px;border-radius:4px;background:#f0fdf4;color:#166534;border:1px solid #bbf7d0;letter-spacing:.2px;margin-right:6px;white-space:nowrap}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-header[_ngcontent-%COMP%] .action-agent-badge.is-outputter[_ngcontent-%COMP%]{background:linear-gradient(135deg,#f5f3fff2,#eef2fff2);color:#6d28d9;border-color:#c4b5fd}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-header[_ngcontent-%COMP%] .action-status-badge[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:3px;font-size:11px;font-weight:600;padding:1px 6px;border-radius:4px;margin-left:auto;white-space:nowrap}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-header[_ngcontent-%COMP%] .action-status-badge[_ngcontent-%COMP%] .status-icon[_ngcontent-%COMP%]{font-size:13px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-header[_ngcontent-%COMP%] .action-status-badge.is-failed[_ngcontent-%COMP%]{background:#fef2f2;color:#dc2626;border:1px solid #fee2e2}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-header[_ngcontent-%COMP%] .action-status-badge.is-failed[_ngcontent-%COMP%] .status-icon[_ngcontent-%COMP%]{color:#ef4444}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-header[_ngcontent-%COMP%] .action-status-badge.is-paused[_ngcontent-%COMP%]{background:#fff7ed;color:#c2410c;border:1px solid #fed7aa}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-header[_ngcontent-%COMP%] .action-status-badge.is-paused[_ngcontent-%COMP%] .status-icon[_ngcontent-%COMP%]{color:#f97316}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-header[_ngcontent-%COMP%] .action-expand-icon[_ngcontent-%COMP%]{font-size:18px;color:#94a3b8;margin-left:4px;padding:2px;border-radius:50%;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-body[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:6px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-body[_ngcontent-%COMP%] .action-detail-row[_ngcontent-%COMP%]{display:flex;align-items:baseline;font-size:12px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-body[_ngcontent-%COMP%] .action-detail-row[_ngcontent-%COMP%] .detail-label[_ngcontent-%COMP%]{color:#64748b;font-weight:500;width:85px;flex-shrink:0}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-body[_ngcontent-%COMP%] .action-detail-row[_ngcontent-%COMP%] .detail-value[_ngcontent-%COMP%]{color:#334155;font-weight:600;word-break:break-word}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-body[_ngcontent-%COMP%] .action-detail-row[_ngcontent-%COMP%] .detail-value.coordinate-badge[_ngcontent-%COMP%]{background:#e2e8f0;color:#475569;padding:2px 6px;border-radius:4px;font-family:Fira Code,monospace;font-size:11px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-body[_ngcontent-%COMP%] .action-detail-row[_ngcontent-%COMP%] .detail-value.command-value[_ngcontent-%COMP%]{font-family:Fira Code,Consolas,Monaco,monospace;background:#f1f5f9;border:1px solid #e2e8f0;padding:2px 6px;border-radius:4px;font-size:11px;font-weight:500;color:#0f172a;white-space:pre-wrap;word-break:break-all}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-body[_ngcontent-%COMP%] .action-detail-row[_ngcontent-%COMP%] .detail-value.command-value[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{font-family:inherit;font-size:inherit;color:inherit;background:none;padding:0;border:none}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-body[_ngcontent-%COMP%] .failure-retry-details[_ngcontent-%COMP%]{margin-top:4px;padding-top:9px;border-top:1px solid #fecaca;display:flex;flex-direction:column;gap:7px;animation:_ngcontent-%COMP%_fadeInDetails .2s ease-out}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-body[_ngcontent-%COMP%] .failure-retry-details[_ngcontent-%COMP%] .failure-retry-title[_ngcontent-%COMP%]{color:#991b1b;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-body[_ngcontent-%COMP%] .failure-retry-details[_ngcontent-%COMP%] .failure-retry-row[_ngcontent-%COMP%]{display:flex;justify-content:space-between;gap:12px;color:#7f1d1d;font-size:10.5px;line-height:1.4}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-body[_ngcontent-%COMP%] .failure-retry-details[_ngcontent-%COMP%] .failure-retry-row[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:last-child{color:#64748b;text-align:right}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-expanded-details[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:10px;padding-top:4px;animation:_ngcontent-%COMP%_fadeInDetails .2s ease-out}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-expanded-details[_ngcontent-%COMP%] .expanded-grid[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;background:#f8fafc;padding:10px;border-radius:8px;border:1px solid #f1f5f9}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-expanded-details[_ngcontent-%COMP%] .expanded-grid[_ngcontent-%COMP%] .grid-item[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:2px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-expanded-details[_ngcontent-%COMP%] .expanded-grid[_ngcontent-%COMP%] .grid-item.full-width[_ngcontent-%COMP%]{grid-column:1/-1}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-expanded-details[_ngcontent-%COMP%] .expanded-grid[_ngcontent-%COMP%] .grid-item[_ngcontent-%COMP%] .grid-label[_ngcontent-%COMP%]{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#64748b}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-expanded-details[_ngcontent-%COMP%] .expanded-grid[_ngcontent-%COMP%] .grid-item[_ngcontent-%COMP%] .grid-value[_ngcontent-%COMP%]{font-size:12px;font-weight:600;color:#1e293b;word-break:break-all}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-expanded-details[_ngcontent-%COMP%] .expanded-grid[_ngcontent-%COMP%] .grid-item[_ngcontent-%COMP%] .grid-value.code-pill[_ngcontent-%COMP%]{font-family:Roboto Mono,Fira Code,Consolas,monospace;font-size:11px;background:#e2e8f0;color:#334155;padding:2px 6px;border-radius:4px;display:inline-block;width:fit-content}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-expanded-details[_ngcontent-%COMP%] .expanded-grid[_ngcontent-%COMP%] .grid-item[_ngcontent-%COMP%] .grid-value.command-value[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{font-family:Roboto Mono,Fira Code,Consolas,monospace;font-size:11px;background:#0f172a;color:#38bdf8;padding:4px 8px;border-radius:4px;display:block;word-break:break-all;white-space:pre-wrap}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-expanded-details[_ngcontent-%COMP%] .expanded-screenshots-container[_ngcontent-%COMP%]{display:flex;flex-direction:row;flex-wrap:nowrap;gap:12px;margin-top:4px;justify-content:flex-start;width:100%}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-expanded-details[_ngcontent-%COMP%] .expanded-screenshots-container[_ngcontent-%COMP%] .screenshot-column[_ngcontent-%COMP%]{flex:1 1 0;min-width:0;max-width:320px;display:flex;flex-direction:column;gap:6px;align-items:center}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-expanded-details[_ngcontent-%COMP%] .expanded-screenshots-container[_ngcontent-%COMP%] .screenshot-column[_ngcontent-%COMP%] .screenshot-label[_ngcontent-%COMP%]{font-family:Google Sans,Google Sans Text,Inter,Arial,Liberation Sans,sans-serif;font-size:11.5px;font-weight:500;color:#64748b;letter-spacing:normal;text-transform:none}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-expanded-details[_ngcontent-%COMP%] .expanded-screenshots-container[_ngcontent-%COMP%] .screenshot-column[_ngcontent-%COMP%] .image-wrapper[_ngcontent-%COMP%]{display:inline-flex;justify-content:center;align-items:center;max-width:100%;border:1px solid #e2e8f0;border-radius:8px;background-color:#f8fafc;cursor:zoom-in;overflow:hidden;box-shadow:0 1px 3px #0000000d;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-expanded-details[_ngcontent-%COMP%] .expanded-screenshots-container[_ngcontent-%COMP%] .screenshot-column[_ngcontent-%COMP%] .image-wrapper[_ngcontent-%COMP%]:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000014;border-color:#cbd5e1}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-expanded-details[_ngcontent-%COMP%] .expanded-screenshots-container[_ngcontent-%COMP%] .screenshot-column[_ngcontent-%COMP%] .image-wrapper[_ngcontent-%COMP%] .img-relative-box[_ngcontent-%COMP%]{position:relative;display:inline-block;max-width:100%}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-expanded-details[_ngcontent-%COMP%] .expanded-screenshots-container[_ngcontent-%COMP%] .screenshot-column[_ngcontent-%COMP%] .image-wrapper[_ngcontent-%COMP%] .img-relative-box[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{display:block;max-width:100%;max-height:280px;width:auto;height:auto;margin:0 auto;border-radius:6px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-expanded-details[_ngcontent-%COMP%] .expanded-screenshots-container[_ngcontent-%COMP%] .screenshot-column[_ngcontent-%COMP%] .image-wrapper[_ngcontent-%COMP%] .img-relative-box[_ngcontent-%COMP%] .overlay-layer[_ngcontent-%COMP%]{position:absolute;inset:0;pointer-events:none;overflow:visible}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-expanded-details[_ngcontent-%COMP%] .expanded-error-banner[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;background:#fff1f2;border:1px solid #fecdd3;color:#be123c;padding:8px 12px;border-radius:6px;font-size:12px;font-weight:500}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .step-android-action-card[_ngcontent-%COMP%] .action-card-expanded-details[_ngcontent-%COMP%] .expanded-error-banner[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{font-size:16px;color:#e11d48}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .final-summary-card[_ngcontent-%COMP%]{padding:20px 24px;display:flex;flex-direction:column;gap:12px;background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:12px;box-shadow:0 4px 6px -1px #00000003,0 2px 4px -1px #00000002}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .final-summary-card[_ngcontent-%COMP%] .final-summary-header[_ngcontent-%COMP%]{font-weight:500;font-size:12px;color:#71717a;display:flex;align-items:center;gap:6px;-webkit-user-select:none;user-select:none}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .final-summary-card[_ngcontent-%COMP%] .final-summary-body[_ngcontent-%COMP%]{font-size:12px;line-height:1.6;color:#27272a}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .final-summary-card[_ngcontent-%COMP%] .final-summary-body[_ngcontent-%COMP%] strong[_ngcontent-%COMP%]{font-weight:600;color:#09090b}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .final-summary-card[_ngcontent-%COMP%] .final-summary-body[_ngcontent-%COMP%] ul[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .final-summary-card[_ngcontent-%COMP%] .final-summary-body[_ngcontent-%COMP%] ol[_ngcontent-%COMP%]{margin:6px 0;padding-left:20px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .final-summary-card[_ngcontent-%COMP%] .final-summary-body[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] li[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .final-summary-card[_ngcontent-%COMP%] .final-summary-body[_ngcontent-%COMP%] ol[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{margin-bottom:6px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .final-summary-card[_ngcontent-%COMP%] .final-summary-body[_ngcontent-%COMP%] div[_ngcontent-%COMP%]{margin-bottom:4px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item[_ngcontent-%COMP%] .step-body[_ngcontent-%COMP%] .step-actions-container[_ngcontent-%COMP%] .final-summary-card[_ngcontent-%COMP%] .final-summary-body[_ngcontent-%COMP%] .md-para-gap[_ngcontent-%COMP%]{height:8px}@keyframes _ngcontent-%COMP%_spin-loader{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes _ngcontent-%COMP%_pulse-green{0%{box-shadow:0 0 #10b98166}70%{box-shadow:0 0 0 6px #10b98100}to{box-shadow:0 0 #10b98100}}@keyframes _ngcontent-%COMP%_pulse-stream-blue{0%{box-shadow:0 0 #0ea5e966}70%{box-shadow:0 0 0 6px #0ea5e900}to{box-shadow:0 0 #0ea5e900}}@keyframes _ngcontent-%COMP%_pulse-stream-green{0%{box-shadow:0 0 #22c55e66}70%{box-shadow:0 0 0 6px #22c55e00}to{box-shadow:0 0 #22c55e00}}@keyframes _ngcontent-%COMP%_pulse-stream-purple{0%{box-shadow:0 0 #a855f766}70%{box-shadow:0 0 0 6px #a855f700}to{box-shadow:0 0 #a855f700}}@keyframes _ngcontent-%COMP%_pulse-stream-grey{0%{box-shadow:0 0 #71717a66}70%{box-shadow:0 0 0 6px #71717a00}to{box-shadow:0 0 #71717a00}}@keyframes _ngcontent-%COMP%_pulse-black-dot{0%{box-shadow:0 0 #0006}70%{box-shadow:0 0 0 5px #0000}to{box-shadow:0 0 #0000}}@keyframes _ngcontent-%COMP%_pulse-black-dot-small{0%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes _ngcontent-%COMP%_fadeInDetails{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes _ngcontent-%COMP%_dropdownFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes _ngcontent-%COMP%_spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.image-modal-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;width:100%;height:100%;background-color:#0f172abf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px;box-sizing:border-box;animation:_ngcontent-%COMP%_fadeInModal .2s ease-out}.image-modal-backdrop[_ngcontent-%COMP%] .image-modal-content[_ngcontent-%COMP%]{position:relative;max-width:calc(100% - 48px);max-height:calc(100% - 48px);background:#0f172a;border-radius:12px;padding:12px;box-shadow:0 20px 25px -5px #00000080,0 8px 10px -6px #00000080;display:flex;align-items:center;justify-content:center;box-sizing:border-box}.image-modal-backdrop[_ngcontent-%COMP%] .image-modal-content[_ngcontent-%COMP%] .image-modal-close[_ngcontent-%COMP%]{position:absolute;top:-12px;right:-12px;width:32px;height:32px;border-radius:50%;background:#ef4444;color:#fff;border:2px solid white;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 6px -1px #0000004d;transition:transform .15s ease,background-color .15s ease;z-index:20}.image-modal-backdrop[_ngcontent-%COMP%] .image-modal-content[_ngcontent-%COMP%] .image-modal-close[_ngcontent-%COMP%]:hover{transform:scale(1.1);background:#dc2626}.image-modal-backdrop[_ngcontent-%COMP%] .image-modal-content[_ngcontent-%COMP%] .image-modal-close[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:18px}.image-modal-backdrop[_ngcontent-%COMP%] .image-modal-content[_ngcontent-%COMP%] .img-relative-box[_ngcontent-%COMP%]{position:relative;display:inline-flex;align-items:center;justify-content:center;max-width:100%;max-height:100%}.image-modal-backdrop[_ngcontent-%COMP%] .image-modal-content[_ngcontent-%COMP%] .img-relative-box[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{display:block;max-width:100%;max-height:calc(100vh - 140px);width:auto;height:auto;object-fit:contain;border-radius:6px}.image-modal-backdrop[_ngcontent-%COMP%] .image-modal-content[_ngcontent-%COMP%] .img-relative-box[_ngcontent-%COMP%] .overlay-layer[_ngcontent-%COMP%]{position:absolute;inset:0;pointer-events:none;overflow:visible;border-radius:6px}@keyframes _ngcontent-%COMP%_pulse-animation{0%{transform:scale(.5);opacity:1}to{transform:scale(1.8);opacity:0}}@keyframes _ngcontent-%COMP%_fadeInModal{0%{opacity:0}to{opacity:1}}@keyframes _ngcontent-%COMP%_subtle-color-flow{0%{background-position:0% 50%}to{background-position:200% 50%}}@keyframes _ngcontent-%COMP%_pulse-stream-dot{0%,to{transform:scale(1);box-shadow:0 0 #3b82f673}50%{transform:scale(1.15);box-shadow:0 0 0 4px #3b82f600}}@keyframes _ngcontent-%COMP%_pulse-stream-amber{0%,to{transform:scale(1);box-shadow:0 0 #f59e0b73}50%{transform:scale(1.15);box-shadow:0 0 0 4px #f59e0b00}}.spinning[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_spin 1.2s linear infinite}@keyframes _ngcontent-%COMP%_subtle-card-glow{0%{border-color:#3b82f640;box-shadow:0 2px 8px #3b82f60d}to{border-color:#6366f173;box-shadow:0 4px 14px #6366f11f}}.outputter-synthesis-stream-card[_ngcontent-%COMP%]{margin:16px 0 12px;border-radius:12px;border:1px solid rgba(196,181,253,.85);background:linear-gradient(135deg,#f5f3fff2,#faf5fffa);box-shadow:0 4px 16px #7c3aed14,0 1px 3px #00000008;overflow:hidden;animation:_ngcontent-%COMP%_fadeInModal .25s ease-out}.outputter-synthesis-stream-card[_ngcontent-%COMP%] .synthesis-card-header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#ede9fe99;border-bottom:1px solid rgba(196,181,253,.7);gap:12px;flex-wrap:wrap}.outputter-synthesis-stream-card[_ngcontent-%COMP%] .synthesis-card-header[_ngcontent-%COMP%] .header-left[_ngcontent-%COMP%]{display:flex;align-items:center;gap:10px}.outputter-synthesis-stream-card[_ngcontent-%COMP%] .synthesis-card-header[_ngcontent-%COMP%] .header-left[_ngcontent-%COMP%] .icon-sparkle[_ngcontent-%COMP%]{font-size:22px;color:#7c3aed}.outputter-synthesis-stream-card[_ngcontent-%COMP%] .synthesis-card-header[_ngcontent-%COMP%] .header-left[_ngcontent-%COMP%] .main-title[_ngcontent-%COMP%]{font-size:14px;font-weight:700;color:#4338ca}.outputter-synthesis-stream-card[_ngcontent-%COMP%] .synthesis-card-header[_ngcontent-%COMP%] .header-right[_ngcontent-%COMP%] .btn-open-note[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;background:linear-gradient(135deg,#6366f1,#7c3aed);color:#fff;border:none;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s ease;box-shadow:0 2px 6px #6366f140}.outputter-synthesis-stream-card[_ngcontent-%COMP%] .synthesis-card-header[_ngcontent-%COMP%] .header-right[_ngcontent-%COMP%] .btn-open-note[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:15px}.outputter-synthesis-stream-card[_ngcontent-%COMP%] .synthesis-card-header[_ngcontent-%COMP%] .header-right[_ngcontent-%COMP%] .btn-open-note[_ngcontent-%COMP%]:hover{background:linear-gradient(135deg,#4f46e5,#6d28d9);box-shadow:0 4px 10px #6366f159;transform:translateY(-1px)}.outputter-synthesis-stream-card[_ngcontent-%COMP%] .synthesis-card-preview[_ngcontent-%COMP%]{padding:14px 16px}.outputter-synthesis-stream-card[_ngcontent-%COMP%] .synthesis-card-preview[_ngcontent-%COMP%] .parsed-note-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:10px}.outputter-synthesis-stream-card[_ngcontent-%COMP%] .synthesis-card-preview[_ngcontent-%COMP%] .parsed-note-container[_ngcontent-%COMP%] .parsed-note-title[_ngcontent-%COMP%]{font-size:14px;font-weight:700;color:#1e1b4b;margin:0}.outputter-synthesis-stream-card[_ngcontent-%COMP%] .synthesis-card-preview[_ngcontent-%COMP%] .parsed-note-container[_ngcontent-%COMP%] .parsed-milestones[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:6px}.outputter-synthesis-stream-card[_ngcontent-%COMP%] .synthesis-card-preview[_ngcontent-%COMP%] .parsed-note-container[_ngcontent-%COMP%] .parsed-milestones[_ngcontent-%COMP%] .milestone-item[_ngcontent-%COMP%]{display:flex;align-items:flex-start;gap:8px;font-size:12.5px;line-height:1.45;color:#374151}.outputter-synthesis-stream-card[_ngcontent-%COMP%] .synthesis-card-preview[_ngcontent-%COMP%] .parsed-note-container[_ngcontent-%COMP%] .parsed-milestones[_ngcontent-%COMP%] .milestone-item[_ngcontent-%COMP%] .status-icon[_ngcontent-%COMP%]{font-size:16px;color:#7c3aed;margin-top:1px;flex-shrink:0}.outputter-synthesis-stream-card[_ngcontent-%COMP%] .synthesis-card-preview[_ngcontent-%COMP%] .parsed-note-container[_ngcontent-%COMP%] .parsed-milestones[_ngcontent-%COMP%] .milestone-item.status-checked[_ngcontent-%COMP%] .status-icon[_ngcontent-%COMP%]{color:#10b981}.outputter-synthesis-stream-card[_ngcontent-%COMP%] .synthesis-card-preview[_ngcontent-%COMP%] .parsed-note-container[_ngcontent-%COMP%] .parsed-milestones[_ngcontent-%COMP%] .milestone-item.status-progress[_ngcontent-%COMP%] .status-icon[_ngcontent-%COMP%]{color:#f59e0b}.outputter-synthesis-stream-card[_ngcontent-%COMP%] .synthesis-card-preview[_ngcontent-%COMP%] .parsed-note-container[_ngcontent-%COMP%] .parsed-other-lines[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:4px}.outputter-synthesis-stream-card[_ngcontent-%COMP%] .synthesis-card-preview[_ngcontent-%COMP%] .parsed-note-container[_ngcontent-%COMP%] .parsed-other-lines[_ngcontent-%COMP%] .other-line[_ngcontent-%COMP%]{margin:0;font-size:12.5px;line-height:1.5;color:#4b5563}.outputter-synthesis-stream-card[_ngcontent-%COMP%] .synthesis-card-preview[_ngcontent-%COMP%] .parsed-note-container[_ngcontent-%COMP%] .parsed-other-lines[_ngcontent-%COMP%] .other-line[_ngcontent-%COMP%] strong[_ngcontent-%COMP%]{color:#1e1b4b}.outputter-synthesis-stream-card[_ngcontent-%COMP%] .synthesis-card-preview[_ngcontent-%COMP%] .parsed-note-container[_ngcontent-%COMP%] .parsed-other-lines[_ngcontent-%COMP%] .other-line[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{font-family:JetBrains Mono,monospace;background:#ffffffe6;border:1px solid #e5e7eb;padding:1px 4px;border-radius:4px;color:#6d28d9;font-size:11.5px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item.type-checker[_ngcontent-%COMP%]{border-left:2px solid #ddd6fe;padding-left:12px;margin-left:-14px;font-family:Google Sans,Google Sans Text,Inter,Arial,sans-serif}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item.type-checker[_ngcontent-%COMP%] .check-index[_ngcontent-%COMP%]{flex:0 0 14px;text-align:right;color:#a1a1aa;font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item.type-checker[_ngcontent-%COMP%] .check-lane[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item.type-checker[_ngcontent-%COMP%] .check-lane[_ngcontent-%COMP%] .check-header[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;min-height:20px;font-size:12px;line-height:1.5;letter-spacing:.2px;color:#71717a;-webkit-user-select:none;user-select:none}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item.type-checker[_ngcontent-%COMP%] .check-lane[_ngcontent-%COMP%] .check-header[_ngcontent-%COMP%] .stream-status-dot[_ngcontent-%COMP%]{flex:0 0 auto;width:8px;height:8px;border-radius:50%;display:inline-block;background:#d4d4d8}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item.type-checker[_ngcontent-%COMP%] .check-lane[_ngcontent-%COMP%] .check-header[_ngcontent-%COMP%] .stream-status-dot.streaming[_ngcontent-%COMP%]{background:#7c3aed;box-shadow:0 0 #7c3aed73;animation:_ngcontent-%COMP%_pulse-stream-dot 1.8s cubic-bezier(.4,0,.6,1) infinite}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item.type-checker[_ngcontent-%COMP%] .check-lane[_ngcontent-%COMP%] .check-header[_ngcontent-%COMP%] .check-title[_ngcontent-%COMP%]{flex:0 0 auto;font-weight:500;color:#52525b}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item.type-checker[_ngcontent-%COMP%] .check-lane[_ngcontent-%COMP%] .check-header[_ngcontent-%COMP%] .check-subject[_ngcontent-%COMP%]{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item.type-checker[_ngcontent-%COMP%] .check-lane[_ngcontent-%COMP%] .check-header[_ngcontent-%COMP%] .check-status[_ngcontent-%COMP%]{flex:0 0 auto;margin-left:auto;font-weight:500;color:#52525b;white-space:nowrap}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item.type-checker[_ngcontent-%COMP%] .check-lane.tone-passed[_ngcontent-%COMP%] .check-status[_ngcontent-%COMP%]{color:#15803d}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item.type-checker[_ngcontent-%COMP%] .check-lane.tone-failed[_ngcontent-%COMP%] .check-status[_ngcontent-%COMP%]{color:#b91c1c}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item.type-checker[_ngcontent-%COMP%] .check-lane.tone-inconclusive[_ngcontent-%COMP%] .check-status[_ngcontent-%COMP%]{color:#b45309}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item.type-checker[_ngcontent-%COMP%] .check-lane.tone-running[_ngcontent-%COMP%] .check-status[_ngcontent-%COMP%]{color:#6d28d9}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item.type-checker[_ngcontent-%COMP%] .check-lane.tone-muted[_ngcontent-%COMP%]{opacity:.6}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item.type-checker[_ngcontent-%COMP%] .check-lane[_ngcontent-%COMP%] .check-items[_ngcontent-%COMP%]{list-style:none;margin:0;padding:0 0 0 16px;display:flex;flex-direction:column;gap:2px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item.type-checker[_ngcontent-%COMP%] .check-lane[_ngcontent-%COMP%] .check-items[_ngcontent-%COMP%] .check-item[_ngcontent-%COMP%]{display:flex;align-items:baseline;gap:8px;font-size:12px;line-height:1.5;color:#3f3f46}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item.type-checker[_ngcontent-%COMP%] .check-lane[_ngcontent-%COMP%] .check-items[_ngcontent-%COMP%] .check-item[_ngcontent-%COMP%] .check-text[_ngcontent-%COMP%]{flex:1 1 auto;min-width:0;word-break:break-word}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item.type-checker[_ngcontent-%COMP%] .check-lane[_ngcontent-%COMP%] .check-items[_ngcontent-%COMP%] .check-item[_ngcontent-%COMP%] .check-method[_ngcontent-%COMP%]{flex:0 0 auto;color:#a1a1aa;white-space:nowrap}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item.type-checker[_ngcontent-%COMP%] .check-result[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:4px;margin-top:8px;padding-left:16px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item.type-checker[_ngcontent-%COMP%] .check-result[_ngcontent-%COMP%] .check-verdict[_ngcontent-%COMP%]{display:flex;align-items:flex-start;gap:8px;font-size:12px;line-height:1.5;color:#52525b}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item.type-checker[_ngcontent-%COMP%] .check-result[_ngcontent-%COMP%] .check-verdict[_ngcontent-%COMP%] .check-index[_ngcontent-%COMP%]{line-height:18px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item.type-checker[_ngcontent-%COMP%] .check-result[_ngcontent-%COMP%] .check-verdict[_ngcontent-%COMP%] .verdict-icon[_ngcontent-%COMP%]{flex:0 0 auto;font-size:15px;line-height:18px;color:#a1a1aa}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item.type-checker[_ngcontent-%COMP%] .check-result[_ngcontent-%COMP%] .check-verdict.passed[_ngcontent-%COMP%] .verdict-icon[_ngcontent-%COMP%]{color:#16a34a}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item.type-checker[_ngcontent-%COMP%] .check-result[_ngcontent-%COMP%] .check-verdict.failed[_ngcontent-%COMP%] .verdict-icon[_ngcontent-%COMP%]{color:#dc2626}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item.type-checker[_ngcontent-%COMP%] .check-result[_ngcontent-%COMP%] .check-verdict.inconclusive[_ngcontent-%COMP%] .verdict-icon[_ngcontent-%COMP%]{color:#d97706}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item.type-checker[_ngcontent-%COMP%] .check-result[_ngcontent-%COMP%] .check-verdict.superseded[_ngcontent-%COMP%], .agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item.type-checker[_ngcontent-%COMP%] .check-result[_ngcontent-%COMP%] .check-verdict.unchecked[_ngcontent-%COMP%]{color:#a1a1aa}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item.type-checker[_ngcontent-%COMP%] .check-result[_ngcontent-%COMP%] .check-verdict[_ngcontent-%COMP%] .verdict-body[_ngcontent-%COMP%]{flex:1 1 auto;min-width:0;word-break:break-word}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item.type-checker[_ngcontent-%COMP%] .check-result[_ngcontent-%COMP%] .check-verdict[_ngcontent-%COMP%] .verdict-suggestion[_ngcontent-%COMP%]{display:block;color:#1d4ed8}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .phase-body[_ngcontent-%COMP%] .block-item.type-checker[_ngcontent-%COMP%] .check-result[_ngcontent-%COMP%] .check-note[_ngcontent-%COMP%]{font-size:12px;line-height:1.5;color:#71717a;padding-left:22px;word-break:break-word}@media(min-width:1151px){@container stream-panel (max-width: 660px){.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .model-info-chip[_ngcontent-%COMP%]{padding:0 9px}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .model-info-chip[_ngcontent-%COMP%] .model-label[_ngcontent-%COMP%]{display:none}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .btn-screen-recording[_ngcontent-%COMP%]{padding:0 9px;gap:0}.agent-stream-container[_ngcontent-%COMP%] .stream-floating-toolbar[_ngcontent-%COMP%] .btn-screen-recording[_ngcontent-%COMP%] .btn-text[_ngcontent-%COMP%]{display:none}}}@media(max-width:1150px){@container stream-panel (max-width: 900px){.agent-stream-container[_ngcontent-%COMP%] .vscode-nav-header[_ngcontent-%COMP%] .vscode-tab-btn[_ngcontent-%COMP%]{padding:0 9px;gap:0}.agent-stream-container[_ngcontent-%COMP%] .vscode-nav-header[_ngcontent-%COMP%] .vscode-tab-btn[_ngcontent-%COMP%] .tab-label[_ngcontent-%COMP%]{display:none}}}.vscode-dropdown-menu[_ngcontent-%COMP%]{position:relative;width:360px;box-sizing:border-box;max-width:calc(100vw - 24px);max-height:480px;background:#fff;border:1px solid #cbd5e1;border-radius:12px;box-shadow:0 16px 40px -4px #0f172a29,0 4px 12px #0000000f;z-index:100;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px;animation:_ngcontent-%COMP%_dropdownFadeIn .15s cubic-bezier(.16,1,.3,1)}.vscode-dropdown-menu[_ngcontent-%COMP%] .popover-title-header[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;padding-bottom:8px;border-bottom:1px solid #e2e8f0;font-size:14px;font-weight:700;color:#0f172a}.vscode-dropdown-menu[_ngcontent-%COMP%] .popover-title-header[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:18px;color:#2563eb}.vscode-dropdown-menu.run-info-dropdown[_ngcontent-%COMP%]{width:288px;gap:0;padding:12px 14px 10px}.vscode-dropdown-menu.run-info-dropdown[_ngcontent-%COMP%] .run-info-header[_ngcontent-%COMP%]{display:flex;align-items:center;gap:7px;padding-bottom:9px;border-bottom:1px solid #e2e8f0}.vscode-dropdown-menu.run-info-dropdown[_ngcontent-%COMP%] .run-info-header[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:18px;color:#64748b}.vscode-dropdown-menu.run-info-dropdown[_ngcontent-%COMP%] .run-info-header[_ngcontent-%COMP%] .material-symbols-outlined.is-pro[_ngcontent-%COMP%]{color:#2563eb}.vscode-dropdown-menu.run-info-dropdown[_ngcontent-%COMP%] .run-info-header[_ngcontent-%COMP%] .run-info-title[_ngcontent-%COMP%]{font-size:13px;font-weight:700;color:#0f172a}.vscode-dropdown-menu.run-info-dropdown[_ngcontent-%COMP%] .run-info-header[_ngcontent-%COMP%] .run-info-model[_ngcontent-%COMP%]{margin-left:auto;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:Fira Code,Roboto Mono,Consolas,monospace;font-size:10.5px;color:#94a3b8}.vscode-dropdown-menu.run-info-dropdown[_ngcontent-%COMP%] .run-info-row[_ngcontent-%COMP%]{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid #f1f5f9}.vscode-dropdown-menu.run-info-dropdown[_ngcontent-%COMP%] .run-info-row[_ngcontent-%COMP%]:last-child{border-bottom:none}.vscode-dropdown-menu.run-info-dropdown[_ngcontent-%COMP%] .run-info-row.is-stacked[_ngcontent-%COMP%]{flex-direction:column;align-items:stretch;gap:0}.vscode-dropdown-menu.run-info-dropdown[_ngcontent-%COMP%] .run-info-line[_ngcontent-%COMP%]{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.vscode-dropdown-menu.run-info-dropdown[_ngcontent-%COMP%] .run-info-label[_ngcontent-%COMP%]{font-size:12px;font-weight:500;color:#64748b;white-space:nowrap}.vscode-dropdown-menu.run-info-dropdown[_ngcontent-%COMP%] .run-info-value[_ngcontent-%COMP%]{font-size:12.5px;font-weight:600;color:#0f172a;text-align:right;font-variant-numeric:tabular-nums}.vscode-dropdown-menu.run-info-dropdown[_ngcontent-%COMP%] .run-info-value.is-muted[_ngcontent-%COMP%]{color:#cbd5e1;font-weight:500}.vscode-dropdown-menu.run-info-dropdown[_ngcontent-%COMP%] .run-info-sub[_ngcontent-%COMP%]{display:block;margin-top:2px;font-size:11px;font-weight:400;color:#94a3b8}.vscode-dropdown-menu.run-info-dropdown[_ngcontent-%COMP%] .run-info-sub-inline[_ngcontent-%COMP%]{margin-left:3px;font-size:11px;font-weight:400;color:#94a3b8}.vscode-dropdown-menu.run-info-dropdown[_ngcontent-%COMP%] .run-info-meter[_ngcontent-%COMP%]{height:4px;margin-top:7px;border-radius:2px;background:#e2e8f0;overflow:hidden}.vscode-dropdown-menu.run-info-dropdown[_ngcontent-%COMP%] .run-info-meter[_ngcontent-%COMP%] .run-info-meter-fill[_ngcontent-%COMP%]{height:100%;border-radius:2px;background:#2563eb;transition:width .3s ease}.vscode-dropdown-menu.run-info-dropdown[_ngcontent-%COMP%] .run-info-meter.is-high[_ngcontent-%COMP%] .run-info-meter-fill[_ngcontent-%COMP%]{background:#f59e0b}.vscode-dropdown-menu.run-info-dropdown[_ngcontent-%COMP%] .run-info-meter.is-critical[_ngcontent-%COMP%] .run-info-meter-fill[_ngcontent-%COMP%]{background:#ef4444}.vscode-dropdown-menu.run-info-dropdown[_ngcontent-%COMP%] .run-info-note[_ngcontent-%COMP%]{padding-top:9px;font-size:11.5px;color:#94a3b8}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%]{width:380px;max-height:520px}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .notes-selector-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:6px;margin-bottom:4px}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .notes-selector-container[_ngcontent-%COMP%] .notes-selector-list[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:6px}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .notes-selector-container[_ngcontent-%COMP%] .notes-selector-list[_ngcontent-%COMP%] .note-selector-pill[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border:1px solid #e2e8f0;background:#fff;border-radius:16px;font-size:11.5px;font-weight:500;color:#475569;cursor:pointer;transition:all .15s ease}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .notes-selector-container[_ngcontent-%COMP%] .notes-selector-list[_ngcontent-%COMP%] .note-selector-pill[_ngcontent-%COMP%] .pill-icon[_ngcontent-%COMP%]{font-size:14px}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .notes-selector-container[_ngcontent-%COMP%] .notes-selector-list[_ngcontent-%COMP%] .note-selector-pill[_ngcontent-%COMP%]:hover{background:#f8fafc;border-color:#cbd5e1;color:#1e293b}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .notes-selector-container[_ngcontent-%COMP%] .notes-selector-list[_ngcontent-%COMP%] .note-selector-pill.active[_ngcontent-%COMP%]{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8;font-weight:600}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:10px;padding:4px 2px}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .note-title[_ngcontent-%COMP%]{font-size:13.5px;font-weight:700;color:#1f1f1f;margin:0 0 4px;font-family:Google Sans,Google Sans Text,Inter,sans-serif}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .code-segment[_ngcontent-%COMP%]{font-family:Fira Code,Roboto Mono,Consolas,monospace;background-color:#f1f3f4;color:#1967d2;padding:1px 5px;border-radius:4px;font-size:12px;margin:0 2px;word-break:break-all}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .milestones-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:8px}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%]{display:flex;flex-direction:column}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .milestone-block.checked[_ngcontent-%COMP%] .milestone-title-row[_ngcontent-%COMP%] .milestone-status-icon.checked[_ngcontent-%COMP%]{opacity:.7}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .milestone-block.checked[_ngcontent-%COMP%] .milestone-title-row[_ngcontent-%COMP%] .milestone-text[_ngcontent-%COMP%]{color:#a1a1aa}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-title-row[_ngcontent-%COMP%]{display:flex;align-items:flex-start;gap:8px}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-title-row[_ngcontent-%COMP%] .milestone-status-icon[_ngcontent-%COMP%]{font-size:18px;-webkit-user-select:none;user-select:none;margin-top:2px;font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 24}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-title-row[_ngcontent-%COMP%] .milestone-status-icon.checked[_ngcontent-%COMP%], .vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-title-row[_ngcontent-%COMP%] .milestone-status-icon.progress[_ngcontent-%COMP%]{color:#1a73e8}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-title-row[_ngcontent-%COMP%] .milestone-status-icon.unchecked[_ngcontent-%COMP%]{color:#cbd5e1}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-title-row[_ngcontent-%COMP%] .milestone-text[_ngcontent-%COMP%]{font-family:Google Sans,Google Sans Text,Inter,sans-serif;color:#1f1f1f;font-size:13px;line-height:1.5;word-break:break-word;flex:1}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-substeps[_ngcontent-%COMP%]{margin-top:4px;display:flex;flex-direction:column;gap:5px;padding-left:26px}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-substeps[_ngcontent-%COMP%] .substep-row[_ngcontent-%COMP%]{display:flex;align-items:flex-start;gap:8px;font-family:Google Sans,Google Sans Text,Inter,sans-serif;color:#1f1f1f;font-size:12.5px;line-height:1.5}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-substeps[_ngcontent-%COMP%] .substep-row.checked[_ngcontent-%COMP%]{color:#a1a1aa}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-substeps[_ngcontent-%COMP%] .substep-row.checked[_ngcontent-%COMP%] .check-icon.checked[_ngcontent-%COMP%]{opacity:.7}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-substeps[_ngcontent-%COMP%] .substep-row.verify[_ngcontent-%COMP%]{color:#334155;gap:8px;align-items:flex-start}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-substeps[_ngcontent-%COMP%] .substep-row.verify[_ngcontent-%COMP%] .verify-badge[_ngcontent-%COMP%]{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;font-family:Google Sans Text,Inter,-apple-system,sans-serif;font-size:10.5px;font-weight:550;line-height:1.2;letter-spacing:.2px;text-transform:lowercase;color:#475569;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:4px;padding:1.5px 6px;margin-top:1.5px;-webkit-user-select:none;user-select:none}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-substeps[_ngcontent-%COMP%] .substep-row.verify[_ngcontent-%COMP%] .verify-badge.assert[_ngcontent-%COMP%]{color:#0369a1;background:#f0f9ff;border-color:#e0f2fe}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-substeps[_ngcontent-%COMP%] .substep-row.verify[_ngcontent-%COMP%] .line-text[_ngcontent-%COMP%]{color:#334155;font-size:12.5px;line-height:1.5}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-substeps[_ngcontent-%COMP%] .substep-row.finding[_ngcontent-%COMP%]{color:#92400e;gap:8px;align-items:flex-start}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-substeps[_ngcontent-%COMP%] .substep-row.finding[_ngcontent-%COMP%] .finding-badge[_ngcontent-%COMP%]{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;font-family:Google Sans Text,Inter,-apple-system,sans-serif;font-size:10.5px;font-weight:550;line-height:1.2;letter-spacing:.2px;text-transform:lowercase;color:#b45309;background:#fef3c7;border:1px solid #fde68a;border-radius:4px;padding:1.5px 6px;margin-top:1.5px;-webkit-user-select:none;user-select:none}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-substeps[_ngcontent-%COMP%] .substep-row.finding[_ngcontent-%COMP%] .line-text[_ngcontent-%COMP%]{color:#92400e;font-size:12.5px;line-height:1.5}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-substeps[_ngcontent-%COMP%] .substep-row[_ngcontent-%COMP%] .check-icon[_ngcontent-%COMP%]{font-size:16px;-webkit-user-select:none;user-select:none;margin-top:2px;font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 24}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-substeps[_ngcontent-%COMP%] .substep-row[_ngcontent-%COMP%] .check-icon.checked[_ngcontent-%COMP%], .vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-substeps[_ngcontent-%COMP%] .substep-row[_ngcontent-%COMP%] .check-icon.progress[_ngcontent-%COMP%]{color:#1a73e8}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-substeps[_ngcontent-%COMP%] .substep-row[_ngcontent-%COMP%] .check-icon.unchecked[_ngcontent-%COMP%]{color:#cbd5e1}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-substeps[_ngcontent-%COMP%] .substep-row[_ngcontent-%COMP%] .bullet[_ngcontent-%COMP%]{color:#9ca3af;font-weight:700;-webkit-user-select:none;user-select:none}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-substeps[_ngcontent-%COMP%] .substep-row[_ngcontent-%COMP%] .line-text[_ngcontent-%COMP%]{word-break:break-word;color:inherit}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-checks-container[_ngcontent-%COMP%]{margin-top:6px;padding-left:26px;display:flex;flex-direction:column;gap:6px}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .verification-card[_ngcontent-%COMP%]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:7px 10px;display:flex;flex-direction:column;gap:3px}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .verification-card.standalone[_ngcontent-%COMP%]{margin-top:6px;margin-bottom:6px}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .verification-card[_ngcontent-%COMP%] .card-header[_ngcontent-%COMP%]{display:flex;align-items:center}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .verification-card[_ngcontent-%COMP%] .card-header[_ngcontent-%COMP%] .card-tag[_ngcontent-%COMP%]{font-family:Google Sans Text,Inter,-apple-system,sans-serif;font-size:9.5px;font-weight:600;line-height:1;letter-spacing:.6px;text-transform:uppercase;color:#64748b}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .verification-card[_ngcontent-%COMP%] .card-header[_ngcontent-%COMP%] .card-tag.assert[_ngcontent-%COMP%]{color:#0284c7}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .verification-card[_ngcontent-%COMP%] .card-body[_ngcontent-%COMP%]{font-family:inherit;font-size:12px;line-height:1.5;color:#334155;word-break:break-word}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .verification-card[_ngcontent-%COMP%] .card-body[_ngcontent-%COMP%] .bold-segment[_ngcontent-%COMP%]{font-weight:600;color:#1e293b}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .verification-card[_ngcontent-%COMP%] .card-body[_ngcontent-%COMP%] .code-segment[_ngcontent-%COMP%]{font-family:Fira Code,Roboto Mono,Consolas,monospace;font-size:11px;background:#f1f5f9;color:#0f172a;padding:1px 5px;border-radius:4px;border:1px solid #e2e8f0}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .verification-card.finding[_ngcontent-%COMP%]{background:#fffbeb;border-color:#fef3c7}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .verification-card.finding[_ngcontent-%COMP%] .card-header[_ngcontent-%COMP%] .card-tag[_ngcontent-%COMP%]{color:#b45309}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .verification-card.finding[_ngcontent-%COMP%] .card-body[_ngcontent-%COMP%]{color:#92400e}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .other-lines-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:6px;margin-top:6px;padding-top:6px;border-top:1px dashed #e2e8f0}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .other-lines-container[_ngcontent-%COMP%] .md-line[_ngcontent-%COMP%]{display:flex;align-items:flex-start;gap:6px;font-size:12.5px;color:#334155;line-height:1.5}.vscode-dropdown-menu.notes-dropdown[_ngcontent-%COMP%] .dropdown-notes-content[_ngcontent-%COMP%] .other-lines-container[_ngcontent-%COMP%] .md-line[_ngcontent-%COMP%] .line-text[_ngcontent-%COMP%]{word-break:break-word;color:inherit}.vscode-dropdown-menu[_ngcontent-%COMP%]::-webkit-scrollbar{width:6px}.vscode-dropdown-menu[_ngcontent-%COMP%]::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding-bottom:8px;border-bottom:1px solid #e2e8f0}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-header[_ngcontent-%COMP%] .dropdown-title[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:#0f172a}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-header[_ngcontent-%COMP%] .dropdown-title[_ngcontent-%COMP%] .icon-main[_ngcontent-%COMP%]{font-size:18px;color:#2563eb}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-section-label[_ngcontent-%COMP%]{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.5px;padding:4px 2px 2px}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-section-label.history-label[_ngcontent-%COMP%]{margin-top:6px}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-section-label[_ngcontent-%COMP%] .icon-bolt[_ngcontent-%COMP%]{font-size:15px;color:#d97706}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-section-label[_ngcontent-%COMP%] .icon-history[_ngcontent-%COMP%]{font-size:15px;color:#64748b}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-empty-state[_ngcontent-%COMP%]{padding:20px 14px;text-align:center;font-size:12px;color:#94a3b8;background:#f8fafc;border:1px dashed #e2e8f0;border-radius:6px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-empty-state[_ngcontent-%COMP%] .empty-icon[_ngcontent-%COMP%]{font-size:22px;color:#94a3b8}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-history-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:8px}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%]{padding:10px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;transition:all .15s ease;display:flex;flex-direction:column;gap:6px}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%]:hover{background:#f1f5f9;border-color:#cbd5e1;transform:translateY(-1px)}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%]:hover .item-header[_ngcontent-%COMP%] .item-header-actions[_ngcontent-%COMP%]:has(.btn-delete-card) .item-time[_ngcontent-%COMP%], .vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%]:hover .item-header[_ngcontent-%COMP%] .item-header-actions[_ngcontent-%COMP%]:has(.btn-delete-card) .item-time-divider[_ngcontent-%COMP%], .vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%]:hover .item-header[_ngcontent-%COMP%] .item-header-actions[_ngcontent-%COMP%]:has(.btn-stop-card) .item-time[_ngcontent-%COMP%], .vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%]:hover .item-header[_ngcontent-%COMP%] .item-header-actions[_ngcontent-%COMP%]:has(.btn-stop-card) .item-time-divider[_ngcontent-%COMP%]{opacity:0}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%]:hover .item-header[_ngcontent-%COMP%] .item-header-actions[_ngcontent-%COMP%] .btn-delete-card[_ngcontent-%COMP%], .vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%]:hover .item-header[_ngcontent-%COMP%] .item-header-actions[_ngcontent-%COMP%] .btn-stop-card[_ngcontent-%COMP%]{opacity:1;pointer-events:auto}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card.selected[_ngcontent-%COMP%]{background:#eff6ff;border-color:#93c5fd;box-shadow:0 0 0 1px #2563eb}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card.selected[_ngcontent-%COMP%] .item-goal[_ngcontent-%COMP%]{color:#1e3a8a;font-weight:600}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card.running[_ngcontent-%COMP%]{border-left:3.5px solid #2563eb}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .task-badge[_ngcontent-%COMP%]{flex-shrink:0;display:inline-flex;align-items:center;font-size:10.5px;font-weight:700;padding:2px 5px;border-radius:4px;letter-spacing:.05em;border:1px solid #e2e8f0;background:#fafafa;color:#64748b}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .task-badge[_ngcontent-%COMP%]:before{content:"";width:4px;height:4px;border-radius:50%;display:inline-block;margin-right:4px}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .task-badge.running[_ngcontent-%COMP%]{background:#fafafa;color:#1f1f1f;border-color:#1f1f1f}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .task-badge.running[_ngcontent-%COMP%]:before{background-color:#1f1f1f;animation:_ngcontent-%COMP%_pulse-black-dot-small 1.5s infinite ease-in-out}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .task-badge.paused[_ngcontent-%COMP%]{background:#fff7ed;color:#c2410c;border-color:#fdba74}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .task-badge.paused[_ngcontent-%COMP%]:before{background-color:#f97316}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .task-badge.completed[_ngcontent-%COMP%]{background:#fafafa;color:#1f1f1f;border-color:#e2e8f0}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .task-badge.completed[_ngcontent-%COMP%]:before{background-color:#1f1f1f}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .task-badge.pending[_ngcontent-%COMP%]{background:#fafafa;color:#64748b;border-color:#e2e8f0}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .task-badge.pending[_ngcontent-%COMP%]:before{background-color:#94a3b8}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .task-badge.failed[_ngcontent-%COMP%]{background:#fafafa;color:#ef4444;border-color:#fee2e2}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .task-badge.failed[_ngcontent-%COMP%]:before{background-color:#ef4444}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .task-badge.cancelled[_ngcontent-%COMP%]{background:#fafafa;color:#d97706;border-color:#fef3c7}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .task-badge.cancelled[_ngcontent-%COMP%]:before{background-color:#f59e0b}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .task-badge[_ngcontent-%COMP%] .status-dot[_ngcontent-%COMP%]{display:none}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .item-header-actions[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px;position:relative;min-width:0;flex-shrink:1;justify-content:flex-end}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .item-header-actions[_ngcontent-%COMP%] .item-device[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:2.5px;min-width:0;flex-shrink:1;font-size:10.5px;color:#64748b;line-height:1;cursor:default;transition:color .15s ease,opacity .15s ease}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .item-header-actions[_ngcontent-%COMP%] .item-device[_ngcontent-%COMP%] .device-icon[_ngcontent-%COMP%]{font-size:12px;width:12px;height:12px;line-height:12px;color:#64748b;opacity:.75;flex-shrink:0}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .item-header-actions[_ngcontent-%COMP%] .item-device[_ngcontent-%COMP%] .device-name[_ngcontent-%COMP%]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:inherit;letter-spacing:-.15px}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .item-header-actions[_ngcontent-%COMP%] .item-device[_ngcontent-%COMP%]:hover{color:#334155}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .item-header-actions[_ngcontent-%COMP%] .item-device[_ngcontent-%COMP%]:hover .device-icon[_ngcontent-%COMP%]{color:#334155;opacity:1}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .item-header-actions[_ngcontent-%COMP%] .item-time-divider[_ngcontent-%COMP%]{font-size:10px;color:#94a3b8;line-height:1;-webkit-user-select:none;user-select:none;flex-shrink:0;transition:opacity .15s ease}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .item-header-actions[_ngcontent-%COMP%] .item-time[_ngcontent-%COMP%]{font-size:11px;color:#64748b;white-space:nowrap;flex-shrink:0;line-height:1;transition:opacity .15s ease}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .item-header-actions[_ngcontent-%COMP%] .btn-delete-card[_ngcontent-%COMP%]{position:absolute;right:0;top:50%;transform:translateY(-50%);width:18px;height:18px;padding:0;border:none;background:transparent;border-radius:3px;color:#94a3b8;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:all .15s ease}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .item-header-actions[_ngcontent-%COMP%] .btn-delete-card[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:13px;line-height:1}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .item-header-actions[_ngcontent-%COMP%] .btn-delete-card[_ngcontent-%COMP%]:hover{color:#ef4444;background:#fee2e2}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .item-header-actions[_ngcontent-%COMP%] .btn-stop-card[_ngcontent-%COMP%]{position:absolute;right:0;top:50%;transform:translateY(-50%);width:18px;height:18px;padding:0;border:none;background:transparent;border-radius:3px;color:#ef4444;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:all .15s ease}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .item-header-actions[_ngcontent-%COMP%] .btn-stop-card[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:14px;line-height:1}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-header[_ngcontent-%COMP%] .item-header-actions[_ngcontent-%COMP%] .btn-stop-card[_ngcontent-%COMP%]:hover{color:#dc2626;background:#fee2e2;transform:translateY(-50%) scale(1.1)}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-goal[_ngcontent-%COMP%]{font-size:12.5px;color:#334155;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-footer[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10.5px;color:#94a3b8}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-footer[_ngcontent-%COMP%] .item-id[_ngcontent-%COMP%]{font-family:Fira Code,Roboto Mono,Consolas,monospace;font-size:10.5px;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1;transition:color .15s ease}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-footer[_ngcontent-%COMP%] .item-id[_ngcontent-%COMP%]:hover{color:#475569}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-item-card[_ngcontent-%COMP%] .item-footer[_ngcontent-%COMP%] .item-date[_ngcontent-%COMP%]{flex-shrink:0}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-note-item[_ngcontent-%COMP%]{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:6px;cursor:pointer;font-size:13px;color:#334155;transition:background .15s ease}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-note-item[_ngcontent-%COMP%] .note-icon[_ngcontent-%COMP%]{font-size:18px;color:#64748b}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-note-item[_ngcontent-%COMP%] .note-key-text[_ngcontent-%COMP%]{flex:1;font-weight:500}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-note-item[_ngcontent-%COMP%] .check-icon[_ngcontent-%COMP%]{font-size:18px;color:#2563eb}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-note-item[_ngcontent-%COMP%]:hover{background:#f1f5f9;color:#0f172a}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-note-item.selected[_ngcontent-%COMP%]{background:#eff6ff;color:#2563eb;font-weight:600}.vscode-dropdown-menu[_ngcontent-%COMP%] .dropdown-note-item.selected[_ngcontent-%COMP%] .note-icon[_ngcontent-%COMP%]{color:#2563eb}']})};function a4(n,t){if(n&1){let e=B();l(0,"button",10),I("click",function(){S(e);let i=m();return k(i.clearHistory())}),l(1,"span",11),g(2,"delete"),d()()}if(n&2){let e=m();N("disabled",e.isSubmitting())}}function s4(n,t){n&1&&(l(0,"div",14),g(1," \u6CA1\u6709\u6B63\u5728\u6267\u884C\u6216\u6392\u961F\u7684\u4EFB\u52A1\u3002 "),d())}function c4(n,t){n&1&&z(0,"span",22)}function l4(n,t){if(n&1&&(l(0,"span",24)(1,"span",33),g(2,"phone_android"),d(),l(3,"span",34),g(4),d()()),n&2){let e=m().$implicit,o=m(2);N("title","Device: "+o.getDeviceSerial(e)),p(4),y(o.getDeviceSerial(e))}}function d4(n,t){n&1&&(l(0,"span",25),g(1,"\xB7"),d())}function u4(n,t){if(n&1){let e=B();l(0,"button",35),I("click",function(i){S(e);let r=m().$implicit,a=m(2);return k(a.stopTask(r.session_id,i))}),l(1,"span",11),g(2,"stop_circle"),d()()}}function g4(n,t){if(n&1){let e=B();l(0,"button",36),I("click",function(i){S(e);let r=m().$implicit,a=m(2);return k(a.deleteTask(r.session_id,i))}),l(1,"span",11),g(2,"delete"),d()()}if(n&2){let e=m(3);N("disabled",e.isSubmitting())}}function p4(n,t){if(n&1){let e=B();l(0,"div",19),I("click",function(){let i=S(e).$implicit,r=m(2);return k(r.selectTask(i.session_id))}),l(1,"div",20)(2,"span",21),M(3,c4,1,0,"span",22),g(4),mt(5,"uiLabel"),d(),l(6,"div",23),M(7,l4,5,2,"span",24),M(8,d4,2,0,"span",25),l(9,"span",26),g(10),mt(11,"date"),d(),M(12,u4,3,0,"button",27),M(13,g4,3,1,"button",28),d()(),l(14,"div",29),g(15),d(),l(16,"div",30)(17,"span",31),g(18),d(),l(19,"span",32),g(20),mt(21,"date"),d()()()}if(n&2){let e=t.$implicit,o=m(2);E("selected",o.agentService.currentSessionId()===e.session_id)("running",o.getTaskStatus(e)==="running"),p(2),N("ngClass",o.getTaskStatus(e)),p(),b(o.getTaskStatus(e)==="running"?3:-1),p(),L(" ",qi(5,18,o.getTaskStatus(e))," "),p(3),b(o.getDeviceSerial(e)?7:-1),p(),b(o.getDeviceSerial(e)?8:-1),p(2),y(qt(11,20,e.start_time*1e3,"shortTime")),p(2),b(o.getTaskStatus(e)==="running"||o.getTaskStatus(e)==="paused"?12:-1),p(),b(o.getTaskStatus(e)!=="running"&&o.getTaskStatus(e)!=="paused"?13:-1),p(),N("title",Gi(e.initial_goal)),p(),L(" ",e.initial_goal||"\u672A\u547D\u540D\u4EFB\u52A1"," "),p(2),N("title",e.session_id),p(),L("ID: ",e.session_id),p(2),y(qt(21,23,e.start_time*1e3,"MM/dd/yy"))}}function f4(n,t){n&1&&(l(0,"div",14),g(1," \u6682\u65E0\u5386\u53F2\u4EFB\u52A1\u3002 "),d())}function m4(n,t){n&1&&z(0,"span",22)}function _4(n,t){if(n&1&&(l(0,"span",24)(1,"span",33),g(2,"phone_android"),d(),l(3,"span",34),g(4),d()()),n&2){let e=m().$implicit,o=m(2);N("title","Device: "+o.getDeviceSerial(e)),p(4),y(o.getDeviceSerial(e))}}function h4(n,t){n&1&&(l(0,"span",25),g(1,"\xB7"),d())}function C4(n,t){if(n&1){let e=B();l(0,"button",36),I("click",function(i){S(e);let r=m().$implicit,a=m(2);return k(a.deleteTask(r.session_id,i))}),l(1,"span",11),g(2,"delete"),d()()}if(n&2){let e=m(3);N("disabled",e.isSubmitting())}}function M4(n,t){if(n&1){let e=B();l(0,"div",19),I("click",function(){let i=S(e).$implicit,r=m(2);return k(r.selectTask(i.session_id))}),l(1,"div",20)(2,"span",21),M(3,m4,1,0,"span",22),g(4),mt(5,"uiLabel"),d(),l(6,"div",23),M(7,_4,5,2,"span",24),M(8,h4,2,0,"span",25),l(9,"span",26),g(10),mt(11,"date"),d(),M(12,C4,3,1,"button",28),d()(),l(13,"div",29),g(14),d(),l(15,"div",30)(16,"span",31),g(17),d(),l(18,"span",32),g(19),mt(20,"date"),d()()()}if(n&2){let e=t.$implicit,o=m(2);E("selected",o.agentService.currentSessionId()===e.session_id)("running",o.getTaskStatus(e)==="running"),p(2),N("ngClass",o.getTaskStatus(e)),p(),b(o.getTaskStatus(e)==="running"?3:-1),p(),L(" ",qi(5,17,o.getTaskStatus(e))," "),p(3),b(o.getDeviceSerial(e)?7:-1),p(),b(o.getDeviceSerial(e)?8:-1),p(2),y(qt(11,19,e.start_time*1e3,"shortTime")),p(2),b(o.getTaskStatus(e)!=="running"&&o.getTaskStatus(e)!=="paused"?12:-1),p(),N("title",Gi(e.initial_goal)),p(),L(" ",e.initial_goal||"\u672A\u547D\u540D\u4EFB\u52A1"," "),p(2),N("title",e.session_id),p(),L("ID: ",e.session_id),p(2),y(qt(20,22,e.start_time*1e3,"MM/dd/yy"))}}function b4(n,t){if(n&1&&(l(0,"div",12)(1,"span",13),g(2,"bolt"),d(),g(3),d(),M(4,s4,2,0,"div",14),W(5,p4,22,26,"div",15,je().trackSession,!0),l(7,"details",16)(8,"summary",17)(9,"span",13),g(10,"history"),d(),g(11),d(),l(12,"div",18),M(13,f4,2,0,"div",14),W(14,M4,21,25,"div",15,je().trackSession,!0),d()()),n&2){let e=m();p(3),L(" Active Queue (",e.activeQueue().length,") "),p(),b(e.activeQueue().length===0?4:-1),p(),G(e.activeQueue()),p(6),L(" Past Runs & History (",e.historyTasks().length,") "),p(2),b(e.historyTasks().length===0?13:-1),p(),G(e.historyTasks())}}function P4(n,t){if(n&1){let e=B();l(0,"button",42),I("click",function(){let i=S(e).$implicit,r=m(3);return k(r.selectNote(i))}),l(1,"span",43),g(2,"draft"),d(),g(3),d()}if(n&2){let e=t.$implicit,o=m(3);E("active",o.agentService.selectedNoteKey()===e),p(3),L(" ",e," ")}}function O4(n,t){if(n&1&&(l(0,"div",37)(1,"div",40),W(2,P4,4,3,"button",41,je().trackNoteKey,!0),d()()),n&2){let e=m(2);p(2),G(e.noteKeys())}}function v4(n,t){n&1&&(l(0,"div",38)(1,"div",44)(2,"span",11),g(3,"description"),d()(),l(4,"h4",45),g(5,"\u6682\u65E0\u7B14\u8BB0\u4E0E\u8BA1\u5212"),d(),l(6,"p",46),g(7,"\u6B64\u4F1A\u8BDD\u5C1A\u672A\u8BB0\u5F55\u7B14\u8BB0\u6216\u7ED3\u6784\u5316\u8BA1\u5212\u3002"),d()())}function y4(n,t){if(n&1&&(l(0,"h2",47),g(1),d()),n&2){let e=m(3);p(),y(e.parsedNote().title)}}function x4(n,t){n&1&&(l(0,"span",52),g(1,"check_box"),d())}function w4(n,t){n&1&&(l(0,"span",53),g(1,"indeterminate_check_box"),d())}function S4(n,t){n&1&&(l(0,"span",54),g(1,"check_box_outline_blank"),d())}function k4(n,t){if(n&1&&(l(0,"span"),g(1),d()),n&2){let e=t.$implicit;E("bold-segment",e.bold)("code-segment",e.code),p(),y(e.text)}}function E4(n,t){n&1&&(l(0,"span",61),g(1,"check_box"),d())}function D4(n,t){n&1&&(l(0,"span",62),g(1,"indeterminate_check_box"),d())}function I4(n,t){n&1&&(l(0,"span",63),g(1,"check_box_outline_blank"),d())}function T4(n,t){n&1&&(l(0,"span",64),g(1,"\u2022"),d())}function A4(n,t){if(n&1&&(l(0,"span"),g(1),d()),n&2){let e=t.$implicit;E("bold-segment",e.bold)("code-segment",e.code),p(),y(e.text)}}function R4(n,t){if(n&1&&(l(0,"span",65),W(1,A4,2,5,"span",56,ze),d()),n&2){let e=m().$implicit;p(),G(e.segments)}}function F4(n,t){if(n&1&&(l(0,"div",60),M(1,E4,2,0,"span",61)(2,D4,2,0,"span",62)(3,I4,2,0,"span",63)(4,T4,2,0,"span",64),M(5,R4,3,0,"span",65),d()),n&2){let e,o=t.$implicit;Ie("padding-left",o.indent>2?(o.indent-2)*12:0,"px"),N("ngClass",o.type),p(),b((e=o.type)==="checked"?1:e==="progress"?2:e==="unchecked"?3:e==="list-item"?4:-1),p(4),b(o.type!=="empty"?5:-1)}}function N4(n,t){if(n&1&&(l(0,"div",57),W(1,F4,6,5,"div",59,je().trackMarkdownLine,!0),d()),n&2){let e=m().$implicit;p(),G(e.subSteps)}}function L4(n,t){if(n&1&&(l(0,"span"),g(1),d()),n&2){let e=t.$implicit;E("bold-segment",e.bold)("code-segment",e.code),p(),y(e.text)}}function V4(n,t){if(n&1&&(l(0,"div",67)(1,"div",68)(2,"span",69),g(3),d()(),l(4,"div",70),W(5,L4,2,5,"span",56,ze),d()()),n&2){let e=t.$implicit;Ie("margin-left",e.indent>2?(e.indent-2)*12:0,"px"),N("ngClass",e.type),p(2),E("assert",e.checkKind==="assert"),p(),tt("",e.checkKind||"verify","",e.atEnd?" @end":""),p(2),G(e.segments)}}function B4(n,t){if(n&1&&(l(0,"div",58),W(1,V4,7,7,"div",66,je().trackMarkdownLine,!0),d()),n&2){let e=m().$implicit;p(),G(e.checks)}}function j4(n,t){if(n&1&&(l(0,"div",50)(1,"div",51),M(2,x4,2,0,"span",52)(3,w4,2,0,"span",53)(4,S4,2,0,"span",54),l(5,"div",55),W(6,k4,2,5,"span",56,ze),d()(),M(8,N4,3,0,"div",57),M(9,B4,3,0,"div",58),d()),n&2){let e,o=t.$implicit;N("ngClass",o.type),p(2),b((e=o.type)==="checked"?2:e==="progress"?3:e==="unchecked"?4:-1),p(4),G(o.segments),p(2),b(o.subSteps.length>0?8:-1),p(),b(o.checks.length>0?9:-1)}}function z4(n,t){if(n&1&&(l(0,"div",48),W(1,j4,10,4,"div",50,je().trackMilestone,!0),d()),n&2){let e=m(3);p(),G(e.parsedNote().milestones)}}function $4(n,t){if(n&1&&(l(0,"span"),g(1),d()),n&2){let e=t.$implicit;E("bold-segment",e.bold)("code-segment",e.code),p(),y(e.text)}}function H4(n,t){if(n&1&&(l(0,"div",73)(1,"div",68)(2,"span",69),g(3),d()(),l(4,"div",70),W(5,$4,2,5,"span",56,ze),d()()),n&2){let e=m().$implicit;Ie("margin-left",e.indent*12,"px"),N("ngClass",e.type),p(2),E("assert",e.checkKind==="assert"),p(),tt("",e.checkKind||"verify","",e.atEnd?" @end":""),p(2),G(e.segments)}}function U4(n,t){n&1&&(l(0,"span",61),g(1,"check_box"),d())}function W4(n,t){n&1&&(l(0,"span",62),g(1,"indeterminate_check_box"),d())}function G4(n,t){n&1&&(l(0,"span",63),g(1,"check_box_outline_blank"),d())}function q4(n,t){n&1&&(l(0,"span",64),g(1,"\u2022"),d())}function Y4(n,t){if(n&1&&(l(0,"span"),g(1),d()),n&2){let e=t.$implicit;E("bold-segment",e.bold)("code-segment",e.code),p(),y(e.text)}}function K4(n,t){if(n&1&&(l(0,"span",65),W(1,Y4,2,5,"span",56,ze),d()),n&2){let e=m(2).$implicit;p(),G(e.segments)}}function Z4(n,t){if(n&1&&(l(0,"div",74),M(1,U4,2,0,"span",61)(2,W4,2,0,"span",62)(3,G4,2,0,"span",63)(4,q4,2,0,"span",64),M(5,K4,3,0,"span",65),d()),n&2){let e,o=m().$implicit;Ie("margin-left",o.indent*12,"px"),N("ngClass",o.type),p(),b((e=o.type)==="checked"?1:e==="progress"?2:e==="unchecked"?3:e==="list-item"?4:-1),p(4),b(o.type!=="empty"?5:-1)}}function X4(n,t){if(n&1&&M(0,H4,7,7,"div",71)(1,Z4,6,5,"div",72),n&2){let e=t.$implicit;b(e.type==="verify"||e.type==="finding"?0:1)}}function Q4(n,t){if(n&1&&(l(0,"div",49),W(1,X4,2,1,null,null,je().trackMarkdownLine,!0),d()),n&2){let e=m(3);p(),G(e.parsedNote().otherLines)}}function J4(n,t){if(n&1&&(l(0,"div",39),M(1,y4,2,1,"h2",47),M(2,z4,3,0,"div",48),M(3,Q4,3,0,"div",49),d()),n&2){let e=m(2);p(),b(e.parsedNote().title?1:-1),p(),b(e.parsedNote().milestones.length>0?2:-1),p(),b(e.parsedNote().otherLines.length>0?3:-1)}}function e6(n,t){if(n&1&&(l(0,"div",9),M(1,O4,4,0,"div",37),M(2,v4,8,0,"div",38),M(3,J4,4,3,"div",39),d()),n&2){let e=m();p(),b(e.noteKeys().length>1?1:-1),p(),b(e.noteKeys().length===0?2:-1),p(),b(e.noteKeys().length>0?3:-1)}}var pa=class n{agentService=v(Zt);taskInput="";isSubmitting=w(!1);errorMessage=w(null);deviceSerialCache=new WeakMap;activeQueue=A(()=>this.agentService.sessions().filter(e=>{let o=this.getTaskStatus(e);return o==="running"||o==="paused"||o==="pending"}).sort((e,o)=>{let i=this.getTaskStatus(e),r=this.getTaskStatus(o),a=i==="running"||i==="paused",s=r==="running"||r==="paused";return a&&!s?-1:!a&&s?1:(e.start_time||0)-(o.start_time||0)}));historyTasks=A(()=>this.agentService.sessions().filter(t=>{let e=this.getTaskStatus(t);return e==="completed"||e==="failed"||e==="cancelled"}));submitTask(){let t=this.taskInput.trim();t&&(this.isSubmitting.set(!0),this.errorMessage.set(null),this.agentService.runTask(t).subscribe({next:e=>{this.taskInput="",this.isSubmitting.set(!1),this.agentService.fetchStatus()},error:e=>{console.error("Failed to submit task:",e),this.isSubmitting.set(!1),this.errorMessage.set(e.error?.detail||"\u6267\u884C\u5668\u5FD9\u788C\uFF0C\u8BF7\u7B49\u5F85\u5F53\u524D\u4EFB\u52A1\u7ED3\u675F\u3002"),setTimeout(()=>{this.errorMessage.set(null)},5e3)}}))}stopTask(t,e){e.stopPropagation(),this.isSubmitting.set(!0),this.errorMessage.set(null),this.agentService.stopTask(t,!1),setTimeout(()=>{this.isSubmitting.set(!1)},400)}stopTasks(t=!1){this.isSubmitting.set(!0),this.errorMessage.set(null),this.agentService.stopTask(t),setTimeout(()=>{this.isSubmitting.set(!1)},400)}clearHistory(){confirm("\u786E\u5B9A\u6E05\u7A7A\u6240\u6709\u4EFB\u52A1\u548C\u5386\u53F2\u8BB0\u5F55\uFF1F\u6B64\u64CD\u4F5C\u65E0\u6CD5\u64A4\u9500\u3002")&&(this.isSubmitting.set(!0),this.errorMessage.set(null),this.agentService.clearAllHistory().subscribe({next:()=>{this.isSubmitting.set(!1)},error:t=>{console.error("Failed to clear history:",t),this.isSubmitting.set(!1),this.errorMessage.set(t.error?.detail||"\u6E05\u7A7A\u5386\u53F2\u8BB0\u5F55\u5931\u8D25\u3002")}}))}deleteTask(t,e){e.stopPropagation(),confirm("\u786E\u5B9A\u5220\u9664\u6B64\u4EFB\u52A1\uFF1F\u6B64\u64CD\u4F5C\u65E0\u6CD5\u64A4\u9500\u3002")&&(this.isSubmitting.set(!0),this.errorMessage.set(null),this.agentService.deleteSession(t).subscribe({next:()=>{this.isSubmitting.set(!1)},error:o=>{console.error(`\u5220\u9664\u4EFB\u52A1\u5931\u8D25\uFF1A${t}:`,o),this.isSubmitting.set(!1),this.errorMessage.set(o.error?.detail||"\u5220\u9664\u4EFB\u52A1\u5931\u8D25\u3002")}}))}getTaskStatus(t){if(t.status){let e=t.status.toLowerCase();if(e==="completed"||e==="success"||e==="failed"||e==="cancelled")return e==="success"?"completed":e;if(e==="running"||e==="paused"||e==="pending")return e}return t.session_id===this.agentService.runningSessionId()&&(this.agentService.agentStatus()==="running"||this.agentService.agentStatus()==="paused")?this.agentService.agentStatus():"completed"}getDeviceSerial(t){if(this.deviceSerialCache.has(t))return this.deviceSerialCache.get(t)??null;let e=null,o=t.device_serial||t.device_id;if(o&&o!=="pending"&&o!=="null"&&o!=="undefined")e=o;else if(t.device_info)try{let i=typeof t.device_info=="string"?JSON.parse(t.device_info):t.device_info,r=i?.device_id||i?.device_serial;r&&r!=="pending"&&r!=="null"&&r!=="undefined"&&(e=r)}catch(i){}return this.deviceSerialCache.set(t,e),e}selectTask(t){this.agentService.selectSession(t,!0)}currentNoteContent=A(()=>{let t=this.agentService.currentNotes(),e=this.agentService.selectedNoteKey();return t[e]||""});noteKeys=A(()=>Object.keys(this.agentService.currentNotes()).filter(t=>t.toLowerCase().endsWith(".md")));parsedNote=A(()=>this.getParsedNote(this.currentNoteContent()));getParsedNote(t){return ec(t)}getParsedNoteLines(t){return Js(t)}selectNote(t){this.agentService.selectedNoteKey.set(t)}trackSession(t,e){return e.session_id}trackNoteKey(t,e){return e}trackMilestone(t,e){return e.index}trackMarkdownLine(t,e){return t}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=Ae({type:n,selectors:[["app-chat-interface"]],decls:18,vars:7,consts:[[1,"chat-interface-container"],[1,"chat-header"],[1,"tab-selector-bar"],[1,"tab-selector-btn",3,"click"],[1,"material-symbols-outlined","tab-icon"],[1,"tab-text"],[1,"header-right"],["title","\u6E05\u7A7A\u6240\u6709\u4EFB\u52A1\u4E0E\u5386\u53F2","aria-label","\u6E05\u7A7A\u6240\u6709\u4EFB\u52A1\u4E0E\u5386\u53F2",1,"btn-clear-history",3,"disabled"],[1,"chat-messages"],[1,"notes-tab-content"],["title","\u6E05\u7A7A\u6240\u6709\u4EFB\u52A1\u4E0E\u5386\u53F2","aria-label","\u6E05\u7A7A\u6240\u6709\u4EFB\u52A1\u4E0E\u5386\u53F2",1,"btn-clear-history",3,"click","disabled"],[1,"material-symbols-outlined"],[1,"queue-section-header"],[1,"material-symbols-outlined","section-icon"],[1,"empty-section-placeholder"],[1,"task-card",3,"selected","running"],["open","",1,"history-section"],[1,"history-summary"],[1,"history-list-wrapper"],[1,"task-card",3,"click"],[1,"task-card-header"],[1,"task-badge",3,"ngClass"],[1,"status-dot"],[1,"task-card-header-actions"],[1,"task-device",3,"title"],[1,"task-time-divider"],[1,"task-time"],["type","button","title","\u505C\u6B62\u6B64\u4EFB\u52A1","aria-label","\u505C\u6B62\u6B64\u4EFB\u52A1",1,"btn-stop-card"],["type","button","title","\u5220\u9664\u6B64\u4EFB\u52A1","aria-label","\u5220\u9664\u6B64\u4EFB\u52A1",1,"btn-delete-card",3,"disabled"],[1,"task-goal",3,"title"],[1,"task-card-footer"],[1,"task-id",3,"title"],[1,"task-date"],[1,"material-symbols-outlined","device-icon"],[1,"device-name"],["type","button","title","\u505C\u6B62\u6B64\u4EFB\u52A1","aria-label","\u505C\u6B62\u6B64\u4EFB\u52A1",1,"btn-stop-card",3,"click"],["type","button","title","\u5220\u9664\u6B64\u4EFB\u52A1","aria-label","\u5220\u9664\u6B64\u4EFB\u52A1",1,"btn-delete-card",3,"click","disabled"],[1,"notes-selector-container"],[1,"empty-notes-container"],[1,"note-viewer-cards"],[1,"notes-selector-list"],[1,"note-selector-pill",3,"active"],[1,"note-selector-pill",3,"click"],[1,"material-symbols-outlined","pill-icon"],[1,"empty-notes-icon"],[1,"empty-notes-title"],[1,"empty-notes-subtitle"],[1,"note-title"],[1,"milestones-container"],[1,"other-lines-container"],[1,"milestone-block",3,"ngClass"],[1,"milestone-title-row"],[1,"material-symbols-outlined","milestone-status-icon","checked"],[1,"material-symbols-outlined","milestone-status-icon","progress"],[1,"material-symbols-outlined","milestone-status-icon","unchecked"],[1,"milestone-text"],[3,"bold-segment","code-segment"],[1,"milestone-substeps"],[1,"milestone-checks-container"],[1,"substep-row",3,"ngClass","padding-left"],[1,"substep-row",3,"ngClass"],[1,"material-symbols-outlined","check-icon","checked"],[1,"material-symbols-outlined","check-icon","progress"],[1,"material-symbols-outlined","check-icon","unchecked"],[1,"bullet"],[1,"line-text"],[1,"verification-card",3,"ngClass","margin-left"],[1,"verification-card",3,"ngClass"],[1,"card-header"],[1,"card-tag"],[1,"card-body"],[1,"verification-card","standalone",3,"ngClass","margin-left"],[1,"md-line",3,"ngClass","margin-left"],[1,"verification-card","standalone",3,"ngClass"],[1,"md-line",3,"ngClass"]],template:function(e,o){e&1&&(l(0,"div",0)(1,"header",1)(2,"div",2)(3,"button",3),I("click",function(){return o.agentService.activeTab.set("tasks")}),l(4,"span",4),g(5,"list_alt"),d(),l(6,"span",5),g(7,"\u4EFB\u52A1\u961F\u5217"),d()(),l(8,"button",3),I("click",function(){return o.agentService.activeTab.set("notes")}),l(9,"span",4),g(10,"description"),d(),l(11,"span",5),g(12,"\u7B14\u8BB0\u4E0E\u8BA1\u5212"),d()()(),l(13,"div",6),M(14,a4,3,1,"button",7),d()(),l(15,"main",8),M(16,b4,16,4),M(17,e6,4,3,"div",9),d()()),e&2&&(p(3),E("active",o.agentService.activeTab()==="tasks"),p(5),E("active",o.agentService.activeTab()==="notes"),p(6),b(o.agentService.sessions().length>0&&o.agentService.activeTab()==="tasks"?14:-1),p(2),b(o.agentService.activeTab()==="tasks"?16:-1),p(),b(o.agentService.activeTab()==="notes"?17:-1))},dependencies:[Qo,Ki,Et,ga,Zi],styles:['[_nghost-%COMP%]{display:flex;flex-direction:column;height:100%;width:100%;overflow:hidden}.chat-interface-container[_ngcontent-%COMP%]{container-type:inline-size;display:flex;flex-direction:column;height:100%;background:#fff;box-sizing:border-box}.chat-interface-container[_ngcontent-%COMP%] .chat-header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;gap:16px;height:60px;padding:0 20px;border-bottom:1px solid rgba(0,0,0,.08);background:#fff;box-sizing:border-box}.chat-interface-container[_ngcontent-%COMP%] .chat-header[_ngcontent-%COMP%] .tab-selector-bar[_ngcontent-%COMP%]{display:flex;height:36px;box-sizing:border-box;background:#f1f5f9b8;backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);border:1px solid rgba(226,232,240,.85);border-radius:18px;padding:3px;gap:3px;align-items:center;flex-shrink:0;box-shadow:0 2px 8px -1px #0f172a0a,inset 0 1px 1px #fffc}.chat-interface-container[_ngcontent-%COMP%] .chat-header[_ngcontent-%COMP%] .tab-selector-bar[_ngcontent-%COMP%] .tab-selector-btn[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:30px;padding:0 14px;box-sizing:border-box;border:none;background:transparent;border-radius:15px;font-size:13px;font-weight:600;color:#64748b;cursor:pointer;line-height:1;transition:all .2s cubic-bezier(.4,0,.2,1);white-space:nowrap}.chat-interface-container[_ngcontent-%COMP%] .chat-header[_ngcontent-%COMP%] .tab-selector-bar[_ngcontent-%COMP%] .tab-selector-btn[_ngcontent-%COMP%] .tab-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center}.chat-interface-container[_ngcontent-%COMP%] .chat-header[_ngcontent-%COMP%] .tab-selector-bar[_ngcontent-%COMP%] .tab-selector-btn[_ngcontent-%COMP%]:hover:not(.active){color:#0f172a;background:#ffffffb3}.chat-interface-container[_ngcontent-%COMP%] .chat-header[_ngcontent-%COMP%] .tab-selector-bar[_ngcontent-%COMP%] .tab-selector-btn.active[_ngcontent-%COMP%]{background:#fff;color:#2563eb;font-weight:700;box-shadow:0 2px 6px #0000000f,0 1px 2px #00000005}.chat-interface-container[_ngcontent-%COMP%] .chat-header[_ngcontent-%COMP%] .header-right[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:flex-end;flex:1 1 0;min-width:max-content;flex-shrink:0}.chat-interface-container[_ngcontent-%COMP%] .chat-header[_ngcontent-%COMP%] .header-right[_ngcontent-%COMP%] .btn-resume-task[_ngcontent-%COMP%]{padding:6px 14px;background:linear-gradient(135deg,#2563ebeb,#1a73e8d9);backdrop-filter:blur(14px) saturate(180%);-webkit-backdrop-filter:blur(14px) saturate(180%);border:1px solid rgba(255,255,255,.35);border-radius:16px;font-size:13.5px;font-weight:600;color:#fff;cursor:pointer;display:flex;align-items:center;gap:5px;transition:all .2s cubic-bezier(.4,0,.2,1);margin-right:8px;box-shadow:0 4px 14px #2563eb4d,inset 0 1px 1px #ffffff73}.chat-interface-container[_ngcontent-%COMP%] .chat-header[_ngcontent-%COMP%] .header-right[_ngcontent-%COMP%] .btn-resume-task[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:16px;color:inherit}.chat-interface-container[_ngcontent-%COMP%] .chat-header[_ngcontent-%COMP%] .header-right[_ngcontent-%COMP%] .btn-resume-task[_ngcontent-%COMP%]:hover{background:linear-gradient(135deg,#2563eb,#1a73e8f2);border-color:#fff9;box-shadow:0 6px 18px #2563eb6b,inset 0 1px 1px #fff9;transform:translateY(-.5px)}.chat-interface-container[_ngcontent-%COMP%] .chat-header[_ngcontent-%COMP%] .header-right[_ngcontent-%COMP%] .btn-resume-task[_ngcontent-%COMP%]:active{transform:scale(.97)}.chat-interface-container[_ngcontent-%COMP%] .chat-header[_ngcontent-%COMP%] .header-right[_ngcontent-%COMP%] .btn-clear-history[_ngcontent-%COMP%]{width:32px;height:32px;padding:0;box-sizing:border-box;background:#ffffffb8;backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);border:1px solid rgba(203,213,225,.85);border-radius:50%;color:#64748b;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px -1px #0f172a0a,inset 0 1px 1px #ffffffe6;transition:all .2s cubic-bezier(.4,0,.2,1)}.chat-interface-container[_ngcontent-%COMP%] .chat-header[_ngcontent-%COMP%] .header-right[_ngcontent-%COMP%] .btn-clear-history[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:16px;color:inherit}.chat-interface-container[_ngcontent-%COMP%] .chat-header[_ngcontent-%COMP%] .header-right[_ngcontent-%COMP%] .btn-clear-history[_ngcontent-%COMP%]:hover:not(:disabled){background:#fef2f2;color:#ef4444;border-color:#fca5a5;box-shadow:0 3px 10px #ef444426;transform:scale(1.05)}.chat-interface-container[_ngcontent-%COMP%] .chat-header[_ngcontent-%COMP%] .header-right[_ngcontent-%COMP%] .btn-clear-history[_ngcontent-%COMP%]:disabled{opacity:.5;cursor:not-allowed}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%]{flex:1;overflow-y:auto;padding:12px 12px 100px;display:flex;flex-direction:column;gap:8px;background:#fff}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%]::-webkit-scrollbar{width:5px}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%]::-webkit-scrollbar-thumb{background:#94a3b84d;border-radius:4px}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .queue-section-header[_ngcontent-%COMP%]{font-size:11.5px;font-weight:700;color:#475569;margin:6px 0 2px;display:flex;align-items:center;gap:6px}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .queue-section-header[_ngcontent-%COMP%] .section-icon[_ngcontent-%COMP%]{font-size:14px;color:inherit}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .empty-section-placeholder[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;background:#f1f5f9;border:1px dashed #cbd5e1;border-radius:8px;padding:12px;color:#64748b;font-size:12px;text-align:center}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .history-section[_ngcontent-%COMP%]{margin-top:12px;border-top:1px solid rgba(226,232,240,.8);padding-top:12px}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .history-section[open][_ngcontent-%COMP%] .history-summary[_ngcontent-%COMP%]{margin-bottom:8px}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .history-section[_ngcontent-%COMP%] .history-summary[_ngcontent-%COMP%]{font-size:11.5px;font-weight:700;color:#475569;cursor:pointer;outline:none;-webkit-user-select:none;user-select:none;list-style:none;display:flex;align-items:center;gap:6px;padding:4px 6px;margin-left:-6px;border-radius:6px;transition:background .2s}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .history-section[_ngcontent-%COMP%] .history-summary[_ngcontent-%COMP%] .section-icon[_ngcontent-%COMP%]{font-size:14px;color:inherit}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .history-section[_ngcontent-%COMP%] .history-summary[_ngcontent-%COMP%]::-webkit-details-marker{display:none}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .history-section[_ngcontent-%COMP%] .history-summary[_ngcontent-%COMP%]:hover{background:#f1f5f9;color:#1e293b}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .history-section[_ngcontent-%COMP%] .history-list-wrapper[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:8px}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%]{background:#fff;border:1px solid rgba(226,232,240,.8);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:6px;cursor:pointer;position:relative;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #00000003}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%]:hover{transform:translateY(-1px);border-color:#cbd5e1;box-shadow:0 3px 8px #94a3b814}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%]:hover .task-card-header[_ngcontent-%COMP%] .task-card-header-actions[_ngcontent-%COMP%]:has(.btn-delete-card) .task-time[_ngcontent-%COMP%], .chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%]:hover .task-card-header[_ngcontent-%COMP%] .task-card-header-actions[_ngcontent-%COMP%]:has(.btn-delete-card) .task-time-divider[_ngcontent-%COMP%], .chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%]:hover .task-card-header[_ngcontent-%COMP%] .task-card-header-actions[_ngcontent-%COMP%]:has(.btn-stop-card) .task-time[_ngcontent-%COMP%], .chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%]:hover .task-card-header[_ngcontent-%COMP%] .task-card-header-actions[_ngcontent-%COMP%]:has(.btn-stop-card) .task-time-divider[_ngcontent-%COMP%]{opacity:0}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%]:hover .task-card-header[_ngcontent-%COMP%] .task-card-header-actions[_ngcontent-%COMP%] .btn-delete-card[_ngcontent-%COMP%], .chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%]:hover .task-card-header[_ngcontent-%COMP%] .task-card-header-actions[_ngcontent-%COMP%] .btn-stop-card[_ngcontent-%COMP%]{opacity:1;pointer-events:auto}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card.selected[_ngcontent-%COMP%]{border-color:#3b82f6;box-shadow:0 0 0 1px #3b82f6,0 4px 12px #3b82f614;background:#fff}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card.running[_ngcontent-%COMP%]{border-color:#10b981;box-shadow:0 0 0 1px #10b981,0 4px 12px #10b98114}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card.running.selected[_ngcontent-%COMP%]{border-color:#3b82f6;box-shadow:0 0 0 1px #3b82f6,0 4px 12px #3b82f614}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;gap:8px;min-width:0}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-badge[_ngcontent-%COMP%]{flex-shrink:0;display:inline-flex;align-items:center;font-size:10.5px;font-weight:700;padding:2px 5px;border-radius:4px;letter-spacing:.05em;border:1px solid #e2e8f0;background:#fafafa;color:#64748b}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-badge[_ngcontent-%COMP%]:before{content:"";width:4px;height:4px;border-radius:50%;display:inline-block;margin-right:4px}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-badge.running[_ngcontent-%COMP%]{background:#fafafa;color:#1f1f1f;border-color:#1f1f1f}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-badge.running[_ngcontent-%COMP%]:before{background-color:#1f1f1f;animation:_ngcontent-%COMP%_pulse-black-dot-small 1.5s infinite ease-in-out}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-badge.paused[_ngcontent-%COMP%]{background:#fff7ed;color:#c2410c;border-color:#fdba74}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-badge.paused[_ngcontent-%COMP%]:before{background-color:#f97316}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-badge.completed[_ngcontent-%COMP%]{background:#fafafa;color:#1f1f1f;border-color:#e2e8f0}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-badge.completed[_ngcontent-%COMP%]:before{background-color:#1f1f1f}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-badge.pending[_ngcontent-%COMP%]{background:#fafafa;color:#64748b;border-color:#e2e8f0}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-badge.pending[_ngcontent-%COMP%]:before{background-color:#94a3b8}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-badge.failed[_ngcontent-%COMP%]{background:#fafafa;color:#ef4444;border-color:#fee2e2}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-badge.failed[_ngcontent-%COMP%]:before{background-color:#ef4444}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-badge.cancelled[_ngcontent-%COMP%]{background:#fafafa;color:#d97706;border-color:#fef3c7}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-badge.cancelled[_ngcontent-%COMP%]:before{background-color:#f59e0b}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-badge[_ngcontent-%COMP%] .status-dot[_ngcontent-%COMP%]{display:none}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-card-header-actions[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px;position:relative;min-width:0;flex-shrink:1;justify-content:flex-end}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-card-header-actions[_ngcontent-%COMP%] .task-device[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:2.5px;min-width:0;flex-shrink:1;font-size:11px;color:#94a3b8;line-height:1;cursor:default;transition:color .15s ease,opacity .15s ease}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-card-header-actions[_ngcontent-%COMP%] .task-device[_ngcontent-%COMP%] .device-icon[_ngcontent-%COMP%]{font-size:12.5px;width:12.5px;height:12.5px;line-height:12.5px;color:#94a3b8;opacity:.75;flex-shrink:0}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-card-header-actions[_ngcontent-%COMP%] .task-device[_ngcontent-%COMP%] .device-name[_ngcontent-%COMP%]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:inherit;letter-spacing:-.15px}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-card-header-actions[_ngcontent-%COMP%] .task-device[_ngcontent-%COMP%]:hover{color:#64748b}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-card-header-actions[_ngcontent-%COMP%] .task-device[_ngcontent-%COMP%]:hover .device-icon[_ngcontent-%COMP%]{color:#64748b;opacity:1}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-card-header-actions[_ngcontent-%COMP%] .task-time-divider[_ngcontent-%COMP%]{font-size:10px;color:#cbd5e1;line-height:1;-webkit-user-select:none;user-select:none;flex-shrink:0;transition:opacity .15s ease}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-card-header-actions[_ngcontent-%COMP%] .task-time[_ngcontent-%COMP%]{font-size:11.5px;color:#94a3b8;white-space:nowrap;flex-shrink:0;line-height:1;transition:opacity .15s ease}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-card-header-actions[_ngcontent-%COMP%] .btn-delete-card[_ngcontent-%COMP%]{position:absolute;right:0;top:50%;transform:translateY(-50%);width:20px;height:20px;padding:0;border:none;background:transparent;border-radius:4px;color:#94a3b8;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:all .15s ease}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-card-header-actions[_ngcontent-%COMP%] .btn-delete-card[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:14px;line-height:1}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-card-header-actions[_ngcontent-%COMP%] .btn-delete-card[_ngcontent-%COMP%]:hover:not(:disabled){color:#ef4444;background:#fee2e2}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-card-header-actions[_ngcontent-%COMP%] .btn-delete-card[_ngcontent-%COMP%]:disabled{opacity:.3;cursor:not-allowed}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-card-header-actions[_ngcontent-%COMP%] .btn-stop-card[_ngcontent-%COMP%]{position:absolute;right:0;top:50%;transform:translateY(-50%);width:20px;height:20px;padding:0;border:none;background:transparent;border-radius:4px;color:#ef4444;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:all .15s ease}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-card-header-actions[_ngcontent-%COMP%] .btn-stop-card[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:15px;line-height:1}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-card-header-actions[_ngcontent-%COMP%] .btn-stop-card[_ngcontent-%COMP%]:hover:not(:disabled){color:#dc2626;background:#fee2e2;transform:translateY(-50%) scale(1.1)}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-header[_ngcontent-%COMP%] .task-card-header-actions[_ngcontent-%COMP%] .btn-stop-card[_ngcontent-%COMP%]:disabled{opacity:.3;cursor:not-allowed}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-goal[_ngcontent-%COMP%]{font-size:12.5px;font-weight:500;color:#1e293b;line-height:1.4;word-break:break-word;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-footer[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid rgba(241,245,249,.8);padding-top:6px;font-size:11.5px;color:#94a3b8}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-footer[_ngcontent-%COMP%] .task-id[_ngcontent-%COMP%]{font-family:Fira Code,Roboto Mono,Consolas,monospace;font-size:11px;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1;transition:color .15s ease}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-footer[_ngcontent-%COMP%] .task-id[_ngcontent-%COMP%]:hover{color:#475569}.chat-interface-container[_ngcontent-%COMP%] .chat-messages[_ngcontent-%COMP%] .task-card[_ngcontent-%COMP%] .task-card-footer[_ngcontent-%COMP%] .task-date[_ngcontent-%COMP%]{flex-shrink:0;font-size:11px;color:#94a3b8}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:16px;height:100%}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .notes-selector-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:8px}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .notes-selector-container[_ngcontent-%COMP%] .selector-title[_ngcontent-%COMP%]{font-size:11px;font-weight:700;color:#94a3b8;letter-spacing:.05em}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .notes-selector-container[_ngcontent-%COMP%] .notes-selector-list[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:8px}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .notes-selector-container[_ngcontent-%COMP%] .notes-selector-list[_ngcontent-%COMP%] .note-selector-pill[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid #e2e8f0;background:#fff;border-radius:20px;font-size:13px;font-weight:500;color:#475569;cursor:pointer;transition:all .15s ease}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .notes-selector-container[_ngcontent-%COMP%] .notes-selector-list[_ngcontent-%COMP%] .note-selector-pill[_ngcontent-%COMP%] .pill-icon[_ngcontent-%COMP%]{font-size:15px}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .notes-selector-container[_ngcontent-%COMP%] .notes-selector-list[_ngcontent-%COMP%] .note-selector-pill[_ngcontent-%COMP%]:hover{background:#f8fafc;border-color:#cbd5e1;color:#1e293b}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .notes-selector-container[_ngcontent-%COMP%] .notes-selector-list[_ngcontent-%COMP%] .note-selector-pill.active[_ngcontent-%COMP%]{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8;font-weight:600}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .empty-notes-container[_ngcontent-%COMP%]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;margin:auto 0;text-align:center;-webkit-user-select:none;user-select:none;animation:_ngcontent-%COMP%_fadeIn .25s cubic-bezier(.16,1,.3,1)}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .empty-notes-container[_ngcontent-%COMP%] .empty-notes-icon[_ngcontent-%COMP%]{width:52px;height:52px;border-radius:50%;background:#f1f5f9;border:1px solid #e2e8f0;display:flex;align-items:center;justify-content:center;margin-bottom:14px;box-shadow:0 1px 3px #00000005}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .empty-notes-container[_ngcontent-%COMP%] .empty-notes-icon[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:26px;color:#94a3b8}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .empty-notes-container[_ngcontent-%COMP%] .empty-notes-title[_ngcontent-%COMP%]{font-family:Google Sans,Google Sans Text,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;font-weight:600;color:#1e293b;margin:0 0 6px}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .empty-notes-container[_ngcontent-%COMP%] .empty-notes-subtitle[_ngcontent-%COMP%]{font-family:Google Sans,Google Sans Text,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:12.5px;color:#64748b;line-height:1.5;max-width:240px;margin:0}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%]{display:flex;flex-direction:column;flex:1;padding:16px 8px;overflow-y:auto}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .note-title[_ngcontent-%COMP%]{font-size:14px;font-weight:700;color:#1f1f1f;margin-top:0;margin-bottom:20px;font-family:Google Sans,Google Sans Text,Inter,sans-serif}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .code-segment[_ngcontent-%COMP%]{font-family:Fira Code,Roboto Mono,Consolas,monospace;background-color:#f1f3f4;color:#1967d2;padding:2px 6px;border-radius:4px;font-size:14px;margin:0 2px;word-break:break-all;font-weight:400}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .checked[_ngcontent-%COMP%] .code-segment[_ngcontent-%COMP%]{color:#a1a1aa;background-color:#f8f9fa}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .milestones-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:6px;margin-bottom:24px}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%]{display:flex;flex-direction:column}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .milestone-block.checked[_ngcontent-%COMP%] .milestone-title-row[_ngcontent-%COMP%] .milestone-status-icon.checked[_ngcontent-%COMP%]{opacity:.7}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .milestone-block.checked[_ngcontent-%COMP%] .milestone-title-row[_ngcontent-%COMP%] .milestone-text[_ngcontent-%COMP%]{color:#a1a1aa}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-title-row[_ngcontent-%COMP%]{display:flex;align-items:flex-start;gap:10px}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-title-row[_ngcontent-%COMP%] .milestone-status-icon[_ngcontent-%COMP%]{font-size:20px;-webkit-user-select:none;user-select:none;margin-top:3px;font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 24}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-title-row[_ngcontent-%COMP%] .milestone-status-icon.checked[_ngcontent-%COMP%], .chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-title-row[_ngcontent-%COMP%] .milestone-status-icon.progress[_ngcontent-%COMP%]{color:#1a73e8}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-title-row[_ngcontent-%COMP%] .milestone-status-icon.unchecked[_ngcontent-%COMP%]{color:#cbd5e1}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-title-row[_ngcontent-%COMP%] .milestone-text[_ngcontent-%COMP%]{font-family:Google Sans,Google Sans Text,Inter,sans-serif;color:#1f1f1f;font-size:14px;line-height:1.8;font-weight:400;word-break:break-word;flex:1}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-title-row[_ngcontent-%COMP%] .milestone-text[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:inherit}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-title-row[_ngcontent-%COMP%] .milestone-text[_ngcontent-%COMP%] .bold-segment[_ngcontent-%COMP%]{font-weight:inherit;color:inherit}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-substeps[_ngcontent-%COMP%]{margin-top:8px;display:flex;flex-direction:column;gap:10px;padding-left:28px}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-substeps[_ngcontent-%COMP%] .substep-row[_ngcontent-%COMP%]{display:flex;align-items:flex-start;gap:10px;font-family:Google Sans,Google Sans Text,Inter,sans-serif;color:#1f1f1f;font-size:14px;line-height:1.8}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-substeps[_ngcontent-%COMP%] .substep-row[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:inherit}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-substeps[_ngcontent-%COMP%] .substep-row.checked[_ngcontent-%COMP%]{color:#a1a1aa}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-substeps[_ngcontent-%COMP%] .substep-row.checked[_ngcontent-%COMP%] .check-icon.checked[_ngcontent-%COMP%]{opacity:.7}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-substeps[_ngcontent-%COMP%] .substep-row[_ngcontent-%COMP%] .check-icon[_ngcontent-%COMP%]{font-size:20px;-webkit-user-select:none;user-select:none;margin-top:3px;font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 24}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-substeps[_ngcontent-%COMP%] .substep-row[_ngcontent-%COMP%] .check-icon.checked[_ngcontent-%COMP%], .chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-substeps[_ngcontent-%COMP%] .substep-row[_ngcontent-%COMP%] .check-icon.progress[_ngcontent-%COMP%]{color:#1a73e8}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-substeps[_ngcontent-%COMP%] .substep-row[_ngcontent-%COMP%] .check-icon.unchecked[_ngcontent-%COMP%]{color:#cbd5e1}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-substeps[_ngcontent-%COMP%] .substep-row[_ngcontent-%COMP%] .bullet[_ngcontent-%COMP%]{color:#9ca3af;font-weight:700;-webkit-user-select:none;user-select:none;padding-left:2px}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-substeps[_ngcontent-%COMP%] .substep-row[_ngcontent-%COMP%] .line-text[_ngcontent-%COMP%]{word-break:break-word;color:inherit}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-substeps[_ngcontent-%COMP%] .substep-row[_ngcontent-%COMP%] .line-text[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:inherit}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-substeps[_ngcontent-%COMP%] .substep-row[_ngcontent-%COMP%] .line-text[_ngcontent-%COMP%] .bold-segment[_ngcontent-%COMP%]{font-weight:inherit;color:inherit}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .milestone-block[_ngcontent-%COMP%] .milestone-checks-container[_ngcontent-%COMP%]{margin-top:8px;padding-left:28px;display:flex;flex-direction:column;gap:8px}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .verification-card[_ngcontent-%COMP%]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:8px 12px;display:flex;flex-direction:column;gap:4px}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .verification-card.standalone[_ngcontent-%COMP%]{margin-top:8px;margin-bottom:8px}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .verification-card[_ngcontent-%COMP%] .card-header[_ngcontent-%COMP%]{display:flex;align-items:center}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .verification-card[_ngcontent-%COMP%] .card-header[_ngcontent-%COMP%] .card-tag[_ngcontent-%COMP%]{font-family:Google Sans Text,Inter,-apple-system,sans-serif;font-size:10.5px;font-weight:600;line-height:1;letter-spacing:.6px;text-transform:uppercase;color:#64748b}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .verification-card[_ngcontent-%COMP%] .card-header[_ngcontent-%COMP%] .card-tag.assert[_ngcontent-%COMP%]{color:#0284c7}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .verification-card[_ngcontent-%COMP%] .card-body[_ngcontent-%COMP%]{font-family:inherit;font-size:13.5px;line-height:1.6;color:#334155;word-break:break-word}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .verification-card[_ngcontent-%COMP%] .card-body[_ngcontent-%COMP%] .bold-segment[_ngcontent-%COMP%]{font-weight:600;color:#1e293b}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .verification-card[_ngcontent-%COMP%] .card-body[_ngcontent-%COMP%] .code-segment[_ngcontent-%COMP%]{font-family:Fira Code,Roboto Mono,Consolas,monospace;font-size:12px;background:#f1f5f9;color:#0f172a;padding:1.5px 6px;border-radius:4px;border:1px solid #e2e8f0}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .verification-card.finding[_ngcontent-%COMP%]{background:#fffbeb;border-color:#fef3c7}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .verification-card.finding[_ngcontent-%COMP%] .card-header[_ngcontent-%COMP%] .card-tag[_ngcontent-%COMP%]{color:#b45309}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .verification-card.finding[_ngcontent-%COMP%] .card-body[_ngcontent-%COMP%]{color:#92400e}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .other-lines-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:8px 4px}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .other-lines-container[_ngcontent-%COMP%] .md-line[_ngcontent-%COMP%]{display:flex;align-items:flex-start;gap:10px;margin-bottom:14px;min-height:22px;font-family:Google Sans,Google Sans Text,Inter,sans-serif;color:#1f1f1f;font-size:14px;line-height:1.6}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .other-lines-container[_ngcontent-%COMP%] .md-line.empty[_ngcontent-%COMP%]{height:12px}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .other-lines-container[_ngcontent-%COMP%] .md-line.h1[_ngcontent-%COMP%]{font-size:14px;font-weight:700;margin-top:24px;margin-bottom:12px;border-bottom:1px solid #e5e7eb;padding-bottom:6px}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .other-lines-container[_ngcontent-%COMP%] .md-line.h2[_ngcontent-%COMP%]{font-size:14px;font-weight:700;margin-top:20px;margin-bottom:10px}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .other-lines-container[_ngcontent-%COMP%] .md-line.h3[_ngcontent-%COMP%]{font-size:14px;font-weight:700;margin-top:14px;margin-bottom:8px}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .other-lines-container[_ngcontent-%COMP%] .md-line.checked[_ngcontent-%COMP%]{color:#a1a1aa}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .other-lines-container[_ngcontent-%COMP%] .md-line.checked[_ngcontent-%COMP%] .check-icon[_ngcontent-%COMP%]{color:#1a73e8;opacity:.7}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .other-lines-container[_ngcontent-%COMP%] .md-line.progress[_ngcontent-%COMP%] .check-icon[_ngcontent-%COMP%]{color:#1a73e8}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .other-lines-container[_ngcontent-%COMP%] .md-line.unchecked[_ngcontent-%COMP%] .check-icon[_ngcontent-%COMP%]{color:#cbd5e1}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .other-lines-container[_ngcontent-%COMP%] .md-line.list-item[_ngcontent-%COMP%] .bullet[_ngcontent-%COMP%]{color:#9ca3af;font-weight:700;-webkit-user-select:none;user-select:none}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .other-lines-container[_ngcontent-%COMP%] .md-line[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:inherit}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .other-lines-container[_ngcontent-%COMP%] .md-line[_ngcontent-%COMP%] .check-icon[_ngcontent-%COMP%]{font-size:20px;-webkit-user-select:none;user-select:none;margin-top:1px;font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 24}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .other-lines-container[_ngcontent-%COMP%] .md-line[_ngcontent-%COMP%] .line-text[_ngcontent-%COMP%]{word-break:break-word;color:inherit}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .other-lines-container[_ngcontent-%COMP%] .md-line[_ngcontent-%COMP%] .line-text[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:inherit}.chat-interface-container[_ngcontent-%COMP%] .notes-tab-content[_ngcontent-%COMP%] .note-viewer-cards[_ngcontent-%COMP%] .other-lines-container[_ngcontent-%COMP%] .md-line[_ngcontent-%COMP%] .line-text[_ngcontent-%COMP%] .bold-segment[_ngcontent-%COMP%]{font-weight:inherit;color:inherit}@keyframes _ngcontent-%COMP%_pulse{0%{transform:scale(.85);opacity:.6}50%{transform:scale(1.15);opacity:1}to{transform:scale(.85);opacity:.6}}@keyframes _ngcontent-%COMP%_bannerSlideIn{0%{transform:translateY(5px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes _ngcontent-%COMP%_fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes _ngcontent-%COMP%_pulse-black-dot-small{0%{box-shadow:0 0 #0006}70%{box-shadow:0 0 0 4px #0000}to{box-shadow:0 0 #0000}}@keyframes _ngcontent-%COMP%_pulse-blue-dot{0%{box-shadow:0 0 #2563eb66}70%{box-shadow:0 0 0 5px #2563eb00}to{box-shadow:0 0 #2563eb00}}@container (max-width: 380px){.chat-header[_ngcontent-%COMP%]{padding:0 8px;gap:6px;height:36px}.chat-header[_ngcontent-%COMP%] .header-left[_ngcontent-%COMP%]{display:none}.chat-header[_ngcontent-%COMP%] .tab-selector-bar[_ngcontent-%COMP%]{padding:2px;gap:1px}.chat-header[_ngcontent-%COMP%] .tab-selector-bar[_ngcontent-%COMP%] .tab-selector-btn[_ngcontent-%COMP%]{padding:5px 8px;font-size:12px;gap:4px}.chat-header[_ngcontent-%COMP%] .tab-selector-bar[_ngcontent-%COMP%] .tab-selector-btn[_ngcontent-%COMP%] .tab-icon[_ngcontent-%COMP%]{font-size:14px}.chat-header[_ngcontent-%COMP%] .header-right[_ngcontent-%COMP%] .btn-clear-history[_ngcontent-%COMP%]{height:24px;width:30px;padding:0;font-size:12px;gap:0;border-radius:16px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center}.chat-header[_ngcontent-%COMP%] .header-right[_ngcontent-%COMP%] .btn-clear-history[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:14px;line-height:1}.chat-header[_ngcontent-%COMP%] .header-right[_ngcontent-%COMP%] .btn-clear-history[_ngcontent-%COMP%] .btn-text[_ngcontent-%COMP%]{display:none}}@container (max-width: 340px){.chat-header[_ngcontent-%COMP%] .tab-selector-bar[_ngcontent-%COMP%] .tab-selector-btn[_ngcontent-%COMP%]{padding:5px 6px}.chat-header[_ngcontent-%COMP%] .tab-selector-bar[_ngcontent-%COMP%] .tab-selector-btn[_ngcontent-%COMP%] .tab-text[_ngcontent-%COMP%]{display:none}.chat-header[_ngcontent-%COMP%] .header-right[_ngcontent-%COMP%] .btn-clear-history[_ngcontent-%COMP%]{width:26px}}']})};var Q_=(n,t,e)=>Math.max(t,Math.min(e,n));function t6(n){return n.length>0&&n.every(t=>Number.isFinite(t.offset_ms)&&Number.isFinite(t.duration_ms))}function J_(n,t){if(!n.length)return null;let e=n.reduce((s,c)=>s+Math.max(0,c.duration),0),o=Q_(Number.isFinite(t)?t:0,0,e),i=n.findIndex(s=>o1?11:-1),p(3),qe("title",o.isStepPlaying()?"\u6682\u505C":"\u64AD\u653E\u622A\u56FE"),p(2),y(o.isStepPlaying()?"pause":"play_arrow"),p(),qe("disabled",o.activeStepIndex()<=0),p(3),qe("disabled",o.activeStepIndex()>=o.totalStepFrames()-1),p(7),tt(" \u6B65\u9AA4 ",o.activeStepIndex()+1," / ",o.totalStepFrames()," "),p(2),qe("title","Speed: "+o.playbackRate()+"x (Click to cycle)"),p(2),L("",o.playbackRate(),"x"),p(),E("active",o.isLooping()),qe("title",o.isLooping()?"Loop enabled":"Enable loop")}}function v6(n,t){if(n&1){let e=B();V(0,"div",76)(1,"video",77,2),pe("loadedmetadata",function(){S(e);let i=m(5);return k(i.onLoadedMetadata())})("timeupdate",function(){S(e);let i=m(5);return k(i.onTimeUpdate())})("play",function(){S(e);let i=m(5);return k(i.onPlay())})("pause",function(){S(e);let i=m(5);return k(i.onPause())})("ended",function(){S(e);let i=m(5);return k(i.onEnded())})("error",function(){S(e);let i=m(5);return k(i.onError())})("click",function(){S(e);let i=m(5);return k(i.togglePlay())}),U()()}if(n&2){let e=m(5);p(),qe("src",e.currentVideoUrl(),Ut)}}function y6(n,t){if(n&1){let e=B();V(0,"div",43)(1,"div",44)(2,"input",45),pe("input",function(i){S(e);let r=m(5);return k(r.onScrub(i))}),U(),Ko(3,"div",46),U(),V(4,"div",48)(5,"div",49)(6,"button",50),pe("click",function(){S(e);let i=m(5);return k(i.togglePlay())}),V(7,"span",14),g(8),U()(),V(9,"button",53),pe("click",function(){S(e);let i=m(5);return k(i.restart())}),V(10,"span",14),g(11,"replay"),U()(),V(12,"span",54),g(13),U()(),V(14,"div",55)(15,"button",56),pe("click",function(){S(e);let i=m(5);return k(i.cycleSpeed())}),V(16,"span",57),g(17),U()(),V(18,"button",58),pe("click",function(){S(e);let i=m(5);return k(i.toggleLoop())}),V(19,"span",14),g(20,"repeat"),U()(),V(21,"button",58),pe("click",function(){S(e);let i=m(5);return k(i.toggleMute())}),V(22,"span",14),g(23),U()(),V(24,"button",78),pe("click",function(){S(e);let i=m(5);return k(i.openInNewTab())}),V(25,"span",14),g(26,"open_in_new"),U()()()()()}if(n&2){let e=m(5);p(2),qe("min",0)("max",e.duration()||100)("step",.1)("value",e.currentTime()),p(),Ie("width",e.progressPercent(),"%"),p(3),qe("title",e.isPlaying()?"\u6682\u505C":"\u64AD\u653E"),p(2),y(e.isPlaying()?"pause":"play_arrow"),p(5),tt(" ",e.formatTime(e.currentTime())," / ",e.formatTime(e.duration())," "),p(2),qe("title","Speed: "+e.playbackRate()+"x (Click to cycle)"),p(2),L("",e.playbackRate(),"x"),p(),E("active",e.isLooping()),qe("title",e.isLooping()?"Loop enabled":"Enable loop"),p(3),qe("title",e.isMuted()?"Unmute":"Mute"),p(2),y(e.isMuted()?"volume_off":"volume_up")}}function x6(n,t){if(n&1&&(M(0,v6,3,1,"div",76),M(1,y6,27,17,"div",43)),n&2){let e=m(4);b(e.videoLoadError()?-1:0),p(),b(e.videoLoadError()?-1:1)}}function w6(n,t){if(n&1){let e=B();V(0,"button",33),pe("click",function(){S(e);let i=m(5);return i.videoLoadError.set(!1),k(i.agentService.retryVideoRecording())}),V(1,"span",14),g(2,"refresh"),U(),g(3," \u91CD\u8BD5 "),U()}}function S6(n,t){if(n&1&&(V(0,"div",23)(1,"div",29)(2,"span",30),g(3,"videocam_off"),U()(),V(4,"h4",31),g(5),U(),V(6,"p",32),g(7),U(),M(8,w6,4,0,"button",79),U()),n&2){let e=m(4);p(5),L(" ",e.agentService.recordingPlaybackStatus()==="failed"||e.videoLoadError()?"Recording Playback Failed":"No Video Recording Available"," "),p(2),L(" ",e.videoLoadError()?"The finalized recording could not be played.":e.agentService.recordingPlaybackMessage()||"No screen recording was found for this task."," "),p(),b(e.agentService.recordingPlaybackStatus()==="failed"||e.videoLoadError()?8:-1)}}function k6(n,t){if(n&1&&(M(0,g6,5,1,"div",34),M(1,O6,38,23,"div",35),M(2,x6,2,2),M(3,S6,9,3,"div",23)),n&2){let e,o=m(3);b(o.agentService.playerMode()==="video"&&(o.agentService.recordingPlaybackStatus()==="processing"||o.agentService.isVideoLoading())?0:-1),p(),b(o.agentService.playerMode()==="steps"&&o.totalStepFrames()>0?1:-1),p(),b((e=o.agentService.playerMode()==="video"&&o.agentService.recordingPlaybackStatus()==="ready"&&!o.agentService.isVideoLoading()&&o.agentService.activeVideoUrl())?2:-1,e),p(),b(!o.agentService.isVideoLoading()&&(o.agentService.playerMode()==="video"||o.totalStepFrames()===0)&&(o.agentService.recordingPlaybackStatus()==="failed"||o.agentService.recordingPlaybackStatus()==="unavailable"||o.videoLoadError())&&o.totalStepFrames()===0?3:-1)}}function E6(n,t){if(n&1&&(V(0,"div",17),M(1,u6,2,2),M(2,k6,4,4),U()),n&2){let e=m(2);p(),b(e.agentService.recordingPlaybackStatus()==="live"?1:-1),p(),b(e.agentService.recordingPlaybackStatus()!=="live"?2:-1)}}function D6(n,t){if(n&1){let e=B();V(0,"div",6)(1,"header",7),pe("mousedown",function(i){S(e);let r=m();return k(r.startDrag(i))}),V(2,"div",8)(3,"span",9),g(4),U(),V(5,"span",10),g(6),U()(),V(7,"div",11),pe("mousedown",function(i){return i.stopPropagation()}),M(8,s6,11,4,"div",12),V(9,"button",13),pe("click",function(){S(e);let i=m();return k(i.toggleMinimize())}),V(10,"span",14),g(11),U()(),M(12,c6,3,2,"button",15),V(13,"button",16),pe("click",function(){S(e);let i=m();return k(i.agentService.closeVideoPlayer())}),V(14,"span",14),g(15,"close"),U()()()(),M(16,E6,3,2,"div",17),U()}if(n&2){let e=m();Ie("left",e.isTheaterMode()?null:e.posX(),"px")("top",e.isTheaterMode()?null:e.posY(),"px"),E("minimized",e.agentService.isVideoMinimized())("theater",e.isTheaterMode()),p(4),L(" ",e.agentService.recordingPlaybackStatus()==="live"?"sensors":e.agentService.playerMode()==="steps"?"slideshow":e.agentService.recordingPlaybackStatus()==="processing"?"progress_activity":"smart_display"," "),p(),qe("title",e.agentService.activeVideoTitle()),p(),L(" ",e.agentService.recordingPlaybackStatus()==="live"?"\u8BBE\u5907\u5B9E\u65F6\u753B\u9762":e.agentService.playerMode()==="steps"?"\u6B65\u9AA4\u56DE\u653E\uFF08"+(e.totalStepFrames()>0?e.activeStepIndex()+1+"/"+e.totalStepFrames():"0")+")":e.agentService.recordingPlaybackStatus()==="processing"?"\u6B63\u5728\u51C6\u5907\u5F55\u50CF":e.agentService.activeVideoTitle()||"\u5C4F\u5E55\u5F55\u50CF"," "),p(2),b(e.agentService.recordingPlaybackStatus()==="ready"&&e.agentService.hasCurrentSessionStepFrames()&&!e.agentService.isVideoMinimized()?8:-1),p(),qe("title",e.agentService.isVideoMinimized()?"Restore":"\u6700\u5C0F\u5316"),p(2),y(e.agentService.isVideoMinimized()?"expand_less":"remove"),p(),b(e.agentService.isVideoMinimized()?-1:12),p(4),b(e.agentService.isVideoMinimized()?-1:16)}}var $u=class n{agentService=v(Zt);zone=v(ce);videoRef;stepImgRef;stepOverlayRef;isPlaying=w(!1);playbackRate=w(1);isLooping=w(!1);currentTime=w(0);duration=w(0);isMuted=w(!1);isTheaterMode=w(!1);videoLoadError=w(!1);liveStreamUrl=w("/api/stream/device-live");liveStreamError=w(!1);activeSegmentIndex=w(0);currentVideoUrl=A(()=>this.agentService.activeVideoSegments()[this.activeSegmentIndex()]?.url||this.agentService.activeVideoUrl());pendingLocalTime=null;pendingAutoplay=!1;pendingAbsoluteSeek=null;activeStepIndex=w(0);isStepPlaying=w(!1);viewMode=w("pre");isCardHovered=w(!1);isCardPinned=w(!1);isCardVisible=A(()=>this.isCardHovered()||this.isCardPinned());isStepImageLoading=w(!1);stepImageError=w(!1);stepTimer=null;stepFrames=A(()=>this.agentService.currentSessionStepFrames());totalStepFrames=A(()=>this.stepFrames().length);currentStepFrame=A(()=>{let t=this.stepFrames(),e=this.activeStepIndex();return t[e]||null});currentStepImageUrl=A(()=>{let t=this.currentStepFrame();return t?this.viewMode()==="post"&&t.postImageUrl?t.postImageUrl:t.preImageUrl||t.imageUrl||"":""});stepProgressPercent=A(()=>{let t=this.totalStepFrames();return t<=1?0:this.activeStepIndex()/(t-1)*100});speedOptions=[.5,1,1.5,2,4];posX=w(typeof window<"u"?Math.max(20,window.innerWidth-420):100);posY=w(typeof window<"u"?Math.max(60,window.innerHeight-700):100);isDragging=!1;dragStartX=0;dragStartY=0;initialPosX=0;initialPosY=0;constructor(){Ze(()=>{let e=this.agentService.activeVideoUrl(),o=this.agentService.activeVideoSegments();this.videoLoadError.set(!1),this.activeSegmentIndex.set(0),this.currentTime.set(0),this.duration.set(o.reduce((i,r)=>i+r.duration,0)),this.isPlaying.set(!1)},{allowSignalWrites:!0});let t=null;Ze(()=>{let e=this.agentService.currentSessionId(),o=this.totalStepFrames();e!==t?(t=e,this.activeStepIndex.set(0),this.viewMode.set("pre"),this.pauseStepPlay()):o>0&&this.activeStepIndex()>=o&&this.activeStepIndex.set(o-1)},{allowSignalWrites:!0}),Ze(()=>{this.currentStepImageUrl()?(this.isStepImageLoading.set(!0),this.stepImageError.set(!1)):this.isStepImageLoading.set(!1)},{allowSignalWrites:!0}),Ze(()=>{this.activeStepIndex(),this.viewMode(),setTimeout(()=>this.drawStepOverlay(),40)}),Ze(()=>{let e=this.agentService.videoSeekRequest();if(!e||(this.pendingAbsoluteSeek=e.seconds,this.agentService.recordingPlaybackStatus()!=="ready"))return;let o=this.videoRef?.nativeElement;if(o&&o.readyState>=1){let i=this.pendingAbsoluteSeek;this.pendingAbsoluteSeek=null,this.seekToSessionTime(i,!0)}}),Ze(()=>{let e=this.agentService.stepSeekRequest();e&&this.seekStepFrame(e.index)})}onLiveStreamError(){this.liveStreamError.set(!0)}retryLiveStream(){this.liveStreamError.set(!1),this.liveStreamUrl.set(`/api/stream/device-live?t=${Date.now()}`)}formatTime(t){if(isNaN(t)||t<0)return"00:00";let e=Math.floor(t/60),o=Math.floor(t%60),i=e<10?"0"+e:String(e),r=o<10?"0"+o:String(o);return`${i}:${r}`}progressPercent=A(()=>{let t=this.duration();return t<=0?0:Math.min(100,Math.max(0,this.currentTime()/t*100))});startDrag(t){this.isTheaterMode()||(this.isDragging=!0,this.dragStartX=t.clientX,this.dragStartY=t.clientY,this.initialPosX=this.posX(),this.initialPosY=this.posY(),t.preventDefault(),this.zone.runOutsideAngular(()=>{document.addEventListener("mousemove",this.onDrag),document.addEventListener("mouseup",this.stopDrag)}))}onDrag=t=>{if(!this.isDragging)return;let e=t.clientX-this.dragStartX,o=t.clientY-this.dragStartY,i=10,r=10,a=Math.max(10,window.innerWidth-240),s=Math.max(10,window.innerHeight-80),c=Math.max(i,Math.min(a,this.initialPosX+e)),u=Math.max(r,Math.min(s,this.initialPosY+o));this.posX.set(c),this.posY.set(u)};stopDrag=()=>{this.isDragging=!1,document.removeEventListener("mousemove",this.onDrag),document.removeEventListener("mouseup",this.stopDrag)};onResize(){let t=Math.max(10,window.innerWidth-240),e=Math.max(10,window.innerHeight-80);this.posX()>t&&this.posX.set(t),this.posY()>e&&this.posY.set(e)}onKeyDown(t){this.agentService.isVideoWindowOpen()&&t.key==="Escape"&&(this.isTheaterMode()?this.isTheaterMode.set(!1):this.agentService.closeVideoPlayer())}onLoadedMetadata(){let t=this.videoRef?.nativeElement;if(t){let e=this.agentService.activeVideoSegments();if(e.length||this.duration.set(t.duration||0),this.videoLoadError.set(!1),t.playbackRate=this.playbackRate(),t.loop=this.isLooping()&&!e.length,t.muted=this.isMuted(),this.pendingAbsoluteSeek!==null){let o=this.pendingAbsoluteSeek;if(this.pendingAbsoluteSeek=null,this.seekToSessionTime(o,!0),this.pendingLocalTime!==null)return}this.pendingLocalTime!==null&&(t.currentTime=Math.max(0,Math.min(t.duration||this.pendingLocalTime,this.pendingLocalTime)),this.pendingLocalTime=null),this.pendingAutoplay&&(this.pendingAutoplay=!1,t.play().catch(()=>{})),this.agentService.consumeVideoAutoplay()&&(this.isMuted.set(!0),t.muted=!0,t.play().catch(()=>{this.isPlaying.set(!1)}))}}onTimeUpdate(){let t=this.videoRef?.nativeElement;if(t){let e=this.agentService.activeVideoSegments(),o=e[this.activeSegmentIndex()];this.currentTime.set((o?.start||0)+t.currentTime),!e.length&&t.duration&&t.duration!==this.duration()&&this.duration.set(t.duration)}}onPlay(){this.isPlaying.set(!0)}onPause(){this.isPlaying.set(!1)}onEnded(){let t=this.agentService.activeVideoSegments();if(t.length&&this.activeSegmentIndex()e+1);return}if(t.length&&this.isLooping()){this.seek(0,!0);return}this.isPlaying.set(!1)}onError(){this.videoLoadError.set(!0),this.isPlaying.set(!1)}togglePlay(){let t=this.videoRef?.nativeElement;t&&(t.paused?t.play().catch(()=>{}):t.pause())}restart(){this.seek(0,!0)}seekToSessionTime(t,e=!1){let o=this.agentService.activeVideoSegments();this.seek(Dy(o,t),e)}seek(t,e=!1){let o=this.videoRef?.nativeElement;if(!o)return;let i=Math.max(0,Math.min(this.duration(),t)),r=this.agentService.activeVideoSegments(),a=J_(r,i);if(!a){o.currentTime=i,e&&o.play().catch(()=>{});return}let{index:s,localTime:c}=a;s===this.activeSegmentIndex()?(o.currentTime=c,e&&o.play().catch(()=>{})):(this.pendingLocalTime=c,this.pendingAutoplay=e||!o.paused,this.activeSegmentIndex.set(s)),this.currentTime.set(i)}onScrub(t){let e=t.target,o=parseFloat(e.value);this.seek(o)}setSpeed(t){this.playbackRate.set(t);let e=this.videoRef?.nativeElement;e&&(e.playbackRate=t),this.isStepPlaying()&&this.scheduleNextStepFrame()}toggleLoop(){let t=!this.isLooping();this.isLooping.set(t);let e=this.videoRef?.nativeElement;e&&(e.loop=t&&!this.agentService.activeVideoSegments().length)}toggleMute(){let t=!this.isMuted();this.isMuted.set(t);let e=this.videoRef?.nativeElement;e&&(e.muted=t)}toggleTheater(){this.isTheaterMode.set(!this.isTheaterMode())}toggleMinimize(){this.agentService.isVideoMinimized.set(!this.agentService.isVideoMinimized())}openInNewTab(){let t=this.agentService.activeVideoUrl();t&&window.open(t,"_blank")}toggleStepPlay(){this.isStepPlaying()?this.pauseStepPlay():this.startStepPlay()}startStepPlay(){this.totalStepFrames()<=0||(this.activeStepIndex()>=this.totalStepFrames()-1&&this.activeStepIndex.set(0),this.isStepPlaying.set(!0),this.scheduleNextStepFrame())}pauseStepPlay(){this.isStepPlaying.set(!1),this.stepTimer&&(clearTimeout(this.stepTimer),this.stepTimer=null)}scheduleNextStepFrame(){this.stepTimer&&clearTimeout(this.stepTimer);let t=Math.max(300,1500/this.playbackRate());this.stepTimer=setTimeout(()=>{this.isStepPlaying()&&(this.activeStepIndex()e+1),this.scheduleNextStepFrame()):this.isLooping()?(this.activeStepIndex.set(0),this.scheduleNextStepFrame()):this.pauseStepPlay())},t)}prevStepFrame(){this.pauseStepPlay(),this.viewMode.set("pre"),this.activeStepIndex.update(t=>Math.max(0,t-1))}nextStepFrame(){this.pauseStepPlay(),this.viewMode.set("pre"),this.activeStepIndex.update(t=>Math.min(this.totalStepFrames()-1,t+1))}seekStepFrame(t){this.viewMode.set("pre"),this.activeStepIndex.set(Math.max(0,Math.min(this.totalStepFrames()-1,t)))}onStepScrub(t){let e=t.target;this.seekStepFrame(parseInt(e.value,10))}restartStep(){this.seekStepFrame(0),this.startStepPlay()}setStepViewMode(t,e){e&&e.stopPropagation(),this.viewMode.set(t),setTimeout(()=>this.drawStepOverlay(),40)}toggleStepViewMode(t){t&&t.stopPropagation(),this.setStepViewMode(this.viewMode()==="pre"?"post":"pre")}onViewportMouseEnter(){this.isCardHovered.set(!0)}onViewportMouseLeave(){this.isCardHovered.set(!1)}toggleCardPin(t){t&&t.stopPropagation(),this.isCardPinned.update(e=>!e)}cycleSpeed(){let t=this.playbackRate(),o=(this.speedOptions.indexOf(t)+1)%this.speedOptions.length;this.setSpeed(this.speedOptions[o])}onStepImageLoad(){this.isStepImageLoading.set(!1),this.stepImageError.set(!1),this.drawStepOverlay()}onStepImageError(){this.isStepImageLoading.set(!1),this.stepImageError.set(!0)}drawStepOverlay(){let t=this.stepImgRef?.nativeElement,e=this.stepOverlayRef?.nativeElement;if(!t||!e||(e.innerHTML="",this.viewMode()==="post"))return;let o=this.currentStepFrame();if(!(!o||!o.action))try{Mu(t,e,o.action)}catch(i){console.warn("Failed to draw step coordinates overlay:",i)}}getStepActionIcon(t){return yu(t)}openImageInNewTab(){let t=this.currentStepImageUrl()||this.currentStepFrame()?.imageUrl;t&&window.open(t,"_blank")}trackStepFrame(t,e){return e.stepId||String(t)}ngOnDestroy(){this.stepTimer&&(clearTimeout(this.stepTimer),this.stepTimer=null),document.removeEventListener("mousemove",this.onDrag),document.removeEventListener("mouseup",this.stopDrag)}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=Ae({type:n,selectors:[["app-floating-video-player"]],viewQuery:function(e,o){if(e&1&&Wi(o6,5)(i6,5)(r6,5),e&2){let i;eo(i=to())&&(o.videoRef=i.first),eo(i=to())&&(o.stepImgRef=i.first),eo(i=to())&&(o.stepOverlayRef=i.first)}},hostBindings:function(e,o){e&1&&I("resize",function(){return o.onResize()},Yl)("keydown",function(r){return o.onKeyDown(r)},Yl)},decls:2,vars:2,consts:[["stepImgRef",""],["stepOverlayRef",""],["videoRef",""],[1,"theater-backdrop"],[1,"floating-video-wrapper",3,"minimized","theater","left","top"],[1,"theater-backdrop",3,"click"],[1,"floating-video-wrapper"],[1,"window-header",3,"mousedown"],[1,"header-left"],[1,"material-symbols-outlined","header-icon"],[1,"header-title",3,"title"],[1,"header-actions",3,"mousedown"],[1,"mode-toggle-group"],["aria-label","\u6700\u5C0F\u5316",1,"header-btn",3,"click","title"],[1,"material-symbols-outlined"],["aria-label","\u5F71\u9662\u6A21\u5F0F",1,"header-btn",3,"title"],["title","\u5173\u95ED","aria-label","\u5173\u95ED",1,"header-btn","close-btn",3,"click"],[1,"video-body"],["title","\u89C6\u9891\u5F55\u5236",1,"mode-btn",3,"click"],[1,"material-symbols-outlined","mode-icon"],["title","\u6B65\u9AA4\u622A\u56FE\u56DE\u653E",1,"mode-btn",3,"click"],["aria-label","\u5F71\u9662\u6A21\u5F0F",1,"header-btn",3,"click","title"],[1,"live-stream-container"],[1,"empty-video-fallback"],["alt","\u8BBE\u5907\u5B9E\u65F6\u753B\u9762",1,"live-screen-img",3,"error","src"],[1,"live-status-overlay"],[1,"live-badge"],[1,"pulse-dot"],["title","\u5237\u65B0\u5B9E\u65F6\u753B\u9762",1,"live-refresh-btn",3,"click"],[1,"fallback-icon-wrap"],[1,"material-symbols-outlined","fallback-icon"],[1,"fallback-title"],[1,"fallback-desc"],[1,"retry-btn",3,"click"],[1,"video-loading-state"],[1,"step-replay-container"],[1,"material-symbols-outlined","spinning-icon"],[1,"step-replay-notice"],[1,"step-image-viewport",3,"mouseenter","mouseleave"],[1,"step-image-loading-state"],[1,"step-image-error-state"],[1,"step-image-frame-wrap"],[1,"step-frame-badge",3,"visible"],[1,"video-controls-footer"],[1,"scrubber-bar-container"],["type","range",1,"scrubber-range",3,"input","min","max","step","value"],[1,"scrubber-progress-fill"],[1,"step-ticks-wrapper"],[1,"controls-row"],[1,"controls-left"],[1,"ctrl-btn","play-btn",3,"click","title"],["title","\u4E0A\u4E00\u6B65",1,"ctrl-btn",3,"click","disabled"],["title","\u4E0B\u4E00\u6B65",1,"ctrl-btn",3,"click","disabled"],["title","\u4ECE\u5934\u56DE\u653E",1,"ctrl-btn",3,"click"],[1,"time-display"],[1,"controls-right"],[1,"ctrl-btn","speed-pill-btn",3,"click","title"],[1,"speed-label"],[1,"ctrl-btn",3,"click","title"],["title","\u5728\u65B0\u6807\u7B7E\u9875\u6253\u5F00\u56FE\u7247",1,"ctrl-btn",3,"click"],[1,"material-symbols-outlined","notice-icon"],[1,"material-symbols-outlined","broken-icon"],["title","\u70B9\u51FB\u5728\u65B0\u6807\u7B7E\u9875\u67E5\u770B\u56FE\u7247",1,"step-frame-img",3,"load","error","click","src","alt"],[1,"overlay-layer"],[1,"step-frame-badge",3,"click"],[1,"badge-content-left"],[1,"badge-step-no"],[1,"badge-action-desc",3,"title"],[1,"material-symbols-outlined","action-type-icon"],[1,"badge-actions-right"],[1,"pre-post-toggle"],[1,"pin-card-btn",3,"click","title"],["title","\u67E5\u770B\u64CD\u4F5C\u524D\u753B\u9762\uFF08\u542B\u70B9\u51FB\u5750\u6807\uFF09",1,"toggle-btn",3,"click"],["title","\u67E5\u770B\u64CD\u4F5C\u540E\u7684\u5C4F\u5E55",1,"toggle-btn",3,"click"],[1,"step-tick",3,"active","passed","left","title"],[1,"step-tick",3,"click","title"],[1,"video-container"],["playsinline","",3,"loadedmetadata","timeupdate","play","pause","ended","error","click","src"],["title","\u5728\u65B0\u6807\u7B7E\u9875\u6253\u5F00\u89C6\u9891",1,"ctrl-btn",3,"click"],[1,"retry-btn"]],template:function(e,o){e&1&&(M(0,a6,1,0,"div",3),M(1,D6,17,16,"div",4)),e&2&&(b(o.agentService.isVideoWindowOpen()&&o.isTheaterMode()?0:-1),p(),b(o.agentService.isVideoWindowOpen()?1:-1))},dependencies:[Et],styles:['.theater-backdrop[_ngcontent-%COMP%]{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0f172a99;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:1040;animation:_ngcontent-%COMP%_fadeIn .15s ease-out}.floating-video-wrapper[_ngcontent-%COMP%]{position:fixed;width:400px;max-width:calc(100vw - 32px);background:#ffffffd6;backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border:1px solid rgba(255,255,255,.85);border-radius:16px;box-shadow:0 20px 50px -10px #0f172a38,0 0 0 1px #e2e8f099,inset 0 1px 1px #ffffffe6;z-index:1050;overflow:hidden;display:flex;flex-direction:column;box-sizing:border-box;animation:_ngcontent-%COMP%_popIn .2s cubic-bezier(.16,1,.3,1);-webkit-user-select:none;user-select:none;font-family:Google Sans,Google Sans Text,Inter,system-ui,-apple-system,sans-serif}.floating-video-wrapper.minimized[_ngcontent-%COMP%]{width:280px;box-shadow:0 10px 25px -5px #0f172a2e}.floating-video-wrapper.minimized[_ngcontent-%COMP%] .window-header[_ngcontent-%COMP%]{border-bottom:none}.floating-video-wrapper.theater[_ngcontent-%COMP%]{left:50%!important;top:50%!important;transform:translate(-50%,-50%);width:85vw;max-width:960px;height:auto;max-height:88vh;box-shadow:0 24px 60px -12px #0f172a59}.floating-video-wrapper.theater[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%]{max-height:calc(88vh - 46px)}.floating-video-wrapper.theater[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .video-container[_ngcontent-%COMP%] video[_ngcontent-%COMP%]{max-height:calc(88vh - 120px)}.floating-video-wrapper[_ngcontent-%COMP%] .window-header[_ngcontent-%COMP%]{height:44px;background:#ffffffbf;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid rgba(226,232,240,.75);display:flex;align-items:center;justify-content:space-between;padding:0 8px 0 12px;cursor:grab;gap:8px;flex-shrink:0}.floating-video-wrapper[_ngcontent-%COMP%] .window-header[_ngcontent-%COMP%]:active{cursor:grabbing}.floating-video-wrapper[_ngcontent-%COMP%] .window-header[_ngcontent-%COMP%] .header-left[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;overflow:hidden;flex:1}.floating-video-wrapper[_ngcontent-%COMP%] .window-header[_ngcontent-%COMP%] .header-left[_ngcontent-%COMP%] .header-icon[_ngcontent-%COMP%]{font-size:18px;color:#2563eb;flex-shrink:0}.floating-video-wrapper[_ngcontent-%COMP%] .window-header[_ngcontent-%COMP%] .header-left[_ngcontent-%COMP%] .header-title[_ngcontent-%COMP%]{font-size:13px;font-weight:600;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.2px}.floating-video-wrapper[_ngcontent-%COMP%] .window-header[_ngcontent-%COMP%] .header-left[_ngcontent-%COMP%] .mode-switcher-group[_ngcontent-%COMP%]{display:flex;align-items:center;background:#f1f5f9a6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(226,232,240,.8);border-radius:8px;padding:2px;margin-left:4px;flex-shrink:0}.floating-video-wrapper[_ngcontent-%COMP%] .window-header[_ngcontent-%COMP%] .header-left[_ngcontent-%COMP%] .mode-switcher-group[_ngcontent-%COMP%] .mode-btn[_ngcontent-%COMP%]{border:none;background:transparent;color:#475569;font-size:10px;font-weight:700;padding:2px 7px;border-radius:6px;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;gap:4px}.floating-video-wrapper[_ngcontent-%COMP%] .window-header[_ngcontent-%COMP%] .header-left[_ngcontent-%COMP%] .mode-switcher-group[_ngcontent-%COMP%] .mode-btn[_ngcontent-%COMP%] .pulse-dot-mini[_ngcontent-%COMP%]{width:5px;height:5px;border-radius:50%;background:#ef4444;animation:_ngcontent-%COMP%_pulseRed 1.2s infinite}.floating-video-wrapper[_ngcontent-%COMP%] .window-header[_ngcontent-%COMP%] .header-left[_ngcontent-%COMP%] .mode-switcher-group[_ngcontent-%COMP%] .mode-btn[_ngcontent-%COMP%]:hover:not(:disabled){color:#0f172a;background:#fff9}.floating-video-wrapper[_ngcontent-%COMP%] .window-header[_ngcontent-%COMP%] .header-left[_ngcontent-%COMP%] .mode-switcher-group[_ngcontent-%COMP%] .mode-btn.active[_ngcontent-%COMP%]{background:#0284c7;color:#fff;font-weight:700;box-shadow:0 1px 3px #0284c74d}.floating-video-wrapper[_ngcontent-%COMP%] .window-header[_ngcontent-%COMP%] .header-left[_ngcontent-%COMP%] .mode-switcher-group[_ngcontent-%COMP%] .mode-btn[_ngcontent-%COMP%]:disabled{opacity:.4;cursor:not-allowed}.floating-video-wrapper[_ngcontent-%COMP%] .window-header[_ngcontent-%COMP%] .header-actions[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px;flex-shrink:0}.floating-video-wrapper[_ngcontent-%COMP%] .window-header[_ngcontent-%COMP%] .header-actions[_ngcontent-%COMP%] .mode-toggle-group[_ngcontent-%COMP%]{display:flex;align-items:center;background:#f1f5f9b3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(226,232,240,.85);border-radius:8px;padding:2px;margin-right:4px;gap:2px}.floating-video-wrapper[_ngcontent-%COMP%] .window-header[_ngcontent-%COMP%] .header-actions[_ngcontent-%COMP%] .mode-toggle-group[_ngcontent-%COMP%] .mode-btn[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:3px;border:none;background:transparent;color:#475569;font-size:11px;font-weight:600;padding:2px 7px;border-radius:6px;cursor:pointer;transition:all .15s ease}.floating-video-wrapper[_ngcontent-%COMP%] .window-header[_ngcontent-%COMP%] .header-actions[_ngcontent-%COMP%] .mode-toggle-group[_ngcontent-%COMP%] .mode-btn[_ngcontent-%COMP%] .mode-icon[_ngcontent-%COMP%]{font-size:13px}.floating-video-wrapper[_ngcontent-%COMP%] .window-header[_ngcontent-%COMP%] .header-actions[_ngcontent-%COMP%] .mode-toggle-group[_ngcontent-%COMP%] .mode-btn[_ngcontent-%COMP%]:hover:not(.active){color:#0f172a;background:#fffc}.floating-video-wrapper[_ngcontent-%COMP%] .window-header[_ngcontent-%COMP%] .header-actions[_ngcontent-%COMP%] .mode-toggle-group[_ngcontent-%COMP%] .mode-btn.active[_ngcontent-%COMP%]{background:#0284c7;color:#fff;box-shadow:0 1px 3px #0284c74d}.floating-video-wrapper[_ngcontent-%COMP%] .window-header[_ngcontent-%COMP%] .header-actions[_ngcontent-%COMP%] .speed-pill-group[_ngcontent-%COMP%]{display:flex;align-items:center;background:#f1f5f9a6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(226,232,240,.8);border-radius:8px;padding:2px;margin-right:4px}.floating-video-wrapper[_ngcontent-%COMP%] .window-header[_ngcontent-%COMP%] .header-actions[_ngcontent-%COMP%] .speed-pill-group[_ngcontent-%COMP%] .speed-btn[_ngcontent-%COMP%]{border:none;background:transparent;color:#334155;font-size:11px;font-weight:700;padding:2px 6px;border-radius:4px;cursor:pointer;transition:all .15s ease}.floating-video-wrapper[_ngcontent-%COMP%] .window-header[_ngcontent-%COMP%] .header-actions[_ngcontent-%COMP%] .speed-pill-group[_ngcontent-%COMP%] .speed-btn[_ngcontent-%COMP%]:hover{color:#0f172a;background:#cbd5e1}.floating-video-wrapper[_ngcontent-%COMP%] .window-header[_ngcontent-%COMP%] .header-actions[_ngcontent-%COMP%] .speed-pill-group[_ngcontent-%COMP%] .speed-btn.active[_ngcontent-%COMP%]{background:#0284c7;color:#fff;font-weight:700;box-shadow:0 1px 3px #0284c74d}.floating-video-wrapper[_ngcontent-%COMP%] .window-header[_ngcontent-%COMP%] .header-actions[_ngcontent-%COMP%] .header-btn[_ngcontent-%COMP%]{background:#f1f5f9bf;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(226,232,240,.85);color:#1e293b;cursor:pointer;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:7px;box-shadow:0 1px 3px #0f172a0a,inset 0 1px 1px #fffc;transition:all .2s cubic-bezier(.4,0,.2,1)}.floating-video-wrapper[_ngcontent-%COMP%] .window-header[_ngcontent-%COMP%] .header-actions[_ngcontent-%COMP%] .header-btn[_ngcontent-%COMP%]:hover{background:#fffffff2;color:#0f172a;border-color:#cbd5e1f2;transform:translateY(-.5px);box-shadow:0 2px 6px #0f172a14}.floating-video-wrapper[_ngcontent-%COMP%] .window-header[_ngcontent-%COMP%] .header-actions[_ngcontent-%COMP%] .header-btn.close-btn[_ngcontent-%COMP%]:hover{background:#fee2e2f2;color:#dc2626;border-color:#fca5a5e6;box-shadow:0 2px 6px #dc262626}.floating-video-wrapper[_ngcontent-%COMP%] .window-header[_ngcontent-%COMP%] .header-actions[_ngcontent-%COMP%] .header-btn[_ngcontent-%COMP%]:active{transform:scale(.96)}.floating-video-wrapper[_ngcontent-%COMP%] .window-header[_ngcontent-%COMP%] .header-actions[_ngcontent-%COMP%] .header-btn[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:17px;font-weight:600}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%]{position:relative;background:#fff;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;overflow:hidden}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .video-loading-state[_ngcontent-%COMP%]{padding:36px 20px;display:flex;flex-direction:column;align-items:center;gap:10px;background:#fff;width:100%;box-sizing:border-box;color:#475569;font-size:13px;font-weight:500}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .video-loading-state[_ngcontent-%COMP%] .spinning-icon[_ngcontent-%COMP%]{font-size:28px;color:#2563eb;animation:_ngcontent-%COMP%_spin 1s linear infinite}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .live-stream-container[_ngcontent-%COMP%]{position:relative;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;min-height:260px;overflow:hidden}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .live-stream-container[_ngcontent-%COMP%] .live-screen-img[_ngcontent-%COMP%]{width:100%;max-height:520px;display:block;object-fit:contain;-webkit-user-select:none;user-select:none;background:#fff}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .live-stream-container[_ngcontent-%COMP%] .live-status-overlay[_ngcontent-%COMP%]{position:absolute;top:10px;left:12px;right:12px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .live-stream-container[_ngcontent-%COMP%] .live-status-overlay[_ngcontent-%COMP%] .live-badge[_ngcontent-%COMP%]{display:flex;align-items:center;gap:6px;background:#fef2f2;border:1px solid #fca5a5;color:#dc2626;font-size:10.5px;font-weight:700;padding:3px 9px;border-radius:12px;letter-spacing:.5px;box-shadow:0 1px 4px #dc262626}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .live-stream-container[_ngcontent-%COMP%] .live-status-overlay[_ngcontent-%COMP%] .live-badge[_ngcontent-%COMP%] .pulse-dot[_ngcontent-%COMP%]{width:6px;height:6px;border-radius:50%;background:#ef4444;animation:_ngcontent-%COMP%_pulseRed 1.2s infinite}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .live-stream-container[_ngcontent-%COMP%] .live-status-overlay[_ngcontent-%COMP%] .live-refresh-btn[_ngcontent-%COMP%]{pointer-events:auto;background:#fffffff2;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid #cbd5e1;color:#1e293b;cursor:pointer;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;box-shadow:0 1px 3px #00000014;transition:all .15s ease}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .live-stream-container[_ngcontent-%COMP%] .live-status-overlay[_ngcontent-%COMP%] .live-refresh-btn[_ngcontent-%COMP%]:hover{background:#f1f5f9;color:#0f172a;border-color:#94a3b8;transform:rotate(90deg)}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .live-stream-container[_ngcontent-%COMP%] .live-status-overlay[_ngcontent-%COMP%] .live-refresh-btn[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:16px}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .step-replay-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;background:#fff;position:relative;width:100%;overflow:hidden}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .step-replay-container[_ngcontent-%COMP%] .step-replay-notice[_ngcontent-%COMP%]{display:flex;align-items:center;gap:6px;background:#fffbeb;color:#b45309;padding:6px 12px;font-size:11.5px;font-weight:500;border-bottom:1px solid #fde68a}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .step-replay-container[_ngcontent-%COMP%] .step-replay-notice[_ngcontent-%COMP%] .notice-icon[_ngcontent-%COMP%]{font-size:14px;color:#d97706;flex-shrink:0}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .step-replay-container[_ngcontent-%COMP%] .step-image-viewport[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;position:relative;background:#f8fafc;min-height:280px;max-height:520px;overflow:hidden;padding:10px 0}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .step-replay-container[_ngcontent-%COMP%] .step-image-viewport[_ngcontent-%COMP%] .step-image-loading-state[_ngcontent-%COMP%], .floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .step-replay-container[_ngcontent-%COMP%] .step-image-viewport[_ngcontent-%COMP%] .step-image-error-state[_ngcontent-%COMP%]{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:#f8fafc;color:#64748b;font-size:12px;font-weight:500;z-index:5}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .step-replay-container[_ngcontent-%COMP%] .step-image-viewport[_ngcontent-%COMP%] .step-image-loading-state[_ngcontent-%COMP%] .spinning-icon[_ngcontent-%COMP%], .floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .step-replay-container[_ngcontent-%COMP%] .step-image-viewport[_ngcontent-%COMP%] .step-image-error-state[_ngcontent-%COMP%] .spinning-icon[_ngcontent-%COMP%]{font-size:24px;color:#0284c7;animation:_ngcontent-%COMP%_spin 1s linear infinite}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .step-replay-container[_ngcontent-%COMP%] .step-image-viewport[_ngcontent-%COMP%] .step-image-loading-state[_ngcontent-%COMP%] .broken-icon[_ngcontent-%COMP%], .floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .step-replay-container[_ngcontent-%COMP%] .step-image-viewport[_ngcontent-%COMP%] .step-image-error-state[_ngcontent-%COMP%] .broken-icon[_ngcontent-%COMP%]{font-size:28px;color:#94a3b8}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .step-replay-container[_ngcontent-%COMP%] .step-image-viewport[_ngcontent-%COMP%] .step-image-frame-wrap[_ngcontent-%COMP%]{position:relative;display:inline-flex;align-items:center;justify-content:center;max-width:92%;max-height:500px}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .step-replay-container[_ngcontent-%COMP%] .step-image-viewport[_ngcontent-%COMP%] .step-image-frame-wrap[_ngcontent-%COMP%] .step-frame-img[_ngcontent-%COMP%]{max-width:100%;max-height:500px;width:auto;height:auto;object-fit:contain;display:block;-webkit-user-select:none;user-select:none;cursor:pointer;border-radius:8px;box-shadow:0 4px 20px -2px #0f172a24,0 0 0 1px #e2e8f0e6;background:#fff;transition:opacity .15s ease}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .step-replay-container[_ngcontent-%COMP%] .step-image-viewport[_ngcontent-%COMP%] .step-image-frame-wrap[_ngcontent-%COMP%] .step-frame-img[_ngcontent-%COMP%]:hover{opacity:.98}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .step-replay-container[_ngcontent-%COMP%] .step-image-viewport[_ngcontent-%COMP%] .step-image-frame-wrap[_ngcontent-%COMP%] .overlay-layer[_ngcontent-%COMP%]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:8}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .step-replay-container[_ngcontent-%COMP%] .step-image-viewport[_ngcontent-%COMP%]:hover .step-frame-badge[_ngcontent-%COMP%]{opacity:1;transform:translateY(0);pointer-events:auto}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .step-replay-container[_ngcontent-%COMP%] .step-image-viewport[_ngcontent-%COMP%] .step-frame-badge[_ngcontent-%COMP%]{position:absolute;bottom:12px;left:10px;right:10px;display:flex;align-items:center;justify-content:space-between;gap:8px;background:#0f172ae0;backdrop-filter:blur(14px) saturate(180%);-webkit-backdrop-filter:blur(14px) saturate(180%);border:1px solid rgba(255,255,255,.2);border-radius:10px;padding:6px 10px;color:#fff;box-shadow:0 8px 24px #00000080;opacity:0;transform:translateY(8px);pointer-events:none;transition:opacity .22s cubic-bezier(.16,1,.3,1),transform .22s cubic-bezier(.16,1,.3,1);z-index:15}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .step-replay-container[_ngcontent-%COMP%] .step-image-viewport[_ngcontent-%COMP%] .step-frame-badge.visible[_ngcontent-%COMP%]{opacity:1;transform:translateY(0);pointer-events:auto}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .step-replay-container[_ngcontent-%COMP%] .step-image-viewport[_ngcontent-%COMP%] .step-frame-badge[_ngcontent-%COMP%] .badge-content-left[_ngcontent-%COMP%]{display:flex;align-items:center;gap:7px;overflow:hidden;flex:1}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .step-replay-container[_ngcontent-%COMP%] .step-image-viewport[_ngcontent-%COMP%] .step-frame-badge[_ngcontent-%COMP%] .badge-content-left[_ngcontent-%COMP%] .badge-step-no[_ngcontent-%COMP%]{font-size:10.5px;font-weight:700;background:#0284c7;padding:2px 7px;border-radius:5px;letter-spacing:.3px;flex-shrink:0;box-shadow:0 1px 3px #0284c766}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .step-replay-container[_ngcontent-%COMP%] .step-image-viewport[_ngcontent-%COMP%] .step-frame-badge[_ngcontent-%COMP%] .badge-content-left[_ngcontent-%COMP%] .badge-action-desc[_ngcontent-%COMP%]{font-size:11.5px;font-weight:500;color:#f8fafc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:4px}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .step-replay-container[_ngcontent-%COMP%] .step-image-viewport[_ngcontent-%COMP%] .step-frame-badge[_ngcontent-%COMP%] .badge-content-left[_ngcontent-%COMP%] .badge-action-desc[_ngcontent-%COMP%] .action-type-icon[_ngcontent-%COMP%]{font-size:15px;color:#38bdf8;flex-shrink:0}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .step-replay-container[_ngcontent-%COMP%] .step-image-viewport[_ngcontent-%COMP%] .step-frame-badge[_ngcontent-%COMP%] .badge-actions-right[_ngcontent-%COMP%]{display:flex;align-items:center;gap:6px;flex-shrink:0}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .step-replay-container[_ngcontent-%COMP%] .step-image-viewport[_ngcontent-%COMP%] .step-frame-badge[_ngcontent-%COMP%] .badge-actions-right[_ngcontent-%COMP%] .pre-post-toggle[_ngcontent-%COMP%]{display:inline-flex;align-items:center;background:#ffffff1f;border:1px solid rgba(255,255,255,.15);border-radius:6px;padding:2px;gap:2px}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .step-replay-container[_ngcontent-%COMP%] .step-image-viewport[_ngcontent-%COMP%] .step-frame-badge[_ngcontent-%COMP%] .badge-actions-right[_ngcontent-%COMP%] .pre-post-toggle[_ngcontent-%COMP%] .toggle-btn[_ngcontent-%COMP%]{border:none;background:transparent;color:#ffffffb3;font-size:10.5px;font-weight:700;padding:2px 7px;border-radius:4px;cursor:pointer;transition:all .15s ease}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .step-replay-container[_ngcontent-%COMP%] .step-image-viewport[_ngcontent-%COMP%] .step-frame-badge[_ngcontent-%COMP%] .badge-actions-right[_ngcontent-%COMP%] .pre-post-toggle[_ngcontent-%COMP%] .toggle-btn[_ngcontent-%COMP%]:hover{color:#fff;background:#fff3}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .step-replay-container[_ngcontent-%COMP%] .step-image-viewport[_ngcontent-%COMP%] .step-frame-badge[_ngcontent-%COMP%] .badge-actions-right[_ngcontent-%COMP%] .pre-post-toggle[_ngcontent-%COMP%] .toggle-btn.active[_ngcontent-%COMP%]{background:#0284c7;color:#fff;box-shadow:0 1px 3px #0000004d}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .step-replay-container[_ngcontent-%COMP%] .step-image-viewport[_ngcontent-%COMP%] .step-frame-badge[_ngcontent-%COMP%] .badge-actions-right[_ngcontent-%COMP%] .pin-card-btn[_ngcontent-%COMP%]{background:transparent;border:none;color:#fff9;cursor:pointer;padding:3px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .15s ease}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .step-replay-container[_ngcontent-%COMP%] .step-image-viewport[_ngcontent-%COMP%] .step-frame-badge[_ngcontent-%COMP%] .badge-actions-right[_ngcontent-%COMP%] .pin-card-btn[_ngcontent-%COMP%]:hover{color:#fff;background:#ffffff26}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .step-replay-container[_ngcontent-%COMP%] .step-image-viewport[_ngcontent-%COMP%] .step-frame-badge[_ngcontent-%COMP%] .badge-actions-right[_ngcontent-%COMP%] .pin-card-btn.pinned[_ngcontent-%COMP%]{color:#38bdf8;background:#38bdf833}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .step-replay-container[_ngcontent-%COMP%] .step-image-viewport[_ngcontent-%COMP%] .step-frame-badge[_ngcontent-%COMP%] .badge-actions-right[_ngcontent-%COMP%] .pin-card-btn[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:14px}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .video-container[_ngcontent-%COMP%]{position:relative;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .video-container[_ngcontent-%COMP%] video[_ngcontent-%COMP%]{width:100%;height:auto;max-height:520px;display:block;object-fit:contain;cursor:pointer;background:#fff}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .video-controls-footer[_ngcontent-%COMP%]{background:#ffffffd6;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-top:1px solid rgba(226,232,240,.75);padding:12px 14px;display:flex;flex-direction:column;gap:10px;flex-shrink:0;box-shadow:0 -4px 16px #0f172a0a,inset 0 1px 1px #ffffffe6}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .video-controls-footer[_ngcontent-%COMP%] .scrubber-bar-container[_ngcontent-%COMP%]{position:relative;width:100%;height:8px;display:flex;align-items:center;cursor:pointer}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .video-controls-footer[_ngcontent-%COMP%] .scrubber-bar-container[_ngcontent-%COMP%] .scrubber-range[_ngcontent-%COMP%]{position:absolute;width:100%;height:100%;opacity:0;cursor:pointer;z-index:5;margin:0}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .video-controls-footer[_ngcontent-%COMP%] .scrubber-bar-container[_ngcontent-%COMP%]:before{content:"";position:absolute;left:0;right:0;height:5px;background:#e2e8f0d9;border-radius:3px}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .video-controls-footer[_ngcontent-%COMP%] .scrubber-bar-container[_ngcontent-%COMP%] .scrubber-progress-fill[_ngcontent-%COMP%]{position:absolute;left:0;height:5px;background:linear-gradient(90deg,#0284c7,#2563eb);border-radius:3px;pointer-events:none;box-shadow:0 0 8px #0284c766}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .video-controls-footer[_ngcontent-%COMP%] .scrubber-bar-container[_ngcontent-%COMP%] .step-ticks-wrapper[_ngcontent-%COMP%]{position:absolute;left:0;right:0;height:100%;pointer-events:none;display:flex;align-items:center;z-index:6}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .video-controls-footer[_ngcontent-%COMP%] .scrubber-bar-container[_ngcontent-%COMP%] .step-ticks-wrapper[_ngcontent-%COMP%] .step-tick[_ngcontent-%COMP%]{position:absolute;width:7px;height:7px;border-radius:50%;background:#ffffffe6;border:1.5px solid #94a3b8;transform:translate(-50%);pointer-events:auto;cursor:pointer;transition:all .15s ease}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .video-controls-footer[_ngcontent-%COMP%] .scrubber-bar-container[_ngcontent-%COMP%] .step-ticks-wrapper[_ngcontent-%COMP%] .step-tick[_ngcontent-%COMP%]:hover{transform:translate(-50%) scale(1.4);border-color:#0284c7;background:#fff}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .video-controls-footer[_ngcontent-%COMP%] .scrubber-bar-container[_ngcontent-%COMP%] .step-ticks-wrapper[_ngcontent-%COMP%] .step-tick.passed[_ngcontent-%COMP%]{background:#0284c7;border-color:#fff}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .video-controls-footer[_ngcontent-%COMP%] .scrubber-bar-container[_ngcontent-%COMP%] .step-ticks-wrapper[_ngcontent-%COMP%] .step-tick.active[_ngcontent-%COMP%]{background:#38bdf8;border-color:#fff;transform:translate(-50%) scale(1.3);box-shadow:0 0 6px #38bdf8cc}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .video-controls-footer[_ngcontent-%COMP%] .controls-row[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .video-controls-footer[_ngcontent-%COMP%] .controls-row[_ngcontent-%COMP%] .controls-left[_ngcontent-%COMP%], .floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .video-controls-footer[_ngcontent-%COMP%] .controls-row[_ngcontent-%COMP%] .controls-right[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .video-controls-footer[_ngcontent-%COMP%] .controls-row[_ngcontent-%COMP%] .ctrl-btn[_ngcontent-%COMP%]{background:#f1f5f9bf;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(226,232,240,.85);box-shadow:0 1px 3px #0f172a0a,inset 0 1px 1px #ffffffd9;color:#0f172a;width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1)}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .video-controls-footer[_ngcontent-%COMP%] .controls-row[_ngcontent-%COMP%] .ctrl-btn[_ngcontent-%COMP%]:hover{background:#fffffff2;border-color:#bfdbfee6;color:#0284c7;transform:translateY(-.5px);box-shadow:0 3px 8px #0f172a14}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .video-controls-footer[_ngcontent-%COMP%] .controls-row[_ngcontent-%COMP%] .ctrl-btn[_ngcontent-%COMP%]:active{transform:scale(.96)}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .video-controls-footer[_ngcontent-%COMP%] .controls-row[_ngcontent-%COMP%] .ctrl-btn.active[_ngcontent-%COMP%]{color:#0284c7;background:#e0f2fed9;border-color:#38bdf8cc;box-shadow:0 2px 6px #0284c726}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .video-controls-footer[_ngcontent-%COMP%] .controls-row[_ngcontent-%COMP%] .ctrl-btn.play-btn[_ngcontent-%COMP%]{background:linear-gradient(135deg,#0284c7eb,#2563ebe0);backdrop-filter:blur(14px) saturate(180%);-webkit-backdrop-filter:blur(14px) saturate(180%);border:1px solid rgba(255,255,255,.35);color:#fff;width:36px;height:36px;border-radius:50%;box-shadow:0 4px 14px #0284c759,inset 0 1px 1px #ffffff80}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .video-controls-footer[_ngcontent-%COMP%] .controls-row[_ngcontent-%COMP%] .ctrl-btn.play-btn[_ngcontent-%COMP%]:hover{background:linear-gradient(135deg,#0284c7,#2563ebf2);box-shadow:0 6px 18px #0284c773,inset 0 1px 1px #fff9;transform:translateY(-1px) scale(1.04)}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .video-controls-footer[_ngcontent-%COMP%] .controls-row[_ngcontent-%COMP%] .ctrl-btn.play-btn[_ngcontent-%COMP%]:active{transform:scale(.96)}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .video-controls-footer[_ngcontent-%COMP%] .controls-row[_ngcontent-%COMP%] .ctrl-btn.play-btn[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:22px;color:#fff}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .video-controls-footer[_ngcontent-%COMP%] .controls-row[_ngcontent-%COMP%] .ctrl-btn.speed-pill-btn[_ngcontent-%COMP%]{width:auto;min-width:34px;padding:0 7px;font-size:11px;font-weight:700;font-family:JetBrains Mono,Roboto Mono,monospace;color:#334155;letter-spacing:-.2px}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .video-controls-footer[_ngcontent-%COMP%] .controls-row[_ngcontent-%COMP%] .ctrl-btn.speed-pill-btn[_ngcontent-%COMP%]:hover{color:#0284c7;border-color:#bfdbfee6}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .video-controls-footer[_ngcontent-%COMP%] .controls-row[_ngcontent-%COMP%] .ctrl-btn[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:18px;color:#1e293b}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .video-controls-footer[_ngcontent-%COMP%] .controls-row[_ngcontent-%COMP%] .time-display[_ngcontent-%COMP%]{font-size:12px;font-weight:700;font-family:JetBrains Mono,Roboto Mono,monospace;color:#1e293b;margin-left:4px;letter-spacing:.5px}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .empty-video-fallback[_ngcontent-%COMP%]{background:#fff;padding:36px 20px;display:flex;flex-direction:column;align-items:center;text-align:center;box-sizing:border-box;width:100%}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .empty-video-fallback[_ngcontent-%COMP%] .fallback-icon-wrap[_ngcontent-%COMP%]{width:48px;height:48px;border-radius:50%;background:#fef2f2;border:1px solid #fee2e2;display:flex;align-items:center;justify-content:center;margin-bottom:12px}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .empty-video-fallback[_ngcontent-%COMP%] .fallback-icon-wrap[_ngcontent-%COMP%] .fallback-icon[_ngcontent-%COMP%]{font-size:24px;color:#ef4444}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .empty-video-fallback[_ngcontent-%COMP%] .fallback-title[_ngcontent-%COMP%]{margin:0 0 6px;font-size:13.5px;font-weight:600;color:#0f172a}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .empty-video-fallback[_ngcontent-%COMP%] .fallback-desc[_ngcontent-%COMP%]{margin:0 0 12px;font-size:12px;color:#64748b;line-height:1.4;max-width:240px}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .empty-video-fallback[_ngcontent-%COMP%] .retry-btn[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:6px;background:#0284c7;color:#fff;border:none;border-radius:6px;padding:5px 12px;font-size:11.5px;font-weight:600;cursor:pointer;transition:all .15s ease}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .empty-video-fallback[_ngcontent-%COMP%] .retry-btn[_ngcontent-%COMP%]:hover{background:#0369a1;transform:translateY(-1px)}.floating-video-wrapper[_ngcontent-%COMP%] .video-body[_ngcontent-%COMP%] .empty-video-fallback[_ngcontent-%COMP%] .retry-btn[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:15px}@keyframes _ngcontent-%COMP%_popIn{0%{opacity:0;transform:scale(.96) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes _ngcontent-%COMP%_fadeIn{0%{opacity:0}to{opacity:1}}@keyframes _ngcontent-%COMP%_spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes _ngcontent-%COMP%_pulseRed{0%,to{opacity:1}50%{opacity:.5}} .action-point-marker{z-index:10;pointer-events:none}@keyframes _ngcontent-%COMP%_pulse-animation{0%{transform:scale(.6);opacity:1}to{transform:scale(2.2);opacity:0}}']})};var I6=["dockInput"];function T6(n,t){if(n&1){let e=B();l(0,"div",4)(1,"span",55),g(2,"error"),d(),l(3,"span",56),g(4),d(),l(5,"button",57),I("click",function(){S(e);let i=m();return k(i.errorMessage.set(null))}),l(6,"span",42),g(7,"close"),d()()()}if(n&2){let e=m();p(4),y(e.errorMessage())}}function A6(n,t){if(n&1){let e=B();l(0,"button",58),I("click",function(i){S(e);let r=m();return k(r.clearInput(i))}),l(1,"span",42),g(2,"close"),d()()}}function R6(n,t){if(n&1){let e=B();l(0,"button",59),I("click",function(i){S(e);let r=m();return k(r.stopTask(i))}),l(1,"span",42),g(2,"stop"),d()()}if(n&2){let e=m();N("disabled",e.isSubmitting())("title",e.stopButtonTitle()),ft("aria-label",e.stopButtonTitle())}}function F6(n,t){n&1&&(l(0,"span",41),g(1,"sync"),d())}function N6(n,t){n&1&&(l(0,"span",42),g(1,"arrow_upward"),d())}function L6(n,t){if(n&1){let e=B();l(0,"button",60),I("click",function(i){S(e);let r=m();return k(r.stopTask(i))}),l(1,"span",42),g(2,"stop"),d()()}if(n&2){let e=m();N("disabled",e.isSubmitting())("title",e.stopButtonTitle()),ft("aria-label",e.stopButtonTitle())}}var Hu=class n{agentService=v(Zt);zone=v(ce);destroyRef=v(Te);rightPanelWidth=w(typeof window<"u"?Math.round(window.innerWidth/3):450);isDragging=w(!1);dragWidthRafId=null;pendingDragWidth=0;taskInputSignal=w("");get taskInput(){return this.taskInputSignal()}set taskInput(t){this.taskInputSignal.set(t)}isSubmitting=w(!1);errorMessage=w(null);selectedProfile=w("flash");isHoveringCard=w(!1);isInputFocused=w(!1);dockInputRef;ngOnInit(){if(typeof localStorage<"u"){let t=localStorage.getItem("artemis_selected_profile");(t==="flash"||t==="pro")&&this.selectedProfile.set(t)}this.zone.runOutsideAngular(()=>{window.addEventListener("keydown",this.onGlobalKeyDown)}),this.destroyRef.onDestroy(()=>{window.removeEventListener("keydown",this.onGlobalKeyDown),this.detachDragListeners()})}setProfile(t,e){e&&e.stopPropagation(),this.selectedProfile.set(t),typeof localStorage<"u"&&localStorage.setItem("artemis_selected_profile",t)}isTaskRunning=A(()=>this.agentService.isCurrentSessionRunning());stopButtonTitle=A(()=>{let t=this.agentService.currentSession();if(t?.initial_goal)return`\u505C\u6B62\u5F53\u524D\u4EFB\u52A1\uFF1A"${t.initial_goal.length>45?t.initial_goal.substring(0,42)+"...":t.initial_goal}"`;let e=this.agentService.currentSessionId();return e?`\u505C\u6B62\u5F53\u524D\u4EFB\u52A1\uFF08${e})`:"\u505C\u6B62\u5F53\u524D\u4EFB\u52A1"});isBarExpanded=A(()=>this.isHoveringCard()||this.isInputFocused()||this.taskInput.trim().length>0);onInputFocus(){this.isInputFocused.set(!0)}onInputBlur(){this.isInputFocused.set(!1)}onCardClick(t){let e=t.target;e.closest("button")||e.tagName.toLowerCase()==="textarea"||this.focusInput()}focusInput(){setTimeout(()=>{this.dockInputRef?.nativeElement?.focus()},30)}clearInput(t){t&&t.stopPropagation(),this.taskInput="",this.dockInputRef?.nativeElement&&(this.dockInputRef.nativeElement.style.height="auto",this.dockInputRef.nativeElement.focus())}onTextareaInput(t){let e=t.target;if(!e)return;e.style.height="auto";let o=Math.min(Math.max(e.scrollHeight,24),120);e.style.height=`${o}px`}onGlobalKeyDown=t=>{(t.metaKey||t.ctrlKey)&&t.key.toLowerCase()==="k"&&(t.preventDefault(),this.focusInput())};onKeyDown(t){t.key==="Enter"&&!t.shiftKey&&(t.preventDefault(),this.submitTask())}submitTask(){let t=this.taskInput.trim();!t||this.isSubmitting()||(this.isSubmitting.set(!0),this.errorMessage.set(null),this.dockInputRef?.nativeElement&&this.dockInputRef.nativeElement.blur(),this.isInputFocused.set(!1),this.agentService.runTask(t,this.selectedProfile()).subscribe({next:e=>{this.taskInput="",this.dockInputRef?.nativeElement&&(this.dockInputRef.nativeElement.style.height="auto"),this.isSubmitting.set(!1),this.agentService.fetchStatus()},error:e=>{console.error("Failed to submit task:",e),this.isSubmitting.set(!1),this.errorMessage.set(e.error?.detail||"\u6267\u884C\u5668\u5FD9\u788C\uFF0C\u8BF7\u7B49\u5F85\u5F53\u524D\u4EFB\u52A1\u7ED3\u675F\u3002"),setTimeout(()=>{this.errorMessage.set(null)},5e3)}}))}stopTask(t){if(t&&t.stopPropagation(),!this.isTaskRunning())return;let e=this.agentService.currentSessionId();this.isSubmitting.set(!0),this.errorMessage.set(null),this.agentService.stopTask(e,!1),setTimeout(()=>{this.isSubmitting.set(!1)},400)}onDragStart(t){this.isDragging.set(!0),t.preventDefault(),this.zone.runOutsideAngular(()=>{document.addEventListener("mousemove",this.onMouseMove),document.addEventListener("mouseup",this.onMouseUp)})}onMouseMove=t=>{if(!this.isDragging())return;let e=window.innerWidth-t.clientX,o=250,i=window.innerWidth-300;e>=o&&e<=i&&(this.pendingDragWidth=e,this.dragWidthRafId===null&&(this.dragWidthRafId=requestAnimationFrame(()=>{this.dragWidthRafId=null,this.rightPanelWidth.set(this.pendingDragWidth)})))};onMouseUp=()=>{this.isDragging.set(!1),this.detachDragListeners()};detachDragListeners(){document.removeEventListener("mousemove",this.onMouseMove),document.removeEventListener("mouseup",this.onMouseUp),this.dragWidthRafId!==null&&(cancelAnimationFrame(this.dragWidthRafId),this.dragWidthRafId=null)}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=Ae({type:n,selectors:[["app-workspace"]],viewQuery:function(e,o){if(e&1&&Wi(I6,5),e&2){let i;eo(i=to())&&(o.dockInputRef=i.first)}},decls:67,vars:33,consts:[["dockInput",""],[1,"workspace-container"],[1,"left-panel","glass-panel"],[1,"workspace-floating-bar-wrapper"],[1,"floating-dock-toast","error"],[1,"floating-dock-row"],[1,"floating-dock-card",3,"click","mouseenter","mouseleave"],[1,"dock-wave-container"],[1,"wave-glow-ambient"],[1,"wave-tracks-wrapper"],["viewBox","0 0 2400 80","preserveAspectRatio","none",1,"liquid-wave","wave-back"],["id","waveGradBack","x1","0%","y1","0%","x2","100%","y2","0%"],["offset","0%",1,"wave-stop-1"],["offset","25%",1,"wave-stop-2"],["offset","50%",1,"wave-stop-3"],["offset","75%",1,"wave-stop-4"],["offset","100%",1,"wave-stop-1"],["d","M 0,25 Q 300,55 600,20 T 1200,25 Q 1500,55 1800,20 T 2400,25 L 2400,80 L 0,80 Z","fill","url(#waveGradBack)"],["viewBox","0 0 2400 80","preserveAspectRatio","none",1,"liquid-wave","wave-mid"],["id","waveGradMid","x1","0%","y1","0%","x2","100%","y2","0%"],["offset","0%",1,"wave-stop-3"],["offset","35%",1,"wave-stop-1"],["offset","70%",1,"wave-stop-4"],["offset","100%",1,"wave-stop-3"],["d","M 0,35 Q 300,5 600,45 T 1200,35 Q 1500,5 1800,45 T 2400,35 L 2400,80 L 0,80 Z","fill","url(#waveGradMid)"],["viewBox","0 0 2400 80","preserveAspectRatio","none",1,"liquid-wave","wave-front"],["id","waveGradFront","x1","0%","y1","0%","x2","100%","y2","0%"],["offset","0%",1,"wave-stop-2"],["offset","30%",1,"wave-stop-4"],["offset","65%",1,"wave-stop-1"],["offset","100%",1,"wave-stop-2"],["d","M 0,18 Q 300,50 600,15 T 1200,18 Q 1500,50 1800,15 T 2400,18 L 2400,80 L 0,80 Z","fill","url(#waveGradFront)"],[1,"capsule-peek-view"],[1,"capsule-placeholder"],[1,"expanded-card-content"],[1,"card-main-input-row"],[1,"input-content-area"],["rows","1","spellcheck","false",1,"dock-textarea",3,"ngModelChange","input","keydown","focus","blur","ngModel","disabled","placeholder"],["type","button","title","\u6E05\u7A7A\u8F93\u5165","aria-label","\u6E05\u7A7A\u8F93\u5165",1,"dock-circle-btn","btn-clear"],["type","button",1,"dock-circle-btn","btn-stop",3,"disabled","title"],["type","button","aria-label","\u5F00\u59CB\u4EFB\u52A1",1,"dock-circle-btn","btn-send",3,"click","disabled","title"],[1,"material-symbols-outlined","spinning-icon"],[1,"material-symbols-outlined"],[1,"card-footer-row"],[1,"footer-left-group"],["role","group","aria-label","\u9009\u62E9\u6267\u884C\u6A21\u5F0F",1,"model-profile-toggle"],["type","button","title","Flash\uFF1A\u5FEB\u901F\u6267\u884C\u65E5\u5E38\u5E94\u7528\u4EFB\u52A1\uFF08\u6BCF\u6B65 3\u20135 \u79D2\uFF09",1,"profile-toggle-pill",3,"mousedown","click"],[1,"material-symbols-outlined","pill-icon","icon-flash"],[1,"pill-label"],["type","button","title","Pro\uFF1A\u5148\u89C4\u5212\u3001\u68C0\u67E5\u7ED3\u679C\u5E76\u6062\u590D\u53D7\u963B\u6B65\u9AA4\uFF0C\u9002\u5408\u957F\u6D41\u7A0B\u6216\u590D\u6742\u4EFB\u52A1\uFF08\u6BCF\u6B65 15\u201340 \u79D2\uFF09",1,"profile-toggle-pill",3,"mousedown","click"],[1,"material-symbols-outlined","pill-icon","icon-pro"],["type","button",1,"standalone-stop-btn",3,"disabled","title"],[1,"resizer",3,"mousedown"],[1,"resizer-handle"],[1,"right-panel"],[1,"material-symbols-outlined","toast-icon"],[1,"toast-text"],["type","button","aria-label","\u5173\u95ED\u9519\u8BEF\u6D88\u606F",1,"btn-toast-close",3,"click"],["type","button","title","\u6E05\u7A7A\u8F93\u5165","aria-label","\u6E05\u7A7A\u8F93\u5165",1,"dock-circle-btn","btn-clear",3,"click"],["type","button",1,"dock-circle-btn","btn-stop",3,"click","disabled","title"],["type","button",1,"standalone-stop-btn",3,"click","disabled","title"]],template:function(e,o){if(e&1){let i=B();l(0,"div",1)(1,"main",2),z(2,"app-agent-stream"),l(3,"div",3),M(4,T6,8,1,"div",4),l(5,"div",5)(6,"div",6),I("click",function(a){return o.onCardClick(a)})("mouseenter",function(){return o.isHoveringCard.set(!0)})("mouseleave",function(){return o.isHoveringCard.set(!1)}),l(7,"div",7),z(8,"div",8),l(9,"div",9),Fi(),l(10,"svg",10)(11,"defs")(12,"linearGradient",11),z(13,"stop",12)(14,"stop",13)(15,"stop",14)(16,"stop",15)(17,"stop",16),d()(),z(18,"path",17),d(),l(19,"svg",18)(20,"defs")(21,"linearGradient",19),z(22,"stop",20)(23,"stop",21)(24,"stop",22)(25,"stop",23),d()(),z(26,"path",24),d(),l(27,"svg",25)(28,"defs")(29,"linearGradient",26),z(30,"stop",27)(31,"stop",28)(32,"stop",29)(33,"stop",30),d()(),z(34,"path",31),d()()(),dl(),l(35,"div",32)(36,"span",33),g(37,"\u5F00\u59CB\u65B0\u4EFB\u52A1\u2026"),d()(),l(38,"div",34)(39,"div",35)(40,"div",36)(41,"textarea",37,0),wt("ngModelChange",function(a){return S(i),Nt(o.taskInput,a)||(o.taskInput=a),k(a)}),I("input",function(a){return o.onTextareaInput(a)})("keydown",function(a){return o.onKeyDown(a)})("focus",function(){return o.onInputFocus()})("blur",function(){return o.onInputBlur()}),d(),Qe(),d(),M(43,A6,3,0,"button",38),M(44,R6,3,3,"button",39),l(45,"button",40),I("click",function(){return o.submitTask()}),M(46,F6,2,0,"span",41),M(47,N6,2,0,"span",42),d()(),l(48,"div",43)(49,"div",44)(50,"div",45)(51,"button",46),I("mousedown",function(a){return a.preventDefault()})("click",function(a){return o.setProfile("flash",a)}),l(52,"span",47),g(53,"bolt"),d(),l(54,"span",48),g(55,"Flash"),d()(),l(56,"button",49),I("mousedown",function(a){return a.preventDefault()})("click",function(a){return o.setProfile("pro",a)}),l(57,"span",50),g(58,"psychology"),d(),l(59,"span",48),g(60,"Pro"),d()()()()()()(),M(61,L6,3,3,"button",51),d()()(),l(62,"div",52),I("mousedown",function(a){return o.onDragStart(a)}),z(63,"div",53),d(),l(64,"aside",54),z(65,"app-chat-interface"),d(),z(66,"app-floating-video-player"),d()}e&2&&(E("is-resizing",o.isDragging()),p(3),E("is-expanded",o.isBarExpanded())("is-dormant",!o.isBarExpanded())("is-focused",o.isInputFocused())("has-text",!!o.taskInput.trim())("is-running",o.isTaskRunning()),p(),b(o.errorMessage()?4:-1),p(3),E("is-pro",o.selectedProfile()==="pro"),p(34),xt("ngModel",o.taskInput),N("disabled",o.isSubmitting())("placeholder",o.selectedProfile()==="pro"?"Pro: plans first, checks results and recovers from blocked steps. For long or complex tasks":"Flash: fast single-look loop for everyday app tasks"),Je(),p(2),b(o.taskInput.trim()&&!o.isSubmitting()?43:-1),p(),b(o.isTaskRunning()?44:-1),p(),E("has-content",!!o.taskInput.trim()),N("disabled",!o.taskInput.trim()||o.isSubmitting())("title",o.isSubmitting()?"Starting task...":"Start task (Enter)"),p(),b(o.isSubmitting()?46:-1),p(),b(o.isSubmitting()?-1:47),p(4),E("active",o.selectedProfile()==="flash"),p(5),E("active",o.selectedProfile()==="pro"),p(5),b(o.isTaskRunning()?61:-1),p(3),Ie("width",o.rightPanelWidth(),"px"))},dependencies:[Et,oi,ii,Eo,zu,pa,$u],styles:["[_nghost-%COMP%]{display:block;height:100vh;width:100vw;overflow:hidden;font-family:Google Sans Text,Google Sans,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.workspace-container[_ngcontent-%COMP%]{position:relative;display:flex;height:100vh;width:100vw;background-color:#e2e5ea;overflow:hidden}.workspace-container.is-resizing[_ngcontent-%COMP%]{cursor:col-resize;-webkit-user-select:none;user-select:none}.workspace-container[_ngcontent-%COMP%] .glass-panel[_ngcontent-%COMP%]{position:relative;z-index:1;background:#f4fafb;border:none;box-shadow:none}.workspace-container[_ngcontent-%COMP%] .left-panel[_ngcontent-%COMP%]{flex:1 0 500px;display:flex;flex-direction:column;overflow:hidden;background:#f4fafb;border-right:1px solid #e2e8f0;border-left:none;border-top:none;border-bottom:none;min-width:450px;height:100%}.workspace-container[_ngcontent-%COMP%] .right-panel[_ngcontent-%COMP%]{flex:0 1 auto;min-width:250px;max-width:100%;padding:0;border:none;background-color:#fff;box-shadow:-6px 0 24px #00000008;height:100%;display:flex;flex-direction:column;box-sizing:border-box;z-index:2}.workspace-container[_ngcontent-%COMP%] .resizer[_ngcontent-%COMP%]{width:12px;cursor:col-resize;display:flex;align-items:center;justify-content:center;z-index:10;transition:background .2s ease;margin:0 -6px}.workspace-container[_ngcontent-%COMP%] .resizer[_ngcontent-%COMP%]:hover, .workspace-container.is-resizing[_ngcontent-%COMP%] .workspace-container[_ngcontent-%COMP%] .resizer[_ngcontent-%COMP%]{background:#ffffff26}.workspace-container[_ngcontent-%COMP%] .resizer[_ngcontent-%COMP%]:hover .resizer-handle[_ngcontent-%COMP%], .workspace-container.is-resizing[_ngcontent-%COMP%] .workspace-container[_ngcontent-%COMP%] .resizer[_ngcontent-%COMP%] .resizer-handle[_ngcontent-%COMP%]{background:#5e72e4cc;height:60px}.workspace-container[_ngcontent-%COMP%] .resizer[_ngcontent-%COMP%] .resizer-handle[_ngcontent-%COMP%]{width:4px;height:40px;background:#00000026;border-radius:4px;transition:background .2s ease,height .2s ease}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%]{position:absolute;bottom:18px;left:50%;transform:translate(-50%);width:100%;max-width:min(680px,100% - 36px);z-index:50;display:flex;flex-direction:column;align-items:center;pointer-events:none;transition:all .25s cubic-bezier(.16,1,.3,1)}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .floating-dock-toast[_ngcontent-%COMP%]{pointer-events:auto;margin-bottom:8px;display:flex;align-items:center;gap:8px;padding:7px 14px;border-radius:12px;font-size:12.5px;font-weight:500;box-shadow:0 8px 24px -4px #ef444426;animation:_ngcontent-%COMP%_slideUpFade .2s ease-out;max-width:90%}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .floating-dock-toast.error[_ngcontent-%COMP%]{background:#fef2f2e0;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(254,202,202,.9);color:#991b1b}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .floating-dock-toast.error[_ngcontent-%COMP%] .toast-icon[_ngcontent-%COMP%]{font-size:16px;color:#ef4444;flex-shrink:0}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .floating-dock-toast.error[_ngcontent-%COMP%] .toast-text[_ngcontent-%COMP%]{flex:1;line-height:1.4}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .floating-dock-toast.error[_ngcontent-%COMP%] .btn-toast-close[_ngcontent-%COMP%]{background:transparent;border:none;padding:2px;cursor:pointer;color:#991b1b;display:flex;align-items:center;justify-content:center;border-radius:4px;opacity:.7;transition:opacity .15s ease}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .floating-dock-toast.error[_ngcontent-%COMP%] .btn-toast-close[_ngcontent-%COMP%]:hover{opacity:1;background:#0000000d}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .floating-dock-toast.error[_ngcontent-%COMP%] .btn-toast-close[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:15px}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .floating-dock-row[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;pointer-events:none;transition:gap .32s cubic-bezier(.16,1,.3,1)}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .standalone-stop-btn[_ngcontent-%COMP%]{pointer-events:auto;display:flex;align-items:center;justify-content:center;width:34px;height:34px;min-width:34px;border-radius:50%;border:1px solid rgba(255,255,255,.85);background:#ef4444e6;backdrop-filter:blur(24px) saturate(190%) brightness(105%);-webkit-backdrop-filter:blur(24px) saturate(190%) brightness(105%);color:#fff;box-shadow:0 6px 18px -2px #ef444466,inset 0 1px 1.5px #ffffffb3;cursor:pointer;outline:none;flex-shrink:0;transition:opacity .28s cubic-bezier(.16,1,.3,1),transform .28s cubic-bezier(.16,1,.3,1),width .28s cubic-bezier(.16,1,.3,1),min-width .28s cubic-bezier(.16,1,.3,1),margin .28s cubic-bezier(.16,1,.3,1),background .2s ease,box-shadow .2s ease;animation:_ngcontent-%COMP%_popIn .25s cubic-bezier(.16,1,.3,1)}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .standalone-stop-btn[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:17px;line-height:1}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .standalone-stop-btn[_ngcontent-%COMP%]:hover:not(:disabled){background:#dc2626;transform:scale(1.1);box-shadow:0 8px 22px #ef44448c,inset 0 1px 1.5px #ffffffe6}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .standalone-stop-btn[_ngcontent-%COMP%]:active:not(:disabled){transform:scale(.93)}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .standalone-stop-btn[_ngcontent-%COMP%]:disabled{opacity:.6;cursor:not-allowed}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .floating-dock-card[_ngcontent-%COMP%]{pointer-events:auto;position:relative;width:100%;border-radius:18px;box-sizing:border-box;overflow:hidden;transition:max-width .32s cubic-bezier(.16,1,.3,1),width .32s cubic-bezier(.16,1,.3,1),border-radius .28s cubic-bezier(.16,1,.3,1),box-shadow .28s ease,background .28s ease,transform .28s cubic-bezier(.16,1,.3,1),border-color .28s ease}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .dock-wave-container[_ngcontent-%COMP%]{position:absolute;bottom:0;left:0;right:0;height:100%;pointer-events:none;border-radius:inherit;overflow:hidden;z-index:0;opacity:.78;transition:opacity .35s ease,filter .35s ease}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .dock-wave-container[_ngcontent-%COMP%] .wave-stop-1[_ngcontent-%COMP%]{stop-color:#3b82f6;stop-opacity:.65}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .dock-wave-container[_ngcontent-%COMP%] .wave-stop-2[_ngcontent-%COMP%]{stop-color:#8b5cf6;stop-opacity:.7}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .dock-wave-container[_ngcontent-%COMP%] .wave-stop-3[_ngcontent-%COMP%]{stop-color:#f59e0b;stop-opacity:.65}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .dock-wave-container[_ngcontent-%COMP%] .wave-stop-4[_ngcontent-%COMP%]{stop-color:#06b6d4;stop-opacity:.6}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .dock-wave-container.is-pro[_ngcontent-%COMP%] .wave-stop-1[_ngcontent-%COMP%]{stop-color:#7c3aed;stop-opacity:.7}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .dock-wave-container.is-pro[_ngcontent-%COMP%] .wave-stop-2[_ngcontent-%COMP%]{stop-color:#ec4899;stop-opacity:.75}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .dock-wave-container.is-pro[_ngcontent-%COMP%] .wave-stop-3[_ngcontent-%COMP%]{stop-color:#6366f1;stop-opacity:.65}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .dock-wave-container.is-pro[_ngcontent-%COMP%] .wave-stop-4[_ngcontent-%COMP%]{stop-color:#a855f7;stop-opacity:.7}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .dock-wave-container[_ngcontent-%COMP%] .wave-glow-ambient[_ngcontent-%COMP%]{position:absolute;bottom:-8px;left:5%;right:5%;height:30px;border-radius:50%;background:radial-gradient(ellipse at center,rgba(99,102,241,.4) 0%,rgba(245,158,11,.2) 50%,transparent 80%);filter:blur(16px);opacity:.7;animation:_ngcontent-%COMP%_glowBreathe 5s ease-in-out infinite alternate}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .dock-wave-container.is-pro[_ngcontent-%COMP%] .wave-glow-ambient[_ngcontent-%COMP%]{background:radial-gradient(ellipse at center,rgba(168,85,247,.45) 0%,rgba(236,72,153,.25) 50%,transparent 80%)}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .dock-wave-container[_ngcontent-%COMP%] .wave-tracks-wrapper[_ngcontent-%COMP%]{position:absolute;bottom:0;left:0;width:100%;height:22px;overflow:hidden;mask-image:linear-gradient(to top,rgba(0,0,0,.9) 0%,rgba(0,0,0,.5) 60%,transparent 100%);-webkit-mask-image:linear-gradient(to top,rgba(0,0,0,.9) 0%,rgba(0,0,0,.5) 60%,transparent 100%)}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .dock-wave-container[_ngcontent-%COMP%] .wave-tracks-wrapper[_ngcontent-%COMP%] .liquid-wave[_ngcontent-%COMP%]{position:absolute;bottom:0;left:0;width:200%;height:100%;will-change:transform;filter:blur(8px)}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .dock-wave-container[_ngcontent-%COMP%] .wave-tracks-wrapper[_ngcontent-%COMP%] .liquid-wave.wave-back[_ngcontent-%COMP%]{opacity:.45;animation:_ngcontent-%COMP%_waveSlide 12s ease-in-out infinite alternate}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .dock-wave-container[_ngcontent-%COMP%] .wave-tracks-wrapper[_ngcontent-%COMP%] .liquid-wave.wave-mid[_ngcontent-%COMP%]{opacity:.6;animation:_ngcontent-%COMP%_waveSlideReverse 9s ease-in-out infinite alternate}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .dock-wave-container[_ngcontent-%COMP%] .wave-tracks-wrapper[_ngcontent-%COMP%] .liquid-wave.wave-front[_ngcontent-%COMP%]{opacity:.75;animation:_ngcontent-%COMP%_waveSlide 6.5s ease-in-out infinite alternate}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper.is-dormant[_ngcontent-%COMP%] .floating-dock-card[_ngcontent-%COMP%]{max-width:160px;width:160px;margin:0;background:#ffffffa6;backdrop-filter:blur(26px) saturate(190%) brightness(104%);-webkit-backdrop-filter:blur(26px) saturate(190%) brightness(104%);border:1px solid rgba(255,255,255,.85);border-radius:17px;box-shadow:0 6px 18px -2px #0f172a12,inset 0 1px 1.5px #fffffff2,inset 0 -1px 1px #ffffff4d;cursor:pointer;opacity:.92;transform:translateY(2px)}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper.is-dormant[_ngcontent-%COMP%] .floating-dock-card[_ngcontent-%COMP%] .dock-wave-container[_ngcontent-%COMP%]{opacity:.78}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper.is-dormant[_ngcontent-%COMP%] .floating-dock-card[_ngcontent-%COMP%] .dock-wave-container[_ngcontent-%COMP%] .wave-tracks-wrapper[_ngcontent-%COMP%]{height:12px}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper.is-dormant[_ngcontent-%COMP%] .floating-dock-card[_ngcontent-%COMP%]:hover{opacity:1;transform:translateY(0);background:#ffffffd1;border-color:#fff;box-shadow:0 8px 24px -2px #0f172a1f,inset 0 1px 1.5px #fff}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper.is-dormant[_ngcontent-%COMP%] .floating-dock-card[_ngcontent-%COMP%]:hover .dock-wave-container[_ngcontent-%COMP%]{opacity:.95;filter:drop-shadow(0 0 6px rgba(99,102,241,.35))}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper.is-dormant[_ngcontent-%COMP%] .floating-dock-card[_ngcontent-%COMP%] .capsule-peek-view[_ngcontent-%COMP%]{display:flex;opacity:1}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper.is-dormant[_ngcontent-%COMP%] .floating-dock-card[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%]{display:none;opacity:0}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .capsule-peek-view[_ngcontent-%COMP%]{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;padding:6px 14px;min-height:34px;box-sizing:border-box;-webkit-user-select:none;user-select:none}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .capsule-peek-view[_ngcontent-%COMP%] .capsule-placeholder[_ngcontent-%COMP%]{color:#475569;font-size:12px;font-weight:500;letter-spacing:.1px;white-space:nowrap;text-align:center}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper.is-expanded[_ngcontent-%COMP%] .floating-dock-row[_ngcontent-%COMP%]{gap:0}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper.is-expanded[_ngcontent-%COMP%] .standalone-stop-btn[_ngcontent-%COMP%]{opacity:0;width:0;min-width:0;margin:0;padding:0;border-width:0;transform:scale(.5);pointer-events:none}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper.is-expanded[_ngcontent-%COMP%] .floating-dock-card[_ngcontent-%COMP%]{max-width:100%;width:100%;background:#ffffffad;backdrop-filter:blur(32px) saturate(210%) brightness(105%);-webkit-backdrop-filter:blur(32px) saturate(210%) brightness(105%);border:1px solid rgba(255,255,255,.82);box-shadow:0 16px 44px -8px #0f172a1f,0 2px 8px #00000005,inset 0 1.5px 2px #fffffff2,inset 0 -1px 2px #ffffff4d;opacity:1;transform:translateY(0)}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper.is-expanded[_ngcontent-%COMP%] .floating-dock-card[_ngcontent-%COMP%] .dock-wave-container[_ngcontent-%COMP%]{opacity:.88}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper.is-expanded[_ngcontent-%COMP%] .floating-dock-card[_ngcontent-%COMP%] .dock-wave-container[_ngcontent-%COMP%] .wave-tracks-wrapper[_ngcontent-%COMP%]{height:22px}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper.is-expanded[_ngcontent-%COMP%] .floating-dock-card[_ngcontent-%COMP%] .capsule-peek-view[_ngcontent-%COMP%]{display:none;opacity:0}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper.is-expanded[_ngcontent-%COMP%] .floating-dock-card[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%]{display:block;opacity:1;animation:_ngcontent-%COMP%_cardFadeIn .25s cubic-bezier(.16,1,.3,1)}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper.is-focused[_ngcontent-%COMP%] .floating-dock-card[_ngcontent-%COMP%]{background:#ffffffc7;backdrop-filter:blur(36px) saturate(220%) brightness(106%);-webkit-backdrop-filter:blur(36px) saturate(220%) brightness(106%);border-color:#3b82f68c;box-shadow:0 20px 48px -6px #2563eb29,0 0 0 2.5px #3b82f62e,inset 0 1.5px 2px #fff}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper.is-focused[_ngcontent-%COMP%] .floating-dock-card[_ngcontent-%COMP%] .dock-wave-container[_ngcontent-%COMP%]{opacity:1;filter:drop-shadow(0 0 8px rgba(59,130,246,.35))}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%]{position:relative;z-index:1;display:flex;flex-direction:column;width:100%}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-main-input-row[_ngcontent-%COMP%]{display:flex;align-items:center;gap:10px;padding:8px 10px 3px 14px;min-height:48px;box-sizing:border-box}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-main-input-row[_ngcontent-%COMP%] .leading-status-icon[_ngcontent-%COMP%]{width:14px;height:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-main-input-row[_ngcontent-%COMP%] .leading-status-icon[_ngcontent-%COMP%] .pulse-indicator-dot[_ngcontent-%COMP%]{width:8px;height:8px;border-radius:50%;background:#ef4444;box-shadow:0 0 #ef444499;animation:_ngcontent-%COMP%_pulseDot 1.4s infinite}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-main-input-row[_ngcontent-%COMP%] .input-content-area[_ngcontent-%COMP%]{flex:1;min-width:0;display:flex;align-items:center}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-main-input-row[_ngcontent-%COMP%] .input-content-area[_ngcontent-%COMP%] .dock-textarea[_ngcontent-%COMP%]{width:100%;border:none;outline:none;background:transparent;resize:none;font-family:inherit;font-size:13.5px;font-weight:450;line-height:1.5;color:#0f172a;padding:3px 0;max-height:120px;box-sizing:border-box;display:block}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-main-input-row[_ngcontent-%COMP%] .input-content-area[_ngcontent-%COMP%] .dock-textarea[_ngcontent-%COMP%]::placeholder{color:#64748b;font-size:12.5px;font-weight:400;transition:color .15s ease}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-main-input-row[_ngcontent-%COMP%] .input-content-area[_ngcontent-%COMP%] .dock-textarea[_ngcontent-%COMP%]:disabled{opacity:.6;cursor:not-allowed}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-main-input-row[_ngcontent-%COMP%] .dock-circle-btn[_ngcontent-%COMP%]{border-radius:50%;display:flex;align-items:center;justify-content:center;border:none;cursor:pointer;outline:none;flex-shrink:0;transition:background .18s cubic-bezier(.16,1,.3,1),color .18s cubic-bezier(.16,1,.3,1),transform .18s cubic-bezier(.16,1,.3,1),box-shadow .18s cubic-bezier(.16,1,.3,1),border-color .18s cubic-bezier(.16,1,.3,1)}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-main-input-row[_ngcontent-%COMP%] .dock-circle-btn[_ngcontent-%COMP%] .material-symbols-outlined[_ngcontent-%COMP%]{font-size:18px;line-height:1}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-main-input-row[_ngcontent-%COMP%] .dock-circle-btn[_ngcontent-%COMP%] .spinning-icon[_ngcontent-%COMP%]{font-size:17px;animation:_ngcontent-%COMP%_spin 1s linear infinite}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-main-input-row[_ngcontent-%COMP%] .dock-circle-btn.btn-clear[_ngcontent-%COMP%]{width:26px;height:26px;background:#ffffff73;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.6);color:#64748b}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-main-input-row[_ngcontent-%COMP%] .dock-circle-btn.btn-clear[_ngcontent-%COMP%]:hover{background:#ffffffbf;color:#0f172a}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-main-input-row[_ngcontent-%COMP%] .dock-circle-btn.btn-stop[_ngcontent-%COMP%]{width:36px;height:36px;background:#ef4444e6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;border:1px solid rgba(255,255,255,.35);box-shadow:0 4px 12px #ef44444d;animation:_ngcontent-%COMP%_popIn .2s cubic-bezier(.16,1,.3,1)}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-main-input-row[_ngcontent-%COMP%] .dock-circle-btn.btn-stop[_ngcontent-%COMP%]:hover:not(:disabled){background:#dc2626;transform:scale(1.05);box-shadow:0 6px 16px #ef444466}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-main-input-row[_ngcontent-%COMP%] .dock-circle-btn.btn-stop[_ngcontent-%COMP%]:active:not(:disabled){transform:scale(.95)}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-main-input-row[_ngcontent-%COMP%] .dock-circle-btn.btn-stop[_ngcontent-%COMP%]:disabled{opacity:.6;cursor:not-allowed}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-main-input-row[_ngcontent-%COMP%] .dock-circle-btn.btn-send[_ngcontent-%COMP%]{width:36px;height:36px;background:#0f172ae0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.25);color:#fff;box-shadow:0 4px 14px #0f172a33,inset 0 1px 1px #ffffff40}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-main-input-row[_ngcontent-%COMP%] .dock-circle-btn.btn-send[_ngcontent-%COMP%]:disabled{background:#e2e8f099;color:#94a3b8;cursor:not-allowed;box-shadow:none;border-color:#ffffff80;transform:none}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-main-input-row[_ngcontent-%COMP%] .dock-circle-btn.btn-send.has-content[_ngcontent-%COMP%]:not(:disabled){background:linear-gradient(135deg,#1e293bf2,#0f172afa);box-shadow:0 4px 14px #0f172a40,inset 0 1px 1px #ffffff4d}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-main-input-row[_ngcontent-%COMP%] .dock-circle-btn.btn-send.has-content[_ngcontent-%COMP%]:not(:disabled):hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:scale(1.05);box-shadow:0 6px 18px #2563eb59}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-main-input-row[_ngcontent-%COMP%] .dock-circle-btn.btn-send[_ngcontent-%COMP%]:active:not(:disabled){transform:scale(.95)}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-footer-row[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding:3px 14px 8px;box-sizing:border-box}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-footer-row[_ngcontent-%COMP%] .footer-left-group[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-footer-row[_ngcontent-%COMP%] .footer-left-group[_ngcontent-%COMP%] .model-profile-toggle[_ngcontent-%COMP%]{display:inline-flex;align-items:center;background:#ffffff73;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.65);box-shadow:inset 0 1px 1px #fffc,0 1px 3px #00000008;border-radius:8px;padding:2px;gap:2px}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-footer-row[_ngcontent-%COMP%] .footer-left-group[_ngcontent-%COMP%] .model-profile-toggle[_ngcontent-%COMP%] .profile-toggle-pill[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;gap:3.5px;width:62px;min-width:62px;height:22px;border-radius:6px;border:none;background:transparent;color:#64748b;font-family:inherit;font-size:11px;font-weight:550;cursor:pointer;transition:color .16s cubic-bezier(.16,1,.3,1),background .16s cubic-bezier(.16,1,.3,1),box-shadow .16s cubic-bezier(.16,1,.3,1);outline:none;-webkit-user-select:none;user-select:none;box-sizing:border-box}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-footer-row[_ngcontent-%COMP%] .footer-left-group[_ngcontent-%COMP%] .model-profile-toggle[_ngcontent-%COMP%] .profile-toggle-pill[_ngcontent-%COMP%] .pill-icon[_ngcontent-%COMP%]{font-size:13px;line-height:1;flex-shrink:0}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-footer-row[_ngcontent-%COMP%] .footer-left-group[_ngcontent-%COMP%] .model-profile-toggle[_ngcontent-%COMP%] .profile-toggle-pill[_ngcontent-%COMP%] .pill-label[_ngcontent-%COMP%]{line-height:1}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-footer-row[_ngcontent-%COMP%] .footer-left-group[_ngcontent-%COMP%] .model-profile-toggle[_ngcontent-%COMP%] .profile-toggle-pill[_ngcontent-%COMP%]:hover:not(.active){color:#1e293b;background:#ffffffa6}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-footer-row[_ngcontent-%COMP%] .footer-left-group[_ngcontent-%COMP%] .model-profile-toggle[_ngcontent-%COMP%] .profile-toggle-pill.active[_ngcontent-%COMP%]{background:#ffffffeb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#0f172a;font-weight:700;box-shadow:0 1.5px 4px #00000014,inset 0 1px 1.5px #fff}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-footer-row[_ngcontent-%COMP%] .footer-left-group[_ngcontent-%COMP%] .model-profile-toggle[_ngcontent-%COMP%] .profile-toggle-pill.active[_ngcontent-%COMP%] .icon-flash[_ngcontent-%COMP%]{color:#d97706}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-footer-row[_ngcontent-%COMP%] .footer-left-group[_ngcontent-%COMP%] .model-profile-toggle[_ngcontent-%COMP%] .profile-toggle-pill.active[_ngcontent-%COMP%] .icon-pro[_ngcontent-%COMP%]{color:#7c3aed}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-footer-row[_ngcontent-%COMP%] .footer-right-status[_ngcontent-%COMP%] .running-status-pill[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:4.5px;font-size:10.5px;font-weight:600;color:#dc2626;background:#fee2e2b3;padding:2px 7px;border-radius:10px}.workspace-container[_ngcontent-%COMP%] .workspace-floating-bar-wrapper[_ngcontent-%COMP%] .expanded-card-content[_ngcontent-%COMP%] .card-footer-row[_ngcontent-%COMP%] .footer-right-status[_ngcontent-%COMP%] .running-status-pill[_ngcontent-%COMP%] .running-pulse-dot[_ngcontent-%COMP%]{width:5.5px;height:5.5px;border-radius:50%;background:#ef4444;animation:_ngcontent-%COMP%_pulseDot 1.2s infinite}@media(max-width:1150px){.workspace-container[_ngcontent-%COMP%] .right-panel[_ngcontent-%COMP%], .workspace-container[_ngcontent-%COMP%] .resizer[_ngcontent-%COMP%]{display:none!important}.workspace-container[_ngcontent-%COMP%] .left-panel[_ngcontent-%COMP%]{border-right:none!important;width:100%!important;flex:1 1 100%!important;min-width:0!important}}@keyframes _ngcontent-%COMP%_popIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes _ngcontent-%COMP%_spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes _ngcontent-%COMP%_slideUpFade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes _ngcontent-%COMP%_cardFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes _ngcontent-%COMP%_fadeIn{0%{opacity:0}to{opacity:1}}@keyframes _ngcontent-%COMP%_pulseDot{0%{transform:scale(.95);box-shadow:0 0 #ef4444b3}70%{transform:scale(1);box-shadow:0 0 0 6px #ef444400}to{transform:scale(.95);box-shadow:0 0 #ef444400}}@keyframes _ngcontent-%COMP%_waveSlide{0%{transform:translateZ(0)}to{transform:translate3d(-50%,0,0)}}@keyframes _ngcontent-%COMP%_waveSlideReverse{0%{transform:translate3d(-50%,0,0)}to{transform:translateZ(0)}}@keyframes _ngcontent-%COMP%_glowBreathe{0%{opacity:.55;transform:scaleX(.92)}to{opacity:.95;transform:scaleX(1.08)}}@media(prefers-reduced-motion:reduce){.liquid-wave[_ngcontent-%COMP%], .wave-glow-ambient[_ngcontent-%COMP%], .pulse-indicator-dot[_ngcontent-%COMP%], .running-pulse-dot[_ngcontent-%COMP%]{animation:none!important}}"]})};var V6=(n,t)=>[n,t];function B6(n,t){if(n&1&&(l(0,"option",8),g(1),mt(2,"date"),d()),n&2){let e=t.$implicit;N("value",e.session_id),p(),Br(" ",e.initial_goal||"Unnamed Goal"," (",e.device_serial?e.device_serial+" \xB7 ":"","",qt(2,4,e.start_time*1e3,"short"),") ")}}function j6(n,t){n&1&&(l(0,"div",11)(1,"div",13),g(2,"\u{1F4E1}"),d(),l(3,"h3"),g(4,"\u5C1A\u672A\u9009\u62E9\u6267\u884C\u8BB0\u5F55"),d(),l(5,"p"),g(6,"\u8BF7\u5728\u4E0A\u65B9\u4E0B\u62C9\u5217\u8868\u9009\u62E9\u6B63\u5728\u8FD0\u884C\u7684\u4F1A\u8BDD\uFF0C\u67E5\u770B\u5B9E\u65F6\u65E5\u5FD7\u3002"),d()())}function z6(n,t){if(n&1&&(l(0,"div",22)(1,"div",27),g(2,"\u{1F4AC} \u7528\u6237\u6D88\u606F / \u6458\u8981\uFF1A"),d(),l(3,"div",28),g(4),d()()),n&2){let e=m(2).$implicit;p(4),y(e.data.summary)}}function $6(n,t){if(n&1&&(l(0,"details",23)(1,"summary",29),g(2,"\u{1F9E0} \u6A21\u578B\u601D\u8003\u8FC7\u7A0B\uFF08\u70B9\u51FB\u5C55\u5F00\uFF09"),d(),l(3,"div",30),g(4),d()()),n&2){let e=m(2).$implicit;p(4),y(e.data.operator_native_thinking)}}function H6(n,t){if(n&1&&(l(0,"details",24)(1,"summary",29),g(2,"\u{1F4DD} \u539F\u59CB\u8BA1\u5212 / \u601D\u8003\uFF08\u70B9\u51FB\u5C55\u5F00\uFF09"),d(),l(3,"div",31),g(4),d()()),n&2){let e=m(2).$implicit;p(4),y(e.data.operator_raw_thinking)}}function U6(n,t){if(n&1&&(l(0,"details",25)(1,"summary",29),g(2,"\u{1F6E0}\uFE0F \u5DE5\u5177\u8C03\u7528\u8BE6\u60C5\uFF08\u70B9\u51FB\u5C55\u5F00\uFF09"),d(),l(3,"div",32)(4,"pre",33)(5,"code"),g(6),d()()()()),n&2){let e=m(2).$implicit,o=m(2);N("open",o.isShortContent(e.data.action_taken)),p(6),y(o.formatJson(e.data.action_taken))}}function W6(n,t){if(n&1&&(l(0,"details",26)(1,"summary",29),g(2,"\u2713 \u6267\u884C\u7ED3\u679C\uFF08\u70B9\u51FB\u5C55\u5F00\uFF09"),d(),l(3,"div",32)(4,"pre",33)(5,"code"),g(6),d()()()()),n&2){let e=m(2).$implicit,o=m(2);p(6),y(o.formatJson(e.data.last_execution_result))}}function G6(n,t){if(n&1&&(l(0,"div",20),M(1,z6,5,1,"div",22),M(2,$6,5,1,"details",23),M(3,H6,5,1,"details",24),M(4,U6,7,2,"details",25),M(5,W6,7,1,"details",26),d()),n&2){let e=m().$implicit;p(),b(e.data.summary?1:-1),p(),b(e.data.operator_native_thinking?2:-1),p(),b(e.data.operator_raw_thinking?3:-1),p(),b(e.data.action_taken?4:-1),p(),b(e.data.last_execution_result?5:-1)}}function q6(n,t){if(n&1&&(l(0,"div",21)(1,"details",34)(2,"summary",29),g(3,"\u{1F4C4} \u539F\u59CB\u6570\u636E\uFF08\u70B9\u51FB\u5C55\u5F00\uFF09"),d(),l(4,"div",32)(5,"pre",33)(6,"code"),g(7),d()()()()()),n&2){let e=m().$implicit,o=m(2);p(),N("open",o.isShortContent(e.data)),p(6),y(o.formatJson(e.data))}}function Y6(n,t){if(n&1&&(l(0,"div",14)(1,"div",15)(2,"div",16)(3,"span",17),g(4),d(),l(5,"span",18),g(6),d()(),l(7,"span",19),g(8),mt(9,"date"),d()(),M(10,G6,6,5,"div",20),M(11,q6,8,2,"div",21),d()),n&2){let e=t.$implicit,o=t.$index,i=m(2);N("ngClass",Hf(10,V6,"type-"+e.type,i.isStepEvent(e.type)?"step-event-card":"raw-event-card")),p(4),L("#",o+1),p(),N("ngClass",e.type),p(),y(e.type),p(2),y(qt(9,7,e.timestamp,"HH:mm:ss.SSS")),p(2),b(i.isStepEvent(e.type)?10:-1),p(),b(i.isStepEvent(e.type)?-1:11)}}function K6(n,t){if(n&1&&(l(0,"div",12),W(1,Y6,12,13,"div",14,ze),d()),n&2){let e=m();p(),G(e.agentService.sessionLogs())}}var Uu=class n{agentService=v(Zt);onSessionChange(t){let o=t.target.value;o&&this.agentService.selectSession(o,!0)}isStepEvent(t){return t==="step_recorded"||t==="step_updated"}isShortContent(t){return t?(typeof t=="string"?t:JSON.stringify(t)).length<200:!0}formatJson(t){if(typeof t=="string")try{return JSON.stringify(JSON.parse(t),null,2)}catch(e){return t}return JSON.stringify(t,null,2)}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=Ae({type:n,selectors:[["app-legacy-agent-stream"]],decls:20,vars:3,consts:[[1,"agent-stream-container"],[1,"stream-header"],[1,"header-title"],[1,"subtitle"],[1,"session-selector-wrapper"],["for","session-select"],["id","session-select",1,"session-dropdown",3,"change","value"],["value","","disabled","","selected",""],[3,"value"],[1,"btn-refresh",3,"click"],[1,"stream-logs-content"],[1,"empty-state"],[1,"logs-list"],[1,"empty-icon"],[1,"log-card",3,"ngClass"],[1,"log-card-header"],[1,"badge-group"],[1,"index-badge"],[1,"type-badge",3,"ngClass"],[1,"timestamp"],[1,"log-card-body","step-body"],[1,"log-card-body","raw-body"],[1,"step-summary-section"],[1,"thinking-details"],[1,"planning-details"],[1,"tool-details",3,"open"],[1,"result-details"],[1,"section-title"],[1,"summary-bubble"],[1,"details-summary"],[1,"details-content","thinking-text"],[1,"details-content","planning-text"],[1,"details-content"],[1,"json-code"],[1,"raw-details",3,"open"]],template:function(e,o){e&1&&(l(0,"div",0)(1,"header",1)(2,"div",2)(3,"h2"),g(4,"\u{1F463} \u667A\u80FD\u4F53\u5B9E\u65F6\u8BB0\u5F55\uFF08\u7ECF\u5178\u5361\u7247\u89C6\u56FE\uFF09"),d(),l(5,"p",3),g(6,"\u9009\u62E9\u4F1A\u8BDD\uFF0C\u67E5\u770B\u667A\u80FD\u4F53\u6267\u884C\u8BB0\u5F55"),d()(),l(7,"div",4)(8,"label",5),g(9,"\u5F53\u524D\u4F1A\u8BDD\uFF1A"),d(),l(10,"select",6),I("change",function(r){return o.onSessionChange(r)}),l(11,"option",7),g(12,"-- \u9009\u62E9\u4F1A\u8BDD --"),d(),W(13,B6,3,7,"option",8,ze),d(),l(15,"button",9),I("click",function(){return o.agentService.fetchSessions()}),g(16,"\u{1F504} \u5237\u65B0"),d()()(),l(17,"main",10),M(18,j6,7,0,"div",11),M(19,K6,3,0,"div",12),d()()),e&2&&(p(10),N("value",o.agentService.currentSessionId()||""),p(3),G(o.agentService.sessions()),p(5),b(o.agentService.sessionLogs().length===0?18:-1),p(),b(o.agentService.sessionLogs().length>0?19:-1))},dependencies:[Qo,Ki,Et,QO,ev,Zi],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;height:100%;width:100%;overflow:hidden}.agent-stream-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%;background:#fff6;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-sizing:border-box}.agent-stream-container[_ngcontent-%COMP%] .stream-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(0,0,0,.08);background:#fff9;flex-wrap:wrap;gap:16px}.agent-stream-container[_ngcontent-%COMP%] .stream-header[_ngcontent-%COMP%] .header-title[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{margin:0 0 4px;font-size:20px;font-weight:700;color:#1f2937;letter-spacing:-.5px}.agent-stream-container[_ngcontent-%COMP%] .stream-header[_ngcontent-%COMP%] .header-title[_ngcontent-%COMP%] .subtitle[_ngcontent-%COMP%]{margin:0;font-size:13px;color:#4b5563}.agent-stream-container[_ngcontent-%COMP%] .stream-header[_ngcontent-%COMP%] .session-selector-wrapper[_ngcontent-%COMP%]{display:flex;align-items:center;gap:12px}.agent-stream-container[_ngcontent-%COMP%] .stream-header[_ngcontent-%COMP%] .session-selector-wrapper[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{font-size:13.5px;font-weight:600;color:#1f2937}.agent-stream-container[_ngcontent-%COMP%] .stream-header[_ngcontent-%COMP%] .session-selector-wrapper[_ngcontent-%COMP%] .session-dropdown[_ngcontent-%COMP%]{padding:8px 12px;border:1px solid rgba(0,0,0,.12);border-radius:8px;font-size:13.5px;background-color:#fff;outline:none;color:#1f2937;min-width:250px;max-width:400px;cursor:pointer;transition:border-color .2s}.agent-stream-container[_ngcontent-%COMP%] .stream-header[_ngcontent-%COMP%] .session-selector-wrapper[_ngcontent-%COMP%] .session-dropdown[_ngcontent-%COMP%]:focus{border-color:#3b82f6}.agent-stream-container[_ngcontent-%COMP%] .stream-header[_ngcontent-%COMP%] .session-selector-wrapper[_ngcontent-%COMP%] .btn-refresh[_ngcontent-%COMP%]{padding:8px 14px;background:#fff;border:1px solid rgba(0,0,0,.12);border-radius:8px;font-size:13px;font-weight:600;color:#1f2937;cursor:pointer;display:flex;align-items:center;gap:6px;transition:background .2s,transform .1s}.agent-stream-container[_ngcontent-%COMP%] .stream-header[_ngcontent-%COMP%] .session-selector-wrapper[_ngcontent-%COMP%] .btn-refresh[_ngcontent-%COMP%]:hover{background:#f3f4f6}.agent-stream-container[_ngcontent-%COMP%] .stream-header[_ngcontent-%COMP%] .session-selector-wrapper[_ngcontent-%COMP%] .btn-refresh[_ngcontent-%COMP%]:active{transform:scale(.98)}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%]{flex:1;overflow-y:auto;padding:24px;background:#f9fafb4d}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%]::-webkit-scrollbar{width:6px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%]::-webkit-scrollbar-track{background:transparent}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%]::-webkit-scrollbar-thumb{background:#00000026;border-radius:10px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%]::-webkit-scrollbar-thumb:hover{background:#00000040}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .empty-state[_ngcontent-%COMP%]{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .empty-state[_ngcontent-%COMP%] .empty-icon[_ngcontent-%COMP%]{font-size:48px;margin-bottom:16px;opacity:.8}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .empty-state[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{margin:0 0 8px;font-size:18px;font-weight:600;color:#1f2937}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .empty-state[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0;font-size:14px;color:#4b5563;max-width:320px;line-height:1.5}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:16px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%]{background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:12px;padding:16px 20px;box-shadow:0 4px 6px -1px #00000003,0 2px 4px -1px #00000002;display:flex;flex-direction:column;gap:12px;transition:transform .2s,box-shadow .2s}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%]:hover{transform:translateY(-1px);box-shadow:0 10px 15px -3px #00000005,0 4px 6px -2px #00000003}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-header[_ngcontent-%COMP%] .badge-group[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-header[_ngcontent-%COMP%] .badge-group[_ngcontent-%COMP%] .index-badge[_ngcontent-%COMP%]{font-size:11px;font-weight:700;color:#9ca3af;font-family:monospace}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-header[_ngcontent-%COMP%] .badge-group[_ngcontent-%COMP%] .type-badge[_ngcontent-%COMP%]{font-size:10px;font-weight:800;text-transform:uppercase;padding:2.5px 7px;border-radius:9999px;letter-spacing:.5px;font-family:monospace}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-header[_ngcontent-%COMP%] .badge-group[_ngcontent-%COMP%] .type-badge.llm_stream[_ngcontent-%COMP%]{background:#e0f2fe;color:#0369a1}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-header[_ngcontent-%COMP%] .badge-group[_ngcontent-%COMP%] .type-badge.trace_recorded[_ngcontent-%COMP%]{background:#f3e8ff;color:#6b21a8}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-header[_ngcontent-%COMP%] .badge-group[_ngcontent-%COMP%] .type-badge.step_recorded[_ngcontent-%COMP%]{background:#ecfdf5;color:#047857}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-header[_ngcontent-%COMP%] .badge-group[_ngcontent-%COMP%] .type-badge.step_updated[_ngcontent-%COMP%]{background:#fef3c7;color:#b45309}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-header[_ngcontent-%COMP%] .badge-group[_ngcontent-%COMP%] .type-badge.background_tasks_updated[_ngcontent-%COMP%]{background:#fff1f2;color:#be123c}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-header[_ngcontent-%COMP%] .timestamp[_ngcontent-%COMP%]{font-size:11.5px;color:#9ca3af;font-family:monospace}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-body.step-body[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:16px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-body.step-body[_ngcontent-%COMP%] .step-summary-section[_ngcontent-%COMP%] .section-title[_ngcontent-%COMP%]{font-size:11px;font-weight:700;color:#4b5563;margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-body.step-body[_ngcontent-%COMP%] .step-summary-section[_ngcontent-%COMP%] .summary-bubble[_ngcontent-%COMP%]{background:#f1f5f9;border:1px solid rgba(0,0,0,.05);border-left:4px solid #475569;border-radius:8px;padding:12px 16px;font-size:13.5px;line-height:1.5;color:#1e293b}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-body.step-body[_ngcontent-%COMP%] details[_ngcontent-%COMP%]{border:1px solid rgba(0,0,0,.06);border-radius:8px;background:#fafafa;overflow:hidden;transition:border-color .2s}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-body.step-body[_ngcontent-%COMP%] details[open][_ngcontent-%COMP%]{border-color:#0000001f}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-body.step-body[_ngcontent-%COMP%] details[open][_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%]{border-bottom:1px solid rgba(0,0,0,.06);background:#00000005}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-body.step-body[_ngcontent-%COMP%] details[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%]{padding:10px 14px;font-size:12.5px;font-weight:700;color:#4b5563;cursor:pointer;-webkit-user-select:none;user-select:none;outline:none;background:#fff;transition:background .2s}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-body.step-body[_ngcontent-%COMP%] details[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%]:hover{background:#00000003}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-body.step-body[_ngcontent-%COMP%] details[_ngcontent-%COMP%] .details-content[_ngcontent-%COMP%]{padding:14px;font-size:13px;line-height:1.6;color:#334155}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-body.step-body[_ngcontent-%COMP%] details[_ngcontent-%COMP%] .details-content.thinking-text[_ngcontent-%COMP%]{background:#f0fdf4;color:#14532d;white-space:pre-wrap;font-family:inherit}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-body.step-body[_ngcontent-%COMP%] details[_ngcontent-%COMP%] .details-content.planning-text[_ngcontent-%COMP%]{background:#f8fafc;color:#334155;white-space:pre-wrap;font-family:inherit}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-body.step-body[_ngcontent-%COMP%] details.thinking-details[_ngcontent-%COMP%]{border-left:4px solid #16a34a}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-body.step-body[_ngcontent-%COMP%] details.thinking-details[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%]{color:#16a34a}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-body.step-body[_ngcontent-%COMP%] details.planning-details[_ngcontent-%COMP%]{border-left:4px solid #4f46e5}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-body.step-body[_ngcontent-%COMP%] details.planning-details[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%]{color:#4f46e5}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-body.step-body[_ngcontent-%COMP%] details.tool-details[_ngcontent-%COMP%]{border-left:4px solid #2563eb}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-body.step-body[_ngcontent-%COMP%] details.tool-details[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%]{color:#2563eb}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-body.step-body[_ngcontent-%COMP%] details.result-details[_ngcontent-%COMP%]{border-left:4px solid #0891b2}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-body.step-body[_ngcontent-%COMP%] details.result-details[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%]{color:#0891b2}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-body.raw-body[_ngcontent-%COMP%] details[_ngcontent-%COMP%]{border:1px solid rgba(0,0,0,.06);border-radius:8px;overflow:hidden}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-body.raw-body[_ngcontent-%COMP%] details[_ngcontent-%COMP%] .details-summary[_ngcontent-%COMP%]{padding:10px 14px;font-size:12px;font-weight:600;color:#4b5563;cursor:pointer;outline:none;background:#fff}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-body.raw-body[_ngcontent-%COMP%] details[_ngcontent-%COMP%] .details-content[_ngcontent-%COMP%]{padding:12px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-body[_ngcontent-%COMP%] .json-code[_ngcontent-%COMP%]{margin:0;background:#1e293b;color:#f8fafc;padding:14px 18px;border-radius:8px;font-family:Fira Code,Roboto Mono,monospace;font-size:12.5px;line-height:1.5;overflow-x:auto;white-space:pre-wrap;word-break:break-all}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-body[_ngcontent-%COMP%] .json-code[_ngcontent-%COMP%]::-webkit-scrollbar{height:4px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-body[_ngcontent-%COMP%] .json-code[_ngcontent-%COMP%]::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.agent-stream-container[_ngcontent-%COMP%] .stream-logs-content[_ngcontent-%COMP%] .logs-list[_ngcontent-%COMP%] .log-card[_ngcontent-%COMP%] .log-card-body[_ngcontent-%COMP%] .json-code[_ngcontent-%COMP%]::-webkit-scrollbar-thumb:hover{background:#ffffff4d}"],changeDetection:1})};var Wu=class n{rightPanelWidth=typeof window<"u"?Math.round(window.innerWidth/3):450;isDragging=!1;onDragStart(t){this.isDragging=!0,t.preventDefault()}onMouseMove(t){if(!this.isDragging)return;let e=window.innerWidth-t.clientX,o=300,i=window.innerWidth-300;e>=o&&e<=i&&(this.rightPanelWidth=e)}onMouseUp(){this.isDragging=!1}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=Ae({type:n,selectors:[["app-legacy-workspace"]],hostBindings:function(e,o){e&1&&I("mousemove",function(r){return o.onMouseMove(r)},Kl)("mouseup",function(){return o.onMouseUp()},Kl)},decls:11,vars:4,consts:[[1,"workspace-container"],[1,"aurora-background"],[1,"glow","glow-1"],[1,"glow","glow-2"],[1,"glow","glow-3"],[1,"left-panel","glass-panel"],[1,"resizer",3,"mousedown"],[1,"resizer-handle"],[1,"right-panel"]],template:function(e,o){e&1&&(l(0,"div",0)(1,"div",1),z(2,"div",2)(3,"div",3)(4,"div",4),d(),l(5,"main",5),z(6,"app-legacy-agent-stream"),d(),l(7,"div",6),I("mousedown",function(r){return o.onDragStart(r)}),z(8,"div",7),d(),l(9,"aside",8),z(10,"app-chat-interface"),d()()),e&2&&(E("is-resizing",o.isDragging),p(9),Ie("width",o.rightPanelWidth,"px"))},dependencies:[Uu,pa],styles:[".workspace-container[_ngcontent-%COMP%]{position:relative;display:flex;height:100vh;width:100vw;background-color:#e2e5ea;overflow:hidden}.workspace-container.is-resizing[_ngcontent-%COMP%]{cursor:col-resize;-webkit-user-select:none;user-select:none}.workspace-container[_ngcontent-%COMP%] .aurora-background[_ngcontent-%COMP%]{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0;overflow:hidden;background:linear-gradient(135deg,#e2e5ea,#cfd6df)}.workspace-container[_ngcontent-%COMP%] .aurora-background[_ngcontent-%COMP%] .glow[_ngcontent-%COMP%]{position:absolute;border-radius:50%;filter:blur(90px);opacity:.5;animation:_ngcontent-%COMP%_aurora-drift 22s infinite alternate ease-in-out}.workspace-container[_ngcontent-%COMP%] .aurora-background[_ngcontent-%COMP%] .glow-1[_ngcontent-%COMP%]{width:55vw;height:55vh;background:#5e72e440;top:-15%;left:-5%;animation-delay:0s}.workspace-container[_ngcontent-%COMP%] .aurora-background[_ngcontent-%COMP%] .glow-2[_ngcontent-%COMP%]{width:45vw;height:45vh;background:#2dce8933;bottom:-10%;left:30%;animation-delay:-5s}.workspace-container[_ngcontent-%COMP%] .aurora-background[_ngcontent-%COMP%] .glow-3[_ngcontent-%COMP%]{width:50vw;height:60vh;background:#ce68ac26;top:20%;right:-10%;animation-delay:-10s}.workspace-container[_ngcontent-%COMP%] .glass-panel[_ngcontent-%COMP%]{position:relative;z-index:1;background:#ffffff73;backdrop-filter:blur(24px) saturate(120%);-webkit-backdrop-filter:blur(24px) saturate(120%);border:1px solid rgba(255,255,255,.6);box-shadow:0 8px 32px #1f26870d}.workspace-container[_ngcontent-%COMP%] .left-panel[_ngcontent-%COMP%]{flex:1;display:flex;flex-direction:column;overflow:hidden;background:#ffffff59;border-right:1px solid rgba(255,255,255,.8);border-left:none;border-top:none;border-bottom:none}.workspace-container[_ngcontent-%COMP%] .right-panel[_ngcontent-%COMP%]{min-width:300px;flex-shrink:0;padding:0;border:none;background-color:#fff;box-shadow:-6px 0 24px #00000008;height:100%;display:flex;flex-direction:column;box-sizing:border-box;z-index:2}.workspace-container[_ngcontent-%COMP%] .resizer[_ngcontent-%COMP%]{width:12px;cursor:col-resize;display:flex;align-items:center;justify-content:center;z-index:10;transition:background .2s ease;margin:0 -6px}.workspace-container[_ngcontent-%COMP%] .resizer[_ngcontent-%COMP%]:hover, .workspace-container.is-resizing[_ngcontent-%COMP%] .workspace-container[_ngcontent-%COMP%] .resizer[_ngcontent-%COMP%]{background:#ffffff26}.workspace-container[_ngcontent-%COMP%] .resizer[_ngcontent-%COMP%]:hover .resizer-handle[_ngcontent-%COMP%], .workspace-container.is-resizing[_ngcontent-%COMP%] .workspace-container[_ngcontent-%COMP%] .resizer[_ngcontent-%COMP%] .resizer-handle[_ngcontent-%COMP%]{background:#5e72e4cc;height:60px}.workspace-container[_ngcontent-%COMP%] .resizer[_ngcontent-%COMP%] .resizer-handle[_ngcontent-%COMP%]{width:4px;height:40px;background:#00000026;border-radius:4px;transition:all .2s ease}@keyframes _ngcontent-%COMP%_aurora-drift{0%{transform:translate(0) scale(1)}50%{transform:translate(5%,3%) scale(1.05)}to{transform:translate(-2%,-5%) scale(.95)}}"],changeDetection:1})};var Iy=[{path:"",component:Eu},{path:"workspace",component:Hu},{path:"check",component:Wu},{path:"**",redirectTo:""}];Jb(xP);var Ty={providers:[{provide:Yi,useValue:"zh-CN"},Db({eventCoalescing:!0}),Wm(Iy),fm(mm())]};var Z6=()=>({exact:!0}),Gu=class n{static \u0275fac=function(e){return new(e||n)};static \u0275cmp=Ae({type:n,selectors:[["app-nav-switcher"]],decls:11,vars:2,consts:[["aria-label","\u4E3B\u5BFC\u822A",1,"floating-nav-switcher"],["routerLink","/","routerLinkActive","active","title","\u8FD4\u56DE\u9996\u9875\u5F00\u59CB\u65B0\u4EFB\u52A1",1,"nav-tab-btn",3,"routerLinkActiveOptions"],[1,"material-symbols-outlined","tab-icon"],[1,"tab-label"],["routerLink","/workspace","routerLinkActive","active","title","\u6253\u5F00\u5DE5\u4F5C\u533A",1,"nav-tab-btn"]],template:function(e,o){e&1&&(l(0,"nav",0)(1,"a",1)(2,"span",2),g(3,"add_task"),d(),l(4,"span",3),g(5,"\u65B0\u4EFB\u52A1 / \u9996\u9875"),d()(),l(6,"a",4)(7,"span",2),g(8,"space_dashboard"),d(),l(9,"span",3),g(10,"\u5DE5\u4F5C\u533A"),d()()()),e&2&&(p(),N("routerLinkActiveOptions",zf(1,Z6)))},dependencies:[ia,Um],styles:[".floating-nav-switcher[_ngcontent-%COMP%]{position:fixed;top:12px;left:24px;z-index:1100;height:36px;box-sizing:border-box;display:inline-flex;align-items:center;background:#ffffffb8;backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);border:1px solid rgba(226,232,240,.85);border-radius:18px;padding:3px;gap:3px;box-shadow:0 2px 8px -1px #0f172a0f,0 1px 2px #00000005,inset 0 1px 1px #ffffffe6;-webkit-user-select:none;user-select:none;font-family:Google Sans,Google Sans Text,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;transition:background .25s cubic-bezier(.4,0,.2,1),box-shadow .25s cubic-bezier(.4,0,.2,1),border-color .25s cubic-bezier(.4,0,.2,1)}.floating-nav-switcher[_ngcontent-%COMP%]:hover{background:#ffffffd9;box-shadow:0 4px 14px -2px #0f172a1a,0 2px 4px #00000008,inset 0 1px 1px #fff;border-color:#cbd5e1e6}.floating-nav-switcher[_ngcontent-%COMP%] .nav-tab-btn[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:30px;padding:0 14px;box-sizing:border-box;border-radius:15px;font-size:13px;font-weight:600;color:#475569;text-decoration:none;cursor:pointer;line-height:1;transition:background .2s cubic-bezier(.4,0,.2,1),color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1);outline:none;white-space:nowrap}.floating-nav-switcher[_ngcontent-%COMP%] .nav-tab-btn[_ngcontent-%COMP%] .tab-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;color:#64748b;transition:color .15s ease,transform .15s ease}.floating-nav-switcher[_ngcontent-%COMP%] .nav-tab-btn[_ngcontent-%COMP%] .tab-label[_ngcontent-%COMP%]{color:#475569;transition:color .15s ease}.floating-nav-switcher[_ngcontent-%COMP%] .nav-tab-btn[_ngcontent-%COMP%]:hover:not(.active){background:#ffffffb3;color:#0f172a}.floating-nav-switcher[_ngcontent-%COMP%] .nav-tab-btn[_ngcontent-%COMP%]:hover:not(.active) .tab-icon[_ngcontent-%COMP%]{color:#1a73e8}.floating-nav-switcher[_ngcontent-%COMP%] .nav-tab-btn[_ngcontent-%COMP%]:hover:not(.active) .tab-label[_ngcontent-%COMP%]{color:#0f172a}.floating-nav-switcher[_ngcontent-%COMP%] .nav-tab-btn.active[_ngcontent-%COMP%]{background:#1a73e8f2!important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#fff!important;font-weight:700;box-shadow:0 2px 8px #1a73e859,inset 0 1px 1px #ffffff59}.floating-nav-switcher[_ngcontent-%COMP%] .nav-tab-btn.active[_ngcontent-%COMP%] .tab-icon[_ngcontent-%COMP%], .floating-nav-switcher[_ngcontent-%COMP%] .nav-tab-btn.active[_ngcontent-%COMP%] .tab-label[_ngcontent-%COMP%], .floating-nav-switcher[_ngcontent-%COMP%] .nav-tab-btn.active[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:#fff!important}.floating-nav-switcher[_ngcontent-%COMP%] .nav-tab-btn[_ngcontent-%COMP%]:active{transform:scale(.97)}"],changeDetection:1})};var qu=class n{title="frontend";static \u0275fac=function(e){return new(e||n)};static \u0275cmp=Ae({type:n,selectors:[["app-root"]],decls:2,vars:0,template:function(e,o){e&1&&z(0,"app-nav-switcher")(1,"router-outlet")},dependencies:[Rs,Gu],encapsulation:2,changeDetection:1})};cm(qu,Ty).catch(n=>console.error(n));