:root{--ink:#1a1a1a;--muted:#67625b;--faint:#9a948c;--rule:#e6e2da;--accent:#7a3b1d;--bg:#fdfcf9;--serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;--sans:system-ui,-apple-system,"Segoe UI",Helvetica,Arial,sans-serif}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--ink)}body{font-family:var(--serif);font-size:17px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none;border-bottom:1px solid var(--rule)}a:hover{color:var(--accent);border-color:var(--accent)}.wrap{max-width:880px;margin:0 auto;padding:3rem 1.5rem 6rem}.masthead{display:flex;align-items:baseline;justify-content:space-between;border-bottom:2px solid var(--ink);padding-bottom:.5rem;margin-bottom:1.75rem}.masthead h1{font-size:1.6rem;font-weight:600;letter-spacing:.01em;margin:0}.masthead .tag{font-family:var(--sans);font-size:.68rem;color:var(--muted);text-transform:uppercase;letter-spacing:.09em}.searchbar{display:flex;gap:.5rem;margin-bottom:.75rem}.searchbar input[type=text]{flex:1 1;font-family:var(--serif);font-size:1.1rem;padding:.5rem .25rem;border:none;border-bottom:2px solid var(--ink);background:transparent;outline:none}.searchbar button{font-family:var(--sans);font-size:.82rem;letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--ink);background:var(--ink);color:var(--bg);padding:0 1rem;cursor:pointer}.searchbar button:hover{background:var(--accent);border-color:var(--accent)}.controls{font-family:var(--sans);font-size:.76rem;color:var(--muted);display:flex;flex-wrap:wrap;gap:1rem 1.25rem;align-items:center;margin-bottom:1.25rem}.controls label{gap:.3rem}.controls .group,.controls label{display:inline-flex;align-items:center}.controls .group{gap:.5rem}.controls input[type=date],.controls select{font-family:var(--sans);font-size:.76rem;border:none;border-bottom:1px solid var(--rule);background:transparent;color:var(--ink)}.controls .src{cursor:pointer}.controls .src.on{color:var(--accent);font-weight:600}.spark{margin:.5rem 0 2rem}.spark .cap{font-family:var(--sans);font-size:.72rem;color:var(--muted);display:flex;justify-content:space-between;margin-top:.25rem}.spark svg{display:block;width:100%;height:46px;border-bottom:1px solid var(--rule)}.spark rect{fill:var(--accent);opacity:.85}.intro{margin-top:1.5rem;max-width:40rem}.intro p{color:var(--muted);font-size:.98rem}.intro .examples{display:flex;flex-wrap:wrap;gap:.4rem .5rem;margin-top:1rem}.intro .examples button{font-family:var(--serif);font-size:.9rem;color:var(--accent);background:transparent;border:1px solid var(--rule);border-radius:0;padding:.2rem .6rem;cursor:pointer}.intro .examples button:hover{border-color:var(--accent)}.meta{font-family:var(--sans);font-size:.74rem;color:var(--faint);margin-bottom:1rem}.results{width:100%;border-collapse:collapse}.results tr{border-bottom:1px solid var(--rule)}.results tr:hover{background:rgba(26,26,26,.02)}.results td{padding:.6rem 0;vertical-align:baseline}.results .date{font-family:var(--sans);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:.76rem;color:var(--muted);width:5.4rem}.results .date,.results .src{white-space:nowrap;padding-right:.75rem}.results .src{font-family:var(--sans);font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;color:var(--accent);width:6.5rem}.results .headline{font-size:1.04rem;line-height:1.35}.results .snip{color:var(--muted);font-size:.92rem;margin-top:.15rem}.results .meta-only .headline{color:var(--faint);font-style:italic}.results .meta-only .flag{font-family:var(--sans);font-size:.6rem;text-transform:uppercase;letter-spacing:.05em;color:var(--faint);border:1px solid var(--rule);padding:0 .25rem;margin-left:.4rem}.empty{color:var(--muted);font-style:italic;margin-top:2rem}.login{max-width:380px;margin:18vh auto;padding:0 1.5rem;font-family:var(--serif)}.login h1{font-size:1.5rem;border-bottom:2px solid var(--ink);padding-bottom:.4rem}.login p{color:var(--muted);font-size:.95rem}.login input{width:100%;font-size:1.05rem;padding:.5rem .25rem;border:none;border-bottom:2px solid var(--ink);background:transparent;outline:none;font-family:var(--serif)}.login button{margin-top:1rem;font-family:var(--sans);font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;border:1px solid var(--ink);background:var(--ink);color:var(--bg);padding:.5rem 1rem;cursor:pointer}.login .ok{color:var(--accent)}.login .err{color:#9a2b2b;font-size:.85rem}