:root{color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";background:#05070f}.app-root{min-height:100svh;background:radial-gradient(1200px 800px at 20% 0%,#0d1224,#060913 40%,#05070f);color:#e2e8f0}.app-content{padding:80px 24px 24px;min-height:100svh;box-sizing:border-box}.mode-toggle{position:fixed;top:0;left:0;right:0;z-index:100;background:#05070fe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid #1b2440;padding:12px 24px}.mode-toggle-container{max-width:900px;margin:0 auto;display:flex;gap:8px;justify-content:center}.mode-toggle-btn{padding:10px 24px;border:1px solid #1b2440;background:transparent;color:#a9b1d6;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:14px;border-radius:6px;cursor:pointer;transition:all .2s ease}.mode-toggle-btn:hover{background:#38bdf81a;border-color:#38bdf8;color:#e2e8f0}.mode-toggle-btn.active{background:linear-gradient(135deg,#38bdf8,#818cf8);border-color:transparent;color:#0f172a;font-weight:600}.terminal-root{min-height:100svh;background:radial-gradient(1200px 800px at 20% 0%,#0d1224,#060913 40%,#05070f);color:#e2e8f0;display:flex;align-items:center;justify-content:center;padding:24px;box-sizing:border-box}.terminal-window{width:min(900px,100%);max-width:900px;margin:0 auto;background:#0b1020;border:1px solid #1b2440;border-radius:10px;overflow:hidden;box-shadow:0 10px 40px #0006}.terminal-header{display:flex;align-items:center;gap:12px;height:44px;padding:0 12px;background:linear-gradient(180deg,#0f1630,#0a1028);border-bottom:1px solid #1b2440}.traffic-lights{display:flex;gap:8px}.traffic-lights span{width:12px;height:12px;border-radius:50%;display:inline-block}.traffic-lights .red{background:#ff5f56}.traffic-lights .yellow{background:#ffbd2e}.traffic-lights .green{background:#27c93f}.terminal-header .title{font-size:13px;color:#a9b1d6}.terminal-body{height:clamp(380px,60vh,540px);padding:16px;overflow:auto;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:14px;line-height:1.6;white-space:pre-wrap}.terminal-line{margin:0 0 10px;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere}.terminal-input{display:flex;align-items:center;gap:8px;padding:12px 16px;border-top:1px solid #1b2440;background:#0a1028}.terminal-input .prompt{color:#38bdf8;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.terminal-input input{flex:1;background:transparent;color:#e2e8f0;border:none;outline:none;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:14px;padding:6px 0}.terminal-input input::placeholder{color:#6b7280}::selection{background:#38bdf83d}.terminal-link{color:#93c5fd;text-decoration:none}.terminal-link:hover{text-decoration:underline}.chat-reply{color:#a3e635}.about-block{line-height:1.6}.terminal-wrap{white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere}.terminal-wrap div{margin-bottom:6px}.cv-page{max-width:900px;margin:0 auto;padding-bottom:60px}.cv-header{text-align:center;padding:40px 20px;margin-bottom:40px;background:linear-gradient(135deg,#38bdf81a,#818cf81a);border-radius:16px;border:1px solid #1b2440}.cv-header h1{font-size:clamp(2rem,5vw,3rem);margin:0 0 8px;background:linear-gradient(135deg,#38bdf8,#818cf8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.cv-title{font-size:1.25rem;color:#a9b1d6;margin:0 0 16px}.cv-contact{color:#6b7280;margin-bottom:16px}.cv-contact a{color:#93c5fd;text-decoration:none}.cv-contact a:hover{text-decoration:underline}.cv-contact .separator{margin:0 8px}.cv-links{display:flex;gap:16px;justify-content:center;margin-bottom:20px}.cv-links a{color:#38bdf8;text-decoration:none;padding:8px 16px;border:1px solid #1b2440;border-radius:6px;transition:all .2s ease}.cv-links a:hover{background:#38bdf81a;border-color:#38bdf8}.download-btn{padding:12px 28px;background:linear-gradient(135deg,#38bdf8,#818cf8);border:none;border-radius:8px;color:#0f172a;font-weight:600;font-size:14px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.download-btn:hover{transform:translateY(-2px);box-shadow:0 4px 20px #38bdf84d}.cv-section{margin-bottom:40px}.cv-section h2{font-size:1.5rem;color:#e2e8f0;margin:0 0 24px;padding-bottom:12px;border-bottom:2px solid #1b2440;display:inline-block}.cv-summary{color:#a9b1d6;line-height:1.8;font-size:1rem}.cv-timeline{display:flex;flex-direction:column;gap:24px}.cv-timeline-item{padding:24px;background:#0b102099;border:1px solid #1b2440;border-radius:12px;transition:border-color .2s ease}.cv-timeline-item:hover{border-color:#38bdf8}.cv-timeline-header{margin-bottom:8px}.cv-timeline-header h3{font-size:1.1rem;color:#e2e8f0;margin:0 0 4px}.cv-company{color:#38bdf8;font-size:.95rem}.cv-timeline-meta{color:#6b7280;font-size:.875rem;margin-bottom:12px}.cv-timeline-meta .separator{margin:0 8px}.cv-bullets{margin:0;padding-left:20px;color:#a9b1d6}.cv-bullets li{margin-bottom:8px;line-height:1.6}.cv-skills-grid{display:grid;gap:24px}.cv-skill-category h3{font-size:1rem;color:#a9b1d6;margin:0 0 12px}.cv-tags{display:flex;flex-wrap:wrap;gap:8px}.cv-tag{padding:6px 14px;background:#38bdf81a;border:1px solid #1b2440;border-radius:20px;font-size:.875rem;color:#93c5fd;transition:all .2s ease}.cv-tag:hover{border-color:#38bdf8;background:#38bdf833}.cv-footer{text-align:center;padding:40px 20px;background:linear-gradient(135deg,#818cf81a,#38bdf81a);border-radius:16px;border:1px solid #1b2440}.cv-footer p{color:#a9b1d6;margin:8px 0}.portfolio-page{max-width:900px;margin:0 auto;padding-bottom:60px}.portfolio-header{text-align:center;padding:40px 20px;margin-bottom:40px}.portfolio-header h1{font-size:clamp(2rem,5vw,3rem);margin:0 0 16px;background:linear-gradient(135deg,#818cf8,#38bdf8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.portfolio-header p{color:#a9b1d6;font-size:1.1rem;max-width:600px;margin:0 auto}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;margin-bottom:60px}.portfolio-card{background:#0b102099;border:1px solid #1b2440;border-radius:12px;overflow:hidden;transition:all .3s ease}.portfolio-card:hover{border-color:#38bdf8;transform:translateY(-4px);box-shadow:0 8px 30px #38bdf826}.portfolio-card-placeholder{opacity:.5;border-style:dashed}.portfolio-card-placeholder:hover{transform:none;box-shadow:none}.portfolio-card-content{padding:24px}.portfolio-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.portfolio-card-header h3{font-size:1.1rem;color:#e2e8f0;margin:0}.portfolio-status{font-size:.75rem;padding:4px 10px;border-radius:12px;white-space:nowrap}.portfolio-status.completed{background:#27c93f33;color:#27c93f}.portfolio-status.in-progress{background:#ffbd2e33;color:#ffbd2e}.portfolio-status.upcoming{background:#6b728033;color:#6b7280}.portfolio-description{color:#a9b1d6;font-size:.95rem;line-height:1.6;margin:0 0 16px}.portfolio-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.portfolio-tag{padding:4px 10px;background:#818cf826;border-radius:4px;font-size:.8rem;color:#818cf8}.portfolio-links{display:flex;gap:12px}.portfolio-link{padding:8px 16px;background:transparent;border:1px solid #1b2440;border-radius:6px;color:#38bdf8;text-decoration:none;font-size:.875rem;transition:all .2s ease}.portfolio-link:hover{background:#38bdf81a;border-color:#38bdf8}.portfolio-link.demo{background:linear-gradient(135deg,#38bdf8,#818cf8);border-color:transparent;color:#0f172a;font-weight:600}.portfolio-link.demo:hover{transform:translateY(-2px)}.portfolio-cta{text-align:center;padding:40px 20px;background:linear-gradient(135deg,#818cf81a,#38bdf81a);border-radius:16px;border:1px solid #1b2440}.portfolio-cta h2{font-size:1.5rem;color:#e2e8f0;margin:0 0 12px}.portfolio-cta p{color:#a9b1d6;margin:0 0 20px}.portfolio-contact-btn{display:inline-block;padding:12px 28px;background:linear-gradient(135deg,#818cf8,#38bdf8);border-radius:8px;color:#0f172a;text-decoration:none;font-weight:600;transition:transform .2s ease,box-shadow .2s ease}.portfolio-contact-btn:hover{transform:translateY(-2px);box-shadow:0 4px 20px #818cf84d}.chatbot-fab{position:fixed;bottom:24px;right:24px;width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,#38bdf8,#818cf8);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px #38bdf866;transition:all .3s ease;z-index:1000}.chatbot-fab:hover{transform:scale(1.1);box-shadow:0 6px 30px #38bdf880}.chatbot-fab.open{background:#1b2440}.chatbot-fab svg{width:28px;height:28px;color:#0f172a}.chatbot-fab.open svg{color:#e2e8f0}.chatbot-popup{position:fixed;bottom:100px;right:24px;width:380px;max-width:calc(100vw - 48px);height:500px;max-height:calc(100vh - 140px);background:#0b1020;border:1px solid #1b2440;border-radius:16px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 10px 40px #00000080;z-index:999;opacity:0;visibility:hidden;transform:translateY(20px) scale(.95);transition:all .3s ease}.chatbot-popup.open{opacity:1;visibility:visible;transform:translateY(0) scale(1)}.chatbot-header{display:flex;align-items:center;justify-content:space-between;padding:16px;background:linear-gradient(180deg,#0f1630,#0a1028);border-bottom:1px solid #1b2440}.chatbot-header-info{display:flex;align-items:center;gap:12px}.chatbot-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#38bdf8,#818cf8);display:flex;align-items:center;justify-content:center}.chatbot-avatar svg{width:22px;height:22px;color:#0f172a}.chatbot-header-info h3{margin:0;font-size:1rem;color:#e2e8f0}.chatbot-status{font-size:.75rem;color:#27c93f}.chatbot-close{background:transparent;border:none;cursor:pointer;padding:8px;border-radius:8px;transition:background .2s ease}.chatbot-close:hover{background:#ffffff1a}.chatbot-close svg{width:20px;height:20px;color:#a9b1d6}.chatbot-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:16px}.chatbot-message{display:flex;gap:10px;align-items:flex-start}.chatbot-message.user{flex-direction:row-reverse}.chatbot-message-avatar{width:32px;height:32px;min-width:32px;border-radius:50%;background:#38bdf833;display:flex;align-items:center;justify-content:center}.chatbot-message-avatar svg{width:18px;height:18px;color:#38bdf8}.chatbot-message-content{max-width:75%;padding:12px 16px;border-radius:16px;font-size:.9rem;line-height:1.5}.chatbot-message.bot .chatbot-message-content{background:#1b2440;color:#e2e8f0;border-bottom-left-radius:4px}.chatbot-message.user .chatbot-message-content{background:linear-gradient(135deg,#38bdf8,#818cf8);color:#0f172a;border-bottom-right-radius:4px}.chatbot-typing{display:flex;gap:4px;padding:4px 0}.chatbot-typing span{width:8px;height:8px;border-radius:50%;background:#38bdf8;animation:typing 1.4s infinite ease-in-out both}.chatbot-typing span:nth-child(1){animation-delay:-.32s}.chatbot-typing span:nth-child(2){animation-delay:-.16s}@keyframes typing{0%,80%,to{transform:scale(.6);opacity:.5}40%{transform:scale(1);opacity:1}}.chatbot-input{display:flex;gap:8px;padding:12px 16px;border-top:1px solid #1b2440;background:#0a1028}.chatbot-input input{flex:1;padding:12px 16px;background:#1b2440;border:1px solid #2a3654;border-radius:24px;color:#e2e8f0;font-size:.9rem;outline:none;transition:border-color .2s ease}.chatbot-input input:focus{border-color:#38bdf8}.chatbot-input input::placeholder{color:#6b7280}.chatbot-input button{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#38bdf8,#818cf8);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.chatbot-input button:hover:not(:disabled){transform:scale(1.05)}.chatbot-input button:disabled{opacity:.5;cursor:not-allowed}.chatbot-input button svg{width:20px;height:20px;color:#0f172a}@media (max-width: 640px){.app-content{padding:70px 16px 16px}.mode-toggle{padding:10px 16px}.mode-toggle-btn{padding:8px 16px;font-size:13px}.cv-header{padding:24px 16px}.cv-links{flex-direction:column;align-items:center}.cv-timeline-item{padding:16px}.portfolio-grid{grid-template-columns:1fr}.chatbot-fab{bottom:16px;right:16px;width:56px;height:56px}.chatbot-popup{bottom:88px;right:16px;left:16px;width:auto;max-width:none;height:calc(100vh - 120px);max-height:none}}
