@charset "UTF-8";
/* -------------------------------------------
 *  Autogenerated by ⛋ Terrazzo. DO NOT EDIT!
 * ------------------------------------------- */
:root {
  /* Extra small radius */
  --wpds-border-radius-xs: 1px;
  /* Small radius */
  --wpds-border-radius-sm: 2px;
  /* Medium radius */
  --wpds-border-radius-md: 4px;
  /* Large radius */
  --wpds-border-radius-lg: 8px;
  /* Extra small width */
  --wpds-border-width-xs: 1px;
  /* Small width */
  --wpds-border-width-sm: 2px;
  /* Medium width */
  --wpds-border-width-md: 4px;
  /* Large width */
  --wpds-border-width-lg: 8px;
  /* Border width for focus ring */
  --wpds-border-width-focus: 2px;
  /* Background color for surfaces with normal emphasis. */
  --wpds-color-bg-surface-neutral: #fcfcfc;
  /* Background color for surfaces with strong emphasis. */
  --wpds-color-bg-surface-neutral-strong: #fff;
  /* Background color for surfaces with weak emphasis. */
  --wpds-color-bg-surface-neutral-weak: #f4f4f4;
  /* Background color for surfaces with brand tone and normal emphasis. */
  --wpds-color-bg-surface-brand: #ecf0fa;
  /* Background color for surfaces with success tone and normal emphasis. */
  --wpds-color-bg-surface-success: #c6f7cd;
  /* Background color for surfaces with success tone and weak emphasis. */
  --wpds-color-bg-surface-success-weak: #ebffed;
  /* Background color for surfaces with info tone and normal emphasis. */
  --wpds-color-bg-surface-info: #deebfa;
  /* Background color for surfaces with info tone and weak emphasis. */
  --wpds-color-bg-surface-info-weak: #f3f9ff;
  /* Background color for surfaces with warning tone and normal emphasis. */
  --wpds-color-bg-surface-warning: #fde6be;
  /* Background color for surfaces with warning tone and weak emphasis. */
  --wpds-color-bg-surface-warning-weak: #fff7e1;
  /* Background color for surfaces with caution tone and normal emphasis. */
  --wpds-color-bg-surface-caution: #fee995;
  /* Background color for surfaces with caution tone and weak emphasis. */
  --wpds-color-bg-surface-caution-weak: #fff9ca;
  /* Background color for surfaces with error tone and normal emphasis. */
  --wpds-color-bg-surface-error: #f6e6e3;
  /* Background color for surfaces with error tone and weak emphasis. */
  --wpds-color-bg-surface-error-weak: #fff6f5;
  /* Background color for interactive elements with neutral tone and strong emphasis. */
  --wpds-color-bg-interactive-neutral-strong: #2d2d2d;
  /* Background color for interactive elements with neutral tone and strong emphasis that are hovered, focused, or active. */
  --wpds-color-bg-interactive-neutral-strong-active: #1e1e1e;
  /* Background color for interactive elements with neutral tone and strong emphasis, in their disabled state. */
  --wpds-color-bg-interactive-neutral-strong-disabled: #e6e6e6;
  /* Background color for interactive elements with neutral tone and weak emphasis. */
  --wpds-color-bg-interactive-neutral-weak: #0000;
  /* Background color for interactive elements with neutral tone and weak emphasis that are hovered, focused, or active. */
  --wpds-color-bg-interactive-neutral-weak-active: #ededed;
  /* Background color for interactive elements with weak emphasis, in their disabled state, regardless of the tone. */
  --wpds-color-bg-interactive-neutral-weak-disabled: #0000;
  /* Background color for interactive elements with brand tone and strong emphasis. */
  --wpds-color-bg-interactive-brand-strong: #3858e9;
  /* Background color for interactive elements with brand tone and strong emphasis that are hovered, focused, or active. */
  --wpds-color-bg-interactive-brand-strong-active: #2e49d9;
  /* Background color for interactive elements with brand tone and weak emphasis. */
  --wpds-color-bg-interactive-brand-weak: #0000;
  /* Background color for interactive elements with brand tone and weak emphasis that are hovered, focused, or active. */
  --wpds-color-bg-interactive-brand-weak-active: #e6eaf4;
  /* Background color for interactive elements with error tone and normal emphasis. */
  --wpds-color-bg-interactive-error: #0000;
  /* Background color for interactive elements with error tone and normal emphasis that are hovered, focused, or active. */
  --wpds-color-bg-interactive-error-active: #fff6f5;
  /* Background color for interactive elements with error tone and strong emphasis. */
  --wpds-color-bg-interactive-error-strong: #cc1818;
  /* Background color for interactive elements with error tone and strong emphasis that are hovered, focused, or active. */
  --wpds-color-bg-interactive-error-strong-active: #b90000;
  /* Background color for interactive elements with error tone and weak emphasis. */
  --wpds-color-bg-interactive-error-weak: #0000;
  /* Background color for interactive elements with error tone and weak emphasis that are hovered, focused, or active. */
  --wpds-color-bg-interactive-error-weak-active: #f6e6e3;
  /* Background color for tracks with a neutral tone and weak emphasis (eg. scrollbar track). */
  --wpds-color-bg-track-neutral-weak: #e4e4e4;
  /* Background color for tracks with a neutral tone and normal emphasis (eg. slider or progressbar track). */
  --wpds-color-bg-track-neutral: #dbdbdb;
  /* Background color for thumbs with a neutral tone and weak emphasis (eg. scrollbar thumb). */
  --wpds-color-bg-thumb-neutral-weak: #8d8d8d;
  /* Background color for thumbs with a neutral tone and weak emphasis (eg. scrollbar thumb) that are hovered, focused, or active. */
  --wpds-color-bg-thumb-neutral-weak-active: #6e6e6e;
  /* Background color for thumbs with a brand tone and normal emphasis (eg. slider thumb and filled track). */
  --wpds-color-bg-thumb-brand: #3858e9;
  /* Background color for thumbs with a brand tone and normal emphasis (eg. slider thumb and filled track) that are hovered, focused, or active. */
  --wpds-color-bg-thumb-brand-active: #3858e9;
  /* Background color for thumbs with normal emphasis (eg. slider thumb and filled track), in their disabled state, regardless of the tone. */
  --wpds-color-bg-thumb-neutral-disabled: #dbdbdb;
  /* Foreground color for content like text with normal emphasis. */
  --wpds-color-fg-content-neutral: #1e1e1e;
  /* Foreground color for content like text with weak emphasis. */
  --wpds-color-fg-content-neutral-weak: #707070;
  /* Foreground color for content like text with success tone and normal emphasis. */
  --wpds-color-fg-content-success: #002900;
  /* Foreground color for content like text with success tone and weak emphasis. */
  --wpds-color-fg-content-success-weak: #008030;
  /* Foreground color for content like text with info tone and normal emphasis. */
  --wpds-color-fg-content-info: #001b4f;
  /* Foreground color for content like text with info tone and weak emphasis. */
  --wpds-color-fg-content-info-weak: #006bd7;
  /* Foreground color for content like text with warning tone and normal emphasis. */
  --wpds-color-fg-content-warning: #2e1900;
  /* Foreground color for content like text with warning tone and weak emphasis. */
  --wpds-color-fg-content-warning-weak: #926300;
  /* Foreground color for content like text with caution tone and normal emphasis. */
  --wpds-color-fg-content-caution: #281d00;
  /* Foreground color for content like text with caution tone and weak emphasis. */
  --wpds-color-fg-content-caution-weak: #826a00;
  /* Foreground color for content like text with error tone and normal emphasis. */
  --wpds-color-fg-content-error: #470000;
  /* Foreground color for content like text with error tone and weak emphasis. */
  --wpds-color-fg-content-error-weak: #cc1818;
  /* Foreground color for interactive elements with neutral tone and normal emphasis. */
  --wpds-color-fg-interactive-neutral: #1e1e1e;
  /* Foreground color for interactive elements with neutral tone and normal emphasis that are hovered, focused, or active. */
  --wpds-color-fg-interactive-neutral-active: #1e1e1e;
  /* Foreground color for interactive elements with normal emphasis, in their disabled state, regardless of the tone. */
  --wpds-color-fg-interactive-neutral-disabled: #8d8d8d;
  /* Foreground color for interactive elements with neutral tone and strong emphasis. */
  --wpds-color-fg-interactive-neutral-strong: #f0f0f0;
  /* Foreground color for interactive elements with neutral tone and strong emphasis that are hovered, focused, or active. */
  --wpds-color-fg-interactive-neutral-strong-active: #f0f0f0;
  /* Foreground color for interactive elements with strong emphasis, in their disabled state, regardless of the tone. */
  --wpds-color-fg-interactive-neutral-strong-disabled: #8d8d8d;
  /* Foreground color for interactive elements with neutral tone and weak emphasis. */
  --wpds-color-fg-interactive-neutral-weak: #707070;
  /* Foreground color for interactive elements with weak emphasis, in their disabled state, regardless of the tone. */
  --wpds-color-fg-interactive-neutral-weak-disabled: #8d8d8d;
  /* Foreground color for interactive elements with brand tone and normal emphasis. */
  --wpds-color-fg-interactive-brand: #3858e9;
  /* Foreground color for interactive elements with brand tone and normal emphasis that are hovered, focused, or active. */
  --wpds-color-fg-interactive-brand-active: #3858e9;
  /* Foreground color for interactive elements with brand tone and strong emphasis. */
  --wpds-color-fg-interactive-brand-strong: #eff0f2;
  /* Foreground color for interactive elements with brand tone and strong emphasis that are hovered, focused, or active. */
  --wpds-color-fg-interactive-brand-strong-active: #eff0f2;
  /* Foreground color for interactive elements with error tone and normal emphasis. */
  --wpds-color-fg-interactive-error: #cc1818;
  /* Foreground color for interactive elements with error tone and normal emphasis that are hovered, focused, or active. */
  --wpds-color-fg-interactive-error-active: #cc1818;
  /* Foreground color for interactive elements with error tone and strong emphasis. */
  --wpds-color-fg-interactive-error-strong: #f2efef;
  /* Foreground color for interactive elements with error tone and strong emphasis that are hovered, focused, or active. */
  --wpds-color-fg-interactive-error-strong-active: #f2efef;
  /* Decorative stroke color used to define neutrally-toned surface boundaries with normal emphasis. */
  --wpds-color-stroke-surface-neutral: #dbdbdb;
  /* Decorative stroke color used to define neutrally-toned surface boundaries with weak emphasis. */
  --wpds-color-stroke-surface-neutral-weak: #e4e4e4;
  /* Decorative stroke color used to define neutrally-toned surface boundaries with strong emphasis. */
  --wpds-color-stroke-surface-neutral-strong: #8d8d8d;
  /* Decorative stroke color used to define brand-toned surface boundaries with normal emphasis. */
  --wpds-color-stroke-surface-brand: #a3b1d4;
  /* Decorative stroke color used to define brand-toned surface boundaries with strong emphasis. */
  --wpds-color-stroke-surface-brand-strong: #3858e9;
  /* Decorative stroke color used to define success-toned surface boundaries with normal emphasis. */
  --wpds-color-stroke-surface-success: #8ac894;
  /* Decorative stroke color used to define success-toned surface boundaries with strong emphasis. */
  --wpds-color-stroke-surface-success-strong: #008030;
  /* Decorative stroke color used to define info-toned surface boundaries with normal emphasis. */
  --wpds-color-stroke-surface-info: #9fbcdc;
  /* Decorative stroke color used to define info-toned surface boundaries with strong emphasis. */
  --wpds-color-stroke-surface-info-strong: #006bd7;
  /* Decorative stroke color used to define warning-toned surface boundaries with normal emphasis. */
  --wpds-color-stroke-surface-warning: #d0b481;
  /* Decorative stroke color used to define warning-toned surface boundaries with strong emphasis. */
  --wpds-color-stroke-surface-warning-strong: #926300;
  /* Decorative stroke color used to define error-toned surface boundaries with normal emphasis. */
  --wpds-color-stroke-surface-error: #daa39b;
  /* Decorative stroke color used to define error-toned surface boundaries with strong emphasis. */
  --wpds-color-stroke-surface-error-strong: #cc1818;
  /* Accessible stroke color used for interactive neutrally-toned elements with normal emphasis. */
  --wpds-color-stroke-interactive-neutral: #8d8d8d;
  /* Accessible stroke color used for interactive neutrally-toned elements with normal emphasis that are hovered, focused, or active. */
  --wpds-color-stroke-interactive-neutral-active: #6e6e6e;
  /* Accessible stroke color used for interactive elements with normal emphasis, in their disabled state, regardless of the tone. */
  --wpds-color-stroke-interactive-neutral-disabled: #dbdbdb;
  /* Accessible stroke color used for interactive neutrally-toned elements with strong emphasis. */
  --wpds-color-stroke-interactive-neutral-strong: #6e6e6e;
  /* Accessible stroke color used for interactive brand-toned elements with normal emphasis. */
  --wpds-color-stroke-interactive-brand: #3858e9;
  /* Accessible stroke color used for interactive brand-toned elements with normal emphasis that are hovered, focused, or active. */
  --wpds-color-stroke-interactive-brand-active: #2337c8;
  /* Accessible stroke color used for interactive error-toned elements with normal emphasis. */
  --wpds-color-stroke-interactive-error: #cc1818;
  /* Accessible stroke color used for interactive error-toned elements with normal emphasis that are hovered, focused, or active. */
  --wpds-color-stroke-interactive-error-active: #9d0000;
  /* Accessible stroke color used for interactive error-toned elements with strong emphasis. */
  --wpds-color-stroke-interactive-error-strong: #cc1818;
  /* Accessible stroke color applied to focus rings. */
  --wpds-color-stroke-focus-brand: #3858e9;
  /* Cursor style for interactive controls that are not links (e.g. buttons, checkboxes, and toggles). */
  --wpds-cursor-control: pointer;
  /* Base dimension unit */
  --wpds-dimension-base: 4px;
  /* Extra small padding */
  --wpds-dimension-padding-xs: 4px;
  /* Small padding */
  --wpds-dimension-padding-sm: 8px;
  /* Medium padding */
  --wpds-dimension-padding-md: 12px;
  /* Large padding */
  --wpds-dimension-padding-lg: 16px;
  /* Extra large padding */
  --wpds-dimension-padding-xl: 20px;
  /* 2x extra large padding */
  --wpds-dimension-padding-2xl: 24px;
  /* 3x extra large padding */
  --wpds-dimension-padding-3xl: 32px;
  /* Extra small gap */
  --wpds-dimension-gap-xs: 4px;
  /* Small gap */
  --wpds-dimension-gap-sm: 8px;
  /* Medium gap */
  --wpds-dimension-gap-md: 12px;
  /* Large gap */
  --wpds-dimension-gap-lg: 16px;
  /* Extra large gap */
  --wpds-dimension-gap-xl: 24px;
  /* 2x extra large gap */
  --wpds-dimension-gap-2xl: 32px;
  /* 3x extra large gap */
  --wpds-dimension-gap-3xl: 40px;
  /* Extra small surface width */
  --wpds-dimension-surface-width-xs: 240px;
  /* Small surface width */
  --wpds-dimension-surface-width-sm: 320px;
  /* Medium surface width */
  --wpds-dimension-surface-width-md: 400px;
  /* Large surface width */
  --wpds-dimension-surface-width-lg: 560px;
  /* Extra large surface width */
  --wpds-dimension-surface-width-xl: 720px;
  /* 2x extra large surface width */
  --wpds-dimension-surface-width-2xl: 960px;
  /* For sections and containers that group related content and controls, which may overlap other content. Example: Preview Frame. */
  --wpds-elevation-xs: 0 1px 1px 0 #00000008, 0 1px 2px 0 #00000005,
  	0 3px 3px 0 #00000005, 0 4px 4px 0 #00000003;
  /* For components that provide contextual feedback without being intrusive. Generally non-interruptive. Example: Tooltips, Snackbar. */
  --wpds-elevation-sm: 0 1px 2px 0 #0000000d, 0 2px 3px 0 #0000000a,
  	0 6px 6px 0 #00000008, 0 8px 8px 0 #00000005;
  /* For components that offer additional actions. Example: Menus, Command Palette */
  --wpds-elevation-md: 0 2px 3px 0 #0000000d, 0 4px 5px 0 #0000000a,
  	0 12px 12px 0 #00000008, 0 16px 16px 0 #00000005;
  /* For components that confirm decisions or handle necessary interruptions. Example: Modals. */
  --wpds-elevation-lg: 0 5px 15px 0 #00000014, 0 15px 27px 0 #00000012,
  	0 30px 36px 0 #0000000a, 0 50px 43px 0 #00000005;
  /* Micro-delays and transition offsets */
  --wpds-motion-duration-xs: 50ms;
  /* Micro-interactions like focus rings and state changes */
  --wpds-motion-duration-sm: 100ms;
  /* Standard transitions like menus and popovers */
  --wpds-motion-duration-md: 200ms;
  /* Deliberate animations like slides and reveals */
  --wpds-motion-duration-lg: 300ms;
  /* Extended animations like complex or multi-step transitions */
  --wpds-motion-duration-xl: 400ms;
  /* Nearly imperceptible easing for hover, color, and background transitions */
  --wpds-motion-easing-subtle: cubic-bezier( 0.15, 0, 0.15, 1 );
  /* General-purpose easing for on-screen movement like resizing, morphing, and layout shifts */
  --wpds-motion-easing-balanced: cubic-bezier( 0.4, 0, 0.2, 1 );
  /* Noticeable easing for enter/exit and spatial transitions like menus, popovers, dialogs, and drawers */
  --wpds-motion-easing-expressive: cubic-bezier( 0.25, 0, 0, 1 );
  /* Headings font family */
  --wpds-typography-font-family-heading: -apple-system, system-ui, 'Segoe UI',
  	'Roboto', 'Oxygen-Sans', 'Ubuntu', 'Cantarell', 'Helvetica Neue',
  	sans-serif;
  /* Body font family */
  --wpds-typography-font-family-body: -apple-system, system-ui, 'Segoe UI',
  	'Roboto', 'Oxygen-Sans', 'Ubuntu', 'Cantarell', 'Helvetica Neue',
  	sans-serif;
  /* Monospace font family */
  --wpds-typography-font-family-mono: 'Menlo', 'Consolas', monaco, monospace;
  /* Extra small font size */
  --wpds-typography-font-size-xs: 11px;
  /* Small font size */
  --wpds-typography-font-size-sm: 12px;
  /* Medium font size */
  --wpds-typography-font-size-md: 13px;
  /* Large font size */
  --wpds-typography-font-size-lg: 15px;
  /* Extra large font size */
  --wpds-typography-font-size-xl: 20px;
  /* 2X large font size */
  --wpds-typography-font-size-2xl: 32px;
  /* Extra small line height */
  --wpds-typography-line-height-xs: 16px;
  /* Small line height */
  --wpds-typography-line-height-sm: 20px;
  /* Medium line height */
  --wpds-typography-line-height-md: 24px;
  /* Large line height */
  --wpds-typography-line-height-lg: 28px;
  /* Extra large line height */
  --wpds-typography-line-height-xl: 32px;
  /* 2X large line height */
  --wpds-typography-line-height-2xl: 40px;
  /* Regular font weight for body text */
  --wpds-typography-font-weight-regular: 400;
  /* Medium font weight for emphasis and headings */
  --wpds-typography-font-weight-medium: 499;
}

