.prism-mobile-more {
  display: none;
}

@media (max-width: 921px) {
  .prism-mobile-more {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: fixed;
    left: 12px;
    top: 12px;
    top: calc(env(safe-area-inset-top) + 12px);
    width: 44px;
    height: 44px;
    padding: 0;
    /* Icon-only (no circular background/border) */
    border-radius: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: rgba(0, 0, 0, 0.9);
    box-shadow: none !important;
    z-index: 999999;
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    user-select: none;
    font-size: 0; /* avoid any stray text rendering */
    line-height: 0;
    touch-action: manipulation;
  }

  /* Remove Astra's dotted focus outline "circle" on tap */
  .prism-mobile-more:focus {
    outline: none !important;
  }

  /* Keep an accessible focus indicator for keyboard users */
  .prism-mobile-more:focus-visible {
    outline: 2px solid rgba(6, 147, 227, 0.65) !important;
    outline-offset: 2px;
  }

  .prism-mobile-more:active {
    transform: scale(0.96);
  }

  body.admin-bar .prism-mobile-more {
    top: 58px;
    top: calc(env(safe-area-inset-top) + 58px);
  }

  .prism-mobile-more svg {
    width: 22px;
    height: 22px;
    display: block;
  }
}

/* Mobile overlay menu (fixed drawer) */
.prism-mobile-menu[hidden] {
  display: none !important;
}

.prism-mobile-menu {
  position: fixed;
  inset: 0;
  z-index: 999998; /* under the floating button */
}

.prism-mobile-menu__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.42);
}

.prism-mobile-menu__panel {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: min(86vw, 360px);
  background: #fff;
  box-shadow: 12px 0 36px rgba(0, 0, 0, 0.22);
  display: flex;
  flex-direction: column;
  padding-top: env(safe-area-inset-top);
  padding-bottom: env(safe-area-inset-bottom);
}

.prism-mobile-menu-open {
  overflow: hidden;
}

.prism-mobile-menu-open body {
  overflow: hidden;
  touch-action: none;
}

.prism-mobile-menu__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 14px 10px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

.prism-mobile-menu__title {
  font-size: 16px;
  font-weight: 700;
  color: rgba(0, 0, 0, 0.88);
}

/* Hide the small black "Menu" label near the button */
.prism-mobile-menu__title {
  display: none !important;
}

.prism-mobile-menu__close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 10px;
  border: 1px solid rgba(0, 0, 0, 0.12);
  background: #fff;
  color: rgba(0, 0, 0, 0.72);
  font-size: 22px;
  line-height: 1;
  padding: 0;
}

/* Hide the X close button (closing via backdrop/ESC/link click) */
.prism-mobile-menu__close {
  display: none !important;
}

.prism-mobile-menu__nav {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  /* Push menu items down so they don't overlap the top-left button */
  padding: 64px 10px 12px;
}

.prism-mobile-menu__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.prism-mobile-menu__list > li {
  margin: 0;
}

.prism-mobile-menu__list > li > a {
  display: block;
  padding: 12px 12px;
  border-radius: 10px;
  text-decoration: none;
  font-size: 17px;
  line-height: 1.25;
  color: #fcb900;
}

.prism-mobile-menu__list > li.current-menu-item > a,
.prism-mobile-menu__list > li.current_page_item > a,
.prism-mobile-menu__list > li.current-menu-ancestor > a,
.prism-mobile-menu__list > li.current_page_ancestor > a {
  color: #0693e3;
  background: rgba(6, 147, 227, 0.08);
}

.prism-mobile-menu__list > li > a:hover,
.prism-mobile-menu__list > li > a:focus {
  background: rgba(0, 0, 0, 0.05);
}

@media (min-width: 922px) {
  .prism-mobile-menu {
    display: none !important;
  }
}

/* Mobile readability: give content a bit more side padding */
@media (max-width: 921px) {
  /* Apply to both Astra container types (plain/separate) */
  .ast-separate-container #content .ast-container,
  .ast-plain-container #content .ast-container {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
}

@media (max-width: 544px) {
  .ast-separate-container #content .ast-container,
  .ast-plain-container #content .ast-container {
    padding-left: 22px !important;
    padding-right: 22px !important;
  }
}

/* Publications (and other pages using full-width UAGB containers):
   alignfull containers are 100vw with no inner padding, so text touches edges.
   Add internal padding on mobile, without breaking the full-width layout. */
@media (max-width: 544px) {
  .entry-content > .wp-block-uagb-container.alignfull,
  .entry-content > .wp-block-uagb-container.alignfull .uagb-container-inner-blocks-wrap {
    box-sizing: border-box;
  }

  .entry-content > .wp-block-uagb-container.alignfull {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  /* Lists in Publications have inline padding:0, so the list markers/numbers can be clipped.
     Restore comfortable indentation on small screens. */
  .entry-content ol.wp-block-list,
  .entry-content ul.wp-block-list,
  .entry-content .wp-block-list {
    padding-left: 1.5em !important;
    padding-right: 0.25em !important;
    box-sizing: border-box;
  }

  /* Prevent long tokens/URLs from visually clipping */
  .entry-content li,
  .entry-content p,
  .entry-content a {
    overflow-wrap: anywhere;
    word-break: break-word;
  }
}

/* Header menu colors (match Notice sentence colors on the front page)
   - orange: luminous vivid amber (#fcb900)
   - sky blue: vivid cyan blue (#0693e3)
*/

/* Default (not selected) menu items -> orange */
#ast-hf-menu-1 .menu-item > .menu-link,
#ast-hf-menu-1 .menu-item > .menu-link:visited,
#ast-hf-mobile-menu .menu-item > .menu-link,
#ast-hf-mobile-menu .menu-item > .menu-link:visited {
  color: #fcb900 !important;
}

/* Selected menu item -> sky blue */
#ast-hf-menu-1 .current-menu-item > .menu-link,
#ast-hf-menu-1 .current-menu-ancestor > .menu-link,
#ast-hf-menu-1 .current_page_item > .menu-link,
#ast-hf-menu-1 .current_page_ancestor > .menu-link,
#ast-hf-mobile-menu .current-menu-item > .menu-link,
#ast-hf-mobile-menu .current-menu-ancestor > .menu-link,
#ast-hf-mobile-menu .current_page_item > .menu-link,
#ast-hf-mobile-menu .current_page_ancestor > .menu-link {
  color: #0693e3 !important;
}

