/* Shared controls: loaded after module styles; existing shortcut palettes remain intact. */
:root{
 --button-blue:#dceeff;--button-blue-hover:#c4e1fb;--button-blue-ink:#143b5a;--button-blue-line:#5781a4;
 --button-teal:#d8f3eb;--button-teal-hover:#bde9dc;--button-teal-ink:#124d3d;--button-teal-line:#568c79;
 --button-purple:#eee2ff;--button-purple-hover:#dfcafa;--button-purple-ink:#492669;--button-purple-line:#9974ba;
 --button-row:#edf5fc;--button-row-hover:#dceeff;--button-row-line:#90afc7;
 --button-focus:#155e92;--button-glow:#246eab36;
 --button-disabled:#e5e9e6;--button-disabled-ink:#59675e;--button-disabled-line:#a9b6ae;
}
html[data-theme=dark]{
 --button-blue:#285e84;--button-blue-hover:#34749e;--button-blue-ink:#f3f9ff;--button-blue-line:#80b6dc;
 --button-teal:#235c4b;--button-teal-hover:#2c705b;--button-teal-ink:#e8fff5;--button-teal-line:#6bba9c;
 --button-purple:#53396f;--button-purple-hover:#68478a;--button-purple-ink:#f7efff;--button-purple-line:#af8bd0;
 --button-row:#213b4c;--button-row-hover:#2a4c63;--button-row-line:#557d99;
 --button-focus:#c5e6ff;--button-glow:#8ac9ff4d;
 --button-disabled:#34433b;--button-disabled-ink:#b3c2b9;--button-disabled-line:#697e72;
}

/* Default actions previously inherited the panel background. */
html:root .btn:not(:where(.primary,.lime,.danger,.return-btn,.back,.manifestation-tools .btn,.admin-shortcuts .btn,.organizer-shortcuts .btn,.bib-toolbox>.btn)){
 background:var(--button-blue);color:var(--button-blue-ink);border-color:var(--button-blue-line);
}
html:root .btn:not(:where(.primary,.lime,.danger,.return-btn,.back,.manifestation-tools .btn,.admin-shortcuts .btn,.organizer-shortcuts .btn,.bib-toolbox>.btn)):hover:not(:disabled):not([aria-disabled=true]){
 background:var(--button-blue-hover);color:var(--button-blue-ink);border-color:var(--button-blue-ink);
}
html:root .text-btn:not(:where(.return-btn,.back,.danger)){
 background:var(--button-teal);color:var(--button-teal-ink);border:1px solid var(--button-teal-line);border-radius:6px;padding:7px 10px;line-height:1.4;
}
html:root .text-btn:not(:where(.return-btn,.back,.danger)):hover:not(:disabled):not([aria-disabled=true]){
 background:var(--button-teal-hover);color:var(--button-teal-ink);border-color:var(--button-teal-ink);
}
html:root .category-link{
 background:var(--button-teal);color:var(--button-teal-ink);border:1px solid var(--button-teal-line);border-radius:6px;padding:7px 10px;line-height:1.4;
}
html:root .category-link:hover:not(:disabled){background:var(--button-teal-hover)}

/* Filters and tabs retain a clear selected state. */
html:root .chip,html:root .msg-tabs>button{
 background:var(--button-purple);color:var(--button-purple-ink);border:1px solid var(--button-purple-line);
}
html:root .chip:hover:not(:disabled),html:root .msg-tabs>button:hover:not(:disabled){background:var(--button-purple-hover)}
html:root .msg-tabs{gap:8px;padding-bottom:12px}
html:root .msg-tabs>button{border-radius:7px;padding:11px 13px;line-height:1.4;white-space:normal}
html:root .chip.active,html:root .msg-tabs>button.active{
 background:var(--button-teal);color:var(--button-teal-ink);border-color:var(--button-teal-ink);box-shadow:inset 0 -3px 0 var(--button-teal-ink);font-weight:750;
}

/* Menu rows are quieter than primary actions but remain visibly clickable. */
html:root .action-popover :is(button,a,details>summary){
 background:var(--button-row);color:var(--button-blue-ink);border:1px solid var(--button-row-line);margin-block:4px;
}
html:root .action-popover :is(button,a,details>summary):hover:not(:disabled){background:var(--button-row-hover);color:var(--button-blue-ink);border-color:var(--button-blue-line)}
html:root .action-popover details[open]>summary{background:var(--button-blue);border-color:var(--button-blue-line)}

