/*
 * $Id: tmu.css,v 1.129 2025/12/10 15:02:17 jjc Exp jjc $
 */
/* general rules:
 *
 * avoid padding-right padding-bottom in favour of padding-left padding-top
 * - except maybe for padding-right after italic text
 * use \2009 thin space for padding around added content
 * (e.g. xref) label is on parent div's before; padding on div.v
 *
 * Unresolved
 *
 * extra hide infls when all hypothetical (Q.)
 * spacing before altrs inside infls (qajaq)
 * pronunciation icon shouldn't be block level in run-on (quiet)
 * run-on part of speech spacing inconsistent with main pofs (quietism)
 * multiple cross-references should be blocks (quilting bee)
 * spacing odd in multiple alternate list (quiltwork)
 */

/* globals */
body {
  --tmu-red: #DD3433;
  --tmu-space1: min(6px,  1vw,   0.75vh);
  --tmu-space2: min(12px, 1vw,   1.5vh);
  --tmu-space3: min(18px, 1.5vw, 2.25vh);
  --tmu-space4: min(24px, 2vw,   3vh);
  --tmu-body-type: 14px;
  --indent: 1em;
  --char-double-right-arrow: "\2009\21d2\2009";
  --char-manicule: "\2009\261e\2009";

  /* sprites */
   --svg-thumb-up-on: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgaWQ9InRodW1iX3VwIiBjbGlwLXBhdGg9InVybCgjY2xpcDBfMTA1Nl8zOTE3KSI+CjxwYXRoIGlkPSJWZWN0b3IiIGQ9Ik0wLjgzMzI1MiAxNy41SDQuMTY2NThWNy40OTk5OUgwLjgzMzI1MlYxNy41Wk0xOS4xNjY2IDguMzMzMzNDMTkuMTY2NiA3LjQxNjY2IDE4LjQxNjYgNi42NjY2NiAxNy40OTk5IDYuNjY2NjZIMTIuMjQxNkwxMy4wMzMzIDIuODU4MzNMMTMuMDU4MyAyLjU5MTY2QzEzLjA1ODMgMi4yNDk5OSAxMi45MTY2IDEuOTMzMzMgMTIuNjkxNiAxLjcwODMzTDExLjgwODMgMC44MzMzMjhMNi4zMjQ5MiA2LjMyNUM2LjAxNjU4IDYuNjI0OTkgNS44MzMyNSA3LjA0MTY2IDUuODMzMjUgNy40OTk5OVYxNS44MzMzQzUuODMzMjUgMTYuNzUgNi41ODMyNSAxNy41IDcuNDk5OTIgMTcuNUgxNC45OTk5QzE1LjY5MTYgMTcuNSAxNi4yODMzIDE3LjA4MzMgMTYuNTMzMyAxNi40ODMzTDE5LjA0OTkgMTAuNjA4M0MxOS4xMjQ5IDEwLjQxNjcgMTkuMTY2NiAxMC4yMTY3IDE5LjE2NjYgOS45OTk5OVY4LjMzMzMzWiIgZmlsbD0iIzBBNEVGRiIvPgo8L2c+CjxkZWZzPgo8Y2xpcFBhdGggaWQ9ImNsaXAwXzEwNTZfMzkxNyI+CjxyZWN0IHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K");
   --svg-thumb-up-off: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgaWQ9InRodW1iX3VwX29mZl9hbHQiIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8xMDU2XzM5NDgpIj4KPHBhdGggaWQ9IlZlY3RvciIgZD0iTTEwLjkyNTEgNC43NjY2NkwxMC40NTAxIDcuMTc0OTlDMTAuMzUwMSA3LjY2NjY2IDEwLjQ4MzQgOC4xNzQ5OSAxMC44MDAxIDguNTU4MzJDMTEuMTE2NyA4Ljk0MTY2IDExLjU4MzQgOS4xNjY2NiAxMi4wODM0IDkuMTY2NjZIMTYuNjY2N1YxMC4wNjY3TDE0LjUyNTEgMTVINy43ODM0MkM3LjYzMzQyIDE1IDcuNTAwMDggMTQuODY2NyA3LjUwMDA4IDE0LjcxNjdWOC4xODMzMkwxMC45MjUxIDQuNzY2NjZaTTExLjY2NjcgMS42NjY2Nkw2LjMyNTA4IDcuMDA4MzJDNi4wMDg0MiA3LjMyNDk5IDUuODMzNDIgNy43NDk5OSA1LjgzMzQyIDguMTkxNjZWMTQuNzE2N0M1LjgzMzQyIDE1Ljc5MTcgNi43MDg0MiAxNi42NjY3IDcuNzgzNDIgMTYuNjY2N0gxNC41MzM0QzE1LjEyNTEgMTYuNjY2NyAxNS42NjY3IDE2LjM1ODMgMTUuOTY2NyAxNS44NTgzTDE4LjE5MTcgMTAuNzMzM0MxOC4yODM0IDEwLjUyNSAxOC4zMzM0IDEwLjMgMTguMzMzNCAxMC4wNjY3VjkuMTY2NjZDMTguMzMzNCA4LjI0OTk5IDE3LjU4MzQgNy40OTk5OSAxNi42NjY3IDcuNDk5OTlIMTIuMDgzNEwxMi44NTAxIDMuNjI0OTlDMTIuODkxNyAzLjQ0MTY2IDEyLjg2NjcgMy4yNDE2NiAxMi43ODM0IDMuMDc0OTlDMTIuNTkxNyAyLjY5OTk5IDEyLjM1MDEgMi4zNTgzMiAxMi4wNTAxIDIuMDU4MzJMMTEuNjY2NyAxLjY2NjY2Wk0zLjMzMzQxIDcuNDk5OTlIMS42NjY3NVYxNi42NjY3SDMuMzMzNDFDMy43OTE3NSAxNi42NjY3IDQuMTY2NzUgMTYuMjkxNyA0LjE2Njc1IDE1LjgzMzNWOC4zMzMzMkM0LjE2Njc1IDcuODc0OTkgMy43OTE3NSA3LjQ5OTk5IDMuMzMzNDEgNy40OTk5OVoiIGZpbGw9IiMwQTRFRkYiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8xMDU2XzM5NDgiPgo8cmVjdCB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==");
   --svg-star-filled: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgaWQ9InN0YXJfcHVycGxlNTAwIiBjbGlwLXBhdGg9InVybCgjY2xpcDBfMTA1Nl8zOTg5KSI+CjxwYXRoIGlkPSJWZWN0b3IiIGQ9Ik0xMiAxNy4yN0wxOC4xOCAyMUwxNi41NCAxMy45N0wyMiA5LjI0TDE0LjgxIDguNjNMMTIgMkw5LjE5IDguNjNMMiA5LjI0TDcuNDYgMTMuOTdMNS44MiAyMUwxMiAxNy4yN1oiIGZpbGw9IiMxMjU3RUIiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8xMDU2XzM5ODkiPgo8cmVjdCB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==");
   --svg-star-open: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgaWQ9InN0YXJfYm9yZGVyX3B1cnBsZTUwMCIgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzk3N18xODkpIj4KPHJlY3Qgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0IiBmaWxsPSJ3aGl0ZSIvPgo8cGF0aCBpZD0iVmVjdG9yIiBkPSJNMjIgOS4yNEwxNC44MSA4LjYyTDEyIDJMOS4xOSA4LjYzTDIgOS4yNEw3LjQ2IDEzLjk3TDUuODIgMjFMMTIgMTcuMjdMMTguMTggMjFMMTYuNTUgMTMuOTdMMjIgOS4yNFpNMTIgMTUuNEw4LjI0IDE3LjY3TDkuMjQgMTMuMzlMNS45MiAxMC41MUwxMC4zIDEwLjEzTDEyIDYuMUwxMy43MSAxMC4xNEwxOC4wOSAxMC41MkwxNC43NyAxMy40TDE1Ljc3IDE3LjY4TDEyIDE1LjRaIiBmaWxsPSIjNEE1MzU5Ii8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDBfOTc3XzE4OSI+CjxyZWN0IHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K");
   --svg-comment: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgaWQ9Im1vZGVfY29tbWVudCIgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzEwNTZfNDA3MykiPgo8cGF0aCBpZD0iVmVjdG9yIiBkPSJNMTYuNjY2NyAxNC4zMDgzTDE1LjY5MTcgMTMuMzMzM0gzLjMzMzQxVjMuMzMzMjlIMTYuNjY2N1YxNC4zMDgzWk0xNi42NjY3IDEuNjY2NjNIMy4zMzM0MUMyLjQxNjc1IDEuNjY2NjMgMS42NjY3NSAyLjQxNjYzIDEuNjY2NzUgMy4zMzMyOVYxMy4zMzMzQzEuNjY2NzUgMTQuMjUgMi40MTY3NSAxNSAzLjMzMzQxIDE1SDE1LjAwMDFMMTguMzMzNCAxOC4zMzMzVjMuMzMzMjlDMTguMzMzNCAyLjQxNjYzIDE3LjU4MzQgMS42NjY2MyAxNi42NjY3IDEuNjY2NjNaIiBmaWxsPSIjNjE2MTYxIi8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDBfMTA1Nl80MDczIj4KPHJlY3Qgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=");

  background: #FAF9F7;
  max-width: initial;
  }
