:root{--bg-color:#f4f4f5;--text-color:#18181b;--card-bg:#fff;--border-color:#d4d4d8;--primary-color:#4f39fa;--title-gradient:linear-gradient(to right, #4f39fa, #da62c4);--secondary-color:#da62c4;--sidebar-width:280px}.dark{--bg-color:#13151a;--text-color:#fff;--card-bg:#1e2129;--border-color:#2d2d2d}html,body{min-height:100vh;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-color);font-family:system-ui,-apple-system,sans-serif;line-height:1.6;transition:background-color .3s,color .3s;display:flex}.sidebar{width:var(--sidebar-width);background-color:var(--card-bg);border-right:1px solid var(--border-color);box-sizing:border-box;z-index:1000;height:100vh;padding:2rem 1.5rem;position:fixed;top:0;left:0;overflow-y:auto}.sidebar-header{margin-bottom:2.5rem}.nav-logo{background:var(--title-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:1.5rem;font-weight:800;text-decoration:none}.tree-menu{margin:0;padding:0;list-style:none}.category-title{text-transform:uppercase;color:var(--text-color);opacity:.5;letter-spacing:1px;margin-top:2rem;margin-bottom:.5rem;padding-left:.5rem;font-size:.8rem;font-weight:700}.sub-menu{border-left:2px solid var(--border-color);margin:0 0 0 .8rem;padding:0;list-style:none}.link-item{color:var(--text-color);opacity:.85;border-radius:6px;margin-bottom:.2rem;padding:.6rem 1rem;font-size:.95rem;text-decoration:none;transition:all .2s;display:block}.link-item:hover{opacity:1;color:var(--primary-color);background-color:#4f39fa1a;transform:translate(5px)}.main-content{margin-left:var(--sidebar-width);width:calc(100% - var(--sidebar-width));min-height:100vh}main{max-width:900px;margin:0 auto;padding:3rem 2rem}@media (width<=768px){body{flex-direction:column}.sidebar{border-right:none;border-bottom:1px solid var(--border-color);width:100%;height:auto;padding:1.5rem;position:relative}.main-content{width:100%;margin-left:0}}h1{background:var(--title-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-top:0;font-size:3rem;font-weight:700}h2{color:var(--secondary-color);border-bottom:2px solid var(--border-color);margin-top:2rem;padding-bottom:.5rem}a{color:var(--primary-color);font-weight:700;text-decoration:none}ul:not(.tree-menu):not(.sub-menu){background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:1.5rem 2.5rem}.profile-pic{object-fit:cover;border:3px solid var(--secondary-color);border-radius:50%;width:150px;height:150px;margin:0 auto 2rem;display:block}.cv-preview-container{border:1px solid var(--border-color);border-radius:8px;width:100%;max-width:800px;margin:0 auto 2rem;position:relative;overflow:hidden;box-shadow:0 4px 15px #0003}.theme-btn{background:var(--card-bg);border:1px solid var(--border-color);cursor:pointer;z-index:2000;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;font-size:1.2rem;transition:transform .2s;display:flex;position:fixed;bottom:2rem;right:2rem;box-shadow:0 4px 15px #0000001a}.theme-btn:hover{transform:scale(1.1)}.icon-sun{display:none}.icon-moon,.dark .icon-sun{display:block}.dark .icon-moon{display:none}.project-tags{flex-wrap:wrap;gap:.5rem;margin-bottom:2rem;display:flex}.tag{color:var(--secondary-color);border:1px solid var(--secondary-color);background:#da62c41a;border-radius:20px;padding:.4rem 1rem;font-size:.85rem;font-weight:700}.tag.tech{color:var(--primary-color);border-color:var(--primary-color);background:#4f39fa1a}.links-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;display:grid}.project-link{background:var(--card-bg);border:1px solid var(--border-color);text-align:center;color:var(--text-color);border-radius:8px;padding:1.5rem;font-weight:700;text-decoration:none;transition:all .2s;display:block}.project-link:hover{border-color:var(--primary-color);color:var(--primary-color);transform:translateY(-3px);box-shadow:0 4px 12px #0000001a}.cv-preview-container{border:1px solid var(--border-color);border-radius:8px;width:100%;max-width:800px;margin:0 auto 2rem;overflow:hidden;box-shadow:0 4px 15px #0003}.cv-image{width:100%;height:auto;display:block}.dark .cv-image{filter:brightness(.85);transition:filter .3s}.dark .cv-preview-container:hover .cv-image{filter:brightness()}.btn-download{background:var(--primary-color);border-radius:5px;padding:10px 20px;font-weight:700;text-decoration:none;display:inline-block;color:#fff!important}.btn-download:hover{opacity:.9}
