/* Shared button surface adapted from the user's Base UI / CVA component. */
:root{--bf-button-height:40px;--bf-button-radius:8px;--bf-button-border:#cbd5db;--bf-button-ink:#253238;--bf-button-primary:#a9430b;--bf-button-hover:#943b0a;--bf-button-danger:#a33c29}
body #root :is(.bf-button,a.primary,a.secondary,button.logout-action,button.time-balance-edit,button.bf-time-menu-close,button.terminal-close,button.bf-shift-delete,button.primary,button.secondary,button.danger,button.today,button.repeat,button.filter,button.availability-filter,button.close,button.delete-absence,button.bf-options-toggle,button.bfpk-trigger,button.clock-in,button.clock-out,button.break,.toolbar>button,.calendar-toolbar>button,.bf-area-filters>button,.time-subnav>button,.bf-time-controls button,.bf-time-controls a,.stats article>button,.ec-button){
 box-sizing:border-box!important;display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;gap:8px;min-height:var(--bf-button-height)!important;height:var(--bf-button-height)!important;min-width:40px;max-width:100%;padding:0 15px!important;border:1px solid var(--bf-button-border)!important;border-radius:var(--bf-button-radius)!important;background:#fff!important;background-image:none!important;color:var(--bf-button-ink)!important;font-family:var(--bf-font)!important;font-size:14px!important;font-weight:500!important;line-height:20px!important;letter-spacing:0!important;text-transform:none!important;text-decoration:none!important;white-space:nowrap;box-shadow:0 1px 2px #0000000d,inset 0 1px 0 #ffffffb3!important;cursor:pointer;transition:background-color .15s,border-color .15s,box-shadow .15s;vertical-align:middle;isolation:isolate;outline:none;
}
body #root :is(.bf-button,a.primary,a.secondary,button.logout-action,button.time-balance-edit,button.bf-time-menu-close,button.terminal-close,button.bf-shift-delete,button.primary,button.secondary,button.danger,button.today,button.repeat,button.filter,button.availability-filter,button.close,button.delete-absence,button.bf-options-toggle,button.bfpk-trigger,button.clock-in,button.clock-out,button.break,.toolbar>button,.calendar-toolbar>button,.bf-area-filters>button,.time-subnav>button,.bf-time-controls button,.bf-time-controls a,.stats article>button,.ec-button):not(.close):not(.bfpk-trigger):not(.terminal-close){position:relative}
body #root :is(.bf-button,a.primary,a.secondary,button.logout-action,button.time-balance-edit,button.bf-time-menu-close,button.terminal-close,button.bf-shift-delete,button.primary,button.secondary,button.danger,button.today,button.repeat,button.filter,button.availability-filter,button.close,button.delete-absence,button.bf-options-toggle,button.bfpk-trigger,button.clock-in,button.clock-out,button.break,.toolbar>button,.calendar-toolbar>button,.bf-area-filters>button,.time-subnav>button,.bf-time-controls button,.bf-time-controls a,.stats article>button,.ec-button)::before{content:'';position:absolute;pointer-events:none;inset:0;border-radius:7px;box-shadow:0 1px 0 #0000000a}
body #root :is(.bf-button,a.primary,a.secondary,button.logout-action,button.time-balance-edit,button.bf-time-menu-close,button.terminal-close,button.bf-shift-delete,button.primary,button.secondary,button.danger,button.today,button.repeat,button.filter,button.availability-filter,button.close,button.delete-absence,button.bf-options-toggle,button.bfpk-trigger,button.clock-in,button.clock-out,button.break,.toolbar>button,.calendar-toolbar>button,.bf-area-filters>button,.time-subnav>button,.bf-time-controls button,.bf-time-controls a,.stats article>button,.ec-button):hover:not(:disabled):not([aria-disabled=true]){background:#f2f5f6!important;border-color:#b4c0c7!important}
body #root :is(button.primary,a.primary,.ec-primary,.bf-button-default,button.clock-in)[class]{background:var(--bf-button-primary)!important;border-color:var(--bf-button-primary)!important;color:#fff!important;box-shadow:0 1px 2px #a9430b3d,inset 0 1px 0 #ffffff29!important}
body #root :is(button.primary,a.primary,.ec-primary,.bf-button-default,button.clock-in):hover:not(:disabled)[class]{background:var(--bf-button-hover)!important;border-color:var(--bf-button-hover)!important}
body #root :is(button.danger,button.delete-absence,.bf-button-destructive,button.clock-out)[class]{background:var(--bf-button-danger)!important;border-color:var(--bf-button-danger)!important;color:#fff!important;box-shadow:0 1px 2px #a33c293d,inset 0 1px 0 #ffffff29!important}
body #root :is(button.danger,button.delete-absence,.bf-button-destructive,button.clock-out):hover:not(:disabled)[class]{background:#913625!important;border-color:#913625!important}
body #root :is(.bf-button-destructive-outline,button.secondary.danger,button.bf-shift-delete)[class]{background:#fff!important;color:var(--bf-button-danger)!important;border-color:var(--bf-button-border)!important;box-shadow:0 1px 2px #0000000d!important}
body #root :is(.bf-button-destructive-outline,button.secondary.danger,button.bf-shift-delete):hover:not(:disabled)[class]{background:#fcf3f0!important;border-color:#d8a79b!important}
body #root .bf-button-secondary[class]{background:#edf1f3!important;color:var(--bf-button-ink)!important;border-color:transparent!important;box-shadow:none!important}
body #root .bf-button-secondary:hover:not(:disabled)[class]{background:#e0e7eb!important}
body #root :is(.bf-button-ghost,.bf-button-link)[class]{background:transparent!important;color:var(--bf-button-ink)!important;border-color:transparent!important;box-shadow:none!important}
body #root :is(.bf-button-ghost,.bf-button-link)[class]::before{box-shadow:none!important}
body #root .bf-button-link:hover:not(:disabled)[class]{background:transparent!important;text-decoration:underline!important;text-underline-offset:4px}
body #root :is(.bf-area-filters>button[aria-pressed=true],.time-subnav>button.active,button.filter.active,.bf-button[aria-pressed=true]){background:#fff0e5!important;border-color:var(--bf-button-primary)!important;color:var(--bf-button-primary)!important;box-shadow:inset 0 1px 2px #a9430b0a!important}
body #root :is(.bf-button,a.primary,a.secondary,button.logout-action,button.time-balance-edit,button.bf-time-menu-close,button.terminal-close,button.bf-shift-delete,button.primary,button.secondary,button.danger,button.today,button.repeat,button.filter,button.availability-filter,button.close,button.delete-absence,button.bf-options-toggle,button.bfpk-trigger,button.clock-in,button.clock-out,button.break,.toolbar>button,.calendar-toolbar>button,.bf-area-filters>button,.time-subnav>button,.bf-time-controls button,.bf-time-controls a,.stats article>button,.ec-button):is(:active,[data-pressed]):not(:disabled){box-shadow:inset 0 1px 2px #00000014!important}
body #root :is(button,a.bf-button,a.primary,a.secondary):focus-visible[class]{outline:2px solid var(--bf-button-primary)!important;outline-offset:2px!important}
body #root :is(button,.bf-button):is(:disabled,[aria-disabled=true]){opacity:.64!important;cursor:not-allowed!important;box-shadow:none!important}
body #root .bf-button:disabled{pointer-events:none}
body #root :is(.bf-button,a.primary,a.secondary,button.logout-action,button.time-balance-edit,button.bf-time-menu-close,button.terminal-close,button.bf-shift-delete,button.primary,button.secondary,button.danger,button.today,button.repeat,button.filter,button.availability-filter,button.close,button.delete-absence,button.bf-options-toggle,button.bfpk-trigger,button.clock-in,button.clock-out,button.break,.toolbar>button,.calendar-toolbar>button,.bf-area-filters>button,.time-subnav>button,.bf-time-controls button,.bf-time-controls a,.stats article>button,.ec-button) svg{width:18px;height:18px;flex-shrink:0;pointer-events:none;opacity:.8}
body #root .bf-button-content{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:0}
body #root .bf-button[data-loading]{color:transparent!important;user-select:none}
body #root .bf-button[data-loading] .bf-button-content{opacity:0}
body #root .bf-button-spinner{position:absolute;width:18px;height:18px;color:var(--bf-button-ink);opacity:1;animation:bf-button-spin .8s linear infinite}
body #root :is(.bf-button-default,.bf-button-destructive) .bf-button-spinner[class]{color:#fff}
@keyframes bf-button-spin{to{transform:rotate(360deg)}}
body #root :is(button.close,.calendar-toolbar>button,button.bf-time-menu-close,button.terminal-close,.bf-button-size-icon-xl){width:40px!important;min-width:40px!important;height:40px!important;padding:0!important;flex:none;font-size:20px!important}
body #root .bf-button-size-default[data-slot=button]{height:32px!important;min-height:32px!important;padding:0 11px!important}
body #root .bf-button-size-lg[data-slot=button]{height:36px!important;min-height:36px!important;padding:0 13px!important}
body #root .bf-button-size-sm[data-slot=button]{height:28px!important;min-height:28px!important;padding:0 9px!important}
body #root .bf-button-size-xs[data-slot=button]{height:24px!important;min-height:24px!important;padding:0 7px!important;font-size:12px!important;border-radius:6px!important}
body #root .bf-button-size-icon[data-slot=button]{width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;padding:0!important}
body #root .bf-button-size-icon-lg[data-slot=button]{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;padding:0!important}
body #root .bf-button-size-icon-sm[data-slot=button]{width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;padding:0!important}
body #root .bf-button-size-icon-xs[data-slot=button]{width:24px!important;height:24px!important;min-width:24px!important;min-height:24px!important;padding:0!important}
body #root .toolbar .repeat::after{content:none!important}
body #root :is(.toolbar,.calendar-toolbar,.time-subnav,.bf-time-controls,.bf-area-filters){gap:8px!important}
@media(max-width:640px){
 :root{--bf-button-height:44px}
body #root :is(.bf-button,a.primary,a.secondary,button.logout-action,button.time-balance-edit,button.bf-time-menu-close,button.terminal-close,button.bf-shift-delete,button.primary,button.secondary,button.danger,button.today,button.repeat,button.filter,button.availability-filter,button.close,button.delete-absence,button.bf-options-toggle,button.bfpk-trigger,button.clock-in,button.clock-out,button.break,.toolbar>button,.calendar-toolbar>button,.bf-area-filters>button,.time-subnav>button,.bf-time-controls button,.bf-time-controls a,.stats article>button,.ec-button){min-width:44px;font-size:16px!important;padding:0 15px!important}
body #root :is(button.close,.calendar-toolbar>button,button.bf-time-menu-close,button.terminal-close,.bf-button-size-icon-xl){width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;padding:0!important}
body #root .bf-button-size-default[data-slot=button]{height:36px!important;min-height:36px!important}
body #root .bf-button-size-lg[data-slot=button]{height:40px!important;min-height:40px!important}
body #root .bf-button-size-sm[data-slot=button]{height:32px!important;min-height:32px!important}
body #root .bf-button-size-xs[data-slot=button]{height:28px!important;min-height:28px!important;font-size:14px!important}
body #root .bf-button-size-icon[data-slot=button]{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;padding:0!important}
body #root .bf-button-size-icon-lg[data-slot=button]{width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;padding:0!important}
body #root .bf-button-size-icon-sm[data-slot=button]{width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;padding:0!important}
body #root .bf-button-size-icon-xs[data-slot=button]{width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;padding:0!important}
}
@media(pointer:coarse){
body #root :is(.bf-button,a.primary,a.secondary,button.logout-action,button.time-balance-edit,button.bf-time-menu-close,button.terminal-close,button.bf-shift-delete,button.primary,button.secondary,button.danger,button.today,button.repeat,button.filter,button.availability-filter,button.close,button.delete-absence,button.bf-options-toggle,button.bfpk-trigger,button.clock-in,button.clock-out,button.break,.toolbar>button,.calendar-toolbar>button,.bf-area-filters>button,.time-subnav>button,.bf-time-controls button,.bf-time-controls a,.stats article>button,.ec-button)::after{content:'';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:100%;height:100%;min-width:44px;min-height:44px}
}
@media(prefers-reduced-motion:reduce){body #root .bf-button-spinner{animation:none}}
@media(min-width:1101px){body #root>main:has(.bf-plan-workspace){grid-template-rows:56px 52px minmax(0,1fr) 24px!important}}