div.button {
  cursor: pointer;
  }

div.body {
  background: #F2F2F2;
  }

/* hide regular header */
body > div.header {
  display: none;
  }

div.navbar {
  border-bottom: var(--tmu-space1) solid #e9eefd;
  gap: 1em;
  justify-content: space-between;
  background: white;
  margin-bottom: 1em;
  }

div.nearbys {
  display: block;
  }

div.homeButton::before  { content: "Home"; }
div.aboutButton::before { content: "About"; }
div.blogButton::before  { content: "Blog"; }
div.loginButton::before { content: "Login"; }

div.homeButton::before,
div.aboutButton::before,
div.blogButton::before,
div.loginButton::before {
  text-decoration: underline;
  }
  
div.homeButton  { flex: 1 0 0; text-align: right; }

div.homeButton,
div.aboutButton,
div.blogButton,
div.loginButton { align-self: flex-start; padding-top: 1em;}

div.lemm { /* Figma Frame 52 */
  display: flex; 
  flex-direction: column;
  align-items: flex-start;
  gap: var(--tmu-space2);
  align-self: stretch;

  overflow: hidden;
  border-radius: var(--tmu-space2);
  background: #FFF;

  /* elevated L */
  box-shadow: 0px -2px 16.6px 0px rgba(0, 0, 0, 0.06);

  }

