:root{--fg:#1a1a1a;--muted:#666;--line:#ddd;--bg-alt:#f6f7f8;--accent:#2b6cb0;--warn-bg:#fff4d6;--warn-fg:#8a6d000;--ok:#216e39;--bad:#b42318}*{box-sizing:border-box}body{color:var(--fg);margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.45}.app{max-width:1200px;margin:0 auto;padding:24px 20px 80px}h1{margin:0 0 2px;font-size:1.4rem}.subtitle{color:var(--muted);margin:0 0 20px;font-size:.9rem}button{font:inherit;border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:6px;padding:7px 14px}button:hover:not(:disabled){background:var(--bg-alt)}button:disabled{opacity:.5;cursor:default}button.primary{background:var(--accent);color:#fff;border-color:var(--accent)}button.primary:hover:not(:disabled){background:#245a94}.dropzone{border:2px dashed var(--line);text-align:center;color:var(--muted);border-radius:10px;padding:32px 20px;transition:border-color .15s,background .15s}.dropzone.drag{border-color:var(--accent);color:var(--fg);background:#eef5fc}.dropzone .actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:14px;display:flex}.hint{color:var(--muted);margin-top:10px;font-size:.82rem}.progress{margin:22px 0}.progress .bar{background:var(--bg-alt);border-radius:4px;height:8px;overflow:hidden}.progress .bar>span{background:var(--accent);height:100%;transition:width .2s;display:block}.progress .meta{color:var(--muted);justify-content:space-between;gap:12px;margin-top:6px;font-size:.85rem;display:flex}.stage-tag{text-transform:uppercase;letter-spacing:.04em;background:var(--bg-alt);color:var(--fg);border-radius:10px;margin-right:8px;padding:1px 7px;font-size:.72rem;display:inline-block}.summary{background:var(--bg-alt);border:1px solid var(--line);border-radius:10px;margin:20px 0;padding:14px 16px}.summary .headline{margin:0 0 6px;font-size:1.02rem}.summary .cost{color:var(--muted);margin:4px 0 0;font-size:.85rem}.summary .toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.filters{flex-wrap:wrap;gap:6px;display:flex}.filters button{border-radius:999px;padding:4px 10px;font-size:.82rem}.filters button.active{background:var(--fg);color:#fff;border-color:var(--fg)}.table-wrap{border:1px solid var(--line);border-radius:10px;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.85rem}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;white-space:nowrap;padding:8px 10px}th{background:var(--bg-alt);cursor:pointer;-webkit-user-select:none;user-select:none;position:sticky;top:0}th .arrow{color:var(--muted);margin-left:3px;font-size:.7rem}tr:hover td{background:#fafbfc}td.title{text-overflow:ellipsis;white-space:nowrap;max-width:320px;overflow:hidden}td.num{text-align:right;font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.badge{border:1px solid #0000;border-radius:999px;padding:1px 8px;font-size:.75rem;display:inline-block}.badge.matched-by-doi{color:var(--ok);background:#e7f6ec}.badge.matched-by-title{color:var(--accent);background:#e8f0fb}.badge.not-found{color:#555;background:#f1f1f1}.badge.error{color:var(--bad);background:#fdecea}.badge.unparseable{color:#6b21a8;background:#f3e8ff}.badge.pending{background:var(--bg-alt);color:var(--muted)}.flag{color:var(--bad);cursor:help;font-weight:600}a{color:var(--accent)}.err-text{color:var(--bad)}.badge.suspicious,.badge.uncertain{background:var(--warn-bg);color:#8a5a00;border-color:#e6c200}.badge.not-indexable{color:#46566b;background:#eef1f4}.dup{color:var(--muted);font-size:.75rem;font-style:italic}.note-mark{color:var(--accent);cursor:help;font-size:.8rem}.check-link{white-space:nowrap;font-size:.8rem}.year-unverified{color:var(--muted);cursor:help;font-weight:600}.viewtoggle{border:1px solid var(--line);border-radius:8px;gap:0;margin:18px 0 6px;display:inline-flex;overflow:hidden}.viewtoggle button{background:#fff;border:none;border-radius:0;padding:6px 16px}.viewtoggle button+button{border-left:1px solid var(--line)}.viewtoggle button.active{background:var(--fg);color:#fff}.report{flex-direction:column;gap:16px;margin-top:10px;display:flex}.card{border:1px solid var(--line);background:#fff;border-radius:12px;padding:18px 20px}.card>.card-title{margin:0 0 4px;font-size:1.05rem}details.card>summary.card-title{cursor:pointer;list-style:revert;font-weight:600}details.card[open]>summary.card-title{margin-bottom:8px}.card-intro{color:var(--muted);margin:0 0 14px;font-size:.88rem}.card-basis{color:var(--muted);border-top:1px dashed var(--line);margin:14px 0 0;padding-top:8px;font-size:.78rem}.card-note{color:var(--muted);margin:12px 0 0;font-size:.85rem}.card-note.warn{color:#8a5a00;background:var(--warn-bg);border:1px solid #e6c200;border-radius:8px;padding:8px 10px}.baseline-line{color:var(--accent);margin:8px 0 0;font-size:.85rem}.stat-headline{margin:6px 0 12px;font-size:1.05rem}.stat-row{flex-wrap:wrap;gap:28px;margin:8px 0 16px;display:flex}.stat-cell{flex-direction:column;display:flex}.stat-big{font-variant-numeric:tabular-nums;font-size:1.7rem;font-weight:700;line-height:1.1}.stat-label{color:var(--muted);font-size:.8rem}.extremes{margin-top:12px;font-size:.88rem}.extremes p{text-overflow:ellipsis;white-space:nowrap;margin:4px 0;overflow:hidden}.tag{text-transform:uppercase;letter-spacing:.04em;background:var(--bg-alt);color:var(--muted);border-radius:8px;margin-right:6px;padding:1px 7px;font-size:.68rem;display:inline-block}.histogram{width:100%;height:auto;margin:8px 0 4px}.hist-bar{fill:var(--accent)}.hist-bar:hover{fill:#245a94}.hist-axis{fill:var(--muted);font-size:10px}.hist-marker{fill:var(--accent);font-size:10px;font-weight:600}.barchart{width:100%;height:auto;margin:6px 0}.bar-label{fill:var(--fg);font-size:12px}.bar-track{fill:var(--bg-alt)}.bar-fill{fill:var(--accent)}.bar-fill.emphasis{fill:#1b4f80}.bar-value{fill:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.mini-breakdown{border-collapse:collapse;width:100%;max-width:460px;margin:10px 0 2px}.mini-breakdown td{white-space:nowrap;border:none;padding:3px 8px 3px 0}.mb-label{width:190px;font-size:.85rem}.mb-bar{width:100%}.mb-fill{background:var(--accent);vertical-align:middle;border-radius:3px;min-width:2px;height:12px;display:inline-block}.mb-val{text-align:right;font-variant-numeric:tabular-nums;font-size:.85rem}.oa-gold{background:#d4a017}.oa-green{background:#2f855a}.oa-hybrid{background:#6b46c1}.oa-bronze{background:#a05a2c}.oa-closed{background:#94a3b8}.oa-other{background:#64748b}.selfcite-form{flex-wrap:wrap;align-items:flex-end;gap:14px;margin:4px 0 14px;display:flex}.selfcite-form label{color:var(--muted);flex-direction:column;gap:3px;font-size:.8rem;display:flex}.selfcite-form input{font:inherit;border:1px solid var(--line);border-radius:6px;min-width:220px;padding:6px 9px}.selfcite-list{margin:8px 0 0;padding-left:18px;font-size:.85rem}.selfcite-list li{margin:3px 0}.dup-list{margin:10px 0 0;padding:0;list-style:none}.dup-list li{border-top:1px solid var(--line);padding:8px 0}.dup-title{font-size:.9rem}.dup-keys{flex-wrap:wrap;gap:6px;margin-top:5px;display:flex}.mixed-flag{color:#8a5a00;font-size:.8rem;font-weight:600}.chip{background:var(--bg-alt);border:1px solid var(--line);border-radius:6px;padding:1px 7px;font-size:.78rem}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.shape-list{margin:6px 0 0;padding:0;list-style:none}.shape-list li{border-top:1px solid var(--line);padding:6px 0;font-size:.9rem}.shape-list li:first-child{border-top:none}.gap-section{border-top:1px solid var(--line);margin-top:14px;padding-top:12px}.gap-section:first-of-type{border-top:none;margin-top:4px;padding-top:0}.gap-section-title{margin:0 0 6px;font-weight:600}.gap-list{margin:10px 0 0;padding:0;list-style:none}.gap-list li{border-top:1px solid var(--line);padding:8px 0}.gap-title{font-size:.9rem}.gap-meta{color:var(--muted);margin-top:3px;font-size:.82rem}.gap-keys{flex-wrap:wrap;gap:6px;margin-top:5px;display:flex}.cleaned{margin-top:10px}.cleaned-counts{color:var(--muted);flex-wrap:wrap;gap:18px;margin:14px 0;font-size:.85rem;display:flex}.cleaned-counts strong{color:var(--fg)}.cleaned-toolbar{margin:10px 0 4px}.cleaned-diff-title{margin:20px 0 8px;font-size:1rem}.diff-list{margin:0;padding:0;list-style:none}.diff-list>li{border-top:1px solid var(--line);padding:10px 0}.diff-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.diff-note{margin:4px 0 0;font-size:.82rem}.diff-tag{border-radius:999px;padding:1px 7px;font-size:.72rem}.diff-tag.ok{color:var(--ok);background:#e7f6ec}.diff-tag.warn{background:var(--warn-bg);color:#8a5a00}.diff-tag.review{color:var(--accent);background:#e8f0fb}.diff-fields .diff-accepted{color:var(--ok)}.diff-fields .field{font-weight:600}.diff-fields .yours{color:var(--muted);text-decoration:line-through}.diff-fields .oa{color:var(--accent);font-weight:600}.pool-help{display:inline-block}.pool-help>summary{cursor:pointer;color:var(--accent);text-decoration:underline;list-style:none}.pool-help>summary::-webkit-details-marker{display:none}.pool-help-text{color:var(--muted);max-width:520px;margin-top:4px;font-size:.82rem;display:block}.upload-collapsed{margin:6px 0 4px;font-size:.9rem}.cleaned-hint{margin:8px 0 6px;font-size:.85rem}.cleaned-basis{margin:12px 0 4px;font-size:.9rem}.cleaned-toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.cleaned-raw{background:var(--bg-alt);border:1px solid var(--line);white-space:pre-wrap;word-break:break-word;border-radius:8px;max-height:340px;margin:8px 0;padding:12px;font-size:.8rem;overflow:auto}.crash-fallback{text-align:center;padding:32px 16px}.crash-fallback p{color:var(--muted)}.crash-fallback button.primary{margin-top:10px}.diff-fields{margin:6px 0 0;padding-left:18px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85rem}.diff-fields .add{color:var(--ok);font-weight:600}.diff-preprint{color:var(--fg);margin:6px 0 0;font-size:.85rem}.diff-legend{color:var(--muted);flex-wrap:wrap;gap:18px;margin:2px 0 12px;font-size:.8rem;display:flex}.diff-legend>span{align-items:center;gap:6px;display:inline-flex}.oa-help{margin-top:12px}.oa-help>summary{cursor:pointer;color:var(--accent);font-size:.82rem}.oa-help ul{margin:8px 0 4px;padding-left:18px;font-size:.85rem}.oa-help li{margin:3px 0}.oa-help p{margin:6px 0 0;font-size:.8rem}.keyctl{margin:10px 0 4px;font-size:.85rem}.keyctl.active{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.key-link{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:.85rem;text-decoration:underline}.key-link:hover{background:0 0}.key-badge{color:var(--ok);background:#e7f6ec;border-radius:999px;padding:2px 10px;font-size:.78rem;display:inline-block}.key-form{border:1px solid var(--line);background:var(--bg-alt);border-radius:10px;max-width:560px;margin-top:6px;padding:14px 16px}.key-why{color:var(--fg);margin:0 0 8px}.key-trust{color:var(--muted);border-left:3px solid var(--accent);margin:0 0 12px;padding-left:10px;font-size:.82rem}.key-form label{color:var(--muted);flex-direction:column;gap:3px;margin-bottom:10px;font-size:.8rem;display:flex}.key-form input{font:inherit;border:1px solid var(--line);background:#fff;border-radius:6px;padding:7px 9px}.key-actions{align-items:center;gap:12px;margin-top:2px;display:flex}.key-note{margin:10px 0 0;font-size:.78rem}.key-error{margin:6px 0 0}.usage{max-width:680px;margin:6px 0 4px;font-size:.82rem}.usage.shared{margin-top:8px}.usage-bar{background:var(--bg-alt);border:1px solid var(--line);border-radius:999px;height:8px;overflow:hidden}.usage-bar>span{background:var(--ok);height:100%;transition:width .3s,background .3s;display:block}.usage-bar>span.over{background:var(--bad)}.usage-text{color:var(--fg);margin:5px 0 0}.usage-prepaid{margin:2px 0 0;font-size:.78rem}.exhausted-banner{max-width:720px;margin:12px 0 4px}.exhausted-banner .primary{margin-left:4px}.app-header{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.about-btn{border-radius:999px;padding:5px 12px;font-size:.85rem}.about-btn.active,.about-btn:focus-visible{outline:none}.about{max-width:760px;margin:8px 0 20px}.about h2{margin:8px 0 6px;font-size:1.2rem}.about h3{margin:20px 0 6px;font-size:.98rem}.about p{margin:0 0 10px;line-height:1.5}.about-list{margin:0 0 10px;padding-left:20px}.about-list li{margin:6px 0;line-height:1.5}.about>.primary{margin-top:10px}.verify-card{background:var(--bg-alt);border:1px solid var(--line);border-radius:10px;margin:20px 0 10px;padding:14px 16px}.verify-headline{margin:0 0 8px;font-size:1.15rem}.verify-lines{margin:0;padding:0;font-size:.92rem;list-style:none}.verify-lines>li{padding:3px 0}.verify-lines summary{cursor:pointer}.verify-bad>details>summary{color:#8a3b00}.verify-refs{margin:6px 0 4px;padding-left:18px;font-size:.85rem}.verify-refs li{padding:2px 0}.verify-foot{margin:8px 0 0;font-size:.78rem}.summary-details{margin:0 0 10px}.summary-details>summary{cursor:pointer;color:var(--muted);font-size:.88rem}.summary-details .summary{margin:8px 0 0}.example-note{color:#234;background:#eef5ff;border:1px solid #c9dcf5;border-radius:8px;margin:16px 0 0;padding:8px 10px}.coauthor-line{margin:2px 0 10px;font-size:.86rem}.coauthor-text{background:var(--bg-alt);border:1px solid var(--line);border-radius:6px;padding:2px 6px}.intake{grid-template-columns:1fr 1fr;align-items:stretch;gap:14px;display:grid}@media (width<=720px){.intake{grid-template-columns:1fr}}.paste-box{border:2px dashed var(--line);border-radius:10px;flex-direction:column;gap:8px;padding:14px 16px;display:flex}.paste-box label{color:var(--muted);font-size:.9rem}.paste-box textarea{resize:vertical;border:1px solid var(--line);border-radius:6px;min-height:110px;padding:8px;font:.82rem/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.paste-box .actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.pool-footer{border-top:1px solid var(--line);margin-top:36px;padding-top:14px}.exhausted-banner .keyctl{margin-top:8px}.guides-nav{margin-top:14px;font-size:.8rem;line-height:1.7}.guides-nav a{color:var(--accent)}
