/*
Theme Name: BacktestCart Premium Quant
Theme URI: https://backtestcart.com/
Author: BacktestCart
Description: Lightweight premium quantitative-finance WordPress theme for BacktestCart.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.9
Requires PHP: 7.4
Text Domain: backtestcart
*/
:root{
 --bc-bg:#0b1018;--bc-surface:#111925;--bc-surface-2:#172131;--bc-text:#edf2f7;
 --bc-muted:#9aa7b6;--bc-border:rgba(255,255,255,.10);--bc-yellow:#f4c542;
 --bc-max:1180px;--bc-radius:12px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bc-bg);color:var(--bc-text);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.7}
a{color:inherit}
img{max-width:100%;height:auto}
.container{width:min(calc(100% - 40px),var(--bc-max));margin-inline:auto}
.site-header{position:relative;background:#0b1018;border-bottom:1px solid var(--bc-border);z-index:100}
.header-inner{min-height:76px;display:flex;align-items:center;gap:28px}
.site-branding{flex:0 0 auto;display:flex;align-items:center;min-width:180px}
.custom-logo-link{display:flex;align-items:center}
.custom-logo{max-height:48px;width:auto}
.site-title{font-size:1.25rem;font-weight:750;text-decoration:none;letter-spacing:-.02em}
.primary-nav{margin-left:auto}
.primary-nav ul{display:flex;align-items:center;gap:24px;list-style:none;margin:0;padding:0}
.primary-nav a{text-decoration:none;color:#dbe3eb;font-weight:550;font-size:.95rem}
.primary-nav a:hover,.primary-nav a:focus{color:#fff}
.store-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 17px;border-radius:8px;background:var(--bc-yellow);color:#111827!important;text-decoration:none;font-weight:750;white-space:nowrap}
.store-button:hover,.store-button:focus{filter:brightness(1.05);text-decoration:none}
.mobile-toggle{display:none;margin-left:auto;background:transparent;border:1px solid var(--bc-border);border-radius:8px;padding:9px;color:#fff;cursor:pointer}
.mobile-toggle svg{display:block}
.site-main{min-height:55vh}
body.page .content-wrap{padding-top:0;margin-top:0}
body.page .site-main{margin-top:0;padding-top:0}
body.page .entry-content{margin-top:0;padding-top:0}
body.page .entry-content > :first-child{margin-top:0!important}
.content-wrap{padding:54px 0 70px}
.content-area{max-width:860px;margin:0 auto}
.content-area.full-width{max-width:none}
.entry-title,.page-title{display:none}
.entry-content h1{font-size:clamp(2rem,4vw,3rem);line-height:1.15;margin:0 0 24px}
.entry-content h2{font-size:clamp(1.5rem,2.8vw,2rem);line-height:1.25;margin:42px 0 15px}
.entry-content h3{font-size:1.25rem;margin:30px 0 10px}
.entry-content p,.entry-content ul,.entry-content ol{margin:0 0 18px}
.entry-content a{color:#f4d46d;text-underline-offset:3px}
.entry-content table{width:100%;border-collapse:collapse;margin:28px 0}
.entry-content th,.entry-content td{padding:11px;border:1px solid var(--bc-border);text-align:left}
.post-card{border:1px solid var(--bc-border);background:var(--bc-surface);border-radius:var(--bc-radius);padding:22px;margin-bottom:20px}
.post-card h2{margin:0 0 8px;font-size:1.4rem}
.post-card h2 a{text-decoration:none}
.post-meta{color:var(--bc-muted);font-size:.9rem;margin-bottom:10px}
.archive-header{margin-bottom:28px}
.archive-header h1{font-size:2rem;margin:0}
.featured-image{margin-bottom:22px;border-radius:var(--bc-radius);overflow:hidden}
.site-footer{background:#0d141e;border-top:1px solid var(--bc-border);margin-top:30px}
.footer-main{display:grid;grid-template-columns:minmax(240px,1.05fr) 2fr;gap:70px;padding:58px 0 48px}
.footer-brand{max-width:330px}
.footer-logo{display:inline-flex;align-items:center;margin-bottom:15px}
.footer-logo .custom-logo{max-height:55px}
.footer-brand-name{font-size:1.35rem;font-weight:750;text-decoration:none}
.footer-tagline{color:var(--bc-muted);margin:0;max-width:310px;line-height:1.55}
.footer-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}
.footer-col h2{font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;margin:3px 0 15px;color:#fff}
.footer-col ul{list-style:none;margin:0;padding:0}
.footer-col li{margin:0 0 10px}
.footer-col a{color:var(--bc-muted);text-decoration:none;font-size:.94rem}
.footer-col a:hover,.footer-col a:focus{color:#fff}
.footer-bottom{border-top:1px solid var(--bc-border);padding:18px 0;text-align:center;color:var(--bc-muted);font-size:.88rem}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:900px){
 .header-inner{gap:14px}
 .primary-nav{display:none;position:absolute;left:20px;right:20px;top:76px;background:var(--bc-surface);border:1px solid var(--bc-border);border-radius:10px;padding:10px}
 .primary-nav.is-open{display:block}
 .primary-nav ul{display:block}
 .primary-nav li{border-bottom:1px solid var(--bc-border)}
 .primary-nav li:last-child{border-bottom:0}
 .primary-nav a{display:block;padding:11px 10px}
 .mobile-toggle{display:inline-flex}
 .footer-main{grid-template-columns:1fr;gap:40px}
 .footer-brand{max-width:none}
}
@media(max-width:600px){
 .container{width:min(calc(100% - 28px),var(--bc-max))}
 .header-inner{min-height:68px}
 .custom-logo{max-height:40px}
 .site-branding{min-width:0}
 .store-button{font-size:.85rem;padding:8px 12px;min-height:38px}
 .mobile-toggle{padding:8px}
 .primary-nav{top:68px;left:14px;right:14px}
 .content-wrap{padding:38px 0 50px}
 .footer-main{padding:42px 0 35px}
 .footer-brand{text-align:center;margin:0 auto}
 .footer-logo{justify-content:center}
 .footer-tagline{margin-inline:auto}
 .footer-links{grid-template-columns:1fr;gap:26px}
 .footer-col{text-align:center}
}

/* Page spacing reset: keep the hero directly below the header on all screen sizes. */
body.page .content-wrap{padding-top:0!important;margin-top:0!important}
body.page .site-main{margin-top:0!important;padding-top:0!important}
body.page .entry-content{margin-top:0!important;padding-top:0!important}
body.page .entry-content > :first-child{margin-top:0!important}