[data-wpds-theme-provider-id][data-wpds-density=compact] {
  /* Extra small padding */
  --wpds-dimension-padding-xs: 4px;
  /* Small padding */
  --wpds-dimension-padding-sm: 4px;
  /* Medium padding */
  --wpds-dimension-padding-md: 8px;
  /* Large padding */
  --wpds-dimension-padding-lg: 12px;
  /* Extra large padding */
  --wpds-dimension-padding-xl: 16px;
  /* 2x extra large padding */
  --wpds-dimension-padding-2xl: 20px;
  /* 3x extra large padding */
  --wpds-dimension-padding-3xl: 24px;
  /* Extra small gap */
  --wpds-dimension-gap-xs: 4px;
  /* Small gap */
  --wpds-dimension-gap-sm: 4px;
  /* Medium gap */
  --wpds-dimension-gap-md: 8px;
  /* Large gap */
  --wpds-dimension-gap-lg: 12px;
  /* Extra large gap */
  --wpds-dimension-gap-xl: 20px;
  /* 2x extra large gap */
  --wpds-dimension-gap-2xl: 24px;
  /* 3x extra large gap */
  --wpds-dimension-gap-3xl: 32px;
}

[data-wpds-theme-provider-id][data-wpds-density=comfortable] {
  /* Extra small padding */
  --wpds-dimension-padding-xs: 8px;
  /* Small padding */
  --wpds-dimension-padding-sm: 12px;
  /* Medium padding */
  --wpds-dimension-padding-md: 16px;
  /* Large padding */
  --wpds-dimension-padding-lg: 20px;
  /* Extra large padding */
  --wpds-dimension-padding-xl: 24px;
  /* 2x extra large padding */
  --wpds-dimension-padding-2xl: 32px;
  /* 3x extra large padding */
  --wpds-dimension-padding-3xl: 40px;
  /* Extra small gap */
  --wpds-dimension-gap-xs: 8px;
  /* Small gap */
  --wpds-dimension-gap-sm: 12px;
  /* Medium gap */
  --wpds-dimension-gap-md: 16px;
  /* Large gap */
  --wpds-dimension-gap-lg: 20px;
  /* Extra large gap */
  --wpds-dimension-gap-xl: 32px;
  /* 2x extra large gap */
  --wpds-dimension-gap-2xl: 40px;
  /* 3x extra large gap */
  --wpds-dimension-gap-3xl: 48px;
}

