/* One complete story per side. Negative overlap staggers consecutive opposite-side
   cards; the minimum card height guarantees same-side cards never collide. */
body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline>.wp-block-post-template,.wisekal-story-timeline){--bubble-gutter:36px;position:relative;display:flex!important;flex-direction:column;align-items:stretch;gap:0!important;row-gap:0!important;padding-top:0!important;padding-left:0;margin:0;isolation:isolate}
body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline>.wp-block-post-template,.wisekal-story-timeline)::before{content:"";display:block!important;position:absolute;left:50%;top:0;bottom:0;width:1px;background:#d99b21;z-index:-1}
body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline>.wp-block-post-template>li,.wisekal-story-row){position:relative;display:flex!important;flex-direction:column;align-items:stretch!important;align-self:flex-start;box-sizing:border-box;width:calc(50% - var(--bubble-gutter));min-height:340px;gap:0!important;padding:16px 16px 0!important;margin:0!important;border:1px solid #b9c6aa!important;border-radius:5px;background:#f3f5eb;overflow:visible;min-width:0}
body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline>.wp-block-post-template>li,.wisekal-story-row):nth-child(even){align-self:flex-end}
body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline>.wp-block-post-template>li,.wisekal-story-row):not(:first-child){margin-top:-160px!important}
/* Move each milestone outside its half-width card, onto the shared spine. */
body.wisekal-loop-layout-bubbles .is-style-bwp-timeline>.wp-block-post-template>li::before,
body.wisekal-loop-layout-bubbles .wisekal-story-row::after{content:"";display:block!important;position:absolute;left:calc(100% + var(--bubble-gutter));right:auto;top:130px;transform:translate(-50%,-50%);box-sizing:border-box;width:16px;height:16px;border:3px solid #fffdf7;border-radius:50%;background:#d99b21;box-shadow:none;z-index:2}
body.wisekal-loop-layout-bubbles .is-style-bwp-timeline>.wp-block-post-template>li:nth-child(even)::before,
body.wisekal-loop-layout-bubbles .wisekal-story-row:nth-child(even)::after{left:calc(0px - var(--bubble-gutter))}
/* Inward-pointing speech bubble tip belongs to the complete card. */
body.wisekal-loop-layout-bubbles .is-style-bwp-timeline>.wp-block-post-template>li::after,
body.wisekal-loop-layout-bubbles .wisekal-story-row::before{content:"";position:absolute;left:auto;right:-9px;top:122px;width:16px;height:16px;background:#f3f5eb;border-top:1px solid #b9c6aa;border-right:1px solid #b9c6aa;transform:rotate(45deg);pointer-events:none}
body.wisekal-loop-layout-bubbles .is-style-bwp-timeline>.wp-block-post-template>li:nth-child(even)::after,
body.wisekal-loop-layout-bubbles .wisekal-story-row:nth-child(even)::before{left:-9px;right:auto;transform:rotate(225deg)}
/* Reset split-layout panel geometry without touching content, links or formats. */
body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline .bwp-story-copy,.wisekal-story-row .wisekal-story-copy){display:flex;flex-direction:column;align-self:stretch!important;box-sizing:border-box;min-height:0!important;width:100%;max-width:none;flex:1;padding:20px 8px 24px!important;margin:0!important;border:0!important;background:transparent!important;grid-column:auto!important;grid-row:auto!important}
body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline .bwp-story-copy,.wisekal-story-row .wisekal-story-copy)::before{display:none!important}
body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline .bwp-story-media,.wisekal-story-row .wisekal-story-photo){width:100%;min-height:0!important;margin:0!important;grid-column:auto!important;grid-row:auto!important;border-radius:4px;overflow:hidden;background:transparent}
body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline .bwp-story-media img,.wisekal-story-row .wisekal-story-image){display:block;width:100%;height:220px!important;min-height:0;max-height:none;object-fit:cover;aspect-ratio:auto!important}
body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline .bwp-format-preview,.wisekal-story-row .bwp-format-preview){height:220px;border-radius:4px}
body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline .bwp-format-gallery-images img,.wisekal-story-row .bwp-format-gallery-images img){height:100%!important}
body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline .bwp-format-quote,.wisekal-story-row .bwp-format-quote){height:auto;min-height:220px;border:0;background:transparent;box-shadow:none;padding:35px 20px 15px 30px}
body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline .wp-block-post-title,.wisekal-story-row h2){font-size:clamp(26px,2.5vw,34px);line-height:1.2;margin:0 0 14px!important}
/* Keep the existing centered date choice and the author feed's date stamps. */
body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline>.wp-block-post-template>li>.wisekal-loop-date,.wisekal-story-row>.wisekal-loop-date,.wisekal-story-row>.wisekal-author-feed-date){position:absolute;top:94px;left:calc(100% + var(--bubble-gutter));right:auto;transform:translateX(-50%);font-size:11px;white-space:nowrap;text-align:center;background:#fffdf7;padding:2px 5px;z-index:3;margin:0!important}
body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline>.wp-block-post-template>li:nth-child(even)>.wisekal-loop-date,.wisekal-story-row:nth-child(even)>.wisekal-loop-date,.wisekal-story-row:nth-child(even)>.wisekal-author-feed-date){left:calc(0px - var(--bubble-gutter));right:auto}
@media(max-width:700px){
 body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline>.wp-block-post-template,.wisekal-story-timeline){padding-left:28px!important;gap:40px!important}
 body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline>.wp-block-post-template,.wisekal-story-timeline)::before{left:0}
 body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline>.wp-block-post-template>li,.wisekal-story-row){width:100%;min-height:0;align-self:stretch!important;margin:0!important;padding:12px 12px 0!important}
 body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline>.wp-block-post-template>li,.wisekal-story-row):not(:first-child){margin-top:0!important}
 body.wisekal-loop-layout-bubbles .is-style-bwp-timeline>.wp-block-post-template>li::before,
 body.wisekal-loop-layout-bubbles .is-style-bwp-timeline>.wp-block-post-template>li:nth-child(even)::before,
 body.wisekal-loop-layout-bubbles .wisekal-story-row::after,
 body.wisekal-loop-layout-bubbles .wisekal-story-row:nth-child(even)::after{left:-28px;top:36px}
 body.wisekal-loop-layout-bubbles .is-style-bwp-timeline>.wp-block-post-template>li::after,
 body.wisekal-loop-layout-bubbles .is-style-bwp-timeline>.wp-block-post-template>li:nth-child(even)::after,
 body.wisekal-loop-layout-bubbles .wisekal-story-row::before,
 body.wisekal-loop-layout-bubbles .wisekal-story-row:nth-child(even)::before{left:-9px;right:auto;top:28px;transform:rotate(225deg)}
 body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline .bwp-story-copy,.wisekal-story-row .wisekal-story-copy){padding:18px 8px 22px!important}
 body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline>.wp-block-post-template>li>.wisekal-loop-date,.wisekal-story-row>.wisekal-loop-date,.wisekal-story-row>.wisekal-author-feed-date,
 .is-style-bwp-timeline>.wp-block-post-template>li:nth-child(even)>.wisekal-loop-date,.wisekal-story-row:nth-child(even)>.wisekal-loop-date,.wisekal-story-row:nth-child(even)>.wisekal-author-feed-date){top:-27px;left:0;right:auto;transform:none}
}

