/* Unified ProfilePro: Tova inside the unified shell. Same on web and phones (the sidebar offset is desktop-only). */
html body.tova-body[data-unified-shell] #tovaSidebar,
html body.tova-body[data-unified-shell] .top .brand,
html body.tova-body[data-unified-shell] #navScrim,
html body.tova-body[data-unified-shell] .top .popover-anchor:has(#appSwitchBtn){display:none !important;}
html body.tova-body[data-unified-shell] .layout{display:block;}
html body.tova-body[data-unified-shell] .tvu-pills{display:flex;gap:8px;padding:18px clamp(20px,3vw,42px) 0;max-width:1480px;margin:0 auto;}
.tvu-pills{display:none;}
.tvu-pills-scroll{display:flex;gap:8px;flex:1;min-width:0;overflow-x:auto;scrollbar-width:none;}
.tvu-pills-scroll::-webkit-scrollbar{display:none;}
.tvu-pill{flex:none;display:inline-flex;align-items:center;height:36px;padding:0 16px;border-radius:999px;border:1px solid #e3e6e8;background:#fff;color:#111;font:500 13px 'Cabinet Grotesk',sans-serif;cursor:pointer;white-space:nowrap;}
.tvu-pill:hover{background:#f3f4f5;}
.tvu-pill.is-active{background:#F0F9F6;border-color:#0F766D;color:#0F766D;}
.tvu-pill:focus-visible{outline:2px solid #111;outline-offset:2px;}
@media (min-width:721px){
  html body.tova-body[data-unified-shell]{padding-left:var(--app-sidebar-current,0px);transition:padding-left .22s var(--ease,ease);}
  html body.tova-body[data-unified-shell] #menuBtn{display:none !important;}
}
@media (max-width:720px){
  html body.tova-body[data-unified-shell] .tvu-pills{padding:12px 14px 0;}
}

/* Stage 11: Tova pop-up cards (account, workspace picker, notices, switcher) and dialogs get a solid background,
   a clear edge and a real shadow at every width, so they no longer fade into the page behind them. */
.popover,.popover.ctxmenu,.popover.pp-app-switcher-menu{
  background:#fff !important;opacity:1 !important;-webkit-backdrop-filter:none !important;backdrop-filter:none !important;
  border:1px solid #d9dedb !important;
  box-shadow:0 12px 32px rgba(16,35,29,.18),0 2px 6px rgba(16,35,29,.10) !important;
}
.popover :is(a,button,p,span,strong,b){opacity:1;}
.modalback{background:rgba(10,13,12,.55) !important;}
.modal{background:#fff !important;box-shadow:0 24px 64px rgba(10,13,12,.35) !important;}
.toast{background:#18211d;color:#fff;opacity:1;}

/* Stage 32: no profile icon in the Tova header (profile + Log Out live in the ProfilePro sidebar) */
.top .popover-anchor:has(> #profileToggle){display:none !important;}

/* Round: no notification bell in the Tova header */
.top .popover-anchor:has(> #notificationsToggle),#notificationsToggle{display:none !important;}

/* Tova switcher: profile photo for My Tova, company logo for each company */
.ctxmark .ctximg{width:100%;height:100%;object-fit:cover;display:block;border-radius:inherit;}
.ctxmark .ctximg.round{border-radius:50%;}
.ctxmark:has(.ctximg){background:transparent;overflow:hidden;}
.ctxmark:has(.ctximg.round){border-radius:50%;}

/* Tova: cards get a soft shadow so they stop looking flat */
.metric,.panel,.clientcard,.moneybox,.worklist,.pplrow,.pplcard,.workrow,.nextbox,.invside{box-shadow:0 2px 12px rgba(16,24,40,.08)}
.worklist{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.worklist .workrow{box-shadow:none}.panel .tablerow,.panel .pplrow,.panel .workrow{box-shadow:none}
.clientcard:hover,.metric:hover{box-shadow:0 4px 18px rgba(16,24,40,.12)}
/* Tova header: workspace switcher / profile mark has no outline or fill */
.top .ctxbtn{border:0 !important;background:transparent !important;box-shadow:none !important}
.top .ctxbtn:hover{background:rgba(16,24,40,.05) !important}
/* instant skeleton while data loads */
.tvu-skel{display:grid;gap:14px;padding:6px 0}.tvu-skel i{display:block;border-radius:12px;background:linear-gradient(90deg,#eceeed 25%,#f6f7f6 50%,#eceeed 75%);background-size:200% 100%;animation:tvuShim 1.2s linear infinite}
@keyframes tvuShim{to{background-position:-200% 0}}
/* Header quick-create menu and anchored account control. */
.topright{min-width:0}.profile-anchor{margin-left:auto;flex:none}.tova-quick-create{width:40px;height:40px;display:grid;place-items:center;border:0;border-radius:50%;background:#0f766d;color:#fff;cursor:pointer;flex:none}.tova-quick-create:hover{background:#0b5850}.tova-quick-create svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round}.tova-quick-menu{width:220px;padding:6px}.tova-quick-menu button{width:100%;display:block;text-align:left;border:0;background:#fff;border-radius:8px;padding:10px 11px;color:var(--ink);font-size:12px}.tova-quick-menu button:hover{background:var(--wash)}.tova-quick-menu[hidden]{display:none}
@media(max-width:650px){.topright{gap:5px}.tova-quick-create{width:36px;height:36px}.profile-anchor{margin-left:2px}}
/* Phone: no small Pearl button in Tova (the shell menu drawer keeps its normal inline sub-menus) */
@media(max-width:720px){html body.tova-body[data-unified-shell] #pearlFab{display:none !important}}
/* Universal + menu: team items only appear on the Team page */
.tova-quick-menu button[hidden]{display:none}

/* Stage 81: Tova's own bare `aside{...}` / `.layout aside{...}` rules were also hitting the shared <aside id="appSidebar">
   (extra padding, no white fill, squeezed highlight, hidden collapse button). Reset them for the shared sidebar only,
   with high specificity so later Tova edits to `aside` can never leak in again. */
html body.tova-body[data-unified-shell] aside.app-sidebar{padding:0 !important;background:#fff !important;border:0 !important;border-right:1px solid var(--line,#e8ece8) !important;overflow:visible;display:flex;flex-direction:column;}
@media (min-width:721px){
  html body.tova-body[data-unified-shell] aside.app-sidebar{position:fixed !important;top:0 !important;bottom:0 !important;left:0 !important;right:auto !important;height:100vh !important;height:100dvh !important;width:var(--app-sidebar-current,248px) !important;transform:none !important;z-index:60;}
  html body.tova-body[data-unified-shell] .app-sidebar-collapse-btn{display:flex !important;}
}

/* Business page Tova: no profile/workspace icon + dropdown in the header (the Page is pinned, nothing to switch),
   and on web the search bar sits at the right end, just left of the plus icon. */
html.tova-acting-page .top .ctxanchor{display:none !important;}
@media(min-width:651px){
  html.tova-acting-page .top .tova-search{order:2;margin:0 12px 0 auto !important;}
  html.tova-acting-page .top .topright{order:3;margin-left:0 !important;flex:none;}
}

/* Stage 1: collapsed Tova rail - the collapse control sits in its own row above the icons (never over them) */
@media(min-width:651px){.layout.collapsed .sidehead{justify-content:center;margin:0 0 10px;padding:0}.layout.collapsed .sidehead .navlabel{display:none}.layout.collapsed .sidehead #sidebarToggle{position:static;margin:0}.layout.collapsed .sidehead #sidebarToggle svg{transform:rotate(180deg)}.layout.collapsed .nav{margin-top:0}}

/* Stage 2 (mobile fixes): Tova's header plus is now the same plain black plus as every other page (no green circle),
   and on phones its menu is the same slide-up sheet (app-shell.js ppSheets + app-shell.css). */
html body .tova-quick-create,html body .tova-quick-create:hover,html body .tova-quick-create:active{background:transparent!important;color:#111!important;border-radius:50%;box-shadow:none!important}
html body .tova-quick-create svg{width:24px;height:24px;stroke-width:2;color:#111}
@media(max-width:650px){html body .tova-quick-create{width:40px;height:40px}}
html body .tova-quick-menu button[hidden]{display:none!important}
