:root, .stage { --c-womens-rights: #a04868; }
.atlas-menu-trigger { white-space: nowrap; }
.atlas-toolbar { max-width: calc(100% - 32px); flex-wrap: wrap; justify-content: flex-end; }
.atlas-menu-panel.womens-rights-panel { width: 420px; height: min(85svh, 700px, var(--atlas-menu-space, 700px)); max-height: min(85svh, 700px, var(--atlas-menu-space, 700px)); padding: 12px 16px; overflow: hidden; }
.womens-rights-panel:not([hidden]) { display: flex; flex-direction: column; }
.rights-heading { display: flex; align-items: center; justify-content: space-between; gap: 6px; flex: none; }
.rights-heading h2 { margin: 0; font-size: 22px; }
.rights-close { flex: none; width: 44px; height: 44px; border: 0; border-radius: 4px; background: transparent; color: inherit; font: 24px var(--body); cursor: pointer; }
.womens-rights-panel .rights-intro { margin: 0 0 4px; flex: none; }
.rights-visibility { display: flex; align-items: center; justify-content: space-between; min-height: 38px; flex: none; font: 13px var(--body); cursor: pointer; }
.rights-visibility input { width: 19px; height: 19px; accent-color: #a04868; }
.rights-search-label { margin: 4px 0 6px; flex: none; font: 11px var(--body); color: #756c65; }
#rightsSearch { width: 100%; min-height: 44px; flex: none; border: 1px solid #c8bdaf; border-radius: 5px; padding: 9px 10px; background: #fffdf9; color: #2d2420; font: 14px var(--body); }
.rights-filters { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 8px; flex: none; }
.rights-filters label { min-width: 0; font: 10px var(--body); color: #756c65; }
.rights-filters select { display: block; margin-top: 4px; width: 100%; min-height: 44px; padding: 5px; border: 1px solid #c8bdaf; border-radius: 4px; background: #fffdf9; color: #2d2420; font: 12px var(--body); }
.womens-rights-panel .rights-status { margin: 8px 0; flex: none; font-size: 11px; }
.rights-results { flex: 1; min-height: 0; overflow-y: auto; overscroll-behavior: contain; border-block: 1px solid #e4dcd0; }
.rights-group h3 { margin: 0; padding: 10px 2px 6px; font: 11px var(--body); color: #756c65; }
.rights-group h3 span { margin-left: 5px; color: #a04868; }
.rights-result { display: flex; gap: 9px; width: 100%; min-height: 60px; padding: 10px 5px; border: 0; border-bottom: 1px solid #e4dcd0; text-align: left; color: inherit; background: transparent; font: 13px/1.5 var(--body); cursor: pointer; }
.rights-result > span:first-child { flex: none; font-size: 18px; }
.rights-result strong { font-weight: 500; }
.rights-result small { display: block; margin-top: 3px; color: #756c65; font-size: 11px; }
.rights-result[aria-current="true"] { box-shadow: inset 2px 0 #a04868; background: #eee7dc; }
.rights-result:hover, .rights-close:hover { background: #eee7dc; }
.womens-rights-panel :is(button,input,select):focus-visible { outline: 2px solid #a04868; outline-offset: -2px; }
.womens-rights-panel .rights-hint { margin: 8px 0 0; flex: none; font-size: 10px; }
.rights-context { padding: 10px; background: #f8f3ef; border-left: 2px solid #a04868; font-size: 12px; }
@media (max-width: 860px) {
  .atlas-menu-panel.womens-rights-panel { position: fixed; top: auto; left: 12px; right: 12px; bottom: max(12px, env(safe-area-inset-bottom)); width: auto; max-width: none; height: min(85svh, 650px); max-height: min(85svh, 650px); border-radius: 12px; }
  #rightsSearch, .rights-filters select { font-size: 16px; }
}
@media (max-width: 560px) {
  .atlas-toolbar, .stage.comparing .atlas-toolbar { display: grid; grid-template-columns: repeat(2, max-content); }
}
@media (max-height: 600px) {
  .womens-rights-panel .rights-intro, .rights-search-label, .womens-rights-panel .rights-hint { display: none; }
  #rightsSearch { margin-top: 2px; }
  .rights-visibility { min-height: 34px; }
  .rights-filters { margin-top: 4px; }
  .womens-rights-panel .rights-status { margin: 6px 0; }
}
@media (max-height: 600px) {
  /* Use the available viewport when the space below the toolbar cannot hold
     both the controls and a readable, scrollable results list. */
  .atlas-menu-panel.womens-rights-panel { top: 12px; bottom: 12px; height: calc(100svh - 24px); max-height: calc(100svh - 24px); }
}
