.hl-lesereise{
  --hl-ink:#383b35;--hl-muted:#777b73;--hl-line:#e5e6dc;
  --hl-accent:#8b9a69;--hl-accent-soft:#edf1e4;--hl-heart:#b46c78;
  box-sizing:border-box;margin:2rem auto 2.5rem;max-width:900px;
  border:1px solid var(--hl-line);border-radius:22px;
  background:linear-gradient(135deg,#fbfbf7 0%,#f6f7f0 100%);
  box-shadow:0 8px 30px rgba(55,60,45,.06);overflow:hidden;color:var(--hl-ink)
}
.hl-lesereise *{box-sizing:border-box}
.hl-journey-top{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:15px;padding:20px 22px}
.hl-journey-icon{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--hl-accent);border:1px solid var(--hl-line);font-size:19px}
.hl-kicker{font-size:10px;letter-spacing:.14em;font-weight:700;color:var(--hl-accent);margin-bottom:3px}
.hl-title{font-size:17px;line-height:1.35;font-weight:650}.hl-meta{margin-top:3px;color:var(--hl-muted);font-size:12px}
.hl-toggle,.hl-bookmark-btn,.hl-resume-go,.hl-resume-delete{font:inherit;cursor:pointer}
.hl-toggle{border:0;background:#fff;color:var(--hl-ink);border:1px solid var(--hl-line);border-radius:999px;padding:9px 13px;display:flex;align-items:center;gap:8px;font-size:12px;transition:.2s ease}
.hl-toggle:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.05)}
.hl-chevron{font-size:16px;line-height:1;transition:transform .2s}.hl-toggle[aria-expanded="true"] .hl-chevron{transform:rotate(180deg)}
.hl-panel{border-top:1px solid var(--hl-line);padding:8px 22px 20px}
.hl-toc{display:flex;flex-direction:column;padding:5px 0}.hl-toc-item{display:flex;align-items:flex-start;gap:10px;text-decoration:none!important;color:var(--hl-ink)!important;padding:9px 10px;border-radius:10px;line-height:1.4;font-size:14px;transition:background .15s ease,transform .15s ease}
.hl-toc-item:hover{background:rgba(255,255,255,.8);transform:translateX(2px)}.hl-toc-dot{width:18px;flex:0 0 18px;text-align:center;color:#aab399;margin-top:1px}
.hl-level-3{padding-left:36px;font-size:13px;color:var(--hl-muted)!important}.hl-toc-item.is-current{background:var(--hl-accent-soft);font-weight:650}.hl-toc-item.is-current .hl-toc-dot{color:var(--hl-accent)}
.hl-bookmark-area{margin-top:8px;padding-top:15px;border-top:1px dashed var(--hl-line);display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.hl-bookmark-btn{border:0;border-radius:999px;background:#fff;border:1px solid #e2d7d9;color:#8e5963;padding:9px 14px;font-size:12px;display:inline-flex;gap:7px;align-items:center;transition:.2s ease}
.hl-bookmark-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(140,80,90,.08)}.hl-bookmark-btn.is-saved{background:#fff7f8;border-color:#e8cdd2}
.hl-bookmark-hint{font-size:11px;color:var(--hl-muted)}
.hl-resume{margin-top:13px}.hl-resume-inner{display:grid;grid-template-columns:36px 1fr auto auto;gap:10px;align-items:center;background:#fff;border:1px solid #eadfe1;border-radius:15px;padding:11px 12px}
.hl-resume-icon{color:var(--hl-heart);font-size:18px;text-align:center}.hl-resume-copy{display:flex;flex-direction:column;gap:2px;min-width:0}
.hl-resume-copy strong{font-size:12px}.hl-resume-copy span{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hl-resume-copy small{font-size:10px;color:var(--hl-muted)}
.hl-resume-go{border:0;background:var(--hl-accent);color:#fff;border-radius:999px;padding:8px 12px;font-size:11px}
.hl-resume-delete{border:1px solid var(--hl-line);background:#fff;color:#777;border-radius:999px;padding:7px 10px;font-size:11px}

/* Small bookmark tab: always available, never placed over article text. */
.hl-floating-marker{
  position:fixed;right:10px;top:54%;z-index:9998;
  width:36px;height:46px;border:1px solid #e1d2d6;
  background:rgba(255,250,251,.96);color:#9a5d68;
  border-radius:12px 0 0 12px;
  display:grid;place-items:center;
  box-shadow:0 4px 16px rgba(60,45,48,.12);
  backdrop-filter:blur(8px);
  cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s;
}
.hl-floating-marker:hover{transform:translateX(-2px);box-shadow:0 7px 22px rgba(60,45,48,.16)}
.hl-floating-icon{font-size:20px;line-height:1}
.hl-floating-tooltip{
  position:absolute;right:44px;top:50%;transform:translateY(-50%);
  white-space:nowrap;padding:7px 10px;border-radius:999px;
  background:#fff;border:1px solid #eadadd;color:#79525a;font-size:11px;
  box-shadow:0 4px 15px rgba(60,45,48,.10);
  opacity:0;pointer-events:none;transition:opacity .18s;
}
.hl-floating-marker:hover .hl-floating-tooltip{opacity:1}
.hl-floating-marker.is-saved{background:#fff5f7;border-color:#dfc4ca}
.hl-floating-marker.is-flash{transform:scale(1.12);box-shadow:0 7px 25px rgba(140,80,90,.22)}

.hl-saved-marker{
  position:absolute;left:0;right:0;height:28px;z-index:50;
  display:flex;align-items:center;gap:8px;pointer-events:none;
}
.hl-saved-line{height:1px;background:linear-gradient(90deg,transparent,#c98a95 18%,#c98a95 82%,transparent);flex:1;opacity:.72}
.hl-saved-ribbon{pointer-events:auto;cursor:pointer;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#fff7f8;border:1px solid #e5c9ce;color:var(--hl-heart);box-shadow:0 3px 10px rgba(80,50,55,.10);font-size:13px}
.hl-saved-label{pointer-events:auto;cursor:pointer;border:0;background:rgba(255,250,251,.97);color:#8e5963;border:1px solid #ead5d9;border-radius:999px;padding:5px 9px;font-size:10px;box-shadow:0 2px 8px rgba(80,50,55,.07)}
.hl-saved-label:hover{background:#fff}
@media(max-width:700px){
  .hl-lesereise{margin:1.5rem 0 2rem;border-radius:17px}.hl-journey-top{grid-template-columns:38px 1fr;gap:11px;padding:16px}
  .hl-journey-icon{width:38px;height:38px;font-size:16px}.hl-title{font-size:15px}
  .hl-toggle{grid-column:1/-1;width:100%;justify-content:center}.hl-panel{padding:6px 12px 15px}
  .hl-toc-item{padding:9px 7px;font-size:13px}.hl-level-3{padding-left:25px}
  .hl-bookmark-area{align-items:flex-start;flex-direction:column;gap:5px;padding-left:4px}
  .hl-resume-inner{grid-template-columns:30px 1fr;gap:8px}.hl-resume-go,.hl-resume-delete{grid-column:2;justify-self:start}
  .hl-floating-marker{right:0;width:32px;height:42px;border-radius:10px 0 0 10px}
  .hl-floating-tooltip{right:38px}
}
