:root{--primary-color: #1a1a1a;--secondary-color: #f2f2f2;--accent-color: #00bfff;--card-bg: #111217;--border: rgba(255, 255, 255, .04);--card-shadow: 0 1px 2px rgba(0, 0, 0, .6);--card-shadow-hover: 0 8px 20px rgba(0, 0, 0, .6);--chip-bg: #1f2937;--chip-foreground: #e5e7eb}html,body{height:100%;margin:0;padding:0}body{background-color:var(--primary-color);color:var(--secondary-color);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}#app{display:flex;flex-direction:column;min-height:100vh}main{flex:1 0 auto;overflow-y:auto;padding-bottom:2.5rem}a{color:var(--accent-color);text-decoration:none}.container{max-width:960px;margin:0 auto;padding:0 15px}.scroll-fade-in{opacity:0;transform:translateY(30px);transition:opacity .6s cubic-bezier(.175,.885,.32,1.275),transform .6s cubic-bezier(.175,.885,.32,1.275)}.scroll-fade-in.is-visible{opacity:1;transform:translateY(0)}.hero-fade-in{opacity:1;animation:fadeIn 1s ease-in-out forwards}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.app-header[data-v-63b66280]{position:fixed;top:16px;left:50%;transform:translate(-50%);width:calc(100% - 32px);max-width:960px;z-index:1000;background:linear-gradient(to bottom,#282828b3,#1e1e1ecc);-webkit-backdrop-filter:blur(12px) saturate(150%);backdrop-filter:blur(12px) saturate(150%);border-radius:9999px;border:1px solid rgba(255,255,255,.2);box-shadow:0 8px 32px #0000004d}.nav-container[data-v-63b66280]{max-width:1200px;margin:0 auto;padding:0 30px;height:56px;display:flex;justify-content:space-between;align-items:center}.logo[data-v-63b66280]{font-size:1.25rem;font-weight:700;color:var(--secondary-color);text-decoration:none}.nav-links[data-v-63b66280]{list-style:none;display:flex;gap:30px;margin:0;padding:0}.nav-links a[data-v-63b66280]{color:var(--secondary-color);text-decoration:none;font-weight:500;padding:5px 0;position:relative;transition:color .3s ease}.nav-links a[data-v-63b66280]:after{content:"";position:absolute;width:0;height:2px;bottom:0;left:0;background-color:var(--accent-color);transition:width .3s ease}.nav-links a[data-v-63b66280]:hover{color:var(--accent-color)}.nav-links a[data-v-63b66280]:hover:after{width:100%}footer[data-v-f97cc5e3]{background-color:var(--primary-color);padding:20px;border-top:1px solid #333;margin-top:auto}.base-section[data-v-fbcf36d7]{padding:80px 0}.base-section.is-centered[data-v-fbcf36d7]{text-align:center}.container[data-v-fbcf36d7]{max-width:1200px;margin:0 auto;padding:0 15px}#hero[data-v-12f26e6a]{background:linear-gradient(-45deg,#1a1a2e,#16213e,#0f3460,#2c496e);background-size:400% 400%;animation:gradientAnimation-12f26e6a 15s ease infinite;height:100vh;color:#e0e0e0;padding:0 15px;text-align:center;display:flex;flex-direction:column;justify-content:center;align-items:center}@keyframes gradientAnimation-12f26e6a{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}#hero h1[data-v-12f26e6a]{font-size:3rem;margin-bottom:20px}#hero p[data-v-12f26e6a]{font-size:1.25rem;margin-bottom:40px;max-width:600px}.btn[data-v-12f26e6a]{background-color:var(--primary-color);color:#fff;padding:15px 30px;border-radius:8px;text-decoration:none;font-weight:700;transition:transform .3s ease,box-shadow .3s ease}.btn[data-v-12f26e6a]:hover{transform:translateY(-3px);background-color:var(--accent-color);color:#fff;box-shadow:0 15px 35px #007bff33}.typing-wrapper[data-v-12f26e6a]{position:relative;display:inline-block;min-height:1.25rem}.cursor[data-v-12f26e6a]{animation:blink-12f26e6a 1s step-end infinite;position:absolute;right:-10px;top:0}@keyframes blink-12f26e6a{0%,to{color:transparent}50%{color:#e0e0e0}}.status-icon[data-v-cecdf2fc]{width:32px;height:32px;stroke:var(--accent-color)}#about[data-v-1ae6886c]{padding:80px 0}.about-content-wrapper[data-v-1ae6886c]{display:flex;flex-direction:column;gap:40px}.about-card[data-v-1ae6886c]{display:flex;align-items:center;gap:40px;background-color:#2a2a2a;padding:40px;border-radius:16px;box-shadow:0 10px 30px #0003;border:1px solid #333}.profile-image-wrapper[data-v-1ae6886c]{flex-shrink:0}.profile-image-wrapper img[data-v-1ae6886c]{width:220px;height:220px;border-radius:50%;object-fit:cover;border:4px solid var(--accent-color);box-shadow:0 4px 15px #0000004d}.about-text[data-v-1ae6886c]{text-align:left}.about-text h3[data-v-1ae6886c]{color:var(--accent-color);margin-top:0;margin-bottom:8px}.about-text h3[data-v-1ae6886c]:not(:first-child){margin-top:24px}.about-text p[data-v-1ae6886c]{line-height:1.6;margin:0}.status-card[data-v-1ae6886c]{background-color:#2a2a2a;padding:30px 40px;border-radius:16px;box-shadow:0 10px 30px #0003;border:1px solid #333}.status-grid[data-v-1ae6886c]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:30px}.status-item[data-v-1ae6886c]{display:flex;align-items:center;gap:15px}.status-icon[data-v-1ae6886c]{flex-shrink:0;width:32px;height:32px;stroke:var(--accent-color)}.status-text[data-v-1ae6886c]{display:flex;flex-direction:column}.status-text strong[data-v-1ae6886c]{font-weight:600;color:#fff;margin-bottom:2px}.status-text span[data-v-1ae6886c]{font-size:.9rem;color:#b0b0b0}@media (max-width: 768px){.about-card[data-v-1ae6886c]{flex-direction:column;text-align:center;padding:30px}.about-text[data-v-1ae6886c]{text-align:center}.status-card[data-v-1ae6886c]{padding:30px}}.base-card[data-v-9f01c6b7]{display:block;height:100%;padding:1rem;border-radius:8px;background:var(--card-bg, #fff);border:1px solid var(--border, rgba(16, 24, 40, .06));box-shadow:var(--card-shadow, 0 1px 2px rgba(16, 24, 40, .04));transition:transform .16s ease,box-shadow .16s ease;color:inherit;text-decoration:none}.base-card[data-v-9f01c6b7]:hover{transform:translateY(-6px);box-shadow:var(--card-shadow-hover, 0 8px 20px rgba(16, 24, 40, .08))}.base-card__header[data-v-9f01c6b7],.base-card__body[data-v-9f01c6b7],.base-card__footer[data-v-9f01c6b7]{margin:0}.base-card.align-center[data-v-9f01c6b7]{text-align:center;align-items:center}.base-card.align-left[data-v-9f01c6b7]{text-align:left}.project-card .base-card__header[data-v-257840b6]{padding:0}.base-card__header img[data-v-257840b6]{width:100%;height:200px;object-fit:cover;display:block;border-top-left-radius:8px;border-top-right-radius:8px}.project-info[data-v-257840b6]{padding:20px}.project-info h3[data-v-257840b6]{margin-top:0;margin-bottom:10px;color:var(--secondary-color)}.project-info p[data-v-257840b6]{margin:0;color:#ccc}#projects[data-v-179121a6]{padding:80px 0;text-align:center}.project-grid[data-v-179121a6]{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;margin-top:40px}.title[data-v-23b88ad2]{margin:0 0 .25rem;font-size:1.05rem;line-height:1.2;color:var(--heading, inherit)}.desc[data-v-23b88ad2]{margin:0 0 .75rem;color:var(--muted, #6b7280);font-size:.95rem;flex:0 0 auto}.tech-list[data-v-23b88ad2]{list-style:none;padding:0;margin:0;display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.75rem;justify-content:center}.tech-item[data-v-23b88ad2]{background:var(--chip-bg, #f3f4f6);padding:.25rem .5rem;border-radius:999px;font-size:.85rem;color:var(--chip-foreground, inherit)}[data-v-23b88ad2] .visit{margin-top:.75rem;align-self:center;color:var(--link, #0366d6);font-weight:600;text-decoration:none}.showcase-link[data-v-23b88ad2]:focus-visible{outline:3px solid color-mix(in srgb,var(--link, #0366d6) 20%,transparent);outline-offset:4px}#showcase[data-v-03f253ea]{padding-top:80px;text-align:center}.showcase-grid[data-v-03f253ea]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:30px;margin-top:20px}#contact[data-v-cf95318e]{padding:80px 0;text-align:center}#contact p[data-v-cf95318e]{max-width:600px;margin:16px auto 40px;line-height:1.6}.contact-links[data-v-cf95318e]{display:flex;justify-content:center;flex-wrap:wrap;gap:20px}.contact-card[data-v-cf95318e]{display:inline-flex;align-items:center;gap:12px;background-color:#2a2a2a;padding:15px 25px;border-radius:12px;border:1px solid #333;box-shadow:0 10px 30px #0003;text-decoration:none;color:var(--secondary-color);font-weight:500;transition:transform .3s ease,box-shadow .3s ease,background-color .3s ease}.contact-card[data-v-cf95318e]:hover{transform:translateY(-5px);background-color:var(--accent-color);color:#fff;box-shadow:0 15px 35px #007bff33}.contact-card:hover .contact-icon[data-v-cf95318e]{stroke:#fff}.contact-icon[data-v-cf95318e]{stroke:var(--accent-color);transition:stroke .3s ease}
