/* Shared application navigation for business and Management pages. */
.horizon-workbench .account-menu{position:relative}
.horizon-workbench .account-menu>summary{display:flex;height:var(--ui-control-default);min-height:var(--ui-control-default);gap:var(--ui-space-2);align-items:center;padding:0 8px;border:1px solid transparent;border-radius:var(--ui-radius-button);list-style:none;color:var(--ui-ink);cursor:pointer;font-size:var(--ui-text-caption);font-weight:600}
.horizon-workbench .account-menu>summary::-webkit-details-marker{display:none}
.horizon-workbench .account-menu>summary::after{display:none}
.horizon-workbench .account-menu>summary:hover{border-color:var(--ui-line);background:var(--ui-surface-hover)}
.horizon-workbench .account-menu>summary .user-avatar{width:34px;height:34px;color:#fff;background:var(--ui-forest);font-size:11px}
.horizon-workbench .account-menu>summary i{font-size:var(--ui-text-caption);transition:transform .15s ease}
.horizon-workbench .account-menu[open]>summary i{transform:rotate(180deg)}
.horizon-workbench .account-menu-panel{position:absolute;top:calc(100% + 12px);right:0;z-index:70;width:240px;padding:10px;border:1px solid var(--ui-line);border-radius:var(--ui-radius-card);background:#fff;box-shadow:var(--ui-shadow-overlay)}
.horizon-workbench .account-menu-panel a,.horizon-workbench .account-menu-panel button{display:flex;width:100%;min-height:44px;gap:11px;align-items:center;padding:9px 10px;border:0;border-radius:5px;color:#2f3946;background:transparent;font:inherit;font-size:12px;text-align:left;text-decoration:none;cursor:pointer}
.horizon-workbench .account-menu-panel a:hover,.horizon-workbench .account-menu-panel button:hover{color:#000;background:#f3f5f7}
.horizon-workbench .account-menu-panel i{width:18px;color:#536174;font-size:14px;text-align:center}
.horizon-workbench .account-menu-panel form{margin:8px 0 0;padding-top:8px;border-top:1px solid var(--ui-line)}
.notification-menu{position:relative}
.notification-menu>summary{position:relative;display:grid;width:var(--ui-control-default);height:var(--ui-control-default);min-width:var(--ui-control-default);place-items:center;padding:0;border:1px solid var(--ui-line-strong);border-radius:var(--ui-radius-sm);background:var(--ui-panel);color:#29453b;cursor:pointer;list-style:none;line-height:1}
.notification-menu>summary>i{display:block;line-height:1}
.notification-menu>summary::-webkit-details-marker{display:none}
.notification-menu>summary::after,.notification-menu>summary::marker{display:none!important;content:none!important}
.notification-count{position:absolute;right:-5px;top:-6px;min-width:18px;height:18px;padding:0 4px;border-radius:var(--ui-radius-pill);background:#b1443b;color:#fff;font-size:var(--ui-text-caption);font-weight:700;line-height:18px;text-align:center}
.notification-menu-panel{position:absolute;right:0;top:48px;z-index:80;display:grid;gap:4px;width:min(390px,calc(100vw - 24px));padding:10px;border:1px solid var(--ui-line);border-radius:var(--ui-radius-lg);background:var(--ui-panel);box-shadow:var(--ui-shadow-overlay)}
.notification-menu-heading{display:flex;align-items:center;justify-content:space-between;padding:6px 8px 10px}
.notification-menu-heading a{font-size:13px;font-weight:700;color:var(--ui-forest)}
.notification-menu-item{margin:0}
.notification-menu-item button{display:flex;width:100%;height:auto;min-height:var(--ui-control-default);align-items:flex-start;justify-content:flex-start;flex-direction:column;gap:4px;padding:11px 12px;border:0;border-radius:var(--ui-radius-sm);background:transparent;color:var(--ui-copy);text-align:left;white-space:normal;cursor:pointer}
.notification-menu-item button:hover,.notification-menu-item.is-unread button{background:var(--ui-forest-soft)}
.notification-menu-item button>span{display:flex;align-items:center;flex-wrap:wrap;gap:var(--ui-space-1);min-width:0;width:100%;text-align:left}
.notification-menu-item button>small{display:block;width:100%;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}
.notification-menu-item small{color:var(--ui-muted)}
.notification-menu-empty{margin:0;padding:16px;color:var(--ui-muted);text-align:center}

.horizon-workbench details.account-menu,
.horizon-workbench details.account-menu[open]{padding:0;border:0;border-radius:0;background:transparent}
.horizon-workbench details.account-menu[open]>summary{margin:0}
.horizon-workbench .account-menu-panel{border-color:var(--ui-line-strong);border-radius:var(--ui-radius-card);background:#fff;box-shadow:var(--ui-shadow-overlay)}
.horizon-workbench .account-menu-panel{width:252px;padding:8px}
.horizon-workbench .account-menu-panel :is(a,button){min-height:42px;border-radius:var(--ui-radius-button)}
/* Shell disclosure controls: neutralize Web Awesome's generic details spacing. */
.horizon-workbench details.notification-menu,
.horizon-workbench details.notification-menu[open]{
  display:flex;
  width:var(--ui-control-default);
  min-width:var(--ui-control-default);
  height:var(--ui-control-default);
  min-height:var(--ui-control-default);
  flex:0 0 var(--ui-control-default);
  align-self:center;
  align-items:center;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
}
.horizon-workbench details.notification-menu>summary,
.horizon-workbench details.notification-menu[open]>summary{
  display:grid;
  width:var(--ui-control-default);
  min-width:var(--ui-control-default);
  height:var(--ui-control-default);
  min-height:var(--ui-control-default);
  place-items:center;
  margin:0;
  padding:0;
  box-sizing:border-box;
}
.horizon-workbench details.notification-menu>summary>i{
  position:absolute;
  top:50%;
  left:50%;
  display:block;
  width:16px;
  height:16px;
  color:var(--ui-forest);
  font-size:16px;
  line-height:16px;
  text-align:center;
  transform:translate(-50%,-50%);
}
.horizon-workbench details.notification-menu>summary>i::before{
  display:block;
  width:16px;
  height:16px;
  line-height:16px;
  text-align:center;
  vertical-align:0;
}
.horizon-workbench details.notification-menu>summary{
  border:1px solid #fff;
  border-radius:var(--ui-radius-button);
  background:#fff;
}
.horizon-workbench details.notification-menu>summary:hover{
  background:#f3faf6;
}
.horizon-workbench .notification-count{
  border-color:var(--ui-forest);
  color:#fff;
  background:#d94841;
}
/* 2026-09-03: peer application switcher and contextual module navigation. */
.horizon-workbench{
  --app-switcher-width:96px;
  --desktop-navigation-width:var(--app-switcher-width);
}
.horizon-workbench .app-switcher-rail{display:none}

@media(min-width:861px){
  .horizon-workbench .app-shell{padding-left:var(--desktop-navigation-width)}
  .horizon-workbench .app-main{min-height:100dvh}
  .horizon-workbench .app-switcher-rail{
    position:fixed;
    top:0;
    bottom:0;
    z-index:35;
    display:flex;
    align-items:center;
    flex-direction:column;
    padding-top:22px;
    border-right:1px solid var(--ui-line);
    background:#fff;
  }
  .horizon-workbench .app-switcher-rail{
    left:0;
    width:var(--app-switcher-width);
    gap:12px;
    background:#fbfcfb;
  }
  .horizon-workbench .app-switcher-brand{
    display:grid;
    width:72px;
    height:48px;
    place-items:center;
    margin-bottom:8px;
  }
  .horizon-workbench .app-switcher-brand img{
    display:block;
    max-width:72px;
    max-height:34px;
    object-fit:contain;
  }
  .horizon-workbench .app-switcher-utilities{
    display:grid;
    gap:8px;
    margin-top:auto;
    padding-bottom:18px;
    justify-items:center;
  }
  .horizon-workbench .app-switcher-utility-menu{
    position:relative;
    display:block;
    width:40px;
    height:40px;
    min-width:40px;
    min-height:40px;
    flex:0 0 40px;
  }
  .horizon-workbench .app-switcher-rail .app-switcher-utility-menu>summary,
  .horizon-workbench .app-switcher-rail .app-switcher-utility-menu[open]>summary{
    display:flex;
    width:40px;
    height:40px;
    min-width:40px;
    min-height:40px;
    align-items:center;
    justify-content:center;
    margin:0;
    padding:0;
    border:1px solid var(--ui-line);
    border-radius:12px;
    color:#53635d;
    background:#fff;
    box-sizing:border-box;
    cursor:pointer;
    list-style:none;
  }
  .horizon-workbench .app-switcher-utility-menu>summary::-webkit-details-marker{display:none}
  .horizon-workbench .app-switcher-utility-menu>summary::marker{content:""}
  .horizon-workbench .app-switcher-utility-menu>summary:hover,
  .horizon-workbench .app-switcher-utility-menu>summary:focus-visible{
    border-color:#b9d0c6;
    color:var(--ui-forest);
    background:#edf5f1;
  }
  .horizon-workbench .app-switcher-rail .app-switcher-utility-menu>summary>i{
    position:static;
    display:grid;
    width:18px;
    height:18px;
    place-items:center;
    color:currentColor;
    font-size:18px;
    line-height:1;
    transform:none;
  }
  .horizon-workbench .app-switcher-utility-menu .user-avatar{
    width:34px;
    height:34px;
    color:#fff;
    background:var(--ui-forest);
    font-size:11px;
  }
  .horizon-workbench .app-switcher-rail .notification-menu.app-switcher-utility-menu>summary>i{
    position:static;
    display:grid;
    width:18px;
    height:18px;
    place-items:center;
    color:currentColor;
    font-size:18px;
    line-height:1;
    text-align:center;
    transform:none;
  }
  .horizon-workbench .account-menu.app-switcher-utility-menu>summary,
  .horizon-workbench .account-menu.app-switcher-utility-menu[open]>summary{
    border-color:transparent;
    border-radius:50%;
    background:transparent;
  }
  .horizon-workbench .account-menu.app-switcher-utility-menu>summary:hover,
  .horizon-workbench .account-menu.app-switcher-utility-menu>summary:focus-visible{
    border-color:transparent;
    background:transparent;
  }
  .horizon-workbench .account-menu.app-switcher-utility-menu>summary:hover .user-avatar,
  .horizon-workbench .account-menu.app-switcher-utility-menu>summary:focus-visible .user-avatar{
    outline:3px solid var(--ui-forest-soft);
    outline-offset:2px;
  }
  .horizon-workbench .app-switcher-utility-menu .notification-menu-panel,
  .horizon-workbench .app-switcher-utility-menu .account-menu-panel{
    top:auto;
    right:auto;
    bottom:0;
    left:calc(100% + 12px);
  }
  .horizon-workbench .app-switcher-menu{
    position:relative;
    display:block;
    width:72px;
    height:72px;
    flex:0 0 72px;
    margin:0;
    border:0;
    border-radius:0;
    background:transparent;
  }
  .horizon-workbench :is(.app-switcher-menu>summary,a.app-switcher-menu){
    display:grid;
    grid-template-columns:1fr;
    grid-template-rows:24px auto;
    width:72px;
    height:72px;
    gap:6px;
    justify-items:center;
    align-content:center;
    padding:10px 8px;
    border:1px solid transparent;
    border-radius:var(--ui-radius-card);
    color:#53635d;
    text-decoration:none;
    list-style:none;
    cursor:pointer;
    transition:border-color .12s ease,background-color .12s ease,color .12s ease;
  }
  .horizon-workbench .app-switcher-menu>summary::-webkit-details-marker{display:none}
  .horizon-workbench .app-switcher-menu>summary::marker{content:""}
  .horizon-workbench .app-switcher-menu>summary::after{display:none!important;content:none!important}
  .horizon-workbench :is(.app-switcher-menu>summary,a.app-switcher-menu):hover,
  .horizon-workbench :is(.app-switcher-menu>summary,a.app-switcher-menu):focus-visible,
  .horizon-workbench .app-switcher-menu.active>summary,
  .horizon-workbench a.app-switcher-menu.active{
    border-color:#b9d0c6;
    color:var(--ui-forest);
    background:#edf5f1;
  }
  .horizon-workbench .app-switcher-menu[open]:not(.active)>summary{
    border-color:var(--ui-line-strong);
    color:#34443f;
    background:#fff;
  }
  .horizon-workbench :is(.app-switcher-menu>summary,a.app-switcher-menu) i{
    display:grid;
    width:24px;
    height:24px;
    place-items:center;
    font-size:24px;
    line-height:1;
  }
  .horizon-workbench :is(.app-switcher-menu>summary,a.app-switcher-menu) i::before{display:block;line-height:1}
  .horizon-workbench :is(.app-switcher-menu>summary,a.app-switcher-menu) span{
    max-width:100%;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:11px;
    font-weight:700;
    line-height:1.2;
  }
  .horizon-workbench .app-switcher-popover{
    position:absolute;
    top:0;
    left:calc(100% + 12px);
    z-index:60;
    display:grid;
    width:248px;
    gap:4px;
    padding:10px;
    border:1px solid #cbdad3;
    border-radius:var(--ui-radius-large);
    background:#fff;
    box-shadow:var(--ui-shadow-overlay);
  }
  .horizon-workbench .app-switcher-popover::before{
    content:"";
    position:absolute;
    top:30px;
    left:-7px;
    width:12px;
    height:12px;
    border-bottom:1px solid #cbdad3;
    border-left:1px solid #cbdad3;
    background:#fff;
    transform:rotate(45deg);
  }
  .horizon-workbench .app-switcher-popover a{
    display:flex;
    min-height:42px;
    align-items:center;
    padding:8px 10px;
    border-radius:10px;
    color:#34443f;
    font-size:13px;
    font-weight:650;
    text-decoration:none;
  }
  .horizon-workbench .app-switcher-popover a:hover,
  .horizon-workbench .app-switcher-popover a:focus-visible,
  .horizon-workbench .app-switcher-popover a.active{
    color:var(--ui-forest);
    background:#edf5f1;
  }
  .horizon-workbench .app-switcher-popover i{
    display:none;
  }
  .horizon-workbench .app-switcher-popover span{
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .horizon-workbench .page-shell{max-width:none}
}

@media(prefers-reduced-motion:reduce){
  .horizon-workbench :is(.app-switcher-menu>summary,a.app-switcher-menu){transition:none}
}

.horizon-workbench .app-switcher-rail .user-avatar{display:grid;place-items:center;border-radius:50%;font-weight:700}
.horizon-workbench .app-switcher-rail a:focus-visible,.horizon-workbench .app-switcher-rail summary:focus-visible,.horizon-workbench .app-switcher-rail button:focus-visible{outline:2px solid var(--ui-forest);outline-offset:2px}
.horizon-workbench .account-menu-panel a[aria-current=page]{color:var(--ui-forest);background:var(--ui-forest-soft)}
