html { scrollbar-gutter: stable; }
      .navbar .category-nav-search {
        position: relative; min-width: 44px; min-height: 50px;
        display: flex; align-items: center; justify-content: center;
      }
      .navbar .category-nav-search .search-form {
        position: relative; top: auto; right: auto; margin: 0;
        width: 44px; height: 44px; display: flex; align-items: center;
      }
      .navbar .category-nav-search label { margin: 0; }
      .navbar .category-nav-search .search-field {
        box-sizing: border-box; width: 44px; height: 44px; margin: 0;
        background-position: 10px center; padding-left: 36px !important;
      }
      .navbar .category-nav-search .search-field:focus {
        position: absolute; right: 0; top: 0; width: 230px; z-index: 2;
      }
      #category-show-types .modal-content { background-color: #353535; }
      #category-show-types .modal-content h5 { color: #fff; line-height: 1; }
      #category-show-types .modal-content .btn-xs { cursor: default; }
      .category-footer {
        display: flow-root; height: auto; min-height: 100px;
        background-image: none; border-top: 3px solid #999;
      }
      .category-language-flag {
        margin-right: .35em; line-height: 1;
        font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif;
      }
      .category-footer [data-category-language-switcher] {
        display: flex; flex-wrap: wrap; align-items: center; gap: 6px;
        margin: 12px 0; color: #fff; font-size: 12px; line-height: 20px;
      }
      .category-footer [data-category-language-switcher] a { margin-right: 0; }
      .category-language-dropdown { position: relative; width: max-content; max-width: 100%; }
      .category-language-dropdown summary {
        padding: 8px 12px; border: 1px solid #777; border-radius: 4px;
        background: #353535; color: #fff; cursor: pointer; list-style: none;
      }
      .category-language-dropdown summary::-webkit-details-marker { display: none; }
      .category-language-dropdown summary:focus-visible { outline: 2px solid #9ecffc; outline-offset: 2px; }
      .category-language-options {
        position: absolute; bottom: calc(100% + 4px); left: 0; z-index: 20;
        min-width: 100%; padding: 4px; margin: 0; list-style: none;
        background: #353535; border: 1px solid #777; border-radius: 4px;
        box-shadow: 0 3px 10px rgba(0,0,0,.3);
      }
      .category-language-options a {
        display: flex; align-items: center; min-height: 44px;
        padding: 0 12px; white-space: nowrap;
      }
      .category-language-options a:hover,
      .category-language-options a:focus { background: #454545; color: #fff; }

      .category-footer [data-category-language-switcher] a[aria-current="page"] { text-decoration: underline; }
      @media (max-width: 991px) {
        .navbar .category-nav-search { justify-content: flex-start; }
        .navbar .category-nav-search .search-form { width: 100%; }
        .navbar .category-nav-search .search-field:focus {
          position: relative; width: min(230px, 100%); right: auto; top: auto;
        }
      }
      @media (max-width: 767px) {
        .category-footer [data-category-language-switcher] { justify-content: center; }
      }

      /* Spread compact Spanish badges across the player width. The gap also
         reserves room for each tag's 8px pointer; narrow screens scroll. */
      html[lang="es"] #tags {
        display: flex; flex-wrap: nowrap; align-items: center;
        justify-content: space-between; gap: 14px; overflow-x: auto;
        padding-left: 8px; box-sizing: border-box; max-width: 100%;
      }
      html[lang="es"] #tags a {
        flex: 0 0 auto; white-space: nowrap; margin-left: 0; margin-right: 0;
        padding-left: 5px; padding-right: 5px;
      }
      @media (min-width: 992px) {
        html[lang="es"] .navbar > .container { display: flex; align-items: center; }
        html[lang="es"] .navbar > .container::before,
        html[lang="es"] .navbar > .container::after { display: none; }
        html[lang="es"] .navbar-header { flex: 0 0 215px; }
        html[lang="es"] .navbar-collapse { flex: 1; min-width: 0; padding: 0; }
        html[lang="es"] .navbar-nav { display: flex; flex-wrap: nowrap; align-items: center; float: none !important; justify-content: flex-end; margin: 0; }
        html[lang="es"] .navbar-nav > li > a { padding-left: 10px; padding-right: 10px; white-space: nowrap; }
      }
      @media (min-width: 768px) and (max-width: 991px) {
        html[lang="es"] .navbar-header { float: none; }
        html[lang="es"] .navbar-toggle { display: block; }
        html[lang="es"] .navbar-collapse.collapse { display: none !important; }
        html[lang="es"] .navbar-collapse.collapse.in { display: block !important; }
        html[lang="es"] .navbar-nav { float: none !important; margin: 0; }
        html[lang="es"] .navbar-nav > li { float: none; }
        html[lang="es"] .navbar-nav > li > a { min-height: 44px; }
        html[lang="es"] .navbar-nav .open .dropdown-menu { position: static; float: none; width: auto; }
      }


      .category-header-search { display: none; }
      .category-navbar .navbar-nav > .category-mobile-language { display: none; }
      #category-search-modal .modal-content,
      #category-search-modal .modal-body { background: #353535; color: #fff; }
      #category-search-modal .close { color: #fff; opacity: .85; }
      .category-search-modal-form { display: flex; gap: 8px; align-items: center; }
      .category-search-modal-form input { flex: 1; min-width: 0; height: 44px; font-size: 16px; }
      .category-search-modal-form button { min-height: 44px; }
      @media (max-width: 991px) {
        .category-navbar > .container { width: 100%; }
        /* Keep long menus in page flow so every item remains reachable. */
        .category-navbar.navbar-fixed-top { position: static; }
        .category-navbar .navbar-collapse { max-height: none; }
        .category-navbar .navbar-collapse.in { height: auto !important; overflow-y: visible; }
        .category-navbar .category-mobile-header {
          display: grid; grid-template-columns: 44px minmax(0, 1fr) 44px;
          align-items: center; gap: 8px; min-height: 60px;
          width: 100%; margin: 0 !important; float: none; padding: 8px 0;
        }
        .category-mobile-header::before,
        .category-mobile-header::after { display: none; content: none; }
        .category-navbar .navbar-toggle {
          display: block; grid-column: 1; margin: 0; float: none;
          width: 44px; height: 44px; padding: 11px; border: 0;
        }
        .category-navbar .navbar-brand {
          grid-column: 2; justify-self: center; float: none; margin: 0 !important;
          width: min(215px, 100%); height: 31px;
          background-size: contain; background-position: center;
        }
        .category-header-search {
          grid-column: 3; display: inline-flex; align-items: center; justify-content: center;
          width: 44px; height: 44px; padding: 0; border: 0; border-radius: 4px;
          background: transparent; color: #ddd; font-size: 20px; cursor: pointer;
        }
        .category-header-search:hover { color: #fff; background: #444; }
        .category-header-search:focus-visible { outline: 2px solid #9ecffc; outline-offset: 2px; }
        .category-navbar .navbar-collapse.collapse { display: none !important; }
        .category-navbar .navbar-collapse.collapse.in { display: block !important; }
        .category-navbar .navbar-nav { float: none !important; margin: 0; }
        .category-navbar .navbar-nav > li { float: none; }
        .category-navbar .navbar-nav > li:first-child { margin-right: 0; }
        .category-navbar .navbar-nav > li > a { min-height: 50px; padding: 15px 5px; }
        .category-navbar .navbar-nav .open .dropdown-menu { position: static; float: none; width: auto; }
        .category-navbar .category-nav-search { display: none; }
        .category-navbar .navbar-nav > .category-mobile-language { display: block; padding: 0; width: 100%; }
        .category-mobile-language [data-category-language-switcher],
        .category-mobile-language .category-language-dropdown { display: block; width: 100%; }
        .category-mobile-language summary {
          display: flex; align-items: center; min-height: 50px; padding: 15px 5px;
          border: 0; border-radius: 0; background: transparent; color: #e0e1e1;
          font-size: 90%; line-height: 20px; text-transform: uppercase;
        }
        .category-mobile-language summary .glyphicon { margin-left: 12px; }
        .category-mobile-language summary:hover,
        .category-mobile-language .category-language-dropdown[open] > summary {
          background: #ff6800; color: #fff; border-radius: 4px;
        }
        .category-mobile-language .category-language-options {
          position: static; width: 100%; min-width: 0; padding: 0; margin: 0;
          border: 0; border-radius: 0; box-shadow: none; background: #222;
        }
        .category-navbar .category-mobile-language .category-language-options > li { margin: 0; }
        .category-mobile-language .category-language-options a {
          padding: 10px 20px; color: #e0e1e1; font-size: 90%; line-height: 20px;
        }
        .category-mobile-language .category-language-options a:hover,
        .category-mobile-language .category-language-options a:focus { background: #ff6800; color: #fff; }
        #category-search-modal .modal-dialog { margin: 12vh 15px 15px; }
      }

      body.modal-open { padding-right: 0 !important; overflow-y: scroll !important; }
      .modal-open .navbar-fixed-top,
      .modal-open .navbar-fixed-bottom,
      .modal-open .modal { padding-right: 0 !important; }
      #18andover.modal.in { display: block; background-color: rgba(0, 0, 0, 0.72); }
      #18andover.modal.in .modal-dialog {
        will-change: opacity, transform;
      }
      .mobile-optimized .navbar,
      .mobile-optimized .feed-wrapper { padding: 0 !important; }
      @media (max-width: 767px) {
        .navbar { padding: 0 !important; }
        .navbar-fixed-top { position: static; }
        .feed-wrapper { padding: 0 !important; }
        .footer .left, .footer .right {
          box-sizing: border-box;
          padding: 10px 15px;
          margin: 0;
          overflow-wrap: anywhere;
        }
      }
      .navbar,
      .navbar-collapse,
      .collapsing {
        transition-property: none !important;
        transition-duration: 0s !important;
      }