[data-wpds-theme-provider-id][data-wpds-density=default] {
  /* Base dimension unit */
  --wpds-dimension-base: 4px;
  /* Extra small padding */
  --wpds-dimension-padding-xs: 4px;
  /* Small padding */
  --wpds-dimension-padding-sm: 8px;
  /* Medium padding */
  --wpds-dimension-padding-md: 12px;
  /* Large padding */
  --wpds-dimension-padding-lg: 16px;
  /* Extra large padding */
  --wpds-dimension-padding-xl: 20px;
  /* 2x extra large padding */
  --wpds-dimension-padding-2xl: 24px;
  /* 3x extra large padding */
  --wpds-dimension-padding-3xl: 32px;
  /* Extra small gap */
  --wpds-dimension-gap-xs: 4px;
  /* Small gap */
  --wpds-dimension-gap-sm: 8px;
  /* Medium gap */
  --wpds-dimension-gap-md: 12px;
  /* Large gap */
  --wpds-dimension-gap-lg: 16px;
  /* Extra large gap */
  --wpds-dimension-gap-xl: 24px;
  /* 2x extra large gap */
  --wpds-dimension-gap-2xl: 32px;
  /* 3x extra large gap */
  --wpds-dimension-gap-3xl: 40px;
  /* Extra small surface width */
  --wpds-dimension-surface-width-xs: 240px;
  /* Small surface width */
  --wpds-dimension-surface-width-sm: 320px;
  /* Medium surface width */
  --wpds-dimension-surface-width-md: 400px;
  /* Large surface width */
  --wpds-dimension-surface-width-lg: 560px;
  /* Extra large surface width */
  --wpds-dimension-surface-width-xl: 720px;
  /* 2x extra large surface width */
  --wpds-dimension-surface-width-2xl: 960px;
}

