diff --git a/Client-Tech/dist/bundle.js b/Client-Tech/dist/bundle.js
index e2c83d1..cb1c39a 100644
--- a/Client-Tech/dist/bundle.js
+++ b/Client-Tech/dist/bundle.js
@@ -1,2 +1,2 @@
/*! For license information please see bundle.js.LICENSE.txt */
-(()=>{"use strict";var e={56(e,t,n){e.exports=function(e){var t=n.nc;t&&e.setAttribute("nonce",t)}},72(e){var t=[];function n(e){for(var n=-1,r=0;r
No information available for this topic yet.
")}).finally(function(){return f(!1)})},[t]),r.createElement("div",{className:"svc-popup-backdrop",onClick:function(e){e.target===e.currentTarget&&o()}},r.createElement("div",{className:"svc-popup"},r.createElement("div",{className:"svc-popup-bar",style:{background:a.color}}),r.createElement("div",{className:"svc-popup-head"},r.createElement("div",null,r.createElement("div",{className:"svc-popup-title",style:{color:a.color}},a.label),r.createElement("div",{className:"svc-popup-sub"},a.sub)),r.createElement("button",{className:"svc-popup-close",onClick:o},"✕")),r.createElement("div",{className:"svc-popup-status-row"},r.createElement("div",{className:"svc-popup-stat"},r.createElement("div",{className:"svc-popup-stat-label"},"STATUS"),r.createElement("div",{className:"svc-popup-stat-value",style:{color:n?i:"#94a3b8"}},n&&r.createElement("span",{className:"svc-popup-dot",style:{background:i,boxShadow:"0 0 4px ".concat(i)}}),{healthy:"Healthy",error:"Error",unreachable:"Unreachable"}[null==n?void 0:n.status]||"Not checked")),null!=(null==n?void 0:n.ms)&&r.createElement("div",{className:"svc-popup-stat"},r.createElement("div",{className:"svc-popup-stat-label"},"RESPONSE"),r.createElement("div",{className:"svc-popup-stat-value"},n.ms,"ms")),r.createElement("div",{className:"svc-popup-stat"},r.createElement("div",{className:"svc-popup-stat-label"},"TIER"),r.createElement("div",{className:"svc-popup-stat-value",style:{color:"#64748b"}},"public"===a.tier?"Public":"registration"===a.tier?"Registration":"Internal"))),"none"!==a.mode&&r.createElement("div",{className:"svc-popup-section"},r.createElement("div",{className:"svc-popup-section-label"},"HEALTH ENDPOINT"),r.createElement("code",{className:"svc-popup-code"},"direct"===a.mode?a.url:"POST ".concat(xc,'/api/execution/request → provider: "').concat(a.provider,'" → Ping'))),r.createElement("div",{className:"svc-popup-section"},r.createElement("div",{className:"svc-popup-section-label"},"ABOUT"),p?r.createElement("p",{className:"svc-popup-loading"},"Loading…"):r.createElement("div",{className:"svc-popup-about",dangerouslySetInnerHTML:{__html:u}})),r.createElement("div",{className:"svc-popup-section"},r.createElement("div",{className:"svc-popup-section-label"},"STACK"),r.createElement("div",{className:"svc-popup-tech"},a.tech)),(null==n?void 0:n.message)&&r.createElement("div",{className:"svc-popup-section"},r.createElement("div",{className:"svc-popup-section-label"},"DETAIL"),r.createElement("code",{className:"svc-popup-code svc-popup-error"},n.message))))}function gu(e){var t=e.results,n=e.onNodeClick;return r.createElement("div",{className:"arch2-wrap"},r.createElement("div",{className:"arch2-title"},"Platform Architecture"),r.createElement("div",{className:"arch2-top"},r.createElement("div",{className:"arch2-tier",style:{flex:1}},r.createElement("div",{className:"arch2-tier-label"},"Public Access"),r.createElement("div",{className:"arch2-tier-nodes"},cu.map(function(e){return r.createElement(pu,{key:e,id:e,result:t[e],onClick:n})})),r.createElement("div",{className:"arch2-db-connector"},r.createElement("div",{className:"arch2-vline"}),r.createElement("div",{className:"arch2-db"},"🗄 SQL DB"))),r.createElement("div",{className:"arch2-pillar-sep"}),r.createElement("div",{className:"arch2-tier arch2-tier-reg"},r.createElement("div",{className:"arch2-tier-label"},"Registration"),r.createElement("div",{className:"arch2-tier-nodes"},lu.map(function(e){return r.createElement(pu,{key:e,id:e,result:t[e],onClick:n})})),r.createElement("div",{className:"arch2-db-connector"},r.createElement("div",{className:"arch2-vline"}),r.createElement("div",{className:"arch2-db"},"🗄 Reg DB")))),r.createElement("div",{className:"arch2-arrow-zone"},r.createElement("div",{className:"arch2-arrow-line"},r.createElement("span",{className:"arch2-arrow-label"},"internal routing via Gateway"))),r.createElement("div",{className:"arch2-tier arch2-tier-internal"},r.createElement("div",{className:"arch2-tier-label"},"Internal Only — Azure Container Apps"),r.createElement("div",{className:"arch2-tier-nodes arch2-tier-nodes-center"},uu.map(function(e){return r.createElement(pu,{key:e,id:e,result:t[e],onClick:n})}))),r.createElement("div",{className:"arch2-legend"},[["#22c55e","Healthy"],["#f59e0b","Error"],["#ef4444","Unreachable"],["#cbd5e1","Not checked"]].map(function(e){var t=au(e,2),n=t[0],o=t[1];return r.createElement("span",{key:o,className:"arch2-legend-item"},r.createElement("span",{className:"arch2-legend-dot",style:{background:n}}),o)})))}function mu(){var e=Fc().getIdToken,t=au((0,r.useState)({}),2),n=t[0],o=t[1],a=au((0,r.useState)(!1),2),i=a[0],s=a[1],c=au((0,r.useState)(null),2),l=c[0],u=c[1],d=au((0,r.useState)(null),2),h=d[0],p=d[1],f=(0,r.useCallback)(ou(Xl().m(function t(){var n,r;return Xl().w(function(t){for(;;)switch(t.n){case 0:return s(!0),n={},t.n=1,e();case 1:return r=t.v,t.n=2,Promise.all(du.map(function(){var e=ou(Xl().m(function e(t){var o,a,i,s,c,l,u,d;return Xl().w(function(e){for(;;)switch(e.p=e.n){case 0:if(o=su[t],a=performance.now(),e.p=1,"direct"!==o.mode){e.n=3;break}return e.n=2,fetch(o.url,{signal:AbortSignal.timeout(8e3)});case 2:i=e.v,e.n=5;break;case 3:return e.n=4,fetch("".concat(xc,"/api/execution/request"),{method:"POST",headers:tu({"Content-Type":"application/json"},r?{Authorization:"Bearer ".concat(r)}:{}),body:JSON.stringify({provider:o.provider,operation:"Ping",payload:{}}),signal:AbortSignal.timeout(8e3)});case 4:i=e.v;case 5:if(s=Math.round(performance.now()-a),!i.ok){e.n=10;break}return c=null,e.p=6,e.n=7,i.json();case 7:c=e.v,e.n=9;break;case 8:e.p=8,e.v;case 9:n[t]={status:"healthy",ms:s,data:c,httpStatus:i.status},e.n=15;break;case 10:return l="",e.p=11,e.n=12,i.text();case 12:l=e.v,e.n=14;break;case 13:e.p=13,e.v;case 14:n[t]={status:"error",ms:s,httpStatus:i.status,message:"HTTP ".concat(i.status,": ").concat(l.substring(0,200))};case 15:e.n=17;break;case 16:e.p=16,d=e.v,u=Math.round(performance.now()-a),n[t]={status:"unreachable",ms:u,message:"TimeoutError"===d.name?"Timed out (8s)":d.message};case 17:return e.a(2)}},e,null,[[11,13],[6,8],[1,16]])}));return function(t){return e.apply(this,arguments)}}()));case 2:o(n),u(new Date),s(!1);case 3:return t.a(2)}},t)})),[e]),g=Object.values(n).filter(function(e){return"healthy"===e.status}).length,m=Object.keys(n).length;return r.createElement("div",{className:"health-dashboard"},r.createElement("div",{className:"health-header"},r.createElement("div",{className:"health-title-row"},r.createElement("h3",{className:"health-title"},"⚡ Service Health"),m>0&&r.createElement("span",{className:"health-summary ".concat(g===m?"all-healthy":"has-issues")},g,"/",m," services up")),r.createElement("div",{className:"health-actions"},l&&r.createElement("span",{className:"health-timestamp"},"Last check: ",l.toLocaleTimeString()),r.createElement("button",{className:"token-btn token-btn-primary",onClick:f,disabled:i,style:{minWidth:120}},i?"⟳ Checking…":"▶ Check All"))),0===m&&r.createElement("p",{className:"arch2-hint"},"Click any node for details · Run Check All to test live status"),r.createElement(gu,{results:n,onNodeClick:p}),h&&r.createElement(fu,{id:h,result:n[h],onClose:function(){return p(null)}}))}function yu(e){return yu="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},yu(e)}function vu(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function bu(e){for(var t=1;t
Your help text here…
",value:A.body,onChange:function(e){return _(function(t){return zu(zu({},t),{},{body:e.target.value})})},rows:8})),r.createElement("div",{style:{display:"flex",justifyContent:"flex-end"}},r.createElement("button",{onClick:V,disabled:R,style:{padding:"7px 20px",borderRadius:6,border:"none",background:R?"#93c5fd":"#2563eb",color:"#fff",fontSize:13,fontWeight:500,cursor:R?"not-allowed":"pointer",fontFamily:"inherit"}},R?"Saving…":"Save Entry"))),s&&r.createElement("div",{style:{padding:"40px 0",textAlign:"center",color:"#94a3b8",fontSize:13}},"Loading help content…"),u&&!s&&r.createElement("div",{style:{padding:"12px 16px",background:"#fef2f2",border:"1px solid #fecaca",borderRadius:8,color:"#dc2626",fontSize:13,marginBottom:16}},u),!s&&!u&&0===o.length&&r.createElement("div",{style:{textAlign:"center",padding:"60px 20px",color:"#94a3b8"}},r.createElement("div",{style:{fontSize:32,marginBottom:12}},"📝"),r.createElement("div",{style:{fontWeight:600,color:"#475569",marginBottom:6}},"No help entries yet"),r.createElement("div",{style:{fontSize:13}},"Click ",r.createElement("strong",null,"New Entry")," to create the first one.")),!s&&o.length>0&&r.createElement("div",{style:{background:"#fff",border:"1px solid #e5e7eb",borderRadius:10,overflow:"hidden"}},0===G.length?r.createElement("div",{style:{padding:"32px 20px",textAlign:"center",color:"#94a3b8",fontSize:13}},"No entries match the current filter."):r.createElement("table",{style:{width:"100%",borderCollapse:"collapse"}},r.createElement("thead",null,r.createElement("tr",{style:{background:"#f8fafc",borderBottom:"1px solid #e5e7eb"}},[{label:"Help Key",width:"38%"},{label:"Title",width:null},{label:"Status",width:90},{label:"Updated",width:80},{label:"",width:106}].map(function(e){var t=e.label,n=e.width;return r.createElement("th",{key:t,style:{padding:"10px 16px",textAlign:"left",fontSize:11,fontWeight:700,color:"#94a3b8",letterSpacing:"0.05em",textTransform:"uppercase",width:n||void 0}},t)}))),r.createElement("tbody",null,G.map(function(e,t){return r.createElement("tr",{key:e.helpKey,style:{borderBottom:tNo information available for this topic yet.
")}).finally(function(){return f(!1)})},[t]),r.createElement("div",{className:"svc-popup-backdrop",onClick:function(e){e.target===e.currentTarget&&o()}},r.createElement("div",{className:"svc-popup"},r.createElement("div",{className:"svc-popup-bar",style:{background:a.color}}),r.createElement("div",{className:"svc-popup-head"},r.createElement("div",null,r.createElement("div",{className:"svc-popup-title",style:{color:a.color}},a.label),r.createElement("div",{className:"svc-popup-sub"},a.sub)),r.createElement("button",{className:"svc-popup-close",onClick:o},"✕")),r.createElement("div",{className:"svc-popup-status-row"},r.createElement("div",{className:"svc-popup-stat"},r.createElement("div",{className:"svc-popup-stat-label"},"STATUS"),r.createElement("div",{className:"svc-popup-stat-value",style:{color:n?i:"#94a3b8"}},n&&r.createElement("span",{className:"svc-popup-dot",style:{background:i,boxShadow:"0 0 4px ".concat(i)}}),{healthy:"Healthy",error:"Error",unreachable:"Unreachable"}[null==n?void 0:n.status]||"Not checked")),null!=(null==n?void 0:n.ms)&&r.createElement("div",{className:"svc-popup-stat"},r.createElement("div",{className:"svc-popup-stat-label"},"RESPONSE"),r.createElement("div",{className:"svc-popup-stat-value"},n.ms,"ms")),r.createElement("div",{className:"svc-popup-stat"},r.createElement("div",{className:"svc-popup-stat-label"},"TIER"),r.createElement("div",{className:"svc-popup-stat-value",style:{color:"#64748b"}},"public"===a.tier?"Public":"registration"===a.tier?"Registration":"Internal"))),"none"!==a.mode&&r.createElement("div",{className:"svc-popup-section"},r.createElement("div",{className:"svc-popup-section-label"},"HEALTH ENDPOINT"),r.createElement("code",{className:"svc-popup-code"},"direct"===a.mode?a.url:"POST ".concat(xc,'/api/execution/request → provider: "').concat(a.provider,'" → Ping'))),r.createElement("div",{className:"svc-popup-section"},r.createElement("div",{className:"svc-popup-section-label"},"ABOUT"),p?r.createElement("p",{className:"svc-popup-loading"},"Loading…"):r.createElement("div",{className:"svc-popup-about",dangerouslySetInnerHTML:{__html:u}})),r.createElement("div",{className:"svc-popup-section"},r.createElement("div",{className:"svc-popup-section-label"},"STACK"),r.createElement("div",{className:"svc-popup-tech"},a.tech)),(null==n?void 0:n.message)&&r.createElement("div",{className:"svc-popup-section"},r.createElement("div",{className:"svc-popup-section-label"},"DETAIL"),r.createElement("code",{className:"svc-popup-code svc-popup-error"},n.message))))}function gu(e){var t=e.results,n=e.onNodeClick;return r.createElement("div",{className:"arch2-wrap"},r.createElement("div",{className:"arch2-title"},"Platform Architecture"),r.createElement("div",{className:"arch2-top"},r.createElement("div",{className:"arch2-tier",style:{flex:1}},r.createElement("div",{className:"arch2-tier-label"},"Public Access"),r.createElement("div",{className:"arch2-tier-nodes"},cu.map(function(e){return r.createElement(pu,{key:e,id:e,result:t[e],onClick:n})})),r.createElement("div",{className:"arch2-db-connector"},r.createElement("div",{className:"arch2-vline"}),r.createElement("div",{className:"arch2-db"},"🗄 SQL DB"))),r.createElement("div",{className:"arch2-pillar-sep"}),r.createElement("div",{className:"arch2-tier arch2-tier-reg"},r.createElement("div",{className:"arch2-tier-label"},"Registration"),r.createElement("div",{className:"arch2-tier-nodes"},lu.map(function(e){return r.createElement(pu,{key:e,id:e,result:t[e],onClick:n})})),r.createElement("div",{className:"arch2-db-connector"},r.createElement("div",{className:"arch2-vline"}),r.createElement("div",{className:"arch2-db"},"🗄 Reg DB")))),r.createElement("div",{className:"arch2-arrow-zone"},r.createElement("div",{className:"arch2-arrow-line"},r.createElement("span",{className:"arch2-arrow-label"},"internal routing via Gateway"))),r.createElement("div",{className:"arch2-tier arch2-tier-internal"},r.createElement("div",{className:"arch2-tier-label"},"Internal Only — Azure Container Apps"),r.createElement("div",{className:"arch2-tier-nodes arch2-tier-nodes-center"},uu.map(function(e){return r.createElement(pu,{key:e,id:e,result:t[e],onClick:n})}))),r.createElement("div",{className:"arch2-legend"},[["#22c55e","Healthy"],["#f59e0b","Error"],["#ef4444","Unreachable"],["#cbd5e1","Not checked"]].map(function(e){var t=au(e,2),n=t[0],o=t[1];return r.createElement("span",{key:o,className:"arch2-legend-item"},r.createElement("span",{className:"arch2-legend-dot",style:{background:n}}),o)})))}function mu(){var e=Fc().getIdToken,t=au((0,r.useState)({}),2),n=t[0],o=t[1],a=au((0,r.useState)(!1),2),i=a[0],s=a[1],c=au((0,r.useState)(null),2),l=c[0],u=c[1],d=au((0,r.useState)(null),2),h=d[0],p=d[1],f=(0,r.useCallback)(ou(Xl().m(function t(){var n,r;return Xl().w(function(t){for(;;)switch(t.n){case 0:return s(!0),n={},t.n=1,e();case 1:return r=t.v,t.n=2,Promise.all(du.map(function(){var e=ou(Xl().m(function e(t){var o,a,i,s,c,l,u,d;return Xl().w(function(e){for(;;)switch(e.p=e.n){case 0:if(o=su[t],a=performance.now(),e.p=1,"direct"!==o.mode){e.n=3;break}return e.n=2,fetch(o.url,{signal:AbortSignal.timeout(8e3)});case 2:i=e.v,e.n=5;break;case 3:return e.n=4,fetch("".concat(xc,"/api/execution/request"),{method:"POST",headers:tu({"Content-Type":"application/json"},r?{Authorization:"Bearer ".concat(r)}:{}),body:JSON.stringify({provider:o.provider,operation:"Ping",payload:{}}),signal:AbortSignal.timeout(8e3)});case 4:i=e.v;case 5:if(s=Math.round(performance.now()-a),!i.ok){e.n=10;break}return c=null,e.p=6,e.n=7,i.json();case 7:c=e.v,e.n=9;break;case 8:e.p=8,e.v;case 9:n[t]={status:"healthy",ms:s,data:c,httpStatus:i.status},e.n=15;break;case 10:return l="",e.p=11,e.n=12,i.text();case 12:l=e.v,e.n=14;break;case 13:e.p=13,e.v;case 14:n[t]={status:"error",ms:s,httpStatus:i.status,message:"HTTP ".concat(i.status,": ").concat(l.substring(0,200))};case 15:e.n=17;break;case 16:e.p=16,d=e.v,u=Math.round(performance.now()-a),n[t]={status:"unreachable",ms:u,message:"TimeoutError"===d.name?"Timed out (8s)":d.message};case 17:return e.a(2)}},e,null,[[11,13],[6,8],[1,16]])}));return function(t){return e.apply(this,arguments)}}()));case 2:o(n),u(new Date),s(!1);case 3:return t.a(2)}},t)})),[e]),g=Object.values(n).filter(function(e){return"healthy"===e.status}).length,m=Object.keys(n).length;return r.createElement("div",{className:"health-dashboard"},r.createElement("div",{className:"health-header"},r.createElement("div",{className:"health-title-row"},r.createElement("h3",{className:"health-title"},"⚡ Service Health"),m>0&&r.createElement("span",{className:"health-summary ".concat(g===m?"all-healthy":"has-issues")},g,"/",m," services up")),r.createElement("div",{className:"health-actions"},l&&r.createElement("span",{className:"health-timestamp"},"Last check: ",l.toLocaleTimeString()),r.createElement("button",{className:"token-btn token-btn-primary",onClick:f,disabled:i,style:{minWidth:120}},i?"⟳ Checking…":"▶ Check All"))),0===m&&r.createElement("p",{className:"arch2-hint"},"Click any node for details · Run Check All to test live status"),r.createElement(gu,{results:n,onNodeClick:p}),h&&r.createElement(fu,{id:h,result:n[h],onClose:function(){return p(null)}}))}function yu(e){return yu="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},yu(e)}function vu(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function bu(e){for(var t=1;t
Your help text here…
",value:A.body,onChange:function(e){return _(function(t){return zu(zu({},t),{},{body:e.target.value})})},rows:8})),r.createElement("div",{style:{display:"flex",justifyContent:"flex-end"}},r.createElement("button",{onClick:V,disabled:R,style:{padding:"7px 20px",borderRadius:6,border:"none",background:R?"#93c5fd":"#2563eb",color:"#fff",fontSize:13,fontWeight:500,cursor:R?"not-allowed":"pointer",fontFamily:"inherit"}},R?"Saving…":"Save Entry"))),s&&r.createElement("div",{style:{padding:"40px 0",textAlign:"center",color:"#94a3b8",fontSize:13}},"Loading help content…"),u&&!s&&r.createElement("div",{style:{padding:"12px 16px",background:"#fef2f2",border:"1px solid #fecaca",borderRadius:8,color:"#dc2626",fontSize:13,marginBottom:16}},u),!s&&!u&&0===o.length&&r.createElement("div",{style:{textAlign:"center",padding:"60px 20px",color:"#94a3b8"}},r.createElement("div",{style:{fontSize:32,marginBottom:12}},"📝"),r.createElement("div",{style:{fontWeight:600,color:"#475569",marginBottom:6}},"No help entries yet"),r.createElement("div",{style:{fontSize:13}},"Click ",r.createElement("strong",null,"New Entry")," to create the first one.")),!s&&o.length>0&&r.createElement("div",{style:{background:"#fff",border:"1px solid #e5e7eb",borderRadius:10,overflow:"hidden"}},0===G.length?r.createElement("div",{style:{padding:"32px 20px",textAlign:"center",color:"#94a3b8",fontSize:13}},"No entries match the current filter."):r.createElement("table",{style:{width:"100%",borderCollapse:"collapse"}},r.createElement("thead",null,r.createElement("tr",{style:{background:"#f8fafc",borderBottom:"1px solid #e5e7eb"}},[{label:"Help Key",width:"38%"},{label:"Title",width:null},{label:"Status",width:90},{label:"Updated",width:80},{label:"",width:106}].map(function(e){var t=e.label,n=e.width;return r.createElement("th",{key:t,style:{padding:"10px 16px",textAlign:"left",fontSize:11,fontWeight:700,color:"#94a3b8",letterSpacing:"0.05em",textTransform:"uppercase",width:n||void 0}},t)}))),r.createElement("tbody",null,G.map(function(e,t){return r.createElement("tr",{key:e.helpKey,style:{borderBottom:t