/*
Theme Name: David Fabri
Theme URI: https://davidfabri.com
Author: David Fabri
Description: Custom dark, technical personal theme for davidfabri.com — bold type, interactive hero, and a blog that mixes native posts with Bitstream Media link-outs.
Version: 1.0.0
Requires at least: 6.4
Requires PHP: 8.0
License: GPL-2.0-or-later
Text Domain: davidfabri
*/

/* ===== meta-strip second line ===== */
.meta-strip .ms-sub{display:inline-block;margin-top:6px;font-family:var(--sans);text-transform:none;letter-spacing:0;font-size:inherit;font-weight:500;color:var(--accent)}

/* ===== HERO canvas ===== */
.hero{position:relative;overflow:hidden}
#hero-fx{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.hero-inner{position:relative;z-index:1}

/* ===== WORK range grid ===== */
.work-intro{max-width:60ch;color:var(--ink-60);margin:-10px 0 34px;font-size:1.05rem}
.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.work-grid .work-card{margin-bottom:0;height:100%}
.work-card.static{cursor:default}
.work-card.static:hover{transform:none;box-shadow:none;border-color:var(--line)}
@media (max-width:760px){.work-grid{grid-template-columns:1fr}}

/* ===== BLOG feed ===== */
.blog-index .work-intro{margin-top:0}
.feed-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:22px;margin-bottom:44px}
.f-card.no-img .f-thumb{background:#0E1117}

/* ===== Pagination ===== */
.pagination .nav-links{display:flex;gap:8px;flex-wrap:wrap;align-items:center;font-family:var(--mono);font-size:.8rem}
.pagination .page-numbers{padding:10px 15px;border:1px solid var(--line);border-radius:8px;color:var(--ink-60);text-decoration:none}
.pagination .page-numbers.current{background:var(--accent);color:#04130d;border-color:var(--accent);font-weight:700}
.pagination a.page-numbers:hover{border-color:var(--accent);color:var(--accent)}

/* ===== Single post ===== */
.post-single{max-width:820px}
.post-head{margin-bottom:30px;padding-bottom:24px;border-bottom:1px solid var(--line)}
.post-back{font-family:var(--mono);font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-60)}
.post-back:hover{color:var(--accent)}
.post-meta{display:block;font-family:var(--mono);font-size:.72rem;letter-spacing:.14em;color:var(--accent);margin:22px 0 14px}
.post-title{font-size:clamp(2rem,5vw,3.2rem);font-weight:700;line-height:1.08;letter-spacing:-.02em}
.post-hero{margin:0 0 34px;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.post-hero img{width:100%;display:block}
.post-content{font-size:1.08rem;line-height:1.7;color:#c9cdd6}
.post-content > *{margin:0 0 1.3em}
.post-content h2{font-size:1.6rem;margin:1.8em 0 .5em;color:var(--ink);letter-spacing:-.01em;font-weight:700}
.post-content h3{font-size:1.25rem;margin:1.5em 0 .4em;color:var(--ink);font-weight:700}
.post-content a{color:var(--accent);border-bottom:1px solid rgba(61,245,197,.4)}
.post-content img{border-radius:10px;height:auto;max-width:100%}
.post-content ul,.post-content ol{margin:0 0 1.3em 1.3em}
.post-content li{margin:.35em 0}
.post-content blockquote{border-left:2px solid var(--accent);padding-left:20px;margin:1.4em 0;color:var(--ink);font-style:italic}
.post-content code{font-family:var(--mono);background:var(--bg-2);padding:2px 6px;border-radius:4px;font-size:.9em}
.post-content pre{background:var(--bg-2);border:1px solid var(--line);border-radius:10px;padding:18px;overflow:auto}
.post-content pre code{background:none;padding:0}
.post-foot{margin-top:44px;padding-top:26px;border-top:1px solid var(--line)}

/* ===== misc WP ===== */
.blog-index .sec-head .sec-num{font-size:1rem}
.admin-bar .site-head{top:32px}
@media (max-width:782px){.admin-bar .site-head{top:46px}}