/* Quote bubbles: expressive quotation, a quiet title/source and a text action. */
body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline,.wisekal-story-timeline) .bwp-format-quote{position:relative;display:block;height:auto!important;min-height:0;padding:68px 24px 22px!important;border:0!important;border-radius:0;background:transparent!important;box-shadow:none;overflow:visible}
body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline,.wisekal-story-timeline) .bwp-quote-mark{top:3px;left:18px;font:100px/1 Georgia,serif;color:#d99b21;opacity:1}
body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline,.wisekal-story-timeline) .bwp-format-quote blockquote{display:block;width:100%;margin:0!important;padding:0!important}
body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline,.wisekal-story-timeline) .bwp-format-quote blockquote p{font-family:'Wisekal Caveat',cursive;font-size:clamp(30px,2.7vw,38px);font-weight:500;line-height:1.25;text-align:center;color:#254a38;margin:0 0 14px!important;letter-spacing:0}
body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline,.wisekal-story-timeline) .bwp-format-quote blockquote p:last-child{margin-bottom:0!important}
body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline,.wisekal-story-timeline) .bwp-quote-label{display:none!important}
body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline,.wisekal-story-timeline) .bwp-quote-details{gap:16px;margin-top:12px}
body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline,.wisekal-story-timeline) .bwp-quote-source{display:block;font-size:14px;line-height:1.6;color:#4d604d}
body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline,.wisekal-story-timeline) .bwp-quote-source-label{display:none}
body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline,.wisekal-story-timeline) .bwp-quote-source::before{content:'— ';color:#4d604d}
@media(max-width:700px){body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline,.wisekal-story-timeline) .bwp-format-quote{padding:64px 10px 16px!important}body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline,.wisekal-story-timeline) .bwp-format-quote blockquote p{font-size:30px}}

/* The approved quotation has a smaller, casually slanted handwritten voice. */
body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline,.wisekal-story-timeline) .bwp-format-quote blockquote{transform:rotate(-3deg);transform-origin:center}
body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline,.wisekal-story-timeline) .bwp-format-quote blockquote p{font-style:italic;font-size:clamp(26px,2.3vw,32px);line-height:1.3}
@media(max-width:700px){body.wisekal-loop-layout-bubbles :is(.is-style-bwp-timeline,.wisekal-story-timeline) .bwp-format-quote blockquote p{font-size:26px}}
