/* BM Dashboard — balanced control system, 2026-07-21.
   Module geometry is preserved; only deliberate density tiers are normalized. */
:root{
  --bm-control-purple:#5d53b4;
  --bm-control-purple-2:#4c478d;
  --bm-control-purple-soft:#efecfb;
  --bm-control-purple-soft-2:#f7f5fd;
  --bm-control-blue:#527ea8;
  --bm-control-green:#34845d;
  --bm-control-green-soft:#eaf6ef;
  --bm-control-red:#cb5969;
  --bm-control-red-soft:#fff0f2;
  --bm-control-ink:#343149;
  --bm-control-muted:#706b83;
  --bm-control-line:rgba(93,83,180,.18);
  --bm-control-line-strong:rgba(93,83,180,.32);
  --bm-control-shadow:0 5px 13px rgba(39,36,67,.07),inset 0 1px 0 rgba(255,255,255,.78);
  --bm-control-shadow-hover:0 9px 19px rgba(39,36,67,.11),inset 0 1px 0 rgba(255,255,255,.86);
  --bm-control-primary-shadow:0 8px 18px rgba(76,68,147,.22),inset 0 1px 0 rgba(255,255,255,.18);
  --bm-control-primary-shadow-hover:0 12px 24px rgba(76,68,147,.28),inset 0 1px 0 rgba(255,255,255,.22);
}

button,[role="button"]{
  font-family:inherit;
  -webkit-tap-highlight-color:transparent;
}
button:focus-visible,[role="button"]:focus-visible{
  outline:0;
  box-shadow:0 0 0 3px rgba(93,83,180,.17),0 7px 18px rgba(39,36,67,.12)!important;
}

/* Shared, restrained movement. */
:is(
  .btn,.dbBtn,.bmBtn,.bmPrimaryBtn,.bmSecondaryBtn,.detailsBtn,
  .tabBtn,.dbTab,.bmModeBtn,.bmSpoTabBtn,.usageInnerTab,
  .topbarIconBtn,.dbIconBtn,.dbMiniIconBtn,.bmHeaderBtn,.bmHeaderMenuBtn,
  .bmThreadActionBtn,.bmMessageMenuBtn,.spoIconBtn,.spoEmojiBtn,.chartsGearBtn,
  .settingsAddBtn,.settingsStyleBtn,.riEnrichButton,.riAdminDangerBtn,
  .bmFix12AddBtn,.bmFix12EditBtn,.bmFix13Btn,.bmFix13AddBtn,.bmFix13EditBtn,
  .bmFix16Btn,.bmFix16SheetBtn,.bmFix17Btn,.bmFix17SheetBtn,
  .fix7Btn,.fix7AddBtn,.fix7CalendarBtn,.fix10SaveBtn,.fix10SmallBtn,
  .bmInc_btn,.bmInc_importBtn,.bmInc_calendarBtn,.bmInc_settingsBtn,
  .bmAssistantAskBtn,.bmAssistantTranslateBtn,.bmAssistantToggleBtn,
  .spoTinyBtn,.spoStatusBtn,.spoSendBtn,
  .bmConferenceModalBtn,.bmConferenceSoftBtn,.bmConferenceJoinMini,.bmConferenceInviteJoin,
  .bmCallTopAction,.bmCallControl,.bmCallPresentationExpand,.bmCallChatSend
){
  transition:transform .16s ease,box-shadow .19s ease,background .19s ease,
             border-color .19s ease,color .17s ease,filter .17s ease,opacity .17s ease!important;
}
:is(
  .btn,.dbBtn,.bmBtn,.bmPrimaryBtn,.bmSecondaryBtn,.detailsBtn,
  .tabBtn,.dbTab,.bmModeBtn,.bmSpoTabBtn,.usageInnerTab,
  .topbarIconBtn,.dbIconBtn,.dbMiniIconBtn,.bmHeaderBtn,.bmHeaderMenuBtn,
  .bmThreadActionBtn,.bmMessageMenuBtn,.spoIconBtn,.spoEmojiBtn,.chartsGearBtn,
  .settingsAddBtn,.settingsStyleBtn,.riEnrichButton,.riAdminDangerBtn,
  .bmFix12AddBtn,.bmFix12EditBtn,.bmFix13Btn,.bmFix13AddBtn,.bmFix13EditBtn,
  .bmFix16Btn,.bmFix16SheetBtn,.bmFix17Btn,.bmFix17SheetBtn,
  .fix7Btn,.fix7AddBtn,.fix7CalendarBtn,.fix10SaveBtn,.fix10SmallBtn,
  .bmInc_btn,.bmInc_importBtn,.bmInc_calendarBtn,.bmInc_settingsBtn,
  .bmAssistantAskBtn,.bmAssistantTranslateBtn,.bmAssistantToggleBtn,
  .spoTinyBtn,.spoStatusBtn,.spoSendBtn,
  .bmConferenceModalBtn,.bmConferenceSoftBtn,.bmConferenceJoinMini,.bmConferenceInviteJoin,
  .bmCallTopAction,.bmCallControl,.bmCallPresentationExpand,.bmCallChatSend
):hover:not(:disabled){transform:translateY(-1px);}
:is(
  .btn,.dbBtn,.bmBtn,.bmPrimaryBtn,.bmSecondaryBtn,.detailsBtn,
  .tabBtn,.dbTab,.bmModeBtn,.bmSpoTabBtn,.usageInnerTab,
  .topbarIconBtn,.dbIconBtn,.dbMiniIconBtn,.bmHeaderBtn,.bmHeaderMenuBtn,
  .bmThreadActionBtn,.bmMessageMenuBtn,.spoIconBtn,.spoEmojiBtn,.chartsGearBtn,
  .settingsAddBtn,.settingsStyleBtn,.riEnrichButton,.riAdminDangerBtn,
  .bmFix12AddBtn,.bmFix12EditBtn,.bmFix13Btn,.bmFix13AddBtn,.bmFix13EditBtn,
  .bmFix16Btn,.bmFix16SheetBtn,.bmFix17Btn,.bmFix17SheetBtn,
  .fix7Btn,.fix7AddBtn,.fix7CalendarBtn,.fix10SaveBtn,.fix10SmallBtn,
  .bmInc_btn,.bmInc_importBtn,.bmInc_calendarBtn,.bmInc_settingsBtn,
  .bmAssistantAskBtn,.bmAssistantTranslateBtn,.bmAssistantToggleBtn,
  .spoTinyBtn,.spoStatusBtn,.spoSendBtn,
  .bmConferenceModalBtn,.bmConferenceSoftBtn,.bmConferenceJoinMini,.bmConferenceInviteJoin,
  .bmCallTopAction,.bmCallControl,.bmCallPresentationExpand,.bmCallChatSend
):active:not(:disabled){transform:translateY(0) scale(.985);}

