.project_ProjectPage__yTNoC{--page-bg:#050507;--page-gradient:radial-gradient(circle at 20% 20%,#111a2a 0%,#06070a 55%,#040405 100%);--accent:#5d8bff;--accent-rgb:93 139 255;--accent-soft:rgba(93,139,255,.15);--text-primary:#fff;--text-secondary:#b4bcc9;--text-faint:#697180;--surface-1:hsla(0,0%,100%,.04);--surface-2:hsla(0,0%,100%,.07);--surface-3:hsla(0,0%,100%,.12);--border:hsla(0,0%,100%,.08);--border-strong:hsla(0,0%,100%,.16);--radius-sm:6px;--radius:12px;--radius-lg:18px;--radius-pill:999px;--ease:cubic-bezier(0.4,0.18,0.2,1);--shadow-soft:0 2px 8px -2px rgba(0,0,0,.4),0 4px 18px -4px rgba(0,0,0,.45);--shadow-lift:0 4px 20px -4px rgba(0,0,0,.55),0 8px 26px -6px rgba(0,0,0,.6);--focus-ring:0 0 0 2px rgba(var(--accent-rgb)/0.4),0 0 0 1px var(--accent);--gradient-accent:linear-gradient(135deg,#6ca9ff,#6f6bff 45%,#c87dff 90%);--anim-duration:0.55s}@media (prefers-color-scheme:light){.project_ProjectPage__yTNoC{--page-bg:#f5f7fb;--page-gradient:radial-gradient(circle at 25% 25%,#fff 0%,#e8edf4 70%);--text-primary:#0d1117;--text-secondary:#3c495a;--text-faint:#647283;--surface-1:rgba(0,0,0,.04);--surface-2:rgba(0,0,0,.06);--surface-3:rgba(0,0,0,.11);--border:rgba(0,0,0,.08);--border-strong:rgba(0,0,0,.18);--shadow-soft:0 2px 8px -2px rgba(0,0,0,.15),0 4px 14px -2px rgba(0,0,0,.12);--shadow-lift:0 5px 24px -6px rgba(0,0,0,.22),0 10px 34px -8px rgba(0,0,0,.18)}}@keyframes project_fadeSlideUp__2H0s_{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.project_ProjectPage__yTNoC{--side-col:360px;display:grid;grid-template-columns:1fr var(--side-col);height:100vh;background:var(--page-bg);background-image:var(--page-gradient);color:var(--text-primary);grid-gap:2.2rem;gap:2.2rem;position:relative;overflow:hidden;isolation:isolate;animation:project_fadeSlideUp__2H0s_ var(--anim-duration) var(--ease)}.project_content__nOaOD{padding:clamp(2rem,3.2vw,3.25rem);max-width:1100px;position:relative;overflow-y:auto;scrollbar-width:thin;scroll-behavior:smooth;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.85) 90%,transparent);mask-image:linear-gradient(180deg,rgba(0,0,0,.85) 90%,transparent)}.project_content__nOaOD::-webkit-scrollbar{width:8px}.project_content__nOaOD::-webkit-scrollbar-track{background:transparent}.project_content__nOaOD::-webkit-scrollbar-thumb{background:linear-gradient(var(--accent-soft),var(--surface-2));border-radius:4px;border:1px solid var(--border)}.project_chatWrapper__rDykQ{position:-webkit-sticky;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:1rem 1rem 1rem 0;overflow:hidden;width:360px;max-width:360px;min-width:360px}.project_chatWrapper__rDykQ>*{flex:1 1;min-height:0}.project_mobileChatButton__O6_US{position:fixed;bottom:1.25rem;right:1.25rem;background:linear-gradient(135deg,#3a3a3a,#111);color:#fff;border:1px solid hsla(0,0%,100%,.15);padding:.85rem 1.2rem;border-radius:999px;font-size:.95rem;font-weight:500;cursor:pointer;box-shadow:0 4px 20px rgba(0,0,0,.4);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:60;display:none}.project_mobileChatButton__O6_US:hover{background:linear-gradient(135deg,#4a4a4a,#1b1b1b)}.project_mobileChatOverlay__YubYM{position:fixed;top:0;right:0;height:100dvh;width:360px;max-width:100%;background:hsla(0,0%,6%,.95);border-left:1px solid hsla(0,0%,100%,.12);border-radius:0;box-shadow:-4px 0 18px -6px rgba(0,0,0,.6);display:flex;flex-direction:column;overflow:hidden;z-index:100;animation:project_slideFromRight__hUkZN .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@keyframes project_slideFromRight__hUkZN{0%{transform:translateX(40px);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes project_slideUp__U0quV{0%{transform:translateY(25px);opacity:0}to{transform:translateY(0);opacity:1}}.project_mobileChatHeader__Gey7B{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1rem;background:linear-gradient(90deg,hsla(0,0%,100%,.06),hsla(0,0%,100%,0));border-bottom:1px solid hsla(0,0%,100%,.08)}.project_mobileChatTitle__nQ4mU{font-size:.9rem;letter-spacing:.05em;color:#fff;opacity:.85;font-weight:600;text-transform:uppercase}.project_mobileChatClose__KYxgp{background:hsla(0,0%,100%,.1);color:#fff;width:32px;height:32px;border-radius:8px;font-size:1.2rem;line-height:1;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease}.project_mobileChatClose__KYxgp:hover{background:hsla(0,0%,100%,.18)}.project_mobileChatBody___OJRC{flex:1 1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.project_mobileChatBody___OJRC>*{flex:1 1;min-height:0}.project_title__rE245{font-size:clamp(2.4rem,5.2vw,3.75rem);line-height:1.05;margin-bottom:2.2rem;font-weight:700;letter-spacing:-.5px;background:linear-gradient(94deg,#fff,#b6c4d9 55%,#6d7d94);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;word-break:break-word;position:relative;z-index:1;filter:drop-shadow(0 6px 22px rgba(0,0,0,.65))}.project_title__rE245:after{content:"";position:absolute;bottom:-12px;left:0;width:clamp(70px,10vw,110px);height:3px;background:linear-gradient(90deg,var(--accent),transparent);border-radius:3px;box-shadow:0 0 0 1px rgba(var(--accent-rgb)/.35),0 0 18px -2px rgba(var(--accent-rgb)/.45)}.project_projectHeader__M45nb{display:flex;align-items:center;gap:clamp(1.25rem,2.5vw,2.4rem);margin-bottom:3.2rem;flex-wrap:wrap}.project_imageContainer__ZZEuV{--size:clamp(84px,12vw,120px);width:var(--size);height:var(--size);position:relative;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--border);background:linear-gradient(170deg,var(--surface-2),var(--surface-1));box-shadow:var(--shadow-soft);transition:box-shadow .35s var(--ease),transform .35s var(--ease)}.project_imageContainer__ZZEuV:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,hsla(0,0%,100%,.08),hsla(0,0%,100%,0) 55%);mix-blend-mode:overlay;pointer-events:none}.project_imageContainer__ZZEuV:hover{box-shadow:var(--shadow-soft);transform:none}.project_imageContainer__ZZEuV img{object-fit:cover;width:100%;height:100%}.project_projectMeta__CpsvL{flex:1 1}.project_dates__0YpTN{color:var(--text-faint);font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;margin-bottom:1.15rem;display:flex;align-items:center;gap:.35rem;opacity:.85}.project_datesDivider__XaV9L{margin:0 8px;color:#666}.project_description__uTuCd{font-size:clamp(1.02rem,1.05rem + .2vw,1.17rem);line-height:1.72;color:var(--text-secondary);margin-bottom:3.2rem;max-width:820px;position:relative;z-index:1;font-weight:400;letter-spacing:.15px}.project_markdown__NOP3_{--md-heading:var(--text-primary);--md-border:var(--border);--md-inline-bg:var(--surface-2);--md-code-border:var(--border-strong);--md-accent:var(--accent);--md-selection:rgba(var(--accent-rgb)/0.18)}.project_markdown__NOP3_ ::selection{background:var(--md-selection)}.project_markdown__NOP3_ h1,.project_markdown__NOP3_ h2,.project_markdown__NOP3_ h3,.project_markdown__NOP3_ h4,.project_markdown__NOP3_ h5,.project_markdown__NOP3_ h6{font-weight:600;line-height:1.15;color:var(--md-heading);scroll-margin-top:90px;position:relative;letter-spacing:.5px;background:none;margin:2.2rem 0 1.1rem}.project_markdown__NOP3_ h1{font-size:clamp(2rem,1.6rem + 1.2vw,2.75rem)}.project_markdown__NOP3_ h2{font-size:clamp(1.65rem,1.4rem + .8vw,2.1rem)}.project_markdown__NOP3_ h3{font-size:clamp(1.35rem,1.2rem + .5vw,1.55rem)}.project_markdown__NOP3_ h4{font-size:1.2rem}.project_markdown__NOP3_ h5{font-size:1.05rem}.project_markdown__NOP3_ h6{font-size:.95rem;letter-spacing:.12em;text-transform:uppercase}.project_markdown__NOP3_ p{margin:0 0 1.4rem}.project_markdown__NOP3_ ol,.project_markdown__NOP3_ ul{margin:0 0 1.6rem 1.35rem;padding:0}.project_markdown__NOP3_ ul{list-style:disc}.project_markdown__NOP3_ ol{list-style:decimal}.project_markdown__NOP3_ li{margin:.35rem 0}.project_markdown__NOP3_ li::marker{color:var(--accent)}.project_markdown__NOP3_ a,.project_mdLink__t9PE7{color:var(--md-accent);text-decoration:none;position:relative;font-weight:500}.project_markdown__NOP3_ a:after,.project_mdLink__t9PE7:after{content:"";position:absolute;left:0;bottom:-2px;width:100%;height:1px;background:linear-gradient(90deg,var(--md-accent),transparent);opacity:.4;transition:opacity .3s var(--ease),transform .3s var(--ease);transform:scaleX(.85);transform-origin:left}.project_markdown__NOP3_ a:hover:after,.project_mdLink__t9PE7:hover:after{opacity:1;transform:scaleX(1)}.project_inlineCode__WdiR8{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;background:var(--md-inline-bg);color:var(--text-primary);padding:.15rem .45rem;border-radius:6px;font-size:.85em;border:1px solid var(--border)}.project_codeBlock__Be81G{position:relative;margin:1.8rem 0;background:linear-gradient(145deg,var(--surface-2),var(--surface-1));border:1px solid var(--md-code-border);padding:1rem 1.15rem;border-radius:var(--radius);overflow:auto;font-size:.85rem;line-height:1.5;box-shadow:0 6px 22px -8px rgba(0,0,0,.55)}.project_codeBlock__Be81G code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;background:none;padding:0;border:none;color:#e4e9f2}.project_blockquote__v0npR{margin:2rem 0;padding:1.1rem 1.25rem 1.1rem 1.15rem;position:relative;background:linear-gradient(120deg,var(--surface-2),var(--surface-1));border:1px solid var(--border);border-radius:var(--radius-lg);font-style:italic;color:var(--text-secondary);box-shadow:0 4px 18px -6px rgba(0,0,0,.5)}.project_blockquote__v0npR:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--gradient-accent);border-top-left-radius:inherit;border-bottom-left-radius:inherit}.project_markdown__NOP3_ hr{border:none;height:1px;background:linear-gradient(90deg,rgba(var(--accent-rgb)/.9),transparent);margin:2.8rem 0;opacity:.4}.project_tableWrapper__hdVm_{width:100%;overflow-x:auto;margin:2.2rem 0;border:1px solid var(--border);border-radius:var(--radius);background:linear-gradient(145deg,var(--surface-2),var(--surface-1))}.project_tableWrapper__hdVm_ table{width:100%;border-collapse:collapse;font-size:.85rem}.project_tableWrapper__hdVm_ td,.project_tableWrapper__hdVm_ th{padding:.65rem .9rem;text-align:left;border-bottom:1px solid var(--border)}.project_tableWrapper__hdVm_ th{background:rgba(var(--accent-rgb)/.08);color:var(--text-primary);font-weight:600;letter-spacing:.5px}.project_tableWrapper__hdVm_ tbody tr:hover{background:rgba(var(--accent-rgb)/.06)}.project_markdown__NOP3_ img{max-width:100%;height:auto;border-radius:var(--radius);border:1px solid var(--border);margin:1.6rem 0;box-shadow:0 8px 28px -10px rgba(0,0,0,.6)}.project_markdown__NOP3_ pre::-webkit-scrollbar{height:10px}.project_markdown__NOP3_ pre::-webkit-scrollbar-track{background:transparent}.project_markdown__NOP3_ pre::-webkit-scrollbar-thumb{background:linear-gradient(var(--accent-soft),var(--surface-2));border:1px solid var(--border);border-radius:6px}@media (prefers-color-scheme:light){.project_codeBlock__Be81G code{color:#1f2937}.project_blockquote__v0npR{color:var(--text-secondary)}.project_inlineCode__WdiR8{background:rgba(0,0,0,.06)}.project_tableWrapper__hdVm_ th{background:rgba(var(--accent-rgb)/.14)}}@media (max-width:760px){.project_markdown__NOP3_ h1{font-size:2rem}.project_markdown__NOP3_ h2{font-size:1.55rem}.project_markdown__NOP3_ h3{font-size:1.3rem}.project_codeBlock__Be81G{font-size:.78rem}}.project_metaSection__OJCm5{background:linear-gradient(140deg,var(--surface-1),var(--surface-2));border-radius:var(--radius-lg);padding:clamp(1.6rem,1.2rem + .8vw,2.2rem);-webkit-backdrop-filter:blur(14px) saturate(135%);backdrop-filter:blur(14px) saturate(135%);border:1px solid var(--border);margin-bottom:3.2rem;box-shadow:var(--shadow-soft);position:relative;overflow:hidden}.project_metaSection__OJCm5:before{content:"";position:absolute;inset:0;background:linear-gradient(95deg,rgba(var(--accent-rgb)/.15),transparent 70%);mix-blend-mode:overlay;pointer-events:none}.project_metaTitle__9lrtl{font-size:.75rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;margin:0 0 1.1rem;color:var(--text-faint);display:flex;align-items:center;gap:.55rem;position:relative}.project_metaTitle__9lrtl:before{content:"";width:8px;height:8px;border-radius:2px;background:var(--gradient-accent);box-shadow:0 0 0 1px rgba(var(--accent-rgb)/.4),0 0 10px -1px rgba(var(--accent-rgb)/.55)}.project_techStack__nMj7s{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:2.1rem}.project_tech__NfLBX{--chip-bg:var(--surface-2);--chip-border:var(--border);display:inline-flex;align-items:center;gap:.55rem;padding:.55rem .95rem;border-radius:var(--radius-pill);font-size:.78rem;font-weight:500;line-height:1;color:var(--text-primary);letter-spacing:.5px;transition:background .35s var(--ease),transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s var(--ease);border:1px solid var(--chip-border);background:linear-gradient(160deg,var(--chip-bg),hsla(0,0%,100%,.02));-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 2px 4px -2px rgba(0,0,0,.45),0 4px 10px -4px rgba(0,0,0,.4);position:relative;overflow:hidden}.project_tech__NfLBX:hover{transform:translateY(-4px);border-color:var(--border-strong);box-shadow:var(--shadow-lift)}.project_tech__NfLBX:focus-visible{outline:none;box-shadow:var(--focus-ring),var(--shadow-lift)}.project_techIcon__yy3gC{display:flex;align-items:center;justify-content:center}.project_topics__tIzNy{display:flex;flex-wrap:wrap;gap:.75rem}.project_topic__kR3d0{--chip-bg:linear-gradient(160deg,rgba(var(--accent-rgb)/0.25),rgba(var(--accent-rgb)/0.08));display:inline-flex;align-items:center;gap:.55rem;padding:.55rem 1rem;border-radius:var(--radius-pill);font-size:.78rem;letter-spacing:.4px;font-weight:600;color:var(--text-primary);background:var(--chip-bg);border:1px solid rgba(var(--accent-rgb)/.35);-webkit-backdrop-filter:blur(6px) saturate(140%);backdrop-filter:blur(6px) saturate(140%);transition:all .35s var(--ease);box-shadow:0 2px 4px -2px rgba(0,0,0,.4),0 4px 12px -4px rgba(0,0,0,.45)}.project_topic__kR3d0:hover{transform:translateY(-4px);box-shadow:var(--shadow-lift);border-color:rgba(var(--accent-rgb)/.6)}.project_topic__kR3d0:focus-visible{outline:none;box-shadow:var(--focus-ring),var(--shadow-lift)}.project_buttons__c0X8S{display:flex;flex-wrap:wrap;gap:.9rem;margin-top:1.75rem;align-items:center}.project_button__iFxZR{--btn-bg:linear-gradient(160deg,var(--surface-2),var(--surface-1));--btn-border:var(--border);display:inline-flex;align-items:center;gap:.65rem;padding:.85rem 1.45rem;border-radius:var(--radius);font-size:.9rem;font-weight:600;cursor:pointer;text-decoration:none;background:var(--btn-bg);color:var(--text-primary);border:1px solid var(--btn-border);position:relative;overflow:hidden;line-height:1.1;letter-spacing:.5px;transition:background .4s var(--ease),transform .4s var(--ease),box-shadow .4s var(--ease),border-color .4s var(--ease);box-shadow:0 2px 10px -2px rgba(0,0,0,.55),0 4px 14px -4px rgba(0,0,0,.5)}.project_button__iFxZR:after,.project_button__iFxZR:before{content:"";position:absolute;inset:0;opacity:0;transition:opacity .45s var(--ease);pointer-events:none}.project_button__iFxZR:before{background:radial-gradient(circle at 20% 15%,rgba(var(--accent-rgb)/.4),transparent 70%);mix-blend-mode:overlay}.project_button__iFxZR:after{background:linear-gradient(120deg,rgba(var(--accent-rgb)/.4),transparent 40%,rgba(var(--accent-rgb)/.25));mix-blend-mode:soft-light}.project_button__iFxZR:hover{transform:translateY(-3px);border-color:var(--border-strong);box-shadow:var(--shadow-lift)}.project_button__iFxZR:hover:after,.project_button__iFxZR:hover:before{opacity:1}.project_button__iFxZR:active{transform:translateY(-1px) scale(.97)}.project_button__iFxZR:focus-visible{outline:none;box-shadow:var(--focus-ring),var(--shadow-lift)}.project_button__iFxZR.project_disabled__SyLn9,.project_button__iFxZR[disabled]{background:var(--surface-1);color:var(--text-faint);cursor:not-allowed;border-color:var(--border);box-shadow:none;transform:none}.project_buttonIcon__yKXrT{width:18px;height:18px}.project_backgroundGlow__jCcA0{position:absolute;inset:0;pointer-events:none;z-index:0;overflow:hidden}.project_backgroundGlow__jCcA0:after,.project_backgroundGlow__jCcA0:before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle at 30% 30%,rgba(var(--accent-rgb)/.28),transparent 70%);filter:blur(70px) saturate(140%);animation:project_floatA__ZfaWu 18s ease-in-out infinite}.project_backgroundGlow__jCcA0:after{left:auto;right:5%;top:55%;background:radial-gradient(circle at 70% 40%,rgba(120,80,255,.25),transparent 75%);animation:project_floatB__7PJvH 22s ease-in-out infinite}@keyframes project_floatA__ZfaWu{0%,to{transform:translate(-10%,-4%) scale(1)}50%{transform:translate(12%,8%) scale(1.18)}}@keyframes project_floatB__7PJvH{0%,to{transform:translate(4%) scale(1)}50%{transform:translate(-8%,-10%) scale(1.12)}}@media screen and (max-width:1300px){.project_ProjectPage__yTNoC{grid-template-columns:1fr 340px}}@media screen and (max-width:1200px){.project_content__nOaOD{max-width:100%}}@media screen and (max-width:980px){.project_ProjectPage__yTNoC{grid-template-columns:1fr 320px}.project_title__rE245{font-size:clamp(2.2rem,4.8vw,3rem)}}@media screen and (max-width:760px){.project_ProjectPage__yTNoC{grid-template-columns:1fr;height:auto;overflow:visible}.project_content__nOaOD{padding:1.65rem 1.3rem 4.5rem;overflow:visible;-webkit-mask-image:none;mask-image:none}.project_mobileChatButton__O6_US{display:inline-flex}.project_title__rE245{font-size:clamp(2rem,8vw,2.4rem);margin-bottom:1.8rem}.project_projectHeader__M45nb{flex-direction:column;align-items:flex-start;gap:1.2rem}.project_metaSection__OJCm5{padding:1.45rem 1.25rem 1.55rem}.project_description__uTuCd{font-size:.98rem;margin-bottom:2.4rem}.project_buttons__c0X8S{gap:.75rem}.project_button__iFxZR{width:100%;justify-content:center}}@media screen and (max-width:480px){.project_ProjectPage__yTNoC{display:flex;flex-direction:column}.project_content__nOaOD{padding:1.1rem 1rem 4.2rem}.project_title__rE245{font-size:clamp(1.75rem,9vw,2.05rem)}.project_metaSection__OJCm5{border-radius:var(--radius)}.project_tech__NfLBX,.project_topic__kR3d0{font-size:.72rem;padding:.5rem .75rem}}@media (prefers-reduced-motion:reduce){.project_button__iFxZR,.project_imageContainer__ZZEuV,.project_tech__NfLBX,.project_title__rE245,.project_topic__kR3d0{transition:none!important;animation:none!important}.project_backgroundGlow__jCcA0:after,.project_backgroundGlow__jCcA0:before{animation:none!important}}.project_ProjectPage__yTNoC .project_backgroundGlow__jCcA0:after,.project_ProjectPage__yTNoC .project_backgroundGlow__jCcA0:before,.project_ProjectPage__yTNoC .project_button__iFxZR,.project_ProjectPage__yTNoC .project_imageContainer__ZZEuV,.project_ProjectPage__yTNoC .project_metaSection__OJCm5,.project_ProjectPage__yTNoC .project_tech__NfLBX,.project_ProjectPage__yTNoC .project_title__rE245:after,.project_ProjectPage__yTNoC .project_topic__kR3d0{background-image:none!important;background:var(--surface-1)!important}.project_ProjectPage__yTNoC .project_topic__kR3d0{background:rgba(var(--accent-rgb)/.18)!important}.project_ProjectPage__yTNoC .project_button__iFxZR,.project_ProjectPage__yTNoC .project_tech__NfLBX{background:var(--surface-2)!important}.project_ProjectPage__yTNoC .project_title__rE245{-webkit-text-fill-color:currentColor;background:none!important;color:var(--text-primary)}.project_ProjectPage__yTNoC .project_metaTitle__9lrtl:before{background:var(--accent)!important;box-shadow:none!important}.project_ProjectPage__yTNoC .project_backgroundGlow__jCcA0{display:none!important}.chat_chatContainer__Swuap{--chat-radius:18px;--chat-border:1px;--chat-bg:#08090c;--chat-surface:#0f1217;--chat-surface-alt:#161b23;--chat-accent:#2563eb;--chat-accent-rgb:37 99 235;--chat-accent-alt:#3b82f6;--chat-danger:#ef4444;--chat-danger-alt:#dc2626;--chat-text:#e5e7eb;--chat-text-dim:#9ca3af;--chat-outline:#1f2937;--chat-gradient:linear-gradient(135deg,#1d2733,#111a26 55%,#0a0f15);--chat-glow:0 0 0 1px rgba(var(--chat-accent-rgb)/0.15),0 0 10px -2px rgba(var(--chat-accent-rgb)/0.35);--chat-scrollbar-track:#0f141a;--chat-scrollbar-thumb:#223042;--chat-font-stack:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Inter,sans-serif;--chat-msg-fade:140ms ease;--chat-msg-appear:fadeIn 0.5s ease,rise 0.5s cubic-bezier(0.3,0.7,0.4,1);display:flex;flex-direction:column;width:100%;max-width:480px;height:560px;position:relative;border-radius:var(--chat-radius);background:radial-gradient(circle at 20% 15%,rgba(var(--chat-accent-rgb)/.12),transparent 60%),var(--chat-gradient);border:var(--chat-border) solid hsla(0,0%,100%,.07);box-shadow:0 4px 18px -4px rgba(0,0,0,.6),0 8px 50px -20px rgba(var(--chat-accent-rgb)/.35);font-family:var(--chat-font-stack);overflow:hidden;backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);color:var(--chat-text);isolation:isolate;transition:box-shadow .35s ease,border-color .35s ease}.chat_chatContainer__Swuap.chat_blackTheme__u4x29{--chat-bg:#000;--chat-surface:#060606;--chat-surface-alt:#0b0b0b;--chat-outline:#101010;--chat-gradient:linear-gradient(#000,#000);background:#000;box-shadow:0 0 0 1px #101010,0 4px 28px -8px rgba(0,0,0,.9);-webkit-backdrop-filter:none;backdrop-filter:none}.chat_chatContainer__Swuap.chat_blackTheme__u4x29:hover:before{opacity:.1}.chat_chatContainer__Swuap.chat_blackTheme__u4x29:before{opacity:.12;background:#090909}.chat_chatContainer__Swuap.chat_blackTheme__u4x29 .chat_chatHeader__cj3Am{background:#050505;border-bottom:1px solid #111}.chat_chatContainer__Swuap.chat_blackTheme__u4x29 .chat_messageText___oYiC{background:#0d0d0d;border-color:#141414;box-shadow:0 2px 6px -2px rgba(0,0,0,.7),0 4px 14px -8px rgba(0,0,0,.65)}.chat_chatContainer__Swuap.chat_blackTheme__u4x29 .chat_messageText___oYiC.chat_user__EZiwf{box-shadow:0 4px 16px -6px rgba(var(--chat-accent-rgb)/.55)}.chat_chatContainer__Swuap.chat_blackTheme__u4x29 .chat_chatInputContainer__lB_U1{background:#050505;border-top:1px solid #111;box-shadow:0 -2px 10px -6px rgba(0,0,0,.7)}.chat_chatContainer__Swuap.chat_blackTheme__u4x29 .chat_chatInput__aKNNv{background:#070707;border:1px solid #151515}.chat_chatContainer__Swuap.chat_blackTheme__u4x29 .chat_chatInput__aKNNv:focus{border-color:rgba(var(--chat-accent-rgb)/.55);box-shadow:0 0 0 1px rgba(var(--chat-accent-rgb)/.45)}.chat_chatContainer__Swuap.chat_blackTheme__u4x29 .chat_chatBox__F9qAY::-webkit-scrollbar-track{background:#050505}.chat_chatContainer__Swuap.chat_blackTheme__u4x29 .chat_chatBox__F9qAY::-webkit-scrollbar-thumb{background:#141414;border:2px solid #050505}.chat_chatContainer__Swuap.chat_blackTheme__u4x29 .chat_chatBox__F9qAY::-webkit-scrollbar-thumb:hover{background:#1d1d1d}.chat_chatContainer__Swuap.chat_blackTheme__u4x29 .chat_introChatBot__UavPP{background:#060606;box-shadow:inset 0 0 0 1px #121212}.chat_chatContainer__Swuap.chat_blackTheme__u4x29 .chat_errorContainer__LsE14{background:#060606;border:1px solid #121212;border-radius:14px}.chat_blackTheme__u4x29.chat_light__nUjD4 .chat_chatContainer__Swuap{background:#000}.chat_chatContainer__Swuap:focus-within{box-shadow:var(--chat-glow);border-color:rgba(var(--chat-accent-rgb)/.4)}.chat_chatContainer__Swuap:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(140deg,rgba(var(--chat-accent-rgb)/.7),hsla(0,0%,100%,.04));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;opacity:.25;transition:opacity .4s ease}.chat_chatContainer__Swuap:hover:before{opacity:.45}.chat_loadingContainer__kjtqc{display:flex;align-items:center;padding:.35rem 0 .15rem}.chat_typingIndicator__MyDKi{display:flex;align-items:center;gap:4px}.chat_typingIndicator__MyDKi span{width:7px;height:7px;background:linear-gradient(135deg,var(--chat-accent),var(--chat-accent-alt));border-radius:50%;display:inline-block;opacity:.75;animation:chat_typingBounce__wY1ll 1.25s ease-in-out infinite both;box-shadow:0 0 0 1px hsla(0,0%,100%,.04),0 0 6px -1px rgba(var(--chat-accent-rgb)/.9)}.chat_typingIndicator__MyDKi span:first-child{animation-delay:-.32s}.chat_typingIndicator__MyDKi span:nth-child(2){animation-delay:-.16s}@keyframes chat_typingBounce__wY1ll{0%,80%,to{transform:translateY(0) scale(.55);opacity:.55}40%{transform:translateY(-4px) scale(1);opacity:1}}@keyframes chat_fadeIn__TaEpu{0%{opacity:0}to{opacity:1}}@keyframes chat_rise__6zP_U{0%{transform:translateY(6px)}to{transform:translateY(0)}}.chat_chatHeader__cj3Am{display:flex;align-items:center;gap:.85rem;padding:.85rem 1rem .85rem 1.05rem;background:linear-gradient(140deg,#111a24,#0d141c 55%,#0a0f14);border-bottom:1px solid #1d2732;position:relative;z-index:2}.chat_chatHeaderIcon__WN3Tu{font-size:1.15rem;color:var(--chat-accent);filter:drop-shadow(0 0 4px rgba(var(--chat-accent-rgb)/.45))}.chat_chatHeaderTitle__OpHCc{font-size:1.02rem;font-weight:550;letter-spacing:.5px;color:#f5f7fa;margin:0;text-transform:uppercase;font-family:var(--chat-font-stack)}.chat_rateLimitCounter__jFTns{margin-left:auto;font-size:.75rem;color:#888;padding:.2rem .5rem;border-radius:.25rem;background-color:rgba(0,0,0,.3)}.chat_rateLimitCounter__jFTns .chat_limitReached__aIuum{color:#ef4444}.chat_limitReachedMessage__D0FpQ{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;height:100%;padding:2rem}.chat_limitReachedMessage__D0FpQ h3{color:#ef4444;margin-bottom:1rem;font-size:1.2rem}.chat_limitReachedMessage__D0FpQ p{color:#d1d5db;font-size:.95rem;line-height:1.4;max-width:90%}.chat_chatBox__F9qAY{flex:1 1 auto;overflow-y:auto;overflow-x:hidden;padding:1rem .95rem 1.15rem;display:flex;flex-direction:column;gap:.85rem;scroll-behavior:smooth;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;-webkit-mask-image:linear-gradient(#000 85%,transparent);mask-image:linear-gradient(#000 85%,transparent)}.chat_chatBox__F9qAY::-webkit-scrollbar{width:10px}.chat_chatBox__F9qAY::-webkit-scrollbar-track{background:var(--chat-scrollbar-track);border-radius:20px}.chat_chatBox__F9qAY::-webkit-scrollbar-thumb{background:linear-gradient(var(--chat-surface-alt),#1d2833);border:2px solid var(--chat-scrollbar-track);border-radius:20px}.chat_chatBox__F9qAY::-webkit-scrollbar-thumb:hover{background:linear-gradient(#253343,#2e4358)}.chat_chatBox__F9qAY{scrollbar-width:thin;scrollbar-color:#223546 var(--chat-scrollbar-track)}.chat_messageText___oYiC{position:relative;display:flex;flex-direction:column;gap:.35rem;padding:.85rem 1rem .9rem;border-radius:18px 18px 18px 6px;max-width:82%;font-size:.93rem;line-height:1.45;background:linear-gradient(155deg,var(--chat-surface-alt),var(--chat-surface) 60%);color:var(--chat-text);align-self:flex-start;border:1px solid hsla(0,0%,100%,.06);box-shadow:0 2px 4px -1px rgba(0,0,0,.55),0 4px 18px -6px rgba(0,0,0,.65);animation:var(--chat-msg-appear);transition:background .35s ease,border-color .35s ease,transform .35s ease}.chat_messageText___oYiC:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(circle at 20% 15%,rgba(var(--chat-accent-rgb)/.16),transparent 70%);opacity:.35;mix-blend-mode:overlay}.chat_messageText___oYiC:hover{border-color:rgba(var(--chat-accent-rgb)/.35)}.chat_messageText___oYiC:active{transform:scale(.985)}.chat_messageText___oYiC.chat_user__EZiwf{background:linear-gradient(135deg,var(--chat-accent),var(--chat-accent-alt));color:#fff;align-self:flex-end;border-radius:18px 18px 6px 18px;border:1px solid rgba(var(--chat-accent-rgb)/.65);box-shadow:0 4px 14px -4px rgba(var(--chat-accent-rgb)/.7)}.chat_tokenCount__EsUjI{margin-top:.35rem;font-size:.68rem;letter-spacing:.5px;text-transform:uppercase;color:var(--chat-text-dim);opacity:.9}.chat_chatInputContainer__lB_U1{position:relative;display:flex;gap:.6rem;align-items:center;padding:.85rem .95rem .95rem;background:linear-gradient(180deg,#10161e,#0c1116 55%,#070a0d);border-top:1px solid #1d2732;box-shadow:0 -2px 6px -2px rgba(0,0,0,.5);z-index:2}.chat_chatInput__aKNNv{flex:1 1 auto;min-height:48px;max-height:140px;padding:.85rem 1rem;resize:none;border:1px solid #1e2833;border-radius:14px;font-size:.95rem;font-family:var(--chat-font-stack);background:linear-gradient(150deg,#131b24,#10171f);color:var(--chat-text);outline:none;line-height:1.35;overflow-y:auto;transition:border-color .25s ease,background .35s ease}.chat_chatInput__aKNNv:focus{border-color:rgba(var(--chat-accent-rgb)/.55);box-shadow:0 0 0 1px rgba(var(--chat-accent-rgb)/.55)}.chat_chatInput__aKNNv::placeholder{color:#5f6b76;letter-spacing:.3px}.chat_chatButton__BcrJh{background:linear-gradient(135deg,var(--chat-accent),var(--chat-accent-alt));color:#fff;border:none;padding:0 1.15rem;height:48px;min-width:92px;margin-left:.25rem;border-radius:14px;font-size:.9rem;font-weight:600;font-family:var(--chat-font-stack);letter-spacing:.5px;cursor:pointer;position:relative;overflow:hidden;z-index:10005;box-shadow:0 4px 14px -4px rgba(var(--chat-accent-rgb)/.65);transition:background .25s ease,transform .25s ease,box-shadow .35s ease}.chat_chatButton__BcrJh:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 20%,hsla(0,0%,100%,.35),transparent 70%);opacity:0;transition:opacity .4s ease}.chat_chatButton__BcrJh:hover:after{opacity:.35}.chat_chatButton__BcrJh:hover{transform:translateY(-2px)}.chat_chatButton__BcrJh:active{transform:translateY(0)}.chat_chatButton__BcrJh.chat_stop__Nmn_2{background:linear-gradient(135deg,var(--chat-danger),var(--chat-danger-alt));box-shadow:0 4px 14px -4px rgba(239,68,68,.55)}.chat_chatButton__BcrJh.chat_disabled__sjmfg{background:#374050;cursor:not-allowed;opacity:.7;box-shadow:none}.chat_chatButton__BcrJh.chat_disabled__sjmfg:hover{transform:none}.chat_introChatBot__UavPP{display:flex;flex-direction:column;gap:.9rem;padding:1.75rem 1.5rem;border-radius:16px;justify-content:center;align-items:center;height:100%;text-align:center;animation:chat_fadeIn__TaEpu .6s ease}.chat_headerText__YfJEt{font-size:1.9rem;font-weight:650;margin:0 0 .75rem;color:#e2e8f0;letter-spacing:.5px}.chat_introText__YNwTD{margin:0 0 1.1rem;line-height:1.55;color:#c7d0d9;max-width:92%}.chat_exampleHeader__kuQ70{font-weight:600;margin:0 0 .4rem;color:#d9e2ea;text-transform:uppercase;font-size:.75rem;letter-spacing:1.5px}.chat_exampleList__GNfjg{list-style:none;padding:0;margin:0;width:94%;display:flex;flex-direction:column;gap:.5rem}.chat_exampleList__GNfjg li{position:relative;padding:.65rem .9rem .65rem 1rem;border-radius:12px;background:linear-gradient(140deg,rgba(var(--chat-accent-rgb)/.16),rgba(var(--chat-accent-rgb)/.08));border:1px solid rgba(var(--chat-accent-rgb)/.25);text-align:left;font-size:.8rem;line-height:1.3;cursor:pointer;transition:background .3s ease,border-color .3s ease,transform .25s ease}.chat_exampleList__GNfjg li:before{content:"›";position:absolute;left:.55rem;top:50%;transform:translateY(-50%);font-size:.85rem;color:var(--chat-accent-alt);opacity:.8}.chat_exampleList__GNfjg li:hover{background:linear-gradient(135deg,rgba(var(--chat-accent-rgb)/.35),rgba(var(--chat-accent-rgb)/.15));border-color:rgba(var(--chat-accent-rgb)/.55);transform:translateX(3px)}.chat_errorContainer__LsE14{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;height:100%;padding:2rem 1.25rem;animation:chat_fadeIn__TaEpu .5s ease}.chat_errorIcon__WlEaK{color:var(--chat-danger);font-size:2.4rem;margin-bottom:1rem;filter:drop-shadow(0 0 4px rgba(239 68 68/.45))}.chat_errorContainer__LsE14 h3{color:var(--chat-danger);margin:0 0 .9rem;font-size:1.15rem;font-weight:600;letter-spacing:.4px}.chat_errorContainer__LsE14 p{color:#d7dbe0;font-size:.9rem;line-height:1.5;max-width:92%;margin:0 0 1.4rem}.chat_retryButton__V0n5v{display:flex;align-items:center;justify-content:center;gap:.55rem;padding:.6rem 1.25rem;background:linear-gradient(135deg,var(--chat-accent),var(--chat-accent-alt));color:#fff;border:none;border-radius:14px;font-size:.85rem;cursor:pointer;font-weight:600;letter-spacing:.3px;box-shadow:0 4px 12px -4px rgba(var(--chat-accent-rgb)/.6);transition:background .25s ease,transform .25s ease}.chat_retryButton__V0n5v:hover{transform:translateY(-2px)}.chat_retryButton__V0n5v:active{transform:translateY(0)}.chat_refreshIcon__aSx_D{font-size:1.05rem}.chat_messageText___oYiC pre{background:#0d1217;border:1px solid #1e2833;padding:.85rem 1rem;border-radius:12px;overflow:auto;font-size:.78rem;line-height:1.4;box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.02)}.chat_messageText___oYiC code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Cascadia Code,Fira Code,monospace;background:#131b24;padding:.15rem .4rem;border-radius:6px;font-size:.78rem;border:1px solid #1f2a34}.chat_messageText___oYiC pre code{background:transparent;padding:0;border:none;box-shadow:none}.chat_messageText___oYiC p{margin:.15rem 0 .65rem}.chat_messageText___oYiC p:last-child{margin-bottom:.15rem}.chat_messageText___oYiC a{color:var(--chat-accent-alt);text-decoration:none;position:relative}.chat_messageText___oYiC a:after{content:"";position:absolute;left:0;bottom:-2px;width:100%;height:1px;background:linear-gradient(90deg,var(--chat-accent),transparent);opacity:.6;transition:opacity .3s ease}.chat_messageText___oYiC a:hover:after{opacity:1}.chat_messageText___oYiC ol,.chat_messageText___oYiC ul{padding-left:1.1rem;margin:.35rem 0 .8rem}.chat_messageText___oYiC li{margin:.25rem 0}.chat_messageText___oYiC hr{border:none;border-top:1px solid #1f2730;margin:1.2rem 0}.chat_messageText___oYiC blockquote{margin:.4rem 0 .8rem;border-left:3px solid var(--chat-accent);padding:.4rem .85rem;background:#111821;border-radius:0 10px 10px 0}.chat_messageText___oYiC strong{color:#fff;font-weight:600}.chat_messageText___oYiC.chat_streaming__5hSDj{background:linear-gradient(155deg,#1b2733,#141d27 60%)}.chat_chatButton__BcrJh:focus-visible,.chat_chatInput__aKNNv:focus-visible,.chat_retryButton__V0n5v:focus-visible{outline:2px solid rgba(var(--chat-accent-rgb)/.6);outline-offset:2px}.chat_fadeIn__TaEpu{animation:chat_fadeIn__TaEpu .45s ease both}@media (prefers-reduced-motion:reduce){.chat_chatButton__BcrJh,.chat_messageText___oYiC,.chat_retryButton__V0n5v{transition:none;animation:none}.chat_chatBox__F9qAY{scroll-behavior:auto}}@media (max-width:860px){.chat_chatContainer__Swuap{max-width:100%;width:100%;height:520px}.chat_chatHeaderTitle__OpHCc{font-size:.95rem}.chat_chatButton__BcrJh{min-width:88px}}@media (max-width:640px){.chat_chatContainer__Swuap{height:500px;border-radius:16px}.chat_chatBox__F9qAY{padding:.75rem .8rem 1rem}.chat_messageText___oYiC{max-width:86%}.chat_headerText__YfJEt{font-size:1.55rem}}@media (max-width:470px){.chat_chatContainer__Swuap{height:480px}.chat_chatInput__aKNNv{min-height:44px;font-size:.9rem}.chat_chatButton__BcrJh{height:44px;padding:0 .9rem;font-size:.8rem}.chat_messageText___oYiC{font-size:.88rem}}@media (max-width:380px){.chat_chatContainer__Swuap{height:460px}.chat_headerText__YfJEt{font-size:1.35rem}}.chat_light__nUjD4 .chat_chatContainer__Swuap{--chat-bg:#f7f9fb;--chat-surface:#fff;--chat-surface-alt:#f1f5f9;--chat-text:#1e293b;--chat-text-dim:#64748b;--chat-outline:#d6e0ea;--chat-gradient:linear-gradient(135deg,#fff,#eff4f8)}.chat_light__nUjD4 .chat_chatContainer__Swuap:before{opacity:.35}.chat_light__nUjD4 .chat_chatHeader__cj3Am{background:linear-gradient(140deg,#fff,#f1f5f9);border-bottom:1px solid #d9e2ec}.chat_light__nUjD4 .chat_messageText___oYiC{background:linear-gradient(155deg,#fff,#f1f5f9 70%);border:1px solid #d8e2ec}.chat_light__nUjD4 .chat_messageText___oYiC.chat_user__EZiwf{color:#fff}.chat_light__nUjD4 .chat_chatInput__aKNNv{background:linear-gradient(150deg,#fff,#f1f5f9);border:1px solid #d7e1eb}.chat_light__nUjD4 .chat_chatBox__F9qAY::-webkit-scrollbar-thumb{background:linear-gradient(#d2dae2,#bfcad4)}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}
/*!
  Theme: GitHub Dark
  Description: Dark theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-dark
  Current colors taken from GitHub's CSS
*/.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-variable{color:#79c0ff}.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-code,.hljs-comment,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-pseudo,.hljs-selector-tag{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}