:root{--font-primary: "Inter", system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;--font-heading: "Space Grotesk", "Inter", system-ui, sans-serif;--font-mono: "Roboto Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--fs-hero: clamp(2.8rem, 6vw, 4rem);--fs-section-title: 1.6rem;--fs-card-title: 1.25rem;--fs-sub-title: 1.1rem;--fs-body: 1.05rem;--fs-small: .9rem;--fs-chip: .85rem;--fs-role: 1.05rem;--fs-kicker: .9rem;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--lh-body: 1.5;--lh-tight: 1.3}:root{--primary-bg: #f9fbfd;--text-color: #0f1218;--secondary-text: #52617a;--accent: #6d5efc;--accent-2: #10b981;--accent-wash: rgba(109, 94, 252, .08);--accent-wash-alt: rgba(16, 185, 129, .05);--link-color: var(--accent);--link-hover-color: #4b3ff0;--surface-0: transparent;--surface-1: rgba(255, 255, 255, .75);--surface-2: #ffffff;--card-bg: var(--surface-1);--card-bg-glass: rgba(255, 255, 255, .72);--card-border: rgba(109, 94, 252, .08);--chip-bg: rgba(109, 94, 252, .05);--chip-text: var(--text-color);--shadow-sm: 0 1px 3px rgba(109, 94, 252, .03);--shadow: 0 16px 48px rgba(109, 94, 252, .08);--shadow-lg: 0 32px 72px rgba(109, 94, 252, .12);--terminal-bg: var(--surface-2)}.dark-theme{--primary-bg: #0b0d12;--text-color: #f9fafb;--secondary-text: #a9b1bf;--accent: #8b7bff;--accent-2: #34d399;--accent-wash: rgba(139, 123, 255, .14);--accent-wash-alt: rgba(52, 211, 153, .06);--link-color: var(--accent);--link-hover-color: #b2a8ff;--surface-0: transparent;--surface-1: rgba(255, 255, 255, .05);--surface-2: rgba(255, 255, 255, .08);--card-bg: var(--surface-1);--card-bg-glass: rgba(11, 13, 18, .75);--card-border: rgba(255, 255, 255, .12);--chip-bg: rgba(255, 255, 255, .08);--chip-text: var(--text-color);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow: 0 18px 55px rgba(0, 0, 0, .55);--shadow-lg: 0 28px 90px rgba(0, 0, 0, .65);--terminal-bg: rgba(255, 255, 255, .06)}@media (prefers-color-scheme: dark){body:not(.light-theme){--primary-bg: #0b0d12;--text-color: #f9fafb;--secondary-text: #a9b1bf;--accent: #8b7bff;--accent-2: #34d399;--accent-wash: rgba(139, 123, 255, .14);--accent-wash-alt: rgba(52, 211, 153, .06);--link-color: var(--accent);--link-hover-color: #b2a8ff;--surface-0: transparent;--surface-1: rgba(255, 255, 255, .05);--surface-2: rgba(255, 255, 255, .08);--card-bg: var(--surface-1);--card-bg-glass: rgba(11, 13, 18, .75);--card-border: rgba(255, 255, 255, .12);--chip-bg: rgba(255, 255, 255, .08);--chip-text: var(--text-color);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow: 0 18px 55px rgba(0, 0, 0, .55);--shadow-lg: 0 28px 90px rgba(0, 0, 0, .65);--terminal-bg: rgba(255, 255, 255, .06)}}:root{--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 20px;--spacing-xl: 30px;--container-max-width: 1280px;--container-padding: 32px 16px;--section-padding: 16px 16px;--section-margin: 40px 0;--card-padding: 24px;--border-radius: 20px;--chip-border-radius: 999px;--ring: 0 0 0 4px var(--accent-wash)}html{scroll-behavior:smooth;box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}body{font-family:var(--font-primary);background:radial-gradient(900px circle at 10% -10%,var(--accent-wash),transparent 55%),radial-gradient(900px circle at 90% 10%,var(--accent-wash-alt),transparent 55%),var(--primary-bg);color:var(--text-color);margin:0;transition:background .3s ease,color .3s ease;font-size:16px;line-height:1.6;animation:bgPulse 20s infinite alternate ease-in-out}@keyframes bgPulse{0%{background-position:0% 0%}to{background-position:10% 10%}}.grain-overlay{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:99999;opacity:.08;filter:url(#noiseFilter);mix-blend-mode:soft-light}.container{max-width:var(--container-max-width);margin:0 auto;padding:var(--container-padding);position:relative}a{color:var(--link-color);text-decoration:none}a:hover{color:var(--link-hover-color)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:10px 14px;border-radius:999px;border:1px solid var(--card-border);background:var(--surface-2);color:var(--text-color);font-weight:var(--fw-semibold);font-size:.95rem;box-shadow:var(--shadow-sm);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.btn:hover{transform:translateY(-1px);box-shadow:var(--shadow);border-color:#6d5efc66}.btn:focus-visible{outline:none;box-shadow:var(--shadow),var(--ring)}.btn.primary{background:linear-gradient(135deg,var(--accent),#4b3ff0);color:#fff;border:none!important;background-clip:padding-box}.btn.primary:hover{border-color:transparent}.btn.ghost{background:transparent;backdrop-filter:blur(10px)}.pill{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;background:var(--chip-bg);border:1px solid var(--card-border);color:var(--secondary-text);font-size:.85rem;font-weight:var(--fw-medium)}.pill code{font-family:var(--font-mono);font-size:.85em}.header{display:flex;justify-content:space-between;align-items:center;padding:15px 0;margin-bottom:30px;border:none!important}.profile{display:flex;flex-direction:column;align-items:flex-start;border:none!important}.profile h1{font-family:var(--font-heading);font-size:var(--fs-hero);margin:0;font-weight:var(--fw-bold)}.role{font-size:var(--fs-role);font-weight:var(--fw-medium);margin:3px 0;color:var(--secondary-text)}.location{font-size:var(--fs-body);margin:2px 0 8px;color:var(--secondary-text)}.location i{margin-right:5px;color:var(--text-color)}.contact{display:flex!important;gap:15px;margin-top:10px;border:none!important;padding:0;background:transparent!important}.contact a{color:var(--link-color);font-size:1rem;transition:transform .3s ease,color .3s ease;display:inline-flex;align-items:center;text-decoration:none!important}.contact a:hover{transform:scale(1.15);color:var(--secondary-text)}.contact a i{font-size:1rem;color:var(--text-color)}.theme-button{margin-left:15px}#theme-toggle{background:var(--card-bg);border:1px solid var(--card-border);font-size:1.1rem;color:var(--text-color);cursor:pointer;padding:0;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:transform .3s ease,border-color .3s ease}#theme-toggle:hover{transform:translateY(-2px);border-color:var(--text-color)}.snackbar{position:fixed;bottom:15px;left:50%;transform:translate(-50%);background:var(--card-bg);color:var(--text-color);padding:8px 15px;border-radius:6px;box-shadow:var(--shadow);font-size:.75rem;z-index:10}.snackbar kbd{background:var(--chip-bg);color:var(--chip-text);padding:2px 5px;border-radius:3px;font-size:.65rem}.command-palette{display:none;position:fixed!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important;width:350px;max-width:90%;box-sizing:border-box;z-index:5000;border-radius:12px;box-shadow:0 20px 50px #00000080;margin:0!important;background:var(--surface-2);background-color:var(--primary-bg)!important;color:var(--text-color);border:1px solid var(--card-border);backdrop-filter:blur(25px)}.command-palette.active{display:block!important}.command-palette.windows{background:var(--card-bg);color:var(--text-color);font-family:Consolas,Courier New,monospace;border:1px solid var(--card-border)}.command-palette.windows .terminal-header{background:var(--chip-bg);color:var(--chip-text);padding:4px;font-size:.75rem;font-weight:700;text-align:center;border-top-left-radius:6px;border-top-right-radius:6px}.command-palette.windows .terminal-header:before{content:"Command Prompt"}.command-palette.macos{background:var(--card-bg);color:var(--text-color);font-family:Menlo,Roboto Mono,monospace;border:1px solid var(--card-border)}.command-palette.macos .terminal-header{background:var(--chip-bg);padding:8px;border-top-left-radius:6px;border-top-right-radius:6px;display:flex;gap:6px}.terminal-dot{width:10px;height:10px;border-radius:50%}.red{background:#ff5f56}.yellow{background:#ffbd2e}.green{background:#27c93f}#command-input{width:100%;padding:8px 12px;font-size:.8rem;border:none;background:var(--card-bg);color:var(--text-color);font-family:inherit;outline:none;box-sizing:border-box}.command-palette.windows #command-input,.command-palette.macos #command-input{background:var(--card-bg);color:var(--text-color)}#command-list{list-style:none;padding:0;margin:0}#command-list li{padding:12px;cursor:pointer;transition:background .2s ease}#command-list li a{color:var(--text-color);text-decoration:none;font-size:.8rem}.command-palette.windows #command-list li:hover,.command-palette.macos #command-list li:hover{background:var(--chip-bg)}.content-ready .section:before,.content-ready .hero-copy:before,.content-ready .panel-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,transparent,var(--text-color),transparent);animation:slideBorder 1.5s ease-in-out forwards;z-index:10}@keyframes slideBorder{0%{transform:translate(-100%)}to{transform:translate(100%);opacity:0}}.section{margin:var(--section-margin);background:var(--card-bg);padding:var(--section-padding);border-radius:var(--border-radius);border:1px solid var(--card-border);position:relative;overflow:hidden;box-shadow:var(--shadow-sm);backdrop-filter:blur(12px);transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.section:hover{border-color:#6d5efc59;box-shadow:var(--shadow)}.section h2{font-family:var(--font-heading);font-size:var(--fs-section-title);color:var(--text-color);margin:0 0 var(--spacing-md);font-weight:var(--fw-bold);letter-spacing:-.02em}.section p{font-size:var(--fs-body);color:var(--secondary-text);line-height:var(--lh-body)}.section>*:last-child,.section p:last-child{margin-bottom:0}.section p strong,.section ul li strong{font-weight:var(--fw-semibold);color:var(--text-color)}.section a:not(.btn),.section ul li a:not(.btn){color:var(--link-color);text-decoration:underline;transition:color .2s ease}.section a:not(.btn):hover,.section ul li a:not(.btn):hover{color:var(--link-hover-color)}.section ul{font-size:var(--fs-body);color:var(--secondary-text);line-height:var(--lh-body);padding-left:15px;margin:var(--spacing-sm) 0}.section ul li{margin-bottom:6px}.chip-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.chip{background:var(--chip-bg);color:var(--chip-text);padding:6px 12px;border-radius:var(--chip-border-radius);font-size:var(--fs-chip);transition:transform .3s ease,box-shadow .3s ease,opacity .3s ease}.chip:hover{transform:translateY(-2px) scale(1.03);opacity:.9}.project-card{background:var(--card-bg);padding:var(--card-padding);margin-bottom:15px;border-radius:var(--border-radius);border:1px solid var(--card-border);transition:transform .3s ease,border-color .3s ease,background .3s ease}.project-card:hover{transform:translateY(-3px);border-color:var(--text-color)}.project-card h3{font-family:var(--font-heading);font-size:var(--fs-card-title);margin:0 0 4px;font-weight:var(--fw-bold)}.project-card h3 a.project-link,.project h4 a.project-link{color:var(--link-color);text-decoration:none;transition:text-decoration .2s ease,color .2s ease}.project-card h3 a.project-link:hover,.project h4 a.project-link:hover{text-decoration:underline;color:var(--link-hover-color)}.project-date{font-size:var(--fs-small);color:var(--secondary-text);margin-bottom:var(--spacing-sm)}.project-card strong{font-weight:var(--fw-semibold);color:var(--text-color)}.experience{margin-bottom:var(--spacing-lg)}.experience h3{font-family:var(--font-heading);font-size:var(--fs-card-title);margin-bottom:var(--spacing-sm);font-weight:var(--fw-bold)}.divider{border:none;border-top:1px dashed var(--card-border);margin:var(--spacing-lg) 0}.project{margin-top:var(--spacing-md);padding-left:15px;border-left:2px solid var(--text-color)}.project h4{font-family:var(--font-heading);font-size:var(--fs-sub-title);margin-bottom:var(--spacing-sm);font-weight:var(--fw-bold)}.education h3{font-family:var(--font-heading);font-size:var(--fs-card-title);margin-bottom:var(--spacing-sm);font-weight:var(--fw-bold)}.fab{display:none;position:fixed;bottom:20px;right:20px;background:var(--chip-bg);color:var(--chip-text);border:none;border-radius:50%;width:50px;height:50px;box-shadow:var(--shadow);cursor:pointer;font-size:1.2rem;display:flex;align-items:center;justify-content:center;transition:transform .3s ease,background .3s ease;z-index:1000}.fab:hover{transform:scale(1.1);background:var(--card-bg)}@keyframes slideBorder{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@media (max-width: 768px){.container{padding:var(--container-padding)}.header{flex-direction:row;align-items:center;gap:8px;justify-content:space-between}.theme-button{margin-left:auto;align-self:center}.section{margin:15px 0;padding:var(--section-padding)}.section h2{font-size:var(--fs-section-title)}.profile h1{font-size:var(--fs-hero)}.project-card h3,.experience h3,.education h3{font-size:var(--fs-card-title)}.project h4{font-size:var(--fs-sub-title)}.section p,.section ul{font-size:var(--fs-body)}.chip{font-size:var(--fs-chip);padding:4px 8px}.snackbar{display:none!important}.fab{display:flex}.command-palette.active{display:block!important;width:90%;max-width:400px}.command-palette{top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important;border:1px solid rgba(255,255,255,.1)!important;background:var(--card-bg)!important;box-shadow:0 10px 30px #0009!important;backdrop-filter:blur(12px)}.command-palette .terminal-header{background:var(--card-bg)!important;border-bottom:1px solid var(--card-border)}.fab{display:flex;background:var(--card-bg);color:var(--text-color);border:1px solid var(--card-border);box-shadow:none!important}#command-input{font-size:var(--fs-small)}#command-list li{padding:10px}#command-list li a{font-size:var(--fs-small)}}@media (max-width: 480px){.profile h1{font-size:1.3rem}.contact a{font-size:var(--fs-body)}.theme-button{bottom:20px;left:20px}#theme-toggle{width:36px;height:36px;font-size:.9rem}}.shimmer{background:linear-gradient(90deg,#ffffff08 25%,#ffffff14 37%,#ffffff08 63%);background-size:400% 100%;animation:skeleton-loading 1.4s ease infinite}@keyframes skeleton-loading{0%{background-position:100% 50%}to{background-position:0% 50%}}