div.lemmaTop { /* Figma Frame 68 */
  display: flex;
  flex-wrap: wrap;
  padding: 8px 24px;
  align-items: center;
  /* gap: 12px; */
  align-self: stretch;

  background: #D2EAFC;
  background: linear-gradient(90deg, rgba(3, 121, 229, 0.20) 5.5%, rgba(255, 255, 255, 0.00) 69.5%), #D2EDFA;
  }

div.lemmaTop > div.v { /* Figma Frame 69 */
  /* layout */
  /*
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 10px;
  flex: 1 0 0; 
  */
  display: block;
  color: #000;
  /* typography */
  font-family: "Noto Serif";
  font-size: 36px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  letter-spacing: 0.72px;
  }

div.sdef {
  width: 100%;
  }

div.entr {
  display: flex;
  flex-direction: column;
  gap: var(--tmu-space4);
  }

/* if entry has Canadian content */
div.entr:has(div.dftg[data-v~="Canadian"]) div.lemmaTop > div.v::after {
  flex: 0 0 1em;
  background-image: var(--svg-maple-leaf);
  background-size: 1em 1em;
  background-repeat: no-repeat;
  background-position-y: 0.2em;
  content: "";
  height: 1.3em;
  }

div.hseq, /* div.ityp, */ div.entr > div.v { display: none; }

