/* =====================================================================
   LooseMap — bullet list styles for the blog content editor (Quill 2)
   and for how blog content is shown on the public site.

   Quill 2 saves bullet lists as  <ol><li data-list="bullet">…</li></ol>
   (with an empty <span class="ql-ui"> marker inside each <li>), and the
   chosen bullet style as a class on the <li>:  ql-liststyle-<name>.

   NOTE: every CSS escape below is written with 6 hex digits (\0000a0) so
   that the letter right after it (D, C, A …) is never swallowed.
   The check mark and diamond are drawn with CSS shapes, not font glyphs,
   so they show on every device.
   ===================================================================== */

/* ---------- 1. Toolbar dropdown ("Bullet style") ---------- */
.ql-snow .ql-picker.ql-liststyle { width: 118px; }
.ql-snow .ql-picker.ql-liststyle .ql-picker-options { width: 150px; }

.ql-snow .ql-picker.ql-liststyle .ql-picker-label::before { content: 'Bullet style'; }
.ql-snow .ql-picker.ql-liststyle .ql-picker-item::before { content: '\002022\0000a0\0000a0Disc (default)'; }

.ql-snow .ql-picker.ql-liststyle .ql-picker-label[data-value="circle"]::before,
.ql-snow .ql-picker.ql-liststyle .ql-picker-item[data-value="circle"]::before   { content: '\0025cb\0000a0\0000a0Circle'; }
.ql-snow .ql-picker.ql-liststyle .ql-picker-label[data-value="square"]::before,
.ql-snow .ql-picker.ql-liststyle .ql-picker-item[data-value="square"]::before   { content: '\0025a0\0000a0\0000a0Square'; }
.ql-snow .ql-picker.ql-liststyle .ql-picker-label[data-value="check"]::before,
.ql-snow .ql-picker.ql-liststyle .ql-picker-item[data-value="check"]::before    { content: '\00221a\0000a0\0000a0Check mark'; }
.ql-snow .ql-picker.ql-liststyle .ql-picker-label[data-value="arrow"]::before,
.ql-snow .ql-picker.ql-liststyle .ql-picker-item[data-value="arrow"]::before    { content: '\002192\0000a0\0000a0Arrow'; }
.ql-snow .ql-picker.ql-liststyle .ql-picker-label[data-value="star"]::before,
.ql-snow .ql-picker.ql-liststyle .ql-picker-item[data-value="star"]::before     { content: '\002605\0000a0\0000a0Star'; }
.ql-snow .ql-picker.ql-liststyle .ql-picker-label[data-value="diamond"]::before,
.ql-snow .ql-picker.ql-liststyle .ql-picker-item[data-value="diamond"]::before  { content: '\0025ca\0000a0\0000a0Diamond'; }
.ql-snow .ql-picker.ql-liststyle .ql-picker-label[data-value="dash"]::before,
.ql-snow .ql-picker.ql-liststyle .ql-picker-item[data-value="dash"]::before     { content: '\002013\0000a0\0000a0Dash'; }