@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
  :root {
    /* Border width for focus ring */
    --wpds-border-width-focus: 1.5px;
  }
}
/* JP vars */
:root {
  --font-title-large: 36px;
  --font-title-small: 24px;
  --font-body: 16px;
  --font-label: 12px;
  --jp-black: #000;
  --jp-black-80: #2c3338;
  --jp-white: #fff;
  --jp-white-off: #f9f9f6;
  --jp-gray: #dcdcde;
  --jp-gray-0: #f6f7f7;
  --jp-gray-5: #dcdcde;
  --jp-gray-10: #c3c4c7;
  --jp-gray-20: #a7aaad;
  --jp-gray-30: #8c8f94;
  --jp-gray-40: #787c82;
  --jp-gray-50: #646970;
  --jp-gray-60: #50575e;
  --jp-gray-70: #3c434a;
  --jp-gray-80: #2c3338;
  --jp-gray-90: #1d2327;
  --jp-gray-100: #101517;
  --jp-gray-off: #e2e2df;
  --jp-yellow-10: #f2cf75;
  --jp-red-0: #f7ebec;
  --jp-red-50: #d63638;
  --jp-red-60: #b32d2e;
  --jp-red-80: #8a2424;
  --jp-red: #d63639;
  --jp-pink: #c9356e;
  --jp-green-0: #f0f2eb;
  --jp-green-5: #d0e6b8;
  --jp-green-10: #9dd977;
  --jp-green-20: #64ca43;
  --jp-green-30: #2fb41f;
  --jp-green-40: #069e08;
  --jp-green-50: #008710;
  --jp-green-60: #007117;
  --jp-green-70: #005b18;
  --jp-green-80: #004515;
  --jp-green-90: #003010;
  --jp-green-100: #001c09;
  --jp-green: #069e08;
  --jp-green-primary: var(--jp-green-40);
  --jp-green-secondary: var(--jp-green-30);
  --jp-border-radius: 4px;
  --jp-menu-border-height: 1px;
  --jp-underline-thickness: 2px;
  --jp-modal-padding-large: 32px;
  --jp-modal-padding: 24px;
  --jp-modal-padding-small: 16px;
  --jp-modal-radius: 8px;
  --jp-button-padding: 8px;
  --jp-button-radius: 4px;
  --jp-gap: 16px;
}