/* lemmaBot */

div.lemmaBot {
  /*
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  */
  display: block; /* 2025-12-06 */
  width: 100%;
  padding: var(--tmu-space2);
  /* if we omit border-box, this element ends up too big by 2*tmu-space2 */
  box-sizing: border-box;
  }

/* lemmaBot immediate children that are flex */

div.lemmaBot > div.infls,
div.lemmaBot div.likeWidget,
div.lemmaBot div.runo,
div.lemmaBot div.stat,
div.lemmaBot > div.pron {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end; /* i.e., toward the bottom of each row */
  align-items: baseline; /* 2025-12-05 */
  gap: 0px var(--tmu-space2);
  }
div.lemmaBot div.likeWidget {
  gap: 0px var(--tmu-space1);
  padding-bottom: var(--tmu-space2);
  }
div.lemmaBot div.stat {
  gap: 0px var(--tmu-space1);
  padding-right: var(--tmu-space1);
  box-sizing: border-box;
  }
div.lemmaBot div.infls {
  gap: 0px 0px;
  }

/* lemmaBot immediate children that are full-width including padding on both sides */
div.lemmaBot > div.ltag,
div.lemmaBot div.xref,
div.lemmaBot div.commentWidget,
div.lemmaBot > div.likeWidget,
div.lemmaBot > div.pron,
div.lemmaBot > div.runo,
div.lemmaBot > div.defns {
  width: calc(100% - 2 * var(--tmu-space2));
  }
/* lemmaBot immediate children that are full-width including padding on both sides and one indent */
div.lemmaBot > div.runo > div.likeWidget,
div.lemmaBot > div.runo > div.pron,
div.lemmaBot > div.runo > div.defn {
  width: calc(100% - 3 * var(--tmu-space2));
  }

/* editorial status boxes - not part of TMU design but cannot be hidden */
div.stat {
  font-size: 50%;
  padding-bottom: var(--tmu-space2);
  }
div.stat > div {
  border: 1px solid #808080;
  padding: var(--tmu-space1);
  }

/* structure and widget labels */
div.altr:first-child::before,
div.altr:last-child::after,
div.defn div.xref::before,
div.defn div.altr::after,
div.defn div.altr::before,
div.sdef,
div.saveLabel,
div.shareLabel,
div.lemmaBot > div.etyps::before,
div.dftg::before,
div.defn::before,
div.exmp::before,
div.pron > div.v::before,
div.pron > div.v::after { 
  color: #4C4C4C;
  font-family: "Lato";
  font-size: var(--tmu-body-type);
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.28px;
  }

/* small widget text (counts, labels) */
/* TODO: check to see why we need small and large */
input.adcoSubmit,
textarea.adcoInput,
div.adcoPane,
div.addComment,
div.viewCommentsCount,
div.viewCommentsLabel,
div.likeCount {
  color: #000;
  font-family: "Lato";
  font-size: 12px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.24px;
  }

/* roman serif body type */
div.xlat,
div.xshd,
div.etyn,
div.xref > div.v,
div.altr > div.v,
div.defn > div.v,
div.exmp > div.v,
div.pron > div.v { 
  color: black;
  font-family: "Noto Serif";
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.28px;
  }

/* italic serif body type */
div.orig,
div.lang,
div.pofs > div.v,
div.dftg {
  color: black;
  font-family: "Noto Serif";
  font-size: 14px;
  font-style: italic;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.28px;
  }

/* alternates */
div.altrs div {
  display: inline;
  }
div.altrs > div.altr:first-child {
  padding-left: 0; /* accounted for in div.altrs */
  }
div.altr:first-child::before {
  content: "(Also";
  }
div.altr:last-child::after {
  content: ")";
  }
div.altr {
  /* display: flex; */
  padding-right: var(--tmu-space2);
  align-items: flex-end;
  }
div.altrs div.altr > div.v {
  padding-left: var(--tmu-space1);
  }
div.altr:last-child {
  padding-right: 0;
  }
