.chat-widget[data-astro-cid-pmyxn7tj]{bottom:var(--space-md);right:var(--space-md);z-index:1000;position:fixed}.hidden[data-astro-cid-pmyxn7tj]{display:none!important}.chat-window[data-astro-cid-pmyxn7tj]::backdrop{background:#0505089e}.chat-bubble[data-astro-cid-pmyxn7tj]{background:linear-gradient(135deg, var(--aurora-purple) 0%, var(--aurora-blue) 100%);cursor:pointer;color:#fffffff2;width:56px;height:56px;transition:all var(--duration-normal) var(--ease-out);z-index:1001;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:relative;box-shadow:0 8px 24px #8b5cf666}:root[data-theme=light] .chat-bubble[data-astro-cid-pmyxn7tj]{background:radial-gradient(120% 120% at 20% 20%, var(--aurora-purple) 0%, var(--aurora-blue) 55%, var(--aurora-cyan) 100%);box-shadow:0 10px 28px #2563eb73,0 0 0 1px #2563eb40}:root:not([data-theme=light]) .chat-bubble[data-astro-cid-pmyxn7tj]{background:radial-gradient(120% 120% at 20% 20%, var(--aurora-magenta) 0%, var(--aurora-purple) 45%, var(--aurora-blue) 100%);box-shadow:0 12px 32px #8b5cf68c,0 0 0 1px #d946ef40}.chat-bubble[data-astro-cid-pmyxn7tj]:hover{transform:scale(1.1);box-shadow:0 12px 32px #8b5cf680}:root[data-theme=light] .chat-bubble[data-astro-cid-pmyxn7tj]:hover{box-shadow:0 14px 36px #2563eb8c,0 0 0 1px #7c3aed4d}:root:not([data-theme=light]) .chat-bubble[data-astro-cid-pmyxn7tj]:hover{box-shadow:0 16px 40px #8b5cf6a6,0 0 0 1px #d946ef59}.chat-bubble[data-astro-cid-pmyxn7tj]:active{transform:scale(.95)}.bubble-icon[data-astro-cid-pmyxn7tj]{transition:all var(--duration-normal) var(--ease-out);position:absolute}.bubble-icon-close[data-astro-cid-pmyxn7tj]{opacity:0;transform:rotate(-90deg)scale(.8)}.chat-bubble[data-astro-cid-pmyxn7tj].open .bubble-icon-open[data-astro-cid-pmyxn7tj]{opacity:0;transform:rotate(90deg)scale(.8)}.chat-bubble[data-astro-cid-pmyxn7tj].open .bubble-icon-close[data-astro-cid-pmyxn7tj]{opacity:1;transform:rotate(0)scale(1)}.chat-window[data-astro-cid-pmyxn7tj]{inset:auto var(--space-md) calc(var(--space-md) + 72px) auto;color:var(--text-primary);width:380px;max-width:calc(100vw - var(--space-md) * 2);background:var(--bg-surface);border:1px solid var(--glass-border);height:500px;max-height:calc(100vh - 140px);box-shadow:var(--glass-shadow);animation:slide-up var(--duration-slow) var(--ease-out);transform-origin:100% 100%;z-index:1001;border-radius:16px;flex-direction:column;margin:0;padding:0;display:none;position:fixed;overflow:hidden}.chat-window[data-astro-cid-pmyxn7tj][open]{display:flex}@keyframes slide-up{0%{opacity:0;transform:translateY(20px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.chat-header[data-astro-cid-pmyxn7tj]{justify-content:space-between;align-items:center;gap:var(--space-xs);padding:var(--space-md);border-bottom:1px solid var(--glass-border);background:#ffffff08;display:flex}:root[data-theme=light] .chat-header[data-astro-cid-pmyxn7tj]{background:#2563eb14;border-bottom:1px solid #2563eb2e}:root:not([data-theme=light]) .chat-header[data-astro-cid-pmyxn7tj]{background:#8b5cf61f;border-bottom:1px solid #8b5cf638}.chat-header-content[data-astro-cid-pmyxn7tj]{align-items:center;gap:var(--space-sm);display:flex}.status-indicator[data-astro-cid-pmyxn7tj]{background:var(--aurora-cyan);width:8px;height:8px;box-shadow:0 0 8px var(--aurora-cyan);border-radius:50%;animation:2s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.chat-close[data-astro-cid-pmyxn7tj]{width:calc(var(--space-sm) * 3);height:calc(var(--space-sm) * 3);padding:var(--space-xs);border-radius:var(--space-xs);color:var(--text-primary);cursor:pointer;background:0 0;border:0;flex-shrink:0;place-items:center;display:grid}.chat-close[data-astro-cid-pmyxn7tj]:hover{background:var(--glass-bg-hover)}.chat-close[data-astro-cid-pmyxn7tj]:focus-visible{outline:2px solid var(--aurora-cyan);outline-offset:2px}.chat-header[data-astro-cid-pmyxn7tj] h2[data-astro-cid-pmyxn7tj]{font-size:var(--text-base);color:var(--text-primary);margin:0;font-weight:600}.chat-header[data-astro-cid-pmyxn7tj] p[data-astro-cid-pmyxn7tj]{font-size:var(--text-xs);color:var(--text-muted);margin:0}.chat-body[data-astro-cid-pmyxn7tj]{flex-direction:column;flex:1;min-height:0;display:flex;position:relative;overflow-y:auto}.chat-step[data-astro-cid-pmyxn7tj]{flex-direction:column;flex-grow:0;flex-shrink:0;display:none}.chat-step[data-astro-cid-pmyxn7tj].active{display:flex}.chat-messages[data-astro-cid-pmyxn7tj]{padding:var(--space-md);gap:var(--space-sm);flex-direction:column;flex:auto;min-height:0;display:flex;overflow-y:auto}:root[data-theme=light] .chat-messages[data-astro-cid-pmyxn7tj]{background:#2563eb08}:root:not([data-theme=light]) .chat-messages[data-astro-cid-pmyxn7tj]{background:#8b5cf60f}.chat-message{animation:fade-up var(--duration-normal) var(--ease-out);display:flex}.initial-message{opacity:0;animation:fade-up var(--duration-normal) var(--ease-out) forwards}@keyframes fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes bubble-in{0%{transform:scale(.98)}to{transform:scale(1)}}.bot-message{justify-content:flex-start}.user-message{justify-content:flex-end}.message-bubble{max-width:80%;padding:var(--space-sm) var(--space-md);font-size:var(--text-base);animation:bubble-in var(--duration-normal) var(--ease-out);will-change:transform;border-radius:12px;line-height:1.5}.bot-message .message-bubble,.user-message .message-bubble{border:1px solid var(--glass-border);color:var(--text-secondary);background:#ffffff0d}:root[data-theme=light] .bot-message .message-bubble,:root[data-theme=light] .user-message .message-bubble{color:#1f2a44;background:#ffffffe6;border:1px solid #2563eb2e}:root:not([data-theme=light]) .bot-message .message-bubble,:root:not([data-theme=light]) .user-message .message-bubble{color:#d8d8f0;background:#141420e6;border:1px solid #8b5cf633}.message-bubble p{margin:0}.message-bubble strong{margin-bottom:var(--space-xs);color:var(--text-primary);display:block}.success-message,.error-message{align-items:flex-start;gap:var(--space-sm);padding:var(--space-md);max-width:100%;display:flex}.success-message{background:#06b6d41a;border:1px solid #06b6d433}.success-message svg{color:var(--aurora-cyan);flex-shrink:0}.error-message{background:#f973161a;border:1px solid #f9731633}.error-message svg{color:var(--aurora-orange);flex-shrink:0}.chat-input-container[data-astro-cid-pmyxn7tj]{align-items:flex-end;gap:var(--space-xs);padding:var(--space-md);border-top:1px solid var(--glass-border);background:#ffffff05;display:flex}:root[data-theme=light] .chat-input-container[data-astro-cid-pmyxn7tj]{background:#ffffffb3;border-top:1px solid #2563eb2e}:root:not([data-theme=light]) .chat-input-container[data-astro-cid-pmyxn7tj]{background:#0c0c14cc;border-top:1px solid #8b5cf633}.chat-input[data-astro-cid-pmyxn7tj]{padding:var(--space-sm);font-family:inherit;font-size:var(--text-base);color:var(--text-primary);border:1px solid var(--glass-border);resize:none;max-height:120px;transition:all var(--duration-normal) var(--ease-out);background:#ffffff08;border-radius:12px;flex:1}.chat-input-field[data-astro-cid-pmyxn7tj]{gap:var(--space-xs);flex-direction:column;flex:1;min-width:0;display:flex}.chat-input-field[data-astro-cid-pmyxn7tj] label[data-astro-cid-pmyxn7tj],.form-field[data-astro-cid-pmyxn7tj] label[data-astro-cid-pmyxn7tj]{color:var(--text-secondary);font-size:var(--text-sm)}:root[data-theme=light] .chat-input[data-astro-cid-pmyxn7tj]{background:#fffffff2;border:1px solid #2563eb33}:root:not([data-theme=light]) .chat-input[data-astro-cid-pmyxn7tj]{background:#0c0c14d9;border:1px solid #8b5cf638}.chat-input[data-astro-cid-pmyxn7tj]::placeholder{color:var(--text-muted)}.chat-input[data-astro-cid-pmyxn7tj]:focus{border-color:var(--aurora-purple);background:#ffffff0d;outline:none;box-shadow:0 0 0 3px #8b5cf626}.send-btn[data-astro-cid-pmyxn7tj]{background:linear-gradient(135deg, var(--aurora-purple) 0%, var(--aurora-blue) 100%);cursor:pointer;color:#fffffff2;width:40px;height:40px;transition:all var(--duration-normal) var(--ease-out);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.send-btn[data-astro-cid-pmyxn7tj]:hover:not(:disabled){transform:scale(1.1);box-shadow:0 4px 16px #8b5cf666}.send-btn[data-astro-cid-pmyxn7tj]:active:not(:disabled){transform:scale(.95)}.send-btn[data-astro-cid-pmyxn7tj]:disabled{opacity:.4;cursor:not-allowed}.chat-form-container[data-astro-cid-pmyxn7tj]{padding:var(--space-sm) var(--space-md);border-top:1px solid var(--glass-border);background:#ffffff05}.contact-details-form[data-astro-cid-pmyxn7tj]{gap:var(--space-xs);flex-direction:column;display:flex}.form-field[data-astro-cid-pmyxn7tj]{gap:calc(var(--space-xs) * .5);flex-direction:column;display:flex}.form-field[data-astro-cid-pmyxn7tj] input[data-astro-cid-pmyxn7tj]{width:100%;padding:var(--space-sm);font-family:inherit;font-size:var(--text-base);color:var(--text-primary);border:1px solid var(--glass-border);transition:all var(--duration-normal) var(--ease-out);background:#ffffff08;border-radius:12px}.form-field[data-astro-cid-pmyxn7tj] input[data-astro-cid-pmyxn7tj]::placeholder{color:var(--text-muted)}.form-field[data-astro-cid-pmyxn7tj] input[data-astro-cid-pmyxn7tj]:focus{border-color:var(--aurora-purple);background:#ffffff0d;outline:none;box-shadow:0 0 0 3px #8b5cf626}.field-error[data-astro-cid-pmyxn7tj]{font-size:var(--text-xs);color:var(--aurora-orange);display:none}.field-error[data-astro-cid-pmyxn7tj].visible{display:block}.form-field[data-astro-cid-pmyxn7tj] input[data-astro-cid-pmyxn7tj].invalid{border-color:var(--aurora-orange)}.form-field[data-astro-cid-pmyxn7tj] input[data-astro-cid-pmyxn7tj].invalid:focus{border-color:var(--aurora-orange);box-shadow:0 0 0 3px #f9731626}.submit-btn[data-astro-cid-pmyxn7tj]{width:100%;padding:var(--space-sm);font-family:inherit;font-size:var(--text-sm);color:var(--text-on-accent);background:linear-gradient(135deg, var(--aurora-purple) 0%, var(--aurora-blue) 100%);cursor:pointer;transition:all var(--duration-normal) var(--ease-out);justify-content:center;align-items:center;gap:var(--space-xs);border:none;border-radius:12px;font-weight:600;display:flex}.submit-btn[data-astro-cid-pmyxn7tj]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #8b5cf666}.submit-btn[data-astro-cid-pmyxn7tj]:active:not(:disabled){transform:translateY(0)}.submit-btn[data-astro-cid-pmyxn7tj]:disabled{opacity:.7;cursor:not-allowed}.btn-loading[data-astro-cid-pmyxn7tj],.contact-details-form[data-astro-cid-pmyxn7tj].loading .btn-text[data-astro-cid-pmyxn7tj]{display:none}.contact-details-form[data-astro-cid-pmyxn7tj].loading .btn-loading[data-astro-cid-pmyxn7tj]{display:flex}.spinner[data-astro-cid-pmyxn7tj]{animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.retry-btn[data-astro-cid-pmyxn7tj]{margin:var(--space-md);width:calc(100% - var(--space-md) * 2);padding:var(--space-sm);font-family:inherit;font-size:var(--text-sm);color:var(--text-on-accent);background:linear-gradient(135deg, var(--aurora-purple) 0%, var(--aurora-blue) 100%);cursor:pointer;transition:all var(--duration-normal) var(--ease-out);border:none;border-radius:12px;font-weight:600}.retry-btn[data-astro-cid-pmyxn7tj]:hover{transform:translateY(-2px);box-shadow:0 8px 24px #8b5cf666}@media (width<=1024px){.chat-window[data-astro-cid-pmyxn7tj]{width:360px}}@media (width<=768px){.chat-widget[data-astro-cid-pmyxn7tj]{bottom:var(--space-sm);right:var(--space-sm)}.chat-window[data-astro-cid-pmyxn7tj]{width:calc(100vw - var(--space-sm) * 2);bottom:calc(var(--space-sm) + 64px)}}@media (width<=480px){.chat-window[data-astro-cid-pmyxn7tj]{bottom:var(--space-sm);right:var(--space-sm);left:var(--space-sm);width:auto;max-width:none;height:calc(100dvh - var(--space-sm) * 2);max-height:calc(100dvh - var(--space-sm) * 2);border-radius:20px;position:fixed}.chat-bubble[data-astro-cid-pmyxn7tj]{width:48px;height:48px}}@media (prefers-reduced-motion:reduce){.chat-bubble[data-astro-cid-pmyxn7tj],.chat-window[data-astro-cid-pmyxn7tj],.chat-message[data-astro-cid-pmyxn7tj],.message-bubble[data-astro-cid-pmyxn7tj],.send-btn[data-astro-cid-pmyxn7tj],.submit-btn[data-astro-cid-pmyxn7tj],.retry-btn[data-astro-cid-pmyxn7tj],.chat-input[data-astro-cid-pmyxn7tj],.form-field[data-astro-cid-pmyxn7tj] input[data-astro-cid-pmyxn7tj],.bubble-icon[data-astro-cid-pmyxn7tj]{transition:none;animation:none}.status-indicator[data-astro-cid-pmyxn7tj],.spinner[data-astro-cid-pmyxn7tj]{animation:none}.chat-window[data-astro-cid-pmyxn7tj],.chat-message[data-astro-cid-pmyxn7tj]{opacity:1;transform:none}}main[data-astro-cid-ta2fbyqs]{max-width:800px;min-height:100vh;padding:calc(60px + var(--space-xl)) var(--space-md) var(--space-lg);margin:0 auto}.about-hero[data-astro-cid-ta2fbyqs]{margin-bottom:var(--space-lg);animation:fade-up var(--duration-slower) var(--ease-out) forwards;opacity:0}.about-hero[data-astro-cid-ta2fbyqs] h1[data-astro-cid-ta2fbyqs]{font-size:var(--text-5xl);margin-bottom:var(--space-sm);letter-spacing:-.03em;color:var(--text-primary);display:inline-block}@supports ((-webkit-background-clip:text) or (background-clip:text)){.about-hero[data-astro-cid-ta2fbyqs] h1[data-astro-cid-ta2fbyqs]{background:linear-gradient(120deg, var(--text-primary) 0%, var(--text-primary) 35%, var(--aurora-purple) 65%, var(--aurora-magenta) 100%);-webkit-text-fill-color:transparent;color:#0000;-moz-text-fill-color:transparent;-webkit-background-clip:text;-moz-background-clip:text;background-clip:text}}.subtitle[data-astro-cid-ta2fbyqs]{font-size:var(--text-lg);color:var(--text-muted)}.about-content[data-astro-cid-ta2fbyqs]{gap:var(--space-md);flex-direction:column;display:flex}.glass-card h2[data-astro-cid-ta2fbyqs]{font-size:var(--text-xl);margin-bottom:var(--space-sm);color:var(--text-primary);letter-spacing:-.01em}.glass-card p[data-astro-cid-ta2fbyqs]{color:var(--text-secondary);line-height:1.7}.skills-list[data-astro-cid-ta2fbyqs]{gap:var(--space-sm);margin:0;padding:0;list-style:none;display:grid}.skills-list[data-astro-cid-ta2fbyqs] li[data-astro-cid-ta2fbyqs]{align-items:center;gap:var(--space-sm);color:var(--text-secondary);line-height:1.5;display:flex}.skill-icon[data-astro-cid-ta2fbyqs]{color:var(--aurora-cyan);opacity:.8;font-size:.5em}#open-source[data-astro-cid-ta2fbyqs]{scroll-margin-top:calc(60px + var(--space-md))}.project-list[data-astro-cid-ta2fbyqs]{gap:var(--space-md);margin:0;padding:0;list-style:none;display:grid}.project-list[data-astro-cid-ta2fbyqs] h3[data-astro-cid-ta2fbyqs]{font-size:var(--text-lg);margin:0;line-height:1.3}.project-heading[data-astro-cid-ta2fbyqs]{justify-content:space-between;align-items:center;gap:var(--space-xs) var(--space-sm);margin-bottom:var(--space-xs);flex-wrap:wrap;display:flex}.project-list[data-astro-cid-ta2fbyqs] a[data-astro-cid-ta2fbyqs]{color:var(--text-primary);transition:color var(--duration-normal) var(--ease-out)}.project-list[data-astro-cid-ta2fbyqs] a[data-astro-cid-ta2fbyqs]:hover{color:var(--aurora-cyan)}.project-list[data-astro-cid-ta2fbyqs] a[data-astro-cid-ta2fbyqs]:focus-visible{outline:2px solid var(--aurora-cyan);outline-offset:4px}.project-list[data-astro-cid-ta2fbyqs] p[data-astro-cid-ta2fbyqs]{margin-bottom:0}.contact-intro[data-astro-cid-ta2fbyqs]{margin-bottom:var(--space-md)}.contact-links[data-astro-cid-ta2fbyqs]{align-items:center;gap:var(--space-md);margin-top:var(--space-md);display:flex}@media (width<=768px){main[data-astro-cid-ta2fbyqs]{padding-top:calc(60px + var(--space-lg))}.about-hero[data-astro-cid-ta2fbyqs] h1[data-astro-cid-ta2fbyqs]{font-size:var(--text-4xl)}}