:root {
  --jpcrm-font-family-emerald:
  	-apple-system,
  	BlinkMacSystemFont,
  	"Segoe UI",
  	"Roboto",
  	"Oxygen-Sans",
  	"Ubuntu",
  	"Cantarell",
  	"Helvetica Neue",
  	sans-serif;
}

/* base file */
/* Remove left padding from WP page content */
body.jpcrm-admin {
  background: var(--jp-white-off);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
}
body.jpcrm-admin #wpcontent {
  padding-right: 0;
}
body.jpcrm-admin #wpcontent #wpbody {
  display: flex;
  align-items: center;
  max-width: 1551px;
  margin: 0 auto;
}
body.jpcrm-admin .alternating-colors tr:nth-child(even) {
  background-color: var(--jp-gray-0);
}

body.jpcrm-admin.jpcrm-full-width #wpcontent #wpbody {
  max-width: none;
}

@media screen and (max-width: 600px) {
  body.jpcrm-admin #wpbody {
    padding-top: 0;
  }
}
/* top menu */
#jpcrm-top-menu {
  padding: var(--wpds-dimension-padding-xl, 16px) var(--wpds-dimension-padding-2xl, 24px) 0;
  display: block;
  background-color: var(--wpds-color-bg-surface-neutral-strong, #fff);
}
#jpcrm-top-menu .logo-cube {
  cursor: pointer;
  width: fit-content;
  height: 24px;
  line-height: 1;
  transition: transform 0.33s;
  transform-style: preserve-3d;
}
#jpcrm-top-menu .logo-cube:hover {
  transform: rotateX(90deg);
}
#jpcrm-top-menu .logo-cube .cube-side {
  height: 24px;
}
#jpcrm-top-menu .logo-cube .cube-side.side1 {
  display: flex;
  align-items: center;
  gap: var(--wpds-dimension-gap-sm, 8px);
  transform: translateZ(12px);
}
#jpcrm-top-menu .logo-cube .cube-side.side1 .jpcrm-header-logo__icon {
  flex-shrink: 0;
}
#jpcrm-top-menu .logo-cube .cube-side.side1 .jpcrm-header-logo__text {
  font-family: -apple-system, system-ui, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  font-size: var(--wpds-typography-font-size-lg, 15px);
  font-weight: 499;
  line-height: var(--wpds-typography-line-height-lg, 28px);
  color: var(--wpds-color-fg-content-neutral, #1d2327);
}
#jpcrm-top-menu .logo-cube .cube-side.side2 {
  font-size: 24px;
  text-align: center;
  transform: rotateX(-90deg) translateZ(-12px);
}
#jpcrm-top-menu .logo-cube .cube-side.side2 .jpcrm-fullscreen-toggle {
  color: var(--wpds-color-fg-content-neutral-weak, #6d6d6d);
  margin: 0;
}
#jpcrm-top-menu menu-bar {
  margin-top: var(--wpds-dimension-gap-sm, 8px);
  margin-right: -1em;
  padding-bottom: 0;
  display: flex;
  justify-content: space-between;
  align-items: end;
  border-bottom: var(--wpds-border-width-xs, 1px) solid var(--wpds-color-stroke-surface-neutral-weak, #dcdcde);
}
#jpcrm-top-menu menu-bar menu-section {
  display: flex;
  align-items: center;
}
#jpcrm-top-menu menu-bar menu-section .item {
  color: var(--wpds-color-fg-content-neutral, #1e1e1e) !important;
  padding: 1em;
  line-height: 1;
}
#jpcrm-top-menu menu-bar menu-section .item.current_menu_item {
  border-bottom: 2px solid var(--wpds-color-stroke-interactive-neutral-strong, #6c6c6c);
}
#jpcrm-top-menu menu-bar menu-section #jpcrm-user-menu-item img {
  border-radius: 50%;
}
#jpcrm-top-menu menu-bar menu-section #jpcrm-user-menu {
  width: 580px;
  min-width: 580px;
}
#jpcrm-top-menu menu-bar menu-section #jpcrm-user-menu i.icon {
  margin-left: 8px;
}
#jpcrm-top-menu menu-bar menu-section .jpcrm-user-menu-link {
  display: flex;
  align-items: flex-start;
}
#jpcrm-top-menu menu-bar menu-section .jpcrm-user-menu-link .item {
  display: flex;
  align-items: center;
}
#jpcrm-top-menu menu-bar menu-section .jpcrm-user-menu-link .item i {
  margin-left: 10px;
  color: var(--wpds-color-fg-content-neutral-weak, #6d6d6d);
}
#jpcrm-top-menu menu-bar menu-section .jpcrm-user-menu-link:hover .item i {
  color: var(--wpds-color-fg-content-neutral, #1e1e1e);
}