div.altr:has(+ div.altr)::after { 
  content: "; ";
  }
/* Nested alternates */
div.altrs div.altrs { 
  display: inline-flex;
  }
div.altrs div.altrs div.altr:first-child::before {
  content: "(";
  padding-left: var(--tmu-space1);
  padding-right: 0;
  }
div.altrs div.altrs div.altr:first-child > div.v {
  padding-left: 0;
  }
div.altrs div.altrs div.altr:first-child::after {
  padding-right: 0;
  }
/* lemma-level alternates */
div.lemmaBot > div.altrs {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end; /* i.e., toward the bottom of each row */
  align-items: baseline; /* 2025-12-05 */
  gap: 0px 0px;
  }
/* definition-level alternates */
div.defn div.altrs { 
  display: inline-flex;
  }
div.defn > div.altrs + div.v { /* space before definition when preceded by (alternates) */
  padding-left: var(--tmu-space1);
  }

div.dftg {
  flex: 0 0 1em;
  /* padding-left: var(--tmu-space1); padding-right: var(--tmu-space1); */ /* 2025-11-06 */
  }
div.dftg + div.dftg {
  padding-left: 0;
  }

div.dftg[data-v~="Canadian"] div.v {
  display: none;
  }
div.dftg[data-v~="Canadian"]::after {
  background-image: var(--svg-maple-leaf);
  background-size: 1em 1em;
  background-repeat: no-repeat;
  background-position-y: 0.2em;
  content: "";
  display: inline-block;
  height: 1.3em;
  width: 1em;
  }


div.pronWidget {
  flex: 0 0 1em;
  background-image: var(--svg-volume-up);
  background-repeat: no-repeat;
  background-size: 1em 1em;
  background-position-y: 0.0em;
  height: 1em;
  width: 1em;
  padding-right: var(--tmu-space1);
  }
div.altr div.pronWidget {
  margin-left: var(--tmu-space1);
  display: inline-block;
  }

div.pron:not(div.pron + div.pron) div.saveButton {
  flex: 0 0 1em;
  background-image: var(--svg-star-open);
  background-repeat: no-repeat;
  background-size: 1em 1em;
  background-position-y: 0.1em;
  height: 1em;
  }
div.pron:not(div.pron + div.pron) div.saveButton.on {
  background-image: var(--svg-star-filled);
  }

div.pron:not(div.pron + div.pron) div.saveLabel {
  display: block;
  }

div.pron:not(div.pron + div.pron) div.shareLabel,
div.pron:not(div.pron + div.pron) div.saveLabel {
  margin-left: calc(0px - var(--tmu-space1));
  }

div.pron:not(div.pron + div.pron) div.saveLabel {
  padding-right: var(--tmu-space2);
  }

div.pron:not(div.pron + div.pron) div.shareWidget {
  flex: 0 0 1em;
  background-image: var(--svg-share);
  background-repeat: no-repeat;
  background-size: 1em 1em;
  background-position-y: 0.1em;
  height: 1em;
  }

div.pron:not(div.pron + div.pron) div.shareLabel::before {
  content: "Share";
  }

div.pron > div.v {
  flex-grow: 1;
  }

div.pron > div.v::before { /* Figma Frame 42 */
  content: "Pronunciation: / ";
  }
div.altr div.pron > div.v::before {
  content: " / ";
  }
div.pron > div.v::after { /* Figma Frame 42 */
  content: " /";
  }

/* definitions */
div.lemmaBot > div.defns, 
div.lemmaBot > div.runo {
  counter-reset: definition;
  }
div.defns {
  padding-top: var(--tmu-space1);
  }
div.defn {
  counter-increment: definition;
  padding-top: var(--tmu-space1);
  }
div.defn::before { 
  content: "Definition " counter(definition) ":";
  display: inline;
  }
div.defn div {
  display: inline;
  padding-left: var(--tmu-space1);
  }
div.defn div.dftg {
  padding-left: 0;
  }
div.defn div.defn { /* nested definitions */
  padding-left: var(--indent);
  }

