/* SDO — blog views (single post, blog, archives, search). Loaded only on those views. */

/* meta */
.sdot-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;font-size:.88em;color:color-mix(in srgb,var(--sdot-color-text) 78%,transparent)}
.sdot-meta a{color:inherit;text-decoration:none}
.sdot-meta a:hover{color:var(--sdot-color-primary)}
.sdot-meta-sep{opacity:.5}

/* single: shared */
.sdot-single{padding-top:0}
.sdot-post-head{position:relative;padding-block:clamp(28px,5vw,56px) 24px}
.sdot-featured{margin-block:0 clamp(24px,4vw,40px)}
.sdot-single .sdot-featured img{display:block;width:100%;height:auto;max-height:620px;object-fit:cover;border-radius:var(--sdot-radius)}
.sdot-post-foot{display:grid;gap:28px;margin-top:40px}
.sdot-tags{display:flex;flex-wrap:wrap;gap:8px}
.sdot-tags a{padding:5px 13px;border-radius:999px;background:var(--sdot-color-surface);color:var(--sdot-color-text);font-size:.85em;text-decoration:none}
.sdot-tags a:hover{background:var(--sdot-color-primary);color:#fff}
/* classic */
.sdot-single.is-classic .sdot-title{max-width:900px}
/* minimal */
.sdot-single.is-minimal .sdot-post-head-in{max-width:800px;text-align:center}
.sdot-single.is-minimal .sdot-meta,.sdot-single.is-minimal .sdot-crumbs ol{justify-content:center}
/* hero */
.sdot-single.has-hero .sdot-post-head{display:grid;align-items:end;min-height:min(72vh,640px);padding:0;margin-bottom:clamp(28px,5vw,48px);color:#fff;isolation:isolate}
.sdot-hero-media{position:absolute;inset:0;z-index:-1}
.sdot-single .sdot-hero-media img{width:100%;height:100%;max-height:none;object-fit:cover}
.sdot-hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.72),rgba(0,0,0,.15) 60%,rgba(0,0,0,.25))}
.sdot-single.has-hero .sdot-post-head-in{padding-block:clamp(60px,10vw,120px) clamp(28px,5vw,56px)}
.sdot-header-over .sdot-single.has-hero .sdot-post-head-in{padding-top:calc(var(--sdot-hd-h,80px) + 48px)}
.sdot-single.has-hero .sdot-title,.sdot-single.has-hero .sdot-meta,.sdot-single.has-hero .sdot-crumbs{color:#fff}
.sdot-single.is-hero:not(.has-hero) .sdot-post-head{padding-top:clamp(28px,5vw,56px)}


/* cards */
.sdot-cards{display:grid;gap:clamp(18px,2.4vw,30px)}
.sdot-cards.is-grid,.sdot-cards.is-magazine,.sdot-related .sdot-cards{grid-template-columns:repeat(var(--cols,3),minmax(0,1fr))}
.sdot-cols-2{--cols:2}.sdot-cols-3{--cols:3}.sdot-cols-4{--cols:4}
.sdot-card{display:flex;flex-direction:column;border-radius:var(--sdot-radius);background:var(--sdot-color-bg);border:1px solid var(--sdot-color-border);overflow:hidden;transition:box-shadow .3s,transform .3s}
.sdot-card:hover{box-shadow:0 18px 40px -26px rgba(0,0,0,.35);transform:translateY(-2px)}
.sdot-card-media{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--sdot-color-surface)}
.sdot-card .sdot-card-media img{display:block;width:100%;height:100%;max-height:none;object-fit:cover;transition:transform .6s}
.sdot-card:hover .sdot-card-media img{transform:scale(1.04)}
.sdot-card-body{display:grid;gap:8px;padding:18px 20px 22px}
.sdot-card-title{margin:0;font-size:1.2em;line-height:1.35}
.sdot-card-title a{color:var(--sdot-color-heading);text-decoration:none}
.sdot-card-title a:hover{color:var(--sdot-color-primary)}
.sdot-card-excerpt{font-size:.95em}
.sdot-card-excerpt p{margin:0}
/* list */
.sdot-cards.is-list .sdot-card{flex-direction:row;align-items:stretch}
.sdot-cards.is-list .sdot-card-media{flex:0 0 min(38%,340px);aspect-ratio:auto;min-height:200px}
.sdot-cards.is-list .sdot-card-body{align-content:center;padding:22px 26px}
/* magazine: first post large, the rest in the grid */
.sdot-cards.is-magazine .sdot-card.is-feature{grid-column:1/-1;flex-direction:row}
.sdot-cards.is-magazine .is-feature .sdot-card-media{flex:1 1 58%;aspect-ratio:16/9}
.sdot-cards.is-magazine .is-feature .sdot-card-body{flex:1 1 42%;align-content:center;padding:clamp(22px,3vw,40px)}
.sdot-cards.is-magazine .is-feature .sdot-card-title{font-size:var(--sdot-fs-h2)}
@media (max-width:1024px){.sdot-cards.is-grid,.sdot-cards.is-magazine,.sdot-related .sdot-cards{--cols:2}}
@media (max-width:700px){
	.sdot-cards.is-grid,.sdot-cards.is-magazine,.sdot-related .sdot-cards{--cols:1}
	.sdot-cards.is-list .sdot-card,.sdot-cards.is-magazine .sdot-card.is-feature{flex-direction:column}
	.sdot-cards.is-list .sdot-card-media{flex-basis:auto;aspect-ratio:16/10;min-height:0}
}