/* components */
.jpcrm-button {
  padding: 8px 24px;
  text-decoration: none;
  background: var(--jp-black);
  color: var(--jp-white);
  border: 1.5px solid var(--jp-black);
  border-radius: 4px;
  font-family: var(--jpcrm-font-family-emerald);
  font-style: normal;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: -0.01em;
  box-sizing: border-box;
  display: inline-flex;
  cursor: pointer;
  justify-content: center;
  align-items: center;
  white-space: nowrap;
}
.jpcrm-button.font-14px {
  font-size: 14px;
  line-height: 24px;
}
.jpcrm-button:active, .jpcrm-button:focus, .jpcrm-button:hover {
  background: var(--jp-gray-80);
  color: var(--jp-white);
}
.jpcrm-button.white-bg {
  font-weight: 500;
  background: var(--jp-white);
  color: var(--jp-black);
}
.jpcrm-button.white-bg:hover {
  background: var(--jp-gray-0);
  color: var(--jp-gray-80);
}
.jpcrm-button.transparent-bg {
  font-weight: 500;
  border: 0;
  background: transparent;
  color: var(--jp-black);
  padding: 8px 0;
}
.jpcrm-button.transparent-bg:hover {
  background: transparent;
  color: var(--jp-gray-80);
}
.jpcrm-button.zero-padding {
  padding: 0;
}

