:root{
  --bg:#0c0d0f; --panel:#111214; --panel-2:#15171a;
  --text:#f5f6f7; --text-dim:#9aa3b2;
  --accent:#c7d2fe; --accent-2:#e0e7ff;
  --btn-bg:#e5e7eb; --btn-bg-hover:#f3f4f6; --btn-text:#111214; --btn-border:#2a2a2a;
  --border:#2a2a2a; --line:#1e1e1e;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0; background:var(--bg); color:var(--text);
  font-family:'Lilex', monospace, 'Inter', system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, "Helvetica Neue", Arial, sans-serif;
  line-height:1.45;
}
.container{max-width:1100px; margin:0 auto; padding:1.25rem 1.5rem}

/* Links */
a{color:var(--accent); text-decoration:none}
a:hover{color:var(--accent-2); text-decoration:underline}

/* Header */
.site-header{display:flex; align-items:center; justify-content:space-between; gap:1rem; flex-wrap:wrap}
.brand{font-weight:800; font-size:1.5rem; color:var(--accent)}
.brand:hover{color:var(--accent-2)}

/* Search (top-right only) */
.search-row{margin:0; width:100%}
.search-controls{display:flex; align-items:center; gap:.55rem; justify-content:flex-end}
.search-controls input[type="text"]{
  background:#1a1c1f; color:var(--text); border:1px solid var(--btn-border);
  border-radius:.5rem; padding:.6rem 1rem;
  width:clamp(26rem, 55vw, 56rem); max-width:100%;
  outline:none;
}
.btn{
  padding:.6rem .95rem; border-radius:.5rem; border:1px solid var(--btn-border);
  background:var(--btn-bg); color:var(--btn-text); font-weight:700; cursor:pointer;
}
.btn:hover{background:var(--btn-bg-hover)}

/* Typeahead (full width under input; no scrunch) */
.typeahead{
  display:none; list-style:none; padding:0; margin:.35rem 0 0;
  background:var(--panel); border:1px solid var(--border); border-radius:.6rem; overflow:hidden;
  width:clamp(26rem, 55vw, 56rem); max-width:100%;
}
.typeahead__empty{padding:.6rem .8rem; color:var(--text-dim)}
.typeahead__item{border-top:1px solid var(--line)}
.typeahead__item--first{border-top:none}
.typeahead__link{display:block; padding:.6rem .8rem; color:var(--text); text-decoration:none}
.typeahead__link:hover{background:var(--panel-2)}
.typeahead__line{font-weight:700}
.typeahead__pos{color:var(--text-dim); font-weight:600}
.typeahead__snip{color:#cbd5e1; font-size:.95rem; margin-top:.15rem}

/* Cards / WOTD */
.card{background:var(--panel); border:1px solid var(--border); border-radius:.9rem; padding:1rem 1.25rem}
.wotd{margin-top:1.25rem}
.wotd__title{text-transform:uppercase; color:#9ca3af; letter-spacing:.06em; font-weight:600; font-size:.9rem; margin:0 0 .5rem}
.wotd__headword{font-size:1.35rem; font-weight:800; color:#fafafa; text-decoration:none}
.wotd__headword:hover{color:#d9e0ff}
.wotd__pos{color:#b0b0b0; font-weight:600; margin-left:.35rem}
.wotd__snippet{margin-top:.35rem; color:#d1d5db; font-size:.98rem}

/* Define page */
.entry__head{display:flex; align-items:baseline; gap:.5rem; margin-bottom:.5rem}
.entry__word{margin:0; font-size:1.75rem}
.entry__pos{color:var(--text-dim); font-weight:600}
.entry__ipa{color:#cbd5e1; margin-left:.25rem}
.entry__def{white-space:pre-wrap; margin-top:.5rem}
.entry__block{margin-top:1rem}
.entry__examples{white-space:pre-wrap}

/* Footer (tiny) */
.fineprint{max-width:1100px; margin:1.25rem auto 2rem; padding:0 1.5rem; color:var(--text-dim); font-size:.85rem}

/* Mobile */
@media (max-width:640px){
  .site-header{flex-direction:column; align-items:stretch}
  .search-controls{justify-content:stretch}
  .search-controls input[type="text"]{width:100%}
  .typeahead{width:100%}
}

/* --- Fineprint footer --- */
.fineprint {
  text-align: center;
  font-size: 0.75rem;
  color: #777;
  margin-top: 4rem;
  padding: 1.5rem 0;
  border-top: 1px solid #e0e0e0;
}

.fineprint a {
  color: inherit;
  text-decoration: underline dotted;
}
