*,:after,:before{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#0f0f0f;color:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0;overflow-x:hidden}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.navbar{background-color:#111;border-bottom:1px solid #333;display:flex;flex-wrap:wrap;gap:2rem;padding:1rem clamp(1rem,6vw,7rem)}.navbar a{color:#ccc;font-weight:500;text-decoration:none;transition:color .2s}.navbar a:hover{color:#fff}@media (max-width:768px){.navbar{gap:1rem 1.5rem;justify-content:center}}.landing-container{background:#0f0f0f;color:#f5f5f5;display:flex;flex-direction:column;font-family:Segoe UI,sans-serif;justify-content:flex-start;min-height:100vh}.landing-content{display:flex;flex-direction:column;margin-bottom:5rem;min-width:0;padding-left:clamp(1rem,10vw,7rem);padding-right:clamp(1rem,10vw,7rem);text-align:left;width:100%}.about-section{align-items:center;display:flex;gap:3rem}.about-text-section{display:flex;flex-direction:column;justify-content:center}.profile-image{height:clamp(10rem,20rem,25vw);justify-self:center;object-fit:contain;width:clamp(10rem,20rem,25vw)}h1,h2{text-align:left}h1{color:#fff;font-size:3rem;margin-bottom:.5rem}h2{color:#999;font-weight:300;margin-bottom:1.5rem}.title-text{text-align:center}.mouse-divider{background:linear-gradient(90deg,#222,#444,#222);height:4px;margin:2rem 0;width:100%}.summary{color:#ccc;font-size:1.1rem;line-height:1.6;margin-bottom:2rem}h3{color:#aaa;font-size:1rem;letter-spacing:1px;margin-bottom:1rem;text-transform:uppercase}.skills-and-projects{align-items:flex-start;display:flex;flex-wrap:wrap;gap:2rem;justify-content:flex-start;margin-bottom:2rem}.skills-section{display:flex;flex:1 1 300px;flex-direction:column}.skills-group h4{color:#ccc;font-weight:600;margin-bottom:.5rem}.skills-grid{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:left;margin-bottom:1rem}.skill-wrapper{align-items:center;display:inline-flex;margin:.3rem;position:relative}.skill{background-color:#1f1f1f;border:1px solid #444;border-radius:6px;color:#f0f0f0;cursor:default;font-size:.9rem;padding:.5rem 1rem;transition:background .3s ease}.skill:hover{background-color:#2c2c2c}.subskills{display:inline-flex;gap:.4rem;margin-left:.5rem;max-width:0;opacity:0;overflow:hidden;transition:max-width .25s ease,opacity .3s ease;white-space:nowrap}.skill-wrapper:hover .subskills{max-width:1000px;opacity:1}.floating-subskills{background-color:#1a1a1a;border:1px solid #444;border-radius:6px;box-shadow:0 2px 6px #00000080;display:flex;flex-wrap:wrap;gap:.4rem;padding:.4rem;position:absolute;z-index:100}.subskill{background-color:#2c2c2c;border:1px solid #444;border-radius:4px;color:#ccc;font-size:.8rem;padding:.3rem .6rem;transition:background-color .2s ease}.projects-preview{align-items:flex-start;background-color:#0a0a0a;border:1px solid #333;border-radius:8px;box-shadow:0 2px 6px #0000004d;display:flex;flex:1 1 300px;flex-direction:column;min-width:0;padding:1.5rem}.projects-preview h4{color:#aaa;font-size:1.2rem;margin-bottom:1rem}.projects-preview .project-card{flex-direction:column;gap:1rem;margin-bottom:1.5rem}.projects-preview .project-meta{flex:0 1 auto}.projects-preview .project-details p{overflow-wrap:anywhere;word-break:break-word}.cta-button{background-color:#00d1ff;border:none;border-radius:6px;color:#000;cursor:pointer;font-size:1rem;font-weight:700;padding:.8rem 1.5rem;transition:background .2s ease}.cta-button:hover{background-color:#00bbeb}@media (max-width:768px){.landing-content{margin-bottom:2.5rem}.about-section{flex-wrap:wrap;gap:1.5rem}h1{font-size:2.2rem}.skills-and-projects{gap:1rem}.projects-preview{border-radius:6px;padding:.85rem}.projects-preview h3{margin-bottom:.75rem}.projects-preview .project-card{margin-bottom:.9rem;padding:.9rem}}.project-card{background-color:#1a1a1a;border:1px solid #2b2b2b;border-radius:10px;box-shadow:0 4px 10px #0006;box-sizing:border-box;color:#e0e0e0;display:flex;flex-direction:row;gap:2rem;padding:1.5rem;width:100%}.project-meta{display:flex;flex:0 0 40%;flex-direction:column;justify-content:flex-start}.project-meta h3{color:#f0f0f0;font-size:1.3rem;margin:0 0 1rem}.tech-list{display:flex;flex-wrap:wrap;gap:.4rem;list-style:none;margin:0;padding:0}.tech-list li{background-color:#2c2c2c;border:1px solid #444;border-radius:4px;color:#d4d4d4;font-size:.75rem;padding:.3rem .7rem;transition:background-color .2s ease}.tech-list li:hover{background-color:#3a3a3a}.project-details{display:flex;flex:1 1;flex-direction:column}.project-image{border-radius:6px;height:200px;margin-bottom:1rem;object-fit:cover;width:100%}.project-details p{color:silver;font-size:1rem;line-height:1.6;margin-bottom:1rem}.project-links{align-items:center;display:flex;flex-wrap:wrap;gap:1rem}.detail-link,.project-details a{color:#00baff;font-weight:500;text-decoration:none;transition:color .2s ease}.detail-link:hover,.project-details a:hover{color:#44d0ff}.github-link-small{font-size:.9rem;opacity:.8}@media (max-width:768px){.project-card{flex-direction:column;gap:1rem}.project-meta{flex:0 1 auto}.project-details{width:100%}.project-links{align-items:flex-start;flex-direction:column;gap:.6rem;width:100%}.project-links .detail-link,.project-links a{align-items:center;background-color:#00baff14;border:1px solid #00baff;border-radius:8px;display:inline-flex;font-size:1rem;font-weight:600;justify-content:center;min-height:44px;padding:.65rem .9rem;text-align:center;width:100%}.project-links .detail-link:hover,.project-links a:hover{background-color:#44d0ff29}.project-links .github-link-small{opacity:1}}.projects-wrapper{background-color:#0f0f0f;display:flex;justify-content:center;min-height:100vh;padding:2rem clamp(1rem,10vw,7rem);width:100%}.projects-container{background-color:#0f0f0f;display:flex;margin:0;width:min(1100px,100%)}.projects-page{box-sizing:border-box;display:flex;flex-direction:column;gap:1.5rem;width:100%}@media (max-width:768px){.projects-wrapper{padding-top:1rem}}.bold{color:#c8d7fa;font-weight:700;letter-spacing:.3px;text-shadow:0 0 4px #fff3}.project-detail-container{background:#0f0f0f;color:#f5f5f5;min-height:100vh;padding:2rem}.project-detail-content{margin:0 auto;max-width:900px;padding:2rem}.back-link{color:#00baff;display:inline-block;font-size:1rem;margin-bottom:2rem;text-decoration:none;transition:color .2s ease}.back-link:hover{color:#44d0ff}.project-detail-content h1{color:#fff;font-size:2.5rem;margin-bottom:1rem}.tech-stack{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2rem}.tech-badge{background-color:#1f1f1f;border:1px solid #444;border-radius:6px;color:#f0f0f0;font-size:.9rem;padding:.5rem 1rem;transition:background-color .2s ease}.tech-badge:hover{background-color:#2c2c2c}.project-images{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin:2rem 0}.project-images img{border:1px solid #333;border-radius:8px;box-shadow:0 4px 10px #0006;width:100%}.project-image-block{display:flex;flex-direction:column;gap:.75rem}.project-image-block p{color:#aaa;font-size:.95rem;line-height:1.5;margin:0}.project-section{margin-bottom:2rem}.project-section h2{border-bottom:2px solid #333;color:#fff;font-size:1.5rem;margin-bottom:1rem;padding-bottom:.5rem}.project-section h3{color:#e8e8e8;font-size:1.15rem;margin:1.5rem 0 .75rem}.project-section ol{margin-bottom:1rem;padding-left:1.5rem}.project-section ol li{color:#ccc;font-size:1rem;line-height:1.7;margin-bottom:.5rem}.project-section code{background:#1a1a1a;border-radius:4px;color:#a8d4ff;font-family:ui-monospace,Consolas,monospace;font-size:.95em;padding:.1em .35em}.project-section p{color:#ccc;font-size:1.1rem;line-height:1.7;margin-bottom:1rem}.project-section ul{list-style:none;padding-left:0}.project-section ul li{color:#ccc;font-size:1rem;line-height:1.7;margin-bottom:.7rem;padding-left:1.5rem;position:relative}.project-section ul li:before{color:#00baff;content:"▹";font-size:1.2rem;left:0;position:absolute}.project-links{margin-top:3rem;text-align:center}.github-button{background-color:#00d1ff;border:none;border-radius:6px;color:#000;display:inline-block;font-size:1.1rem;font-weight:700;padding:1rem 2rem;text-decoration:none;transition:background .2s ease}.github-button:hover{background-color:#00bbeb}@media (max-width:768px){.project-detail-content h1{font-size:2rem}.project-section h2{font-size:1.3rem}.project-images{grid-template-columns:1fr}}.resume-page{background:#0f0f0f;color:#f5f5f5;min-height:100vh;padding:2rem 1rem}.resume-page-content{margin:0 auto;width:min(960px,100%)}.resume-header{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.resume-header h1{font-size:2rem;margin:0}.resume-download{border:1px solid #00baff;border-radius:8px;color:#00baff;font-weight:600;padding:.6rem .9rem;text-decoration:none}.resume-download:hover{background:#00baff1f}.resume-viewer{background:#141414;border:1px solid #2f2f2f;border-radius:10px;padding:1rem}.resume-status{color:#cfcfcf;margin:.75rem 0 0}.resume-status.error{color:#ff8a8a}.resume-status a{color:#78d9ff}.resume-frame{background:#fff;border:0;border-radius:6px;min-height:78vh;width:100%}@media (max-width:768px){.resume-page{padding:1rem .75rem}.resume-header{align-items:flex-start;flex-direction:column}.resume-download{text-align:center;width:100%}.resume-viewer{padding:.75rem}.resume-frame{min-height:70vh}}.contact-page{background:#0f0f0f;color:#f5f5f5;min-height:100vh;padding:2rem 1rem}.contact-card{background:#141414;border:1px solid #2f2f2f;border-radius:10px;margin:0 auto;padding:1.5rem;width:min(760px,100%)}.contact-card h1{font-size:2rem;margin:0}.contact-subtitle{color:#bcbcbc;margin-top:.7rem}.contact-status-banner{border:1px solid #0000;border-radius:8px;font-weight:600;margin-top:.8rem;padding:.75rem .9rem}.contact-status-banner.sending{background:#00baff1f;border-color:#00baff59;color:#9ddfff}.contact-status-banner.success{background:#70e3a41a;border-color:#70e3a44d;color:#70e3a4}.contact-status-banner.error{background:#ff96961a;border-color:#ff96964d;color:#ff9696}.contact-form{display:flex;flex-direction:column;gap:.6rem;margin-top:1.2rem}.contact-form label{font-weight:600}.contact-form input,.contact-form textarea{background:#0e0e0e;border:1px solid #3b3b3b;border-radius:8px;box-sizing:border-box;color:#ededed;font-size:1rem;padding:.7rem .85rem;width:100%}.contact-form textarea{resize:vertical}.contact-form input:focus,.contact-form textarea:focus{border-color:#00baff;box-shadow:0 0 0 2px #00baff33;outline:none}.contact-actions{display:flex;gap:.75rem;margin-top:.7rem}.contact-actions button{border:1px solid #0000;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;min-height:44px;padding:.65rem 1rem}.contact-actions button:disabled{cursor:not-allowed;opacity:.6}.primary-btn{background:#00baff;color:#081016}.primary-btn:hover{background:#44d0ff}.secondary-btn{background:#0000;border-color:#4a4a4a;color:#d8d8d8}.secondary-btn:hover{border-color:#7a7a7a}.contact-status{font-weight:600;margin:.5rem 0 0}.contact-status.success{color:#70e3a4}.contact-status.error{color:#ff9696}@media (max-width:768px){.contact-page{padding:1rem .75rem}.contact-card{padding:1rem}.contact-actions{flex-direction:column}.contact-actions button{width:100%}}
/*# sourceMappingURL=main.78f4b100.css.map*/