.wrml-page{
  --wrml-purple:#7654c8;
  --wrml-purple-dark:#5f40ad;
  --wrml-lilac:#f5f0fb;
  --wrml-border:#e8e0f1;
  --wrml-ink:#202944;
  --wrml-muted:#687087;
  --wrml-bg:#fff;
  width:100vw;
  max-width:100vw;
  margin-left:calc(50% - 50vw);
  box-sizing:border-box;
}
.wrml-page *{box-sizing:border-box}
.wrml-layout{
  width:min(1400px,calc(100vw - 56px));
  margin:38px auto 80px;
  display:grid;
  grid-template-columns:260px minmax(0,1fr) 280px;
  gap:28px;
  align-items:start;
}
.wrml-left,.wrml-right{min-width:0}
.wrml-left{display:flex;flex-direction:column;gap:18px}
.wrml-main{min-width:0}
.wrml-card{
  background:#fff;
  border:1px solid var(--wrml-border);
  border-radius:14px;
  box-shadow:0 5px 24px rgba(44,32,75,.045);
  padding:18px;
}
.wrml-card-heading{
  display:flex;
  align-items:flex-start;
  gap:9px;
  color:#26304a;
  font:700 12px/1.35 Arial,sans-serif;
  letter-spacing:.02em;
  margin-bottom:16px;
}
.wrml-icon{
  color:var(--wrml-purple);
  font-size:18px;
  line-height:1;
}
.wrml-toc-card{padding:18px 15px;position:sticky;top:24px;z-index:5}
.wrml-toc{display:flex;flex-direction:column}
.wrml-toc-item{
  position:relative;
  display:flex;
  gap:10px;
  color:#34405a;
  text-decoration:none;
  font:500 12px/1.55 Arial,sans-serif;
  padding:8px 0;
}
.wrml-toc-item:hover{color:var(--wrml-purple)}
.wrml-toc-item.level-3{padding-left:17px;font-size:11px}
.wrml-toc-dot{
  flex:0 0 9px;
  width:9px;height:9px;
  margin-top:5px;
  border:2px solid #d8c9eb;
  border-radius:50%;
  background:#fff;
  z-index:2;
}
.wrml-toc-item:not(:last-child) .wrml-toc-dot:after{
  content:"";
  position:absolute;
  left:3px;
  top:22px;
  bottom:-4px;
  width:1px;
  background:#e9e1f2;
}
.wrml-muted{font:400 12px/1.5 Arial,sans-serif;color:var(--wrml-muted)}
.wrml-quote-card{
  margin-top:0;
  padding:25px 20px 18px;
  border-radius:14px;
  background:linear-gradient(145deg,#f7f1fc,#eee7fa);
  color:#2b3350;
  min-height:270px;
  overflow:hidden;
}
.wrml-quote-mark{font:700 48px/1 Georgia,serif;color:#9d83d0}
.wrml-quote-card p{
  margin:4px 0 18px;
  font:500 21px/1.3 Georgia,serif;
}
.wrml-quote-card strong{font:700 11px/1 Arial,sans-serif}
.wrml-book-illustration{
  color:#8b6ac7;
  font-size:23px;
  line-height:.8;
  margin:28px auto 0;
  width:max-content;
  opacity:.75;
  transform:rotate(-3deg);
}
.wrml-tags{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.wrml-tags span{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  background:#f3eefb;
  color:#6846ae;
  padding:7px 12px;
  font:600 11px/1 Arial,sans-serif;
}
.wrml-post-head h1{
  margin:0;
  color:var(--wrml-ink);
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(36px,4.2vw,56px);
  line-height:1.05;
  letter-spacing:-.035em;
  font-weight:700;
  max-width:920px;
}
.wrml-post-head h1:after{
  content:"";
  display:block;
  width:82px;
  height:4px;
  border-radius:5px;
  margin-top:15px;
  background:var(--wrml-purple);
  transform:rotate(-2deg);
}
.wrml-dek{
  max-width:820px;
  margin:20px 0 18px;
  color:#697087;
  font:italic 17px/1.65 Georgia,serif;
}
.wrml-meta{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:11px;
  padding:15px 0 18px;
  border-top:1px solid #ece8ef;
  border-bottom:1px solid #ece8ef;
  color:#4b5368;
  font:500 12px/1.4 Arial,sans-serif;
}
.wrml-meta-sep{color:#b8afc2}
.wrml-featured{margin:24px 0 28px}
.wrml-featured-image{
  display:block;
  width:100%;
  max-height:520px;
  object-fit:cover;
  border-radius:15px;
}
.wrml-content{
  color:#31394e;
  font:400 16px/1.82 Georgia,"Times New Roman",serif;
}
.wrml-content h2{
  color:#202943;
  font:700 27px/1.25 Georgia,serif;
  letter-spacing:-.02em;
  margin:40px 0 13px;
  scroll-margin-top:90px;
}
.wrml-content h3{
  color:#2c3550;
  font:700 21px/1.3 Georgia,serif;
  margin:30px 0 10px;
  scroll-margin-top:90px;
}
.wrml-content p{margin:0 0 18px}
.wrml-content ul,.wrml-content ol{padding-left:24px;margin:0 0 20px}
.wrml-content li{margin-bottom:7px}
.wrml-content a{color:var(--wrml-purple-dark)}
.wrml-content img{max-width:100%;height:auto}
.wrml-content blockquote{
  margin:28px 0;
  padding:18px 22px;
  border-left:4px solid var(--wrml-purple);
  background:#f8f5fc;
  border-radius:0 12px 12px 0;
  color:#414a61;
}
.wrml-right{display:flex;flex-direction:column;gap:18px}
.wrml-recent-card,.wrml-goodreads-card{background:#fff}
.wrml-recent-list{display:flex;flex-direction:column;gap:13px}
.wrml-recent-item{
  display:grid;
  grid-template-columns:55px minmax(0,1fr);
  gap:11px;
  align-items:center;
  color:inherit;
  text-decoration:none;
}
.wrml-recent-thumb{
  width:55px;height:62px;
  border-radius:8px;
  overflow:hidden;
  background:#eee8f6;
  display:flex;align-items:center;justify-content:center;
}
.wrml-recent-thumb img{width:100%;height:100%;object-fit:cover}
.wrml-thumb-placeholder{font:700 11px Arial;color:#7654c8}
.wrml-recent-copy{min-width:0}
.wrml-recent-copy strong{
  display:block;
  color:#29334e;
  font:700 12px/1.35 Georgia,serif;
}
.wrml-recent-copy small{
  display:block;
  margin-top:5px;
  color:#8a91a1;
  font:400 10px/1.2 Arial,sans-serif;
}
.wrml-goodreads-card{text-align:center;padding:20px 18px 18px}
.wrml-goodreads-card .wrml-card-heading{text-align:left}
.wrml-goodreads-avatar{
  width:96px;height:96px;
  margin:5px auto 12px;
  border-radius:50%;
  overflow:hidden;
  background:linear-gradient(145deg,#eadff7,#f7f1fb);
  border:4px solid #fff;
  box-shadow:0 4px 16px rgba(74,53,105,.12);
  display:flex;align-items:center;justify-content:center;
}
.wrml-goodreads-avatar img{width:100%;height:100%;object-fit:cover}
.wrml-goodreads-avatar span{font:700 24px Arial;color:#7450bd}
.wrml-goodreads-card h3{
  margin:0;
  color:#2a334d;
  font:700 20px/1.2 Georgia,serif;
}
.wrml-goodreads-card p{
  margin:8px 4px 16px;
  color:#70778a;
  font:400 11px/1.55 Arial,sans-serif;
}
.wrml-goodreads-btn{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  width:100%;
  padding:11px 9px;
  border:1px solid #ead8b0;
  border-radius:9px;
  background:#fbf7ea;
  color:#6d5731;
  text-decoration:none;
  font:700 10px/1.2 Arial,sans-serif;
  transition:.2s ease;
}
.wrml-goodreads-btn:hover{background:#f6eed9;transform:translateY(-1px)}
.wrml-g-icon{
  width:19px;height:19px;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:50%;
  background:#a98438;
  color:#fff;
  font:700 13px Georgia,serif;
}
.wrml-collab-card{
  background:linear-gradient(145deg,#f7f0fc,#efe7fa);
  border-color:#e4d7f1;
  position:sticky;
  top:24px;
}
.wrml-collab-icon{
  width:34px;height:34px;
  display:flex;align-items:center;justify-content:center;
  color:#7654c8;
  background:#fff;
  border-radius:50%;
  font-size:18px;
  margin-bottom:12px;
}
.wrml-collab-card h3{
  margin:0 0 12px;
  color:#49377a;
  font:800 14px/1.35 Arial,sans-serif;
  letter-spacing:.02em;
}
.wrml-collab-card p{
  margin:0 0 16px;
  color:#64617a;
  font:400 12px/1.6 Arial,sans-serif;
}
.wrml-work-btn{
  display:block;
  width:100%;
  text-align:center;
  padding:12px 10px;
  border-radius:7px;
  background:var(--wrml-purple);
  color:#fff !important;
  text-decoration:none;
  font:800 11px/1 Arial,sans-serif;
  letter-spacing:.04em;
  transition:.2s ease;
}
.wrml-work-btn:hover{background:var(--wrml-purple-dark);transform:translateY(-1px)}
.wrml-contact-line{
  margin-top:13px;
  color:#6d6880;
  font:500 10px/1.4 Arial,sans-serif;
  word-break:break-word;
}

/* The theme already prints the native post title/byline above the content.
   The plugin supplies the redesigned title, dek and meta row instead. */
.wrml-native-post-header-hidden{display:none !important}
/* Hide common WordPress/theme single-post title wrappers immediately (before JS runs). */
.single-post .entry-header:has(.entry-title),
.single-post .post-header:has(.post-title),
.single-post .page-header:has(.entry-title),
.single-post .post-title-area:has(.entry-title){display:none !important}

/* Keep the final collaboration card sticky only after it reaches its normal position.
   The two cards above it remain in normal document flow, so they are never covered. */
.wrml-collab-card{align-self:stretch}

@media (max-width:1050px){
  .wrml-layout{grid-template-columns:220px minmax(0,1fr) 240px;gap:20px;width:calc(100vw - 36px)}
  .wrml-post-head h1{font-size:40px}
}
@media (max-width:860px){
  .wrml-page{width:100%;max-width:100%;margin-left:0}
  .wrml-layout{grid-template-columns:1fr;max-width:720px;width:calc(100% - 28px)}
  .wrml-left,.wrml-right{display:block}
  .wrml-left{order:2}
  .wrml-main{order:1}
  .wrml-right{order:3}
  .wrml-toc-card{margin-bottom:0}
  .wrml-quote-card{display:none}
  .wrml-toc-card{position:relative;top:auto}
  .wrml-right{display:grid;grid-template-columns:1fr 1fr;align-items:start}
  .wrml-collab-card{position:relative;top:auto}
}
@media (max-width:600px){
  .wrml-layout{width:calc(100% - 28px);margin-top:24px}
  .wrml-post-head h1{font-size:34px}
  .wrml-dek{font-size:15px}
  .wrml-meta{font-size:11px}
  .wrml-right{grid-template-columns:1fr}
  .wrml-content{font-size:16px}
}

/* v1.0.4: keep sidebar sticky behavior reliable inside WordPress themes. */
.wrml-page,.wrml-page .wrml-layout,.wrml-page .wrml-left,.wrml-page .wrml-right{overflow:visible !important;}
.wrml-sticky-placeholder{flex:0 0 auto;}
.wrml-quote-right{margin-top:0;}

/* Stronger native-title suppression. These selectors target only the single-post
   title/byline block and never the Whimsy Read site header/navigation. */
body.single-post h1.entry-title,
body.single-post h1.post-title,
body.single-post .entry-header:has(h1.entry-title),
body.single-post .entry-header:has(h1.post-title),
body.single-post .post-header:has(h1.entry-title),
body.single-post .post-header:has(h1.post-title),
body.single-post .post-title-area:has(h1.entry-title),
body.single-post .post-title-area:has(h1.post-title),
body.single-post .single-post-header:has(h1.entry-title),
body.single-post .single-entry-header:has(h1.entry-title),
body.single-post .article-header:has(h1.entry-title){display:none !important;}

@media (max-width:860px){
  .wrml-quote-right{display:none;}
}

/* =========================================================
   v1.0.5 — Sticky sidebars, readable metadata, Quick Answer
   ========================================================= */
.wrml-meta{
  font-size:14px;
  line-height:1.55;
  gap:12px;
}
.wrml-meta > span{display:inline-flex;align-items:center;gap:5px}
.wrml-meta-author a{
  color:var(--wrml-purple-dark);
  text-decoration:none;
  font-weight:600;
}
.wrml-meta-author a:hover{text-decoration:underline}
.wrml-toc-card{
  position:sticky;
  top:24px;
  align-self:start;
}
.wrml-collab-card{
  position:sticky;
  top:24px;
  align-self:start;
}
.wrml-sticky-placeholder{visibility:hidden}

@media (max-width:860px){
  .wrml-meta{font-size:13px;gap:9px}
  .wrml-toc-card,.wrml-collab-card{position:relative;top:auto}
}

/* The grid row is as tall as the article. Stretching both sidebars gives their
   sticky children a full article-height containing block instead of a
   containing block that ends immediately after the card. */
@media (min-width:861px){
  .wrml-left,
  .wrml-right{
    align-self:stretch;
  }
}