.jpcrm-dashcard {
  background: #fff;
  filter: drop-shadow(0 4px 24px rgba(0, 0, 0, 0.05));
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  padding: 0;
}
.jpcrm-dashcard .jpcrm-dashcard-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 16px 24px;
  line-height: 32px;
  letter-spacing: 0.02em;
  font-family: var(--jpcrm-font-family-emerald);
  font-style: normal;
  color: var(--jp-black);
}
.jpcrm-dashcard .jpcrm-dashcard-header h4 {
  margin: 0;
  font-size: 16px;
  font-weight: 500;
}
.jpcrm-dashcard .jpcrm-dashcard-header a {
  margin: 0;
  font-size: 14px;
  font-weight: 500;
  text-decoration: none;
  color: var(--jp-black);
}
.jpcrm-dashcard .jpcrm-avatar-small {
  width: 25px;
}
.jpcrm-dashcard .jpcrm-listview-table th {
  font-weight: 700;
  min-width: unset;
}
.jpcrm-dashcard .jpcrm-listview-table td {
  min-width: unset;
}
.jpcrm-dashcard .jpcrm-listview-table td:first-child,
.jpcrm-dashcard .jpcrm-listview-table th:first-child {
  padding-right: 24px;
}
.jpcrm-dashcard .jpcrm-listview-table td:last-child,
.jpcrm-dashcard .jpcrm-listview-table th:last-child {
  padding-left: 24px;
}
.jpcrm-dashcard .jpcrm-listview-table .jpcrm-listview-td-valign-span-img {
  position: relative;
}
.jpcrm-dashcard .jpcrm-listview-table .jpcrm-listview-td-valign-span-img span {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.jpcrm-dashcard .jpcrm-listview-table-container {
  margin-top: 8px;
}

.jpcrm-div-message-box {
  background: var(--jp-gray-0) !important;
  border: 1px dashed var(--jp-gray-20) !important;
  border-radius: 4px;
  margin: 0 20px 20px;
  padding: 16px 24px 28px;
  display: block;
}

.jpcrm-div-message {
  font-family: var(--jpcrm-font-family-emerald);
  font-style: normal;
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  text-align: center;
  letter-spacing: -0.02em;
  margin-top: 16px;
}

jpcrm-dashcount {
  box-sizing: content-box;
  margin: 10px;
  display: grid;
  grid-template-columns: repeat(auto-fit, 250px);
  counter-reset: grid-items;
  gap: 10px 20px;
}
jpcrm-dashcount.wide-cards {
  grid-template-columns: repeat(auto-fit, 300px);
}
jpcrm-dashcount jpcrm-dashcount-card {
  display: flex;
  align-items: center;
  content: counter(grid-item);
  position: relative;
  padding: 15px;
  background-color: var(--jp-white);
  height: 120px;
}
jpcrm-dashcount jpcrm-dashcount-card h3 {
  position: absolute;
  top: 18px;
  font-size: 16px;
  font-weight: 600;
  margin-block-start: 0;
}
jpcrm-dashcount jpcrm-dashcount-card .range_total {
  font-size: 42px;
  color: var(--jp-green-50);
  margin-left: 10px;
}
jpcrm-dashcount jpcrm-dashcount-card a {
  position: absolute;
  bottom: 18px;
  text-decoration: none;
  color: var(--jp-black);
}

.jpcrm-dropdown {
  font-size: 14px;
  padding: 8px 16px 8px 8px;
}
.jpcrm-dropdown i {
  width: 20px;
  text-align: center;
  margin-right: 8px;
  font-size: 18px;
}

.jpcrm-form-grid {
  display: grid;
  gap: 1rem;
  padding: 1rem;
  overflow: auto;
}
.jpcrm-form-grid select,
.jpcrm-form-grid input {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  margin: 0;
}
.jpcrm-form-grid.one-column {
  grid-template-columns: 1fr;
  padding: 0;
}

.jpcrm-form-label {
  display: block;
  font-weight: 400;
  line-height: 1.4;
  margin-bottom: 8px;
  padding: 0;
}

.jpcrm-form-input,
.jpcrm-form-select {
  width: 100%;
  max-width: unset !important;
}

.jpcrm-form-input-group {
  display: flex;
  align-items: center;
  gap: 16px;
}

.jpcrm-input-text {
  font-size: 13px;
}

.jpcrm-input-select {
  max-width: unset !important;
}

@media (min-width: 768px) {
  .jpcrm-form-grid {
    grid-template-columns: 1fr 1fr;
  }
  .jpcrm-form-group-span-2 {
    grid-column: span 2;
  }
}
@media (max-width: 767px) {
  .jpcrm-form-grid {
    grid-template-columns: 1fr;
  }
  .jpcrm-empty-form-group {
    display: none;
  }
}
.jpcrm-learn-menu {
  display: flex;
  align-items: center;
  max-width: 1551px;
}
.jpcrm-learn-menu.jpcrm-full-width {
  max-width: none;
}

.jpcrm-learn-menu-subdiv-75 {
  flex-basis: 75%;
  flex-grow: 0;
  flex-shrink: 1;
  display: flex;
  flex-direction: row;
  align-items: center;
}

.jpcrm-learn-menu-subdiv-25 {
  flex-basis: 25%;
  flex-grow: 1;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  flex-direction: row;
  justify-content: flex-end;
  padding: 10px 0;
  gap: 10px;
}
.jpcrm-learn-menu-subdiv-25 > *:first-child {
  margin-right: 16px; /* keep the gap between the divs when subdiv-25 is shrunk down */
}

.jpcrm-learn-page-title {
  font-style: normal;
  font-weight: 700;
  font-size: 36px;
  line-height: 40px;
  font-family: var(--jpcrm-font-family-emerald);
  color: var(--jp-black);
  padding-left: 4px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin-bottom: 5px;
}
.jpcrm-learn-page-title .jpcrm-learn-menu-subdiv-25 {
  align-self: flex-end;
}

.jpcrm-info-gridicon-emerald {
  padding: 8px;
  display: flex;
  align-items: center;
  flex-direction: row;
  cursor: pointer;
}

@media (max-width: 768px) {
  .jpcrm-learn-menu {
    flex-wrap: wrap;
  }
  .jpcrm-learn-menu-subdiv-75,
  .jpcrm-learn-menu-subdiv-25 {
    flex-grow: 1;
    flex-wrap: wrap;
    flex-direction: column;
    width: 100%;
  }
  .jpcrm-learn-menu-subdiv-75 > *:first-child,
  .jpcrm-learn-menu-subdiv-25 > *:first-child {
    margin-right: 0; /* gap not needed anymore as the divs are centered */
  }
}
.jpcrm-listview {
  background-color: var(--jp-white);
  padding: 10px;
  margin-bottom: 20px;
  font-size: 13px;
}

jpcrm-listview-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  height: 30px;
  margin: 20px 0;
}
jpcrm-listview-footer footer-item {
  display: flex;
  gap: 6px;
  align-items: center;
}