/* single: spacing inside the theme layout */
.sdot-single.sdot-main{padding-top:0}
.sdot-single .sdot-post-head-in .sdot-title{font-size:var(--sdot-fs-h1);margin-bottom:.35em}
.sdot-single .sdot-crumbs{margin-bottom:14px}
.sdot-post-foot{margin-top:32px}

/* reading progress */
.sdot-progress{position:fixed;top:var(--wp-admin--admin-bar--height,0px);inset-inline:0;height:3px;z-index:9995;pointer-events:none}
.sdot-progress span{display:block;height:100%;background:var(--sdot-color-accent);transform:scaleX(0);transform-origin:left center}
html[dir=rtl] .sdot-progress span{transform-origin:right center}

/* table of contents */
.sdot-toc{margin-block:0 1.6em;padding:16px 20px;border:1px solid var(--sdot-color-border);border-radius:var(--sdot-radius);background:var(--sdot-color-surface)}
.sdot-toc summary{cursor:pointer;font-weight:700;color:var(--sdot-color-heading)}
.sdot-toc ol{margin:.6em 0 0;padding-inline-start:1.3em}
.sdot-toc ol ol{margin:.2em 0 .3em}
.sdot-toc li{margin-block:.25em}
.sdot-toc a{text-decoration:none}

/* share */
.sdot-share{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px}
.sdot-share-t{font-weight:700;color:var(--sdot-color-heading)}
.sdot-share-list{display:flex;flex-wrap:wrap;gap:6px}
.sdot-share-btn{display:inline-grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid var(--sdot-color-border);border-radius:50%;background:transparent;color:var(--sdot-color-text);cursor:pointer;transition:background .25s,color .25s,border-color .25s}
.sdot-share-btn:hover,.sdot-share-btn:focus-visible{background:var(--sdot-color-primary);border-color:var(--sdot-color-primary);color:#fff}
.sdot-share-btn[hidden]{display:none}
.sdot-share-msg{font-size:.85em;color:var(--sdot-color-primary)}

/* author */
.sdot-author{display:flex;gap:18px;align-items:flex-start;padding:22px;border-radius:var(--sdot-radius);background:var(--sdot-color-surface)}
.sdot-author-img{border-radius:50%;flex:none}
.sdot-author-n{margin:0 0 6px;font-weight:700}
.sdot-author-n a{color:var(--sdot-color-heading);text-decoration:none}
.sdot-author-d{margin:0;font-size:.95em}

/* previous / next */
.sdot-post-nav{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.sdot-post-nav a{display:grid;gap:4px;padding:16px 18px;border:1px solid var(--sdot-color-border);border-radius:var(--sdot-radius);text-decoration:none;color:var(--sdot-color-heading)}
.sdot-post-nav a:hover{border-color:var(--sdot-color-primary)}
.sdot-pn-next{text-align:end}
.sdot-pn-l{font-size:.8em;color:var(--sdot-color-text);opacity:.75}
.sdot-pn-t{font-weight:600}
@media (max-width:600px){.sdot-post-nav{grid-template-columns:1fr}.sdot-pn-next{text-align:start}}

/* related */
.sdot-related{margin-top:clamp(40px,6vw,64px)}
.sdot-related-t{font-size:var(--sdot-fs-h3);margin:0 0 20px}
.sdot-post-foot .sdot-share, .sdot-post-foot .sdot-author, .sdot-post-foot .sdot-post-nav { margin-top: 28px; }
