/* Experience */ /* Experience item layout moved to _toggles.css */ .experience-header { margin-bottom: 0.6rem; } .experience-title-line { margin-bottom: 0.3em; } .position { font-size: 1rem; font-weight: 500; margin: 0; color: var(--text-dark, #1a1a1a); margin-bottom: 4px; } .position .position-title { display: inline-block; margin-right: 0.3em; } .position .company-name { display: inline-block; } .current-badge { display: inline-block; background: #27ae60; color: white; font-weight: 700; font-size: 0.7em; padding: 0.2em 0.5em; border-radius: 3px; margin-left: 0.5em; vertical-align: middle; letter-spacing: 0.5px; } .live-badge { display: inline-flex; align-items: center; gap: 0.3em; background: #27ae60; color: white; font-weight: 700; font-size: 0.7em; padding: 0.2em 0.5em; border-radius: 3px; margin-left: 0.5em; vertical-align: middle; letter-spacing: 0.5px; } .live-badge iconify-icon { font-size: 1.2em; } .expired-badge { display: inline-block; background: #e74c3c; color: white; font-weight: 700; font-size: 0.7em; padding: 0.2em 0.5em; border-radius: 3px; margin-left: 0.5em; vertical-align: middle; letter-spacing: 0.5px; } .maintained-badge { display: inline-block; background: #3498db; color: white; font-weight: 700; font-size: 0.7em; padding: 0.2em 0.5em; border-radius: 3px; margin-left: 0.5em; vertical-align: middle; letter-spacing: 0.5px; } .experience-period, .experience-separator, .experience-location, .experience-duration { color: var(--text-muted, #666666); font-weight: 600; display: inline-block; font-size: 1.05rem; } .experience-duration { font-style: italic; } .short-desc { color: var(--text-dark, #1a1a1a); font-size: 0.95rem; line-height: 1.6; margin-top: 0.5rem; } .duration-text { color: var(--text-light, #999999); font-weight: 500; } .responsibilities { list-style: none; margin-top: 1rem; padding-left: 0; } .responsibilities li { padding-left: 1.2rem; margin-bottom: 0.4rem; position: relative; font-size: 0.95rem; color: var(--text-dark, #1a1a1a); line-height: 1.5; } .responsibilities li:before { content: "•"; position: absolute; left: 0; color: var(--text-gray, #333333); } /* Responsibilities with company icons (similar to main experience layout) */ .responsibilities li:has(img), .responsibilities li:has(iconify-icon) { display: grid; grid-template-columns: 60px 1fr; gap: 1rem; padding-left: 0; margin-bottom: 1rem; align-items: start; } .responsibilities li:has(img):before, .responsibilities li:has(iconify-icon):before { display: none; } .responsibilities li img { width: 60px; height: 60px; object-fit: contain; border-radius: 4px; border: 1px solid var(--icon-border, #ddd); background: transparent; padding: 4px; } .responsibilities li iconify-icon.default-company-icon { width: 60px; height: 60px; display: flex; align-items: center; justify-content: center; border-radius: 4px; border: 1px solid var(--icon-border, #ddd); background: transparent; color: var(--text-light, #999999); padding: 8px; } /* Education */ .education-item { margin-bottom: 1rem; font-size: 0.95rem; line-height: 1.6; color: var(--text-dark, #1a1a1a); } /* Languages */ .languages-list { display: flex; flex-wrap: wrap; gap: 1.5rem; } .language-item { font-size: 0.95rem!important; color: var(--text-dark, #1a1a1a); margin-bottom: 0.3rem!important; line-height: 1.4!important; margin-left: 2rem!important; } .language-item small { display: block; font-size: 0.8em; margin-top: 0.2rem; font-style: italic; } /* Experience Items */ .experience-item { margin-bottom: 2.5rem; padding-bottom: 2rem; border-bottom: 1px solid var(--item-separator, rgba(0,0,0,0.1)); } /* Keep border on all experience items including last one */ /* Courses */ .course-item { display: flex; gap: 1.2rem; align-items: flex-start; margin-bottom: 2.5rem; padding-bottom: 2rem; border-bottom: 1px solid var(--item-separator, rgba(0,0,0,0.1)); } /* Keep border on all course items including last one */ .course-icon { flex-shrink: 0; width: 80px; height: 80px; display: flex; align-items: center; justify-content: center; } .course-icon img { width: 80px; height: 80px; object-fit: contain; border-radius: 4px; border: 1px solid var(--icon-border, #ddd); background: transparent; padding: 4px; } .default-course-icon { width: 80px; height: 80px; display: flex; align-items: center; justify-content: center; border-radius: 4px; border: 1px solid var(--icon-border, #ddd); background: transparent; color: var(--text-light, #999999); padding: 10px; } .course-content { flex: 1; } .course-header { margin-bottom: 0.5rem; } .course-title { font-size: 1em; font-weight: 600; margin: 0 0 0.3rem 0; line-height: 1.4; color: var(--text-dark, #1a1a1a); } .course-title-text { display: inline; } .course-institution { display: inline; margin-left: 0.5em; font-weight: normal; } .course-period, .course-separator, .course-location, .course-duration { color: var(--text-muted, #666666); font-size: 0.9em; } .course-separator { color: var(--text-light, #999999); } .course-desc { font-size: 0.85em; color: var(--text-gray, #333333); margin-top: 0.4rem; line-height: 1.4; text-align: justify; } /* Projects */ .project-item { display: flex; gap: 1.2rem; align-items: flex-start; margin-bottom: 2.5rem; padding-bottom: 2rem; border-bottom: 1px solid var(--item-separator, rgba(0,0,0,0.1)); } .project-icon { flex-shrink: 0; width: 80px; height: 80px; display: flex; align-items: center; justify-content: center; } .project-icon img { width: 80px; height: 80px; object-fit: contain; border-radius: 4px; border: 1px solid var(--icon-border, #ddd); background: transparent; padding: 4px; } .default-project-icon { width: 80px; height: 80px; display: flex; align-items: center; justify-content: center; border-radius: 4px; border: 1px solid var(--icon-border, #ddd); background: transparent; color: var(--text-light, #999999); padding: 10px; } .project-content { flex: 1; } .project-header { margin-bottom: 0.5rem; } .project-title { font-size: 1em; font-weight: 600; margin: 0 0 0.3rem 0; line-height: 1.4; color: var(--text-dark, #1a1a1a); } .project-title-text { display: inline; } .project-title-text a { color: var(--accent-blue, #0066cc); text-decoration: none; } .project-title-text a:hover { text-decoration: underline; } .project-period, .project-separator, .project-location { color: var(--text-muted, #666666); font-size: 0.9em; font-weight: 600; } .project-separator { color: var(--text-light, #999999); } .project-desc { font-size: 0.95rem; color: var(--text-dark, #1a1a1a); margin-top: 0.5rem; line-height: 1.6; text-align: justify; } .project-technologies { font-size: 0.85em; color: var(--text-gray, #333333); margin-top: 0.5rem; line-height: 1.4; } .projects-footer { margin-top: -1.5rem; padding-top: 0rem; text-align: center; font-size: 0.95rem; color: var(--text-gray, #333333); } .projects-footer p { margin: 0; } .projects-footer a { color: var(--accent-blue, #0066cc); text-decoration: none; } .projects-footer a:hover { text-decoration: underline; } /* References */ .reference-item { margin-bottom: 0!important; line-height: 1.4!important; margin-left: 2rem!important; font-size: 0.95rem!important; } .reference-item a { color: var(--accent-blue, #0066cc); text-decoration: none; word-break: break-word; } .reference-item a:hover { text-decoration: underline; } .ref-type { display: block; font-size: 0.8em; color: var(--text-gray, #333333); font-style: italic; margin-top: 0.2rem; } /* Footer */ footer { text-align: center; padding: 2rem; color: rgba(255,255,255,0.95); font-size: 0.85rem; font-weight: 700; text-shadow: 0 1px 4px rgba(0,0,0,0.6); } /* GitHub repository link styling */ .github-repo-link { color: rgba(255,255,255,0.95) !important; transition: color 0.2s ease-in-out; } .github-repo-link:hover { color: var(--accent-blue, #0066cc) !important; } /* CV Version Toggle Animations */ @keyframes fadeInGrow { from { opacity: 0; max-height: 0; transform: scaleY(0.8); transform-origin: top; } to { opacity: 1; max-height: 5000px; transform: scaleY(1); } } @keyframes fadeOutShrink { from { opacity: 1; max-height: 5000px; transform: scaleY(1); } to { opacity: 0; max-height: 0; transform: scaleY(0.8); transform-origin: top; } } /* Elements that appear/disappear */ .long-only, .short-desc { overflow: hidden; transition: all 0.3s ease-in-out; } /* Short CV - Hide detailed content with animation */ .cv-short .long-only { display: none; animation: fadeOutShrink 0.3s ease-in-out; } .cv-short .short-desc { display: block; animation: fadeInGrow 0.3s ease-in-out; } /* Long CV - Hide short descriptions with animation */ .cv-long .short-desc, .short-desc { display: none; animation: fadeOutShrink 0.3s ease-in-out; } .cv-long .long-only { display: block; animation: fadeInGrow 0.3s ease-in-out; } .cv-long .responsibilities { display: block; animation: fadeInGrow 0.3s ease-in-out; }