/*
Theme Name: General Content
Theme URI: https://example.com
Author: PBN Reconstructor
Author URI: https://example.com
Description: Reconstructed theme for General Content
Version: 1.0.0
Requires at least: 6.6
Tested up to: 6.7
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: pbn-general-content-theme
*/


/* --- PBN Primary Navigation --- */
.pbn-primary-nav { display: block; width: 100%; }
.pbn-primary-nav ul.menu {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 0;
}
.pbn-primary-nav ul.menu > li {
  position: relative;
}
.pbn-primary-nav ul.menu > li > a {
  display: block;
  padding: 10px 14px;
  color: #ffffff;
  text-decoration: none;
  white-space: nowrap;
}
.pbn-primary-nav ul.menu > li > a:hover {
  background: rgba(255,255,255,0.15);
}
/* Dropdown sub-menus */
.pbn-primary-nav ul.menu ul {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 100;
  list-style: none;
  margin: 0;
  padding: 0;
  min-width: 180px;
  background: #222;
}
.pbn-primary-nav ul.menu li:hover > ul { display: block; }
.pbn-primary-nav ul.menu ul li a {
  display: block;
  padding: 8px 14px;
  color: #fff;
  text-decoration: none;
}
@media (max-width: 768px) {
  .pbn-primary-nav ul.menu { flex-direction: column; }
  .pbn-primary-nav ul.menu ul { position: static; }
}

/* --- PBN Breadcrumbs --- */
.pbn-breadcrumbs { padding: 8px 0; font-size: 0.875rem; color: #6b7280; }
.pbn-breadcrumbs ol { list-style: none; display: flex; flex-wrap: wrap; margin: 0; padding: 0; }
.pbn-breadcrumbs li::after { content: ' \00BB '; margin: 0 6px; }
.pbn-breadcrumbs li:last-child::after { content: none; }
.pbn-breadcrumbs a { color: var(--wp--preset--color--primary, #2563eb); text-decoration: none; }

/* --- Accessibility --- */
.skip-link { position: absolute; left: -9999px; top: auto; width: 1px; height: 1px; overflow: hidden; }
.skip-link:focus { position: fixed; left: 8px; top: 8px; width: auto; height: auto; z-index: 100000; background: #fff; padding: 8px 16px; font-size: 1rem; box-shadow: 0 2px 8px rgba(0,0,0,.3); }
