@import 'mapbox.css';.map-container-wrapper{margin:30px 0;width:100%;overflow:hidden;border-radius:10px;box-shadow:0 4px 15px rgba(0,0,0,8%)}.parallel-jobs-container{position:relative}.parallel-jobs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem;margin-top:.5rem}.parallel-job-item{position:relative;transition:all .3s ease}.parallel-job-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.1)}@media(max-width:768px){.parallel-jobs-grid{grid-template-columns:1fr;gap:.75rem}}@media(min-width:769px) and (max-width:1024px){.parallel-jobs-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1025px){.parallel-jobs-grid{grid-template-columns:repeat(3,1fr)}}.parallel-jobs-container::before{content:'';position:absolute;left:-1.5rem;top:2rem;bottom:-2rem;width:2px;background:linear-gradient( to bottom,#e5e7eb 0%,#3b82f6 20%,#3b82f6 80%,#e5e7eb 100% )}.dark .parallel-jobs-container::before{background:linear-gradient( to bottom,#374151 0%,#60a5fa 20%,#60a5fa 80%,#374151 100% )}.parallel-job-item::before{content:'';position:absolute;left:-1rem;top:1rem;width:.5rem;height:2px;background-color:#3b82f6;opacity:.6}.dark .parallel-job-item::before{background-color:#60a5fa}.git-timeline-container{position:relative;width:100%;max-width:1200px;margin:0 auto;padding:2rem 0}.timeline-container{position:relative;max-width:1200px;margin:0 auto;background:var(--color-background,#ffffff);border-radius:12px;padding:2rem;box-shadow:0 4px 20px rgba(0,0,0,.1)}.timeline-track{position:relative;display:flex;flex-direction:column;gap:3rem}.timeline-event{position:relative;display:grid;grid-template-columns:120px 200px 40px 1fr;gap:1rem;align-items:center;min-height:120px;padding:1rem 0}.timeline-date{font-weight:600;color:var(--color-text-secondary,#666);font-size:.9rem;text-align:right;padding-right:1rem}.timeline-branches{position:relative;height:100%;min-height:80px;display:flex;justify-content:space-around;align-items:center}.branch-line{position:absolute;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--color-primary,#3b82f6) 0%,var(--color-primary-light,#60a5fa) 100%);border-radius:2px;opacity:.7;transition:all .3s ease}.branch-line[data-branch="0"]{left:10%}.branch-line[data-branch="1"]{left:35%}.branch-line[data-branch="2"]{left:60%}.branch-line[data-branch="3"]{left:85%}.branch-line:hover{opacity:1;transform:scaleX(1.2)}.event-connector{position:absolute;top:-1.5rem;left:0;right:0;height:1.5rem;background:linear-gradient( 90deg,transparent 0%,var(--color-primary,#3b82f6) 20%,var(--color-primary,#3b82f6) 80%,transparent 100% );opacity:.3;border-radius:0 0 8px 8px}.timeline-node{position:relative;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:10;transition:all .3s ease;cursor:pointer}.timeline-node.start-node{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 0 0 4px rgba(16,185,129,.2)}.timeline-node.end-node{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 0 0 4px rgba(239,68,68,.2)}.timeline-node:hover{transform:scale(1.2);box-shadow:0 0 0 8px rgba(59,130,246,.3)}.node-inner{width:12px;height:12px;background:#fff;border-radius:50%;opacity:.9}.timeline-content{padding-left:1rem}.job-card{background:var(--color-background-alt,#f8fafc);border:2px solid transparent;border-radius:12px;padding:1.5rem;transition:all .3s ease;position:relative;overflow:hidden}.job-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;transition:all .3s ease}.job-card.start-card::before{background:linear-gradient(90deg,#10b981,#059669)}.job-card.end-card::before{background:linear-gradient(90deg,#ef4444,#dc2626)}.job-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,0,0,.15);border-color:var(--color-primary,#3b82f6)}.job-header{margin-bottom:1rem}.job-title{font-size:1.1rem;font-weight:600;color:var(--color-text,#1f2937);margin:0 0 .5rem}.job-company{font-size:1rem;font-weight:500;color:var(--color-primary,#3b82f6)}.job-dates{margin-bottom:1rem;display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--color-text-secondary,#666)}.start-indicator,.end-indicator{padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.start-indicator{background:rgba(16,185,129,.1);color:#059669;border:1px solid rgba(16,185,129,.3)}.end-indicator{background:rgba(239,68,68,.1);color:#dc2626;border:1px solid rgba(239,68,68,.3)}.job-summary{color:var(--color-text-secondary,#666);line-height:1.6;font-size:.95rem}.job-summary p{margin:0}.timeline-legend{margin-top:3rem;padding-top:2rem;border-top:2px solid var(--color-border,#e5e7eb);display:flex;justify-content:center;gap:2rem;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--color-text-secondary,#666)}.legend-node{width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center}.legend-node.start-node{background:linear-gradient(135deg,#10b981,#059669)}.legend-node.end-node{background:linear-gradient(135deg,#ef4444,#dc2626)}.legend-node .node-inner{width:8px;height:8px;background:#fff;border-radius:50%}.legend-line{width:20px;height:3px;background:linear-gradient(90deg,var(--color-primary,#3b82f6),var(--color-primary-light,#60a5fa));border-radius:2px}@media(prefers-color-scheme:dark){.timeline-container{background:var(--color-background-dark,#1f2937);box-shadow:0 4px 20px rgba(0,0,0,.3)}.job-card{background:var(--color-background-alt-dark,#374151)}.job-title{color:var(--color-text-dark,#f9fafb)}.timeline-date{color:#d1d5db}.job-dates{color:#9ca3af}.job-summary{color:#d1d5db}}@media(max-width:1024px){.timeline-event{grid-template-columns:100px 150px 30px 1fr;gap:.75rem}.timeline-container{padding:1.5rem}}@media(max-width:768px){.timeline-event{grid-template-columns:1fr;gap:1rem;text-align:center}.timeline-date{text-align:center;padding-right:0;order:1}.timeline-branches{order:2;height:60px;margin:1rem 0}.timeline-node{order:3;margin:0 auto}.timeline-content{order:4;padding-left:0}.timeline-legend{gap:1rem}}@media(max-width:480px){.timeline-container{padding:1rem}.job-card{padding:1rem}.timeline-legend{flex-direction:column;align-items:center;gap:.75rem}}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.timeline-event{animation:fadeInUp .6s ease forwards}.timeline-event:nth-child(1){animation-delay:.1s}.timeline-event:nth-child(2){animation-delay:.2s}.timeline-event:nth-child(3){animation-delay:.3s}.timeline-event:nth-child(4){animation-delay:.4s}.timeline-event:nth-child(5){animation-delay:.5s}.timeline-event:nth-child(6){animation-delay:.6s}.job-card:hover .job-title{color:var(--color-primary,#3b82f6)}.timeline-node:hover+.timeline-content .job-card{transform:translateY(-2px);box-shadow:0 8px 25px rgba(59,130,246,.2)}.dark .git-timeline-container{background:#1f2937}.dark .timeline-event{background:#374151;border-color:#4b5563}.dark .timeline-date{color:#d1d5db}.dark .timeline-node{background:#3b82f6}.dark .timeline-node.start-node{background:linear-gradient(135deg,#10b981,#059669)}.dark .timeline-node.end-node{background:linear-gradient(135deg,#ef4444,#dc2626)}.dark .branch-line{background:linear-gradient(to bottom,#60a5fa,#3b82f6)}.dark .event-connector{background:linear-gradient( 90deg,transparent 0%,#60a5fa 20%,#60a5fa 80%,transparent 100% );opacity:.5}.dark .job-card{background:#374151;border-color:#4b5563}.dark .job-title{color:#f9fafb}.dark .job-company{color:#60a5fa}.dark .job-dates{color:#9ca3af}.dark .job-summary{color:#d1d5db}:focus{outline:2px solid #3b82f6;outline-offset:2px}.job-card:focus{border-color:#3b82f6;box-shadow:0 0 0 4px rgba(59,130,246,.3)}.timeline-node:focus{box-shadow:0 0 0 4px rgba(59,130,246,.3)}.timeline-fallback{padding:2rem;background:var(--color-background-alt,#f8fafc);border-radius:12px;margin:1rem 0}.timeline-fallback h3{margin-bottom:1.5rem;color:var(--color-text,#1f2937);font-size:1.5rem}.simple-job-card{background:#fff;border:1px solid var(--color-border,#e5e7eb);border-radius:8px;padding:1.5rem;margin-bottom:1rem;box-shadow:0 2px 8px rgba(0,0,0,.1)}.simple-job-card h4{margin:0 0 .5rem;color:var(--color-primary,#3b82f6);font-size:1.1rem}.simple-job-card p{margin:.5rem 0;color:var(--color-text-secondary,#666)}.simple-job-card strong{color:var(--color-text,#1f2937)}@media(prefers-color-scheme:dark){.timeline-fallback{background:var(--color-background-alt-dark,#374151)}.simple-job-card{background:var(--color-background-dark,#1f2937);border-color:var(--color-border-dark,#4b5563)}.timeline-fallback h3{color:var(--color-text-dark,#f9fafb)}.simple-job-card p{color:var(--color-text-secondary-dark,#9ca3af)}.simple-job-card strong{color:var(--color-text-dark,#f9fafb)}}