:root{color:#edf7f3;background:#0c151b;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #0c151b;--panel: rgba(19, 35, 44, .9);--panel-bright: #18333d;--line: rgba(161, 205, 190, .18);--line-strong: rgba(161, 205, 190, .34);--text: #edf7f3;--muted: #9ab4ad;--mint: #9ee7c3;--mint-deep: #56be94;--orange: #ffb36b;--red: #ff8f86}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 85% 0%,rgba(69,160,135,.2),transparent 30rem),radial-gradient(circle at 10% 45%,rgba(255,179,107,.07),transparent 26rem),var(--ink)}body,button,input,select{font:inherit}button,select{cursor:pointer}a{color:var(--mint)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--orange);outline-offset:3px}.shell{width:min(1180px,calc(100% - 48px));margin:0 auto}.app{min-height:100vh}.hero{position:relative;display:block;overflow:hidden;min-height:370px;padding:74px 0 54px}.hero-copy{position:relative;z-index:1;max-width:1040px}.eyebrow,.section-kicker{margin:0;color:var(--mint);font-size:.72rem;font-weight:800;letter-spacing:.18em;line-height:1.3;text-transform:uppercase}.hero h1{max-width:1040px;margin:18px 0 0;color:#f7fbf8;font-size:clamp(3.3rem,8vw,7.5rem);line-height:.91;letter-spacing:-.08em}.hero-description{max-width:610px;margin:28px 0 0;color:var(--muted);font-size:clamp(1rem,1.8vw,1.28rem);line-height:1.55}.hero-mark{position:absolute;right:clamp(20px,4vw,72px);bottom:42px;z-index:0;display:grid;width:166px;height:166px;padding:18px;border:1px solid var(--line-strong);border-radius:50%;transform:rotate(-13deg);background:#0f1f2573;color:var(--orange);font-family:Courier New,monospace;font-size:1.3rem;font-weight:700;line-height:1;place-content:center;text-align:center;opacity:.68;pointer-events:none;box-shadow:0 0 0 12px #9ee7c308,0 24px 80px #0003}.hero-mark span:nth-child(2){color:var(--mint);font-size:2.8rem}.main-content{display:grid;gap:18px;padding-bottom:54px}.control-card,.progress-card,.analysis-toolbar,.visual-card,.export-card,.table-card,.snapshot-card{border:1px solid var(--line);border-radius:24px;background:linear-gradient(135deg,#18333de0,#101d25f0);box-shadow:0 20px 70px #0000002e}.control-card,.analysis-toolbar,.table-card,.snapshot-card,.visual-card,.export-card{padding:26px}.progress-card{display:grid;grid-template-columns:1fr auto;gap:26px;padding:26px}.progress-loading{border-color:#9ee7c385}.progress-partial,.progress-error{border-color:#ffb36b80}.card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}h2{margin:8px 0 0;color:var(--text);font-size:clamp(1.25rem,2.4vw,1.75rem);letter-spacing:-.035em}.repo-link,.sha-link{font-size:.82rem;font-weight:750;text-decoration:none}.repo-link:hover,.sha-link:hover{color:var(--orange)}.repository-form{margin-top:26px}.repository-form label,.toolbar-controls label{display:grid;gap:8px;color:var(--muted);font-size:.78rem;font-weight:750}.form-row{display:flex;gap:10px;margin-top:8px}input,select{min-height:46px;border:1px solid var(--line-strong);border-radius:12px;background:#08141b9e;color:var(--text);padding:0 13px}input::placeholder{color:#6f8c85}.form-row input{min-width:0;flex:1}.button,.text-button{border:0;font-weight:800}.button{min-height:46px;border-radius:12px;padding:0 18px;transition:transform .16s ease,background .16s ease}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--mint);color:#10221e}.button-primary:hover{background:#c1f4d8}.button-secondary{border:1px solid var(--line-strong);background:#9ee7c317;color:var(--mint)}.button-secondary:hover{background:#9ee7c32b}.field-hint,.field-error,.inline-error,.progress-detail,.section-intro p:last-child,.export-card p:last-child{color:var(--muted);font-size:.85rem;line-height:1.55}.field-hint{margin:10px 0 0}.field-error,.inline-error{margin:12px 0 0;color:var(--red)}.progress-detail{margin:13px 0 0}.progress-stats{display:grid;grid-template-columns:repeat(3,minmax(110px,1fr));align-self:center;gap:1px;min-width:360px;margin:0;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--line)}.progress-stats div{padding:15px 13px;background:#09171d80}.progress-stats dt{color:var(--muted);font-size:.68rem;font-weight:750;line-height:1.3}.progress-stats dd{margin:6px 0 0;color:var(--mint);font-family:Courier New,monospace;font-size:1rem;font-weight:800}.progress-card .inline-error{grid-column:1 / -1}.analysis-toolbar{display:grid;grid-template-columns:minmax(180px,.65fr) 1.35fr;gap:28px}.toolbar-controls{display:grid;grid-template-columns:minmax(130px,.7fr) minmax(200px,1.3fr) minmax(130px,.8fr) repeat(2,minmax(120px,.75fr));gap:12px}.visualization-section{display:grid;gap:18px;padding:14px 0 0}.section-intro{display:flex;align-items:baseline;gap:18px;padding:2px 4px}.section-intro h2{margin:0}.section-intro p:last-child{margin:0 0 0 auto}.chart-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.visual-card{min-width:0}.chart-scroll{overflow-x:auto;margin-top:24px;padding-bottom:3px}.timeline-svg,.activity-svg,.contributors-svg{display:block;max-width:none;overflow:visible}.timeline-axis{stroke:#9ee7c357;stroke-width:2}.timeline-stem{stroke:#9ee7c361;stroke-width:1}.timeline-dot{fill:var(--orange);stroke:#ffe0b8;stroke-width:2}.timeline-label,.axis-label,.contributor-label,.contributor-count{fill:var(--muted);font-size:10px;font-weight:700}.timeline-label{fill:var(--orange);font-family:Courier New,monospace}.activity-bar{fill:var(--mint-deep);opacity:.88}.contributor-label{fill:var(--text);font-size:11px}.contributor-track{fill:#9ee7c317}.contributor-bar{fill:var(--mint)}.contributor-count{fill:var(--muted);font-family:Courier New,monospace}.export-card{display:flex;align-items:center;justify-content:space-between;gap:18px}.export-card p{margin:8px 0 0}.export-actions,.snapshot-actions{display:flex;flex-wrap:wrap;gap:8px}.text-button{padding:7px 9px;border-radius:8px;background:#9ee7c314;color:var(--mint);font-size:.75rem}.text-button:hover{background:#9ee7c32b}.text-button-danger{color:var(--red)}.table-card{overflow:hidden}.result-count{flex:0 0 auto;padding:7px 10px;border:1px solid var(--line);border-radius:999px;color:var(--orange);font-family:Courier New,monospace;font-size:.7rem;font-weight:800}.table-scroll{margin:22px -26px -26px;overflow-x:auto}table{width:100%;min-width:720px;border-collapse:collapse}th,td{padding:15px 26px;border-top:1px solid var(--line);text-align:left;vertical-align:top}th{color:var(--muted);font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}td{color:#d5e6e0;font-size:.86rem;line-height:1.45}tbody tr:hover{background:#9ee7c30a}.empty-message{margin:24px 0 0;color:var(--muted);font-size:.9rem}.snapshot-list{display:grid;gap:1px;margin:22px -26px -26px;padding:0;list-style:none;background:var(--line)}.snapshot-list li{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 26px;background:#0a191f85}.snapshot-list strong,.snapshot-list span{display:block}.snapshot-list strong{color:var(--text);font-size:.9rem}.snapshot-list span{margin-top:5px;color:var(--muted);font-size:.75rem}.site-footer{display:flex;justify-content:space-between;gap:18px;padding:24px 0 42px;color:#6d8982;font-size:.76rem}.site-footer a{color:var(--muted);text-decoration:none}.site-footer a:hover{color:var(--mint)}@media(max-width:1020px){.analysis-toolbar{grid-template-columns:1fr}.toolbar-controls{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.shell{width:min(100% - 28px,620px)}.hero{min-height:0;align-items:flex-start;padding:44px 0 34px}.hero-mark{display:none}.hero h1{font-size:clamp(3rem,17vw,5.4rem)}.control-card,.analysis-toolbar,.table-card,.snapshot-card,.visual-card,.export-card,.progress-card{border-radius:18px;padding:19px}.progress-card,.export-card{grid-template-columns:1fr;display:grid}.progress-stats{min-width:0;width:100%}.form-row,.section-intro,.snapshot-list li,.site-footer{align-items:stretch;flex-direction:column}.form-row{display:grid}.toolbar-controls,.chart-grid{grid-template-columns:1fr}.section-intro{display:flex;gap:8px}.section-intro p:last-child{margin:0}.table-scroll,.snapshot-list{margin-left:-19px;margin-right:-19px}th,td{padding-left:19px;padding-right:19px}}