jpcrm-listview-header#jpcrm-listview-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  height: 30px;
}
jpcrm-listview-header#jpcrm-listview-header header-item {
  display: flex;
  gap: 6px;
  align-items: center;
}
jpcrm-listview-header#jpcrm-listview-header header-item button {
  background: none;
  color: inherit;
  border: none;
  padding: 0;
  margin-right: 5px;
  font: inherit;
  cursor: pointer;
}
jpcrm-listview-header#jpcrm-listview-header header-item button.dashicons::before {
  font-family: dashicons;
  font-size: inherit;
  display: flex;
  width: 16px;
}
jpcrm-listview-header#jpcrm-listview-header header-item .jpcrm-current-filter:not(.hidden) {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  margin: 0 1px;
  padding: 4px 4px;
  box-sizing: border-box;
  font-weight: 600;
  vertical-align: middle;
  display: inline-block;
  border: 1px solid var(--jp-gray-10);
  border-radius: 2px;
  height: 100%;
  width: 200px;
}
jpcrm-listview-header#jpcrm-listview-header input,
jpcrm-listview-header#jpcrm-listview-header select {
  box-sizing: border-box;
  border: 1px solid var(--jp-gray-10);
  vertical-align: middle;
  border-radius: 2px;
  height: 100%;
  width: 200px;
}
jpcrm-listview-header#jpcrm-listview-header input[type=search] {
  /* padding-left:30px; */
}

.jpcrm-listview-table-container {
  clear: both;
  margin-top: 30px;
  overflow-x: auto;
}
.jpcrm-listview-table-container .jpcrm-listview-table {
  min-width: 100%;
  overflow-x: scroll;
  border-collapse: collapse;
}
.jpcrm-listview-table-container .jpcrm-listview-table thead th {
  font-weight: 400;
  border-bottom: 1px solid var(--jp-gray-10);
  cursor: pointer;
}
.jpcrm-listview-table-container .jpcrm-listview-table a {
  text-decoration: none;
  color: var(--jp-grey-80);
}
.jpcrm-listview-table-container .jpcrm-listview-table #zbs-no-results-wrap a {
  color: #2271b1;
}
.jpcrm-listview-table-container .jpcrm-listview-table th,
.jpcrm-listview-table-container .jpcrm-listview-table td {
  text-align: right;
  padding: 10px;
}
.jpcrm-listview-table-container .jpcrm-listview-table .name {
  font-weight: 500;
  font-size: 14px;
}
.jpcrm-listview-table-container .jpcrm-listview-table .email {
  color: #3c434a;
  font-weight: 400;
  font-size: 12px;
}
.jpcrm-listview-table-container .jpcrm-listview-table {
  /* min-width except for checkbox column */
}
.jpcrm-listview-table-container .jpcrm-listview-table th:not(:first-child),
.jpcrm-listview-table-container .jpcrm-listview-table td:not(:first-child) {
  min-width: 120px;
}
.jpcrm-listview-table-container .jpcrm-listview-table input[type=checkbox] {
  border: 1px solid var(--jp-gray-10);
  border-radius: 2px;
}
.jpcrm-listview-table-container .jpcrm-listview-table tbody tr.selected {
  background-color: var(--jp-green-0);
}
.jpcrm-listview-table-container .jpcrm-listview-table tbody tr:hover {
  background-color: var(--jp-gray-0);
}
.jpcrm-listview-table-container .jpcrm-listview-table tbody tr:has(#zbs-no-results-wrap):hover {
  background-color: transparent;
}

jpcrm-pagination {
  display: inline-flex;
  font-size: 16px;
  gap: 0;
  align-items: center;
  background: #fff;
  border: 1px solid var(--jp-gray-5);
  border-radius: 3px;
}
jpcrm-pagination * {
  line-height: 2;
}
jpcrm-pagination .active {
  background-color: var(--jp-black);
  color: var(--jp-white);
}
jpcrm-pagination .disabled {
  color: var(--jp-gray-20);
}
jpcrm-pagination a {
  color: var(--jp-gray-80);
  text-decoration: none;
  display: flex;
}
jpcrm-pagination a:not(:first-child):not(:last-child) {
  padding: 0 8px;
}
jpcrm-pagination > :first-child,
jpcrm-pagination > :last-child {
  padding: 0 5px;
}
jpcrm-pagination > :first-child.disabled,
jpcrm-pagination > :last-child.disabled {
  padding: 0;
  margin: 0 5px;
}
jpcrm-pagination a:hover {
  background-color: var(--jp-gray-0);
  color: var(--jp-gray-80);
}
jpcrm-pagination a.active:hover {
  background-color: var(--jp-gray-80);
  color: var(--jp-white);
}
jpcrm-pagination .ellipsis {
  padding: 0 3px;
}
