/* Mobile layer overrides legacy unlayered theme rules without changing desktop. */
@layer blackspigot-mobile {
.mobile-drawerHeader { display: none !important; }
@media (max-width: 900px) {
  .mobile-drawerHeader { display: flex !important; align-items: center !important; justify-content: space-between !important; min-height: 58px !important; padding: 6px 12px 6px 22px !important; border-bottom: 1px solid rgb(71, 55, 79) !important; color: rgb(239, 220, 238) !important; font-size: 15px !important; font-weight: 600 !important; }
  .mobile-drawerClose { display: grid !important; place-items: center !important; width: 44px !important; height: 44px !important; font-size: 26px !important; color: rgb(220, 180, 213) !important; background: none !important; border: 0px !important; }
  body { background: rgb(25, 22, 31) !important; color: rgb(232, 225, 237) !important; font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important; font-size: 14px !important; line-height: 1.5 !important; }
  body * { text-shadow: none !important; }
  html::before, html::after, body::before, body::after, .p-pageWrapper::before, .p-pageWrapper::after, #sab-particles { display: none !important; }
  body .p-pageWrapper, body .p-body, body .p-body-inner { background: none !important; box-shadow: none !important; border: 0px !important; min-width: 0px !important; }
  body .p-body-inner { padding: 14px 12px !important; width: 100% !important; max-width: 100% !important; }
  body .p-body-main, body .p-body-content, body .p-body-pageContent { min-width: 0px !important; width: 100% !important; padding: 0px !important; }
  body .p-nav { background: rgb(37, 31, 45) !important; border-bottom: 1px solid rgb(81, 65, 88) !important; box-shadow: rgba(0, 0, 0, 0.2) 0px 2px 12px !important; min-height: 54px !important; }
  body .p-nav-inner { min-height: 54px !important; align-items: center !important; padding: 0px 8px !important; }
  body .p-nav-menuTrigger { width: 44px !important; height: 44px !important; margin: 0px !important; padding: 10px !important; font-size: 21px !important; background: none !important; border: 0px !important; box-shadow: none !important; }
  body .p-nav-smallLogo { margin: 0px 8px 0px 2px !important; max-width: 36px !important; }
  .p-nav-smallLogo img { object-fit: cover !important; object-position: left center !important; width: 34px !important; height: 34px !important; }
  body .p-navgroup-link { min-height: 44px !important; display: flex !important; align-items: center !important; justify-content: center !important; background: none !important; box-shadow: none !important; border: 0px !important; font-size: 12px !important; padding: 8px !important; }
  body .p-navgroup { display: flex !important; background: none !important; border: 0px !important; box-shadow: none !important; }
  .p-navgroup-link--register { color: rgb(243, 199, 228) !important; }
  body .p-body-header { padding: 0px !important; margin: 0px 0px 14px !important; background: none !important; border: 0px !important; box-shadow: none !important; }
  .p-title { gap: 10px !important; flex-wrap: wrap !important; }
  .p-title-value { font-size: 22px !important; font-weight: 650 !important; line-height: 1.3 !important; letter-spacing: -0.4px !important; }
  .p-description { font-size: 12px !important; line-height: 1.6 !important; }
  body .p-breadcrumbs { margin: 0px 0px 12px !important; padding: 0px !important; font-size: 11px !important; overflow: hidden !important; }
  .p-body-sideNavTrigger { margin: 0px 0px 12px !important; }
  .p-body-sideNavTrigger .button { min-height: 42px !important; border-radius: 8px !important; }
  body .block { margin-bottom: 16px !important; }
  .block-container { background: rgb(38, 33, 46) !important; border: 1px solid rgb(71, 61, 80) !important; border-radius: 10px !important; box-shadow: none !important; overflow: hidden !important; margin: 0px !important; width: 100% !important; max-width: 100% !important; }
  body .structItem--resource { display: grid !important; grid-template-columns: 42px minmax(0px, 1fr) !important; gap: 0px 12px !important; width: 100% !important; box-sizing: border-box !important; }
  .structItem--resource::before, .structItem--resource::after { display: none !important; }
  .structItem--resource .structItem-cell { display: block !important; padding: 0px !important; width: auto !important; }
  .structItem--resource .structItem-cell--icon { grid-area: 1 / 1 / 3 !important; }
  .structItem--resource .structItem-cell--main { grid-column: 2 !important; }
  .structItem--resource .structItem-cell--resourceMeta { grid-column: 2 !important; margin-top: 8px !important; }
  .structItemContainer { width: 100% !important; }
  body .block-header, body .block-minorHeader { padding: 12px 14px !important; font-size: 14px !important; background: rgb(48, 39, 56) !important; color: rgb(233, 217, 238) !important; border: 0px !important; box-shadow: none !important; }
  .block-body { background: none !important; }
  .block-row { padding: 12px 14px !important; }
  .block-footer { padding: 12px 14px !important; background: rgb(41, 35, 48) !important; }
  body .structItem { padding: 14px 12px !important; background: none !important; box-shadow: none !important; border-color: rgb(64, 54, 72) !important; }
  .structItem-title { font-size: 15px !important; font-weight: 600 !important; line-height: 1.5 !important; }
  .structItem-title a { font-weight: 600 !important; }
  .structItem-resourceTagLine { font-size: 12px !important; line-height: 1.5 !important; margin-top: 5px !important; }
  .structItem-minor { font-size: 11px !important; line-height: 1.5 !important; }
  body .structItem-cell--iconExpanded { width: 48px !important; padding-right: 10px !important; }
  .structItem-cell--iconExpanded .avatar { width: 42px !important; height: 42px !important; border-radius: 9px !important; }
  .structItem-secondaryIcon { display: none !important; }
  body .structItem-cell--resourceMeta { padding-top: 8px !important; font-size: 11px !important; }
  .structItem-cell--resourceMeta .ratingStars { font-size: 12px !important; }
  .structItem-cell { min-width: 0px !important; }
  body .block-filterBar { padding: 0px !important; margin: 0px !important; width: 100% !important; background: none !important; }
  .filterBar { display: flex !important; flex-wrap: wrap !important; align-items: center !important; gap: 8px !important; background: rgb(48, 40, 55) !important; padding: 10px !important; border-width: 0px 0px 1px !important; border-style: none none solid !important; border-color: currentcolor currentcolor rgb(81, 65, 88) !important; border-image: none !important; font-size: 12px !important; }
  .filterBar-menuTrigger { min-height: 40px !important; display: inline-flex !important; align-items: center !important; margin-left: auto !important; }
  .filterBar .pageNavWrapper { flex-basis: 100% !important; }
  .filterBar > span { min-height: 40px !important; display: inline-flex !important; align-items: center !important; }
  .filterBar::before, .filterBar::after { display: none !important; }
  body .block-outer { display: flex !important; flex-wrap: wrap !important; gap: 8px !important; padding: 0px !important; background: none !important; border: 0px !important; box-shadow: none !important; margin-bottom: 12px !important; }
  .block-outer-main, .block-outer-opposite { float: none !important; min-width: 0px !important; max-width: 100% !important; }
  .pageNavSimple-el { min-height: 40px !important; padding: 8px 11px !important; display: inline-flex !important; align-items: center !important; border-radius: 7px !important; }
  body .input { font-size: 16px !important; min-height: 44px !important; border-radius: 8px !important; background: rgb(33, 28, 40) !important; color: rgb(232, 224, 237) !important; border-color: rgb(103, 85, 110) !important; box-shadow: none !important; }
  .inputChoices .input, .input--number { min-height: 36px !important; }
  .button { min-height: 42px !important; border-radius: 8px !important; }
  .formRow > dt, .formRow > dd { float: none !important; width: 100% !important; padding: 8px 14px !important; }
  .formRow > dt { padding-bottom: 0px !important; }
  .formSubmitRow-controls { padding: 12px 14px !important; }
  .formSubmitRow-main { background: rgb(48, 39, 56) !important; }
  .formRow-explain { font-size: 12px !important; line-height: 1.6 !important; }
  body .tabs { display: flex !important; flex-wrap: nowrap !important; overflow-x: auto !important; }
  .tabs-tab { flex: 0 0 auto !important; min-height: 44px !important; font-size: 12px !important; padding: 12px 14px !important; white-space: nowrap !important; }
  body .tabs > .hScroller { width: 100% !important; min-height: 46px !important; overflow: visible !important; }
  .tabs .hScroller-scroll { display: flex !important; overflow: auto hidden !important; margin-bottom: 0px !important; padding-bottom: 0px !important; height: auto !important; }
  .tabs .hScroller-action { display: none !important; }
  body .message-inner { display: block !important; }
  .message-cell--user { width: 100% !important; border: 0px !important; padding: 12px !important; background: rgb(48, 39, 56) !important; }
  .message-userDetails { min-width: 0px !important; }
  .message-cell--main { padding: 14px !important; min-width: 0px !important; }
  .message-body { font-size: 14px !important; line-height: 1.65 !important; }
  .bbWrapper img, .bbWrapper video { max-width: 100% !important; height: auto !important; }
  .bbCodeBlock { max-width: 100% !important; overflow: auto !important; }
  body .p-body-sidebar, body .p-body-sideNav { width: 100% !important; margin: 16px 0px 0px !important; padding: 0px !important; }
  .contentRow-main { min-width: 0px !important; overflow-wrap: anywhere !important; }
  .node-title { font-size: 15px !important; }
  .node-description { font-size: 12px !important; }
  .node-body { padding: 12px !important; }
  .node-main { padding: 0px !important; }
  body .memberHeader-main { padding: 18px 14px !important; }
  .memberHeader-name { font-size: 23px !important; }
  .memberHeader-content { padding: 14px !important; }
  .memberHeader-buttons { display: flex !important; flex-wrap: wrap !important; gap: 7px !important; }
  body .overlay-container { padding: 12px !important; background: rgba(16, 12, 23, 0.85) !important; backdrop-filter: blur(3px) !important; }
  .overlay { width: 100% !important; max-width: 560px !important; margin: 0px auto !important; border: 1px solid rgb(101, 81, 110) !important; border-radius: 12px !important; overflow: hidden !important; }
  .overlay-title { padding: 16px 52px 16px 16px !important; min-height: 54px !important; background: rgb(52, 41, 61) !important; color: rgb(239, 222, 239) !important; font-size: 16px !important; line-height: 1.4 !important; }
  .overlay-titleCloser { right: 5px !important; top: 5px !important; width: 44px !important; height: 44px !important; line-height: 44px !important; }
  .overlay-content { max-height: calc(100dvh - 98px) !important; overflow: auto !important; background: rgb(38, 32, 46) !important; }
  body .menu { max-width: calc(-24px + 100vw) !important; }
  .menu-content { max-height: 75dvh !important; overflow: auto !important; border-radius: 10px !important; }
  .menu-linkRow { min-height: 42px !important; padding: 10px 14px !important; }
  body .offCanvasMenu-content { width: min(330px, -42px + 100vw) !important; max-width: calc(-42px + 100vw) !important; background: rgb(34, 28, 42) !important; border: 0px !important; border-radius: 0px 16px 16px 0px !important; box-shadow: rgba(0, 0, 0, 0.333) 12px 0px 40px !important; padding-bottom: env(safe-area-inset-bottom) !important; }
  body .offCanvasMenu-header { min-height: 64px !important; padding: 20px 58px 18px 22px !important; background: rgb(48, 38, 56) !important; color: rgb(240, 224, 241) !important; border-bottom: 1px solid rgb(71, 55, 79) !important; font-size: 17px !important; font-weight: 650 !important; }
  .offCanvasMenu-closer { width: 44px !important; height: 44px !important; top: 9px !important; right: 8px !important; color: rgb(216, 180, 211) !important; }
  body .offCanvasMenu-linkHolder { display: flex !important; align-items: center !important; margin: 2px 12px !important; background: none !important; border: 0px !important; border-radius: 8px !important; box-shadow: none !important; }
  .offCanvasMenu-link { display: flex !important; align-items: center !important; gap: 10px !important; flex: 1 1 0% !important; min-height: 46px !important; padding: 11px 14px !important; background: none !important; color: rgb(214, 201, 223) !important; border: 0px !important; border-radius: 8px !important; box-shadow: none !important; font-size: 14px !important; font-weight: 500 !important; text-transform: none !important; }
  body .offCanvasMenu-linkHolder.is-selected > .offCanvasMenu-link { background: rgba(166, 109, 153, 0.19) !important; color: rgb(240, 197, 232) !important; }
  .offCanvasMenu-link--splitToggle { flex: 0 0 44px !important; width: 44px !important; justify-content: center !important; padding: 10px !important; }
  .offCanvasMenu-link--splitToggle::before { border: 0px !important; }
  .offCanvasMenu-subList { margin: 0px 22px 10px !important; padding: 0px 0px 0px 14px !important; border-left: 1px solid rgb(81, 64, 88) !important; background: none !important; }
  .offCanvasMenu-subList .offCanvasMenu-link { font-size: 12px !important; color: rgb(184, 166, 195) !important; }
  .offCanvasMenu-separator { border-color: rgb(71, 55, 79) !important; margin: 12px 24px !important; }
  .offCanvasMenu-subHeader { padding: 12px 24px !important; color: rgb(182, 160, 190) !important; font-size: 11px !important; }
  body .p-offCanvasRegisterLink { display: flex !important; gap: 4px !important; padding: 10px 12px !important; border-bottom: 1px solid rgb(71, 55, 79) !important; margin-bottom: 10px !important; }
  .p-offCanvasRegisterLink .offCanvasMenu-linkHolder { flex: 1 1 0% !important; margin: 0px !important; }
  .p-offCanvasRegisterLink .offCanvasMenu-separator { display: none !important; }
  .sab-navIcon { width: 18px !important; color: rgb(200, 153, 188) !important; }
  .offCanvasMenu-link.sab-upgrade-nav { margin-top: 10px !important; color: rgb(237, 185, 222) !important; }
  body .sab-upgrade-plans { gap: 16px !important; margin-bottom: 26px !important; }
  .sab-upgrade-card { padding: 22px !important; }
  .sab-upgrade-card h2 { font-size: 24px !important; }
  .sab-upgrade-card > p { min-height: 0px !important; }
  .sab-upgrade-categories > a { padding: 15px !important; }
  .sab-upgrade-section-heading h2 { font-size: 21px !important; }
  body .p-footer { padding: 20px 12px !important; background: rgb(33, 27, 41) !important; font-size: 12px !important; }
  .p-footer-inner { padding: 0px !important; }
  .p-footer-linkList { display: flex !important; flex-wrap: wrap !important; gap: 4px 12px !important; }
  .p-footer-linkList > li { float: none !important; padding: 0px !important; }
  .p-footer-linkList a { min-height: 38px !important; display: inline-flex !important; align-items: center !important; }
  body a:focus-visible, body button:focus-visible { outline: rgb(228, 172, 212) solid 2px !important; outline-offset: 2px !important; }
}
}
