/* Workspace in the official Vievas CRM sidebar (does not style the funnel). */
.crm-experience #vievasWorkspace.vv-workspace-view{min-width:0}
.crm-experience #vievasWorkspace .vv-workspace-toolbar{
 display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;
 padding:clamp(14px,2vw,23px);margin:0 0 12px;background:#fff;
 border:1px solid #e1e4e6;border-radius:12px;
}
.crm-experience #vievasWorkspace .vv-workspace-title{min-width:0;max-width:100%}
.crm-experience #vievasWorkspace .vv-workspace-title h2{
 color:#071d38;font:800 clamp(21px,2vw,29px)/1.25 Montserrat,Arial,sans-serif;
 margin:3px 0 5px;overflow-wrap:anywhere;
}
.crm-experience #vievasWorkspace .vv-workspace-kicker{color:#a92d35;letter-spacing:.07em;font-size:11px;font-weight:800}
.crm-experience #vievasWorkspace .vv-workspace-title p{margin:0;font-size:clamp(13px,1vw,15px);line-height:1.5;color:#65717e}
.crm-experience #vievasWorkspace .vv-workspace-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}
.crm-experience #vievasWorkspace .vv-workspace-actions .btn{
 font-size:14px;text-decoration:none;white-space:normal;min-height:42px;
 display:inline-flex;align-items:center;justify-content:center;
}
.crm-experience #vievasWorkspace .vv-workspace-loading{color:#606b78;margin:0;font-size:13px}
.crm-experience #vievasWorkspace.vv-workspace-busy .vv-workspace-loading{min-height:28px;padding:0 4px 8px}
.crm-experience #vievasWorkspace .vv-workspace-paper{
 background:#fff;border:1px solid #e1e4e6;border-radius:12px;overflow:hidden;
 min-width:0;box-shadow:0 7px 22px rgba(7,29,56,.035);
}
.crm-experience #vievasWorkspace #vievasWorkspaceFrame{
 width:100%;height:max(72vh,640px);display:block;border:0;max-width:100%;background:#f4f0eb;
}
.crm-experience .vv-mobile-nav-button,.crm-experience .vv-mobile-nav-backdrop{display:none}
@media(min-width:901px) and (max-width:1100px){
 .crm-experience .app-shell{display:grid;grid-template-columns:250px minmax(0,1fr)}
 .crm-experience .sidebar{position:sticky;top:0;height:100vh;overflow-y:auto}
 .crm-experience .sidebar .nav{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:900px){
 .crm-experience .app-shell{display:block;min-width:0}
 .crm-experience .sidebar{
  position:fixed;top:0;bottom:0;left:0;z-index:1004;width:min(85vw,320px);
  height:100dvh;max-height:100dvh;overflow:auto;
  transform:translateX(-105%);transition:transform .18s ease;box-shadow:8px 0 25px rgba(0,0,0,.14);pointer-events:none;
 }
 .crm-experience.vv-drawer-open .sidebar{transform:translateX(0);pointer-events:auto}
 .crm-experience .sidebar .nav{grid-template-columns:minmax(0,1fr)}
 .crm-experience .vv-mobile-nav-button{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;
  border:1px solid #d7e0e7;background:#fff;color:#071d38;
  font:700 14px Montserrat,Arial,sans-serif;min-height:43px;border-radius:9px;
  padding:8px 13px;cursor:pointer;width:max-content;max-width:100%;
  position:fixed;top:12px;right:12px;z-index:1007;box-shadow:0 4px 14px rgba(7,29,56,.12);
 }
 .crm-experience .vv-mobile-nav-backdrop{
  display:none;position:fixed;inset:0;z-index:1003;border:0;
  background:rgba(5,18,34,.55);width:100vw;height:100dvh;cursor:pointer;
 }
 .crm-experience.vv-drawer-open .vv-mobile-nav-backdrop{display:block}
 .crm-experience #vievasWorkspace #vievasWorkspaceFrame{height:max(75dvh,580px)}
}
@media(max-width:520px){
 .crm-experience #vievasWorkspace .vv-workspace-toolbar{padding:14px}
 .crm-experience #vievasWorkspace .vv-workspace-actions{width:100%}
 .crm-experience #vievasWorkspace .vv-workspace-actions .btn{flex:1 1 auto}
 .crm-experience #vievasWorkspace #vievasWorkspaceFrame{height:max(75dvh,550px)}
}
@media(prefers-reduced-motion:reduce){.crm-experience .sidebar{transition:none!important}}

/* VIE-0023: keyboard-safe mobile drawer and larger touch targets. */
@media(max-width:900px){
 body.crm-experience.vv-drawer-open{overflow:hidden}
 .crm-experience .sidebar[inert]{visibility:hidden}
 .crm-experience .sidebar .nav .nav-item,
 .crm-experience .sidebar .nav .vm-nav-summary{min-height:44px}
 .crm-experience .sidebar .nav .vm-nav-items>.nav-item{min-height:44px}
 .crm-experience .vv-mobile-nav-button:focus-visible,
 .crm-experience .sidebar :is(.nav-item,.vm-nav-summary):focus-visible{
  outline:3px solid #80c1ff;outline-offset:2px
 }
}

/* Desktop: expand the workspace while retaining an accessible restore button. */
@media(min-width:901px){
 .crm-experience #appShell.vv-sidebar-collapsed{grid-template-columns:minmax(0,1fr)!important}
 .crm-experience #appShell.vv-sidebar-collapsed>.sidebar{display:none!important}
 .crm-experience #appShell .vv-mobile-nav-button{
  display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;
  border:1px solid #d7e0e7;background:#fff;color:#071d38;
  font:700 13px Montserrat,Arial,sans-serif;min-height:42px;border-radius:9px;
  padding:8px 12px;cursor:pointer;width:max-content;
 }
 .crm-experience #appShell .vv-mobile-nav-button:focus-visible{outline:3px solid #80c1ff;outline-offset:2px}
}

/* Mobile CRM: the menu control stays inside the header, never floating above content. */
@media(max-width:900px){
 .crm-experience #appShell .vv-mobile-nav-button{
  position:static;top:auto;right:auto;z-index:auto;
  flex:0 0 auto;width:max-content;max-width:100%;
  margin:0 0 10px;box-shadow:none;
 }
 .crm-experience #appShell>.sidebar{padding-bottom:max(18px,env(safe-area-inset-bottom))}
}
