:root p{color:var(--text-color)}html{font-family:sans-serif!important}html body{background:var(--surface)!important}html *{box-sizing:border-box}html .container{max-width:1240px;margin:auto;padding:0 12px;width:100%}html .p-sidebar{padding:12px}html .p-button{justify-content:center}html .p-scrolltop.p-link{background:var(--primary-color)!important}html .p-tooltip-text{padding:6px 12px;font-size:14px;margin-top:12px;background:var(--surface-400);color:var(--primary-color-text)}html .p-carousel-next,html .p-carousel-prev{display:none}html .p-checkbox-box{border:2px solid var(--primary-color)!important}html .p-toast-message{padding:12px 24px}html .p-toast-message .p-toast-message-content{gap:12px;align-items:center}html .p-toast-message .p-toast-message-content .p-toast-message-text{gap:6px;display:flex;flex-direction:column}html .p-toast-message .p-toast-message-content .p-toast-message-text .p-toast-summary{font-weight:700}html .p-progressbar-value{justify-content:flex-end;padding:0 12px;transition:.3s}html .p-overlaypanel-content{padding:24px}html img{-webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;user-drag:none}:root{--g-violet:#a78bfa;--g-blue:#60a5fa;--g-cyan:#34d399;--g-pink:#f472b6;--g-amber:#fbbf24}.markdown-viewer{width:100%;overflow:hidden;font-size:15px;line-height:1.75;color:var(--text-color)}.markdown-viewer h1,.markdown-viewer h2,.markdown-viewer h3,.markdown-viewer h4,.markdown-viewer h5,.markdown-viewer h6{font-weight:800;color:var(--text-color);margin:32px 0 12px;line-height:1.3}.markdown-viewer h1{font-size:30px;background:linear-gradient(135deg,#a78bfa,#60a5fa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.markdown-viewer h2{font-size:22px;padding-bottom:10px;border-bottom:1px solid var(--surface-border);position:relative}.markdown-viewer h2:after{content:"";position:absolute;bottom:-1px;left:0;width:60px;height:2px;background:linear-gradient(90deg,#a78bfa,#60a5fa,transparent);border-radius:99px}.markdown-viewer h3{font-size:18px;color:#a78bfa}.markdown-viewer h4{font-size:16px}.markdown-viewer h5{font-size:14px}.markdown-viewer h6{font-size:13px;color:var(--text-color-secondary)}.markdown-viewer p{margin:12px 0;color:var(--text-color);line-height:1.8}.markdown-viewer a{color:#a78bfa;text-decoration:none;border-bottom:1px solid color-mix(in srgb,#a78bfa 30%,transparent);transition:border-color .15s,color .15s}.markdown-viewer a:hover{color:#60a5fa;border-bottom-color:#60a5fa}.markdown-viewer hr{border:none;height:1px;background:linear-gradient(90deg,#a78bfa,#34d399,transparent);margin:32px 0;opacity:.4}.markdown-viewer ol,.markdown-viewer ul{padding-left:24px;margin:12px 0}.markdown-viewer ul li{margin:6px 0;color:var(--text-color);line-height:1.75}.markdown-viewer ul li::marker{color:#a78bfa}.markdown-viewer ol li{margin:6px 0;color:var(--text-color);line-height:1.75}.markdown-viewer ol li::marker{color:#a78bfa;font-weight:700}.markdown-viewer blockquote{margin:20px 0;padding:16px 20px;background:color-mix(in srgb,#a78bfa 6%,transparent);border-left:3px solid #a78bfa;border-radius:0 10px 10px 0;position:relative}.markdown-viewer blockquote p{margin:0;font-style:italic;color:var(--text-color);line-height:1.7}.markdown-viewer code{background:color-mix(in srgb,#a78bfa 12%,transparent);color:#a78bfa;padding:2px 7px;border-radius:5px;font-size:.875em;font-family:Fira Code,Cascadia Code,monospace;border:1px solid color-mix(in srgb,#a78bfa 20%,transparent)}.markdown-viewer .block-code{margin:20px 0;border-radius:12px;overflow:hidden;border:1px solid color-mix(in srgb,#a78bfa 15%,var(--surface-border));box-shadow:0 4px 24px color-mix(in srgb,#a78bfa 8%,transparent)}.markdown-viewer .block-code>pre{padding-top:48px!important;margin:0!important;border-radius:0!important}.markdown-viewer .block-code code{background:transparent;color:inherit;padding:0;border:none;font-size:.875em}.markdown-viewer pre{border-radius:12px;margin:20px 0}.markdown-viewer .markdown-table-wrapper{width:100%;overflow:auto;margin:24px 0;border-radius:12px;border:1px solid color-mix(in srgb,#a78bfa 15%,var(--surface-border));box-shadow:0 2px 16px color-mix(in srgb,#a78bfa 6%,transparent)}.markdown-viewer table{width:100%;border-collapse:collapse;font-size:14px;background:var(--surface-0)}.markdown-viewer table th{padding:11px 16px;text-align:left;font-size:11px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:#a78bfa;background:color-mix(in srgb,#a78bfa 8%,var(--surface-100));border-bottom:1px solid color-mix(in srgb,#a78bfa 20%,var(--surface-border))}.markdown-viewer table th:first-child{border-radius:0}.markdown-viewer table td{padding:10px 16px;font-size:14px;color:var(--text-color);border-bottom:1px solid var(--surface-border);vertical-align:top}.markdown-viewer table tbody tr:last-child td{border-bottom:none}.markdown-viewer table tbody tr:hover td{background:color-mix(in srgb,#a78bfa 4%,transparent)}.markdown-viewer .post-image{max-width:100%!important;height:auto!important;border-radius:12px;object-fit:cover;margin:16px auto;display:block;box-shadow:0 0 0 1px color-mix(in srgb,#a78bfa 15%,var(--surface-border)),0 8px 32px color-mix(in srgb,#a78bfa 8%,transparent)}.markdown-viewer strong{font-weight:700;color:var(--text-color)}.markdown-viewer em{color:var(--text-color)}@keyframes galaxyCursorBlink{0%,to{opacity:1}50%{opacity:0}}@keyframes galaxyCursorShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.galaxy-cursor{display:inline-block;width:2px;height:.85em;margin-left:2px;vertical-align:middle;border-radius:2px;background:linear-gradient(180deg,#7c3aed,#3b82f6,#06b6d4);background-size:100% 300%;animation:galaxyCursorBlink .7s ease-in-out infinite,galaxyCursorShift 1.5s linear infinite;position:relative;top:-1px}a,abbr,acronym,address,applet,article,aside,audio,b,big,body,canvas,caption,center,cite,code,dd,details,dfn,div,dl,dt,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,var,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}blockquote,q{margin-left:12px;margin-right:12px;quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:"";content:none}