.timeline-container{position:relative!important;min-height:200px}.timeline-container:before{display:none}.timeline-line{position:absolute;left:calc(50% - 2px);top:0;bottom:0;width:4px;background:linear-gradient(to bottom,#667eea,#764ba2);z-index:0;pointer-events:none}.timeline-item{position:relative!important;margin-bottom:0!important;width:100%!important;display:block!important;text-decoration:none!important;color:inherit!important}.timeline-item-wrapper{position:relative;margin-bottom:60px}.timeline-item.left .timeline-content{margin-left:0;margin-right:calc(50% + 40px);text-align:right}.timeline-item.right .timeline-content{margin-left:calc(50% + 40px);margin-right:0;text-align:left}.timeline-content{background:#fff!important;border-radius:12px!important;box-shadow:0 4px 20px #0000001a!important;padding:0!important;position:relative!important;border:1px solid #e5e7eb!important;transition:all .3s ease!important;display:block!important;overflow:visible!important}.timeline-content:hover{box-shadow:0 8px 30px #00000026;transform:translateY(-2px)}.timeline-item.left .timeline-content:before,.timeline-item.left .timeline-content:after{content:"";position:absolute;right:0;transform:translate(100%);border-style:solid;border-color:transparent}.timeline-item.left .timeline-content:before{top:23px;border-width:16px;border-left-color:#d1d5db;z-index:1}.timeline-item.left .timeline-content:after{top:24px;border-width:15px;border-left-color:#fff;z-index:2}.timeline-item.right .timeline-content:before,.timeline-item.right .timeline-content:after{content:"";position:absolute;left:0;transform:translate(-100%);border-style:solid;border-color:transparent}.timeline-item.right .timeline-content:before{top:23px;border-width:16px;border-right-color:#d1d5db;z-index:1}.timeline-item.right .timeline-content:after{top:24px;border-width:15px;border-right-color:#fff;z-index:2}.timeline-dot{position:absolute;left:50%;transform:translate(-50%);top:20px;width:18px;height:18px;background:linear-gradient(135deg,#667eea,#764ba2);border:4px solid white;border-radius:50%;z-index:5;box-shadow:0 0 0 2px #667eea66}.timeline-date{font-weight:700;color:#667eea;font-size:1.1rem;margin-bottom:8px;font-family:Playfair Display,serif}.timeline-image{width:100%;background:#f3f4f6;overflow:hidden;border-radius:12px 12px 0 0}.timeline-image img{width:100%;height:auto;display:block;-o-object-fit:contain;object-fit:contain}.timeline-body{padding:20px 24px 24px}.timeline-event{color:#374151;line-height:1.6;font-size:.95rem}@media(max-width:768px){.timeline-container:before{left:30px}.timeline-item.left .timeline-content,.timeline-item.right .timeline-content{margin-left:60px;margin-right:0;text-align:left}.timeline-item.left .timeline-content:before,.timeline-item.left .timeline-content:after,.timeline-item.right .timeline-content:before,.timeline-item.right .timeline-content:after{left:0;right:auto;transform:translate(-100%);border-left-color:transparent}.timeline-item.left .timeline-content:before,.timeline-item.right .timeline-content:before{border-right-color:#d1d5db}.timeline-item.left .timeline-content:after,.timeline-item.right .timeline-content:after{border-right-color:#fff}.timeline-dot{left:30px}.timeline-date{font-size:1rem;margin-bottom:6px}.timeline-event{font-size:.9rem;line-height:1.5}#filter-toggle,#filter-content{padding:16px}}@media(min-width:769px)and (max-width:1024px){.timeline-content{padding:0!important}.timeline-date{font-size:1.05rem}.timeline-event{font-size:.92rem}}.timeline-item:focus{outline:2px solid #667eea;outline-offset:4px;border-radius:4px}button:focus,select:focus,input:focus{box-shadow:0 0 0 3px #667eea4d}.timeline-item{animation:fadeInUp .6s ease both}.timeline-item:nth-child(2n){animation-delay:.1s}.timeline-item:nth-child(odd){animation-delay:.2s}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}#back-to-top{backdrop-filter:blur(10px);background:#667eeae6}#back-to-top:hover{background:#667eea;transform:translateY(-2px)}.era-marker{position:relative;margin:40px 0;text-align:center;z-index:4}.era-marker .era-label{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:8px 20px;border-radius:20px;font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px;display:inline-block;box-shadow:0 2px 10px #0003}
