
:root{
  --paper:#f7f1e3; --paper-2:#efe6d2; --ink:#2b2118; --ink-soft:#6b5d4b;
  --line:#d9ccb0; --accent:#a8431f; --accent-2:#1f5e54; --card:#fffdf7;
  --tig:#1f3b54;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0; background:var(--paper);
  background-image:radial-gradient(circle at 20% -10%, #fffaf0 0, rgba(255,250,240,0) 45%),
                   radial-gradient(circle at 100% 0, #f0e7d3 0, rgba(240,231,211,0) 40%);
  color:var(--ink);
  font-family:"Newsreader","Iowan Old Style",Georgia,serif;
  font-size:18px; line-height:1.55; -webkit-font-smoothing:antialiased;
}
.wrap{max-width:980px; margin:0 auto; padding:0 22px}
a{color:var(--accent); text-underline-offset:3px; text-decoration-thickness:1px}
a:hover{color:var(--accent-2)}
header.site{
  border-bottom:2px solid var(--ink); margin-bottom:8px;
  padding:30px 0 18px; position:relative;
}
.kicker{
  font:600 13px/1 "Newsreader",serif; letter-spacing:.22em; text-transform:uppercase;
  color:var(--accent); margin:0 0 10px;
}
h1.title{
  font-family:"Fraunces","Newsreader",serif; font-weight:600;
  font-size:clamp(34px,6vw,58px); line-height:1.02; margin:0 0 6px;
  letter-spacing:-.01em;
}
h1.title .ge{font-family:"Noto Serif Ethiopic","Noto Sans Ethiopic",serif; font-weight:600}
.sub{color:var(--ink-soft); font-size:18px; margin:6px 0 0; max-width:64ch}
.tag{
  display:inline-block; font:600 12px/1 "Newsreader",serif; letter-spacing:.12em;
  text-transform:uppercase; color:var(--ink-soft);
  border:1px solid var(--line); border-radius:999px; padding:6px 11px; margin:14px 8px 0 0;
}
.note{
  background:var(--card); border:1px solid var(--line); border-left:4px solid var(--accent-2);
  padding:14px 18px; border-radius:6px; margin:22px 0; font-size:16.5px; color:var(--ink-soft);
}
.note strong{color:var(--ink)}
.search-box{margin:26px 0 8px}
#q{
  width:100%; font-family:inherit; font-size:20px; color:var(--ink);
  background:var(--card); border:1.5px solid var(--ink); border-radius:10px;
  padding:15px 18px; outline:none;
}
#q:focus{border-color:var(--accent); box-shadow:0 0 0 3px rgba(168,67,31,.13)}
.count{color:var(--ink-soft); font-size:15px; margin:10px 2px 0}
table.dict{width:100%; border-collapse:collapse; margin:14px 0 8px}
table.dict th{
  text-align:left; font:600 12px/1 "Newsreader",serif; letter-spacing:.14em;
  text-transform:uppercase; color:var(--ink-soft);
  border-bottom:2px solid var(--ink); padding:0 14px 9px;
}
table.dict td{
  border-bottom:1px solid var(--line); padding:13px 14px; vertical-align:top;
}
table.dict tr:target td{background:#fff4d8}
table.dict tr:hover td{background:#fffaf0}
.tig{
  font-family:"Noto Serif Ethiopic","Noto Sans Ethiopic",serif;
  font-size:21px; color:var(--tig); white-space:normal; width:42%;
}
.eng{font-size:18px}
.eng .v{color:var(--ink)}
.eng .sep{color:var(--line); padding:0 7px}
.more{color:var(--ink-soft); font-style:italic; font-size:15px}
nav.pager{
  display:flex; align-items:center; justify-content:space-between; gap:14px;
  margin:26px 0; padding:16px 0; border-top:1px solid var(--line);
  font-size:16px;
}
nav.pager .mid{color:var(--ink-soft)}
nav.pager a{font-weight:600}
nav.pager .disabled{color:var(--line); pointer-events:none}
.browse{margin:30px 0}
.browse h2{font-family:"Fraunces",serif; font-weight:600; font-size:24px; margin:0 0 12px}
.pagelinks{
  display:grid; grid-template-columns:repeat(auto-fill,minmax(82px,1fr)); gap:7px;
}
.pagelinks a{
  text-align:center; background:var(--card); border:1px solid var(--line); border-radius:7px;
  padding:9px 4px; font-size:14px; text-decoration:none; color:var(--ink);
}
.pagelinks a:hover{border-color:var(--accent); color:var(--accent)}
footer.site{
  border-top:2px solid var(--ink); margin-top:40px; padding:22px 0 60px;
  color:var(--ink-soft); font-size:15px;
}
footer.site a{color:var(--accent)}
.hide{display:none}
@media(max-width:640px){
  body{font-size:17px}
  .tig{font-size:19px; width:46%}
  table.dict td{padding:11px 9px}
}