/* Secondary controls used outside the shared .btn class. */
html:root :is(.regadmin-requests-shortcut,.msg-new-notice,.organizer-social-link){
 background:var(--button-blue);color:var(--button-blue-ink);border-color:var(--button-blue-line);
}
html:root .regadmin-requests-shortcut strong{color:inherit}
html:root :is(.regadmin-requests-shortcut,.msg-new-notice,.organizer-social-link):hover:not(:disabled){background:var(--button-blue-hover)}
html:root :is(.bib-layer,.bib-asset,.aa-row,.msg-thread-row){background:var(--button-row);border-color:var(--button-row-line);color:var(--ink)}
html:root :is(.bib-layer,.bib-asset,.aa-row,.msg-thread-row):hover:not(:disabled){background:var(--button-row-hover)}
html:root :is(.bib-layer.active,.aa-row.selected,.msg-thread-row.selected){
 background:var(--button-teal);border-color:var(--button-teal-line);color:var(--button-teal-ink);box-shadow:inset 3px 0 0 var(--button-teal-line);
}
html[dir=rtl] :is(.bib-layer.active,.aa-row.selected,.msg-thread-row.selected){box-shadow:inset -3px 0 0 var(--button-teal-line)}
html:root .bib-editor-tools .bib-media>summary{
 background:var(--button-purple);color:var(--button-purple-ink);border:1px solid var(--button-purple-line);padding:10px 12px;border-radius:6px;
}
html:root .bib-editor-tools .bib-media>summary:hover{background:var(--button-purple-hover)}
html:root .close{
 background:var(--button-purple);color:var(--button-purple-ink);border:1px solid var(--button-purple-line);border-radius:7px;width:34px;height:34px;line-height:1;padding:0;
}
html:root .close:hover{background:var(--button-purple-hover)}
html:root input::file-selector-button{background:var(--button-blue);color:var(--button-blue-ink);border-color:var(--button-blue-line);cursor:pointer}
html:root input::file-selector-button:hover{background:var(--button-blue-hover)}

/* Keep established meanings: destructive red, publication red, return orange, map yellow. */
html:root :is(.btn.danger,.text-btn.danger,.action-popover .danger){
 background:#b72b36;color:#fff;border:1px solid #b72b36;border-radius:7px;
}
html:root .text-btn.danger{padding:7px 10px;line-height:1.4}
html:root :is(.btn.danger,.text-btn.danger,.action-popover .danger):hover:not(:disabled){background:#92222b;color:#fff;border-color:#92222b}
html:root [data-publish-event][data-published="1"]{background:#c62828;color:#fff;border-color:#c62828}
html:root [data-publish-event][data-published="1"]:hover:not(:disabled){background:#a61f1f;color:#fff;border-color:#a61f1f}
html:root .map-discovery-heading>.btn[data-view=map]{background:#dbf686;color:#182520;border-color:#91ad45}
html:root .map-discovery-heading>.btn[data-view=map]:hover{background:#e8ffab;color:#182520;border-color:#91ad45;box-shadow:0 0 0 3px #dbf68636,0 0 22px #dbf68669}

/* Focus, hover and disabled feedback also applies to the previously colored shortcuts. */
html:root :is(.btn,.text-btn,.chip,.category-link,.close,.msg-tabs>button,.bib-layer,.bib-asset,.aa-row,.msg-thread-row,.regadmin-requests-shortcut,.msg-new-notice,.organizer-social-link,.action-popover button,.action-popover a,.action-popover summary){
 transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease;
}
html:root :is(.btn,.text-btn,.chip,.category-link):hover:not(:disabled):not([aria-disabled=true]):not(.return-btn):not(.back):not([data-view=map]){box-shadow:0 2px 9px var(--button-glow)}
html:root :is(.btn,.text-btn,.chip,.category-link,.close,.msg-tabs>button,.bib-layer,.bib-asset,.aa-row,.msg-thread-row,.regadmin-requests-shortcut,.msg-new-notice,.organizer-social-link,.action-popover button,.action-popover a,.action-popover summary):focus-visible{
 outline:3px solid var(--button-focus);outline-offset:3px;
}
html:root :is(.btn,.btn.primary,.bib-toolbox>.btn,.text-btn,.chip,.category-link,.close,.msg-tabs>button,.bib-layer,.bib-asset,.aa-row,.msg-thread-row,.regadmin-requests-shortcut,.msg-new-notice):is(:disabled,[aria-disabled=true]){
 background:var(--button-disabled);color:var(--button-disabled-ink);border-color:var(--button-disabled-line);box-shadow:none;opacity:1;cursor:not-allowed;
}
html:root :is(.btn,.text-btn)[aria-busy=true]{cursor:wait}
@media(prefers-reduced-motion:reduce){html:root :is(.btn,.text-btn,.chip,.category-link,.close,.msg-tabs>button,.bib-layer,.bib-asset,.aa-row,.msg-thread-row,.regadmin-requests-shortcut,.msg-new-notice,.organizer-social-link,.action-popover button,.action-popover a,.action-popover summary){transition:none}}
