/* Shared calm controls. Navigation keeps its text colour on hover. */
body[data-workspace]{--control-bg:#f7f8fa;--control-hover:#eceff2;--control-ink:#283847;--control-line:#cbd4dc;--control-focus:#536e81;--control-accent-bg:#e7eff4;--control-accent-hover:#d8e5ed;--control-accent-ink:#26485f;--control-accent-line:#a5bac9}
html[data-theme=dark] body[data-workspace]{--control-bg:#28313a;--control-hover:#343f4b;--control-ink:#e5ebf0;--control-line:#536271;--control-focus:#b0c5d5;--control-accent-bg:#2a4151;--control-accent-hover:#344f61;--control-accent-ink:#e0edf5;--control-accent-line:#6f8b9e}
:is(html,html[data-theme]) body[data-workspace] :is(.primary,#new,#save-offer,#send-code,#verify-button,.empty-catalog-button):not(:disabled),
body[data-workspace] #guest-profile-form>button[type=submit],body[data-workspace] #empty-request>button,
body[data-workspace] .guest-service-form>button[type=submit]{background:var(--control-accent-bg)!important;color:var(--control-accent-ink)!important;border:1px solid var(--control-accent-line)!important;box-shadow:none!important}
:is(html,html[data-theme]) body[data-workspace] :is(.primary,#new,#save-offer,#send-code,#verify-button,.empty-catalog-button):is(:hover,:active):not(:disabled),
body[data-workspace] #guest-profile-form>button[type=submit]:hover,body[data-workspace] #empty-request>button:hover,
body[data-workspace] .guest-service-form>button[type=submit]:hover{background:var(--control-accent-hover)!important;color:var(--control-accent-ink)!important}
/* Popovers are menus, not rows of primary actions. */
:is(html,html[data-theme]) body[data-workspace] :is(.guest-overflow-options,.chat-overflow-menu,.command-overflow>div,.admin-account-menu>div,.request-status-menu>div) button:not(.danger):not([data-danger]):not(:disabled){background:transparent!important;color:var(--control-ink)!important;border:0!important;box-shadow:none!important;font-weight:400!important}
:is(html,html[data-theme]) body[data-workspace] :is(.guest-overflow-options,.chat-overflow-menu,.command-overflow>div,.admin-account-menu>div,.request-status-menu>div) button:not(.danger):not([data-danger]):is(:hover,:focus-visible):not(:disabled){background:var(--control-hover)!important;color:var(--control-ink)!important}
:is(html,html[data-theme]) body[data-workspace] :is(.request-decision-filters,.workday-tools) button[aria-pressed=true]:not(:disabled){background:var(--control-accent-bg)!important;color:var(--control-accent-ink)!important;border-color:var(--control-accent-line)!important}
:is(html,html[data-theme]) body[data-workspace] :is(.request-decision-filters,.workday-tools) button[aria-pressed=true]:hover:not(:disabled){background:var(--control-accent-hover)!important;color:var(--control-accent-ink)!important}
/* Keep selected tabs quiet in both themes; state is also marked by weight/border. */
:is(html,html[data-theme]) body[data-workspace] .workspace-views button[aria-pressed=true]:not(:disabled){background:var(--control-accent-bg)!important;color:var(--control-accent-ink)!important;border-color:var(--control-accent-line)!important}
:is(html,html[data-theme]) body[data-workspace] .chat-inbox-row:is(:active,:focus-visible){background:color-mix(in srgb,var(--control-accent-bg) 70%,var(--messenger-bg))!important;color:var(--messenger-text)!important}
:is(html,html[data-theme]) body[data-workspace] :is(button,.button):focus-visible{outline:2px solid var(--control-focus)!important;outline-offset:2px;box-shadow:none!important}
/* Icons and emoji retain their transparent material, including hover. */
body[data-workspace] .messenger-composer :is(.chat-icon-only,.chat-emojis button,.composer-remove):hover:not(:disabled){background:var(--control-hover)!important;color:var(--messenger-muted)!important}
body[data-workspace] .messenger-composer .chat-icon-only[aria-pressed=true]:hover{color:#d73c36!important}

body[data-workspace] #workspace>.bar #new:not(:disabled){background:var(--control-accent-bg)!important;color:var(--control-accent-ink)!important;border:1px solid var(--control-accent-line)!important}
body[data-workspace] #workspace>.bar #new:hover:not(:disabled){background:var(--control-accent-hover)!important;color:var(--control-accent-ink)!important}

body[data-workspace] #workspace>.bar button:not(#new):not(:disabled){background:var(--control-bg)!important;color:var(--control-ink)!important;border-color:var(--control-line)!important}
body[data-workspace] #workspace>.bar button:not(#new):hover:not(:disabled){background:var(--control-hover)!important;color:var(--control-ink)!important}
:is(html,html[data-theme]) body[data-workspace] :is(.request-calendar-days button.edge,.request-guest-choices button.selected):not(:disabled){background:var(--control-accent-bg)!important;color:var(--control-accent-ink)!important;border:1px solid var(--control-accent-line)!important}

:is(html,html[data-theme]) body[data-workspace] .range-days .range-day.range-edge{background:var(--control-accent-bg)!important;color:var(--control-accent-ink)!important;border-color:var(--control-accent-line)!important}
body[data-cabinet=manage] button:not(.danger):not(.primary):not(:disabled){background:var(--control-bg)!important;color:var(--control-ink)!important;border:1px solid var(--control-line)!important}
body[data-cabinet=manage] button:not(.danger):not(.primary):hover:not(:disabled){background:var(--control-hover)!important;color:var(--control-ink)!important}
body[data-cabinet=manage] main>nav button.active:not(:disabled){background:var(--control-accent-bg)!important;color:var(--control-accent-ink)!important;border-color:var(--control-accent-line)!important}
/* Disabled controls remain part of the current theme. */
body[data-workspace]{--control-disabled-bg:#edf0f2;--control-disabled-ink:#687681}
html[data-theme=dark] body[data-workspace]{--control-disabled-bg:#303a44;--control-disabled-ink:#aebbc7}
:is(html,html[data-theme]) body[data-workspace] :is(button,.button):disabled{background:var(--control-disabled-bg)!important;color:var(--control-disabled-ink)!important;border-color:var(--control-line)!important;box-shadow:none!important}
html[data-theme=dark] body[data-workspace] :is(input,textarea)::placeholder{color:var(--control-disabled-ink);opacity:1}
