:root{transition:background .3s ease,color .3s ease}:root,[data-theme=dark]{--bg-primary: #0a0a0f;--bg-secondary: #12121a;--text-primary: #f0f0f5;--text-secondary: #9898b0;--accent: #6e6bff;--accent-glow: rgba(110, 107, 255, .4);--surface: rgba(255, 255, 255, .04);--surface-border: rgba(255, 255, 255, .08);--cursor-dot-size: 8px;--cursor-ring-size: 40px;--cursor-color: var(--accent);--cursor-mix-blend-mode: difference}[data-theme=light]{--bg-primary: #f5f5fa;--bg-secondary: #ffffff;--text-primary: #0a0a0f;--text-secondary: #5a5a70;--accent: #4a47d1;--accent-glow: rgba(74, 71, 209, .3);--surface: rgba(0, 0, 0, .03);--surface-border: rgba(0, 0, 0, .08);--cursor-color: var(--accent)}body.custom-cursor-active *,body.custom-cursor-active *:before,body.custom-cursor-active *:after{cursor:none!important}body.custom-cursor-active input,body.custom-cursor-active textarea,body.custom-cursor-active select{cursor:text!important}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}:focus:not(:focus-visible){outline:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@keyframes vt-root-slide-out-left{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-100%)}}::view-transition-old(root){animation:vt-root-slide-out-left .3s ease-in both}::view-transition-new(root){animation:vt-slide-in-right .3s ease-out both}@keyframes vt-slide-in-right{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.hero-image{view-transition-name:hero-image;contain:layout}::view-transition-old(hero-image){animation:vt-hero-out .3s ease-in-out both}::view-transition-new(hero-image){animation:vt-hero-in .3s ease-in-out both}@keyframes vt-hero-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.96)}}@keyframes vt-hero-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:no-preference){::view-transition-old(project-card-0),::view-transition-new(project-card-0),::view-transition-old(project-card-1),::view-transition-new(project-card-1),::view-transition-old(project-card-2),::view-transition-new(project-card-2),::view-transition-old(project-card-3),::view-transition-new(project-card-3),::view-transition-old(project-card-4),::view-transition-new(project-card-4),::view-transition-old(project-card-5),::view-transition-new(project-card-5),::view-transition-old(project-card-6),::view-transition-new(project-card-6),::view-transition-old(project-card-7),::view-transition-new(project-card-7){animation-duration:.3s;animation-timing-function:ease-in-out}}@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root),::view-transition-old(hero-image),::view-transition-new(hero-image),::view-transition-old(project-card-0),::view-transition-new(project-card-0),::view-transition-old(project-card-1),::view-transition-new(project-card-1),::view-transition-old(project-card-2),::view-transition-new(project-card-2),::view-transition-old(project-card-3),::view-transition-new(project-card-3),::view-transition-old(project-card-4),::view-transition-new(project-card-4),::view-transition-old(project-card-5),::view-transition-new(project-card-5),::view-transition-old(project-card-6),::view-transition-new(project-card-6),::view-transition-old(project-card-7),::view-transition-new(project-card-7){animation:none!important}.hero-image{view-transition-name:none!important}}.glass-card{background:var(--surface);border:1px solid var(--surface-border);backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);border-radius:16px;box-shadow:0 8px 32px #0000001f,inset 0 1px #ffffff0f;transition:border-color .3s cubic-bezier(.23,1,.32,1),box-shadow .3s cubic-bezier(.23,1,.32,1),transform .3s cubic-bezier(.23,1,.32,1)}.glass-card:hover{border-color:var(--accent);box-shadow:0 8px 32px var(--accent-glow),inset 0 1px #ffffff1a;transform:translateY(-4px)}header.header.glass-card{border-radius:0 0 16px 16px;border-top:none;border-left:none;border-right:none}.glass-card.glass-card--floating:hover{transform:none}.glass-card.glass-card--skill:hover{border-color:var(--accent);box-shadow:0 8px 32px var(--accent-glow),inset 0 1px #ffffff1a}.custom-cursor{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2147483646;pointer-events:none;contain:layout style}.custom-cursor__dot,.custom-cursor__ring,.custom-cursor__label{position:fixed;left:0;top:0;pointer-events:none;will-change:transform}.custom-cursor__dot{width:var(--cursor-dot-size);height:var(--cursor-dot-size);border-radius:50%;background:var(--cursor-color);mix-blend-mode:var(--cursor-mix-blend-mode);z-index:2}.custom-cursor__ring{width:var(--cursor-ring-size);height:var(--cursor-ring-size);margin-left:0;margin-top:0;border:2px solid var(--cursor-color);border-radius:50%;background:transparent;mix-blend-mode:var(--cursor-mix-blend-mode);box-sizing:border-box;transform-origin:center center;z-index:1}.custom-cursor__label{font-size:.7rem;font-weight:700;letter-spacing:.12em;color:var(--cursor-color);mix-blend-mode:var(--cursor-mix-blend-mode);white-space:nowrap;opacity:0;z-index:3}.chat-assistant-root{--chat-panel-w: 320px;--chat-panel-h: 400px;--chat-fab-size: 56px;position:fixed;right:1.25rem;bottom:1.25rem;z-index:10050;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.chat-assistant-fab{width:var(--chat-fab-size);height:var(--chat-fab-size);border-radius:50%;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;background:linear-gradient(135deg,var(--primary-color, #667eea) 0%,var(--secondary-color, #764ba2) 100%);color:var(--light-100, #fff);box-shadow:0 6px 24px #667eea73;transition:transform .2s ease,box-shadow .2s ease}.chat-assistant-fab:hover{transform:scale(1.06);box-shadow:0 8px 28px #667eea8c}.chat-assistant-fab:focus-visible{outline:2px solid var(--primary-color, #667eea);outline-offset:3px}.chat-assistant-fab svg{width:26px;height:26px}.chat-assistant-panel{position:absolute;right:0;bottom:calc(var(--chat-fab-size) + 12px);width:var(--chat-panel-w);height:var(--chat-panel-h);display:flex;flex-direction:column;overflow:hidden;visibility:hidden;pointer-events:none;transform-origin:bottom right}.chat-assistant-panel[data-open=true]{visibility:visible;pointer-events:auto}.chat-assistant-panel[data-open=false]{visibility:hidden;pointer-events:none}.chat-assistant-header{flex-shrink:0;padding:.85rem 1rem;background:linear-gradient(135deg,#667eea40,#764ba233);border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:space-between;gap:.5rem}.chat-assistant-title{font-size:.95rem;font-weight:600;color:var(--text-primary, #fff);margin:0}.chat-assistant-close{border:none;background:#ffffff14;color:var(--light-200, #f8fafc);width:32px;height:32px;border-radius:8px;cursor:pointer;font-size:1.25rem;line-height:1;display:flex;align-items:center;justify-content:center}.chat-assistant-close:hover{background:#ffffff24}.chat-assistant-messages{flex:1;min-height:0;overflow-y:auto;padding:.75rem;display:flex;flex-direction:column;gap:.6rem}.chat-assistant-msg{max-width:92%;padding:.55rem .75rem;border-radius:12px;font-size:.88rem;line-height:1.45;word-break:break-word;white-space:pre-wrap}.chat-assistant-msg--user{align-self:flex-end;background:linear-gradient(135deg,var(--primary-color, #667eea) 0%,var(--secondary-color, #764ba2) 100%);color:var(--light-100, #fff)}.chat-assistant-msg--assistant{align-self:flex-start;background:#ffffff0f;border:1px solid rgba(255,255,255,.08);color:var(--text-secondary, #a8b2d1)}.chat-assistant-typing{align-self:flex-start;display:flex;align-items:center;gap:4px;padding:.5rem .75rem;background:#ffffff0f;border-radius:12px;border:1px solid rgba(255,255,255,.08)}.chat-assistant-typing span{width:6px;height:6px;border-radius:50%;background:var(--accent-color, #f093fb);animation:chat-dot-bounce 1.2s ease-in-out infinite}.chat-assistant-typing span:nth-child(2){animation-delay:.15s}.chat-assistant-typing span:nth-child(3){animation-delay:.3s}@keyframes chat-dot-bounce{0%,80%,to{transform:translateY(0);opacity:.5}40%{transform:translateY(-6px);opacity:1}}.chat-assistant-footer-row{flex-shrink:0;padding:.25rem .65rem 0;display:flex;justify-content:flex-end}.chat-assistant-clear{background:none;border:1px solid rgba(255,255,255,.1);color:var(--gray-200, #94a3b8);font-size:.75rem;padding:.2rem .6rem;border-radius:6px;cursor:pointer;transition:all .2s ease}.chat-assistant-clear:hover{background:#ffffff14;color:var(--text-primary, #fff)}.chat-assistant-input-row{flex-shrink:0;padding:.65rem;border-top:1px solid rgba(255,255,255,.08);display:flex;gap:.5rem;align-items:flex-end}.chat-assistant-input-row textarea{flex:1;min-height:40px;max-height:100px;resize:none;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:#00000040;color:var(--light-100, #fff);padding:.5rem .65rem;font-size:.88rem;font-family:inherit}.chat-assistant-input-row textarea::placeholder{color:var(--gray-300, #64748b)}.chat-assistant-input-row textarea:disabled{opacity:.55;cursor:not-allowed}.chat-assistant-send{flex-shrink:0;height:40px;padding:0 .85rem;border-radius:10px;border:none;font-weight:600;font-size:.82rem;cursor:pointer;background:linear-gradient(135deg,var(--primary-color, #667eea) 0%,var(--secondary-color, #764ba2) 100%);color:var(--light-100, #fff)}.chat-assistant-send:disabled{opacity:.45;cursor:not-allowed}@media(max-width:768px){.chat-assistant-root{left:0;right:0;bottom:0;padding:0 .75rem .75rem}.chat-assistant-fab{position:fixed;right:1rem;bottom:1rem}.chat-assistant-panel{left:0;right:0;bottom:0;width:100%;max-width:none;height:min(70vh,520px);border-radius:16px 16px 0 0;bottom:calc(var(--chat-fab-size) + 12px)}}