div.exmp { 
  padding-top: var(--tmu-space1);
  }

div.exmp::before { 
  content: "Example: ";
  }
div.defn div.xref,
div.defn div.exmp {
  display: block;
  padding-left: var(--tmu-space2);
  }

div.infls {
  width: calc(100% - 2 * var(--tmu-space2));
  }

div.dftg > div.v {
  white-space: nowrap;
  }
/* make all descendants inline, so that they wrap properly */
div.xref div,
div.lemmaBot div.altr div.infls,
div.exmp div {
  display: inline;
  }

div.defn div.xref::before {
  content: "See";
  font-variant: small-caps;
  }

div.xshd::before {
  content: " [";
  }  
div.xshd::after {
  content: "]";
  }  

/* hack to insert line breaks before some elements */
div.hyph::before,
div.likeWidget::before,
div.runo::before {
  display: block;
  width: 100vw;
  height: 0;
  content: " ";
  }

/* inflections */
div.infl { 
  display: inline-block;
  }
div.infl > div.v {
  white-space: nowrap;
  /* typography */
  color: #191919;
  font-family: "Noto Serif";
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  letter-spacing: 0.28px;
  padding-left: var(--tmu-space1);
  }
div.infl div {
  display: inline-block;
  font-size: var(--tmu-body-type);
  }
div.infl:not(:last-child)::after {
  content: ",\2009";
  }
div.ityp {
  font-style: oblique;
  }
div.infl:has(> div.itag[data-v="hypothetical"]) {
  display: none;
  }

div.likeButton {
  flex: 0 0 1em;
  background-image: var(--svg-thumb-up-off);
  background-repeat: no-repeat;
  background-size: 1em 1em;
  background-position-y: 0.1em;
  height: 1em;
  }

div.likeButton.on {
  background-image: var(--svg-thumb-up-on);
  }

div.likeCount {
  display: block;
  }

div.runo > div.v,
div.hyph > div.v { /* Figma Frame 43 */
  color: #191919;
  font-family: "Noto Serif";
  font-size: 18px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  letter-spacing: 0.36px;
  padding-right: var(--tmu-space1);

  padding-top: var(--tmu-space2);
  }

/* Part of speech */
div.pofs[data-v="adj"]::before { content: "adjective"; }
div.pofs[data-v="adv"]::before { content: "adverb"; }
div.pofs[data-v="interj"]::before { content: "interjection"; }
div.pofs[data-v="n"]::before { content: "noun"; }
div.pofs[data-v="v"]::before { content: "verb"; }

div.pofs[data-v="adj"]::before,
div.pofs[data-v="adv"]::before,
div.pofs[data-v="interj"]::before,
div.pofs[data-v="n"]::before,
div.pofs[data-v="v"]::before {
  color: var(--tmu-red);
  font-family: "Noto Serif";
  font-size: 14px;
  font-style: italic;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.28px;
  }
div.pofs[data-v="adj"] > div.v,
div.pofs[data-v="adv"] > div.v,
div.pofs[data-v="interj"] > div.v,
div.pofs[data-v="n"] > div.v,
div.pofs[data-v="v"] > div.v { display: none; }

/* etymology */

div.lemmaBot > div.etyps {
  margin-top: var(--tmu-space2);
  display: block;
  }
div.lemmaBot > div.etyps div {
  display: inline;
  }
div.etyp + div.etyp > div.v, div.lang, div.orig, div.xlat {
  padding-left: var(--tmu-space1);
  }
div.lemmaBot > div.etyps::before { 
  content: "Etymology: ";
  }
div.lemmaBot div.etyps > div.etyp + div.etyp > div.v::before { 
  content: "+";
  padding-right: var(--tmu-space1);
  font-weight: 700;
  color: var(--tmu-red);
  }
div.lemmaBot div.etys + div.etys::before { 
  content: "; ";
  font-weight: 700;
  color: var(--tmu-red);
  }

div.etys,
div.etyp {
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
  gap: var(--tmu-space1);
  }
div.lemmaBot div.etyps > div.etyp div.etyc {
  display: none;
  }