/* --------------------------------------------------------------------------
   STANDARD ACTIONS — 34–36 px, not oversized
   -------------------------------------------------------------------------- */
:is(.btn,.dbBtn,.bmBtn,.bmPrimaryBtn,.bmSecondaryBtn){
  min-height:36px!important;
  height:36px!important;
  padding:0 13px!important;
  border-radius:11px!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:0!important;
}
:is(.btn:not(.primary):not(.danger):not(.ghost),.dbBtn:not(.primary):not(.danger),
    .bmBtn:not(.primary):not(.danger):not(.ghost),.bmSecondaryBtn){
  border:1px solid var(--bm-control-line)!important;
  background:linear-gradient(180deg,#fff,var(--bm-control-purple-soft-2))!important;
  color:#4a4567!important;
  box-shadow:var(--bm-control-shadow)!important;
}
:is(.btn:not(.primary):not(.danger):not(.ghost),.dbBtn:not(.primary):not(.danger),
    .bmBtn:not(.primary):not(.danger):not(.ghost),.bmSecondaryBtn):hover:not(:disabled){
  border-color:var(--bm-control-line-strong)!important;
  background:linear-gradient(180deg,#fff,#f2effc)!important;
  color:#413b75!important;
  box-shadow:var(--bm-control-shadow-hover)!important;
}
:is(.btn.primary,.dbBtn.primary,.bmBtn.primary,.bmPrimaryBtn,.settingsAddBtn,
    .settingsStyleBtn.primary,.riEnrichButton.primary,.fix10SaveBtn){
  border-color:transparent!important;
  background:linear-gradient(135deg,#6c62c4 0%,var(--bm-control-purple) 50%,var(--bm-control-purple-2) 100%)!important;
  color:#fff!important;
  box-shadow:var(--bm-control-primary-shadow)!important;
}
:is(.btn.primary,.dbBtn.primary,.bmBtn.primary,.bmPrimaryBtn,.settingsAddBtn,
    .settingsStyleBtn.primary,.riEnrichButton.primary,.fix10SaveBtn):hover:not(:disabled){
  background:linear-gradient(135deg,#756bcd 0%,#645bbc 50%,#514b95 100%)!important;
  box-shadow:var(--bm-control-primary-shadow-hover)!important;
  filter:none!important;
}
:is(.btn.danger,.dbBtn.danger,.bmBtn.danger,.miniDangerBtn,.failedDeleteBtn,.riAdminDangerBtn){
  border:1px solid rgba(203,89,105,.28)!important;
  background:linear-gradient(180deg,#fff7f8,var(--bm-control-red-soft))!important;
  color:#b44455!important;
  box-shadow:0 5px 13px rgba(156,62,78,.07)!important;
}
:is(.btn.danger,.dbBtn.danger,.bmBtn.danger,.miniDangerBtn,.failedDeleteBtn,.riAdminDangerBtn):hover:not(:disabled){
  border-color:rgba(203,89,105,.44)!important;
  background:#ffe9ed!important;
  color:#a93648!important;
  box-shadow:0 9px 18px rgba(156,62,78,.12)!important;
}
:is(.btn.ghost,.bmBtn.ghost){
  border-color:transparent!important;
  background:transparent!important;
  color:#615b78!important;
  box-shadow:none!important;
}
:is(.btn.ghost,.bmBtn.ghost):hover:not(:disabled){
  background:rgba(93,83,180,.08)!important;
  color:#49427e!important;
}
:is(.btn,.dbBtn,.bmBtn,.bmPrimaryBtn,.bmSecondaryBtn):disabled{
  opacity:.48!important;cursor:not-allowed!important;transform:none!important;box-shadow:none!important;
}

/* Table action: coloured, but deliberately compact. */
.detailsBtn{
  min-height:32px!important;
  height:32px!important;
  padding:0 13px!important;
  border-radius:10px!important;
  border:1px solid rgba(91,81,170,.24)!important;
  background:linear-gradient(135deg,#6b62c1,#5751a2)!important;
  color:#fff!important;
  font-size:11px!important;
  line-height:1!important;
  font-weight:800!important;
  box-shadow:0 6px 14px rgba(78,69,149,.18)!important;
}
.detailsBtn:hover:not(:disabled){
  background:linear-gradient(135deg,#746aca,#6058ad)!important;
  box-shadow:0 9px 18px rgba(78,69,149,.24)!important;
  filter:none!important;
}

/* --------------------------------------------------------------------------
   TABS — active state restores the dashboard colour
   -------------------------------------------------------------------------- */
:is(.tabBtn,.bmModeBtn,.bmSpoTabBtn,.usageInnerTab,
    .spoTab,.bmCiTab,.bmCallSideTab,.bmSearchFilterChip){
  min-height:32px!important;
  height:32px!important;
  padding:0 12px!important;
  border-radius:10px!important;
  border:1px solid rgba(93,83,180,.15)!important;
  background:linear-gradient(180deg,#fff,#f7f5fc)!important;
  color:#615b78!important;
  font-size:11px!important;
  line-height:1!important;
  font-weight:800!important;
  box-shadow:0 4px 11px rgba(39,36,67,.045)!important;
}
:is(.tabBtn,.bmModeBtn,.bmSpoTabBtn,.usageInnerTab,
    .spoTab,.bmCiTab,.bmCallSideTab,.bmSearchFilterChip):hover:not(:disabled){
  border-color:rgba(93,83,180,.29)!important;
  background:#f2effb!important;
  color:#4c4583!important;
  box-shadow:0 7px 15px rgba(39,36,67,.075)!important;
}
:is(.tabBtn.active,.bmModeBtn.active,.bmSpoTabBtn.active,
    .usageInnerTab.active,.spoTab.active,.bmCiTab.active,.bmCallSideTab.active,
    .bmSearchFilterChip.active,.bmSpoTabActive){
  border-color:transparent!important;
  background:linear-gradient(135deg,#6b62c2,#56509f)!important;
  color:#fff!important;
  box-shadow:0 7px 16px rgba(78,69,149,.2)!important;
}

/* Vertical admin navigation is denser than before, but still easy to scan. */
.dbTab{
  min-height:38px!important;
  height:38px!important;
  padding:0 11px!important;
  border-radius:11px!important;
  font-size:11.5px!important;
}
.dbTab.active{
  background:#fff!important;
  color:#403a75!important;
  border-color:rgba(93,83,180,.2)!important;
  box-shadow:0 7px 15px rgba(39,36,67,.075)!important;
}

/* --------------------------------------------------------------------------
   ICON ACTIONS — 28 / 30 / 34 px tiers
   -------------------------------------------------------------------------- */
:is(.topbarIconBtn,.spoIconBtn,.spoEmojiBtn,.bmHeaderBtn,.bmHeaderMenuBtn,
    .bmThreadActionBtn,.bmMessageMenuBtn,.dbIconBtn,.dashboardAssistantHeadBtn,.bmIconBtn){
  border:1px solid rgba(93,83,180,.15)!important;
  background:linear-gradient(180deg,#fff,#f5f2fb)!important;
  color:#504a6d!important;
  box-shadow:0 4px 11px rgba(39,36,67,.06),inset 0 1px 0 rgba(255,255,255,.8)!important;
}
:is(.topbarIconBtn,.spoIconBtn,.spoEmojiBtn,.bmHeaderBtn,.bmHeaderMenuBtn,
    .bmThreadActionBtn,.bmMessageMenuBtn,.dbIconBtn,.dashboardAssistantHeadBtn,.bmIconBtn):hover:not(:disabled){
  border-color:rgba(93,83,180,.3)!important;
  background:#efecfa!important;
  color:#403976!important;
  box-shadow:0 8px 16px rgba(39,36,67,.1)!important;
}
.topbarIconBtn,.spoIconBtn,.spoEmojiBtn,.bmHeaderBtn,.bmHeaderMenuBtn,.bmThreadActionBtn,.bmMessageMenuBtn,.bmIconBtn{
  width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;
  padding:0!important;border-radius:11px!important;
}
.dbIconBtn{height:36px!important;min-height:36px!important;border-radius:11px!important;}
.dashboardAssistantHeadBtn{width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important;border-radius:9px!important;}
.chartsGearBtn{
  width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important;
  padding:0!important;border-radius:9px!important;
  border:1px solid rgba(93,83,180,.14)!important;
  background:#f1eef9!important;color:#514a84!important;
  box-shadow:none!important;
}
.chartsGearBtn:hover{background:#e9e5f6!important;border-color:rgba(93,83,180,.28)!important;}

/* Dark topbar keeps contrast and does not turn white. */
.topbar :is(.topbarIconBtn,.spoBtn,.headerAnimBtn){
  border-color:rgba(255,255,255,.17)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.14),rgba(255,255,255,.075))!important;
  color:#fff!important;
  box-shadow:0 5px 13px rgba(16,14,32,.15),inset 0 1px 0 rgba(255,255,255,.12)!important;
}
.topbar :is(.topbarIconBtn,.spoBtn,.headerAnimBtn):hover:not(:disabled){
  border-color:rgba(255,255,255,.28)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.21),rgba(255,255,255,.11))!important;
  box-shadow:0 8px 17px rgba(16,14,32,.2)!important;
}
.spoBtn,.headerAnimBtn{height:34px!important;min-height:34px!important;padding:0 11px!important;border-radius:11px!important;font-size:11px!important;}

/* --------------------------------------------------------------------------
   DETAILS DRAWER — compact hierarchy, not accessibility-demo scale
   -------------------------------------------------------------------------- */
.sideHeader{padding:19px 20px 16px!important;}
.sideHeader .h .name{font-size:18px!important;letter-spacing:.095em!important;}
.sideHeader .h .sub{font-size:11.5px!important;margin-top:6px!important;}
.close,.bmDetailsDeleteHotelBtn{
  width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;
  border-radius:11px!important;
}
#sideBody .tabs{
  gap:7px!important;
  padding:12px 18px 10px!important;
}
#sideBody .tabBtn{
  height:32px!important;min-height:32px!important;padding:0 12px!important;font-size:11px!important;
}
#sideBody .pane{padding:16px 18px 22px!important;}
#sideBody .section{
  padding:15px 16px 14px!important;
  margin-bottom:12px!important;
  border-radius:15px!important;
}

/* Common labelled actions inside Details and accordions. */
:is(.bmFix12AddBtn,.bmFix13Btn,.bmFix13AddBtn,.bmFix16SheetBtn,.bmFix17SheetBtn,
    .fix7AddBtn,.fix7CalendarBtn,.fix10SmallBtn,.dbTinyBtn,.bmAttachAdd,.bmAddTrigger,.bmComposeAction){
  min-height:30px!important;
  height:30px!important;
  padding:0 10px!important;
  border-radius:9px!important;
  border:1px solid rgba(93,83,180,.2)!important;
  background:linear-gradient(180deg,#f8f6fd,#eeebf9)!important;
  color:#4e4784!important;
  font-size:10.5px!important;
  line-height:1!important;
  font-weight:800!important;
  box-shadow:0 4px 10px rgba(39,36,67,.05)!important;
}
:is(.bmFix12AddBtn,.bmFix13Btn,.bmFix13AddBtn,.bmFix16SheetBtn,.bmFix17SheetBtn,
    .fix7AddBtn,.fix7CalendarBtn,.fix10SmallBtn,.dbTinyBtn,.bmAttachAdd,.bmAddTrigger,.bmComposeAction):hover:not(:disabled){
  border-color:rgba(93,83,180,.34)!important;
  background:#e9e5f6!important;
  color:#403878!important;
  box-shadow:0 7px 14px rgba(39,36,67,.085)!important;
}

/* Inline edit/remove controls must remain truly small. */
:is(.bmFix12EditBtn,.bmFix13EditBtn,.bmFix14Action,
    .bmFix18Trash,.bmF19Del,.fix7Save,.fix7Cancel,.fix7Pencil,
    .dbEditBtn,.dbOkBtn,.dbCancelBtn,.dbQuickOk,.dbQuickCancel){
  width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;
  padding:0!important;border-radius:8px!important;
  border:1px solid rgba(93,83,180,.16)!important;
  background:#f2eff9!important;color:#514a84!important;
  box-shadow:none!important;
}
:is(.bmFix12EditBtn,.bmFix13EditBtn,.bmFix14Action:not(.danger),.fix7Pencil,.dbEditBtn):hover:not(:disabled){
  border-color:rgba(93,83,180,.31)!important;background:#e7e3f5!important;color:#403878!important;
}
:is(.bmFix14Action.danger,.bmFix18Trash,.bmF19Del,.dbCancelBtn){
  border-color:rgba(203,89,105,.24)!important;
  background:var(--bm-control-red-soft)!important;
  color:#b54052!important;
}
:is(.bmFix14Action.danger,.bmFix18Trash,.bmF19Del,.dbCancelBtn):hover:not(:disabled){
  border-color:rgba(203,89,105,.42)!important;background:#ffe5e9!important;color:#a43245!important;
}
:is(.fix7Save,.dbOkBtn,.dbQuickOk){
  border-color:rgba(52,132,93,.22)!important;
  background:var(--bm-control-green-soft)!important;
  color:#27744e!important;
}

/* Sheets and confirms in Details use the same restrained action scale. */
.fix7Sheet,.bmFix17Sheet{border-radius:22px!important;padding:20px!important;}
.fix7Sheet h3,.bmFix17Sheet h3{font-size:18px!important;margin-bottom:14px!important;}
.fix7SheetClose,.bmFix17SheetClose{
  width:32px!important;height:32px!important;border-radius:10px!important;font-size:18px!important;
}
:is(.fix7Btn,.bmFix17SheetActions button,.bmDetailsConfirmCancel,.bmDetailsConfirmYes){
  min-height:35px!important;height:35px!important;padding:0 13px!important;
  border-radius:10px!important;font-size:11.5px!important;font-weight:800!important;
}
:is(.fix7Btn.primary,.bmFix17SheetActions button:last-child,.bmDetailsConfirmYes:not(.danger)){
  border-color:transparent!important;background:linear-gradient(135deg,#6b62c2,#56509f)!important;
  color:#fff!important;box-shadow:0 7px 16px rgba(78,69,149,.2)!important;
}
.bmDetailsConfirmYes.danger{
  border-color:rgba(203,89,105,.3)!important;background:var(--bm-control-red-soft)!important;color:#ae3b4d!important;
}

/* Tiny badge add stays tiny. */
.customBadgeAddBtn{
  min-height:22px!important;height:22px!important;padding:0 8px!important;border-radius:999px!important;
  border:1px solid rgba(93,83,180,.19)!important;background:#f5f2fb!important;color:#514a7d!important;
  font-size:9.5px!important;line-height:1!important;box-shadow:none!important;transform:none!important;
}
.customBadgeAddBtn:hover:not(:disabled){
  transform:none!important;background:#eae6f7!important;border-color:rgba(93,83,180,.32)!important;color:#403878!important;
}

/* --------------------------------------------------------------------------
   ADMIN / SETTINGS — normal desktop controls, no giant pills
   -------------------------------------------------------------------------- */
#settingsModal .tabBtn{height:33px!important;min-height:33px!important;padding:0 12px!important;font-size:11px!important;}
#settingsModal :is(.btn,.dbBtn){height:35px!important;min-height:35px!important;padding:0 12px!important;font-size:11.5px!important;}
#settingsModal .settingsAddBtn{height:35px!important;min-height:35px!important;}
#settingsModal .userAccessActions .btn,
#settingsModal .accessRoleActions .btn{height:31px!important;min-height:31px!important;padding:0 10px!important;font-size:10.5px!important;}
.dbClose{width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;border-radius:11px!important;font-size:19px!important;}
.dbMainAddActions .dbBtn{height:34px!important;min-height:34px!important;}

/* --------------------------------------------------------------------------
   INCENTIVE TRACKER
   -------------------------------------------------------------------------- */
.bmInc_btn{height:36px!important;min-height:36px!important;padding:0 13px!important;border-radius:11px!important;font-size:11.5px!important;}
.bmInc_btn:not(.primary):not(.danger){border-color:var(--bm-control-line)!important;background:#f7f5fc!important;color:#4d476c!important;box-shadow:var(--bm-control-shadow)!important;}
.bmInc_btn.primary{border-color:transparent!important;background:linear-gradient(135deg,#6b62c2,#56509f)!important;color:#fff!important;box-shadow:var(--bm-control-primary-shadow)!important;}
.bmInc_btn.danger{border-color:rgba(203,89,105,.26)!important;background:var(--bm-control-red-soft)!important;color:#ae3b4d!important;}
.bmInc_importBtn{height:34px!important;min-height:34px!important;padding:0 11px!important;border-radius:10px!important;font-size:11px!important;}
.bmInc_calendarBtn,.bmInc_settingsBtn,.bmInc_closeBtn{width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;border-radius:10px!important;}

/* --------------------------------------------------------------------------
   CHAT / ASSISTANT
   -------------------------------------------------------------------------- */
.bmAssistantAskBtn,.bmAssistantTranslateBtn,.bmAssistantToggleBtn{
  min-height:34px!important;height:34px!important;padding:0 11px!important;border-radius:10px!important;font-size:11px!important;
}
.bmAssistantAskBtn{
  border-color:transparent!important;background:linear-gradient(135deg,#6482b3,#536fa2)!important;color:#fff!important;
  box-shadow:0 6px 14px rgba(63,91,137,.18)!important;
}
.spoSendBtn{
  height:42px!important;min-height:42px!important;min-width:78px!important;padding:0 15px!important;
  border-radius:13px!important;font-size:12px!important;
  border:0!important;background:linear-gradient(135deg,#6b62c2,#56509f)!important;color:#fff!important;
  box-shadow:0 8px 18px rgba(78,69,149,.22)!important;
}
.spoTinyBtn,.spoStatusBtn{min-height:30px!important;height:30px!important;padding:0 10px!important;border-radius:9px!important;font-size:10.5px!important;}
:is(.bmUploadActions button,.bmSharedPanelHeadActions button,.bmSharedRowActions button,
    .bmSharedRowActions a,.bmSharedLinkRow>button){
  border-color:rgba(93,83,180,.14)!important;background:#f3f0fa!important;color:#4f496e!important;
  box-shadow:none!important;
}

/* --------------------------------------------------------------------------
   CONFERENCES — setup is compact; in-call controls remain touch-friendly
   -------------------------------------------------------------------------- */
.bmConferenceModalBtn{min-height:36px!important;height:36px!important;padding:0 13px!important;border-radius:10px!important;font-size:11px!important;}
.bmConferenceModalBtn:not(.primary):not(.danger),.bmConferenceSoftBtn{
  border-color:var(--bm-control-line)!important;background:#f6f4fb!important;color:#423d5e!important;box-shadow:var(--bm-control-shadow)!important;
}
.bmConferenceSoftBtn{min-height:34px!important;height:34px!important;padding:0 11px!important;border-radius:10px!important;font-size:10.5px!important;}
.bmConferenceModalBtn.primary,.bmConferenceInviteJoin,.bmConferenceJoinMini{
  border-color:transparent!important;background:linear-gradient(135deg,#6b62c2,#56509f)!important;color:#fff!important;
  box-shadow:var(--bm-control-primary-shadow)!important;
}
.bmConferenceInviteJoin{height:36px!important;border-radius:11px!important;font-size:11.5px!important;}
.bmConferenceJoinMini{height:30px!important;min-height:30px!important;padding:0 10px!important;border-radius:9px!important;font-size:10.5px!important;}
.bmCallTopAction{height:36px!important;min-height:36px!important;padding:0 11px!important;border-radius:10px!important;font-size:11px!important;}
.bmCallPresentationExpand{height:32px!important;min-height:32px!important;border-radius:9px!important;font-size:10.5px!important;}
.bmCallControl{height:46px!important;min-height:46px!important;border-radius:14px!important;padding:0 13px!important;font-size:11.5px!important;}
:is(.bmCallTopAction,.bmCallControl,.bmCallPresentationExpand){
  border-color:rgba(255,255,255,.14)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.105),rgba(255,255,255,.065))!important;
  color:#fff!important;
  box-shadow:0 7px 17px rgba(9,8,22,.17),inset 0 1px 0 rgba(255,255,255,.1)!important;
}
.bmCallControl.active{border-color:rgba(125,113,220,.52)!important;background:linear-gradient(135deg,#7066c9,#5951a9)!important;}
.bmCallControl.off,.bmCallControl.leave,.bmCallTopAction.danger{
  border-color:rgba(223,87,106,.58)!important;background:linear-gradient(135deg,#df6879,#c84e61)!important;color:#fff!important;
}

/* Reminder workflow keeps semantic colours. */
.fix7AlertItem button{height:29px!important;min-height:29px!important;border-radius:9px!important;padding:0 10px!important;font-size:10.5px!important;}
.fix7AlertItem button.restore{background:var(--bm-control-green-soft)!important;color:#27744e!important;border:1px solid rgba(52,132,93,.23)!important;}
.fix7AlertItem button.danger{background:var(--bm-control-red-soft)!important;color:#ae3b4d!important;border:1px solid rgba(203,89,105,.25)!important;}
.fix7AlertTabs button{height:30px!important;min-height:30px!important;border-radius:9px!important;font-size:10.5px!important;}
.fix7AlertTabs button.active{background:var(--bm-control-purple)!important;color:#fff!important;border-color:transparent!important;}

/* Floating controls: intentionally retained from the liked version. */
.dashboardAssistantLauncher,.resortMapLauncher{
  width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;
  border-radius:50%!important;border:1px solid rgba(255,255,255,.32)!important;
  background:linear-gradient(135deg,rgba(111,101,201,.96),rgba(88,82,174,.96) 54%,rgba(70,78,134,.96))!important;
  color:#fff!important;opacity:.78!important;
  box-shadow:0 13px 28px rgba(65,57,135,.23),inset 0 1px 0 rgba(255,255,255,.2)!important;
  backdrop-filter:blur(15px) saturate(1.08);-webkit-backdrop-filter:blur(15px) saturate(1.08);
  transition:opacity .18s ease,transform .18s ease,box-shadow .21s ease,filter .18s ease!important;
}
.dashboardAssistantLauncher:hover,.dashboardAssistantLauncher:focus-visible,.dashboardAssistantLauncher.active,
.resortMapLauncher:hover,.resortMapLauncher:focus-visible{
  opacity:1!important;transform:translateY(-2px)!important;filter:brightness(1.035);
  box-shadow:0 18px 34px rgba(65,57,135,.3),inset 0 1px 0 rgba(255,255,255,.25)!important;
}
.dashboardAssistantLauncher:active,.resortMapLauncher:active{transform:translateY(0) scale(.96)!important;}
.dashboardAssistantLauncher svg{width:20px!important;height:20px!important;}
.resortMapLauncherIcon{width:21px!important;height:21px!important;}

@media(max-width:760px){
  /* On touch screens keep usable targets, without increasing text scale. */
  :is(.btn,.dbBtn,.bmBtn,.bmPrimaryBtn,.bmSecondaryBtn){min-height:38px!important;height:38px!important;}
  #sideBody .tabBtn{height:34px!important;min-height:34px!important;}
  .detailsBtn{height:34px!important;min-height:34px!important;}
  .dashboardAssistantLauncher,.resortMapLauncher{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;}
}

/* --------------------------------------------------------------------------
   REMAINING SPECIALISED CONTROLS
   -------------------------------------------------------------------------- */
:is(.iconBtn,.bmFix11IconBtn,.bmProfileBtn,.bmProfileMenuAvatarBtn,
    .bmComposerAttachBtn,.bmComposerEmojiBtn,.bmConferenceToolbarBtn,
    .bmEmojiQuickBtn,.bmHoverReactionBtn,.bmReactionMiniBtn,.bmScrollBtn,
    .userKebabBtn,.bmBackBtn,.bmTrashBtn,.bmMgrRemoveBtn,.spoContextBtn){
  border-color:rgba(93,83,180,.15)!important;
  background:linear-gradient(180deg,#fff,#f4f1fa)!important;
  color:#504a6d!important;
  box-shadow:0 4px 11px rgba(39,36,67,.055)!important;
}
:is(.iconBtn,.bmFix11IconBtn,.bmProfileBtn,.bmProfileMenuAvatarBtn,
    .bmComposerAttachBtn,.bmComposerEmojiBtn,.bmConferenceToolbarBtn,
    .bmEmojiQuickBtn,.bmHoverReactionBtn,.bmReactionMiniBtn,.bmScrollBtn,
    .userKebabBtn,.bmBackBtn,.bmTrashBtn,.bmMgrRemoveBtn,.spoContextBtn):hover:not(:disabled){
  border-color:rgba(93,83,180,.3)!important;
  background:#eae6f7!important;
  color:#403878!important;
  box-shadow:0 7px 15px rgba(39,36,67,.09)!important;
}
.iconBtn,.bmProfileBtn{width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;border-radius:11px!important;}
.topbar .bmProfileBtn{border-color:rgba(255,255,255,.18)!important;background:linear-gradient(180deg,rgba(255,255,255,.15),rgba(255,255,255,.08))!important;color:#fff!important;}
:is(.bmFix11IconBtn,.userKebabBtn,.bmTrashBtn,.bmMgrRemoveBtn,.spoContextBtn){width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;border-radius:8px!important;padding:0!important;}
:is(.bmComposerAttachBtn,.bmComposerEmojiBtn,.bmConferenceToolbarBtn,.bmEmojiQuickBtn,.bmScrollBtn,.bmBackBtn){width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;border-radius:11px!important;padding:0!important;}
.bmReactionMiniBtn,.bmHoverReactionBtn{box-shadow:none!important;}

.bmChipBtn{
  width:26px!important;height:26px!important;min-width:26px!important;min-height:26px!important;
  border-radius:8px!important;border:1px solid transparent!important;
  background:transparent!important;color:#625c78!important;box-shadow:none!important;
}
.bmChipBtn:hover{border-color:rgba(93,83,180,.16)!important;background:#ebe7f7!important;color:#413a77!important;}
.bmChipBtn.danger:hover{border-color:rgba(203,89,105,.2)!important;background:var(--bm-control-red-soft)!important;color:#ad394b!important;}

.bmBtn.small{height:30px!important;min-height:30px!important;padding:0 10px!important;font-size:10.5px!important;border-radius:9px!important;}
.bmAddTrigger{height:36px!important;min-height:36px!important;padding:0 12px!important;}
.bmRowRemove{width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;border-radius:8px!important;}

.hotelMapBtn{
  border-color:rgba(93,83,180,.15)!important;background:#f4f1fa!important;color:#514a84!important;
  box-shadow:0 3px 9px rgba(39,36,67,.045)!important;
}
.hotelMapBtn:hover{border-color:rgba(93,83,180,.3)!important;background:#e9e5f6!important;color:#403878!important;}
.hotelMoreBtn,.hotelMapBtnAction,.hotelMapBtnInline{
  min-height:30px!important;height:30px!important;border-radius:9px!important;font-size:10.5px!important;
}
.hotelMoreBtn{border-color:rgba(93,83,180,.16)!important;background:#f5f2fb!important;color:#514a73!important;}

.legendBtn{
  min-height:31px!important;height:31px!important;padding:0 10px!important;border-radius:9px!important;
  font-size:10.5px!important;font-weight:800!important;
}
.legendBtn.solid{box-shadow:0 4px 10px rgba(39,36,67,.08)!important;}

.ipActionMenuBtn{
  min-height:32px!important;padding:0 10px!important;border-radius:9px!important;
  background:linear-gradient(135deg,#6b62c2,#56509f)!important;color:#fff!important;font-size:10.5px!important;
}

.dbLiveEditBtn{
  width:22px!important;height:22px!important;min-width:22px!important;min-height:22px!important;
  right:7px!important;padding:0!important;border-radius:7px!important;
  border:1px solid rgba(93,83,180,.18)!important;
  background-color:#f0edf9!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235045a0' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20h9'/%3E%3Cpath d='M16.5 3.5a2.12 2.12 0 0 1 3 3L8 18l-4 1 1-4Z'/%3E%3C/svg%3E")!important;
  background-position:center!important;background-size:11px 11px!important;background-repeat:no-repeat!important;
  color:transparent!important;font-size:0!important;
  box-shadow:0 2px 7px rgba(54,48,105,.08)!important;
}
.dbLiveEditBtn:hover{
  background-color:#e6e1f5!important;
  border-color:rgba(93,83,180,.34)!important;
  box-shadow:0 4px 10px rgba(54,48,105,.13)!important;
}

/* Voice controls keep circular identity, but use one coherent blue-purple palette. */
.bmVoiceRecordBtn,.bmVoiceStopBtn{
  width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;
  flex-basis:42px!important;background:linear-gradient(135deg,#6482b3,#536fa2)!important;
  box-shadow:0 5px 14px rgba(63,91,137,.22)!important;
}
.bmVoiceCancelBtn{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;background:#f3f0f8!important;color:#6a6579!important;}
.bmVoicePlayBtn{width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;background:linear-gradient(135deg,#6482b3,#536fa2)!important;box-shadow:0 4px 11px rgba(63,91,137,.18)!important;}

@media(max-width:760px){
  .bmVoiceRecordBtn,.bmVoiceStopBtn{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;}
  :is(.bmComposerAttachBtn,.bmComposerEmojiBtn,.bmConferenceToolbarBtn,.bmEmojiQuickBtn,.bmScrollBtn,.bmBackBtn){width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;}
}


/* Inline edit/delete controls in Details: only SVG actions get icon geometry.
   Text actions such as + Contract / + SPO keep their natural width. */
body :is(
  button.bmFix12EditBtn,
  button.bmFix13EditBtn,
  button.bmFix14Action:has(>svg),
  button.bmFix16Btn:has(>svg),
  button.bmFix17Btn:has(>svg),
  button.bmFix18Trash:has(>svg),
  button.bmF19Del:has(>svg)
){
  width:26px!important;height:26px!important;min-width:26px!important;min-height:26px!important;
  padding:0!important;border-radius:8px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  flex:0 0 26px!important;line-height:1!important;
  border:1px solid rgba(93,83,180,.17)!important;
  background:#f1eef9!important;color:#514a84!important;
  box-shadow:0 2px 7px rgba(54,48,105,.07)!important;
}
body :is(
  button.bmFix12EditBtn,
  button.bmFix13EditBtn,
  button.bmFix14Action:has(>svg),
  button.bmFix16Btn:has(>svg),
  button.bmFix17Btn:has(>svg),
  button.bmFix18Trash:has(>svg),
  button.bmF19Del:has(>svg)
) > svg{
  width:12px!important;height:12px!important;display:block!important;flex:0 0 12px!important;
}
body :is(
  button.bmFix12EditBtn,
  button.bmFix13EditBtn,
  button.bmFix14Action:not(.danger):has(>svg),
  button.bmFix16Btn:not(.danger):has(>svg),
  button.bmFix17Btn:not(.danger):has(>svg)
):hover{
  border-color:rgba(93,83,180,.32)!important;
  background:#e7e2f5!important;color:#403878!important;
  box-shadow:0 4px 10px rgba(54,48,105,.12)!important;
}
body :is(
  button.bmFix14Action.danger:has(>svg),
  button.bmFix16Btn.danger:has(>svg),
  button.bmFix17Btn.danger:has(>svg),
  button.bmFix18Trash:has(>svg),
  button.bmF19Del:has(>svg)
){
  border-color:rgba(203,89,105,.22)!important;
  background:#fff0f2!important;color:#b54052!important;
}
body :is(
  button.bmFix14Action.danger:has(>svg),
  button.bmFix16Btn.danger:has(>svg),
  button.bmFix17Btn.danger:has(>svg),
  button.bmFix18Trash:has(>svg),
  button.bmF19Del:has(>svg)
):hover{
  border-color:rgba(203,89,105,.38)!important;
  background:#ffe5e9!important;color:#a43245!important;
}

/* 2026-07-21: repair icon-only inline controls without changing their layout. */
.dbLiveEditable > .dbLiveEditBtn{
  position:absolute!important;
  top:50%!important;
  transform:translateY(-50%) translateX(3px)!important;
  opacity:0!important;
  display:block!important;
  flex:0 0 22px!important;
}
.dbLiveEditable:hover > .dbLiveEditBtn,
.dbLiveEditable > .dbLiveEditBtn:focus-visible{
  opacity:1!important;
  transform:translateY(-50%)!important;
}
.badge.metaTag.dbLiveEditable > .metaBadgePencil.dbLiveEditBtn,
.countryBadge.dbLiveEditable > .dbLiveEditBtn{
  width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;
  right:5px!important;border-radius:50%!important;
  background-size:9px 9px!important;
  box-shadow:0 1px 5px rgba(54,48,105,.12)!important;
}

/* Message action is an icon button, never a tab or a padded capsule. */
.bmMessageTopRight .bmAssistantMiniBtn{
  width:26px!important;height:26px!important;min-width:26px!important;min-height:26px!important;
  flex:0 0 26px!important;padding:0!important;margin:0!important;
  border:1px solid rgba(93,83,180,.16)!important;border-radius:50%!important;
  background:rgba(93,83,180,.09)!important;color:#58519a!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  box-shadow:0 3px 9px rgba(39,36,67,.07)!important;
  transform:none!important;line-height:1!important;
}
.bmMessageTopRight .bmAssistantMiniBtn:hover{
  border-color:rgba(93,83,180,.30)!important;
  background:rgba(93,83,180,.16)!important;color:#49418b!important;
  box-shadow:0 5px 12px rgba(39,36,67,.11)!important;
  transform:translateY(-1px)!important;
}
.bmMessageTopRight .bmAssistantMiniBtn:active{transform:translateY(0) scale(.96)!important;}
.bmMessageTopRight .bmAssistantMiniBtn svg{
  display:block!important;width:13px!important;height:13px!important;
  flex:0 0 13px!important;pointer-events:none!important;
}
