/*
Theme Name: Biz Ledger
Description: A clean business and finance news theme with bold headline lists, an editorial single-post layout, automatic category menu and automatic site logo.
Version: 1.1.0
Requires at least: 5.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: bizledger
*/
:root{--accent:#6001d2;--ink:#1d1d1f;--mut:#6e6e73;--line:#e0e4e9;--bg:#fff;--soft:#f5f8fa}
*{box-sizing:border-box}
body{margin:0;font:16px/1.55 -apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--bg)}
a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}
img{max-width:100%;height:auto;display:block}
.wrap{max-width:1180px;margin:0 auto;padding:0 16px}
.screen-reader-text{position:absolute;left:-9999px}
.mut{color:var(--mut);font-size:13px}
.topbar{background:var(--soft);border-bottom:1px solid var(--line);font-size:13px;color:var(--mut)}
.topbar .wrap{display:flex;justify-content:space-between;gap:12px;padding-top:6px;padding-bottom:6px}
.site-header{border-bottom:1px solid var(--line);background:var(--bg);position:sticky;top:0;z-index:50}
.head-row{display:flex;align-items:center;gap:20px;min-height:64px;position:relative}
.brand img{max-height:44px;width:auto}
.brand .name{font-size:26px;font-weight:800;color:var(--accent);letter-spacing:-.5px}
.nav{flex:1}.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:4px;flex-wrap:wrap}
.nav a{display:block;padding:8px 12px;font-weight:600;font-size:15px;border-radius:6px}
.nav li{position:relative}
.nav li:hover>a,.nav .current-menu-item>a,.nav .current-cat>a{color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--bg))}
.nav ul ul{display:none;position:absolute;left:0;top:100%;background:var(--bg);border:1px solid var(--line);box-shadow:0 8px 24px rgba(0,0,0,.12);min-width:200px;flex-direction:column;padding:6px;z-index:60}
.nav li:hover>ul{display:flex}
.search-form{display:flex}
.search-form input[type=search]{border:1px solid var(--line);border-right:0;padding:8px 12px;border-radius:20px 0 0 20px;outline:0;width:160px;background:var(--bg);color:var(--ink)}
.search-form button{background:var(--accent);color:#fff;border:0;padding:8px 14px;border-radius:0 20px 20px 0;cursor:pointer}
.menu-toggle{display:none;background:none;border:1px solid var(--line);padding:6px 12px;border-radius:6px;font-size:18px;color:var(--ink)}
.layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:32px;padding-top:24px;padding-bottom:40px}
.thumb{display:block;aspect-ratio:3/2;overflow:hidden;background:var(--soft)}
.thumb img{width:100%;height:100%;object-fit:cover}
.ph{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:linear-gradient(135deg,var(--accent),#2b1b6b);color:#fff;font-weight:800;font-size:40px}
.kicker{display:inline-block;font-size:12px;font-weight:700;color:var(--accent);margin-bottom:4px}
.hero-grid{display:grid;grid-template-columns:2fr 1fr;gap:12px;margin-bottom:28px}
.hero-side{display:grid;gap:12px;grid-template-rows:1fr 1fr}
.ov{position:relative;display:block;border-radius:10px;overflow:hidden;color:#fff;min-height:194px}
.ov .thumb{position:absolute;inset:0;aspect-ratio:auto}
.ov:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 30%,rgba(0,0,0,.82))}
.ov .txt{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:16px}
.ov .t{display:block;font-size:16px;line-height:1.25}
.ov:hover{color:#fff}.ov .kicker{color:#fff;background:var(--accent);padding:2px 8px;border-radius:3px}
.hero-main{min-height:400px}.hero-main .t{font-size:28px;line-height:1.2}
.sec{margin-bottom:30px}
.sec-h{display:flex;justify-content:space-between;align-items:baseline;border-bottom:2px solid var(--ink);margin-bottom:14px}
.sec-h h2{margin:0 0 -2px;font-size:19px;border-bottom:3px solid var(--accent);padding-bottom:4px}
.sec-h a{font-size:13px;font-weight:600;color:var(--accent)}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.card h3{font-size:15px;line-height:1.3;margin:8px 0 4px}
.row{display:grid;grid-template-columns:240px 1fr;gap:18px;padding:16px 0;border-bottom:1px solid var(--line)}
.row h2{margin:2px 0 6px;font-size:21px;line-height:1.25}.row p{margin:0 0 6px;color:var(--mut)}
.box{border:1px solid var(--line);border-radius:10px;padding:16px;margin-bottom:20px}
.bh{margin:0 0 10px;font-size:17px;border-left:4px solid var(--accent);padding-left:8px}
.trend{list-style:none;margin:0;padding:0}
.trend li{display:flex;gap:12px;padding:10px 0;border-top:1px solid var(--line);font-weight:600;line-height:1.3}
.trend li:first-child{border-top:0}.trend .n{color:var(--accent);font-weight:800;font-size:20px;min-width:18px}
.page-head{border-bottom:2px solid var(--ink);margin-bottom:8px}.page-head h1{margin:0 0 8px;font-size:28px}
.post-article h1{font-size:34px;line-height:1.2;margin:6px 0 10px}
.meta{color:var(--mut);font-size:14px;margin-bottom:16px}
.feat{margin:0 0 20px}.feat img{border-radius:10px;width:100%}
.entry{font-size:18px;line-height:1.75}.entry p{margin:0 0 1.2em}
.entry h2,.entry h3{line-height:1.25;margin:1.6em 0 .6em}
.entry blockquote{margin:1.5em 0;padding:4px 20px;border-left:4px solid var(--accent);color:var(--mut)}
.entry a{color:var(--accent);text-decoration:underline}
.alignleft{float:left;margin:0 16px 8px 0}.alignright{float:right;margin:0 0 8px 16px}.aligncenter{margin:0 auto}
.tags a{display:inline-block;border:1px solid var(--line);padding:2px 10px;border-radius:14px;margin:0 6px 6px 0;font-size:13px}
.pagination{margin:24px 0}.pagination .nav-links{display:flex;gap:6px;flex-wrap:wrap}
.page-numbers{padding:6px 12px;border:1px solid var(--line);border-radius:6px}
.page-numbers.current{background:var(--accent);color:#fff;border-color:var(--accent)}
.post-navigation .nav-links{display:flex;justify-content:space-between;gap:16px;margin:24px 0;font-weight:600}
.clist{list-style:none;padding:0}.clist .comment-body{padding:12px 0;border-bottom:1px solid var(--line)}
.comments input[type=text],.comments input[type=email],.comments input[type=url],.comments textarea{width:100%;padding:8px;border:1px solid var(--line);background:var(--bg);color:var(--ink)}
.comments input[type=submit]{background:var(--accent);color:#fff;border:0;padding:10px 18px;border-radius:6px;cursor:pointer}
.site-footer{background:#1d1d24;color:#c9c9d1;padding:30px 0 20px;margin-top:20px;font-size:14px}
.site-footer a:hover{color:#fff}.site-footer h4{color:#fff;margin:0 0 8px}
.fwid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:20px}
.fmenu ul{list-style:none;margin:0 0 12px;padding:0;display:flex;gap:16px;flex-wrap:wrap}
/* Business layout */
.skin-business .site-header{border-bottom:0;border-top:4px solid var(--ink)}
.skin-business .head-row{flex-wrap:wrap;gap:0 20px}
.skin-business .brand{flex:1;padding:12px 0}
.skin-business .brand .name{color:var(--ink);font-size:32px;font-weight:900}
.skin-business .search-form{order:2}
.skin-business .nav{order:3;flex:0 0 100%;background:#111;box-shadow:0 0 0 100vmax #111;clip-path:inset(0 -100vmax)}
.skin-business .nav a{color:#fff;border-radius:0;padding:11px 14px}
.skin-business .nav li:hover>a,.skin-business .nav .current-cat>a,.skin-business .nav .current-menu-item>a{background:var(--accent);color:#fff}
.skin-business .nav ul ul{background:#111;border-color:#333}
.skin-business .topbar{background:var(--bg)}
.skin-business .sec-h{border-bottom:1px solid var(--line)}
.skin-business .sec-h h2{border-bottom:0;border-left:6px solid var(--accent);padding:0 0 0 10px;margin:0 0 8px;font-size:20px}
.skin-business .kicker{color:var(--accent)}
.bz-hero{display:grid;grid-template-columns:1.6fr 1fr;gap:24px;margin-bottom:28px;padding-bottom:24px;border-bottom:1px solid var(--line)}
.bz-lead h2{font-size:34px;line-height:1.15;margin:8px 0;font-weight:800}
.bz-lead p{color:var(--mut);margin:0;font-size:17px}
.bz-stack{display:grid;gap:14px;align-content:start}
.bz-item{display:grid;grid-template-columns:96px 1fr;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.bz-item:last-child{border:0}.bz-item h3{margin:0;font-size:16px;line-height:1.3}
.bz-cat{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.bz-cat h3{margin:8px 0 0;font-size:19px;line-height:1.25}
.bz-cat ul{list-style:none;margin:0;padding:0}
.bz-cat li{padding:10px 0;border-bottom:1px solid var(--line);font-weight:700;line-height:1.3}
.bz-cat li:first-child{padding-top:0}
@media(max-width:900px){.layout{grid-template-columns:1fr}.cards{grid-template-columns:repeat(2,1fr)}.bz-hero,.bz-cat{grid-template-columns:1fr}}
@media(max-width:860px){
.menu-toggle{display:block;margin-left:auto}
.search-form{display:none}
.nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--bg);border-bottom:1px solid var(--line);flex:none}
.nav.open{display:block}.nav ul{flex-direction:column}
.nav ul ul{position:static;display:flex;box-shadow:none;border:0;padding-left:12px}
.skin-business .nav{position:static;clip-path:none;box-shadow:none;margin:0 -16px;flex:0 0 100%}
}
@media(max-width:700px){.hero-grid{grid-template-columns:1fr}.hero-main{min-height:260px}.hero-main .t{font-size:22px}.hero-side{grid-template-columns:1fr 1fr;grid-template-rows:auto}}
@media(max-width:560px){.row{grid-template-columns:110px 1fr;gap:12px}.row p{display:none}.row h2{font-size:16px}.post-article h1{font-size:26px}.entry{font-size:17px}}

/* Biz Ledger: static header and single post layout */
.skin-business .site-header{position:static}
.progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:100}
.progress span{display:block;height:100%;width:0;background:var(--accent)}
.side{align-self:start;position:sticky;top:20px}
.post-article{max-width:760px;margin:0 auto}
.crumbs{font-size:13px;color:var(--mut);margin-bottom:10px}
.crumbs a{color:var(--accent);font-weight:600}
.post-article h1{font-size:42px;line-height:1.12;font-weight:800;letter-spacing:-.5px;margin:6px 0 12px}
.stand{font-size:20px;line-height:1.45;color:var(--mut);margin:0 0 18px}
.byline{display:flex;align-items:center;gap:12px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:20px;flex-wrap:wrap}
.byline img,.av{width:44px;height:44px;border-radius:50%;object-fit:cover}
.av{display:flex;align-items:center;justify-content:center;background:var(--accent);color:#fff;font-weight:700}
.byline strong{display:block;line-height:1.2}
.share{margin-left:auto;display:flex;gap:6px;flex-wrap:wrap}
.share a,.share button{border:1px solid var(--line);background:var(--bg);color:var(--ink);padding:6px 11px;border-radius:18px;font:600 13px/1.2 inherit;font-family:inherit;cursor:pointer}
.share a:hover,.share button:hover{background:var(--accent);border-color:var(--accent);color:#fff}
.post-article .feat{margin:0 0 24px}.post-article .feat img{border-radius:6px}
.feat figcaption,.entry figcaption,.wp-caption-text{font-size:13px;color:var(--mut);padding-top:6px}
.entry>p:first-of-type{font-size:20px;line-height:1.7}
.entry h2{font-size:26px;border-left:5px solid var(--accent);padding-left:12px}
.entry ul,.entry ol{padding-left:1.3em;margin:0 0 1.2em}.entry li{margin-bottom:.4em}
.entry img{border-radius:6px}
.entry table{width:100%;border-collapse:collapse;margin:0 0 1.2em;font-size:16px}
.entry th,.entry td{border:1px solid var(--line);padding:8px 10px;text-align:left}.entry th{background:var(--soft)}
.entry blockquote{font-size:22px;line-height:1.4;font-weight:700;color:var(--ink);border-left:5px solid var(--accent);padding:2px 0 2px 20px}
.entry pre,.entry code{background:var(--soft);border-radius:4px}.entry code{padding:1px 5px}.entry pre{padding:12px;overflow:auto}
.authorbox{display:flex;gap:14px;padding:18px;background:var(--soft);border-radius:8px;margin:28px 0}
.authorbox img{width:64px;height:64px;border-radius:50%}.authorbox p{margin:4px 0 0;color:var(--mut);font-size:14px}
@media(max-width:900px){.side{position:static}}
@media(max-width:700px){.post-article h1{font-size:28px}.stand{font-size:17px}.share{margin-left:0}.entry>p:first-of-type{font-size:18px}.entry blockquote{font-size:19px}}

/* Robust article body: wide tables, embeds, long links, pasted HTML */
.layout>*{min-width:0}
.entry{overflow-wrap:anywhere}
.entry>*{max-width:100%}
.entry img,.entry video,.entry embed{max-width:100%;height:auto}
.entry iframe{max-width:100%;width:100%}
.entry table{display:block;overflow-x:auto}
.entry h1{font-size:30px;line-height:1.2;margin:1.4em 0 .6em}
.entry h3{font-size:21px}.entry h4{font-size:18px}
.entry figure,.entry .wp-caption{margin:0 0 1.2em;max-width:100%}
.entry hr{border:0;border-top:1px solid var(--line);margin:2em 0}
.entry div{max-width:100%}

/* Keep sticky sidebar and progress bar clear of the WordPress admin bar */
.admin-bar .side{top:52px}
.admin-bar .progress{top:32px}
@media(max-width:782px){.admin-bar .progress{top:46px}}
@media(max-width:600px){.admin-bar .progress{top:0}}

/* Single posts: no sidebar, wide editorial layout */
.post-wrap{padding-top:24px;padding-bottom:40px}
.post-wrap .post-article{max-width:980px}
.post-wrap .post-article h1{font-size:46px}
.post-wrap .stand,.post-wrap .entry,.post-wrap .tags,.post-wrap .authorbox{max-width:760px;margin-left:auto;margin-right:auto}
.post-wrap .stand{margin-left:0}
.post-wrap .post-navigation,.post-wrap .comments,.post-wrap .sec{max-width:980px;margin-left:auto;margin-right:auto}
.cards.c3{grid-template-columns:repeat(3,1fr)}
@media(max-width:700px){.post-wrap .post-article h1{font-size:28px}.cards.c3{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.cards.c3{grid-template-columns:1fr}}

/* ==== Single post: RiverStyle layout (breadcrumb, byline + Follow, badge image, related, sticky sidebar) ==== */
.rv-layout{display:grid;grid-template-columns:minmax(0,2.3fr) minmax(0,1fr);gap:40px;align-items:start;padding-top:24px;padding-bottom:40px}
.rv-main,.rv-sidebar{min-width:0}
.rv-item{padding-bottom:30px}
.rv-breadcrumb{font-size:12.5px;color:var(--mut);margin-bottom:10px}
.rv-breadcrumb a:hover{color:var(--accent)}
.rv-item h1{font-size:34px;font-weight:800;line-height:1.2;margin:0 0 12px;letter-spacing:-.01em}
.rv-byline{display:flex;align-items:center;gap:10px;margin-bottom:16px}
.rv-byline img{width:38px;height:38px;border-radius:50%;background:#ccc;flex-shrink:0}
.rv-byline-name{font-size:13.5px;font-weight:800}
.rv-follow{border:1px solid var(--accent);color:var(--accent);background:#fff;font:700 11.5px/1.2 inherit;font-family:inherit;padding:3px 11px;border-radius:14px;margin-left:6px;cursor:pointer}
.rv-follow:hover{background:var(--accent);color:#fff}
.rv-follow:disabled{opacity:.7;cursor:default}
.rv-byline-meta{font-size:12px;color:var(--mut)}
.rv-img-wrap{position:relative}
.rv-img{width:100%;height:380px;object-fit:cover;border-radius:4px;display:block}
.rv-cat-badge{position:absolute;top:12px;left:12px;background:var(--accent);color:#fff;font-size:11px;font-weight:800;padding:4px 10px;border-radius:2px;text-transform:uppercase}
.rv-caption{font-size:12.5px;color:var(--mut);font-style:italic;margin:8px 0 14px}
.rv-content{font-size:17px;line-height:1.75;margin-top:18px}
.rv-content>p:first-of-type{font-size:17px;line-height:1.75}
.rv-content h2{font-size:24px;border-left:0;padding-left:0}
.rv-content a{color:var(--accent);text-decoration:underline}
.rv-content a:hover{text-decoration:none}
.rv-related{margin-top:36px;padding-top:24px;border-top:2px solid #000}
.rv-related-title{font-size:15px;font-weight:800;text-transform:uppercase;letter-spacing:.02em;margin-bottom:18px}
.rv-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.rv-related-card{display:block}
.rv-related-card .imgbox{width:100%;height:130px;object-fit:cover;border-radius:6px;margin-bottom:10px;background:linear-gradient(135deg,#dfe3e8,#c7ccd3)}
.rv-related-card .tag{color:var(--accent);font-size:10.5px;font-weight:800;text-transform:uppercase;display:block;margin-bottom:4px}
.rv-related-card h5{font-size:13.5px;font-weight:700;line-height:1.32;margin:0}
.rv-related-card:hover h5{color:var(--accent)}
.rv-sidebar{position:sticky;top:20px}
.admin-bar .rv-sidebar{top:52px}
.rv-side-block{margin-bottom:34px}
.rv-side-title{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:800;text-transform:uppercase;letter-spacing:.02em;border-bottom:2px solid var(--accent);padding-bottom:10px;margin-bottom:4px}
.rv-side-title:before{content:"";width:4px;height:16px;background:var(--accent);display:inline-block}
.rv-side-item{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}
.rv-side-thumb{width:70px;height:56px;object-fit:cover;border-radius:4px;flex-shrink:0;background:linear-gradient(135deg,#dfe3e8,#c7ccd3)}
.rv-side-item h5{font-size:13.5px;font-weight:700;line-height:1.32;margin:0 0 4px}
.rv-side-item:hover h5{color:var(--accent)}
.rv-side-item span{font-size:11.5px;color:var(--mut)}
@media(max-width:900px){.rv-layout{grid-template-columns:1fr}.rv-sidebar{position:static}.rv-img{height:260px}.rv-item h1{font-size:26px}}
@media(max-width:700px){.rv-related-grid{grid-template-columns:1fr}}

/* Homepage/archives sidebar: stays in view while the long Latest list scrolls; scrolls inside itself if taller than the screen */
.layout{align-items:start}
.side{position:-webkit-sticky;position:sticky;top:20px;align-self:start;max-height:calc(100vh - 40px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
.admin-bar .side{top:52px;max-height:calc(100vh - 72px)}
@media(max-width:900px){.side{position:static;max-height:none;overflow:visible}}

/* Logo: two-tone text logo */
.pn-logo{letter-spacing:-.02em;white-space:nowrap}
.pn-logo .pn-logo-b{color:var(--accent)}
.skin-business .brand .name.pn-logo{color:var(--ink)}
.skin-business .brand .name.pn-logo:hover{color:var(--ink)}
@media(max-width:560px){.skin-business .brand .name{font-size:26px}}
