html{scroll-behavior:smooth}:root{--color-primary: #6b21a8;--color-primary-hover: #5b21b6;--color-accent: #2563eb;--color-accent-hover: #1d4ed8;--color-skill-border: #86efac;--color-text-muted: #6b7280;--color-bg: #f6f9fc;--color-surface: #ffffff;--color-border: #e5e7eb;--color-terminal-bg: #5a5d7a;--color-terminal-header: #e4e3e5;--color-terminal-text: #f7f7f7;--color-terminal-return: #e7d184;--color-terminal-link: #00ffff}@media(prefers-color-scheme:dark){:root:not(.light){--color-primary: #a855f7;--color-primary-hover: #9333ea;--color-accent: #60a5fa;--color-accent-hover: #3b82f6;--color-skill-border: #4ade80;--color-text-muted: #94a3b8;--color-bg: #0f172a;--color-surface: #1e293b;--color-border: #334155;--color-terminal-bg: #1e1b2e;--color-terminal-header: #2d2d3a;--color-terminal-text: #f7f7f7;--color-terminal-return: #e7d184;--color-terminal-link: #00ffff}}:root.dark{--color-primary: #a855f7;--color-primary-hover: #9333ea;--color-accent: #60a5fa;--color-accent-hover: #3b82f6;--color-skill-border: #4ade80;--color-text-muted: #94a3b8;--color-bg: #0f172a;--color-surface: #1e293b;--color-border: #334155;--color-terminal-bg: #1e1b2e;--color-terminal-header: #2d2d3a;--color-terminal-text: #f7f7f7;--color-terminal-return: #e7d184;--color-terminal-link: #00ffff}body{margin:0;background-color:var(--color-bg);color:var(--color-text-muted);transition:background-color .2s ease,color .2s ease;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.theme-toggle{background:none;border:none;cursor:pointer;color:var(--color-primary);font-size:1.1rem;padding:4px;display:flex;align-items:center;transition:color .15s,transform .15s}.theme-toggle:hover{color:var(--color-accent);transform:rotate(15deg)}.navbar-container{display:flex;justify-content:flex-end;margin:0 auto}@media only screen and (max-width:767px){.navbar-container{justify-content:center;font-size:1em}}.navbar{display:flex;justify-content:space-around;font-family:Camphor,Open Sans,Segoe UI,sans-serif;font-size:1.2em;margin-top:40px;margin-bottom:100px;gap:50px}.navbar a{position:relative;text-decoration:none;color:var(--color-primary);font-weight:700;cursor:pointer}.navbar a:after{display:block;position:absolute;left:0;bottom:-30px;width:0;height:5px;background-color:var(--color-accent);content:"";transition:width .15s}.navbar a:hover{color:var(--color-primary-hover)}.navbar a:hover:after{width:100%}.about-section{margin:0 auto;margin-top:20vh;display:flex;flex-direction:column;justify-content:flex-end}.about-section a{font-weight:700}@media only screen and (max-width:767px){.about-section{margin-top:15vh}}.about-title{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:3.5em;color:var(--color-primary)}.about-title:before{content:"> "}@media only screen and (max-width:767px){.about-title{font-size:2.3em}}.about-description{font-family:Verdana,Geneva,Tahoma,sans-serif;font-weight:200;font-size:1.3rem;line-height:40px;color:var(--color-text-muted);margin:40px 0}@media only screen and (max-width:767px){.about-description{font-size:1.2em;line-height:30px;max-width:100%;margin:50px 0}}.terminal-container{margin:0 auto;display:flex;flex-direction:column;justify-content:flex-end}.terminal-header{height:28px;background-color:var(--color-terminal-header);border-radius:10px 10px 0 0;display:flex;justify-content:flex-start;align-items:center}.header-button{width:12px;height:12px;border-radius:50%;margin-left:9px}.red{background-color:#f96256;border:solid 1px #f65549}.yellow{background-color:#fdbc3d;border:solid 1px #ffb524}.green{background-color:#33c948;border:solid 1px #2dbb41}.terminal-window{background-color:var(--color-terminal-bg);border-radius:0 0 4px 4px;box-shadow:0 50px 100px #32325d26,0 15px 35px #32325d33,0 5px 15px #0000001f;font-family:Franklin Gothic Medium,Arial Narrow,Arial,sans-serif}.terminal-window a{color:var(--color-terminal-link)}.statement:first-child{padding-top:35px}.statement:last-child{padding-bottom:60px}.statement{margin-bottom:25px;margin-left:35px;margin-right:35px;line-height:24px}.input-statement{color:var(--color-terminal-text)}.input-statement:before{content:"> "}.return-statement{color:var(--color-terminal-return)}@keyframes caret{50%{background-color:transparent}}.projects-container{margin:0 auto}.project-card{position:relative;display:flex;flex-direction:row;justify-content:flex-end;margin-bottom:60px;background-color:var(--color-surface);border-radius:4px;box-shadow:0 50px 100px #32325d0d,0 15px 35px #32325d1a,0 5px 15px #0000001a;overflow:hidden}@media only screen and (max-width:767px){.project-card{margin-bottom:40px}}.project-content{padding:60px;width:50%;z-index:2}@media only screen and (max-width:1023px){.project-content{width:100%;padding:35px;box-sizing:border-box}}.project-content h3{font-weight:500;font-size:1.8em;line-height:38px;color:var(--color-text-muted);margin-top:0;margin-bottom:35px}.project-content p{margin-bottom:30px;line-height:27px;color:var(--color-text-muted)}.project-content a{font-weight:700}.project-links{display:flex;justify-content:flex-start;align-items:center;flex-wrap:wrap}.project-link{margin-right:20px;margin-top:20px;white-space:nowrap;display:inline-flex;align-items:center;gap:6px;line-height:40px;padding:0 14px;box-shadow:0 4px 6px #32325d1c,0 1px 3px #00000014;border-radius:15px;letter-spacing:.025em;text-decoration:none;transition:all .15s ease;font-size:.9em;font-weight:600;box-sizing:border-box;background:var(--color-primary);color:var(--color-surface)}.project-link:hover{background:var(--color-accent);transform:translateY(-1px);box-shadow:0 7px 14px #32325d1a,0 3px 6px #00000014;opacity:1}.project-link.secondary{background:var(--color-surface);color:var(--color-primary)}.project-link.secondary:hover{background:var(--color-surface);color:var(--color-accent)}.project-skills{display:flex;flex-wrap:wrap}.project-skill{border-radius:4px;border:solid 2px var(--color-skill-border);padding:8px;margin-right:10px;margin-bottom:10px;font-size:.85em;color:var(--color-text-muted)}.contact-section{text-align:center;display:flex;flex-direction:row;justify-content:center;padding:20px 0 80px}.contact-section a{text-decoration:none}.contact-link{display:flex;align-items:center;gap:8px;font-size:1.2rem;font-weight:600;color:var(--color-primary);transition:color .15s ease}.contact-link:first-child{margin-right:40px}.contact-link:hover{color:var(--color-accent);opacity:1}.footer{background-color:var(--color-surface);border-top:1px solid var(--color-border);margin-top:80px;padding:32px 40px}.footer-content{max-width:1000px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.footer-copyright{color:var(--color-text-muted);font-size:.88rem}.footer-links{display:flex;gap:24px}.footer-links a{color:var(--color-text-muted);font-size:.88rem;transition:color .15s}.footer-links a:hover{color:var(--color-primary);opacity:1}@media only screen and (max-width:767px){.footer{padding:24px 20px}.footer-content{flex-direction:column;align-items:center;text-align:center}}.back-to-top{position:fixed;bottom:32px;right:32px;width:44px;height:44px;border-radius:50%;background-color:var(--color-primary);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #6b21a859;transition:background-color .15s,transform .15s,opacity .2s;z-index:100}.back-to-top:hover{background-color:var(--color-primary-hover);transform:translateY(-2px)}@media only screen and (max-width:767px){.back-to-top{bottom:20px;right:20px}}a{text-decoration:none;color:var(--color-primary);transition:.1s ease-in-out}a:hover{opacity:.8}#topBackground{position:absolute;top:0;width:100%;height:760px;transform:skewY(-12deg);transform-origin:0;background-color:var(--color-surface);z-index:-999}@media only screen and (max-width:767px){#topBackground{height:500px}}.container-lg{max-width:1000px;margin:0 auto;padding:0 40px}@media only screen and (max-width:767px){.container-lg{padding:0 20px}}.section-title{color:var(--color-text-muted);font-weight:500;font-size:1.5em;text-align:center;padding-top:50px;margin-top:50px;margin-bottom:80px}@media only screen and (max-width:767px){.section-title{margin-bottom:40px}}section[aria-labelledby]{scroll-margin-top:40px}.section-title:after{content:"";border:2px solid var(--color-primary);display:block;margin:30px auto 0;width:50px}