/* ---------- 2. Bullets inside the editor ---------- */
.ql-editor li[data-list="bullet"].ql-liststyle-circle > .ql-ui::before { content: '\0025cb'; }
.ql-editor li[data-list="bullet"].ql-liststyle-square > .ql-ui::before { content: '\0025a0'; font-size: .7em; }
.ql-editor li[data-list="bullet"].ql-liststyle-arrow  > .ql-ui::before { content: '\002192'; color: #b07d1a; font-weight: 700; }
.ql-editor li[data-list="bullet"].ql-liststyle-star   > .ql-ui::before { content: '\002605'; color: #b07d1a; }
.ql-editor li[data-list="bullet"].ql-liststyle-dash   > .ql-ui::before { content: '\002013'; }

/* check mark — drawn with borders */
.ql-editor li[data-list="bullet"].ql-liststyle-check > .ql-ui::before {
    content: ''; box-sizing: content-box;
    width: .3em; height: .6em; margin: 0 .3em 0 -.78em;
    border: solid #1f7a4d; border-width: 0 2.5px 2.5px 0;
    transform: rotate(45deg) translate(-.05em, -.12em); vertical-align: middle;
}
/* diamond — a rotated square */
.ql-editor li[data-list="bullet"].ql-liststyle-diamond > .ql-ui::before {
    content: ''; box-sizing: content-box;
    width: .42em; height: .42em; margin: 0 .3em 0 -.72em;
    background: #b07d1a; transform: rotate(45deg); vertical-align: middle;
}

/* ---------- 3. Lists on the public blog page ---------- */
.eh-blog-content ol,
.eh-blog-content ul { margin: 0 0 1.2rem; padding-left: 1.6rem; }
.eh-blog-content li { margin-bottom: .4rem; padding-left: .2rem; }
.eh-blog-content li > .ql-ui { display: none; }          /* editor-only marker */

.eh-blog-content li[data-list="bullet"]  { list-style-type: disc; }
.eh-blog-content li[data-list="ordered"] { list-style-type: decimal; }

.eh-blog-content li.ql-liststyle-circle  { list-style-type: circle; }
.eh-blog-content li.ql-liststyle-square  { list-style-type: square; }
.eh-blog-content li.ql-liststyle-arrow   { list-style-type: '\002192\0000a0\0000a0'; }
.eh-blog-content li.ql-liststyle-star    { list-style-type: '\002605\0000a0\0000a0'; }
.eh-blog-content li.ql-liststyle-dash    { list-style-type: '\002013\0000a0\0000a0'; }

.eh-blog-content li.ql-liststyle-arrow::marker,
.eh-blog-content li.ql-liststyle-star::marker { color: #b07d1a; }

/* check mark + diamond: no font glyph, drawn as shapes */
.eh-blog-content li.ql-liststyle-check,
.eh-blog-content li.ql-liststyle-diamond { list-style: none; position: relative; }

.eh-blog-content li.ql-liststyle-check::before {
    content: ''; position: absolute; left: -1.3rem; top: .52em;
    width: .3em; height: .6em;
    border: solid #1f7a4d; border-width: 0 2.5px 2.5px 0;
    transform: rotate(45deg);
}
.eh-blog-content li.ql-liststyle-diamond::before {
    content: ''; position: absolute; left: -1.25rem; top: .68em;
    width: .42em; height: .42em; background: #b07d1a;
    transform: rotate(45deg);
}

/* nested lists (Quill indent) */
.eh-blog-content li > ol,
.eh-blog-content li > ul { margin: .4rem 0 0; }

/* ---------- 4. Blog page: location / categories / tags chips ---------- */
.eh-post-meta { margin-top: 2.25rem; padding-top: 1.4rem; border-top: 1px solid rgba(20,32,43,.12); display: grid; gap: .9rem; }
.eh-post-meta-row { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem .6rem; }
.eh-post-meta-label {
    display: inline-flex; align-items: center; gap: .4rem; min-width: 104px;
    font-size: .72rem; letter-spacing: .14em; text-transform: uppercase; font-weight: 700; color: #6b7480;
}
.eh-post-meta-label i { color: #b07d1a; font-size: .95rem; }
.eh-chip {
    display: inline-flex; align-items: center; padding: .34rem .85rem; border-radius: 50px;
    font-size: .84rem; font-weight: 500; line-height: 1.3; text-decoration: none; white-space: nowrap;
    background: #fff; color: var(--eh-ink, #14202b); border: 1px solid rgba(20,32,43,.16);
    transition: background .18s ease, color .18s ease, border-color .18s ease;
}
.eh-chip:hover { background: var(--eh-ink, #14202b); color: var(--eh-gold, #d4a73a); border-color: var(--eh-ink, #14202b); }
.eh-chip--place { background: var(--eh-ink, #14202b); color: #fff; border-color: var(--eh-ink, #14202b); }
.eh-chip--place:hover { background: #fff; color: var(--eh-ink, #14202b); }
.eh-chip--tag { background: #f4f1ea; border-color: transparent; }

@media (max-width: 575.98px) {
    .eh-post-meta-label { min-width: 100%; }
}