/* Shared WitchcraftDaily category rail. The link treatment stays editorial and
   Star & Sigil remains an ordinary link in Tarot & More. */
.site-header .publisher-nav { gap: 0; }
.publisher-nav-rail > summary {
  display: flex; align-items: center; min-height: 43px; padding: 0 10px;
  color: #fff; cursor: pointer; list-style: none;
  font: 700 12px Arial, Helvetica, sans-serif; letter-spacing: .04em; white-space: nowrap;
}
.publisher-nav-rail > summary::-webkit-details-marker { display: none; }
.publisher-nav-rail > summary::after {
  content: ''; width: 5px; height: 5px; margin: -3px 0 0 8px;
  border-right: 1px solid currentColor; border-bottom: 1px solid currentColor;
  transform: rotate(45deg);
}
.publisher-nav-rail[open] > summary, .publisher-nav-rail > summary:hover { color: #f5d17d; }
.publisher-nav-shell {
  position: absolute; top: 100%; left: 16px; right: 16px; z-index: 20;
  max-width: 1368px; min-height: 305px; margin: 0 auto;
  border: 1px solid #cbd9e2; background: #fff;
  box-shadow: 0 15px 25px #152e402b; box-sizing: border-box;
}
.publisher-nav-shell:has(.publisher-nav-group:nth-child(2)[open]) { min-height: 370px; }
.publisher-nav-index { width: 205px; min-height: inherit; padding: 13px 0; border-right: 1px solid #cbd9e2; box-sizing: border-box; }
.publisher-nav-group { position: static; }
.publisher-nav-group summary {
  display: flex; align-items: center; min-height: 42px; padding: 9px 17px;
  border-left: 3px solid transparent; color: #254b65; cursor: pointer;
  list-style: none; font: 700 11px/1.2 Arial, Helvetica, sans-serif;
  letter-spacing: .04em; white-space: nowrap; box-sizing: border-box;
}
.publisher-nav-group summary::after { display: none; }
.publisher-nav-group[open] summary { border-left-color: #285e86; background: #eff5f8; color: #285e86; }
.publisher-nav-group summary:hover { background: #f3f7fa; color: #285e86; }
.publisher-nav-panel {
  position: absolute; top: 0; left: 205px; right: 0; z-index: 1;
  min-width: 0; min-height: 100%; padding: 20px 28px 25px;
  border: 0; background: #fff; color: #254b65; box-shadow: none;
  column-count: 3; column-gap: 22px; box-sizing: border-box;
}
.publisher-nav-panel::before { display: none; }
.publisher-nav-eyebrow, .publisher-nav-panel h2, .publisher-nav-intro { column-span: all; }
.publisher-nav-eyebrow { margin: 0 0 7px; color: #698091; font: 700 10px Arial, Helvetica, sans-serif; letter-spacing: .13em; }
.publisher-nav-panel h2 { margin: 0 0 5px; color: #254b65; font: 700 25px/1.1 Georgia, serif; }
.publisher-nav-intro { margin: 0 0 16px; color: #698091; font: 12px/1.35 Arial, Helvetica, sans-serif; }
.site-header .publisher-nav-panel a {
  display: block; padding: 8px 0; border-top: 1px solid #cbd9e2;
  color: #254b65; background: transparent;
  font: 400 13px/1.3 Arial, Helvetica, sans-serif;
  letter-spacing: 0; white-space: normal; text-decoration: none; break-inside: avoid;
}
.site-header .publisher-nav-panel a:hover { color: #174e70; background: transparent; text-decoration: underline; }
.publisher-nav-rail > summary:focus-visible,
.publisher-nav-group summary:focus-visible,
.publisher-nav-panel a:focus-visible { outline: 2px solid #f5d17d; outline-offset: 2px; }

/* The same category index becomes a scrollable strip at narrow widths. */
@media (max-width: 1250px) {
  .static-header .static-publisher-menu { color: #fff; background: #285e86; }
  .static-publisher-menu > summary { min-height: 38px; }
  .static-publisher-tabs { display: none; overflow-x: auto; padding: 0 10px; border-bottom: 1px solid #cbd9e2; background: #fff; scrollbar-width: thin; }
  .static-publisher-menu.is-enhanced .static-publisher-tabs { display: flex; }
  .static-publisher-tabs button {
    flex: 0 0 auto; min-height: 48px; padding: 10px 12px;
    border: 0; border-bottom: 3px solid transparent; background: transparent;
    color: #254b65; cursor: pointer; font: 700 11px Arial, Helvetica, sans-serif;
    letter-spacing: .04em; white-space: nowrap;
  }
  .static-publisher-tabs button[aria-selected="true"] { border-bottom-color: #285e86; background: #eff5f8; color: #285e86; }
  .static-publisher-menu nav { display: block; padding: 0; border-bottom: 1px solid #cbd9e2; background: #fff; color: #254b65; }
  .static-publisher-menu-group { padding: 18px 20px 22px; column-count: 3; column-gap: 22px; }
  .static-publisher-menu.is-enhanced .static-publisher-menu-group:not(.is-current) { display: none; }
  .static-publisher-menu-group strong, .static-publisher-menu-intro { display: block; column-span: all; }
  .static-publisher-menu-group strong { margin: 0 0 5px; color: #254b65; font: 700 22px/1.1 Georgia, serif; }
  .static-publisher-menu-intro { margin: 0 0 14px; color: #698091; font: 12px/1.35 Arial, Helvetica, sans-serif; }
  .static-publisher-menu-group a {
    display: block; padding: 8px 0; border-top: 1px solid #cbd9e2;
    color: #254b65; font: 13px/1.3 Arial, Helvetica, sans-serif;
    text-decoration: none; break-inside: avoid;
  }
  .static-publisher-menu-group a:hover { color: #174e70; text-decoration: underline; }
  .static-publisher-menu > summary:focus-visible,
  .static-publisher-tabs button:focus-visible,
  .static-publisher-menu-group a:focus-visible { outline: 2px solid #f5d17d; outline-offset: 2px; }
}
@media (max-width: 700px) {
  .static-publisher-menu-group { padding: 18px 16px 21px; column-count: 2; column-gap: 12px; }
  .static-publisher-menu-group strong { font-size: 21px; }
  .static-publisher-menu-group a { font-size: 12px; }
}
@media (max-width: 360px) {
  .static-publisher-menu-group { column-count: 1; }
}
