
:root{--bg:#fbfaf7;--panel:#f3f1ea;--ink:#1d1d1b;--mute:#6b6a64;--line:#e2dfd5;--link:#1f5fa8;--chg:#965f15;--track:#cfcabd;
--pinbg:#e6eef8;--pinline:#c4d5ea;--reg:#23784a;--form:#7247ae;--hl:#f7e7a0;--hlink:#c49a1c;--gd:#a83a3a;--bar:56px;
--serif:"Iowan Old Style","Charter",Georgia,serif;--sans:system-ui,-apple-system,"Segoe UI",sans-serif}
@media (prefers-color-scheme:dark){:root{--bg:#161614;--panel:#1f1f1c;--ink:#e8e6df;--mute:#9a988f;--line:#33322d;--link:#7fb0ea;--chg:#e0a24a;
--track:#4a4842;--pinbg:#1d2a3a;--pinline:#2f4560;--reg:#62c48d;--form:#b59ce9;--hl:#5a4b17;--hlink:#d9b43c;--gd:#ee8f8f}}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.6 var(--serif);font-variant-numeric:tabular-nums}
a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}
kbd{font:600 10px/1 var(--sans);padding:3px 5px;border:1px solid var(--line);border-radius:4px;color:var(--mute);background:var(--bg)}


#bar{position:fixed;top:0;left:0;right:0;z-index:7;height:var(--bar);display:flex;align-items:center;gap:20px;padding:0 16px;
background:var(--bg);border-bottom:1px solid var(--line);font-family:var(--sans)}
.logo{font:600 17px var(--serif);color:var(--ink);white-space:nowrap}.logo span{color:var(--mute)}.logo:hover{text-decoration:none}
.acct{margin-left:auto;display:flex;align-items:center;gap:10px;font-size:12.5px;color:var(--mute);white-space:nowrap}
.acct form{margin:0}
.acct button,.acct .signin{font:600 13px var(--sans);padding:6px 14px;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--ink);cursor:pointer}
.acct .signin{background:var(--ink);color:var(--bg);border-color:var(--ink)}.acct .signin:hover{text-decoration:none;opacity:.9}
@media (max-width:700px){#bar{gap:10px;padding:0 12px}.acct span,.acct a:not(.signin){display:none}.logo{font-size:0}.logo span{font-size:20px}
.acct .signin{padding:6px 12px}form.search input{padding-right:14px;text-overflow:ellipsis}form.search>kbd{display:none}}


form.search{position:relative;flex:1;max-width:44rem;margin:0}
form.search input{width:100%;font:16px var(--sans);padding:9px 40px 9px 14px;border:1px solid var(--line);border-radius:10px;
background:var(--panel);color:var(--ink);outline:none;-webkit-appearance:none;appearance:none}
form.search input:focus{border-color:var(--link);background:var(--bg)}
form.search input::-webkit-search-cancel-button{display:none}
form.search > kbd{position:absolute;right:12px;top:50%;transform:translateY(-50%);pointer-events:none}
form.search input:focus + kbd{display:none}
.sugg{position:absolute;left:0;right:0;top:calc(100% + 6px);margin:0;padding:6px;list-style:none;background:var(--bg);
border:1px solid var(--line);border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.12);max-height:70dvh;overflow-y:auto}
.sugg[hidden]{display:none}
.sugg a,.results a{display:flex;gap:10px;align-items:flex-start;padding:8px 10px;border-radius:8px;color:var(--ink);text-decoration:none}
.sugg a.on,.sugg a:hover,.results a:hover{background:var(--panel)}
.sugg .all a{justify-content:space-between;color:var(--mute);font-size:13px;border-top:1px solid var(--line);border-radius:0 0 8px 8px;margin-top:4px}
.sugg .all b{color:var(--ink)}
.hit{min-width:0;font:14px/1.4 var(--sans)}
.hit b{font-weight:600;margin-right:4px}
.hit small{display:block;margin-top:2px;color:var(--mute);font-size:12.5px;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hit mark{background:none;color:inherit;font-weight:700}
.kind{--c:var(--link);flex:none;margin-top:2px;font:700 9.5px/1 var(--sans);text-transform:uppercase;letter-spacing:.06em;
padding:4px 0;border-radius:4px;width:64px;text-align:center;color:color-mix(in srgb,var(--c) 80%,var(--ink));
background:color-mix(in srgb,var(--c) 14%,transparent)}
.kind.reg{--c:var(--reg)}.kind.gd{--c:var(--gd)}.kind.act,.kind.prop{--c:var(--chg)}.kind.dive{--c:var(--mute)}


.page{max-width:46rem;margin:0 auto;padding:calc(var(--bar) + 28px) 16px 80px}
#count{font:14px var(--sans);color:var(--mute);margin:0 0 12px}
.results{list-style:none;margin:0;padding:0}
.results .hit small{white-space:normal;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.hero{text-align:center;padding:26vh 0 0}
.home #bar{border-bottom:0;background:none}
.hero h1{font:600 52px/1.15 var(--serif);margin:0 0 28px}.hero h1 span{color:var(--mute)}
.hero p{font:16px/1.5 var(--sans);color:var(--mute);margin:0 auto 28px;max-width:34rem}
.hero form.search{max-width:none;text-align:left}
.hero form.search input{font-size:19px;padding:15px 48px 15px 18px;border-radius:14px}
@media (max-width:700px){.hero h1{font-size:44px}.results a{flex-direction:column;gap:4px}.results .kind{margin:0}}
