/* Match the existing theme while tightening the dashboard layout. */
.topbar{--control-height:46px;align-items:center}
.topbar .top-actions{align-items:center;gap:10px}
.topbar .topbar-attendance{align-items:center;gap:8px}
.topbar .topbar-punch-time{height:var(--control-height);box-sizing:border-box;justify-content:center;padding:4px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface,#edf5f5);min-width:86px;line-height:1.2}
.topbar .topbar-punch-time strong{white-space:nowrap}
.topbar .top-actions :is(.button,button,.bell-button,.user-menu>summary){height:var(--control-height);min-height:var(--control-height);box-sizing:border-box;display:flex;align-items:center;justify-content:center;margin-block:0}
.topbar .user-menu>summary{padding-block:4px}
.topbar>.home-button,.topbar>a{min-height:var(--control-height);box-sizing:border-box;display:flex;align-items:center}
.topbar .global-search{height:var(--control-height);box-sizing:border-box;align-items:center;padding-block:3px}
.topbar .global-search button{height:36px;min-height:36px}
.dashboard-stage-grid.arrow-funnel{display:grid!important;grid-template-columns:repeat(var(--stage-count,9),minmax(0,1fr));gap:6px;overflow:visible;scroll-snap-type:none;padding:4px 0 6px;min-width:0}
.dashboard-stage-grid.arrow-funnel>a{width:100%;min-width:0;max-width:none;box-sizing:border-box;min-height:100px!important;padding:10px 13px!important;gap:5px;scroll-snap-align:none}
.dashboard-stage-grid.arrow-funnel>a span{overflow-wrap:anywhere;line-height:1.35}
.dashboard-stage-grid.arrow-funnel>a strong{line-height:1.1}
.floating-chat-launcher.chat-launcher{position:fixed;right:24px;bottom:24px;z-index:61;width:56px;height:56px;min-height:56px;border-radius:50%;padding:0;display:flex;align-items:center;justify-content:center;animation:chat-arrive .45s ease-out,chat-nudge 5s ease-in-out 1s 3}
.floating-chat-launcher:hover,.floating-chat-launcher:focus-visible,.floating-chat-launcher[aria-expanded="true"]{animation:none}
.chat-dock{top:auto;bottom:92px;right:24px;width:min(360px,calc(100vw - 32px));max-height:calc(100dvh - 120px);box-sizing:border-box}
@keyframes chat-arrive{from{opacity:0;transform:translateY(14px) scale(.9)}to{opacity:1;transform:none}}
@keyframes chat-nudge{0%,12%,100%{transform:translateY(0)}4%{transform:translateY(-5px)}8%{transform:translateY(-2px)}}
@media(max-width:1199px){.dashboard-stage-grid.arrow-funnel{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:700px){.dashboard-stage-grid.arrow-funnel{grid-template-columns:repeat(3,minmax(0,1fr))}.floating-chat-launcher.chat-launcher{right:16px;bottom:16px}.chat-dock{right:16px;bottom:84px}.content{padding-bottom:88px}}
@media(prefers-reduced-motion:reduce){.floating-chat-launcher.chat-launcher{animation:none}}

/* Restore attached site-wide header tabs and reduce desktop navigation spacing. */
.page-heading>.executive-header{padding-bottom:34px!important}
.page-heading>.header-nav{margin-top:-18px;margin-inline:16px;width:calc(100% - 32px);max-width:calc(100% - 32px);padding:0 0 4px;position:relative;z-index:1}
.sidebar .sidebar-nav a[data-label]:not(.brand){min-height:30px;padding-block:4px;margin-block:0;box-sizing:border-box}
.sidebar .sidebar-nav .nav-group{margin-bottom:4px}
.sidebar .sidebar-nav .nav-group p{padding-block:2px;margin-bottom:1px}
@media(max-width:700px){.page-heading>.executive-header{padding-bottom:30px!important}.page-heading>.header-nav{margin-inline:10px;width:calc(100% - 20px);max-width:calc(100% - 20px)}}
@media(pointer:coarse){.sidebar .sidebar-nav a[data-label]:not(.brand){min-height:44px}}
