/* Public/member Sunshine shell and home feed, shared with approved-ui v3.
 * Keep legacy route, feature gates, player geometry and chat colours intact.
 * This adapter is loaded once by container; AJAX home entries use the same CSS.
 */
body.ussr-site {
  background-color: var(--ussr-bg);
  color: var(--ussr-ink);
  font-family: var(--ussr-font);
}
/* Sunshine adds/removes this stylesheet when its existing theme switch runs.
 * Follow that actual state, without a second cookie, listener or theme setting.
 */
html:has(#night-mode-css) body.ussr-site {
  --ussr-bg: #17212B;
  --ussr-surface: #212D3B;
  --ussr-ink: #EFF5FC;
  --ussr-muted: #A7B7C8;
  --ussr-line: #344457;
  --ussr-accent: #70A9ED;
  --ussr-on-accent: #142A41;
  --ussr-soft: #2B3A4B;
  --ussr-pale: #2D4967;
  --ussr-shadow: 0 8px 28px #00000018;
  color-scheme: dark;
}
body.ussr-site .header-container > .navbar-default {
  background: var(--ussr-surface);
  border-bottom: 1px solid var(--ussr-line);
  box-shadow: 0 3px 18px #35577908;
}
body.ussr-site .navbar-default .search-input {
  background: var(--ussr-bg);
  border: 1px solid var(--ussr-line);
  border-radius: var(--ussr-radius-field);
  color: var(--ussr-ink);
  font-family: var(--ussr-font);
  min-height: var(--ussr-target);
}
body.ussr-site .navbar-default .search-input::placeholder { color: var(--ussr-muted); }
body.ussr-site .navbar-default .inner-addon > svg { color: var(--ussr-muted); }
body.ussr-site .navbar-default .inner-addon > svg :is(circle, path) { stroke: currentColor; }
body.ussr-site .navbar-default .dropdown-menu {
  background: var(--ussr-surface);
  color: var(--ussr-ink);
  border: 1px solid var(--ussr-line);
  border-radius: var(--ussr-radius-card);
  box-shadow: var(--ussr-shadow);
}
body.ussr-site .navbar-default .dropdown-menu > li > a { color: var(--ussr-ink); }
body.ussr-site .navbar-default .dropdown-menu > li > a:is(:hover, :focus) { background: var(--ussr-soft); }
body.ussr-site .left-sidebar > ul > li > a {
  color: var(--ussr-ink);
  border-radius: var(--ussr-radius-button);
  font-family: var(--ussr-font);
  min-height: var(--ussr-target);
  line-height: 1.45;
  padding-block: 12px;
}
body.ussr-site .left-sidebar > ul > li > a:hover {
  color: var(--ussr-accent);
  background: var(--ussr-pale);
}
body.ussr-site .left-sidebar > ul > li.active > a {
  color: var(--ussr-accent);
  background: var(--ussr-pale);
  font-weight: 700;
}
body.ussr-site :is(.navbar-default, .left-sidebar, .ussr-home) :is(a, button, input, select, textarea):focus-visible {
  outline: 3px solid var(--ussr-accent);
  outline-offset: 3px;
}
body.ussr-site .ussr-feed-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
  margin: 4px 0 24px;
}
body.ussr-site .ussr-section-label {
  color: var(--ussr-accent);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .16em;
  margin: 0 0 6px;
}
body.ussr-site .ussr-feed-heading h1 {
  color: var(--ussr-ink);
  font: 700 clamp(26px, 3vw, 34px)/1.2 var(--ussr-font);
  margin: 0;
}
body.ussr-site .ussr-feed-description { color: var(--ussr-muted); margin: 8px 0 0; font-size: 14px; }
body.ussr-site .ussr-feed-story {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: var(--ussr-target);
  max-width: 100%;
  padding: 10px 16px;
  color: var(--ussr-accent);
  background: var(--ussr-pale);
  border: 1px solid var(--ussr-line);
  border-radius: var(--ussr-radius-button);
  font-weight: 600;
  text-decoration: none;
  overflow-wrap: anywhere;
}
body.ussr-site .ussr-feed-story:hover { background: var(--ussr-soft); }
body.ussr-site .ussr-feed-story svg { width: 20px; height: 20px; flex: 0 0 20px; }
body.ussr-site .ussr-home :is(.wow_content, .post, .publisher-box) {
  background-color: var(--ussr-surface);
  color: var(--ussr-ink);
  border: 1px solid var(--ussr-line);
  border-radius: var(--ussr-radius-card);
  box-shadow: var(--ussr-shadow);
}
body.ussr-site .ussr-home .post { margin-bottom: 22px; }
body.ussr-site .ussr-home .post .post-heading .meta .title a {
  color: var(--ussr-ink);
  font-family: var(--ussr-font);
}
body.ussr-site .ussr-home .post .post-heading .meta .time { color: var(--ussr-muted); font-family: var(--ussr-font); }
body.ussr-site .ussr-home .post .post-footer { border-color: var(--ussr-line); background-color: var(--ussr-surface); }
body.ussr-site .ussr-home .publisher-box textarea.postText {
  font-family: var(--ussr-font);
  font-size: 16px;
  background-color: var(--ussr-surface);
}
body.ussr-site .ussr-home .publisher-box textarea.postText::placeholder { color: var(--ussr-muted); }
body.ussr-site .ussr-home .publisher-box .btn-main {
  background: var(--ussr-accent);
  color: var(--ussr-on-accent);
  border-radius: var(--ussr-radius-button);
  min-height: var(--ussr-target);
}
body.ussr-site .ussr-home .wow_home_stories { padding-block: 16px; margin-bottom: 20px; }
body.ussr-site .ussr-home .status-list p a { color: var(--ussr-ink); }
body.ussr-site .ussr-home .order-by { color: var(--ussr-muted); }
body.ussr-site .ussr-home .order-by .dropdown-toggle { color: var(--ussr-accent); }
body.ussr-site .ussr-home #filterby-post {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 6px;
  background: var(--ussr-soft);
  border: 1px solid var(--ussr-line);
  border-radius: var(--ussr-radius-card);
}
body.ussr-site .ussr-home #filterby-post > .filter-by-li {
  float: none;
  flex: 1 0 44px;
  width: auto;
  min-height: var(--ussr-target);
  border: 0;
  border-radius: var(--ussr-radius-button);
  background: transparent;
  color: var(--ussr-muted);
}
body.ussr-site .ussr-home #filterby-post > :is(.active, .avtive) {
  background: var(--ussr-surface);
  color: var(--ussr-accent);
}
body.ussr-site .ussr-home #filterby-post .filter_negative_clr svg { color: inherit; }
@media (max-width: 600px) {
  body.ussr-site .ussr-feed-heading { gap: 12px; margin-bottom: 18px; }
  body.ussr-site .ussr-feed-heading h1 { font-size: 28px; }
  body.ussr-site .ussr-feed-story { font-size: 13px; padding-inline: 12px; }
  body.ussr-site .ussr-home .post { margin-bottom: 16px; }
}
@media (forced-colors: active) {
  body.ussr-site .ussr-feed-story,
  body.ussr-site .ussr-home #filterby-post > :is(.active, .avtive) { outline: 1px solid Highlight; }
}

