:root
{
  --body-font-size: 0.85rem; /* Adjust to your preferred size */
  --body-line-height: 1.45;
  --link-color: #112877;
}

body { background-color: #EEE; }
body .header { width: 100%; }
body .site-grid { background-color: #FFF; }

body .header, body .site-grid
{
  width: 100%;
  max-width: 1600px;
  margin-left: auto;
  margin-right: auto;
}

p { margin-bottom: 0.5rem; }
.nav-item { border-bottom: 1px solid #E0E0E0; }
.nav-item.deeper { border-bottom: 0; }

.nav-item > a
{
  width: 100%;
  display: inline-block;
  padding-top: 4px;
  padding-bottom: 4px;
  margin-top: -4px;
  margin-bottom: -4px;
}

.nav-item.current { font-weight: bold; }
.nav-item.current > ul { font-weight: normal; }
.nav-item > a:hover { background-color: #EEE; }

@media (width >= 1200px)
{
  h1, .h1 { font-size: 1.8rem; }
  h2, .h2 { font-size: 1.5rem; }
}

svg { border: 0 !important; padding: 0 !important; }
code { color: revert !important; }
h2 > a { text-decoration: none !important; }

h2 > a:hover
{
  color: #FFE;
  background-color: #15C;
}

.close { z-index: 1; }
img { height: revert-layer !important; }
.table>:not(caption)>*>* { padding: 0.2rem; }
.float-end { display: none; }
.main-top { border: 0; }
td.list-edit { display: none; }

.blog-featured p strong
{
  display: inline-block;
  padding: 4px;
  padding-left: 8px;
}

.mod-menu a { text-decoration: none !important; }
.sidebar-left.card._menu { border: 0; }
.sidebar-left.card:has(.custom) { border: 0; }
ul.mod-menu { list-style-type: disc; }

@media (width < 992px)
{
  #mod-custom97 > div
  {
    line-height: 1em;
    font-size: 14px !important;
  }
}

.page-header > h1, .com-content-category-blog > h1, .content-category > h1
{
  border-bottom: 1px solid #ccc;
}

#sudoku-grid
{
  grid-template-columns: repeat(9, 44px) !important;
  grid-template-rows: repeat(9, 45px) !important;
}

/* Jump-to-menu button: visible only when the sidebar is relocated */
.menu-jump
{
  position: absolute;
  top: .75rem;
  right: 1rem;
  z-index: 20;
  padding: .25rem .5rem;
  font-size: 1.75rem;
  line-height: 1;
  color: #fff;               /* header is dark by default; adjust to taste */
  text-decoration: none;
}

.menu-jump:hover,
.menu-jump:focus-visible
{
  color: #fff;
  opacity: .8;
}

@media (min-width: 992px)
{
  .menu-jump { display: none; }
}
/* .container-topbar { margin-top: -20px; } */

.container-topbar .mod-custom p:has(> .menu-jump) { margin: 0; }

/* Breathing room above the menu when scrolled to.
   If you enable Cassiopeia's sticky header, increase this
   to at least the header height. */
#site-menu { scroll-margin-top: 1rem; }
.close { padding: 0 12px !important; }
.main-bottom { display: none; }

.main-bottom:has(.cassyad)
{
  display: revert;
  border-top: 1px solid #ddd;
  border-radius: 0;
  margin-bottom: 1em;
}

.card-body:has(.cassyad)
{
  padding: 0;
  padding-left: 6px;
}

.card-body:has(.cassyad) p { margin: 0; }

.bottom-a:has(.mod-banners)
{
  border: 0;
  border-radius: 0;
  border-top: 2px solid black;
  background-color: #EEE;
}

.list-group .icons { display: none; }

@media (min-width: 992px)
{
  .bottom-b { border: 0; }
  .bottom-b .card-body
  {
    position: absolute;
    right: 0;
    bottom: 20px;
    font-size: 12px;
    text-align: right;
  }
}

.container-header .grid-child { padding: 0; }
body.wrapper-fluid header>.grid-child, body.wrapper-fluid footer>.grid-child
{
  padding-left: 0.5em;
}

.weblink-category .list-title .category
{
  font-weight: bold;
  font-size: larger;
}

@media print
{
  .container-sidebar-left, .container-bottom-a
  {
    display: none !important;
  }
}
