@keyframes highlightpulse{0%,99%{background-color:#f6f8fa}50%{background-color:#fff3cd}}.repo-link{color:inherit;text-decoration:none}.repo-link:hover{text-decoration:underline}.meta-badge{display:inline-flex;align-items:stretch;border-radius:6px;overflow:hidden;font-size:.85em;font-weight:600;box-shadow:0 1px 3px rgba(0,0,0,.12);margin-right:8px;vertical-align:middle}.meta-badge-label{background:#555}.meta-badge-label,.meta-badge-value{padding:4px 10px;display:flex;align-items:center;color:#fff}.meta-badge-repo .meta-badge-value{background:var(--accent)}.meta-badge-date .meta-badge-value{background:#2da44e}body.theme-dark .meta-badge-label{background:#333}:root{--accent:#667eea;--accent-hover:#5568d3;--color-feat:#2da44e;--bg-feat:#e6f7ea;--color-fix:#cf222e;--bg-fix:#ffe6e9;--color-docs:#0969da;--bg-docs:#e6f2ff;--color-style:#8e24aa;--bg-style:#f3e5f5;--color-refactor:#00acc1;--bg-refactor:#e0f7fa;--color-test:#7cb342;--bg-test:#f1f8e9;--color-perf:#fbc02d;--bg-perf:#fffde7;--color-ops:#546e7a;--bg-ops:#eceff1;--color-chore:#fb8500;--bg-chore:#fff4e6;--color-other:#656d76;--bg-other:#f0f0f0;--bg-surface:#fff;--bg-surface-2:#f6f8fa;--border-color:#e1e4e8;--text-primary:#24292e;--text-secondary:#57606a;--text-muted:#666}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background:linear-gradient(135deg,#fff 0,#ddd 100%);min-height:100vh;padding:20px}.container{max-width:1200px;margin:0 auto;background-color:#fff;padding:40px;border-radius:12px;box-shadow:0 8px 32px rgba(0,0,0,.2)}h1{color:#24292e;margin-bottom:10px;font-size:1.8em}.header-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:3px solid var(--accent)}.metadata{color:#666;font-size:.9em}.summary{display:flex;flex-direction:column;gap:16px;margin-bottom:30px}.summary-top{display:flex;flex-wrap:nowrap;gap:16px;align-items:stretch}.summary-top .commit-calendar-widget{flex:0 0 280px;width:280px;max-width:100%}.summary-top .summary-card.total{flex:0 0 240px;width:240px;height:fit-content}.summary-right-column{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:8px}.summary-top-main{display:flex;gap:12px;align-items:flex-start}#summary-view-controls-slot{display:contents}.summary-right-column .view-controls{margin:0}.summary-right-column .release-selector{margin-left:0}.summary-body{display:flex;flex-direction:row;gap:16px;align-items:stretch}.summary-body .commit-timeline{flex:1 1 auto;min-width:0;width:100%}.summary-categories{flex:1 1 auto;min-width:0;display:flex;flex-wrap:wrap;gap:10px;align-content:flex-start}.commit-calendar-widget,.summary-controls{border:1px solid #e1e4e8;border-radius:8px;background:#fff;padding:6px}.commit-calendar-widget{padding:8px}.commit-calendar-header{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:6px}.commit-calendar-title{font-size:.86em;text-transform:uppercase;letter-spacing:.4px;color:#57606a;margin:0}.commit-calendar-subtitle{font-size:.72em;color:#6b7280;margin:0}.commit-calendar-months{display:block}.commit-calendar-month{border:1px solid #e1e4e8;border-radius:6px;padding:6px;background:#f8fafc}.commit-calendar-month-title{margin:0;font-size:.82em;color:#334155;text-align:center}.commit-calendar-toolbar{display:grid;grid-template-columns:28px 1fr 28px;align-items:center;gap:6px;margin-bottom:6px}.commit-calendar-nav{height:26px;border:1px solid #d0d7de;background:#fff;border-radius:5px;cursor:pointer;color:#334155;font-weight:700;font-size:.8em}.commit-calendar-nav:hover:not(:disabled){background:#f3f4f6}.commit-calendar-nav:disabled{opacity:.45;cursor:not-allowed}.commit-calendar-grid,.commit-calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.commit-calendar-weekdays{margin-bottom:2px}.commit-calendar-weekdays span{text-align:center;font-size:.62em;color:#64748b;text-transform:uppercase}.commit-calendar-grid{gap:3px}.commit-calendar-day{min-height:34px;border:1px solid #dbe3ec;border-radius:5px;padding:2px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;font-family:inherit}.commit-calendar-day.empty{border:0;background:0 0}.calendar-day-number{font-size:.64em;color:#667085;line-height:1}.calendar-day-icon{font-size:.78em;line-height:1}.calendar-day-count{font-size:.64em;font-weight:700;color:#1f2937;line-height:1}.commit-calendar-day.has-commits{box-shadow:inset 0 0 0 1px rgba(255,255,255,.4);cursor:pointer}.commit-calendar-day.has-commits:hover{transform:translateY(-1px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.5),0 2px 5px rgba(15,23,42,.15)}.commit-calendar-day.selected{box-shadow:0 0 0 2px #111827,inset 0 0 0 1px rgba(255,255,255,.6)}.commit-calendar-day.today{outline:2px solid #22c55e;outline-offset:-2px}.commit-calendar-day.today .calendar-day-number{color:#16a34a;font-weight:700}.commit-calendar-day.today:not(.has-commits){background:#f0fdf4}.commit-calendar-actions{margin-top:6px;display:flex;justify-content:flex-end}.commit-calendar-clear{border:1px solid #d0d7de;background:#fff;border-radius:5px;padding:4px 8px;cursor:pointer;font-size:.74em;color:#334155}.commit-calendar-clear:hover{background:#f3f4f6}.commit-item.author-filter-hidden,.commit-item.day-filter-hidden{display:none!important}.commit-calendar-day.type-feat{background:#e6f7ea;border-color:#2da44e}.commit-calendar-day.type-fix{background:#ffe6e9;border-color:#cf222e}.commit-calendar-day.type-docs{background:#e6f2ff;border-color:#0969da}.commit-calendar-day.type-style{background:#f3e5f5;border-color:#8e24aa}.commit-calendar-day.type-refactor{background:#e0f7fa;border-color:#00acc1}.commit-calendar-day.type-test{background:#f1f8e9;border-color:#7cb342}.commit-calendar-day.type-perf{background:#fffde7;border-color:#fbc02d}.commit-calendar-day.type-ops{background:#eceff1;border-color:#546e7a}.commit-calendar-day.type-chore{background:#fff4e6;border-color:#fb8500}.commit-calendar-day.type-other{background:#f0f0f0;border-color:#656d76}.summary-card{background:#fff;border-radius:6px;text-align:left;transition:all .2s ease;cursor:pointer;border:1px solid #e1e4e8}.summary-card:hover{box-shadow:0 3px 8px rgba(0,0,0,.12);border-color:#d0d7de}.summary-card.active{box-shadow:0 4px 12px rgba(0,0,0,.2);transform:translateY(-2px)}.summary-card.total{border:1px solid #d0d7de;padding:6px 8px 8px;display:flex;flex-direction:column;align-items:stretch;gap:6px}.summary-card.total.active{background:#fff;border-color:#9ca8b8}.summary-card.total .icon{font-size:1.8em;opacity:.7;flex-shrink:0}.summary-total-row{display:flex;align-items:center;gap:6px}.summary-numbers{display:flex;flex-direction:column;gap:2px;flex:1}.summary-main,.summary-sub{display:flex;align-items:center;gap:8px}.summary-sub{gap:4px;padding-left:4px;margin-top:-2px}.summary-card.total .number{font-size:2em;font-weight:700;margin:0;color:#24292f;line-height:1;flex-shrink:0}.summary-card.total .label{font-size:.85em;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#57606a}.summary-card.total .icon-tag{font-size:.9em;opacity:.7}.summary-card.total .number-small{font-size:1em;font-weight:600;color:#2c5282;line-height:1}.summary-card.total .label-small{font-size:.7em;font-weight:500;text-transform:uppercase;letter-spacing:.3px;color:#718096}.summary-sparkline{width:100%}.sparkline-label{font-size:.65em;color:#718096;margin-bottom:2px;text-align:left}.summary-sparkline svg{width:100%;height:36px;display:block}.sparkline-line{fill:none;stroke:#5da2f093;stroke-width:.5px;stroke-linecap:round;stroke-linejoin:round}.sparkline-area{fill:rgba(134,139,212,.103)}.sparkline-dot{fill:#5da2f0;stroke:#fff;stroke-width:.5}.summary-card:not(.total){padding:5px;display:flex;align-items:center;gap:12px;position:relative}.summary-card:not(.total)::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;border-radius:6px 0 0 6px}.summary-card:not(.total).active::before{width:5px}.summary-card.feat::before{background:#2da44e}.summary-card.fix::before{background:#cf222e}.summary-card.docs::before{background:#0969da}.summary-card.style::before{background:#8e24aa}.summary-card.refactor::before{background:#00acc1}.summary-card.test::before{background:#7cb342}.summary-card.perf::before{background:#fbc02d}.summary-card.ops::before{background:#546e7a}.summary-card.chore::before{background:#fb8500}.summary-card.other::before{background:#656d76}.summary-card.tags::before{background:#2c5282}.summary-card.feat.active{background:#e6f7ea;border-color:#2da44e}.summary-card.fix.active{background:#ffe6e9;border-color:#cf222e}.summary-card.docs.active{background:#e6f2ff;border-color:#0969da}.summary-card.style.active{background:#f3e5f5;border-color:#8e24aa}.summary-card.refactor.active{background:#e0f7fa;border-color:#00acc1}.summary-card.test.active{background:#f1f8e9;border-color:#7cb342}.summary-card.perf.active{background:#fffde7;border-color:#fbc02d}.summary-card.ops.active{background:#eceff1;border-color:#546e7a}.summary-card.chore.active{background:#fff4e6;border-color:#fb8500}.summary-card.other.active{background:#f0f0f0;border-color:#656d76}.summary-card.tags.active{background:#e6f2ff;border-color:#2c5282}.summary-card:not(.total) .icon{font-size:1.4em;opacity:.8;flex-shrink:0}.summary-card:not(.total) .number{font-size:1.6em;font-weight:600;margin:0;line-height:1;flex-shrink:0}.summary-card.feat .number{color:#2da44e}.summary-card.fix .number{color:#cf222e}.summary-card.docs .number{color:#0969da}.summary-card.style .number{color:#8e24aa}.summary-card.refactor .number{color:#00acc1}.summary-card.test .number{color:#7cb342}.summary-card.perf .number{color:#fbc02d}.summary-card.ops .number{color:#546e7a}.summary-card.chore .number{color:#fb8500}.summary-card.other .number{color:#656d76}.summary-card.tags .number{color:#2c5282}.summary-card:not(.total) .label{font-size:.72em;font-weight:500;text-transform:uppercase;letter-spacing:.5px;color:#57606a}.commit-timeline{background:#fff;border:1px solid #e1e4e8;border-radius:6px;padding:2px 5px;position:relative;min-height:120px;display:flex;flex-direction:column}.timeline-label{font-size:.7em;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#57606a}.timeline-interval-legend{font-size:.7em;font-weight:500;text-transform:none;color:#8b949e;margin-left:6px}.timeline-track-container{overflow:auto hidden;padding-left:10px;padding-right:10px;min-height:40px;display:flex;align-items:center}.timeline-track-container::-webkit-scrollbar{height:6px}.timeline-track-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.timeline-track-container::-webkit-scrollbar-thumb{background:#c1c8d0;border-radius:3px}.timeline-track-container::-webkit-scrollbar-thumb:hover{background:#a8b0ba}.timeline-track{position:relative;height:24px;background:linear-gradient(90deg,#e1e4e8 0,#747575 100%);border-radius:3px;width:100%;flex-shrink:0;transition:width .3s ease;display:flex;align-items:center}.timeline-track.zoom-1{width:100%}.timeline-track.zoom-1-5{width:150%}.timeline-track.zoom-2{width:200%}.timeline-track.zoom-2-5{width:250%}.timeline-track.zoom-3{width:300%}.timeline-track.zoom-3-5{width:350%}.timeline-track.zoom-4{width:400%}.timeline-track.zoom-4-5{width:450%}.timeline-track.zoom-5{width:500%}.timeline-track.zoom-5-5{width:550%}.timeline-track.zoom-6{width:600%}.timeline-track.zoom-6-5{width:650%}.timeline-track.zoom-7{width:700%}.timeline-track.zoom-7-5{width:750%}.timeline-track.zoom-8{width:800%}.timeline-track.zoom-8-5{width:850%}.timeline-track.zoom-9{width:900%}.timeline-track.zoom-9-5{width:950%}.timeline-track.zoom-10{width:1000%}.hidden{display:none!important}.visible{display:block!important}.opaque-0{opacity:0!important}.opaque-1{opacity:1!important}.timeline-graduations{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.timeline-graduation{position:absolute;transform:translateX(-50%);top:0;bottom:0;display:flex;align-items:flex-start;justify-content:center;height:100%}.graduation-tick{width:2px;height:10px;background:#666;position:relative;top:0}.graduation-label{display:none}.timeline-commit,.timeline-tag{position:absolute;top:50%;cursor:pointer;transition:all .2s ease}.timeline-commit{transform:translate(-50%,-50%);width:16px;height:16px;border-radius:50%;border:2px solid #fff;box-shadow:0 2px 4px rgba(0,0,0,.25);z-index:5}.timeline-commit.visible{width:20px;height:20px;border:3px solid #fff;z-index:40;box-shadow:0 2px 6px rgba(0,0,0,.35)}.timeline-commit:hover{transform:translate(-50%,-50%) scale(1.5);z-index:20;box-shadow:0 4px 12px rgba(0,0,0,.5)}.timeline-commit.type-feat{background:#2da44e}.timeline-commit.type-fix{background:#cf222e}.timeline-commit.type-docs{background:#0969da}.timeline-commit.type-style{background:#8e24aa}.timeline-commit.type-refactor{background:#00acc1}.timeline-commit.type-test{background:#7cb342}.timeline-commit.type-perf{background:#fbc02d}.timeline-commit.type-ops{background:#546e7a}.timeline-commit.type-chore{background:#fb8500}.timeline-commit.type-other{background:#656d76}.timeline-commit.active{transform:translate(-50%,-50%) scale(1.4);box-shadow:0 0 0 4px rgba(102,126,234,.5),0 4px 12px rgba(0,0,0,.5);z-index:15}.timeline-tag{transform:translate(-50%,-50%) rotate(45deg);width:15px;height:15px;background:#2c5282;border:1px solid #fff;box-shadow:0 2px 6px rgba(44,82,130,.4);z-index:45}.timeline-tag::before{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(-45deg);font-size:9px}.timeline-tag.visible{width:18px;height:18px;border:2px solid #fff;z-index:50;box-shadow:0 2px 7px rgba(44,82,130,.42)}.timeline-tag:hover{transform:translate(-50%,-50%) rotate(45deg) scale(1.5);z-index:60;box-shadow:0 4px 14px rgba(44,82,130,.6);background:#3182ce}.timeline-tag.active{transform:translate(-50%,-50%) rotate(45deg) scale(1.4);box-shadow:0 0 0 4px rgba(49,130,206,.3),0 4px 14px rgba(44,82,130,.6);background:#3182ce;z-index:65}.timeline-dates{display:flex;justify-content:space-between;font-size:.7em;color:#57606a;margin-top:6px}.timeline-zoom{display:flex;align-items:center;margin-top:2px;padding-top:12px;border-top:1px solid #e1e4e8}.timeline-zoom-label{font-size:.65em;color:#57606a;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.timeline-zoom-slider{flex:1;height:5px;margin-left:10px;-webkit-appearance:none;appearance:none;background:#e1e4e8;border-radius:2px;outline:0}.timeline-zoom-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;background:var(--accent);border-radius:50%;cursor:pointer;transition:all .2s ease;padding-left:10px}.timeline-zoom-slider::-webkit-slider-thumb:hover{background:var(--accent-hover);transform:scale(1.2)}.timeline-zoom-slider::-moz-range-thumb{width:14px;height:14px;padding-left:10px;background:var(--accent);border-radius:50%;border:0;cursor:pointer;transition:all .2s ease}.timeline-zoom-slider::-moz-range-thumb:hover{background:var(--accent-hover);transform:scale(1.2)}.timeline-zoom-value{font-size:.65em;color:var(--accent);font-weight:600;min-width:30px;text-align:right}.commit-item.highlight{animation:highlightpulse 1.5s ease-in-out;border-left-width:6px}.footer{text-align:center;padding:30px 0;margin-top:40px;border-top:1px solid #e1e4e8}.download-link{display:inline-flex;align-items:center;gap:7px;padding:10px 20px;background:var(--accent);color:#fff;text-decoration:none;border-radius:6px;transition:all .2s ease;font-weight:500;font-size:.9em}.download-link:hover{color:#fff;background:var(--accent-hover);box-shadow:0 4px 12px rgba(102,126,234,.3);transform:translateY(-2px)}.type-section{margin-bottom:40px}.type-header,.type-icon{display:flex;align-items:center}.type-header{margin-bottom:15px;padding-bottom:10px;border-bottom:2px solid #e1e4e8}.type-icon{width:40px;height:40px;border-radius:50%;justify-content:center;margin-right:15px;font-size:1.2em;font-weight:700;color:#fff}.type-icon.feat{background:linear-gradient(135deg,#4caf50,#45a049)}.type-icon.fix{background:linear-gradient(135deg,#f44336,#d32f2f)}.type-icon.docs{background:linear-gradient(135deg,#2196f3,#1976d2)}.type-icon.chore{background:linear-gradient(135deg,#ff9800,#f57c00)}.type-icon.other{background:linear-gradient(135deg,#9e9e9e,#757575)}.type-title{font-size:1.5em;color:#24292e;text-transform:capitalize}.type-count{margin-left:10px;color:#666;font-size:.9em}.commit-list{list-style:none}.commit-item{padding:15px;margin-bottom:10px;background-color:#f6f8fa;border-left:4px solid var(--accent);border-radius:4px;transition:all .2s;cursor:pointer}.commit-item.commit-renovate{border-left-color:#f39c12;background-color:#fff8e6}.commit-item:hover{background-color:#e8eaf0;box-shadow:0 2px 10px rgba(0,0,0,.1)}.commit-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:10px}.commit-header-left{display:flex;align-items:center;gap:10px}.commit-tag,.commit-type{display:inline-flex;align-items:center;font-size:.75em;font-weight:600}.commit-type{padding:3px 8px;border-radius:999px;text-transform:capitalize;color:#fff}.commit-type.type-feat{background:linear-gradient(135deg,#4caf50,#45a049)}.commit-type.type-fix{background:linear-gradient(135deg,#f44336,#d32f2f)}.commit-type.type-docs{background:linear-gradient(135deg,#2196f3,#1976d2)}.commit-type.type-style{background:linear-gradient(135deg,#9c27b0,#7b1fa2)}.commit-type.type-refactor{background:linear-gradient(135deg,#00bcd4,#0097a7)}.commit-type.type-test{background:linear-gradient(135deg,#8bc34a,#689f38)}.commit-type.type-perf{background:linear-gradient(135deg,#ffeb3b,#f9a825);color:#333}.commit-type.type-ops{background:linear-gradient(135deg,#607d8b,#455a64)}.commit-type.type-chore{background:linear-gradient(135deg,#ff9800,#f57c00)}.commit-type.type-other{background:linear-gradient(135deg,#9e9e9e,#757575)}.commit-tag{gap:4px;padding:4px 9px;border-radius:3px;background:#edf2f7;color:#2d3748;border:1px solid #cbd5e0}.commit-tag::before{content:"🏷";font-size:.95em;opacity:.8}.commit-item.has-tag{position:relative}.commit-item.has-tag::before{content:"";position:absolute;top:8px;left:-12px;width:0;height:0;border-style:solid;border-width:10px 10px 10px 0;border-color:transparent #2c5282 transparent transparent;filter:drop-shadow(-3px 2px 4px rgba(44,82,130,.5))}.commit-hash{font-family:"Courier New",monospace;background-color:#e1e4e8;padding:3px 8px;border-radius:3px;font-size:.85em;color:#0366d6;text-decoration:none;transition:all .2s}.commit-hash:hover{background-color:#0366d6;color:#fff}.commit-date{color:#666;font-size:.85em}.commit-summary{color:#24292e;font-size:.95em;margin:8px 0;font-weight:600}.commit-message{color:#24292e;font-size:.95em;line-height:1.6;margin:10px 0;white-space:pre-wrap}.commit-files{margin:8px 0 10px;padding:10px;border:1px solid #e1e4e8;border-radius:6px;background:#f8fafc}.commit-files-title{font-size:.82em;font-weight:700;color:#334155;margin-bottom:6px;text-transform:uppercase;letter-spacing:.3px}.commit-files-list{margin:0;padding-left:18px;max-height:180px;overflow-y:auto}.commit-file-item{margin:2px 0;font-size:.86em;color:#1f2937;line-height:1.35;overflow-wrap:anywhere;display:flex;align-items:baseline;justify-content:space-between;gap:12px}.commit-file-path{font-family:"Courier New",monospace;flex:1 1 auto;min-width:0}.commit-file-stats,.file-stat{display:inline-flex;align-items:center}.commit-file-stats{gap:6px;white-space:nowrap}.file-stat{border:1px solid #d0d7de;border-radius:999px;padding:1px 7px;font-size:.86em;font-weight:600;background:#fff}.file-stat.additions{color:#1a7f37;border-color:#9ad0aa;background:#f0fff4}.file-stat.deletions{color:#cf222e;border-color:#f2b3ba;background:#fff5f5}.file-stat.lines{color:#0969da;border-color:#b6d4fe;background:#f0f7ff}.commit-body{transition:max-height .3s ease,opacity .2s ease;overflow:hidden}.commit-body.collapsed{max-height:0;opacity:0;padding-top:0}.commit-body.expanded{max-height:none;opacity:1;padding-top:4px}.commit-footer{display:flex;justify-content:space-between;align-items:center;margin-top:10px;padding-top:10px;border-top:1px solid #e1e4e8;font-size:.85em;color:#666}.commit-author{font-style:italic}.commit-stats,.stat{display:flex;gap:15px}.stat{align-items:center;gap:5px}.stat.additions{color:#28a745}.stat.deletions{color:#d73a49}.loading{text-align:center;padding:60px;color:#666;font-size:1.2em}.error{background-color:#fff5f5;border:2px solid #fc8181;color:#c53030;padding:20px;border-radius:8px;margin:20px 0}.empty-section{text-align:center;padding:30px;color:#666;font-style:italic;background-color:#f6f8fa;border-radius:4px}.view-controls{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin:20px 0;padding:5px 10px;background:#f6f8fa;border-radius:6px;border:1px solid #e1e4e8}.mode-buttons{display:flex;gap:10px;margin-right:auto}.mode-btn,.release-selector select{border:2px solid #e1e4e8;border-radius:6px;background:#fff;color:#24292e;cursor:pointer}.mode-btn{padding:8px 16px;font-size:.95em;font-weight:600;transition:all .2s ease;display:flex;align-items:center;gap:6px}.mode-btn:hover{border-color:var(--accent);background:#f0f5ff;transform:translateY(-1px)}.mode-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 4px 12px rgba(102,126,234,.3)}.release-badge{display:inline-flex;align-items:center;justify-content:center;color:#fff;border-radius:50%;width:22px;height:22px;font-size:.75em;font-weight:700;margin-left:4px}.release-badge.badge-hidden{display:none}.release-badge.incoming{background:#ff6b6b}.release-badge.real{background:#51cf66}.mode-btn.active .release-badge.incoming{background:#ff8787}.mode-btn.active .release-badge.real{background:#69db7c}.release-selector{display:flex;align-items:center;gap:8px;margin-left:0;flex-basis:100%}.release-selector label{font-weight:600;color:#24292e;font-size:.9em;white-space:nowrap}.release-selector select{padding:7px 10px;font-size:.9em;transition:border-color .2s ease;min-width:180px}.release-selector select:hover{border-color:var(--accent)}.author-filter select:focus,.release-selector select:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px rgba(102,126,234,.1)}.release-selector select option{padding:8px 12px}.release-selector select option.option-incoming{color:#fa2a2a}.release-selector select option.option-real{color:#1bc938}.release-section{margin-bottom:40px;background:#fff;border:1px solid #e1e4e8;border-radius:8px;overflow:hidden;transition:all .2s ease;cursor:pointer}.release-section:hover{box-shadow:0 4px 12px rgba(0,0,0,.1)}.release-section.virtual-release{border:2px solid #ff9800;background:linear-gradient(135deg,#fff9f0 0,#ffe0b2 100%)}.release-section.virtual-release .release-header{background:linear-gradient(135deg,#ff9800 0,#f57c00 100%)}.release-section.virtual-release:hover{box-shadow:0 4px 16px rgba(255,152,0,.3)}.release-header{background:linear-gradient(135deg,var(--accent) 0%,#764ba2 100%);color:#fff;padding:20px;border-bottom:1px solid #e1e4e8}.release-title{margin:0 0 10px;font-size:1.8em;font-weight:700;display:flex;align-items:center;gap:10px}.release-meta{display:flex;gap:20px;font-size:.95em;opacity:.95}.release-commit-count,.release-date-range{display:flex;align-items:center;gap:6px}.release-summary{padding:15px 20px;background:#f6f8fa;border-bottom:1px solid #e1e4e8;display:flex;flex-wrap:wrap;gap:10px}.release-category-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:#fff;border:1px solid #e1e4e8;border-radius:20px;font-size:.85em;font-weight:500;color:#24292e;cursor:pointer;transition:opacity .15s,box-shadow .15s}.release-category-badge:hover{opacity:.85}.release-category-badge.release-filter-active{box-shadow:0 0 0 2px currentcolor;font-weight:700}.release-category-badge.release-filter-dimmed{opacity:.3}.release-category-badge.feat{background:var(--color-feat);border-color:var(--color-feat);color:#fff}.release-category-badge.fix{background:var(--color-fix);border-color:var(--color-fix);color:#fff}.release-category-badge.docs{background:var(--color-docs);border-color:var(--color-docs);color:#fff}.release-category-badge.style{background:var(--color-style);border-color:var(--color-style);color:#fff}.release-category-badge.refactor{background:var(--color-refactor);border-color:var(--color-refactor);color:#fff}.release-category-badge.test{background:var(--color-test);border-color:var(--color-test);color:#fff}.release-category-badge.perf{background:var(--color-perf);border-color:var(--color-perf);color:#333}.release-category-badge.ops{background:var(--color-ops);border-color:var(--color-ops);color:#fff}.release-category-badge.chore{background:var(--color-chore);border-color:var(--color-chore);color:#fff}.release-category-badge.other{background:var(--color-other);border-color:var(--color-other);color:#fff}.release-bar-chart{display:grid;gap:0;padding:8px 20px;background:#f6f8fa;border-bottom:1px solid #e1e4e8}.release-bar-segment{min-width:0;height:26px;display:flex;align-items:center;justify-content:center;border-radius:0;overflow:hidden;transition:opacity .15s;cursor:pointer}.release-bar-segment:first-child{border-radius:4px 0 0 4px}.release-bar-segment:last-child{border-radius:0 4px 4px 0}.release-bar-segment:only-child{border-radius:4px}.release-bar-segment:hover{opacity:.82}.release-bar-segment.type-feat{background:var(--color-feat)}.release-bar-segment.type-fix{background:var(--color-fix)}.release-bar-segment.type-docs{background:var(--color-docs)}.release-bar-segment.type-style{background:var(--color-style)}.release-bar-segment.type-refactor{background:var(--color-refactor)}.release-bar-segment.type-test{background:var(--color-test)}.release-bar-segment.type-perf{background:var(--color-perf)}.release-bar-segment.type-ops{background:var(--color-ops)}.release-bar-segment.type-chore{background:var(--color-chore)}.release-bar-segment.type-other{background:var(--color-other)}.release-bar-segment-label{font-size:.72em;font-weight:700;color:#fff;white-space:nowrap;text-shadow:0 1px 2px rgba(0,0,0,.35);pointer-events:none}.release-bar-segment.type-perf .release-bar-segment-label{color:#333;text-shadow:none}.release-bar-segment.release-filter-dimmed{opacity:.2}.release-bar-segment.release-filter-active{outline:2px solid #fff;outline-offset:-2px;opacity:1}.release-filter-hidden{display:none}.search-container{margin:20px 0;position:sticky;top:0;z-index:50;background:var(--bg-surface, white);padding:0 20px 10px}.search-box{position:relative;display:flex;align-items:center;max-width:100%;margin:0 auto}#search-input{width:100%;padding:12px 40px 12px 16px;font-size:15px;border:2px solid #e1e4e8;border-radius:8px;background-color:#fff;transition:all .2s ease;outline:0}#search-input:focus{border-color:#03d697;box-shadow:0 0 0 3px rgba(3,102,214,.1)}#search-input::placeholder{color:#999}.search-clear-btn{position:absolute;right:12px;background:0 0;border:0;color:#754a4a;font-size:18px;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s ease;opacity:0;pointer-events:none}.search-clear-btn.visible{opacity:1;pointer-events:auto}.search-clear-btn:hover{background-color:#f0f0f0;color:#000}.search-info{text-align:center;margin-top:10px;color:#666;font-size:16px}.search-info.has-results{color:#0a8a63;font-weight:500}.commit-item.search-hidden,.release-section.search-hidden{display:none!important}.search-highlight{background-color:#03d697;padding:2px 4px;border-radius:3px;font-weight:600}.header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}body.theme-dark .icon-sun{display:inline-block;vertical-align:middle}.icon-sun,body.theme-dark .icon-moon{display:none}.icon-moon{vertical-align:middle}.author-filter select,.theme-toggle{border:2px solid #e1e4e8;border-radius:6px;background:#fff;color:#24292e;cursor:pointer}.author-filter label,.theme-toggle{display:inline-flex;align-items:center;font-weight:600}.theme-toggle{gap:6px;padding:7px 13px;font-size:.85em;transition:all .2s ease}.theme-toggle:hover{border-color:var(--accent);background:#f0f5ff;transform:translateY(-1px)}.author-filter{display:flex;align-items:center;gap:8px}.author-filter label{gap:4px;color:#24292e;font-size:.9em;white-space:nowrap}.author-filter select{padding:7px 10px;font-size:.9em;transition:border-color .2s ease;min-width:150px}.filter-status-bar,.visible-count-chip{background:#f0f5ff;border:1px solid #c5d4f5}.visible-count-chip{margin-left:auto;font-size:.82em;color:var(--accent);font-weight:600;border-radius:999px;padding:2px 10px;white-space:nowrap}.filter-status-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;font-size:.85em}.filter-status-label{font-weight:600;color:#57606a;white-space:nowrap;margin-right:4px}.filter-chip,.filter-chip-remove{display:inline-flex;align-items:center}.filter-chip{gap:6px;padding:4px 8px 4px 10px;border-radius:999px;border:1px solid #c5d4f5;background:#fff;font-weight:500;color:#24292f;white-space:nowrap}.filter-chip-remove{justify-content:center;border:0;background:0 0;cursor:pointer;font-size:.9em;line-height:1;padding:0 2px;color:inherit;opacity:.6;border-radius:50%;transition:opacity .15s,background .15s}.filter-chip-remove:hover{opacity:1;background:rgba(0,0,0,.08)}.filter-chip.type-feat{background:#e6f7ea;border-color:#2da44e;color:#1a6630}.filter-chip.type-fix{background:#ffe6e9;border-color:#cf222e;color:#8b1a21}.filter-chip.type-docs{background:#e6f2ff;border-color:#0969da;color:#0550a0}.filter-chip.type-style{background:#f3e5f5;border-color:#8e24aa;color:#5e1171}.filter-chip.type-refactor{background:#e0f7fa;border-color:#00acc1;color:#006573}.filter-chip.type-test{background:#f1f8e9;border-color:#7cb342;color:#456820}.filter-chip.type-perf{background:#fffde7;border-color:#fbc02d;color:#7a5c00}.filter-chip.type-ops{background:#eceff1;border-color:#546e7a;color:#2e404a}.filter-chip.type-chore{background:#fff4e6;border-color:#fb8500;color:#7c4200}.filter-chip.type-other{background:#f0f0f0;border-color:#656d76;color:#3a3e44}.filter-chip.type-tags{background:#e6f2ff;border-color:#2c5282;color:#1a3358}.filter-chip.filter-chip-day{background:#f0fdf4;border-color:#16a34a;color:#14532d}.filter-chip.filter-chip-search{background:#fdf4ff;border-color:#9333ea;color:#581c87}body.theme-dark{--bg-surface:#0f131a;--bg-surface-2:#151b24;--border-color:#2a3442;--text-primary:#f1f5f9;--text-secondary:#cbd5e1;--text-muted:#9aa4b2;background:linear-gradient(135deg,#0b0f14 0,#1b2330 100%);color:#f1f5f9}body.theme-dark .container{background-color:#0f131a;box-shadow:0 8px 32px rgba(0,0,0,.6)}body.theme-dark .commit-message,body.theme-dark .commit-summary,body.theme-dark .release-title,body.theme-dark .type-title,body.theme-dark h1{color:#f1f5f9}body.theme-dark .commit-files{background:#111827;border-color:#2a3442}body.theme-dark .commit-files-title{color:#cbd5e1}body.theme-dark .commit-file-item{color:#dbe7fb}body.theme-dark .file-stat{background:#0f131a;border-color:#2a3442}body.theme-dark .file-stat.additions{color:#7ee787;border-color:#2f6f3e;background:#0f1f14}body.theme-dark .file-stat.deletions{color:#ff7b72;border-color:#7f2d35;background:#2a1114}body.theme-dark .file-stat.lines{color:#79c0ff;border-color:#214a72;background:#0f1a2b}body.theme-dark .commit-date,body.theme-dark .commit-footer,body.theme-dark .metadata,body.theme-dark .search-info,body.theme-dark .type-count{color:#cbd5e1}body.theme-dark .header-info{border-bottom-color:#2f3a4a}body.theme-dark .view-controls{background:#151b24;border-color:#2a3442}body.theme-dark .author-filter select,body.theme-dark .mode-btn,body.theme-dark .release-selector select,body.theme-dark .theme-toggle{background:#0f131a;color:#e6edf3;border-color:#2a3442}body.theme-dark .mode-btn:hover,body.theme-dark .theme-toggle:hover{background:#1b2330;border-color:var(--accent)}body.theme-dark .author-filter label,body.theme-dark .release-selector label{color:#e6edf3}body.theme-dark .summary-card.active{background:#273244;border-color:#4b5563;box-shadow:0 4px 12px rgba(0,0,0,.45)}body.theme-dark .summary-card.chore.active,body.theme-dark .summary-card.docs.active,body.theme-dark .summary-card.feat.active,body.theme-dark .summary-card.fix.active,body.theme-dark .summary-card.ops.active,body.theme-dark .summary-card.other.active,body.theme-dark .summary-card.perf.active,body.theme-dark .summary-card.refactor.active,body.theme-dark .summary-card.style.active,body.theme-dark .summary-card.tags.active,body.theme-dark .summary-card.test.active{background:#273244}body.theme-dark .summary-card,body.theme-dark .summary-card.total{background:#0f131a;border-color:#2a3442}body.theme-dark .summary-card.total.active{background:#151b24;border-color:#3a475a}body.theme-dark .summary-card:hover{border-color:#3a475a}body.theme-dark .summary-card.total .label,body.theme-dark .summary-card.total .label-small{color:#cbd5e1}body.theme-dark .summary-card.total .number{color:#f8fafc}body.theme-dark .summary-card.total .number-small{color:#dbeafe}body.theme-dark .sparkline-area{fill:rgba(244,162,97,.2)}body.theme-dark .sparkline-dot{fill:#f4a261;stroke:#0f131a}body.theme-dark .sparkline-label{color:#9aa4b2}body.theme-dark .summary-card:not(.total) .number{color:#e2e8f0}body.theme-dark .summary-card:not(.total) .label{color:#cbd5e1}body.theme-dark .commit-calendar-widget,body.theme-dark .summary-controls{background:#0f131a;border-color:#2a3442}body.theme-dark .commit-calendar-title{color:#cbd5e1}body.theme-dark .commit-calendar-subtitle,body.theme-dark .commit-calendar-weekdays span{color:#9aa4b2}body.theme-dark .commit-calendar-month{background:#151b24;border-color:#2a3442}body.theme-dark .commit-calendar-clear,body.theme-dark .commit-calendar-nav{background:#0f131a;color:#cbd5e1;border-color:#334155}body.theme-dark .commit-calendar-clear:hover,body.theme-dark .commit-calendar-nav:hover:not(:disabled){background:#1b2330}body.theme-dark .calendar-day-count,body.theme-dark .commit-calendar-month-title{color:#e2e8f0}body.theme-dark .commit-calendar-day{background:#0f131a;border-color:#334155}body.theme-dark .commit-calendar-day.selected{box-shadow:0 0 0 2px #60a5fa,inset 0 0 0 1px rgba(15,19,26,.7)}body.theme-dark .commit-calendar-day.today{outline:2px solid #4ade80;outline-offset:-2px}body.theme-dark .commit-calendar-day.today .calendar-day-number{color:#4ade80;font-weight:700}body.theme-dark .commit-calendar-day.today:not(.has-commits){background:#052e16}body.theme-dark .calendar-day-number{color:#cbd5e1}body.theme-dark .commit-item{background-color:#151b24;border-left-color:var(--accent)}body.theme-dark .commit-item:hover{background-color:#1b2330}body.theme-dark .commit-item.commit-renovate{background-color:#1b1a10}body.theme-dark .commit-tag{background:#1b2330;color:#cbd5e1;border-color:#334155}body.theme-dark .commit-hash{background-color:#1b2330;color:#7aa2ff}body.theme-dark .commit-hash:hover{background-color:#3b82f6}body.theme-dark .commit-footer{border-top-color:#2a3442}body.theme-dark .search-box #search-input{background-color:#0f131a;color:#e6edf3;border-color:#2a3442}body.theme-dark #search-input::placeholder{color:#6b7280}body.theme-dark .search-clear-btn:hover{background-color:#1b2330;color:#e6edf3}body.theme-dark .commit-item.highlight{box-shadow:0 0 0 2px rgba(3,214,151,.35)}body.theme-dark .commit-timeline{background:#0f131a;border-color:#2a3442}body.theme-dark .timeline-label{color:#9aa4b2}body.theme-dark .timeline-interval-legend{color:#6b7280}body.theme-dark .timeline-track{background:linear-gradient(90deg,#2a3442 0,#4b5563 100%)}body.theme-dark .timeline-track-container::-webkit-scrollbar-track{background:#1b2330}body.theme-dark .timeline-track-container::-webkit-scrollbar-thumb{background:#3a475a}body.theme-dark .timeline-track-container::-webkit-scrollbar-thumb:hover{background:#4b5563}body.theme-dark .graduation-tick{background:#9aa4b2}body.theme-dark .timeline-commit,body.theme-dark .timeline-commit.visible{border-color:#0f131a}body.theme-dark .release-section{background-color:#151b24;border-color:#2a3442}body.theme-dark .release-header{background:linear-gradient(135deg,#1f2937 0,#111827 100%);border-bottom-color:#2a3442}body.theme-dark .release-section.virtual-release .release-header{background:linear-gradient(135deg,#8a4b00 0,#5a2f00 100%)}body.theme-dark .release-summary{background:#0f131a;border-bottom-color:#2a3442}body.theme-dark .release-category-badge{background:#151b24;border-color:#2a3442;color:#e2e8f0}body.theme-dark .release-category-badge.feat{background:var(--color-feat);border-color:var(--color-feat);color:#fff}body.theme-dark .release-category-badge.fix{background:var(--color-fix);border-color:var(--color-fix);color:#fff}body.theme-dark .release-category-badge.docs{background:var(--color-docs);border-color:var(--color-docs);color:#fff}body.theme-dark .release-category-badge.style{background:var(--color-style);border-color:var(--color-style);color:#fff}body.theme-dark .release-category-badge.refactor{background:var(--color-refactor);border-color:var(--color-refactor);color:#fff}body.theme-dark .release-category-badge.test{background:var(--color-test);border-color:var(--color-test);color:#fff}body.theme-dark .release-category-badge.perf{background:var(--color-perf);border-color:var(--color-perf);color:#333}body.theme-dark .release-category-badge.ops{background:var(--color-ops);border-color:var(--color-ops);color:#fff}body.theme-dark .release-category-badge.chore{background:var(--color-chore);border-color:var(--color-chore);color:#fff}body.theme-dark .release-category-badge.other{background:var(--color-other);border-color:var(--color-other);color:#fff}body.theme-dark .release-bar-chart{background:#0f131a;border-bottom-color:#2a3442}body.theme-dark .release-section:hover{border-color:#3a475a}body.theme-dark .empty-section,body.theme-dark .loading{color:#9aa4b2;background-color:#151b24}body.theme-dark .download-link{background:#1e3352;color:#93b4fc;border-color:transparent}body.theme-dark .download-link:hover{background:var(--accent);color:#fff;border-color:transparent;box-shadow:0 4px 12px rgba(102,126,234,.35)}body.theme-dark .filter-status-bar{background:#151b24;border-color:#2a3442}body.theme-dark .filter-status-label{color:#9aa4b2}body.theme-dark .filter-chip{background:#0f131a;border-color:#334155;color:#e2e8f0}body.theme-dark .filter-chip.filter-chip-day{background:#0a1f14;border-color:#166534;color:#86efac}body.theme-dark .filter-chip.filter-chip-search{background:#1a0a2e;border-color:#7e22ce;color:#d8b4fe}body.theme-dark .filter-chip-remove:hover{background:rgba(255,255,255,.1)}body.theme-dark .visible-count-chip{background:#151b24;border-color:#2a3442;color:#7aa2ff}