/* The drawer uses the same 992px boundary as Sunshine, including a resized
 * desktop browser. A closed off-canvas menu must not remain keyboard-focusable.
 */
body.ussr-site .ussr-skip-link {
  position: fixed;
  top: 8px;
  inset-inline-start: 8px;
  z-index: 10001;
  padding: 12px 16px;
  min-height: var(--ussr-target);
  border-radius: var(--ussr-radius-button);
  background: var(--ussr-surface);
  color: var(--ussr-ink);
  box-shadow: var(--ussr-shadow);
  transform: translateY(calc(-100% - 16px));
}
body.ussr-site .ussr-skip-link:focus {
  transform: translateY(0);
  outline: 3px solid var(--ussr-accent);
  outline-offset: 2px;
}
body.ussr-site #contnet { scroll-margin-top: 80px; }
body.ussr-site button.side_slide_menu,
body.ussr-site .ussr-menu-close {
  width: var(--ussr-target);
  min-width: var(--ussr-target);
  min-height: var(--ussr-target);
  padding: 10px;
  border: 0;
  border-radius: var(--ussr-radius-button);
  background: transparent;
  color: var(--ussr-ink);
  font: inherit;
  line-height: 1;
}
body.ussr-site button.side_slide_menu { margin: 0; margin-inline-end: 8px; }
body.ussr-site button.side_slide_menu svg { display: block; margin: auto; }
body.ussr-site .ussr-menu-close { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 var(--ussr-target); }
body.ussr-site :is(button.side_slide_menu,.ussr-menu-close):hover { background: var(--ussr-pale); }
body.ussr-site .ussr-menu-close:focus-visible { outline: 3px solid var(--ussr-accent); outline-offset: -3px; }
body.ussr-site #ussr-site-mobile-navigation { display: none; }
@media (max-width: 992px) {
  body.ussr-site #ussr-site-mobile-navigation {
    display: block;
    visibility: hidden;
    background: var(--ussr-surface);
    color: var(--ussr-ink);
    max-width: min(320px, calc(100vw - 44px));
    overscroll-behavior: contain;
  }
  body.ussr-site.side_open #ussr-site-mobile-navigation { visibility: visible; }
  body.ussr-site #ussr-site-mobile-navigation .side_brand {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
  }
}
@media (prefers-reduced-motion: reduce) {
  body.ussr-site #ussr-site-mobile-navigation { transition: none; }
}
