/* Archive-only identity. Shares the public site's Cairo, navy, ivory and gold palette. */
:root {
  --primary:#947137;--primary-dark:#755827;--primary-light:#f0e9da;--primary-mid:#d9bc81;
  --accent:#947137;--accent-light:#f0e9da;--surface:#fffefa;--surface-2:#f5f3ee;--surface-3:#eeece5;
  --border:#dedfd5;--text-h:#172c32;--text-body:#172c32;--text-muted:#637276;
  --bs-body-color:var(--text-body);--bs-body-bg:var(--surface-2);--bs-border-color:var(--border);
}
html[data-theme="dark"] {
  --primary:#d9bc81;--primary-dark:#e8cf9f;--primary-light:#33352b;--accent:#d9bc81;
  --surface:#13262b;--surface-2:#0c191d;--surface-3:#1a3035;--border:#2b4246;
  --text-h:#eeeede;--text-body:#eeeede;--text-muted:#a7b6b6;--accent-light:#33352b;
  color-scheme:dark;
}
body{background:var(--surface-2);color:var(--text-body);font-family:'Cairo',sans-serif;}
.site-header,.site-footer{background:var(--surface);border-color:var(--border);}
.site-header{box-shadow:0 12px 35px #0c191d12;}
.top-bar{background:#142f36;}
.brand-icon{background:var(--primary-light);color:var(--primary);}
.brand-title{font:600 27px/1.2 Georgia,serif;letter-spacing:-1px;color:var(--text-h);display:block;background:none;-webkit-text-fill-color:var(--text-h);}
.brand-text,.navbar .nav-link,.navbar-brand,.footer-seo-title{color:var(--text-h);}
.brand-sub{color:var(--text-muted);font-size:12px;}
.navbar .nav-link:hover,.navbar .nav-link.active{background:var(--primary-light);color:var(--primary);}
.navbar-toggler,.bb-theme-toggle{border:1px solid var(--border);border-radius:12px;padding:8px 12px;background:var(--surface-3);color:var(--text-h);}
.bb-theme-toggle{font:inherit;font-size:12px;white-space:nowrap;min-height:40px;}
.navbar-toggler{display:block;}
.navbar-search input,.dropdown-menu,.dropdown-item{background:var(--surface);color:var(--text-body);border-color:var(--border);}
.dropdown-menu{max-height:65vh;overflow-y:auto;}
.dropdown-item:hover{background:var(--primary-light);color:var(--primary);}
.page-header{padding:24px;border:1px solid var(--border);border-radius:20px;background:linear-gradient(135deg,var(--surface),var(--primary-light));}
.page-header h1{font-size:clamp(1.3rem,3vw,1.8rem);line-height:1.6;color:var(--text-h)!important;}
.card,.archive-card,.sidebar-card,.seo-block-inner,.det-card,.detail-breadcrumb,.detail-nav-btn,.file-row{background:var(--surface);border-color:var(--border);color:var(--text-body);border-radius:16px;}
.card-title a,.text-dark,.dc-val,.sidebar-card-header,.det-card-head h2{color:var(--text-h)!important;}
.text-muted,.card-text,.dc-label,.seo-block-desc,.seo-block-subtitle{color:var(--text-muted)!important;}
.sidebar-card-header,.det-card-head{background:var(--surface-3);border-color:var(--border);}
.det-card-head .ic{background:var(--primary-light);}.det-card-head .ic i{color:var(--primary);}
.card-body,.det-card-body{padding:22px;}.archive-card{overflow:hidden;}
.btn-primary,.primary-btn,.seo-cta-btn{background:#142f36;border-color:transparent;color:#fff!important;}
.detail-hero{background:var(--surface);color:var(--text-h);border:1px solid var(--border);}
.hero-eyebrow{color:#bae6fd;background:#d9bc8122;border-color:#d9bc8144;}
.info-item,.seo-link-card,.page-link{background:var(--surface-3);border-color:var(--border);color:var(--text-body);}
.alert-secondary{background:var(--surface-3);color:var(--text-body);border-color:var(--border);}
.detail-hero .alert-secondary{background:#ffffff12;color:#e2e8f0;border-color:#ffffff30;}
.detail-hero .alert-secondary a{color:#e8cf9f;text-decoration:underline;}
#promo-bar{position:static!important;opacity:1;visibility:visible;pointer-events:auto;background:linear-gradient(110deg,#142f36,#172554);border-bottom:1px solid #d9bc8155;box-shadow:none;}
#promo-bar[hidden]{display:none!important;}.promo-bar-text strong{color:#e8cf9f;}
.promo-bar-cta{background:#142f36;color:#fff!important;box-shadow:none;font-size:.85rem;}
:focus-visible{outline:3px solid #d9bc81;outline-offset:3px;}
@media(min-width:992px){.navbar-toggler{display:none;}}
@media(max-width:991px){.navbar-brand{max-width:65%;}.navbar-collapse{width:100%;padding-top:12px;}.navbar-search{width:100%;margin:12px 0;}.promo-bar-inner{padding:12px 16px;}.promo-bar-text{font-size:.8rem;}.promo-bar-cta{padding:8px 12px;}.card-body,.det-card-body{padding:16px;}.main-content{padding-top:22px;}.bb-theme-toggle{margin-inline-start:auto;}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important;}}

/* Footer content must follow its surface in both light and dark themes. */
.site-footer{color:var(--text-body);}
.site-footer .footer-brand-name,.site-footer .footer-heading,.site-footer .footer-seo-title{color:var(--text-h);}
.site-footer .footer-desc,.site-footer .footer-links a,.site-footer .footer-seo-links li a,.site-footer .footer-bottom,.site-footer .footer-bottom a{color:var(--text-body);}
.site-footer .footer-links a::before{background:var(--text-muted);}
.site-footer .footer-bottom,.site-footer .footer-seo-section{border-top-color:var(--border);}
.site-footer .footer-links a:hover,.site-footer .footer-links a:focus-visible,.site-footer .footer-seo-links li a:hover,.site-footer .footer-seo-links li a:focus-visible,.site-footer .footer-bottom a:hover,.site-footer .footer-bottom a:focus-visible{color:var(--primary-dark);}
/* Keep link labels and icons readable when the card's hover state changes. */
.seo-link-card:hover,.seo-link-card:focus-visible{background:#755827;border-color:#755827;color:#fff;}
.seo-link-card:hover .seo-link-icon,.seo-link-card:focus-visible .seo-link-icon,.seo-link-card:hover .seo-link-arrow,.seo-link-card:focus-visible .seo-link-arrow{color:#fff;}

/* Keep the archive's shared identity consistent on direct detail and directory routes. */
body .detail-hero :is(h1,h2,p,span){color:var(--text-h);}
body .hero-eyebrow{color:var(--primary-dark);background:var(--primary-light);border-color:var(--border);}
body .detail-hero .alert-secondary{background:var(--surface-3);color:var(--text-body);border-color:var(--border);}
body .detail-hero .alert-secondary a{color:var(--primary-dark);}
body .page-header{background:var(--surface);}
:focus-visible{outline-color:var(--primary);}
