/* Learning interface only. A paired foreground/background contract for every
   shared action, after legacy rules. No sizing, spacing, layout or event changes. */
body.logic-unified :is(.btn,.dash-primary,.dash-outline,.dash-language,.studio-primary,.studio-secondary,.resource-button,.reader-next,.reader-prev,.course-back,.bookmark-button,.guidance-hint,.guidance-solution,.studio-more-hints,.studio-text,.quiet-link,.back-link,.admin-text-button){
  --control-bg:transparent;--control-fg:#ddd;--control-border:#555;
  --control-hover-bg:#252525;--control-hover-fg:#fff;--control-hover-border:#777;
  --control-down-bg:#333;--control-down-fg:#fff;
}
body.logic-unified :is(.btn-primary,.dash-primary,.studio-primary,.reader-next,.course-back,.btn-light){
  --control-bg:#ededed;--control-fg:#161616;--control-border:#ededed;
  --control-hover-bg:#fff;--control-hover-fg:#161616;--control-hover-border:#fff;
  --control-down-bg:#d2d2d2;--control-down-fg:#111;
}
body.logic-unified :is(.btn-danger,#deleteMemberForm [type=submit]){
  --control-bg:#492b29;--control-fg:#f0c3bd;--control-border:#81534d;
  --control-hover-bg:#5b3531;--control-hover-fg:#ffded8;--control-hover-border:#a76e65;
  --control-down-bg:#38201e;--control-down-fg:#ffded8;
}
body.logic-unified .activity-tabs .btn[aria-current=page]{
  --control-bg:#ddd;--control-fg:#161616;--control-hover-bg:#fff;--control-hover-fg:#161616;--control-down-bg:#ccc;--control-down-fg:#111;
}
/* ID scope and :is state specificity intentionally outrank legacy reader,
   modal and admin declarations. Colors always move as a pair, never separately. */
html body.logic-unified :is(#app,#modalBox,#toasts,.nav,.unit-completion-dialog) :is(.btn,.dash-primary,.dash-outline,.dash-language,.studio-primary,.studio-secondary,.resource-button,.reader-next,.reader-prev,.course-back,.bookmark-button,.guidance-hint,.guidance-solution,.studio-more-hints,.studio-text,.quiet-link,.back-link,.admin-text-button):is(button,a,[role=button]){
  background:var(--control-bg)!important;color:var(--control-fg)!important;border-color:var(--control-border)!important;
}
html body.logic-unified :is(#app,#modalBox,#toasts,.nav,.unit-completion-dialog) :is(.btn,.dash-primary,.dash-outline,.dash-language,.studio-primary,.studio-secondary,.resource-button,.reader-next,.reader-prev,.course-back,.bookmark-button,.guidance-hint,.guidance-solution,.studio-more-hints,.studio-text,.quiet-link,.back-link,.admin-text-button):is(:hover,:focus-visible){
  background:var(--control-hover-bg)!important;color:var(--control-hover-fg)!important;border-color:var(--control-hover-border)!important;
}
html body.logic-unified :is(#app,#modalBox,#toasts,.nav,.unit-completion-dialog) :is(.btn,.dash-primary,.dash-outline,.dash-language,.studio-primary,.studio-secondary,.resource-button,.reader-next,.reader-prev,.course-back,.bookmark-button,.guidance-hint,.guidance-solution,.studio-more-hints,.studio-text,.quiet-link,.back-link,.admin-text-button):active{
  background:var(--control-down-bg)!important;color:var(--control-down-fg)!important;transform:none!important;
}
/* No child may retain an old light label or gray icon on a light action. */
html body.logic-unified :is(#app,#modalBox,#toasts,.nav,.unit-completion-dialog) :is(.btn,.dash-primary,.dash-outline,.dash-language,.studio-primary,.studio-secondary,.resource-button,.reader-next,.reader-prev,.course-back,.bookmark-button,.guidance-hint,.guidance-solution,.studio-more-hints,.studio-text,.quiet-link,.back-link,.admin-text-button) :is(span,b,strong,small,svg){color:inherit!important}
html body.logic-unified :is(#app,#modalBox,#toasts,.nav,.unit-completion-dialog) :is(button,a,.btn):is(:disabled,[aria-disabled=true],[aria-busy=true],.is-loading){
  background:#292929!important;color:#b0b0b0!important;border-color:#444!important;opacity:1!important;transform:none!important;cursor:not-allowed;
}
html body.logic-unified :is(#app,#modalBox,#toasts,.nav,.unit-completion-dialog) :is(button,a,.btn):is([aria-busy=true],.is-loading){cursor:progress}
html body.logic-unified :is(#app,#modalBox,#toasts,.nav,.unit-completion-dialog) :is(button,a,.btn):is(:disabled,[aria-disabled=true],[aria-busy=true],.is-loading) :is(span,b,strong,small,svg){color:inherit!important}
/* Navigation remains a dark, secondary interaction in every input mode. */
body.logic-unified .dash-sidebar .dash-nav a:is(:hover,:focus-visible){background:#252525!important;color:#fff!important}
body.logic-unified .dash-sidebar .dash-nav a:active{background:#303030!important;color:#fff!important}
body.logic-unified #app .lesson-outline,body.logic-unified .dashboard-v2-page .dash-sidebar,body.logic-unified .shell-mobile-bar{background:var(--logic-sidebar)!important}