/* usage note */
div.usag {
  margin-top: var(--tmu-space2);
  }

/* some secondary elements with tighter leading */
div.exmp,
div.etyp {
  line-height: 1.2;
  }

div.etyn::before {
  content: " (";
  }
div.etyn::after {
  content: ")";
  }
div.etxy[data-v="see also"] div.v,
div.etxy[data-v="continued at"] div.v {
  display: none;
  }
div.etxy[data-v="continued at"]::before {
  content: "\2009\21d2\2009"; /* double right arrow */
  }
div.etxy[data-v="see also"]::before {
  content: "\2009\261e\2009"; /* manicule */
  }

div.commentWidget {
  padding-top: var(--tmu-space2);
  }
div.commentWidget div.viewCommentsButton {
  display: flex;
  align-items: flex-end; /* i.e., toward the bottom of each row */
  gap: var(--tmu-space1);
  }
div.commentWidget div.viewCommentsIcon {
  flex: 0 0 1em;
  background-image: var(--svg-comment);
  background-size: 1em 1em;
  background-repeat: no-repeat;
  background-position-y: 0.2em;
  content: "";
  width: 1em;
  height: 1.1em;
  }
div.commentWidget div.viewCommentsCount {
  }
div.commentWidget div.viewCommentsLabel {
  white-space: nowrap;
  }

div.lemm.showAddComment + div.adcoPane {
  display: flex;
  padding: var(--tmu-space2) var(--tmu-space3);
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: var(--tmu-space2);
  align-self: stretch;

  border-radius: 8px;
  border: 1px solid #1257eb;
  background: #fbfbfb;
  box-shadow: -4px 7px 0px 0px #e4e4f8;
  }

div.adcoTop {
  display: flex;
  justify-content: space-between;
  width: 100%;
  }

div.adcoClose::before {
  content: "x";
  }

div.adcoInput {
  width: 100%; /* so textarea knows how big to get */
  }

textarea.adcoInput {
  width: 100%;
  }

input.adcoSubmit {
  color: white;
  border-radius: 6px;
  background: #0A4EFF;
  }

div.lemmaBot > div.xref {
  display: inline;
  }
div.lemmaBot > div.xref::before {
  content: "See";
  font-variant: small-caps;
  }
div.lemmaBot > div.xref > div.v {
  padding-left: var(--tmu-space1);
  }
div.lemmaBot > div.xref > div.xtyp[data-v="synonym"],
div.lemmaBot > div.xref > div.xtyp[data-v="found in"] {
  display: none;
  }
div.lemmaBot > div.xref:has(> div.xtyp[data-v="found in"])::before {
  content: var(--char-manicule);
  }
div.lemmaBot > div.xref:has(> div.xtyp[data-v="synonym"])::before {
  content: var(--char-double-right-arrow);
  }

div.altr div.infl { /* 2025-11-05 Q. changed from infls to infl */
  padding-left: var(--tmu-space1);
  }

/* important features not yet in TMU design */
div.defn div.xaut,
div.defn div.xtit,
div.defn div.xyea,
div.spec,
div.google_button,
div.account {
  display: none;
}

/* lemma tags (currently only Abbreviation) */
div.ltag {
  font-size: var(--tmu-body-type);
  font-style: oblique;
  padding-bottom: var(--tmu-space2);
  }

/* 2025-11-19 unimplemented features disabled */
div.lemmaBot div.pron div.saveButton,
div.entr div.lemm div.lemmaBot div.pron div.saveLabel,
div.lemmaBot div.pron div.shareWidget,
div.lemmaBot div.pron div.shareLabel,
div.history div.reportIssue,
div.history div.searches,
div.history div.nearbys,
div.main div.likeWidget,
div.history div.likeWidget { display: none; }

div.homeButton::before {
  content: "Not all features may work in this development version of this webpage.";
  font-size: 2vw;
  text-decoration: none;
  }
div.aboutButton::before ,
div.blogButton::before  ,
div.loginButton::before { content: ""; }
